dekko について
dekkoは、LLMコーディングエージェント向けのオフラインで依存関係のない静的コードマップ生成・索引ツールです。シンボル間の関係や呼び出し関係を含む、人と機械の両方が読めるマップを作成し、CLI、Claude Codeプラグイン、MCPサーバーから検索できます。
主な機能
- 01MAP.mdとmap.jsonのコードマップ生成
- 02tree-sitterによるリポジトリ解析
- 03シンボルと呼び出し元・呼び出し先の関係構築
- 04ディレクトリ、ホットスポット、エントリーポイントの要約
- 05CLIやエージェント用インターフェースでコード構造を検索
活用シーン
- 01エージェントが未知のリポジトリを把握
- 02シンボルの呼び出し元と呼び出し先を特定
- 03全ファイルを読まずに大きなファイルやディレクトリを概観
- 04Claude CodeやClineからコード構造を調査
MCP 対応
生成したコードマップとコードベース構造をエージェントが検索するためのMCPサーバーを提供します。CLIとClaude Code /mapプラグインも利用できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
18掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| kind | string | いいえ | 対象を絞り込むための、カンマ区切りのシンボル種別(function、method、class など) |
| root | string | いいえ | map.json を含むリポジトリのルート(デフォルトはサーバーのカレントディレクトリ) |
| limit | integer | いいえ | 最大ヒット数(デフォルトは 15) |
| query | string | はい | 探しているコードの自由記述による説明 |
| budget | integer | いいえ | 出力のトークン予算(デフォルトは 800、0 = 上限なし) |
| scorer | enum | いいえ | 関連度スコアラー:'lexical'(デフォルト、BM25、常に利用可能)、'embedding'(ハッシュトリック埋め込み)、または 'both'(逆順位融合により lexical と embedding のランキングを統合)。'embedding' と 'both' は、サーバーに dekko[search] エクストラがインストールされている場合にのみ使用できます。lexical | embedding | both |
| include_tests | boolean | いいえ | テストパス内のシンボルを含める(デフォルト:false) |
詳細
コーディングエージェントがリポジトリ内を手探りで grep し、不要なファイルを3つも開いて、「この関数を呼び出しているのは誰?」に答えるだけで1万5千トークンを消費するのを見たことはありませんか? dekko は、まさにその問題を解決するために作られました。
このデモは dekko 自身のリポジトリ(コミット 835733c)で実行しています。クローンして、同じ3つのコマンドを実行してみてください。
dekko は、高速でオフライン、依存関係のない 静的コードマップ生成ツールおよび LLM コーディングエージェント向けコードベースインデクサーです。tree-sitter でリポジトリをスキャンし(解析にモデルのトークンを消費しません)、次のファイルを生成します。
MAP.md— 人が読みやすいマップです。ディレクトリごとの概要、埋め込みのアーキテクチャ図、基盤となる要素/オーケストレーターのランキングに加え、すべてのファイルについて、関数/メソッドのシグネチャ、ドキュメント行、呼び出し元と呼び出し先を記載します。map.json— 同じグラフを機械可読形式で保存します。
マップに加えて、dekko はエージェントが「このファイルには何がある?」「この関数を呼び出しているのは誰?」「これを安全に変更するには何が必要?」といった質問に、ファイル全体を読まずにトークンをほとんど使わず答えられるようにします。CLI として提供されるほか、Claude Code の /map プラグイン+MCP サーバー(Model Context Protocol)として利用でき、Cline にも対応しています。
その結果、日常的なタスク(コードの把握、大きなファイルの構成確認、シンボルの呼び出し元の調査)では、通常の Read/Grep ワークフローと比べてトークンを10~300分の1に削減できます。この数値は、dekko 0.43.77 で、実際の未改変のオープンソースリポジトリ7件を対象に測定しました。最小値は、grep しやすいローカルシンボルの場合で約2.5倍です。詳しい内訳はすぐ下にあります。
dekko を選ぶ理由
多くのエージェントのワークフローでは、ファイル全体を読み込んだり、リポジトリ全体を grep したりしてコンテキストを集めます。これはコストがかかるうえ、構造(どの要素が何を呼び出すか、関数のファンイン/ファンアウトがどうなっているか)も失われます。dekko は代わりに、リポジトリを一度解析してコールグラフを作成し、それに対して的を絞った質問に回答します。dekko 0.43.77 で、実際の未変更のオープンソースリポジトリ 7 件(Go、TypeScript、Java、Rust、Python/C++、最大 14k ファイル、172k シンボル)を対象に測定したところ、dekko の構造化クエリは、同じタスク(リポジトリの把握、大きなファイルの概要作成、シンボルの呼び出し元の追跡)を行う場合、同等の Read/Grep ワークフローより 10x~300x 少ないトークンで済みました。
| タスク | リポジトリ例(規模) | dekko | Read/Grep | 削減率 |
|---|---|---|---|---|
リポジトリの把握(summary) | awesome-go(10 ファイル) | 359 tok | 約 16,328 tok | 約 45x |
リポジトリの把握(summary) | claude-buddy(57 ファイル) | 約 349 tok | 約 113,514 tok(すべてのソースファイル) | 約 325x |
| 大きなファイルの概要作成 | claude-code REPL.tsx(5,005 行) | 約 1,154 tok | 約 223,963 tok | 約 194x |
| 大きなファイルの概要作成 | cline SdkController.ts(84 KB) | 1,803 tok | 約 21,023 tok | 約 11.7x |
| ディレクトリの概要作成 | zed crates/git_ui/src(32 ファイル) | 約 35,778 tok | 約 418,520 tok | 約 11.7x |
| シンボルの呼び出し元 | claude-code errorMessage | 約 602 tok | 約 18,521 tok(323 件以上の grep ヒット) | 約 31x |
| シンボルの呼び出し元 | zed MultiWorkspace.new(22 か所、8 ファイル) | 約 809 tok | 約 381,446 tok(呼び出し元のファイルを読み込み) | 約 471x |
| 外部 API の使用状況 | claude-code chalk | 約 798 tok | 約 8,099 tok | 約 10x |
コンテキストの一括取得(workset) | awesome-go ToHTML | 263 tok | 4,104 tok | 約 16x |
dekko のクエリごとのコストはおおむね一定ですが、Read/Grep のコストはファイルやリポジトリの規模に応じて増加するため、規模が大きくなるほど差が広がります。実際の処理時間も高速です。dekko 自身の約 4,300 シンボルのコードベースを、キャッシュが空の状態から全コアを使ってマッピングするのに約 5 秒かかります。編集後の増分マッピングは 1 秒もかからず、生成されたマップへのクエリはすぐに返されます。効果がどのケースでも得られるわけではありません。小さく自己完結したファイルや、すでに grep しやすいローカルシンボルでは、メリットはほとんどありません(測定された最低値は約 2.5x でした)。タスクごとの詳細な内訳、手法、2026-08 年の元の調査、およびそこから明らかになった正確性に関する注意点とその解消方法については、benchmarks/real-world-repos/ を参照してください。
ctags/gtags のようなタグインデックスツールと比較すると、dekko は実際の呼び出しエッジ(定義だけではありません)を解決し、ファイルを重要度に応じて順位付けし、MCP または CLI 経由でエージェントと直接やり取りします。エディタープラグインは不要です。
インストール
uv tool install dekko # or: pip install dekko / pipx install dekko
dekko --claude-install # add the /map command + MCP server to Claude Code, then restart
追加機能(言語をさらに 43 種類サポートする dekko[all]、埋め込み検索用の dekko[search])、ローカルクローンからのインストール、アンインストールについては、docs/install.md を参照してください。
クイックスタート
cd my-project
dekko map # writes .dekko/MAP.md + .dekko/map.json
dekko summary # ~40-line digest: dirs, hotspots, entry points
デフォルトで .dekko/ は git の追跡対象から除外されます。マップは必要に応じて再生成されるため、手動で dekko map を再実行する必要はほとんどありません。リポジトリにデフォルトの Tier-1 セット(Python、C、C++、JS/TS、Go、Java、Kotlin、Rust)以外の言語が含まれている場合、dekko map はファイルごとにその旨を表示します。言語をさらに 43 種類サポートする dekko[all] をインストールし(インストールを参照)、もう一度実行してください。リストには、それぞれの言語をどの程度読み取れるかが記載されています。
ドキュメント
- docs/install.md — インストール、追加機能、ローカルクローン、アンインストール
- docs/cli.md — すべての CLI コマンド、シンボルターゲット、ファイルの除外、注記、デーモンモード、言語サポート
- docs/claude-code.md —
/mapプラグイン、プッシュフック、Claude Code スキル、MCP サーバー、Cline
詳しくはこちら
- CHANGELOG.md — バージョンごとの履歴
- CONTRIBUTING.md — 開発環境のセットアップ、テスト、リリース
- benchmarks/ — トークン効率の測定結果。通常の Read/Grep ワークフローとの実際のリポジトリ 7 件を対象にした比較を含みます
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。