Getting started¶
Install¶
Prebuilt binaries (macOS arm64/x64, Linux x64/arm64) are attached to each GitHub release:
From source, with Rust 1.94.1 or newer plus protoc and cmake:
cargo install comind # once published, or:
git clone https://github.com/sayef/comind && cd comind && cargo build --release
Index one repository¶
With no --index-dir, comind uses a default location (comind config path shows it):
comind index . # graph, contracts, embeddings
comind search "how do we connect to postgres"
comind explore Settings # neighbourhood, blast radius, context pack
--no-llm keeps everything local and free; with OPENAI_API_KEY set (or any OpenAI-compatible endpoint),
comind also writes summaries, flow walkthroughs and a style guide.
Index several repositories together¶
Cross-repo edges and contracts need the repositories in one index:
comind link ../shared-lib ../service-a ../service-b --index-dir ./comind-index
comind contracts --index-dir ./comind-index # who serves and who calls each route, queue, table
comind ui --web --index-dir ./comind-index # org map, contracts, explorer
For a team, point --index-dir at your own bucket (s3://…) and build it from CI; see
Team setup.
Connect an agent¶
{
"mcpServers": {
"comind": { "command": "comind", "args": ["serve", "--index-dir", "./comind-index"] }
}
}
The MCP tools answer navigation, impact and ledger questions. For Claude Code,
comind init-hooks claude prints hooks that add the relevant ledger records just before an edit.