场景示例
- 「X 功能是怎么工作的?」——codegraph_explore 一次返回相关符号源码和调用路径
- 「改这个函数会影响哪些地方?」——影响面分析列出所有依赖方
- 「从 A 是怎么调到 B 的?」——调用链追踪,回调 / React 重渲染这类动态跳转也能接上
- 替代 grep + 逐文件阅读的探索循环——更少 token、更少往返,索引全在本地
全本地代码知识图谱 MCP——tree-sitter 解析全仓符号与调用边存进 SQLite,AI 一次调用拿到源码+调用链+影响面
内容更新于 2026-08-09 19:36curl -fsSL https://raw.githubusercontent.com/colbymchenry/codegraph/main/install.sh | sh
codegraph install
codegraph init# 移除已写入各 AI 客户端的 MCP 配置(加 --keep-cli 可保留 CLI 本体)
codegraph uninstallcodegraph telemetry off(或环境变量 DO_NOT_TRACK=1)关闭.gitignore 命中路径与超 1 MB 文件不进索引——查不到不代表代码里没有默认只暴露 codegraph_explore:传自然语言问题或一把符号名,一次返回按文件分组的逐行源码 + 调用路径 + 影响面,通常一次调用就够。细粒度工具(codegraph_search / codegraph_callers / codegraph_impact 等)用环境变量 CODEGRAPH_MCP_TOOLS 按需开启。
curl -fsSL https://raw.githubusercontent.com/colbymchenry/codegraph/main/install.sh | sh
codegraph install # 自动检测已装的 AI 客户端并写入 MCP 配置
codegraph init # 在每个项目里建索引(生成 .codegraph/)
也可 npm i -g @colbymchenry/codegraph。支持 30+ 语言,建好后由文件事件自动增量同步。
codegraph init 的目录走;只在子项目 init 过的话,从仓库根发起的查询要指定 projectPath(或干脆在根目录 init 一次).gitignore 命中路径、构建产物、超 1 MB 的文件不进索引codegraph telemetry off 或 DO_NOT_TRACK=1 关| 命令 | 说明 |
|---|---|
codegraph status | 索引健康状态 |
codegraph query <关键词> | 命令行直接查符号 |
codegraph impact <符号> | 改动影响面 |
codegraph uninit | 移除当前项目索引 |
手动注册(不用 codegraph install 时):claude mcp add codegraph -- codegraph serve --mcp