AI 编程工具
rgctl:面向 LLM 智能体的代码知识图谱与调用关系查询工具
sshaaf/rgctl · A code knowledge graph built for LLM agents — accurate answers, minimal tokens, maximum speed
ELI5:它是什么,解决什么问题
rgctl 是用 Rust 实现的代码知识图谱命令行工具,为 LLM 编程智能体提供确定性的结构化查询能力。索引一次后,可通过紧凑的 JSON 输出查询调用者、传递影响范围(blast-radius)、控制流与数据流切片、克隆检测、社区聚类以及 PR 调用路径变化,减少智能体反复用 grep 搜索整个代码库并读取整文件带来的 token 开销。项目使用 tree-sitter 解析器,覆盖 14 种一级语言以及 ERB、Markdown,并支持将技能包安装到 Cursor、Claude、Codex 等编码智能体。
核心能力与快速开始
★ 23 · Rust
- 能做什么
- 对代码仓库建立一次索引后,输出结构化 JSON,供智能体和脚本查询函数、类型等符号,以及调用者与被调用者等类型化关系;提供 blast-radius 影响面分析,CFG/PDG/支配关系和前向、后向程序切片(需启用 discover --with-cfg),克隆检测(exact/bloom/fragment)、中心度指标与社区聚类、语义检索、OSV 漏洞与 taint 安全分析、PR 调用路径差异与 CI 影响面检查、Konveyor Kantra 迁移规则,以及快照 diff 和 JSON/GraphML/Mermaid/Obsidian 导出;错误同样以结构化 JSON 返回。
- 适用场景
- 在 Cursor、Claude、Codex 等编码智能体中回答架构与调用链问题、评估修改某符号的上下游影响、做 PR 结构审查与影响面门禁、跨语言代码库(Java、Python、TypeScript、C/C++ 等)的符号与关系检索、控制流/数据流追踪与克隆排查、漏洞与依赖检查、迁移规则检查。
- 项目形态
- 可直接使用的工具
- 部署方式
- 本地 CLI:提供 macOS/Linux 一键安装脚本、GitHub Releases 预编译包,或从源码用 Rust 1.85+ 构建;索引产物写入仓库的 .rgctl/ 目录,支持 rgctl update 增量更新与 rgctl serve --watch。
- 主要依赖
- 源码构建需 Rust 1.85+;运行平台为 macOS、Linux、Windows(Releases),一键安装脚本覆盖 macOS/Linux;部分平台若 ort/ONNX 链接失败需加 --no-default-features。
- 使用限制
- 材料称支持“14 种一级语言”但列举了 15 个语言徽章加 Markdown,具体范围以语言文档为准;CFG/PDG 与切片功能需以 discover --with-cfg 建索引;材料未说明语义检索所用模型、资源占用及 API 成本。
- 许可证
- MIT
- 最近推送
- 2026-10-22 05:15
资料检查:2026-10-22 07:00 · 卡片整理:2026-10-22 07:00
卡片由 AI 根据仓库资料整理,未进行安装或运行验证
职业应用
程序员
程序员可用 rgctl 为代码库建立知识图谱,查询调用者、传递影响范围(blast-radius)、控制流与数据流切片、克隆检测、社区聚类以及 PR 调用路径变化,并以紧凑 JSON 输出供 LLM 编程智能体使用,减少反复 grep 和读取整文件的 token 开销;还可将技能包安装到 Cursor、Claude、Codex 等编码智能体。
查看内容依据
索引一次后,可通过紧凑的 JSON 输出查询调用者、传递影响范围(blast-radius)、控制流与数据流切片、克隆检测、社区聚类以及 PR 调用路径变化,减少智能体反复用 grep 搜索整个代码库并读取整文件带来的 token 开销。
由 AI 根据来源材料整理,未进行安装或运行验证
讨论 0
登录后参与讨论,阅读资讯无需注册。
还没有评论,来分享第一个看法。