MIT ライセンスの DSH プラグイン。tree-sitter のシンボルグラフを 2 つのツールでエージェントに提供し、ディスク形式は `codegraph` CLI と共通です — バックグラウンド索引、ウォッチャー、パースキャッシュ、`/codegraph` コマンド、設定パネルを備えます。
DSH 統合
ネイティブ実行
作者による申告
安全性監査
未監査
最終検証日
2026-11-13
ライセンス
MIT
01どんなタスクに使えるのか?
テキスト検索ではなくシンボルグラフでコード構造の問いに答える
`codegraph` の 10 個の読み取り専用オペレーション — `search`、`node`、`callers`、`callees`、`impact`、`trace`、`files`、`status`、`explore`、`context` — を、あらかじめ構築した索引から返します
編集前に「誰が呼んでいるか」「変更がどこまで届くか」をエージェントに把握させたい dsh ユーザー
手をかけずに索引を最新に保つ
索引のないワークスペースでセッションを開くとバックグラウンド構築が始まり、以降の変更はウォッチャーが追従し、再索引は変更されたファイルだけを再解析します(337 ファイルで 991 ms → 45 ms)
大規模リポジトリで、索引コマンドを手で回したくない開発者
モデルのターンを消費せずに索引の状態を見て操作する
毎回のシステムプロンプトに索引の概要を 1 行(ファイル数・宣言数・関係数・構築時刻)載せ、さらに `/codegraph status|index|files` と再構築ボタン付きの設定パネルを用意
エージェントに聞かず自分でグラフを確認・再構築したい人
02DeepSeek Harness への導入方法
前提条件
- インストール先の DeepSeek Harness profile — README では `dsh plugin --profile <name> add dsh-plugin-codegraph`
- それ以外は不要:ストアとインデクサはプロセス内で動くため、別途 CLI や MCP サーバーを入れる必要はありません
インストール手順
- 01
`dsh plugin --profile <name> add dsh-plugin-codegraph` を実行します — パッケージを取得し、`dsh-plugin-codegraph` を `dsh.profile.bundles` に追記します(JSON の手編集は不要)
$ dsh plugin --profile <name> add dsh-plugin-codegraph
- 02
索引したいワークスペースでセッションを開きます — 索引がまだない場合はバックグラウンド構築が自動で始まります
- 03
明示的に構築したいときは `codegraph_index`(または `/codegraph index`、設定パネルの再構築ボタン)を使います
導入成功の確認
- `dsh --profile <name> --dump-default-config` に 4 つのプラグインが `# == dsh-plugin-codegraph` 見出しでまとまって表示されます(API キー不要)
- `codegraph` の `status` が索引の規模と構築時刻を報告します。索引がない場合はその旨と `codegraph_index` が解決策であることを示します
03DSH 統合と能力の範囲
DSH ネイティブのプラグインバンドル:`dsh plugin add` 1 回で 4 パッケージ(service 定義、SQLite ストア、tree-sitter インデクサ、モデル向けツール)が入ります
10 個の読み取り専用オペレーション
シンボル名、クエリ、タスク記述、または from/to の組→宣言位置、直接の呼び出し元・呼び出し先、影響範囲、呼び出し経路、索引済みファイル、索引状態、関連宣言とソース、タスクに関係するコンテキスト
毎回のシステムプロンプトに索引を説明する 1 行が挿入されます明示的な索引とバックグラウンドジョブ
ワークスペースのルート→構築済みのグラフ、または `backgroundIndexThreshold` を超えるファイル数の場合はジョブ ID
大規模な構築はツール呼び出しを占有せずホストの job registry に渡されますクエリが暗黙に索引を起動することはありませんウォッチャーと増分パースキャッシュ
監視ルート内のファイル変更→mtime とサイズ(`cacheVerify: 'hash'` では SHA-256)で確認したファイル単位の抽出結果を再利用する、デバウンス付き再構築
対象ディレクトリは `node:fs` ではなく `ctx.fs.watch` 経由で監視されますエッジは毎回グラフ全体で再構築されますプラグイン自身の `.codegraph` 書き込みは再構築をループさせません18 言語を同梱し、ディスク形式を共有
TypeScript/TSX、JavaScript/JSX、Python、Go、Java、Kotlin、Dart、C/C++、C#、PHP、Rust、Ruby、Zig、Swift、Scala のソース→`<projectRoot>/.codegraph/codegraph.db` の schema v4 グラフ。`codegraph` CLI からも読み書きできます
文法は遅延読み込みなので、使わない言語のコストはかかりません人向けの入口とプロンプト状態
`/codegraph status|index|files <pattern>`、または設定パネル→モデルのターンを消費せずに索引状態の確認と再構築
パネルはプラグイン自身の API エンドポイント経由で `<root>/.codegraph/status.json` だけを読みます
04誰に向いているのか?使うべきでない場面は?
向いている用途
- 編集前に「誰が呼んでいるか」「変更がどこまで届くか」をエージェントに把握させたい dsh ユーザー
- 大規模リポジトリで、索引コマンドを手で回したくない開発者
- エージェントに聞かず自分でグラフを確認・再構築したい人
不向きな用途
- 索引は決して暗黙には走りません。クエリが構築を起動することはなく、索引のないワークスペースでは `status` だけが正常に答え(`codegraph_index` が解決策だと示します)、他のオペレーションは空のワークスペースと誤認させず明確に失敗します。
- 監視は既定でホストのファイルシステム seam 経由で有効ですが、監視できないバックエンドでは明示的索引に退化し、WSL2 カーネルが `/mnt/<drive>/...` のマウントを監視する場合は既定で無効になります。`watch: false`、`CODEGRAPH_FORCE_WATCH=1`、`CODEGRAPH_NO_WATCH=1` で上書きできます。
05互換性・メンテナンス・セキュリティ上の注意
- 索引は決して暗黙には走りません。クエリが構築を起動することはなく、索引のないワークスペースでは `status` だけが正常に答え(`codegraph_index` が解決策だと示します)、他のオペレーションは空のワークスペースと誤認させず明確に失敗します。
- 監視は既定でホストのファイルシステム seam 経由で有効ですが、監視できないバックエンドでは明示的索引に退化し、WSL2 カーネルが `/mnt/<drive>/...` のマウントを監視する場合は既定で無効になります。`watch: false`、`CODEGRAPH_FORCE_WATCH=1`、`CODEGRAPH_NO_WATCH=1` で上書きできます。
- 除外設定が理解するのは gitignore 構文の実用的なサブセットのみで、`**`・文字クラス・ディレクトリ単位の `.gitignore` には対応しません。コミットされたバンドルはビルドシステム連携ではなくヒューリスティック(`.min.` セグメント、または平均行長 500 文字超)で除外されます。
- `context` は識別子の語の重なりで順位付けするため、シンボル名を含まないタスクは順位が下がります。未解決の末尾には型なしリゾルバでは解けないメンバー呼び出しや既にインポート済みの名前が含まれ、さらに dsh 自体が開発者プレビューで互換性を破る変更が想定されます。
MIT · 最新リリース v0.6.5(2026-11-09)· README の記載のみ、セキュリティ監査なし
06よくある質問
DeepSeek Harness に dsh-plugin-codegraph を導入するには?
`dsh plugin --profile <name> add dsh-plugin-codegraph` を実行します。この 1 コマンドでパッケージを取得し `dsh.profile.bundles` に追記するため、JSON を手で編集する必要はありません。API キーを使わずに 4 つの同梱プラグインが入ったか確認するには `dsh --profile <name> --dump-default-config` を実行し、`# == dsh-plugin-codegraph` の見出しを探します。
質問する前に索引コマンドを実行する必要がありますか?
新しいセッションでは不要です。索引がない(または 10 分より古い)ワークスペースでセッションを開くとバックグラウンド構築が始まり、以降はウォッチャーが維持します。ただし索引がクエリから暗黙に起動されることはなく、索引がない場合は `status` がその旨と `codegraph_index` という解決策を示し、他のオペレーションは空のワークスペースと誤認させず明確に失敗します。
codegraph CLI が作った索引を使えますか?
使えます。プラグインが読み書きするのは `<projectRoot>/.codegraph/codegraph.db` の schema version 4 で、`@colbymchenry/codegraph` と同じパス・同じ形式です。既存の CLI 索引はそのまま利用され、`codegraph_index` を完全に省略できます。このインデクサが解析しない言語で CLI が作ったグラフも、そのまま照会できます。
ワークスペースのどこに何を書き込みますか?
`<projectRoot>/.codegraph/` に索引を書きます。グラフデータベース、設定パネルが読む状態ファイル、そして `.codegraph/cache/` 配下のファイル単位パースキャッシュです。監視は既定でホストのファイルシステム seam 経由で有効になり、プラグイン自身の `.codegraph` 書き込みは差分で除外されるため再構築がループしません。
codegraph CLI を spawn する場合と何が違いますか?
第 2 のランタイムがありません。ストアとインデクサはプロセス内で動くので、`PATH` 上のバイナリも MCP サーバーの配線も不要です。またツールは CLI サブコマンドごとの 10 個ではなく 2 個に抑えています。ツール定義は毎ターン、呼ばれなくてもシステムプロンプトに載るためです。
07関連する DSH ワークフロー
archify
by tt-a1i
Turn any idea, plan, or codebase into a beautiful interactive diagram. An agent skill for Claude Code, Codex, and more.
openviking
by volcengine
Self-evolving Context Database for AI Agents. Unify Agent Memory, Knowledge RAG and Skills.
aitoearn
by yikart
Let's use AI to Earn!
learn-harness-engineering
by walkinglabs
Harness engineering beginner tutorial, from 0 to 1
08データと出典
Gives the agent two tools — `codegraph` and `codegraph_index` — so it can ask **where is this declared**, **who calls it…
This plugin ships both halves: a **store** that serves queries from an on-disk graph, and an **indexer** that builds one…
dsh plugin --profile <name> add dsh-plugin-codegraph
このページは、プロジェクトの公開ドキュメント、リポジトリのメタデータ、および DSH Plugins の構造化解析に基づいて生成されています。最終検証日:2026-11-13。誤りを見つけた場合は、修正を送信してください。
dsh プラグイン おすすめ
最初に入れたい 12 のプラグイン。全カタログ・全カテゴリから厳選しました。
