背景
如果你用过 Cursor、Claude Code 或者各种 AI 编程助手,一定踩过这个坑:它"假装"理解你的代码库。
给它一个 5 万行代码的项目,让它重构 OrderService 里那个奇怪的折扣逻辑,它要么直接乱改,要么一本正经地告诉你"这段代码不存在"——因为它根本没把整个仓库读进上下文。MCP(Model Context Protocol)协议出来后,情况好了一点,Agent 能临时检索文件,但还是"读一次忘一次",每次新对话都要重新塞 context。
codebase-memory-mcp 解决的就是这个问题:把代码库索引成一张持久化的知识图谱,让 AI Agent 像人脑一样"长期记住"项目结构、模块依赖、API 签名。今天它在 GitHub Trending Daily 第一,一天涨了 1000+ star。
能做什么
它本质上是一个高性能代码智能 MCP Server,主打几个硬指标:
毫秒级索引:平均一个仓库几毫秒就索引完。不是"扫一遍文件"的浅层索引,而是把代码结构、符号、引用关系抽成知识图谱。
158 种语言支持:从 Python、Go、Rust 到 TypeScript、Java、Swift,覆盖主流语言,甚至包括一些冷门的小语种。
亚毫秒级查询:查"哪里调用了
getUserById",亚毫秒返回,比 grep 快两个数量级。99% 上下文节省:Agent 不用把整个文件读进 prompt,只查询图谱拿到精确的符号片段。token 用量直接砍到原来的 1%。
零依赖、单二进制:单个 static binary,扔到任何 Linux/macOS 机器上就跑,不依赖 Docker、不需要 Python 环境、不需要 Node。
RAG 是把代码切片扔进向量库,召回率低、容易"幻觉"出根本不存在的函数
codebase-memory-mcp 用的是结构化的知识图谱,符号引用是精确的,不会有"看着像但其实不存在"的问题
速度是碾压级:RAG 检索普遍要 100ms+,它亚毫秒
tree-sitter 只能解析语法,不理解语义
LSP 需要每个语言单独配置 server,部署痛苦
codebase-memory-mcp 把这些都封装好了,开箱即用
你不想给每个开发机装 Node、Python、Rust 工具链吧?
单文件直接
./codebase-memory-mcp跑,扔进 systemd 就是常驻服务中大型项目的开发者,代码库超过 10 万行那种,靠脑子记已经记不住了
用 AI Agent 辅助开发但被"上下文丢失"折磨的团队
需要做跨文件重构、架构梳理、技术债清理的工程师
不想维护一堆语言服务器(LSP)的 DevOps / Platform Engineer
对 AI 编程体验有要求、愿意折腾 MCP 配置的早期采用者
一两个文件的小项目,杀鸡用牛刀
完全不接受 AI 写代码的纯手写党
不想碰 MCP / Docker / 命令行的纯 GUI 用户
GitHub 仓库:https://github.com/DeusData/codebase-memory-mcp
MCP 协议介绍:https://modelcontextprotocol.io/
相关项目:Cursor、Claude Code、Cline(都是 MCP client)
实际场景里,它能让 AI Agent 做到:
1. 跨文件重构:改了一个 interface,自动找出所有实现类和调用方
2. 精准问答:"这个项目用的是什么 ORM?迁移文件在哪?" 直接给出文件和行号
3. 架构理解:画出模块依赖图、API 调用链
4. 新人 onboarding:让 Agent 当"会说话的架构师",随时问项目结构
为什么值得
和同类方案比,它有几个明显优势:
毫秒级索引:平均一个仓库几毫秒就索引完。不是"扫一遍文件"的浅层索引,而是把代码结构、符号、引用关系抽成知识图谱。
158 种语言支持:从 Python、Go、Rust 到 TypeScript、Java、Swift,覆盖主流语言,甚至包括一些冷门的小语种。
亚毫秒级查询:查"哪里调用了
getUserById",亚毫秒返回,比 grep 快两个数量级。99% 上下文节省:Agent 不用把整个文件读进 prompt,只查询图谱拿到精确的符号片段。token 用量直接砍到原来的 1%。
零依赖、单二进制:单个 static binary,扔到任何 Linux/macOS 机器上就跑,不依赖 Docker、不需要 Python 环境、不需要 Node。
RAG 是把代码切片扔进向量库,召回率低、容易"幻觉"出根本不存在的函数
codebase-memory-mcp 用的是结构化的知识图谱,符号引用是精确的,不会有"看着像但其实不存在"的问题
速度是碾压级:RAG 检索普遍要 100ms+,它亚毫秒
tree-sitter 只能解析语法,不理解语义
LSP 需要每个语言单独配置 server,部署痛苦
codebase-memory-mcp 把这些都封装好了,开箱即用
你不想给每个开发机装 Node、Python、Rust 工具链吧?
单文件直接
./codebase-memory-mcp跑,扔进 systemd 就是常驻服务中大型项目的开发者,代码库超过 10 万行那种,靠脑子记已经记不住了
用 AI Agent 辅助开发但被"上下文丢失"折磨的团队
需要做跨文件重构、架构梳理、技术债清理的工程师
不想维护一堆语言服务器(LSP)的 DevOps / Platform Engineer
对 AI 编程体验有要求、愿意折腾 MCP 配置的早期采用者
一两个文件的小项目,杀鸡用牛刀
完全不接受 AI 写代码的纯手写党
不想碰 MCP / Docker / 命令行的纯 GUI 用户
GitHub 仓库:https://github.com/DeusData/codebase-memory-mcp
MCP 协议介绍:https://modelcontextprotocol.io/
相关项目:Cursor、Claude Code、Cline(都是 MCP client)
毫秒级索引:平均一个仓库几毫秒就索引完。不是"扫一遍文件"的浅层索引,而是把代码结构、符号、引用关系抽成知识图谱。
158 种语言支持:从 Python、Go、Rust 到 TypeScript、Java、Swift,覆盖主流语言,甚至包括一些冷门的小语种。
亚毫秒级查询:查"哪里调用了
getUserById",亚毫秒返回,比 grep 快两个数量级。99% 上下文节省:Agent 不用把整个文件读进 prompt,只查询图谱拿到精确的符号片段。token 用量直接砍到原来的 1%。
零依赖、单二进制:单个 static binary,扔到任何 Linux/macOS 机器上就跑,不依赖 Docker、不需要 Python 环境、不需要 Node。
RAG 是把代码切片扔进向量库,召回率低、容易"幻觉"出根本不存在的函数
codebase-memory-mcp 用的是结构化的知识图谱,符号引用是精确的,不会有"看着像但其实不存在"的问题
速度是碾压级:RAG 检索普遍要 100ms+,它亚毫秒
tree-sitter 只能解析语法,不理解语义
LSP 需要每个语言单独配置 server,部署痛苦
codebase-memory-mcp 把这些都封装好了,开箱即用
你不想给每个开发机装 Node、Python、Rust 工具链吧?
单文件直接
./codebase-memory-mcp跑,扔进 systemd 就是常驻服务中大型项目的开发者,代码库超过 10 万行那种,靠脑子记已经记不住了
用 AI Agent 辅助开发但被"上下文丢失"折磨的团队
需要做跨文件重构、架构梳理、技术债清理的工程师
不想维护一堆语言服务器(LSP)的 DevOps / Platform Engineer
对 AI 编程体验有要求、愿意折腾 MCP 配置的早期采用者
一两个文件的小项目,杀鸡用牛刀
完全不接受 AI 写代码的纯手写党
不想碰 MCP / Docker / 命令行的纯 GUI 用户
GitHub 仓库:https://github.com/DeusData/codebase-memory-mcp
MCP 协议介绍:https://modelcontextprotocol.io/
相关项目:Cursor、Claude Code、Cline(都是 MCP client)
毫秒级索引:平均一个仓库几毫秒就索引完。不是"扫一遍文件"的浅层索引,而是把代码结构、符号、引用关系抽成知识图谱。
158 种语言支持:从 Python、Go、Rust 到 TypeScript、Java、Swift,覆盖主流语言,甚至包括一些冷门的小语种。
亚毫秒级查询:查"哪里调用了
getUserById",亚毫秒返回,比 grep 快两个数量级。99% 上下文节省:Agent 不用把整个文件读进 prompt,只查询图谱拿到精确的符号片段。token 用量直接砍到原来的 1%。
零依赖、单二进制:单个 static binary,扔到任何 Linux/macOS 机器上就跑,不依赖 Docker、不需要 Python 环境、不需要 Node。
RAG 是把代码切片扔进向量库,召回率低、容易"幻觉"出根本不存在的函数
codebase-memory-mcp 用的是结构化的知识图谱,符号引用是精确的,不会有"看着像但其实不存在"的问题
速度是碾压级:RAG 检索普遍要 100ms+,它亚毫秒
tree-sitter 只能解析语法,不理解语义
LSP 需要每个语言单独配置 server,部署痛苦
codebase-memory-mcp 把这些都封装好了,开箱即用
你不想给每个开发机装 Node、Python、Rust 工具链吧?
单文件直接
./codebase-memory-mcp跑,扔进 systemd 就是常驻服务中大型项目的开发者,代码库超过 10 万行那种,靠脑子记已经记不住了
用 AI Agent 辅助开发但被"上下文丢失"折磨的团队
需要做跨文件重构、架构梳理、技术债清理的工程师
不想维护一堆语言服务器(LSP)的 DevOps / Platform Engineer
对 AI 编程体验有要求、愿意折腾 MCP 配置的早期采用者
一两个文件的小项目,杀鸡用牛刀
完全不接受 AI 写代码的纯手写党
不想碰 MCP / Docker / 命令行的纯 GUI 用户
GitHub 仓库:https://github.com/DeusData/codebase-memory-mcp
MCP 协议介绍:https://modelcontextprotocol.io/
相关项目:Cursor、Claude Code、Cline(都是 MCP client)

