Codna — repository intelligence について
Codnaは、開発者やコーディングエージェント向けのリポジトリ分析ツールで、CLIとMCPサーバーを提供します。コードのマッピング、問題のトリアージ、PRレビュー、修正計画、SARIF検出結果の到達可能性確認、ローカルコードメモリの検索ができます。
主な機能
- 01リポジトリのマッピングと問題のトリアージ
- 02PRレビューと修正計画
- 03修正の適用とテスト再実行
- 04SARIF検出結果の到達可能性確認
- 05ローカルコードメモリのオフライン検索
活用シーン
- 01報告された問題に関係するファイルの特定
- 02PRをレビューして指摘を投稿
- 03スキャナー検出結果の到達可能性を確認
- 04デバイス上のメモリからコードを検索
MCP 対応
CodnaはMCPのstdioサーバーを通じて、トリアージ、セキュリティ到達可能性確認、メモリ検索、修正計画、バグ報告の5つのリポジトリツールを提供します。実行には無料のコミュニティログインが必要で、一部のツールにはプロバイダーキーまたはGitHubトークンも必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
uvx codnaANTHROPIC_API_KEYシークレットProvider key for codna_fix's planner — any one of ANTHROPIC_API_KEY (Anthropic), OPENAI_API_KEY (OpenAI/ChatGPT), or GEMINI_API_KEY (Gemini) works (or store one with `codna key set <provider>`). Every tool also requires the one-time free `codna login` device authorization before executing; introspection (initialize/tools/list) needs no credentials.OPENAI_API_KEYシークレットAlternative provider key (OpenAI/ChatGPT) for codna_fix's planner — see ANTHROPIC_API_KEY.GEMINI_API_KEYシークレットAlternative provider key (Gemini) for codna_fix's planner — see ANTHROPIC_API_KEY.GITHUB_TOKENシークレットWrite token, only for codna_fix with open_pr=true (opens a pull request) and codna_report_bug (files an issue).CODNA_API_KEYシークレットCodna key from the one-time free `codna login` (device authorization, free community license). Required to execute any of the five tools; introspection (initialize/tools/list) needs none.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Codna
理解する。修正する。進化する。
エージェントはコードを読みます。Codna はコードを理解します。
Codna はトークンを消費する前に、リポジトリをマッピングします。その後、プルリクエストをレビューし、バグを修正し、スキャナーの検出結果に到達可能なものがあるかを証明します。同じ codna コマンドを、手元のマシン、GitHub Action、GitHub App の背後で実行できます。
手元のマシンでも、クラウドでも実行できます。あなたのキーがなければ、コードが外部に出ることはありません。
インストール
pip install codna # or: pipx install codna · uv tool install codna
codna --version
Python 3.12–3.13 が必要です。Apple シリコン搭載の macOS と Linux x86_64 向けのホイールを提供しています。PATH に git が必要です。それ以外のインストールは不要です。Node、Bun、Docker、サーバーは必要ありません。エージェントのランタイムはホイールに含まれています。
ローカルコマンドに Codna キーは必要ありません。fix と review では、自分のモデルプロバイダーキーを使用します。キーは OS のキーチェーンに保存され、表示されることはありません。
codna key set anthropic # also: openai, gemini, google, groq, mistral, openrouter, xai, cursor
コマンド
codna triage . --issue "checkout total is wrong" # suspect files. Deterministic. 0 LLM tokens.
codna review . --pr 123 --post # findings with a verdict on the pull request
codna fix . --tests --apply --max-iterations 3 # patch, re-run your tests, re-fix until green
codna fix <git url> --ref <sha> --issue "…" --open-pr # push a branch and open a pull request
codna secure . --from-sarif results.sarif # which scanner findings are reachable. 0 LLM tokens.
codna fix は、根本原因、影響を受けるシンボル、影響範囲、確信度、リグレッションのリスクを表示します。--open-pr には git URL と GitHub 書き込みトークンが必要です。codna review は、重大度、カテゴリ、提案ブロックを含むインラインコメントを検出結果ごとに投稿し、差分に中程度および高程度の問題がなければ承認します。codna secure は、CodeQL、Semgrep、Snyk、Trivy、その他のスキャナーから SARIF 2.1.0 を読み込みます。
その他のコマンド:init、status、doctor、login、key、impact、memory export、report。
完全なリファレンス:docs.codna.ai/reference/cli。
MCP サーバー
Codna を標準入出力経由のモデルコンテキストプロトコルサーバーとして実行できます。CLI と同じエンジンを Cursor、Claude Desktop、独自のエージェント内で使用できます。
pipx install "codna[mcp]" # or: pip install "codna[mcp]"
codna mcp # serve over stdio
codna mcp install --client cursor # optional: write the client config for you (or --client claude)
5 つのツールがそれぞれ JSON を返します。失敗時は codna_<tool> error: … というテキストが返され、サーバーがクラッシュすることはありません。
| ツール | 機能 | 必要なもの |
|---|---|---|
codna_triage | リポジトリを理解し、問題に関連するコードを特定します。決定論的で、LLM トークンを消費しません。 | 無料の codna login |
codna_secure | SARIF スキャナー(CodeQL、Semgrep、Snyk、Trivy)の検出結果のうち、到達可能なものを証明します。読み取り専用で、LLM トークンを消費しません。 | 無料の codna login |
codna_recall | ローカルのオンデバイスメモリからコードを呼び出します。意味検索と語彙検索に対応し、完全にオフラインで動作します。 | 無料の codna login(オンデバイスランタイムもインストールされます) |
codna_fix | 根本原因を特定し、修正を計画します(デフォルトでは読み取り専用)。open_pr=true を指定すると、ブランチをプッシュして実際の PR を作成します。 | 無料の codna login とプロバイダーキー(BYOK。open_pr=true の場合は GITHUB_TOKEN も必要) |
codna_report_bug | thyn-ai/feedback にバグ、機能リクエスト、質問を送信します。 | 無料の codna login と GITHUB_TOKEN(ない場合は、事前入力済みの URL を返します) |
イントロスペクション(initialize/tools/list)には認証情報は必要ありません。5 つのツールのいずれかを実行するには、初回のみ無料のコミュニティログイン(codna login — デバイス認証、無料のコミュニティライセンス)が必要です。以降は完全にオフラインで動作します。codna_fix にはプロバイダーキー(BYOK。例:ANTHROPIC_API_KEY)も必要です。codna_report_bug には GITHUB_TOKEN が必要です。指定がない場合は、事前入力済みの Issue URL を返します。codna_recall は、同じ codna login でインストールされるオンデバイスメモリランタイムも使用します。
完全なリファレンス:
docs.codna.ai/guides/mcp。
コードメモリ
コードメモリと呼び出し機能は、初回のみ無料の codna login(デバイス認証)が必要です。このログイン時に、署名済みのオンデバイスランタイムもインストールされます。以降の呼び出しは完全にオフラインで動作し、キーもネットワーク通信も必要ありません。オプションの
codna[memory] エクストラを追加すると、オンデバイスの意味再ランキング機能を利用できます。追加しない場合、呼び出し結果は語彙的に順位付けされます。
手元のマシンから外部に送信される情報
- リポジトリのマッピング、トリアージ、呼び出し、
impactはオフラインで動作します。モデルは関与しません。 fixとreviewは、選択したプロバイダーに、問題固有の証拠バンドルを 1 つ送信します。あなたのキーを使用し、リポジトリ自体は送信しません。- シークレットの編集は常に有効で、無効化できません。
codna.yamlのprivacy.egress: fail-closedを設定すると、ネットワークを遮断せずにテストを実行することを拒否し、レビュー中のレジストリ検索を省略します。- ソース配布物には、ランタイムバイナリ、キー、
.envファイル、ログは含まれません。
Links
- Homepage: https://codna.ai
- Documentation: https://docs.codna.ai
- Source (public mirror): https://github.com/thyn-ai/codna-cli
- Security: https://codna.ai/security
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。