news 2026/7/12 11:00:02

codegraph, 给agent用的本地代码知识图谱

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
codegraph, 给agent用的本地代码知识图谱

1. 工具介绍

Codegraph 是一个本地代码知识图谱工具,专门给 AI agent 用的。
核心功能:把代码库解析成图结构(符号是节点,调用/依赖关系是边),存在本地 SQLite 里,然后通过 CLI 或 MCP 协议暴露给 agent 查询。
支持语言:Python、Java、TypeScript、Go 等主流语言都能解析。

对于 claude code 这类编码 agent 的实际价值

  • 减少幻觉 — agent 不再靠猜代码结构,而是查真实的图数据
  • 节省上下文 — 不用把整个代码库塞进 prompt,按需查询相关片段
  • 避免改坏东西 — 改之前先查影响范围,知道要一起改哪些测试和调用方
  • 理解遗留代码 — 面对不熟悉的代码库,能快速理清调用链和依赖关系

安装

npm install -g @colbymchenry/codegraph --registry https://registry.npmmirror.com, 使用国内源, 更迅速.
装好后的位置示例:~/.nvm/versions/node/v24.18.0/bin/codegraph.

2. 用法及示例

主要命令:

init / index — 建索引 sync — 增量更新 query — 搜索符号 callers / callees — 查调用关系 explore — 一次性看源码 + 调用链 + 影响范围 impact — 分析改某个符号会影响哪些代码 affected — 找受影响的测试文件

3. 真实项目示例

某项目, 建完索引后, 会得到.codegraph/codegraph.db文件. 利用统计功能可以看:

CodeGraph Status Project: /Users/yichudu/code_work/xx Index Statistics: Files:771Nodes:20,406Edges:35,840DB Size:55.41MB Backend: node:sqlite — built-in(full WAL)Journal: wal Nodes by Kind:import8,238method5,411field3,425file761namespace723class707enum_member610constant422enum58interface21function20variable10Files by Language:java724xml36properties5yaml5python1✓ Index is up todate

4. demo示例

查看索引

它是标准的 sqlite3 索引, 可以直接 select 验证.

查看调用关系

继续执行SELECT * FROM edges LIMIT 10;.
得到:

(base)yichudu@yichumacbookair cg-demo % /usr/bin/sqlite3 ./.codegraph/codegraph.db"SELECT * FROM edges LIMIT 10;"1|file:src/Logger.java|class:eb9696a85f1d51e6cfc23212d3bd6543|contains||||2|class:eb9696a85f1d51e6cfc23212d3bd6543|method:4768bf7673844a5fec20e4ae4f6989c3|contains||||3|file:src/User.java|class:89e1ddb5e0719a82e1de008802f4c305|contains||||4|class:89e1ddb5e0719a82e1de008802f4c305|field:3d1b9111729baeb1f37d982b4af9fa09|contains||||

Callees 查看主动调用

demo源码

// 另有 Logger.java 和 User.java, 篇幅所限做省略.publicclassUserService{privatefinalLoggerlogger=newLogger();publicUserfindUser(Stringid){logger.log("Finding user: "+id);returnnewUser(id,"Alice");}publicbooleandeleteUser(Stringid){Useruser=findUser(id);if(user!=null){logger.log("Deleting user: "+user.getName());returntrue;}returnfalse;}}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/12 11:00:01

DS4Windows控制器驱动冲突的深度解析与系统级解决方案

DS4Windows控制器驱动冲突的深度解析与系统级解决方案 【免费下载链接】DS4Windows Like those other ds4tools, but sexier 项目地址: https://gitcode.com/gh_mirrors/ds/DS4Windows 在Windows游戏生态中,DS4Windows作为连接PlayStation控制器与PC游戏的关…

作者头像 李华
网站建设 2026/7/12 10:59:25

小红书内容采集终极指南:XHS-Downloader 从零到精通

小红书内容采集终极指南:XHS-Downloader 从零到精通 【免费下载链接】XHS-Downloader 小红书(XiaoHongShu、RedNote)链接提取/作品采集工具:提取账号发布、收藏、点赞、专辑作品链接;提取搜索结果作品、用户链接&#…

作者头像 李华
网站建设 2026/7/12 10:59:17

AI视频制作全流程:从提示词编写到图生视频技术实践

这次我们来看一个完整的 AI 视频制作教程系列——即梦AISeedance2.5,这个系列号称是目前 B 站最详细的 AI 视频制作全流程教学。如果你对 AI 绘画、图生视频、提示词编写和视听语言整合感兴趣,这个教程应该能提供不少实用价值。即梦AISeedance2.5 主要面…

作者头像 李华
网站建设 2026/7/12 10:58:36

ComfyUI Florence2完整指南:3步安装与多任务视觉AI应用

ComfyUI Florence2完整指南:3步安装与多任务视觉AI应用 【免费下载链接】ComfyUI-Florence2 Inference Microsoft Florence2 VLM 项目地址: https://gitcode.com/gh_mirrors/co/ComfyUI-Florence2 ComfyUI Florence2是一个基于微软Florence-2视觉基础模型的开…

作者头像 李华
网站建设 2026/7/12 10:58:07

C++学生管理系统实战:map容器与string类在项目开发中的核心应用

1. 项目概述与核心价值 最近在带几个刚入门C的学弟学妹做项目,发现很多新手在掌握了基础语法后,面对一个具体的、需要综合运用多个知识点的项目时,往往无从下手。他们能理解 vector 、 string 的用法,也知道 map 是键值对&a…

作者头像 李华