
CodeGraphContext 代码体检教程5 分钟找出死代码与高复杂度函数【免费下载链接】CodeGraphContextAn MCP server plus a CLI tool that indexes local code into a graph database to provide context to AI assistants.项目地址: https://gitcode.com/gh_mirrors/co/CodeGraphContextCodeGraphContextCGC是一款开源的代码图谱工具它由 MCP 服务器 CLI 命令行组成能把本地代码索引成图数据库为 AI 助手提供精准的代码上下文。本文带你用 5 分钟完成一次代码体检定位无人调用的死代码、揪出分支过多的高复杂度函数让代码库更干净、更好维护。一、为什么需要代码体检大型项目里藏着两类隐形炸弹死代码Dead Code从未被任何地方调用的函数白白增加维护成本还可能误导 AI 助手。高复杂度函数循环嵌套和条件分支太多的上帝函数难以测试、难以阅读。CodeGraphContext 通过 Tree-sitter 解析器提取函数、类、模块等节点并建立CALLS调用、IMPORTS导入、CONTAINS包含等关系边存入库后就能用一条命令查出谁也没调用过的函数和复杂度超标的函数。其整体架构可参考官方文档 ARCHITECTURE.md。二、准备安装并索引你的项目约 2 分钟1. 一键安装 CLI推荐使用pipx隔离安装详见 安装指南pipx install codegraphcontext cgc doctor # 运行自检验证数据库驱动与解析器2. 索引代码仓库进入项目根目录执行索引详见 快速上手cd /path/to/your/repository cgc index # 增量索引默认遵守 .gitignore 与 .cgcignore cgc stats # 查看解析出的文件数、节点数与关系数索引完成后你的代码就变成了一张可查询的代码图谱体检正式开始三、第一步用analyze dead-code找出死代码在终端中运行cgc analyze dead-code . # 限定在当前仓库范围内分析它会列出所有没有任何调用者的函数及所在文件、行号并给出总数。如果某些函数虽然没被显式调用但带有路由/任务装饰器如 FastAPI、Celery可以用--exclude排除误报cgc analyze dead-code . --exclude route,task,api小提示对可疑函数再用cgc analyze callers 函数名二次确认交叉验证真的没人调用。在接入 AI 助手的 IDE 中也可以直接自然语言提问例如who calls the add_file_to_graph function?效果如下死代码分析的命令实现位于 main.py底层查询逻辑见 analysis_handlers.py。四、第二步用analyze complexity揪出高复杂度函数cgc analyze complexity # 全局复杂度 Top 20 函数 cgc analyze complexity --threshold 15 # 只关注超过 15 的重灾区 cgc analyze complexity src/main.py # 只看某个文件内的函数输出是一张彩色表格函数名、圈复杂度、位置文件:行号。红色表示超过阈值默认 10黄色超过半阈值绿色则相对安全——一眼就能锁定需要重构的函数。复杂度数据的计算入口在 main.py支持 Python、Go、Rust、Java、C 等十余种语言。五、进阶生成体检报告 可视化图谱1. 一键生成CGC_REPORT.mdcgc report报告会汇总上帝节点连接过多的核心节点、复杂度排行与耦合度指标适合提交到代码仓库作为定期体检记录。2. 打开可视化界面cgc visualize # 或 cgc v浏览器里可以看到完整的代码图谱右侧面板显示节点分类File、Function、Module 等与关系边统计CONTAINS、CALLS、IMPORTS非常适合向团队展示这块代码为什么难改。六、常见问题 FAQ问题解答死代码结果太多传入仓库路径限定范围cgc analyze dead-code .装饰器函数被误报使用--exclude route,api等排除装饰器换后端数据库cgc config db kuzudb或cgc config db falkordb命令速查参考 CLI 命令参考想保持图谱实时更新cgc watch开启文件监听增量更新图谱写在最后5 分钟体检流程总结⏱️pipx install codegraphcontextcgc doctor安装自检⏱️cgc index索引代码cgc stats确认入库⏱️cgc analyze dead-code .找死代码⏱️cgc analyze complexity --threshold 15找高复杂度函数⏱️cgc report生成CGC_REPORT.md存档定期给代码库做体检死代码越删越少、复杂度越降越低AI 助手获得的上下文也会越来越精准。更多分析命令调用链、继承树、依赖图可查阅 CLI 完整参考 【免费下载链接】CodeGraphContextAn MCP server plus a CLI tool that indexes local code into a graph database to provide context to AI assistants.项目地址: https://gitcode.com/gh_mirrors/co/CodeGraphContext创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考