CodeGraph v1.6.2 发布:符号解析遵循语言作用域,跨语言错误链接大幅减少

CodeGraph v1.6.2 发布:符号解析遵循语言作用域,跨语言错误链接大幅减少

3小时前
duguying
4 阅读
来源:GitHub Releases

CodeGraph v1.6.2 于 2026-10-03 发布,核心主题是让符号解析真正遵循各语言的命名作用域规则,重载、super 与递归解析全部修正,并新增 Angular、Rails、FastEndpoints、Vapor 等多框架路由识别。升级后需重新索引以生效。

相关标签

#CodeGraph#代码图谱#AI编程#MCP#Rust

发布概览

CodeGraph v1.6.2 于 2026 年 10 月 3 日发布。CodeGraph 是一款面向 AI 编程助手的本地语义代码图谱工具——它为 Claude Code、Cursor、Codex、OpenCode、Gemini、Antigravity、Kiro、GitHub Copilot 等 agent 提供预构建的符号、调用边与依赖图,让 agent 一次工具调用就能拿到”精准上下文”,而不必用 grep / glob / Read 一个文件一个文件地爬。

本次版本是一次以”准确性”为主线的深度修复:核心主题是让符号解析真正遵循各语言自身的命名作用域规则——通过 import、package、namespace,以及它所在的类来解析一次调用、导入或类型引用,从而不再”撞名即链接”到一个毫不相关的同名符号。这一改动覆盖 TypeScript / JavaScript、Python、Java、Kotlin、Scala、C#、VB.NET、Swift、Objective-C、Go、Rust、C、C++、PHP、Ruby、Dart、Lua、R 等语言,并直接提升了 callers(调用方)、impact(影响面)与 codegraph_explore 答案的可信度。

维护者提示:升级后请重新索引你的项目——本次大部分修复是在索引阶段生效的。

核心亮点

1. 每个语言的错误链接都大幅减少

一次调用、import 或类型引用,现在会按照该语言的命名作用域规则去解析,而不是落到一个仅仅”同名”的无关符号上。具体表现为:C# / VB.NET 中 List<int>、Type sourceType 这样的类型写法不再链到某个测试类同名的属性;Go 里 context.Context、http.ResponseWriter、require.Contains 这类来自模块外部的包名不再指向项目内同名符号;Rust 中 Self::Error 正确解析到当前 impl 或 trait 的关联类型,V::Value 不再指向某个无关结构体。

修复量级相当可观,例如:

  • tokio 上超过 1200 处 io::Result 与 600 处 Context 引用,此前一直指向项目内的私有类型
  • Drupal core 的 $this->assertEquals()(来自 PHPUnit)此前误链到无关比较器类达 8832 次
  • kong 上超过 1000 次调用现在能到达真实函数,并减少了约 5000 条死端边
  • React Native 自身的库在启用 Flow 类型解析后,图谱新增 8000 条以上链接

2. 重载、super 与递归解析正确

  • 一次调用会命中参数”匹配得上”的那个重载,而不只是比较参数个数
  • super 调用会到达父类的方法,绝不会绕回发送方自己的 override
  • 一个方法调用自身的另一个重载、或调用另一个对象的同名方法,不再被误判为”自己调用自己”

3. 覆盖更多框架的路由识别

新增或完善了对多类 Web 框架路由文件的识别,把 URL 模式与真实 handler 连接起来:

  • 新增支持:Angular(含 Nx libraries)、Vue Router 后台应用、Rails 嵌套路由、Flask 的 add_url_rule、ASP.NET FastEndpoints、Play 子项目、Vapor 闭包路由、Expo Router API 路由
  • NestJS 与 Laravel 的路由现在按”请求实际走的路径”命名
  • Spring 或 Laravel 的测试如果用 URL 调用路由,也会被视为覆盖到了该路由
  • 效果示例:ardalis/CleanArchitecture 从”零路由”变成 24 条;playframework 的 samples 仓库从零路由变成 130 条以上

