上周,我开源了一个轻量级的 Code MCP 服务,它使用 AST(抽象语法树)解析来让 AI 编码智能体真正理解你的代码库。结果在 X 上爆火了,获得了 54K+ 浏览。
爆火推文链接:x.com/RoundtableS…
问题:AI 编码智能体正在浪费大量 Token
如果你用过 Claude Code、Codex、Cursor 或者任何 AI 编码智能体,你可能已经发现了:它们会把整个文件塞入上下文,只是为了理解你的代码结构。这样做既贵又慢,而且极其浪费。
实际上,智能体不需要你的整个文件。它只需要知道 有哪些函数、定义了哪些类、它们之间的关系是什么。
解决方案:基于 AST 的语义代码搜索
我做了 cocoindex-code —— 一个超轻量级的嵌入式 MCP:
- 基于 tree-sitter 解析 AST,提取有意义的代码块(函数、类、方法)
- 创建语义向量嵌入,让智能体按意义搜索而不是纯文本匹配
- 只重新索引变更的文件 —— 基于 Rust 增量索引引擎
- 无需数据库、无需 API Key,开箱即用
结果?节省 70% Token,编码智能体响应明显加快。
1 分钟安装 - 零配置
Claude Code:
pipx install cocoindex-code
claude mcp add cocoindex-code -- cocoindex-code
Codex:
codex mcp add cocoindex-code -- cocoindex-code
就这样。不需要数据库,不需要 API Key,不需要配置文件。
底层原理
- Tree-sitter 解析 —— 把代码拆分成语义块(函数、类等),支持20+ 种语言
- 本地嵌入模型(SentenceTransformers)—— 创建向量表示,完全免费,无需 API Key
- SQLite + 向量搜索 —— 本地存储,轻量便携
- 增量索引 —— 通过 CocoIndex(Rust 引擎)只处理变更的文件
当智能体需要查找代码时,它调用 search MCP 工具,用自然语言查询,返回精确的代码块、文件路径和行号。
为什么爆火?
- 真实痛点 —— 每个用 AI 编码的人都感受过 Token 燃烧的痛
- 零摩擦 —— 一条 pip install + 一条 mcp add 命令
- 无供应商锁定 —— 支持 Claude、Codex、Cursor 等所有 MCP 兼容智能体
- 开源 (Apache 2.0) —— 代码完全透明
- 无需 API Key —— 默认嵌入模型本地运行,完全免费
支持语言
Python、JavaScript/TypeScript、Rust、Go、Java、C/C++、C#、Ruby、Kotlin、Swift、SQL、Shell 等。基于 tree-sitter 语法,添加新语言非常简单。
接下来
我们正在积极开发:
- 更好的代码专用嵌入模型(推荐有 GPU 的同学试试
nomic-ai/CodeRankEmbed) - 企业级功能:大型代码库支持、团队共享索引
- 更多 MCP 工具
GitHub 仓库:github.com/cocoindex-i… —— 520+ Star,快速增长中。
基于 CocoIndex 构建,我们的开源 Rust 数据索引框架。
欢迎试用,有问题欢迎在评论区讨论或在 GitHub 提 Issue!