Answers

Frequently asked questions

+What is Backbencher?

A local-first code intelligence engine — bb for short. It indexes your codebase into a local SQLite database (15 tables: symbols, source bounds, imports, relationships), and exposes 11 agent tools over MCP plus a CLI for code search, symbol extraction, call-graph analysis, relationship mapping, diagnostics, and guarded edits. It supports 49 languages (46 with dedicated tree-sitter parsers).

+Does my code leave my machine?

No. Indexing, storage, and analysis are all local. The only optional network calls are the embedding provider calls you configure yourself (small vector requests, never your full source), and those exist only if you set up an API key. There is no Backbencher cloud.

+Why do I need an embedding API key? Can I use Backbencher without one?

You can use everything except high-quality semantic search without a key. Embeddings power bb_ask semantic mode — finding conceptually related code. Without a key, the indexer still works and semantic search falls back to weaker local vectors, and the CLI tells you so. Configure a provider with bb setup; the key is stored with owner-only permissions and never sent to any AI agent.

+Which MCP clients work with Backbencher?

Any client that speaks MCP over stdio: Claude Code, Cursor, VS Code, opencode, and others. Run bb mcp to start the server and point your client's MCP configuration at it — see the MCP server docs. The 11 bb tools (all prefixed bb_) then appear in your client's tool list.

+How do I keep the index up to date?

The agent tools reindex files they edit (bb_index). For manual workflows: bb index --changed reindexes only changed files, bb index --post re-runs derived phases without re-parsing, and bb status shows what the last run did. Search results carry a freshness block that names the exact remediation command when data is stale.

+What is the difference between the CLI commands and the agent tools?

The CLI (bb index, bb stats, bb doctor, …) is what you run in a terminal. The 11 MCP tools (bb_search, bb_edit, …) are what your agent calls. Tool names are not shell subcommands — run them via bb tool <name> if you want to invoke one manually.

+Is Backbencher open source?

Not right now. The engine is being prepared for a future release; today it ships as installable binaries. We prefer to say that plainly rather than dress it up — honesty about the product is the same discipline we apply to the tool's own output.

+How much does it cost?

Backbencher is free to use. The only optional cost is your own embedding provider's API usage if you choose a paid provider; free-tier providers work too.

Something not covered? See troubleshooting or contact us.