4. 更多代码被纳入图谱

  • Nuxt / Astro 中,基于文件路由的页面现在会链接到该文件定义的组件;Astro 的 endpoint 会链接到它导出的 HTTP 动词 handler(如 export const GET)
  • React Router 的路由配置对象写法(如 paths.app.discussion.getHref(id))、navigate(…) 调用、以及 <Link> 上位于 to 之前的箭头函数属性,均可被识别
  • Vue Options API 组件、带 body 的 Java / Kotlin 枚举常量、Flow 类型标注的 JavaScript、Kotlin infix 调用、React Native 原生视图与事件、Expo Modules、基于标签的 CFML、Delphi 的 .inc 文件等,现在都会被索引
  • 由框架或桥接解析器建立的链接,现在会记录是哪一方建立的(metadata.framework,如 swift-objc-bridge、react-native-bridge)

5. Windows:不再闪控制台窗口,不再随机崩溃

  • 后台服务工作期间不再弹出控制台窗口
  • 修复了索引或关闭时偶发的 access violation 崩溃(退出码 3221225477)
  • 当有 agent 会话正在使用 CodeGraph 时,codegraph upgrade 也能正常工作

6. 后台服务更稳定

  • Antigravity 等较新的 MCP 客户端可以重新连接
  • Claude Code 能看到 codegraph_status 的完整文本
  • 若某会话与共享服务的连接丢失,会自行重连
  • 通过 projectPath 查询过的项目,会在空闲 10 分钟后被释放

7. 索引一定能跑完

  • 大型 C / C++ 项目在解析引用时不再内存耗尽
  • 某个 COBOL 文件不再可能卡住整个索引流程
  • codegraph sync 会保留所有”同名多次定义”符号的调用方

发布产物

本次 release 提供各平台的独立发行包,无需预先安装 Node.js:

  • codegraph-darwin-arm64.tar.gz(macOS Apple Silicon)
  • codegraph-darwin-x64.tar.gz(macOS Intel)
  • codegraph-linux-arm64.tar.gz
  • codegraph-linux-x64.tar.gz
  • codegraph-win32-arm64.zip
  • codegraph-win32-x64.zip
  • SHA256SUMS(校验文件)

关于 CodeGraph

CodeGraph 是一款100% 本地运行的代码智能工具:解析与抽取由编译型 Rust 引擎完成,覆盖 20 多种语言,并把每个符号、调用边与依赖关系构建成一张预置知识图谱,最终以 SQLite 数据库形式存放——不联网、不需要 API key、不依赖任何外部服务。

它通过 MCP 协议接入主流 AI 编程助手(Claude Code、Cursor、Codex CLI、opencode、Hermes Agent、Gemini CLI、Antigravity IDE、Kiro、GitHub Copilot),提供”外科手术式上下文”(一次调用返回入口点、相关符号与代码片段)、全文检索(基于 FTS5)、影响面分析(追溯调用方、被调方与完整影响半径),以及基于系统原生事件(FSEvents / inotify / ReadDirectoryChangesW)的文件监听自动同步。按官方在七个基准仓库上的实测,相比让模型自行翻文件的方案,平均成本降低 44%、token 消耗减少 62%。

获取与升级

方式一:一键安装脚本(无需 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.js,用 npm

npm i -g @colbymchenry/codegraph

接入你的 agent 并建图

# 1) 在新终端中把 CodeGraph 接入你使用的 agent
codegraph install

# 2) 进入项目,一次性完成建图
cd your-project
codegraph init

升级到本版本

codegraph upgrade

codegraph upgrade 会自动识别你当初的安装方式(独立发行包 / npm / npx)并原地更新,加 --check 可查看是否有新版本,codegraph upgrade <version> 可锁定指定版本。升级完成并重新索引后,本版本的全部修复即可生效。

返回列表

更多资讯

想看更多优质内容?

浏览所有资讯