GraphMind 代码知识图谱

把本地代码库转成可供 AI 查询、导航和长期记忆的知识图谱。

Star 数
★ 213
最近更新
1 个月前
License
MIT
主语言
Rust

30 秒速览

运行形态
桌面应用命令行工具MCP 服务器
可在哪里用
通用 · 跨平台Claude Code · Claude.aiOpenAI API(部分支持)
费用
有免费版,另有付费云服务
上手难度
低 · 几分钟可跑通
开始前需要
Shell / 命令行本地文件系统MCP Server
典型场景
维护大型仓库的开发者,在修改函数前用 graphmind fn-impact 或 graphmind diff-impact 检查潜在影响范围。
不适合
  • 需要 Windows 桌面应用而不接受 CLI 的用户
  • 只想使用托管式网页服务的团队
  • 代码语言不在已列出的 30 种语言中的项目

这个 Agent 能做什么,适合哪些场景?

GraphMind 是一套以 Rust 编写的本地优先代码智能工具,通过 tree-sitter 将仓库解析为函数和文件级知识图谱,并保存在 SQLite 与 JSONL 文件中。它提供 CLI、macOS 桌面应用和基于 stdio 的 MCP 服务器,可接入 Claude Code、Claude Desktop、Cursor、Windsurf、Cline、Zed、Continue、VS Code 与其他 MCP 客户端。检索层结合 FTS5、语义向量和一跳图扩展,并用 RRF 对符号结果排序;源码内容默认不返回,以控制上下文用量。除代码结构外,它还保存决策、模式、约定和问题记录,并能连接多个已注册项目。默认运行不开放端口、不启用遥测,也不需要云服务;嵌入功能可选择本地 ONNX、OpenAI 或 Voyage AI。基础能力采用 MIT 许可证,团队图谱和共享记忆同步则标注为 Pro/Team 层级。

用户先通过 graphmind init 注册并构建项目。Rust 核心使用 tree-sitter 解析受支持的源文件,提取符号、调用点和依赖边,把结构图及 FTS5 索引写入 ~/.graphmind/graphs/<slug>/graph.db,并用增量缓存维护后续构建。配置嵌入提供方后,graphmind build 还会生成向量并写入 embeddings.db;graphmind search 将全文匹配、余弦相似度和调用图扩展结果通过 RRF 合并。CLI 与 MCP 工具可查询符号和完整函数、读取文件、生成文件依赖图、追踪传递调用者、评估 Git 变更影响、检测循环和死代码,并导出 Mermaid、DOT、JSON 或 Obsidian 笔记。记忆功能把决策、模式、约定、缺陷和上下文写入项目级或全局 JSONL,通过 Claude Code 钩子或 MCP 指令自动召回。跨项目命令还能搜索所有注册仓库、推断共享符号关系并查看项目间依赖。

  1. 维护大型仓库的开发者,在修改函数前用 graphmind fn-impact 或 graphmind diff-impact 检查潜在影响范围。
  2. 使用 Claude Code 或 Cursor 的团队,希望让助手直接查询符号、调用关系和架构,而不是反复读取完整仓库。
  3. 同时维护 API、前端和共享库的工程团队,需要跨已注册项目搜索符号并追踪项目间依赖。
  4. 接手陌生代码库的开发者,希望快速查看关键文件、层次化符号大纲、循环依赖和无入边符号。
  5. 希望跨 AI 会话保留架构决策、编码约定、已知缺陷和业务上下文的个人或团队。
  6. 需要把局部或跨项目代码图导出为 Mermaid、Graphviz DOT、JSON 或 Obsidian 知识库的架构人员。

如何安装或部署这个 Agent?

macOS 用户可从 GitHub Releases 下载对应的 GraphMind-macos-arm64.dmg 或 GraphMind-macos-x64.dmg;桌面应用会安装 CLI,并通过引导配置 MCP、钩子、技能和嵌入。

macOS 或 Linux 也可使用安装脚本:

curl -fsSL https://raw.githubusercontent.com/aouicher/graphmind/main/scripts/install.sh | bash

或通过 Homebrew 安装 CLI:

brew install aouicher/graphmind/graphmind

macOS 桌面应用也可通过 Homebrew 安装:

brew install --cask aouicher/graphmind/graphmind

Linux x64 可直接下载 CLI:

curl -fsSL https://github.com/aouicher/graphmind/releases/latest/download/graphmind-cli-linux-x64 -o ~/.local/bin/graphmind
chmod +x ~/.local/bin/graphmind

从源码构建需要 Rust/Cargo:

git clone https://github.com/aouicher/graphmind
cd graphmind
cargo build --release -p graphmind-cli
cp target/release/graphmind ~/.local/bin/

默认关闭嵌入,因此首次使用不需要 API 密钥。若选择 OpenAI 或 Voyage AI 嵌入,需要在 ~/.graphmind/config.json 中配置相应密钥。

