如何节省你的token,请看CodeGraph

0 阅读5分钟

介绍

CodeGraph 是一个为 AI 编程助手(如Claude Code、Cursor等)设计的代码知识图谱工具。它能把你的代码库解析成一张语义知识图谱,让 AI 不再盲目地 grep 扫描文件,而是直接查询结构化数据,从而降低 Token 消耗、提升响应速度,并且完全在本地运行

快速安装

第一步:安装命令行工具

打开你的终端(Windows 用户请使用 PowerShell),根据你的操作系统选择以下任一命令。

使用官方安装脚本(推荐):
这种方式无需 Node.js 环境,脚本会自动下载适配你操作系统的版本

bash

# macOS / Linux
curl -fsSL https://raw.githubusercontent.com/colbymchenry/codegraph/main/install.sh | sh

# Windows (PowerShell)
irm https://raw.githubusercontent.com/colbymchenry/codegraph/main/install.ps1 | iex

使用 npm 安装:
如果你已经安装了 Node.js 环境,也可以使用 npm 进行全局安装,它适用于任何版本

bash

npm i -g @colbymchenry/codegraph

第二步:验证安装与升级
安装完成后,请打开一个新的终端窗口,使 codegraph 命令生效,然后运行以下命令验证是否成功

bash

codegraph --version

如需日后升级,只需一条命令即可,它会自动识别你之前的安装方式

bash

codegraph upgrade

Agent配置

安装好 CLI 后,需要将它“接入”你的 AI 编程助手。CodeGraph 通过 MCP (Model Context Protocol) 服务器与这些工具通信。运行以下命令,它会自动检测并配置你电脑上已安装的 Agent

bash

codegraph install

这个命令支持配置的 Agent 包括:Claude Code、Cursor、Codex CLI、Gemini CLI、OpenCode、Hermes Agent、Antigravity IDE 和 Kiro。

项目初始化

在你想要使用 CodeGraph 的每个项目仓库中,都需要单独进行初始化和索引。

第一步:进入项目目录

bash

cd your-project

第二步:初始化并建立索引
运行以下命令,它会在你的项目根目录下创建一个 .codegraph/ 文件夹,并立即开始构建代码图谱。索引的速度取决于你的项目规模。

bash

codegraph init -i

说明codegraph init 只创建目录,加上 -i (或 --index) 参数才会同时进行索引。如果只执行了 init,后续需要手动运行 codegraph index 来生成索引。

索引管理

  • 查看索引状态:你可以随时运行以下命令,查看当前项目的索引是否正常。

    bash

    codegraph status
    
  • 重新索引:当你的代码发生重大变化时,可以手动重新运行索引命令来更新图谱。

    bash

    codegraph index
    
  • 移除索引:如果你想为一个项目停用 CodeGraph,可以使用 uninit 命令移除其 .codegraph/ 目录

    bash

    codegraph uninit
    

卸载清理

如果你想完全移除 CodeGraph,可以使用 uninstall 命令。它会自动移除之前在各类 Agent 中配置的 MCP 服务器设置

bash

codegraph uninstall

这个命令不会自动删除各个项目里的 .codegraph/ 索引文件夹,如果需要彻底清理,可以在各个项目目录中手动删除,或使用 codegraph uninit

核心能力

  • 基于 Tree-sitter 的解析:它使用 Tree-sitter 解析器,能快速、增量式地解析超过 20 种编程语言,从 AST(抽象语法树)中精确提取符号和关系,并非简单猜测
  • 暴露 31 种工具:除了基础的索引能力,CodeGraph 还为开发者提供了 31 种工具、一个 VS Code 扩展和一个持久化内存层,方便进行深度定制和集成。
  • 精准的影响分析:在你修改一行代码前,可以追踪所有调用者、被调用者,以及改动可能影响的完整范围
  • 高度本地化:索引数据存储在项目本地的 SQLite 数据库中,所有处理都在你的电脑上完成,保证了代码的隐私和安全。

支持的语言

CodeGraph 支持多种主流编程语言,其官方基准测试覆盖了以下 7 种语言的项目

  • TypeScript/JavaScript (如 VS Code、Excalidraw)
  • Python (如 Django)
  • Rust (如 Tokio)
  • Java (如 OkHttp)
  • Go (如 Gin)
  • Swift (如 Alamofire)

此外,其解析器还支持超过 20 种语言,具备良好的扩展性

与Agent的集成

CodeGraph 的核心价值在于增强 AI Agent 的代码理解能力。它提供 codegraph_explore 作为主要工具,AI Agent 可以调用它来即时查询知识图谱,而不是反复执行 grepfind 和 Read 操作来扫描文件

bash

# 这个命令主要由 AI Agent 内部调用,但理解其作用有助于你评估效果
codegraph_explore <查询内容>

性能优势

根据作者在 7 个真实世界开源代码库上的测试结果,使用 CodeGraph 后,AI Agent 回答架构问题的效率得到显著提升

  • 成本:平均降低 16%
  • Token 消耗:平均减少 47%
  • 响应速度:平均提升 22%
  • 工具调用次数:平均减少 58%

使用建议与注意事项

  • 完全本地运行:所有索引和查询都在本地完成,没有数据外泄风险。
  • 支持离线使用:不依赖网络连接即可为 AI 提供代码结构信息。
  • 与工作流无缝集成:它不会改变你原有的 AI 工具使用方式,而是作为一个底层的辅助层存在。在你使用 AI 之前,codegraph index 已在后台为你准备好了整个代码库的结构化知识。
  • 初始化等待:对于首次索引的大型项目(如 VS Code),构建知识图谱可能需要一些时间,请耐心等待。
  • 定期更新:建议定期运行 codegraph upgrade 以获取最新的功能和性能优化。