AI Agent 出问题时,不要只看最终回答:一次请求级调试的思路

简介: AI Agent出错时,仅看最终回答无法定位根源。本文提出“请求级调试”思路:聚焦system prompt、messages、tools schema、tool call/result及token消耗等关键层,揭示Agent每轮真实输入输出。推荐开源工具ccglass,专为观测AI编程Agent(如Claude Code、Codex)的完整请求链而生,助你从“感觉不对”走向“证据驱动”调试。(239字)

AI Agent 出问题时,不要只看最终回答:一次请求级调试的思路

这两年 AI 编程工具变化很快。

从 Copilot 式的代码补全,到 Claude Code、Codex、OpenCode、Cursor、Cline 这类 Agent 工具,AI 已经不只是“帮你补几行代码”了。它可以读项目、改文件、跑命令、调用工具、分析报错,然后继续下一轮。

但 Agent 越像一个“会干活的人”,问题也越明显:

它出错的时候,你很难判断它到底错在哪里。

很多人遇到 AI 编程工具跑偏时,第一反应是改 prompt。

比如:

你要更认真一点。
不要偷懒。
必须先读代码再修改。
不要乱改无关文件。

这些提示有时有用,但更多时候只是把问题往后推。

因为真正的问题可能根本不在你写给它的那句话里,而在它实际发给模型的完整请求里。

为什么只看最终回答不够?

一个 AI Agent 完成任务,通常不是一次请求结束。

它的流程更像这样:

用户提出任务
-> 模型收到 system prompt、上下文、工具列表
-> 模型决定调用某个工具
-> 本地执行工具,比如读文件、搜索代码、运行命令
-> 工具结果再进入下一轮模型请求
-> 模型继续判断
-> 直到给出最终回答或修改代码

我们在终端或编辑器里看到的,通常只是这个过程的一小部分。

最终回答只能告诉你“它做了什么”,但很难告诉你“它为什么这么做”。

比如下面这些问题,只看最终回答基本看不出来:

  • 它到底有没有看到关键文件?
  • 它看到的是完整上下文,还是被截断后的上下文?
  • system prompt 里有没有某条规则影响了它?
  • 工具 schema 是不是描述不清,导致它选错工具?
  • tool result 有没有进入下一轮?
  • 哪一轮开始 token 暴涨?
  • provider 返回的 400 到底是模型问题,还是请求格式问题?
  • 它是不是每一轮都重复带入了大量无效上下文?

这些都属于“请求级问题”。

AI Agent 的常见问题,其实可以分层看

我现在更倾向于把 AI Agent 的问题分成几层,而不是笼统地说“模型不行”。

第一层:模型没有看到该看的东西

这是最常见的问题之一。

你以为 Agent 已经读了某个文件,但实际发给模型的请求里没有那段内容。

或者它读过,但后续请求里没有保留。

于是模型只能基于不完整上下文做判断,结果自然不稳定。

这种时候继续强调“请仔细阅读代码”没有太大意义。你真正要确认的是:

关键上下文有没有进入下一轮请求?

第二层:工具列表或工具描述有问题

Agent 能调用工具,并不代表它会正确调用工具。

模型看到的是一组工具 schema,包括工具名、描述、参数结构。

如果工具描述太模糊,模型可能不知道什么时候该用。

如果参数结构太复杂,模型可能生成错误参数。

如果工具太多,模型也可能选错。

这类问题在 MCP、插件、子任务工具越来越多以后会更明显。

第三层:tool call 和 tool result 没有正确闭环

一个正常的工具调用闭环应该是:

assistant: tool_use
tool: tool_result
assistant: 根据 tool_result 继续

如果中间某一环丢了,Agent 就会开始出现奇怪行为。

比如:

  • 工具没有真正执行,但模型以为执行了
  • tool result 太长,进入下一轮后污染上下文
  • 多个 tool_result 顺序错了
  • tool_use 和 tool_result 没有正确配对
  • provider 要求的消息格式和客户端保存的格式不一致

这类 bug 最难靠肉眼看最终回答判断。

你必须看到真实的请求和响应。

第四层:token 和成本问题

很多人用 AI 编程工具时,一开始只关心效果。

但一旦使用频率上来,token 成本就会变成实际问题。

尤其是 Agent 场景里,token 并不只花在最终回答上。

大量 token 可能花在:

  • system prompt
  • 工具 schema
  • 历史消息
  • 文件内容
  • 搜索结果
  • 命令输出
  • tool result
  • 子 Agent 的上下文

有时一次任务很贵,不是因为最终回答很长,而是因为某一轮请求带了巨大的上下文。

所以看 session 总成本还不够,最好能看到每一次请求的 token 使用。

请求级调试应该看什么?

如果一个 AI Agent 跑偏,我通常会先看这几类信息。

1. system prompt

system prompt 是 Agent 行为的底层约束。

很多看似“模型自己决定”的行为,其实是 system prompt 影响的。

