【GitHub每日速递 20260603】代码探索狂飙77%!CodeGraph给Claude/Cursor装“语义大脑”,94%减少工具调用还100%本地

0 阅读7分钟

代码探索狂飙77%!CodeGraph给Claude/Cursor装“语义大脑”,94%减少工具调用还100%本地

codegraph 是一个基于AI的代码可视化分析工具。简单讲,它能自动把复杂的代码库变成清晰的图表,帮你快速看懂项目结构和函数调用关系。适用人群:开发者、技术负责人、需要快速理解大型代码库的程序员。

项目地址:GitHub - colbymchenry/codegraph: Pre-indexed code knowledge graph for Claude Code, Codex, Gemini, Cursor, OpenCode, AntiGravity, Kiro, and Hermes Agent — fewer tokens, fewer tool calls, 100% local · GitHub

主要语言:TypeScript

stars: 3.2k

1

仓库基本信息

  • 名称:CodeGraph
  • 功能定位:为Claude Code、Cursor、Codex、OpenCode等工具提供语义代码智能,以提升代码探索和开发效率。
  • 技术栈:基于Node.js,使用tree-sitter进行代码解析,数据存储在本地SQLite数据库。
  • 兼容性:支持Windows、macOS、Linux系统,兼容Claude Code、Cursor、Codex CLI、opencode等工具。
  • 许可证:MIT许可证

核心优势

  • 高效性能:通过预索引知识图,大幅减少工具调用次数,加快代码探索速度。根据基准测试,平均可减少92%的工具调用,提速71%。
  • 多语言支持:支持19种以上的编程语言,包括TypeScript、JavaScript、Python、Go、Rust等。
  • 框架感知:能够识别13种Web框架的路由文件,并将URL模式与处理程序关联起来。
  • 本地运行:所有数据都在本地处理,无需API密钥和外部服务,保障数据安全。
  • 自动同步:利用操作系统的文件事件自动同步代码更改,保持知识图的实时更新。

关键特性

  • 智能上下文构建:通过一次工具调用即可返回入口点、相关符号和代码片段,避免使用昂贵的探索代理。
  • 全文搜索:借助FTS5实现快速的代码名称搜索。
  • 影响分析:在进行代码更改之前,追踪调用者、被调用者以及符号的影响范围。
  • 实时更新:文件监视器使用操作系统的原生事件进行自动同步,无需手动配置。

快速上手

  1. 运行安装程序:使用npx @colbymchenry/codegraph命令运行交互式安装程序,根据提示配置相关代理。
  2. 重启代理:重启Claude Code、Cursor、Codex CLI或opencode等代理,使MCP服务器加载配置。
  3. 初始化项目:进入项目目录,运行codegraph init -i命令,构建项目的知识图索引。

工作原理

  1. 提取:使用tree-sitter将源代码解析为抽象语法树(AST),并提取节点和边。
  2. 存储:将提取的信息存储在本地SQLite数据库中,并支持FTS5全文搜索。
  3. 解析:解析引用关系,如函数调用、导入、类继承等。
  4. 自动同步:MCP服务器使用操作系统的文件事件监视项目,对代码更改进行增量同步。

CLI命令参考

  • codegraph:运行交互式安装程序
  • codegraph install:显式运行安装程序
  • codegraph init [path]:初始化项目(可使用-index选项同时进行索引)
  • codegraph uninit [path]:从项目中移除CodeGraph(可使用-force选项跳过确认提示)
  • codegraph index [path]:进行全量索引(可使用-force选项重新索引,-quiet选项减少输出)
  • codegraph sync [path]:进行增量更新
  • codegraph status [path]:显示索引状态和统计信息
  • codegraph query <search>:搜索符号(可使用-kind-limit-json选项)
  • codegraph files [path]:显示文件结构(可使用-format-filter-max-depth-json选项)
  • codegraph context <task>:为AI任务构建相关代码上下文(可使用-format-max-nodes选项)
  • codegraph affected [files...]:查找受更改影响的测试文件
  • codegraph serve --mcp:启动MCP服务器

MCP工具

当作为MCP服务器运行时,CodeGraph向Claude Code提供以下工具:

  • codegraph_search:在代码库中按名称查找符号
  • codegraph_context:为任务构建相关代码上下文
  • codegraph_callers:查找调用某个函数的代码
  • codegraph_callees:查找某个函数调用的代码
  • codegraph_impact:分析更改某个符号对代码的影响
  • codegraph_node:获取特定符号的详细信息(可选包含源代码)
  • codegraph_files:获取索引文件结构
  • codegraph_status:检查索引健康状况和统计信息