如何使用这个 Agent?

先执行一次全局设置,再在每个代码仓库中初始化:

graphmind setup
cd ~/projects/myapp
graphmind init

setup 配置 PATH、Claude Code 钩子与技能,以及 Claude Desktop、Claude Code、OpenCode 和 Cursor 的 MCP 设置;init 注册当前目录、安装 Git 钩子、构建图谱,并写入支持的项目级 MCP 配置。两条命令均可安全重复执行。

完成构建后,可直接从终端查询:

graphmind search "authentication flow"
graphmind fn validate_token --include-content
graphmind deps src/services/auth.ts
graphmind diff-impact
graphmind dead-code --kind function
graphmind cycles
graphmind export -f mermaid

如需持久化项目知识,可使用:

graphmind memory add "Authentication tokens are validated by AuthService"
graphmind memory search "authentication"
graphmind memory list

本地嵌入模式无需 API 密钥;若要启用它,可在配置文件中选择本地模型:

{
  "embedding": {
    "mode": "local",
    "model": "nomic-embed-text-v1.5"
  }
}

然后生成嵌入:

graphmind embed --run

MCP 客户端通过 stdio 启动服务:

graphmind mcp

这个 Agent 有哪些优点和局限?

优点
  • 结构图、FTS5、语义向量和调用图扩展集中在同一检索流程中,结果还标明来自 FTS、语义或图扩展。
  • 默认完全本地运行,不开放端口、不启用遥测;图谱、嵌入和记忆均保存在可检查的 SQLite 或 JSONL 文件中。
  • 除符号搜索外,还覆盖调用链、变更影响、循环依赖、死代码、事件监听器和跨项目关系等具体工程任务。
  • 既能独立用作 CLI,也能通过 stdio MCP 接入多种编辑器和 AI 助手,并提供 Claude Code 钩子进行自动上下文注入。
  • 支持 30 种语言,并提供增量构建、Git 提交后重建和推送前影响检查。
局限
  • 桌面应用的安装资产只列出 macOS;Linux 和 Windows 用户需要使用 CLI。
  • 语义搜索在新安装中默认关闭;启用后需要本地 ONNX 模型,或配置 OpenAI/Voyage AI 密钥并承担相应网络与服务依赖。
  • 自动改写 grep、find 和 rg 的 Claude Code 钩子会介入既有搜索工作流,团队需要评估其行为和五分钟缓存机制。
  • 团队图谱同步和共享记忆工具属于 Pro/Team 层级,免费层无法获得完整团队同步能力。
  • README 给出了令牌节省基准,但没有提供独立验证、准确率评测或与其他代码图谱工具的质量对比。

这个 Agent 与同类方案有什么区别?

与直接运行 grep -r 并把原始匹配交给模型相比,GraphMind 先建立符号与依赖图,再返回经过 FTS、语义检索和图扩展排序的紧凑结果。项目给出的基准是在约 10 万行代码上,GraphMind 输出少于 300 个 token,而原始 grep 输出超过 150 万个 token;这是仓库自身报告的测试结果。

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 形态 / 费用 Star 最近更新 主语言 完整支持的平台
GraphMind 代码知识图谱 当前 64 · 存在缺口 桌面应用免费版 + 付费版 ★ 213 1 个月前 Rust Claude Code · Claude.ai
Gortex 代码智能引擎 78 · 表现良好 命令行工具免费 ★ 1.8k 11 天前 Go Codex · Claude Code · OpenAI API · Claude API
Ori Mnemos 80 · 表现良好 命令行工具免费 ★ 330 4 天前 TypeScript Claude Code · OpenAI API · Claude API
Graft 代码上下文层 73 · 存在缺口 命令行工具免费 + 模型费 ★ 9.5k 5 天前 TypeScript Codex · Claude Code · OpenAI API · Claude API

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
存在缺口
64/ 100 五分制 3.2 / 5
信任安全 17/29
可靠稳定 6/14
适用触发 14/18
规范维护 14/18
有效结果 10/13
证据核验 3/8
查看各维度的扣分理由
信任安全17 / 29 · 2.9/5

证据显示默认使用 stdio、限制文件路径、本地存储、默认禁用嵌入服务,并说明可选 API 与团队同步的数据流;记忆写入采用原子替换,也提供卸载和删除命令。扣分原因是 setup/init 会改写多个全局、编辑器和项目配置并安装钩子,自动保存记忆的描述与“gm_memory_add 需要确认”存在张力,API 密钥以本地配置文件保存但未说明权限或加密,依赖安全没有审计、锁定策略或漏洞扫描证据,而且 CI 顶层授予 contents: write。来源标签、路径和仓库归属较清楚,但发布者身份仍未经企业注册表验证。

可靠稳定6 / 14 · 2.1/5

