First Run
This path takes a fresh workstation through the personal knowledge-base workflow: initialize, capture a YouTube transcript, search it, and inspect health.
Initialize
bgng init
You will be prompted for a SupaData API key. Non-interactive setup can pass it directly:
bgng init --api-key sd_live_xxxxx
The command creates ~/.bgng/, writes config.json, creates transcripts/, notes/, .qmd/index.sqlite, and seeds queue.md. Re-running bgng init is safe; it does not delete existing transcripts.
Prefer environment variables on shared workstations:
export BGNG_SUPADATA_API_KEY=sd_live_xxxxx
bgng init
Capture a transcript
bgng url "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
The CLI normalizes the URL, fetches metadata and transcript chunks from SupaData, writes transcript.md, transcript.txt, and meta.json, then indexes the content with qmd unless --no-index is set.
Useful variants:
bgng url "<URL>" --lang fr
bgng url "<URL>" --no-index
bgng url "<URL>" --output-dir ./talks
bgng url "<URL>" --force
Search
Use lexical search when you know the words:
bgng search "database performance"
Use hybrid search when you know the idea:
bgng query "how do databases handle concurrent writes"
Both commands support result limits, collection filters, full bodies, and JSON output.
bgng query "rust async" -n 10
bgng query "rust async" --full
bgng query "rust async" --json
Retrieve and inspect
bgng get "2026-05-30/how-to-build"
bgng get "#a3f2c1" --from 20 --lines 50
bgng status
bgng status reports the workspace home, transcript count, indexed-document count, queue counts, collection counts, and disk usage.