Codehelper について
Codehelperは、AIコーディングアシスタント向けにローカルのGitリポジトリを索引化し、シンボルグラフと呼び出しグラフを構築してコード検索や影響分析を行います。リポジトリをクラウドモデルに送信せず、MCPツールをローカルで利用できます。
主な機能
- 01ローカルGitリポジトリの索引化
- 02シンボルグラフと呼び出しグラフの構築
- 03BM25とトライグラム検索
- 04呼び出しグラフによる検索結果の順位付け
- 05オプションのローカル意味再ランキング
- 06リポジトリ監視デーモン
活用シーン
- 01シンボルと呼び出し元の特定
- 02コード変更の影響範囲の確認
- 03コーディングエージェントにプロジェクト対応検索を提供
- 04オフラインでリポジトリを調査
MCP 対応
Cursor、Claude Code、Codexなどのクライアント向けに、索引化したリポジトリを検索・調査する60以上のMCPツールを公開します。既定のstdioに加えてHTTPにも対応します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Codehelper
AI コーディングアシスタント向けのローカルファーストなリポジトリ分析ツールです。
Codehelper はお使いのマシン上の Git リポジトリをインデックス化し、シンボルと呼び出しグラフを構築します。また、60 以上の MCP ツールを公開し、Cursor、Claude Code、Codex、その他の MCP クライアントが、リポジトリ全体をクラウドモデルにアップロードすることなく、お使いのコードを検索、理解し、安全に変更できるようにします。
Codehelper を使う 3 つの理由
- プロジェクトを把握するエージェント — ファイル全体を grep する代わりに、シンボル、呼び出し元、影響範囲をローカルで検索できます。
- オフラインで動作 — API キーは不要です。コードはお使いのマシンから外に出ません。
- エディターに適合 — Cursor、Claude Code、Codex 向けの MCP に対応し、リポジトリごとに
codehelper initを 1 回実行するだけです。
インストール
Linux / macOS(推奨):
curl -fsSL https://raw.githubusercontent.com/VeyrForge/codehelper/main/scripts/install.sh | sh
Windows(PowerShell):
powershell -ExecutionPolicy Bypass -File .\scripts\install.ps1
ソースからインストール(Go 1.25+、CGO、C コンパイラーが必要です):
git clone https://github.com/VeyrForge/codehelper.git && cd codehelper
npm run build
GitHub Releases で配布されているビルド済みの 3.0.3 バンドル(Linux、macOS、Windows)には、codehelper、MCP サーバー、ge 1.1.1、greencompress 1.1.1 が含まれています。
アップデート: codehelper upgrade は、既定で VeyrForge/codehelper から最新リリースをダウンロードします。--repo owner/name または CODEHELPER_UPGRADE_REPO を指定して、アップグレード元を変更できます。codehelper update はローカルの Git チェックアウトから再ビルドし、どのディレクトリからでも実行できます(ソースパスを記憶します。または CODEHELPER_SOURCE / update /path/to/codehelper を使用します)。
30 秒で試す
cd your-git-repo
codehelper init
codehelper help tools --main
最初の init の後に Cursor または Claude Code を再読み込みし、セッションごとに project_context を 1 回呼び出すと、エージェントが利用可能なツールとインデックスの最新状態を把握できます。
動作を確認する
デモ動画はまだ同梱されていません。一般的な初回セッションの例を紹介します。
$ codehelper init
init: ready — index + watch daemon active
$ codehelper status
symbols: 1247 edges: 3891 freshness: current
$ codehelper help tools --main
project_context bootstrap tool catalog + index stats
query search the symbol graph
context source + callers + callees
impact blast radius before you edit
ベンチマークの方法(競合の数値を捏造していません):docs/BENCHMARK_COMPARISON.md。
対応プラットフォーム
| プラットフォーム | インストール | 備考 |
|---|---|---|
| Linux | scripts/install.sh | 完全対応。主要な CI 対象 |
| macOS | scripts/install.sh | Universal およびアーキテクチャ別のリリースバイナリ |
| Windows | scripts/install.ps1 | x64 に対応 |
| クライアント | セットアップ |
|---|---|
| Cursor | codehelper init によるプロジェクトごとの .mcp.json |
| Claude Code | ~/.claude.json の管理対象ブロック |
| Codex | 生成された AGENTS.md を読み込みます |
仕組み
| レイヤー | テクノロジー |
|---|---|
| インデックス作成 | tree-sitter パーサー + SQLite のシンボル/呼び出しグラフ |
| 検索 | BM25 + トライグラム + 呼び出しグラフによるランキング(オプションのローカルセマンティック再ランキング — docs/LOCAL_EMBED.md) |
| MCP トランスポート | stdio(デフォルト)または HTTP(codehelper mcp --http :8765) |
| オプションのローカルモデル | Green Engine の埋め込み/チャット + Green Compress の重み |
init はリポジトリにインデックスを作成し、監視デーモンを起動して、エディター用に MCP を設定し、エージェントのルールを書き込みます。オプションのローカルダッシュボード:ge ui serve → http://127.0.0.1:8780
ツールの完全なリファレンス:docs/MCP_TOOLS.md
ベンチマーク
競合製品との比較に関する方法論(テスト条件、指標、テストベッドの規模 — 競合製品の数値を捏造しない)については、docs/BENCHMARK_COMPARISON.md を参照してください。測定済みのセルは、再現可能なローカルハーネスの実行結果からのみ記入してください。
注意事項: 公開済みの表の多くは、自分のリポジトリ(このツリー)を対象にしているか、ペア比較による位置特定プローブ(MCP とホストのファイル走査)を使った簡易的な方法論に基づいています。これらは、コーディングアシスタントによる問題修正率をエンドツーエンドで測定したものではありません。複数のテストベッドでの保留評価(CODEHELPER_TESTBEDS)を優先し、競合製品のセルはローカルで再実行した結果からのみ記入してください。
# One recipe: prepare + paired + dated report
scripts/testbeds-all.sh
scripts/testbeds-all.sh fixture # always-safe, no beds
レイアウトと準備/評価の使い方:docs/TESTBEDS.md。
ドキュメント
- docs/MCP_TOOLS.md — MCP ツールのリファレンス
- docs/BENCHMARK_COMPARISON.md — ベンチマークの方法論 + ハーネス(競合製品の数値を捏造しない)
- CHANGELOG.md — バージョン履歴
- third_party/README.md — 同梱されている Green スタックのバイナリ
制限事項
- インデックス作成には git リポジトリが必要です。
- ソースからビルドするには CGO と C コンパイラーが必要です(tree-sitter)。
- セマンティック再ランキング:オプションの小規模なローカル埋め込みパス(
bash scripts/install-local-embed.sh/codehelper green init-embed) — docs/LOCAL_EMBED.md を参照してください。エンリッチメントにはオプションのローカルモデルサービス(Green Engine)が必要です。 - Windows arm64 CI は実験的であり、ブロッキングではありません(
windows-11-arm)。リリースには常に Windows amd64 版が含まれます。*_windows_universal.zipは amd64 と arm64 の両方のビルドが成功した場合にのみ公開されます(v3.0.2 までの過去の*_windows_universal.zipアセットは amd64 と同等のサイズであり、真のユニバーサル版として扱うべきではありません)。
コントリビューション
バグ報告、ベンチマーク結果、互換性に関する注記、改善案は、公式の VeyrForge/codehelper リポジトリで歓迎します。
Codehelper を改善するプルリクエストを歓迎します。コントリビューションを行うことで、コントリビューターライセンス契約に同意したものとみなされます。また、BUSL-1.1 の追加利用許諾に基づき、自身のデプロイ用に非公開/内部向けのフォークを維持することもできます。Codehelper(または実質的に類似する代替品)を、ホスト型または競合製品として第三者に提供しないでください。ライセンスと許可される利用および LICENSE-FAQ.md を参照してください。
公開リリース履歴
CHANGELOG.md と GitHub Releases を参照してください。
ライセンスと許可される利用
Codehelper は Business Source License 1.1(BUSL-1.1)に基づく ソース公開ソフトウェアです。Change License が適用されるまでは、OSI 認定のオープンソースではありません。
許可されること:
- Codehelper を個人利用または社内業務目的(従業員や代理として行動する請負業者を含む)で使用、実行すること(本番環境での利用を含む)
- 同じ目的でコピー、変更、派生物を作成すること — 変更を還元する必要はありません
- Codehelper 自体を製品またはサービスとして提供することなく、自分自身または顧客のためのソフトウェアの開発、テスト、保守、レビュー、運用に Codehelper を使用すること
- 公開されたソースを調査すること
許可されないこと(Change License が適用されるまで):
- Codehelper またはその変更版を、代替品として Codehelper と実質的に同様の機能を提供することを主な目的とする、ホスト型、マネージド型、組み込み型、または配布型の製品やサービスとして第三者に提供すること
- 商用ライセンスなしに、名称を変更したフォークを販売すること、または Codehelper を別の有料製品の主要機能として組み込むこと
変更日: 2029-07-24 — この日、またはこのバージョンが BSL に基づいて初めて公開配布された日から 4 周年の日のいずれか早い日に、このバージョンは Apache License 2.0 に基づいて利用可能になります。
チュートリアルやブログ記事では、公開されたソースから説明を目的とした短い例示的なコード片を掲載できます。ただし、競合製品としてソフトウェアを再配布したり、変更日前に OSI 認定のオープンソースライセンスが付与されていると示唆したりしてはなりません。
商用再配布、OEM ライセンス、または上記で対象とされていないその他の利用については、[email protected] までお問い合わせください。
このセクションは、平易な言葉による要約です。法的拘束力のある条件は LICENSE に記載されています。解釈に関する Q&A:LICENSE-FAQ.md。CLA.md、SECURITY.md、docs/PERMISSIONS.md、docs/ROADMAP.md もご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。