Cargo 工作区、CI 中的 clippy、单元测试、多组 CLI/E2E 测试以及多平台构建流程,为普通使用提供了一定可靠性证据;安装方式和本地/远程嵌入替代方案也较完整。扣分在于 README 同时声称 25 个和 27 个 MCP 工具,工具表实际列出 27 个;桌面演示称支持 Mac 与 Windows,但安装段又称 Windows 仅 CLI;所给材料几乎没有具体运行时错误信息、故障恢复提示或依赖不可用时的行为说明。

适用触发14 / 18 · 3.9/5

README 明确覆盖代码检索、影响分析、持久记忆、跨项目关系以及多种 MCP 客户端,语言、平台、输出格式、嵌入模式和手动配置选项也很丰富,因此受众与场景说明充分。扣分原因是自动改写搜索、自动召回和自动保存的触发范围较宽,虽有穷举搜索绕过和缓存规则但没有完整误触发控制;免费与 Pro/Team 的边界、Windows 桌面支持及某些自动同步条件不够一致,环境兼容性主要由文档声明而非所给实现证据支撑。

规范维护14 / 18 · 3.9/5

信息架构、命令参考、手动和自动安装步骤、数据位置、架构图及 MIT 许可证都很完整,Cargo 元数据也与许可证一致。扣分原因是没有独立 FAQ 或系统化故障排查,已知限制主要局限于平台和语言状态,未讨论解析误差、死代码误报、动态调用或索引陈旧等产品限制;25/27 工具数量和桌面平台说法影响命名与文档稳定性;有版本号、标签发布和自动生成发布说明,但没有提供 changelog;维护责任仅由版权人、仓库和安全邮箱部分体现,缺少一般支持与治理说明。

有效结果10 / 13 · 3.8/5

紧凑文本、JSON 模式、来源标记、分页、截断提示、内容按需返回以及多种图导出格式,使输出直接适合 AI 和人工使用,结构图、搜索融合和持久记忆相对原始文本检索具有明确增量价值。扣分原因是 5700 倍和约千万 token 节省等效益只由 README 图表与单一场景描述支持,没有提供基准方法、原始数据或可核对测试;本地索引、ONNX 模型、可选付费 API、团队层级和广泛配置改写的成本与权衡没有充分量化。

证据核验3 / 8 · 1.9/5

许可证、版本、工作区结构、CI 流程和部分跨语言测试夹具能交叉支持项目的基本身份、构建和测试主张。扣分原因是大多数安全、隐私、工具行为、语言支持和性能主张只出现在 README,所给材料缺少对应实现文件、测试断言和基准原始数据;营销性数字与事实性陈述没有清晰区分,且文档内部存在工具数量和平台支持矛盾,因此只能给予有限可追溯性与交叉印证。

风险与缓解建议
  • setup 和 init 会改写 shell、Claude、Cursor、VS Code 及项目配置并安装钩子;使用前应审查具体差异并备份相关文件。
  • “自动保存且无需询问”与 MCP 写入需要确认的说法不完全一致;不要假定所有持久记忆写入都会获得逐次同意。
  • 配置远程嵌入或 Team 同步后,代码派生内容或记忆可能离开本机;应核查提供商、基础 URL、共享标志及组织数据政策。
  • API 密钥以本地 config.json 形式保存;材料未证明文件权限、加密、密钥轮换或日志脱敏措施。
  • 不要把 5700 倍 token 节省、30 多种语言稳定支持或死代码/影响分析结果视为已独立验证;本评估未执行软件。
  • curl 管道安装脚本引用 main 分支而非给定修订;高保障部署应固定版本并在执行前审查脚本和发布物校验信息。
证据充分度:低 评估于 2026年10月5日 审查版本 c07bb7809b28
查看完整评分方法 →

常见问题

离线环境可以使用吗?
可以使用结构图、FTS 搜索和持久记忆。默认不启用嵌入,也不进行网络调用;如需语义检索,可选择本地 ONNX 模型。安装文件本身仍需预先取得。
它会把源码上传到云端吗?
默认不会。数据保存在 ~/.graphmind/,MCP 使用 stdio。只有显式配置 OpenAI/Voyage AI 嵌入或启用 Pro/Team 同步时才涉及网络功能。
必须使用 Claude Code 吗?
不必。GraphMind 有独立 CLI,并声明支持 Claude Desktop、Cursor、Windsurf、Cline、Zed、Continue、VS Code 以及其他 MCP 客户端;自动搜索钩子和 /gm 技能则针对 Claude Code。
写入记忆是否受控?
CLI 提供添加、搜索、列出和删除命令。通过 MCP 写入时,gm_memory_add 要求明确确认;记忆会持续保存,直到被显式删除。
免费版本是否足够个人使用?
MIT 许可的本地 CLI、图谱、搜索和记忆功能可用于个人工作流。团队图谱同步、共享记忆和相关 MCP 工具被标记为 Pro/Team 功能。
在 GitHub 查看 ↗ 安装 ↓

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。

相关 Agents