CodeGraph基准测试方法论7大仓库A/B实验完整拆解【免费下载链接】codegraphPre-indexed code knowledge graph, auto syncs on code changes, for Claude Code, Codex, Gemini, Cursor, OpenCode, AntiGravity, Kiro, CoPilot, and Hermes Agent — fewer tokens, fewer tool calls, 100% local项目地址: https://gitcode.com/GitHub_Trending/co0degr/codegraph想验证代码知识图谱真的能省 token 吗CodeGraph 基准测试给出的答案靠的是一套可复现的 A/B 实验方法论同一个模型、同一个提示词唯一变量是有没有接入 CodeGraph在 VS Code、Excalidraw、Tokio 等 7 大仓库上对跑 74 次 Agent 实验量化出成本、token、耗时与工具调用四组差异。本文完整拆解这套方法论选仓库的逻辑、实验如何跑、数据怎么读以及三个差点毁掉结论的测量陷阱。一、为什么用 A/B 实验只动一个变量的对照设计评价AI 编码助手 代码索引这类工具最忌讳拿我觉得快了当结论。CodeGraph 的基准测试核心思路非常朴素单变量对照A/B testing。对照组配置with 组挂载 codegraph 的 MCP Server禁用其他一切 MCPwithout 组空 MCP 配置Agent 只能用内置 Read/Grep/Glob/Bash两组使用同一模型、同一提示词、同一个问题每次跑之前都对仓库做全新重建索引rm -rf .codegraph codegraph init -i确保with 组反映的是当前代码的真实水平。两个关键设计决定模型下限原则所有实验臂固定--model sonnet --effort high。Sonnet 是刻意选择的地板——一个在 Sonnet 上成立的能力可以泛化到更强的模型反之则不成立。详见 agent-eval-feedback-metrics.md。无头模式 流式日志Agent 以 headless 方式运行全部行为落在 stream-json 日志里再由解析脚本离线统计——指标不靠人工看运行结果而是从日志中再挖掘同一批日志可以反复产出新分析比如 call-sequence-analysis.md 就没有重跑任何实验。二、7 大基准仓库如何选按体量分层按语言覆盖README 发布的基准选了 7 个真实流行仓库覆盖前端、后端、Rust、Go、Swift、Java 等不同语言生态每个仓库配一道规范化流程问题canonical flow question例如 Tokio 对应tokio 如何在运行时上调度并运行异步任务。当前构建2026-05-24 复测每臂 4 次运行取中位数的 A/B 结果仓库耗时 with → without工具调用 with → withouttoken 节省成本节省vscode1m10s → 2m26s8 → 5578%26%excalidraw48s → 2m58s3 → 7990%52%django1m19s → 1m38s9 → 1936%12%tokio53s → 3m02s4 → 5386%82%okhttp42s → 1m01s6 → 1113%2%gin44s → 1m00s6 → 1034%21%alamofire1m17s → 2m27s12 → 6964%47%平均节省35% 成本 · 57% token · 46% 耗时 · 71% 工具调用。数据里藏着一个值得新手理解的规律节省幅度取决于问题的发现成本而不是仓库大小。tokio、excalidraw 这类问题上without 组要扇出 53–79 次工具调用去大海捞针CodeGraph 的优势充分释放成本省 52%–82%而 okhttp、gin 上 without 组 10 次调用左右就能到达答案两边差距自然小。这也是为什么文档反复强调单看一个仓库的数字没有意义要看整组分布。三、实验怎么跑一条命令启动整个 A/B 矩阵整套 harness 是纯脚本核心两条命令启动实验bash scripts/agent-eval/bench-readme.sh—— 7 个仓库 × with/without 两组 × 每臂 4 次运行RUNS4可调日志落到/tmp/ab-readme入口脚本见 bench-readme.sh。解析汇总node scripts/agent-eval/parse-bench-readme.mjs—— 从日志中提取每轮 assistant 的usage求和、total_cost_usd、duration_ms输出中位数与节省百分比见 parse-bench-readme.mjs。单仓库快速验证则用scripts/agent-eval/run-all.sh repo question headless换臂重跑只需CG_ARMSwith|without不用重跑另一臂。四、读懂数据四个指标各回答什么问题指标回答的问题常见误读耗时中位数用户等多久拿到答案单次运行波动大必须取多次中位数工具调用数Agent 浪费了多少探索轮次调用少 ≠ 答案对token 总量处理了多少上下文缓存读取很便宜token 降幅 成本降幅是正常的成本美元真金白银省了多少短问题下 with 组要付 MCP 固定开销成本可能打平特别注意 token 与成本的关系without 组的 token 大部分是便宜的缓存读取cache-reads所以 57% 的 token 节省只折算成 35% 的成本节省——机制是轮次更少、累积上下文更小而不是缓存。五、三个踩过的坑测量可靠性比结论更重要这份方法论最有价值的部分其实是它公开记录的差点出错清单坑 1token 统计只读了最后一轮。某版本 Claude Code 的result.usage只反映最后一个 turn用它统计会严重低估多轮 Agent 的 token——曾导致 excalidraw 的 token 节省被误报为 34%真实约 90%还无中生有出两个仓库的 token 回归。教训必须对每轮 assistantusage求和该修复于 2026-08-05 合入 parse-run.mjs。且错误是单向的——总是低估 without 组即总是低估 CodeGraph 的收益。坑 2CLI 污染对照组。without 组理论上没有 codegraph但 15 次运行里 14 次的 Agent 绕过 PATH 屏蔽、用绝对路径偷偷调了 codegraph CLI——更早的历史数据基本应视为已污染。现在 harness 用PATH 移除 PreToolUse 钩子拦截双保险并在结果表中打印一行污染检测CLI calls that RETURNED output必须为 0见 no-cli-shim.sh 与反馈指标文档的 Contamination 一节。坑 3单次运行方差。37 格矩阵的文档明确要求±1–2 次读取、±10 秒视为噪声看跨格子的模式而非单点正式结论一律RUNS2并取中位数7 仓库 campaign 用 4 次/臂。六、进阶三个反馈指标把 A/B 结果落到归因光有 with/without 的总分不够CodeGraph 还定义了三个 harness-only 指标全部从已有 transcript 解析不产生额外数据、不离开本机入口文档见 agent-eval-feedback-metrics.md残差上下文占用运行结束时检索结果还占着上下文窗口多少 token——VS Code 仓库上约 67k而文件读取组仅 18k。这是吞吐快的代价轴文档坦诚说明它成本更高而非更低。Explore 充分性看 Agent 拿到 explore 结果后的下一步——再次 explore / 去 Read 某个文件 / 直接作答把不够细分为 allocation给了对的文件但字节不对与 recall文件根本没出现两类各指向不同修复方向见 explore-sufficiency.md。分配效率响应里返回的字节多大比例被最终答案实际引用。三者的关系被总结为一句话表格回答动没动逐运行明细回答为什么。七、动手复现从 clone 到看到数据# 1. 克隆项目 git clone https://gitcode.com/GitHub_Trending/co0degr/codegraph cd codegraph # 2. 构建harness 依赖 dist/ 产物 npm run build # 3. 跑 7 仓库 A/B campaign7 repos × 2 臂 × 4 次 bash scripts/agent-eval/bench-readme.sh # 4. 汇总中位数与节省百分比 node scripts/agent-eval/parse-bench-readme.mjs完整矩阵37 个语言×体量单元格74 次 Agent 运行总计 $29.18的原始数据与逐格解读直接读 codegraph-ab-matrix.md想深挖调用序列与 payload 分析读 call-sequence-analysis.md。写在最后这套方法论对任何想给 AI Agent 工具做评测的团队都有参考价值单变量对照 多次运行取中位数 污染检测行 从日志离线再挖掘。而它最诚实的一点是——CodeGraph 的文档里测量陷阱和胜出数据享有同等篇幅35% 的成本节省背后是三次错误结果被自查捕获的记录。可复现、可质疑才是基准测试该有的样子。【免费下载链接】codegraphPre-indexed code knowledge graph, auto syncs on code changes, for Claude Code, Codex, Gemini, Cursor, OpenCode, AntiGravity, Kiro, CoPilot, and Hermes Agent — fewer tokens, fewer tool calls, 100% local项目地址: https://gitcode.com/GitHub_Trending/co0degr/codegraph创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考