Documentation · Report Bug · Discussions
X-ray vision for your agent.
Give your code assistant the ability to see through your codebase—understanding functions, tracing relationships, and finding implementations with surgical precision. Context-first coding. No grep-and-hope loops. No endless back-and-forth. Just smarter engineering in fewer keystrokes.
# Install
cargo install codanna --all-features
# Initialize and index
codanna init
codanna index src --progress
# Ask questions
codanna mcp semantic_search_with_context query:"where do we handle errors" limit:3
# Index documentation for RAG
codanna documents add-collection docs ./docs
codanna documents index
codanna mcp search_documents query:"authentication flow"Your AI assistant gains structured knowledge of your code:
- "Where's this function called?" - Instant call graph, not grep results
- "Find authentication logic" - Semantic search matches intent, not just keywords
- "What breaks if I change this?" - Full dependency analysis across files
The difference: Codanna understands code structure. It knows parseConfig is a function that calls validateSchema, not just a string match.
| Feature | Description |
|---|---|
| Semantic Search | Natural language queries against code and documentation. Finds functions by what they do, not just their names. |
| Relationship Tracking | Call graphs, implementations, and dependencies. Trace how code connects across files. |
| Document Search | Index markdown and text files for RAG workflows. Query project docs alongside code. |
| MCP Protocol | Native integration with Claude, Gemini, Codex, and other AI assistants. |
| Profiles | Package hooks, commands, and agents for different project types. |
| Plugins | Claude Code manifest format for project-scoped workflows. |
Performance: Sub-10ms symbol lookups with memory-mapped caches.
Languages: Rust, Python, JavaScript, TypeScript, Java, Kotlin, Go, PHP, C, C++, C#, Swift, GDScript.
Standard CLI and MCP protocol. Works with Claude, Codex, and any MCP-compatible client. HTTP/HTTPS servers available for network access.
{
"mcpServers": {
"codanna": {
"command": "codanna",
"args": ["serve", "--watch"]
}
}
}codanna serve --http --watch
codanna serve --https --watch # With TLScodanna mcp find_callers index_file --json | \
jq -r '.data[]?[0] | "\(.name) - \(.file_path)"'See Integrations for detailed setup guides.
- Getting Started - Installation and first steps
- User Guide - CLI commands, tools, configuration
- CLI Reference - All commands and options
- MCP Tools - Available tools for AI assistants
- Architecture - How it works under the hood
Profiles - Package reusable configurations
codanna init --force
codanna profile provider add bartolli/codanna-profiles
codanna profile install claude@codanna-profiles
npm --prefix .claude/hooks/codanna installThe claude profile includes Research-Agent, /codanna:x-ray and /codanna:symbol commands, and hooks for skill suggestions.
Document Collections - RAG-ready documentation search
codanna documents add-collection docs docs/
codanna documents add-collection guides examples/
codanna documents index --progress
codanna documents search "error handling" --collection docsChunks documents, generates embeddings, and provides semantic search over your markdown files.
See Document Search.
- Rust 1.85+ (for building from source)
- ~150MB for embedding model (downloaded on first use)
Linux: sudo apt install pkg-config libssl-dev
macOS: No additional dependencies
- Sub-10ms symbol lookups
- 75,000+ symbols/second parsing
- Windows support is experimental
Contributions welcome. See CONTRIBUTING.md.
Apache License 2.0 - See LICENSE.
Attribution required. See NOTICE.
Built with Rust.