比如:

  • 它为什么总是先写计划?
  • 它为什么不直接执行命令?
  • 它为什么遇到某类文件不修改?
  • 它为什么要反复确认?

这些可能都和 system prompt 有关。

2. messages

messages 决定模型当前能看到什么。

重点不是“这个 Agent 曾经读过什么”,而是:

当前这一轮请求里到底包含了什么?

这两个问题不一样。

Agent 本地读过一个文件,不代表后续每一轮模型请求都带着这个文件。

3. tools schema

如果 Agent 没有调用你期望的工具,先不要急着骂模型。

可以先看:

  • 工具是否真的出现在 tools 里?
  • 工具描述是否清楚?
  • 参数 schema 是否合理?
  • 是否有多个类似工具让模型混淆?
  • provider 是否支持这种 schema?

4. tool call / tool result

这一层最适合排查 Agent 为什么做错。

你可以看:

  • 模型选择了哪个工具
  • 传入了什么参数
  • 工具返回了什么
  • 返回结果有没有进入下一轮
  • 下一轮模型有没有基于这个结果继续

如果这里断了,后面再怎么调 prompt 都不稳定。

5. token / cache / cost / latency

这些指标能帮你判断问题发生在哪一轮。

比如:

  • 哪一轮 input token 突然升高?
  • 哪一轮 tool result 特别大?
  • cache 有没有命中?
  • 哪个模型最贵?
  • 哪个请求延迟最高?
  • 失败请求有没有 usage 信息?

这比只看“今天花了多少钱”有用得多。

ccglass 解决的就是这一层

最近我发现了一个开源工具:ccglass。

项目地址:

https://github.com/jianshuo/ccglass

它不是另一个 AI 编程助手,而是一个本地观测工具。

简单说,它会在本地启动一个代理和 Dashboard,让你看到 Claude Code、Codex、OpenCode、CodeBuddy、Qoder 等工具实际发给模型的请求。

你可以看到:

  • system prompt
  • messages
  • tools schema
  • tool calls
  • tool results
  • request / response body
  • token / cache / cost
  • latency
  • turn-to-turn diff

也就是说,它关心的不是“再帮你写一段代码”,而是“让你看清 Agent 到底是怎么工作的”。

一个典型使用场景

假设你让 Claude Code 修一个 bug。

它最后确实改了代码,但你觉得改得很奇怪。

这时你可以不急着重跑,而是打开 ccglass 看这几件事:

  1. 第一轮请求里有没有带上相关文件?
  2. system prompt 有没有影响它的修改策略?
  3. 它调用了哪些工具?
  4. 每个工具返回了什么?
  5. 哪个 tool result 进入了下一轮?
  6. 修改代码前,它是否真的看到了测试失败信息?
  7. token 是不是在某一轮突然暴涨?

如果你能回答这些问题,调试 Agent 就从“感觉不对”变成了“证据链不对”。

它和普通抓包工具有什么区别?

很多人会问:这是不是 Charles、mitmproxy、Proxyman 也能做?

某些情况下可以,但 AI 编程 Agent 有几个麻烦点:

  • 不一定遵守系统代理
  • 有些客户端走自定义 base URL
  • 有些使用 OpenAI / Anthropic 兼容接口
  • 有些 provider 的 streaming 格式不一样
  • 有些工具调用信息需要按 Agent 语义展示,而不是只看 HTTP 包

ccglass 的目标不是替代通用抓包工具,而是专门围绕 AI Agent 请求结构做展示。

它会把 system、messages、tools、tool call、tool result、usage、cost、diff 这些东西整理成适合调试 Agent 的视图。

为什么我觉得这件事会越来越重要?

AI 编程工具的发展方向很明显:Agent 会越来越自动。

它们会读更多文件,调用更多工具,跑更长任务,甚至调度子 Agent。

这当然会提高效率。

但如果没有观测能力,复杂度也会一起上升。

以后我们遇到的问题可能不再是:

这段代码补全得对不对?

而是:

为什么这个 Agent 在第 7 轮调用了这个工具?
为什么它把这个 tool result 带到了后面 12 轮?
为什么这次任务花了 30 万 token?
为什么同样的任务换 provider 就失败?
为什么上下文压缩后它丢了关键约束?

这些问题都需要请求级视角。

结语

我觉得 AI 编程工具接下来的一个重要方向,不只是让 Agent 更强,而是让 Agent 更可观察。

只看最终回答,就像只看程序崩溃后的最后一行日志。

真正要调试复杂系统,还是要看输入、输出、中间状态和调用链。

AI Agent 也是一样。

如果你也在用 Claude Code、Codex、OpenCode、CodeBuddy、Qoder 这类工具,可以试试 ccglass:

https://github.com/jianshuo/ccglass

它解决的不是“让 AI 更聪明”,而是让使用者更清楚地知道:

AI 到底看到了什么,又基于什么做出了下一步。

