NoteBrain provides tab completion for bash, zsh, and fish. It completes subcommands, flags, enum values (for example --format text|json|tsv), and note slugs from your live index.
Run notebrain completion to see the exact activation command for your shell:
notebrain completion bash
notebrain completion zsh
notebrain completion fishThe command prints a line to execute in your current session and tells you which init file to use for permanent activation:
- bash: add
source <(notebrain completion -c bash)to~/.bashrc - zsh: add
source <(notebrain completion -c zsh)to~/.zshrc - fish: add
notebrain completion -c fish | sourceto~/.config/fish/config.fish
Without a shell argument, notebrain completion detects your login shell automatically.
| Scope | Examples |
|---|---|
| Subcommands | ingest, search, backlinks, connections, hidden, tags, boosted, stats, get, reset, doctor, init, version, completion |
| Global flags | --vault-path, --chroma-path, --format, --log-level, --limit, --top-k, --seed, --hops, ... |
Enum values (--format) |
text, json, tsv |
Enum values (--log-level) |
debug, info, warn, error |
--llm-model |
Documented model values (openrouter/anthropic/claude-3.5-haiku, deepseek-chat, gemini-3.5-flash-lite, ollama/<model>) |
| Note slugs (dynamic) | Positional <note> args of get, backlinks, connections, hidden, and tags, plus --seed of boosted |
Slug candidates come from your live ChromaDB index. When you press Tab after a <note> argument, NoteBrain lists the indexed note slugs.
- Requires an indexed database. Run
notebrain ingestfirst. An empty database completes nothing. - Slugs are fetched by the hidden
suggest-notescommand (one process spawn per Tab press). It is a paginated metadata scan with no embeddings or LLM calls, so it is fast.
- Completions only work for a binary named
notebrainin your$PATH../notebrain(relative invocation) is not completed. - Slug candidates come from the config or default chroma path (
~/.notebrain/chroma). A--chroma-pathflag typed on the command line is not reflected in completions. - The hidden
suggest-notescommand does not appear in completion lists ornotebrain --help. - Vault subfolder paths and tag names are not completed dynamically.
- No completions after adding the line: restart the shell or run
exec bash/exec zshso the init file is re-sourced. - Slug completion is empty: make sure that the index is populated with
notebrain stats. - Completions appear twice or are stale: make sure only one activation line exists in your init file.