cocoindex-io/cocoindex-code
A super light-weight embedded code search engine CLI (AST based) that just works - improves speed and efficiency for coding agent 🌟 Star if you like it!
cocoindex-code – ASTベースのセマンティックコード検索
概要 – ソースコードの抽象構文木(AST)に基づいてインデックスを構築し、自然言語クエリでコードを検索できる、軽量なコマンドラインツール(およびプラグイン)です。RustベースのCocoIndexエンジンを使用し、意味に基づいたコードスニペットを返します。
重要性 – コードの構造を理解することで、識別子やフォーマットが異なる場合でも一致を見つけることができ、LLMを利用したコード検索エージェントのトークン使用量を最大約70%削減できます。
主な機能(READMEに記載)
- ASTベースのセマンティック検索 – 生のテキストだけでなく、コード構造をインデックス化します。
- 2つのインストールタイプ:
cocoindex-code[full]– ローカルのsentence-transformersモデルを同梱(APIキー不要)。cocoindex-code(スリム) – LiteLLMクラウドプロバイダーを使用して埋め込みを生成。
- 1分でセットアップ完了 –
ccc init(またはスキル)で自動的にデフォルト設定が作成されます。 - CLIコマンド –
ccc init、ccc index、ccc search、ccc grep(構造パターン検索)、ステータス、診断、デーモン制御など。 - エージェント統合 – スキル(
ccc)とオプションのフックおよびMCPサーバーを提供し、Claude Code、Grok、Oh My Pi、Codex、OpenCode、Kilo Codeなどで利用できます。 - Dockerイメージ –
cocoindex/cocoindex-code:latest(スリム、クラウド埋め込み)と:full(ローカル埋め込み)で、再現可能な依存関係のないデプロイが可能です。 - MCPツール – クエリ、結果数、言語/パスフィルター、オプションのインデックス更新をパラメータとして受け取る
searchツールを公開します。 - 構造検索(
ccc grep) – インデックス不要で、同じASTエンジンを使用したパターン一致を行います。
クイックスタート(CLI)
# pipxでインストール(フルバリアントにはローカル埋め込みが含まれます)
pipx install 'cocoindex-code[full]'
# またはスリムバリアント
pipx install cocoindex-code
# プロジェクトを初期化(.cocoindex_code/settings.ymlを作成)
ccc init
# インデックスを構築(バックグラウンドデーモンが自動実行)
ccc index
# 説明で検索
ccc search "authentication logic"
初回使用時に自動初期化され、デーモンがインデックスをウォームに保ちます。
エージェント/プラグインの使用方法
- スキル(推奨) – コーディングエージェントにスキルを追加:
エージェントはnpx skills add cocoindex-io/cocoindex-codeccc init、ccc index、ccc searchを実行し、ファイル編集に応じてインデックスを更新します。 - Claude Code – Claudeのプラグインマーケットプレイスからインストール(
/plugin marketplace add …)。 - Grok – スキル、セッション開始/ポストツール使用フック(自動インデックス)、MCPサーバー(
ccc mcp)をバンドルしたプラグインをインストール。 - Oh My Pi – 同様のインストールパス。プラグインはインクリメンタルインデックス用のTypeScriptフックも提供。
- MCPサーバー –
ccc mcpを実行し、MCP対応エージェント(Claude、Codex、OpenCode、Kiloなど)に登録。公開されたsearchツールは自然言語クエリとオプションのフィルターを受け付けます。
Dockerデプロイメント
# どのOSでもワンライナー(GitHubからcomposeファイルを取得)
# macOS / Windows
docker compose -f <(curl -L https://raw.githubusercontent.com/cocoindex-io/cocoindex-code/main/docker/docker-compose.yml) up -d
# Linux(ファイル所有権を保持)
PUID=$(id -u) PGID=$(id -g) docker compose -f <(curl -L https://raw.githubusercontent.com/cocoindex-io/cocoindex-code/main/docker/docker-compose.yml) up -d
コンテナはデーモンを実行し、インデックスデータをDockerボリュームに保存します。シェルラッパーでcccコマンドをコンテナに転送できます:
ccc() { docker exec -it -e COCOINDEX_CODE_HOST_CWD="$PWD" cocoindex-code ccc "$@"; }
どのバリアントを使うべきか
| バリアント | サイズ | 埋め込みソース | 最適な用途 |
|---|---|---|---|
cocoindex-code:latest(スリム) |
約450MB | LiteLLMクラウドプロバイダー(OpenAI、Geminiなど) | ほとんどのユーザー、最小イメージ、任意のAPIキーで動作 |
cocoindex-code:full |
約5GB | ローカルのsentence-transformersモデル(例:snowflake-arctic-embed-xs) |
オフライン環境やAPIキーを公開したくない場合 |
TL;DR
pipx install 'cocoindex-code[full]'(またはスリムバリアント)でインストール。- 一度
ccc init && ccc indexを実行。 ccc search "…"で検索、またはコーディングエージェントにcccスキル/MCPを呼び出させる。- チーム全体で再現可能なセットアップ用のオプションのDockerイメージ。
このプロジェクトは、セマンティックコード検索のための本格的でオープンソースのAI搭載ツールであり、最新のLLMコーディングアシスタントと緊密に統合されています。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト