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.
Note
New Feature: Plugin System!
Share reusable custom commands, agents, and scripts across your projects.
Plugins are based on CC manifest but project-scoped and live in your .claude/
directory.
See Plugin Documentation for installation, updates, and creating your own plugins.
Your AI assistant knows your code:
- "Where's this function called?" → instant call graph
- "Show me all authentication functions" → finds functions with auth-related doc comments
- "Find config file parsers" → matches functions that parse configuration
- "What breaks if I change this interface?" → full-project impact analysis
Context is everything.
Codanna cuts the noise:
- Less grep-and-hope loops.
- Less explaining the same thing twice.
- Less blind code generation.
Instead: tight context, smarter engineering, flow that doesn't stall.
# Install
cargo install codanna --all-features
# Setup
codanna init
# Index your code
codanna index src --progress
# Ask real questions
codanna mcp semantic_search_docs query:"where do we resolve symbol references" limit:3
Result: 3 relevant functions in 0.16s with exact file locations and signatures.
- Fast parsing - Tree-sitter AST (same as GitHub code navigator)
- Semantic search - Natural language queries that understand your code
- Relationship tracking - Call graphs, implementations, dependencies
- Multi-language - Rust, Python, TypeScript, Go, PHP, C, C++
- MCP protocol - Native integration with Claude and other AI assistants
- Plugin system - Project-scoped commands, agents, and scripts
- <10ms lookups - Memory-mapped caches for instant responses
- Getting Started - Installation and first steps
- User Guide - CLI commands, tools, configuration
- Integrations - Claude, Codex, HTTP/HTTPS servers
- Plugins - Extend Claude Code with custom commands and agents
- Advanced - Unix piping, slash commands, performance
- Architecture - How it works under the hood
- Contributing - Development setup and guidelines
- CLI Reference - All commands and options
- MCP Tools - Available MCP tools
- Configuration - Settings and customization
{
"mcpServers": {
"codanna": {
"command": "codanna",
"args": ["serve", "--watch"]
}
}
}
1. semantic_search_with_context - Find relevant code
2. analyze_impact - Map dependencies
3. find_symbol, get_calls - Get specifics
# Build call graphs with pipes
codanna mcp find_callers index_file --json | \
jq -r '.data[]?[0] | "\(.name) - \(.file_path)"'
- Rust 1.75+ (for development)
- ~150MB for model storage (downloaded on first use)
- A few MB for index storage
Linux: sudo apt install pkg-config libssl-dev
macOS: No additional dependencies
- Production ready for supported languages
- 75,000+ symbols/second parsing speed
- <10ms symbol lookups
- Windows support is experimental
- More languages coming
See CHANGELOG.md for detailed release notes.
Contributions welcome! See CONTRIBUTING.md for guidelines.
Licensed under the Apache License, Version 2.0 - See LICENSE file.
Attribution required when using Codanna in your project. See NOTICE file.
Built with 🦀 by devs throttled by tools that "understand" code only in theory.