Use case

Understand a new codebase with Codna

New repo, first day. codna triage maps it for zero tokens and names the code an issue touches. Recall runs on-device. Nothing changes until you say so.

The problem

Reading a codebase file by file does not scale.

Codna builds a dependency and blast-radius graph of the repository from its import patterns. No model call, zero tokens. Ask it about an issue and it prints the suspect files and the raw-to-bundle context size. Over MCP, codna_recall answers questions about the code from an on-device index.

How Codna fixes it

How Codna helps

1

Map the repository

codna triage . --json prints the suspect files for an issue and the context size. Zero tokens, read-only.

2

Recall on-device

codna_recall, over MCP, recalls code from the local index under your home directory. Zero cloud round-trips.

3

Change it when you are ready

codna fix scopes a change to the issue and reports root cause, confidence, blast radius and regression risk.

codna triage . --issue "where is the order total computed?" --json
pip install "codna[mcp]" && codna mcp install --client cursor

What you get

What you get

Read-only by default

codna triage changes nothing and calls no model.

Recall that persists

The on-device index persists across sessions.

Structured output

--json on every command, for scripts and editors.

The proof

Fewer tokens. Faster. Verified.

Codna16K
Cursor81K
Average tokens per fix on 87 matched bug-fix cases: Codna and Cursor.

Frequently asked

codna triage builds the map deterministically and prints the suspect files for an issue. No model call. codna_recall works from an on-device index.

The suspect files and the raw-to-bundle context size for an issue, and, on a fix, the root cause, the symbol with its blast radius, confidence and regression risk.

Yes. triage and recall are read-only. Nothing is written until you run fix with --apply or --open-pr.

Both, over MCP: Cursor and Claude get codna_triage, codna_fix, codna_secure, codna_recall and codna_report_bug as local tools.

The repository map is built from import patterns, so it is not tied to one language. On-device recall covers Python, JavaScript, TypeScript, Go, Rust, Java, C, C++, C#, PHP and Ruby. Your own test command verifies the fix.

pip install codna. For the editor tools, pip install "codna[mcp]" then codna mcp install --client cursor or --client claude.

Understand. Fix. Evolve.