这个工具让AI写代码时少花70%冤枉钱

用Claude Code、Cursor这类AI编程助手的同学,可能都有个感受:它们干活挺猛,但烧token也猛。

尤其遇到大项目,AI跟没头苍蝇似的到处翻文件——grep扫一遍,glob找一遍,找不到再读一遍。一圈下来,几十次工具调用打底,钱哗哗的。

CodeGraph就是来解决问题的。image.png

给AI配一个代码知识图谱,它想问什么直接查,不用再满世界乱翻。实测结果:平均省35%的费用,减少70%的工具调用。

项目完全开源,MIT协议,100%本地运行,不上传任何代码。


装起来有多简单?

不用装Node.js,一条命令搞定:

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

如果机器上已经有Node,也可以走npm:

npx @colbymchenry/codegraph        # 零安装运行
# 或者全局装
npm i -g @colbymchenry/codegraph

装完跑一下安装向导,它会自动检测你机器上的Claude Code、Cursor、Codex CLI、opencode、Hermes Agent,问你要给哪个配好MCP服务。一路选就行,配置文件自动写好。

然后进你的项目目录:

cd your-project
codegraph init -i

重启AI助手,完事。


到底能省多少?

作者拿7个真实开源项目测了一遍。每个项目跑4次,问同一个架构问题,对比有无CodeGraph的结果。

代码库

语言·规模

费用

token

耗时

工具调用

VS Code

TypeScript · 约1万文件

省35%

少73%

快41%

少72%

Excalidraw

TypeScript · 约600文件

省47%

少73%

快60%

少86%

Django

Python · 约2700文件

省34%

少64%

快59%

少81%

Tokio

Rust · 约700文件

省52%

少81%

快63%

少89%

OkHttp

Java · 约640文件

省17%

少41%

快36%

少64%

Gin

Go · 约150文件

省22%

少23%

快34%

少19%

Alamofire

Swift · 约100文件

省38%

少59%

快51%

少77%

平均:35%更便宜,59%更少token,49%更快,70%更少工具调用。

注意看Gin那个小项目(150个文件),native搜索本来就够快,所以差距不大。但上了规模,优势立刻拉开——大项目里AI几乎不需要读文件,直接查索引就能回答。


它能干什么?

智能上下文构建
给AI一个任务描述,一次调用返回相关的入口点、关联符号和代码片段。AI不用再派一堆探索子agent到处挖。

全文本搜索
内置FTS5全文索引,整个代码库按名字搜符号,毫秒级。

影响分析
改一个函数之前,先查清楚谁调用了它,它调用了谁,改了会影响多大范围。

实时同步
文件监听走操作系统原生事件(FSEvents / inotify / ReadDirectoryChangesW),代码一保存,图谱自动更新。不用配。

支持19+种语言
TypeScript、JavaScript、Python、Go、Rust、Java、C#、PHP、Ruby、C、C++、Swift、Kotlin、Dart、Lua、Luau、Svelte、Liquid、Pascal/Delphi

框架感知的路由
能认出Django、Flask、FastAPI、Express、NestJS、Laravel、Rails、Spring、Gin等14种框架的路由定义,把URL模式和handler函数关联起来。查一个controller的调用者,能直接看到是哪个URL在绑它。

100%本地
数据不出机器,不用API key,没有外部服务。底层就是个SQLite库。


完整命令参考

安装与配置

命令

说明

curl ... | sh

 (macOS/Linux)

一键安装脚本

irm ... | iex

 (Windows)

一键安装脚本

npx @colbymchenry/codegraph

临时运行(不安装)

npm i -g @colbymchenry/codegraph

全局安装(npm版)

codegraph

 或 codegraph install

交互式安装向导

codegraph install --yes

非交互安装(自动检测agent)

codegraph install --target=cursor,claude --yes

指定安装到哪些agent

codegraph install --location=local

仅当前项目生效

codegraph install --print-config codex

打印配置内容,不写入文件

项目初始化与索引

命令

说明

codegraph init [path]

在项目中初始化(加-i同时索引)

codegraph uninit [path]

移除项目中的CodeGraph

codegraph index [path]

全量索引(--force强制重建)

codegraph sync [path]

增量同步更新

codegraph status [path]

查看索引统计信息

查询与分析

命令

说明

codegraph query <搜索词>

