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的语义代码搜索
简介 – 一个轻量级命令行工具(和插件),让您通过含义而非精确文本搜索代码库。它使用基于Rust的CocoIndex引擎从源文件的抽象语法树(AST)构建索引,然后通过自然语言查询返回相关代码片段。
重要性 – 通过理解代码结构,即使标识符或格式不同,该工具也能找到匹配项,为需要查找代码的LLM驱动代理节省高达约70%的令牌使用量。
主要功能(如README中所述)
- 基于AST的语义搜索 – 索引代码结构,而不仅仅是原始文本。
- 两种安装变体:
cocoindex-code[full]– 捆绑本地sentence-transformers模型(无需API密钥)。cocoindex-code(精简版) – 使用LiteLLM云提供商进行嵌入。
- 一分钟零配置设置 –
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部署
# 适用于任何操作系统的一行命令(从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卷中。shell包装器可以将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密钥时 |
总结
- 使用
pipx install 'cocoindex-code[full]'(或精简变体)安装。 - 运行一次
ccc init && ccc index。 - 通过
ccc search "…"搜索或让编码代理调用ccc技能/MCP。 - 可选的Docker镜像用于团队范围、可重复的设置。
该项目是真正的开源AI驱动语义代码搜索工具,与现代LLM编码助手紧密集成。
相关
- 项目
- 项目
- 项目
- 项目
- 项目