库使用示例

import CodeGraph from '@colbymchenry/codegraph';

const cg = await CodeGraph.init('/path/to/project');
// Or: const cg = await CodeGraph.open('/path/to/project');

await cg.indexAll({
  onProgress: (p) => console.log(`${p.phase}: ${p.current}/${p.total}`)
});

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

cg.watch();   // auto-sync on file changes
cg.unwatch(); // stop watching
cg.close();

配置文件

.codegraph/config.json文件用于控制索引配置:

{
  "version": 1,
  "languages": ["typescript", "javascript"],
  "exclude": ["node_modules/**", "dist/**", "build/**", "*.min.js"],
  "frameworks": [],
  "maxFileSize": 1048576,
  "extractDocstrings": true,
  "trackCallSites": true
}

应用场景

  • 代码探索:快速定位代码中的符号和相关信息,提高代码理解效率。
  • 代码更改:在进行代码修改之前,分析更改对代码库的影响,减少潜在的错误。
  • 测试自动化:通过追踪文件依赖关系,找出受更改影响的测试文件,提高测试效率。

太香了!微软官方免费AI Agent零基础入门课,18节实战教程+多语言支持,看完就能上手开发

项目地址:GitHub - microsoft/ai-agents-for-beginners: 12 Lessons to Get Started Building AI Agents · GitHub

主要语言:Jupyter Notebook

stars: 62.4k

2

仓库核心功能

该仓库是一个面向初学者的AI Agents课程,旨在教授构建AI Agents所需的基础知识。课程涵盖了AI Agents的各个方面,包括介绍、框架探索、设计模式、工具使用、生产应用等多个主题。

代码架构特点

  • 每个课程都包含书面教程(位于README文件中)、简短的教学视频以及使用Microsoft Agent Framework和Azure AI Foundry的Python代码示例。
  • 代码示例存放在code_samples文件夹中,方便学习者参考和实践。

优势

  • 多语言支持:通过GitHub Action实现自动化翻译,支持50多种语言,方便不同地区的学习者使用。如果不需要翻译文件,可使用稀疏检出功能,加快本地克隆速度。
  • 丰富的学习资源:每个课程都配有书面教程、视频和额外的学习链接,帮助学习者深入理解相关知识。
  • 社区支持:提供Discord频道,方便学习者交流问题和经验。同时,鼓励用户提出建议、报告错误,并通过提交问题或拉取请求参与项目贡献。

应用场景

  • 初学者学习:适合对AI Agents感兴趣的初学者,帮助他们快速入门并掌握构建AI Agents的基础知识和技能。
  • 开发者参考:对于有一定编程基础的开发者,可作为参考资料,学习AI Agents的设计模式和实现方法。

学习准备

  • 学习者需要一个Azure账户,以便使用Microsoft Foundry和Azure AI Foundry Agent Service V2。
  • 课程中的代码示例使用Microsoft Agent Framework,部分示例还支持如MiniMax等OpenAI兼容的提供商。具体配置细节可参考Course Setup。

课程内容

课程包含多个主题,每个主题都有对应的书面教程、视频和额外学习资源,具体如下:

  • Intro to AI Agents and Agent Use Cases:介绍AI Agents及其应用场景。
  • Exploring AI Agentic Frameworks:探索AI Agent框架。
  • Understanding AI Agentic Design Patterns:理解AI Agent设计模式。
  • Tool Use Design Pattern:工具使用设计模式。
  • Agentic RAG:Agentic RAG相关内容。
  • Building Trustworthy AI Agents:构建可靠的AI Agents。
  • Planning Design Pattern:规划设计模式。
  • Multi-Agent Design Pattern:多Agent设计模式。
  • Metacognition Design Pattern:元认知设计模式。
  • AI Agents in Production:AI Agents在生产环境中的应用。
  • Using Agentic Protocols (MCP, A2A and NLWeb) :使用Agent协议。
  • Context Engineering for AI Agents:AI Agents的上下文工程。
  • Managing Agentic Memory:管理Agent记忆。
  • Exploring Microsoft Agent Framework:探索Microsoft Agent Framework。
  • Building Computer Use Agents (CUA) :构建计算机使用代理。
  • Securing AI Agents:保障AI Agents的安全。

此外,还有一些课程正在筹备中,如“Deploying Scalable Agents”和“Creating Local AI Agents”。

原文:mp.weixin.qq.com/s/faJuAbWf9…

欢迎关注g*h:AI Tech研习社

关注g*h,后台回复【OpenClaw完全使用手册】,领取OpenClaw完全使用手册.pdf学习资料,更多学习资源敬请期待。