快速上手
目前官方提供了 MCP Server 的标准接口,最简单的跑法是 Docker。
1. 直接跑(需要先在 release 页面下载二进制)
# 从 GitHub releases 下载最新二进制
wget https://github.com/DeusData/codebase-memory-mcp/releases/latest/download/codebase-memory-mcp-linux
chmod +x codebase-memory-mcp-linux
./codebase-memory-mcp-linux --repo /path/to/your/project2. Docker 跑(推荐,最省心)
docker run -d \
--name codebase-memory-mcp \
-v /path/to/your/project:/repo:ro \
-p 8080:8080 \
deusdata/codebase-memory-mcp:latest \
--repo /repo跑起来后,它会监听 MCP 协议的 stdio(默认)或者 HTTP 端口(看你怎么配)。接下来在 Cursor / Claude Code / Cline 里加一个 MCP server 配置:
{
"mcpServers": {
"codebase-memory": {
"command": "codebase-memory-mcp-linux",
"args": ["--repo", "/path/to/your/project"]
}
}
}或者用 Docker 版本:
{
"mcpServers": {
"codebase-memory": {
"command": "docker",
"args": ["exec", "-i", "codebase-memory-mcp", "codebase-memory-mcp", "--repo", "/repo"]
}
}
}配置完,重启 IDE,新对话里 Agent 就能查询你的代码库了。试试问它:"列出所有处理支付的 service 类",你会发现它真的能精确回答。

