Ctxdiff 按轮调试 LLM agent 上下文,能找出打爆缓存的字符
Character_Award_5542 · reddit · 2026-07-27
作者做了一个开源工具 ctxdiff,专门给 LLM agent 做 上下文窗口调试:把每次调用记录成带内容哈希的 block,统一写进一个 SQLite 文件里。
它能做什么
- ctxdiff diff --turn 7 --turn 8:对比两轮之间 新增、被挤出、被修改 的内容,还能看字符级 diff。
- ctxdiff tokens:拆解每一轮的 token 预算花在哪,连那些每次都会重发、但实际从不调用的 tool schema 也会算进去。
- ctxdiff cache:直接定位 是哪一个字符 把 prompt cache 的 prefix 打爆了,以及因此被重新计费了多少 tokens。
兼容性与特点
- 支持 OpenAI、Anthropic、Gemini/Vertex、Bedrock,以及所有 OpenAI-compatible 后端,如 Ollama、vLLM、LM Studio。
- 可接入 LangChain / LangGraph。
- 有共享 trace 格式的 JS/TS SDK,跨语言可打开同一份 trace。
- 本地优先:工具本身不发网络请求,HTML dashboard 也是单文件、无外部依赖。
- 提供一键 demo:pip install ctxdiff && ctxdiff demo。
作者也坦诚了限制:目前是 post-run 分析,还没有 live tail;本地模型场景下,cache 成本分析的重要性会低一些,但 turn diff 和 token attribution 仍然有用。
「编程与Agent」频道最新
- 实战作者称 agent 工作流已离不开循环与图编排 — EXM7777 · 2026-07-27
- MParakhin 说 Pro 对高难编码是“不可思议的解锁” — MParakhin · 2026-07-27
- 如何让云端 agent 部署代码并按审批取用 1Password 密钥 — lucasmeijer · 2026-07-27
- 开发者把代码 diff 做成可追溯的风险台账 — tcoder7 · 2026-07-27
- 索引 5409 条旧帖后,他发现检索比生成更适合追踪 AI 影响 — zakelfassi · 2026-07-27
- Mac 可用 Touch ID 确认 sudo,方便 agent 执行命令 — zats · 2026-07-27