搜索符号(支持--kind--limit--json

codegraph files [path]

显示索引的文件结构(--format--filter--max-depth

codegraph context "任务描述"

为AI构建上下文(--format--max-nodes

codegraph affected <文件...>

找出受改动影响的测试文件

affected 常用用法

# 直接指定文件
codegraph affected src/utils.ts src/api.ts

# 从git diff获取文件列表
git diff --name-only | codegraph affected --stdin

# 只输出文件路径(适合脚本)
codegraph affected src/auth.ts --quiet

# 自定义测试文件匹配模式
codegraph affected src/auth.ts --filter "e2e/*"

# JSON格式输出
codegraph affected src/auth.ts --json

MCP服务(供AI调用)

命令

说明

codegraph serve --mcp

启动MCP服务器

库方式调用(Node.js)

import CodeGraph from '@colbymchenry/codegraph';

const cg = await CodeGraph.init('/path/to/project');
await cg.indexAll({ onProgress: (p) => console.log(p) });

const results = cg.searchNodes('UserService');
const callers = cg.getCallers(results[0].node.id);
const context = await cg.buildContext('fix login bug', { maxNodes: 20 });
const impact = cg.getImpactRadius(results[0].node.id, 2);

cg.watch();   // 开启自动同步
cg.close();

工作原理

树状语法树(tree-sitter)解析源码,抽取出函数、类、方法这些节点,以及调用、继承、导入这些边。存进本地的SQLite数据库,开FTS5全文索引。image.png

MCP服务器跑起来后,监听文件变动。改了代码,等两秒安静下来就增量更新图谱。

AI通过MCP工具查询时,直接从数据库拿结果,不用再扫硬盘。

MCP工具列表(AI可用的接口):

工具名

用途

codegraph_search

按名字查找符号

codegraph_context

为任务构建代码上下文

codegraph_callers

找谁调用了这个函数

codegraph_callees

找这个函数调用了谁

codegraph_impact

分析改动一个符号的影响范围

codegraph_node

获取某个符号的详细信息(可带源码)

codegraph_files

获取索引的文件结构

codegraph_status

检查索引健康状态


常见坑

"CodeGraph not initialized"
忘了在项目目录跑codegraph init

索引慢
检查.gitignore,确保node_modules、dist这类目录被排除在外。

MCP连不上
确认项目已经初始化过,检查MCP配置里的路径对不对,试试手动跑codegraph serve --mcp看报错。

missing symbols
等几秒让自动同步完成,或者手动跑codegraph sync。确认文件语言在支持列表里,且没有被.gitignore挡掉。

数据库被锁(database is locked)
新版已经内置node:sqlite并开启WAL模式,读写不互斥。如果还遇到:

  • 旧版本请重装(0.9以上)

  • 检查codegraph status看Journal模式是不是wal,如果不是(比如在WSL2的/mnt下),把项目移到本地磁盘。


最后说两句

CodeGraph的作者之前搞过类似的项目,这次直接打包了Node运行时,不用你自己配环境。安装脚本自动检测系统,下载对应的二进制。本质上把知识图谱做成了AI助手的“外挂缓存”——查过的不用再查,该知道的提前知道。

项目地址:https://github.com/colbymchenry/codegraph

觉得有用可以点个Star。

软件概述 UG(Unigraphics NX)是一款由西门子(Siemens PLM Software)开发的交互式CAD/CAM/CAE系统。作为全球领先的产品工程解决方案,它集成了产品设计、工程仿真与制造加工于一体。其功能强大且应用广泛,能够轻松实现各种复杂实体和造型的构造,为模具、汽车、航空航天及通用机械等行业提供了高性能的机械设计与制图灵活性。 软件基础信息 • 支持系统: 64位 Windows 10、Windows 11 核心功能模块 一、创新设计:高效、灵活、无缝协同 全链路产品设计 涵盖从2D布局、3D建模、装配设计到图纸文档记录的各个环节,大幅提升设计吞吐量,缩短交付周期超35%。 强大的同步建模技术 打破数据壁垒,可无缝导入并直接修改来自其他CAD系统的几何模型,是跨平台协同设计的理想选择。 复杂装配管理 专为大型复杂产品打造,即使面对成千上万的零件也能从容应对,快速识别并解决数字样机中的干涉等问题。 集成设计验证 内置自动验证功能,实监控设计是否符合公司及行业标准;结合PLM数据可视化合成,辅助工程师做出更明智的决策。 二、综合仿真(Simcenter 3D):精准预测,降低试错成本 极速前后处理 依托先进的几何引擎,将强大的分析命令与几何编辑紧密集成,相比传统有限元工具,可缩短高达70%的仿真建模间。 全方位结构分析 在同一环境中集成线性静力学、动态、疲劳及非线性分析,底层由业界顶尖的NX Nastran解算器提供支持,确保计算的高精度与可靠性。 声学与热管理分析 提供内外声学仿真以优化音质、降低噪音;具备一流的热传导仿真能力,帮助电子产品和工业机械实现最佳热管理方案。 多物理场耦合 简化了结构动力学、热传导、流体流动等复杂物理现象的模拟过程,消除外部数据传输错误,真实还原产品运行工况。 三、智能制造(CAM):打通从计划到车间的数字主线 全面的制造解决方案 提供从工装设计、CAM编程到机床控制器(如Sinumerik)的一体化支持,助力制定更科学的生产决策。 深度集成的PLM环境 借助Teamcenter实现数据和流程的统一管理,避免多数据库冲突,支持重用验证过的加工工艺与刀具库。 车间级互联 通过DNC系统与车间无缝对接,直接将加工数据和刀具清单下发至CNC机床,实现计划与生产的紧密结合。 提质增效 优化NC编程与刀具路径,提升表面精加工水平与零件精度;减少人为错误,显著提高新机床部署成功率及制造资源利用率。 总结 UG NX 2023作为一款集成化的产品工程解决方案,通过其强大的设计、仿真和制造功能,为现代制造业提供了完整的数字化产品开发平台。无论是复杂产品的设计验证,还是精密制造的流程优化,UG NX 2023都能为工程师团队提供高效、可靠的解决方案,助力企业提升产品创新能力和市场竞争力。 适用领域 模具设计、汽车制造、航空航天、通用机械、消费电子等
软件概述 UG(Unigraphics NX)是一款由西门子(Siemens PLM Software)开发的交互式CAD/CAM/CAE系统。作为全球领先的产品工程解决方案,它集成了产品设计、工程仿真与制造加工于一体。其功能强大且应用广泛,能够轻松实现各种复杂实体和造型的构造,为模具、汽车、航空航天及通用机械等行业提供了高性能的机械设计与制图灵活性。 软件基础信息 • 支持系统: 64位 Windows 10、Windows 11 核心功能模块 一、创新设计:高效、灵活、无缝协同 全链路产品设计 涵盖从2D布局、3D建模、装配设计到图纸文档记录的各个环节,大幅提升设计吞吐量,缩短交付周期超35%。 强大的同步建模技术 打破数据壁垒,可无缝导入并直接修改来自其他CAD系统的几何模型,是跨平台协同设计的理想选择。 复杂装配管理 专为大型复杂产品打造,即使面对成千上万的零件也能从容应对,快速识别并解决数字样机中的干涉等问题。 集成设计验证 内置自动验证功能,实监控设计是否符合公司及行业标准;结合PLM数据可视化合成,辅助工程师做出更明智的决策。 二、综合仿真(Simcenter 3D):精准预测,降低试错成本 极速前后处理 依托先进的几何引擎,将强大的分析命令与几何编辑紧密集成,相比传统有限元工具,可缩短高达70%的仿真建模间。 全方位结构分析 在同一环境中集成线性静力学、动态、疲劳及非线性分析,底层由业界顶尖的NX Nastran解算器提供支持,确保计算的高精度与可靠性。 声学与热管理分析 提供内外声学仿真以优化音质、降低噪音;具备一流的热传导仿真能力,帮助电子产品和工业机械实现最佳热管理方案。 多物理场耦合 简化了结构动力学、热传导、流体流动等复杂物理现象的模拟过程,消除外部数据传输错误,真实还原产品运行工况。 三、智能制造(CAM):打通从计划到车间的数字主线 全面的制造解决方案 提供从工装设计、CAM编程到机床控制器(如Sinumerik)的一体化支持,助力制定更科学的生产决策。 深度集成的PLM环境 借助Teamcenter实现数据和流程的统一管理,避免多数据库冲突,支持重用验证过的加工工艺与刀具库。 车间级互联 通过DNC系统与车间无缝对接,直接将加工数据和刀具清单下发至CNC机床,实现计划与生产的紧密结合。 提质增效 优化NC编程与刀具路径,提升表面精加工水平与零件精度;减少人为错误,显著提高新机床部署成功率及制造资源利用率。 总结 UG NX 2023作为一款集成化的产品工程解决方案,通过其强大的设计、仿真和制造功能,为现代制造业提供了完整的数字化产品开发平台。无论是复杂产品的设计验证,还是精密制造的流程优化,UG NX 2023都能为工程师团队提供高效、可靠的解决方案,助力企业提升产品创新能力和市场竞争力。 适用领域 模具设计、汽车制造、航空航天、通用机械、消费电子等
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值