适合谁
适合:
毫秒级索引:平均一个仓库几毫秒就索引完。不是"扫一遍文件"的浅层索引,而是把代码结构、符号、引用关系抽成知识图谱。
158 种语言支持:从 Python、Go、Rust 到 TypeScript、Java、Swift,覆盖主流语言,甚至包括一些冷门的小语种。
亚毫秒级查询:查"哪里调用了
getUserById",亚毫秒返回,比 grep 快两个数量级。99% 上下文节省:Agent 不用把整个文件读进 prompt,只查询图谱拿到精确的符号片段。token 用量直接砍到原来的 1%。
零依赖、单二进制:单个 static binary,扔到任何 Linux/macOS 机器上就跑,不依赖 Docker、不需要 Python 环境、不需要 Node。
RAG 是把代码切片扔进向量库,召回率低、容易"幻觉"出根本不存在的函数
codebase-memory-mcp 用的是结构化的知识图谱,符号引用是精确的,不会有"看着像但其实不存在"的问题
速度是碾压级:RAG 检索普遍要 100ms+,它亚毫秒
tree-sitter 只能解析语法,不理解语义
LSP 需要每个语言单独配置 server,部署痛苦
codebase-memory-mcp 把这些都封装好了,开箱即用
你不想给每个开发机装 Node、Python、Rust 工具链吧?
单文件直接
./codebase-memory-mcp跑,扔进 systemd 就是常驻服务中大型项目的开发者,代码库超过 10 万行那种,靠脑子记已经记不住了
用 AI Agent 辅助开发但被"上下文丢失"折磨的团队
需要做跨文件重构、架构梳理、技术债清理的工程师
不想维护一堆语言服务器(LSP)的 DevOps / Platform Engineer
对 AI 编程体验有要求、愿意折腾 MCP 配置的早期采用者
一两个文件的小项目,杀鸡用牛刀
完全不接受 AI 写代码的纯手写党
不想碰 MCP / Docker / 命令行的纯 GUI 用户
GitHub 仓库:https://github.com/DeusData/codebase-memory-mcp
MCP 协议介绍:https://modelcontextprotocol.io/
相关项目:Cursor、Claude Code、Cline(都是 MCP client)
不太适合:
毫秒级索引:平均一个仓库几毫秒就索引完。不是"扫一遍文件"的浅层索引,而是把代码结构、符号、引用关系抽成知识图谱。
158 种语言支持:从 Python、Go、Rust 到 TypeScript、Java、Swift,覆盖主流语言,甚至包括一些冷门的小语种。
亚毫秒级查询:查"哪里调用了
getUserById",亚毫秒返回,比 grep 快两个数量级。99% 上下文节省:Agent 不用把整个文件读进 prompt,只查询图谱拿到精确的符号片段。token 用量直接砍到原来的 1%。
零依赖、单二进制:单个 static binary,扔到任何 Linux/macOS 机器上就跑,不依赖 Docker、不需要 Python 环境、不需要 Node。
RAG 是把代码切片扔进向量库,召回率低、容易"幻觉"出根本不存在的函数
codebase-memory-mcp 用的是结构化的知识图谱,符号引用是精确的,不会有"看着像但其实不存在"的问题
速度是碾压级:RAG 检索普遍要 100ms+,它亚毫秒
tree-sitter 只能解析语法,不理解语义
LSP 需要每个语言单独配置 server,部署痛苦
codebase-memory-mcp 把这些都封装好了,开箱即用
你不想给每个开发机装 Node、Python、Rust 工具链吧?
单文件直接
./codebase-memory-mcp跑,扔进 systemd 就是常驻服务中大型项目的开发者,代码库超过 10 万行那种,靠脑子记已经记不住了
用 AI Agent 辅助开发但被"上下文丢失"折磨的团队
需要做跨文件重构、架构梳理、技术债清理的工程师
不想维护一堆语言服务器(LSP)的 DevOps / Platform Engineer
对 AI 编程体验有要求、愿意折腾 MCP 配置的早期采用者
一两个文件的小项目,杀鸡用牛刀
完全不接受 AI 写代码的纯手写党
不想碰 MCP / Docker / 命令行的纯 GUI 用户
GitHub 仓库:https://github.com/DeusData/codebase-memory-mcp
MCP 协议介绍:https://modelcontextprotocol.io/
相关项目:Cursor、Claude Code、Cline(都是 MCP client)
链接
毫秒级索引:平均一个仓库几毫秒就索引完。不是"扫一遍文件"的浅层索引,而是把代码结构、符号、引用关系抽成知识图谱。
158 种语言支持:从 Python、Go、Rust 到 TypeScript、Java、Swift,覆盖主流语言,甚至包括一些冷门的小语种。
亚毫秒级查询:查"哪里调用了
getUserById",亚毫秒返回,比 grep 快两个数量级。99% 上下文节省:Agent 不用把整个文件读进 prompt,只查询图谱拿到精确的符号片段。token 用量直接砍到原来的 1%。
零依赖、单二进制:单个 static binary,扔到任何 Linux/macOS 机器上就跑,不依赖 Docker、不需要 Python 环境、不需要 Node。
RAG 是把代码切片扔进向量库,召回率低、容易"幻觉"出根本不存在的函数
codebase-memory-mcp 用的是结构化的知识图谱,符号引用是精确的,不会有"看着像但其实不存在"的问题
速度是碾压级:RAG 检索普遍要 100ms+,它亚毫秒
tree-sitter 只能解析语法,不理解语义
LSP 需要每个语言单独配置 server,部署痛苦
codebase-memory-mcp 把这些都封装好了,开箱即用
你不想给每个开发机装 Node、Python、Rust 工具链吧?
单文件直接
./codebase-memory-mcp跑,扔进 systemd 就是常驻服务中大型项目的开发者,代码库超过 10 万行那种,靠脑子记已经记不住了
用 AI Agent 辅助开发但被"上下文丢失"折磨的团队
需要做跨文件重构、架构梳理、技术债清理的工程师
不想维护一堆语言服务器(LSP)的 DevOps / Platform Engineer
对 AI 编程体验有要求、愿意折腾 MCP 配置的早期采用者
一两个文件的小项目,杀鸡用牛刀
完全不接受 AI 写代码的纯手写党
不想碰 MCP / Docker / 命令行的纯 GUI 用户
GitHub 仓库:https://github.com/DeusData/codebase-memory-mcp
MCP 协议介绍:https://modelcontextprotocol.io/
相关项目:Cursor、Claude Code、Cline(都是 MCP client)
总结
codebase-memory-mcp 是那种"等了很久才有人做"的基础设施——把代码库索引做成一个真正的、可以被 AI 高效查询的知识库。158 种语言、亚毫秒查询、单二进制部署,这套组合拳在当前的开源生态里几乎没有对手。
如果你的项目代码量已经大到 AI Agent 经常"读错"或"读漏",强烈建议试试。它不会取代你对代码的理解,但它能让 Agent 真正成为你的搭档,而不是一个不断 hallucination 的聊天对象。
默认评论
Halo系统提供的评论