cgrep: AIコーディングエージェント向けローカルコード意図検索ツール
(github.com/meghendra6)こんにちは。cgrep というローカル優先(code-local)のコード検索ツールを作りました。
主な目標は、AIコーディングエージェントがコードベースを探索する際に発生するトークンの無駄遣いと反復検索を減らすことです。
cgrep は BM25 検索(Tantivy)と AST シンボル解析(tree-sitter)を組み合わせ、単純な文字列検索よりもコードの意図に合った探索ができるよう設計しました。
主な機能:
- コード探索: definition / references / callers / dependents
- コンテキスト探索: read / map
- エージェントの2段階フロー:
agent locate -> agent expand(小さなペイロードで候補を見つけ、必要なものだけを展開) - MCP サポート:
cgrep mcp serve+ host インストール対応 - エージェント導入対応: claude-code, codex, copilot, cursor, opencode
PyTorch 基準のベンチマーク(実装追跡シナリオ 6件):
- grep 基準 tokens-to-complete: 127,665
- cgrep(agent locate/expand) tokens-to-complete: 6,153
- トークン 95.2% 削減(20.75x 縮小)
- 完了までの平均検索遅延: 1321.3ms -> 22.7ms(約 58.2x)
すべての処理はローカルで動作します(クラウドインデックスへの依存なし)。
フィードバックをお願いします:
- 実際の大規模コードベースで不足している点
- MCP / エージェント連携で必要な改善点
- ベンチマークシナリオを強化するアイデア
Repo: https://github.com/meghendra6/cgrep
Docs: https://meghendra6.github.io/cgrep/
Benchmark: https://meghendra6.github.io/cgrep/benchmarks/…
4件のコメント
mgrep や ck ツール と似た目的ですね。
macOS で v1.4.1 時点のリリースバイナリを実行しようとすると、警告が表示されて実行できませんね。
agent-browser の例 のように、agent が参照できる skills や instruction があってもよいと思いました。
バイナリ署名に問題があったため、修正しました。
ご確認とレビューをありがとうございます!
トークン削減効果はとても良いですね。README にコーディング関連のベンチ結果も併せてあれば、ベンチ性能が同程度に維持されるだけでも信頼度がさらに上がると思います。
フィードバックでいただいたとおり、real coding agent シナリオのベンチマーク結果も追加しておきました。
フィードバックありがとうございます!