暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

CodeIndexer 开源 | 我用 Gemini CLI+Milvus,做了个替代Cursor的AI coding神器

ZILLIZ 2025-07-11
403

相信现在应该没有还没用上AI coding的程序员。

但另一边 “Cursor又涨价” “Claude怎么又抽风” “Gemini CLI 为什么就是读不懂上下文” 诸如此类的疑问和吐槽在网上屡见不鲜。

Cursor好用,上下文感知能力强,能理解整个代码库的语义关系,自然语言交互效果一流。

但却要每月20/40美元的Pro/Teams订阅费用,打工人凭什么付费上班?

Gemini CLI开源免费,但只能基于有限的上下文信息或关键词匹配做代码匹配,效果实在拉垮。

举个例子,有开发者反馈找“抓取网络博客准备数据”的例子, Gemini 就真的依次按照关键词生搬硬套的检索

如果我们的代码片段里没有包含这些关键词(比如搜的是scrape
crawl
,但实际上代码里用的是 urllib
playwright
等),那么就无法搜到代码库里相应的代码。

其实解决这个问题不难,本质上,智能代码搜索和上下文感知都属于语义检索的范围。而做这个,我们是专业

因此,应广大开发者需求,近日,我们开源了CodeIndexer,简单来说,这是个帮你做智能代码搜索的工具,可以帮助AI Coding场景更好地感知上下文

通过MCP协议和插件生态,CodeIndexer可以无缝集成到Claude Code、Gemini CLI、VSCode 插件、Chrome浏览器等各种开发环境中,总而言之,任何AI编程工具都能用它做智能代码搜索。

Github 尝鲜链接

https://github.com/zilliztech/CodeIndexer

欢迎大家前去体验并给出反馈。

01 CodeIndexer是什么,有什么能力

CodeIndexer通过embedding模型将代码转换为向量表示,捕捉代码的语义信息和上下文关系。

重要的是,CodeIndexer采用模块化设计,可以通过MCP协议、VSCode插件、Chrome扩展等多种方式无缝集成到现有的AI编程工具中,让它们瞬间获得类似Cursor的智能代码搜索能力。

其核心能力包括:

  • 语义理解搜索:使用自然语言描述需求,如"用户登录验证"、"支付处理逻辑",精准定位相关代码

  • 跨语言统一搜索:支持JavaScript、Python、Java、Go等15+种编程语言的统一语义搜索

  • 智能代码分割:基于AST技术按函数、类等逻辑单元切分,保证搜索结果的语义完整性

  • 实时增量更新:文件变更时自动更新索引,确保搜索结果始终反映最新代码状态

  • 完全支持私有部署:支持本地Ollama模型和Milvus数据库,代码不出本地环境,保障代码安全

  • IDE深度集成:VSCode插件提供快捷搜索和结果跳转,无缝融入开发工作流

  • MCP支持:通过MCP协议与AI编程助手无缝集成,提升代码理解效率

  • 浏览器插件:支持在浏览器github页面中搜索代码,无需离开当前页面

02 CodeIndexer如何做到的?

这是CodeIndexer的技术架构

整体来看,CodeIndexer采用模块化设计,包含核心Core模块构建在core模块之上的扩展模块,以满足不同场景的需求。

核心模块

  • @code-indexer/core:核心引擎,包含代码解析、向量化处理、存储管理和语义检索四个核心流程。系统基于Milvus向量数据库构建,支持OpenAI、VoyageAI等多种embedding模型,为用户提供灵活的技术选择。集成Tree-sitter AST解析器,支持15+种编程语言的智能代码分割和语义理解。以及基于Merkle Tree的文件监控系统,实现代码索引的同步更新。

内核之上的扩展模块

  • @code-indexer/mcp:Model Context Protocol支持,与AI编程助手无缝集成

  • VSCode Extension:IDE深度集成,提供实时搜索和结果跳转

  • Chrome Extension:浏览器插件,支持在github页面中搜索代码

03 使用展示CodeIndexer

代码中的 @code-indexer/mcp 模块,提供了MCP的支持,可以与AI当前主流的各类MCP Client、编程助手等,进行无缝集成使用。

比如,在 Claude Code 中,我们使用下面这个命令,就可以配置上 CodeIndexer 的 MCP 服务。

    claude mcp add code-indexer -e OPENAI_API_KEY=your-openai-api-key -e MILVUS_ADDRESS=localhost:19530 -- npx @code-indexer/mcp@latest

    配置好之后,Claude Code 能把 CodeIndexer 的语义搜索能力,作为自己的一个工具,在必要的场景下就会调用。

    官方 README 文档中,还包含了下面这些常见的 MCP Client 的配置方法介绍,大家可以根据自己的需求选择:

    Chrome浏览器插件体验

    Chrome插件让开发者可以直接在GitHub代码仓库页面进行语义搜索,无需离开浏览器就能快速定位相关代码片段。下图演示了在GitHub页面使用的效果截屏 (此功能处于开发模式,后续即将上线)。

    写在最后

    CodeIndexer不仅仅是一个代码搜索工具,它更是我们对AI编程工具生态的一次重新思考。同时,也让强大的代码搜索与上下文感知能力不再是昂贵的专属服务,而是能够结合开源模型,更平等普惠让每个人受益。

    我们诚挚邀请每一位开发者参与到这场变革中来,如果您对CodeIndexer有更多的期待或吐槽欢迎在评论区指出。

    相关链接

    • GitHub开源地址

      https://github.com/zilliztech/CodeIndexer

    • 如何配置 CodeIndexer 的 MCP 服务:

      https://github.com/zilliztech/CodeIndexer?tab=readme-ov-file#code-indexermcp



    作者介绍

    张晨

    Zilliz Algorithm Engineer



    推荐阅读
    GitHub上最被低估的宝藏:这个N8N仓库让Workflow效率提升10倍
    推出了四个MCP后,我们发现MCP的落地速度已经赶不上吹牛速度
    全面测评Claude Code vs Gemini CLI:自然语言编程的时代真的来了
    干货|从FiDRAG到GraphRAG,RAG选型终极指南

    文章转载自ZILLIZ,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

    评论