相关文章
|
10天前
|
缓存 测试技术 API
Qwen 3.7 Plus 与 Max 实测:性价比与多模态能力差异解析(2026)
2026 年 6 月 1 日,阿里悄无声息地发布了 Qwen 3.7 Plus,距 Qwen 3.7 Max 上线刚好 11 天。同样的 1M 上下文,同样的 35 小时自治上限。但价格才是头条:Plus 是 0.40/M输入,Max是 2.50/M——便宜约 6 倍——并且还能看图、看视频。Vision Arena 上 Plus 已经排到 #16。所以这周真正值得讨论的问题不是”要不要为视觉能力买单”,而是”Max 凭什么用 6 倍价格换来 2 个百分点的 benchmark 领先”。
|
11天前
|
JavaScript 定位技术 API
CodeGraph 爆火:编程 Agent 需要的不是更多上下文,而是一张提前画好的代码地图
CodeGraph 是一款爆火的本地代码智能工具,通过 tree-sitter 解析 AST 构建结构化知识图谱(存于 SQLite),为编程 Agent 提前生成“代码地图”。它显著降低 Agent 在中大型项目中的探索成本——实测工具调用减少71%、Token 降57%、速度提升46%,支持19+语言及主流框架路由识别,完全离线、无需 API Key。
842 11
CodeGraph 爆火:编程 Agent 需要的不是更多上下文,而是一张提前画好的代码地图
|
11天前
|
人工智能 运维 JavaScript
阿里云Qoder CN(原通义灵码)全解析 产品形态、版本划分与技术适配说明
在AI辅助开发与智能办公工具持续普及的当下,阿里云旗下原通义灵码正式更名为Qoder CN,同时延伸出QoderWork CN、Qoder CN CLI、Qoder CN Mobile等多款配套产品,形成覆盖代码开发、日常办公、终端交互、移动端使用的完整工具矩阵。Qoder CN核心定位为AI智能编码助手,深度适配主流代码编辑器、集成开发环境以及终端场景;QoderWork CN则偏向桌面端综合办公辅助,二者面向不同使用场景,划分了多个版本档位,搭配差异化资源配额、功能权限与计费规则,同时兼容多款主流大模型。
848 7
|
11天前
|
存储 安全 Java
AgentScope Java 2.0:打造分布式、企业级智能体底座
AgentScope 2.0 面向分布式部署、稳定运行、权限安全等企业级需求全面升级,打造支持多租户隔离与长期稳定运行的企业级智能体底座。
|
11天前
|
JSON 缓存 安全
通过 CC Switch 本地路由让 Codex CLI 接入 DeepSeek 等第三方模型
CC Switch 通过本地路由(`127.0.0.1:15721`)实现协议转换:将 Codex 的 Responses API 请求自动映射为 DeepSeek 等厂商的 Chat Completions 接口,兼容流式响应与工具调用,无需修改 Codex 源码,安全隔离 API Key。(239字)
2274 4
通过 CC Switch 本地路由让 Codex CLI 接入 DeepSeek 等第三方模型
|
11天前
|
人工智能 弹性计算 安全
阿里云618活动时间、活动入口、优惠活动详细解读
2026年阿里云618创新加速季已全面开启,作为年度力度最大的云产品促销活动,本次大促覆盖轻量应用服务器、ECS云服务器、GPU云服务器、数据库、AI算力、安全服务、CDN等全品类产品,推出5亿元算力补贴、新用户限时秒杀、普惠满减、企业专享、免费试用、云大使返佣等多重福利,个人开发者、中小企业、AI团队均可享受专属低价。本文将系统梳理2026年阿里云618活动的完整时间节点、官方参与入口、各类优惠细则、使用规则、热门产品推荐及实操代码,帮助用户精准参与、高效省钱,以最低成本完成上云部署。
1872 6
|
11天前
|
数据采集 人工智能 前端开发
让 Coding Agent 从黑盒到透明:阿里云 Agent 观测审计数据采集实践
AI Agent 规模化落地带来执行黑盒、行为难追溯、成本难度量三大难题。阿里云基于 OTel 标准,面向 Coding Agent、个人通用助理和框架型 Agent,推出 LoongSuite Pilot、插件及探针等无侵入采集方案,让 Agent 实现可看见、可分析、可审计、可治理。
784 150
|
11天前
|
人工智能 运维 自然语言处理
阿里云百炼Qwen3.7-Max模型详解:综合能力、核心优势与订阅计划参考指南
2026年,大模型技术持续向通用化、高性能、场景化方向迭代,阿里云百炼作为一站式大模型服务平台,持续推出迭代升级的模型产品,Qwen3.7-Max便是当前主力旗舰级大模型之一。该模型依托深度优化的底层架构与大规模训练数据,在文本理解、逻辑推理、多模态交互、代码生成、长文本处理等多个维度实现能力升级,同时搭配灵活的订阅计划体系,能够适配个人开发者、中小企业、大型企业、政企机构等不同类型用户的使用需求。
632 2

热门文章

最新文章