AI 编程 Agent 不是黑箱了:用 ccglass 看清 Claude Code 和 Codex 的真实请求

这两年,AI 编程工具的进化速度非常快。

从最早的代码补全,到现在的 Claude Code、Codex、Cursor、Cline、OpenCode,各类 Agent 已经不只是"帮你写一段函数"了。它们可以读项目、改代码、跑命令、调用工具、分析报错,甚至连续执行一整套开发任务。

这当然很爽。

但问题也随之而来:AI Agent 越来越能干,也越来越像一个黑箱。

你在终端里输入一句:

text 复制代码
帮我修复这个 bug

Agent 可能会开始读文件、分析上下文、调用工具、请求模型、继续补充上下文、再请求模型。最后它给你一个结果,看起来很顺滑。

可如果你追问几个问题:

  • 它到底把哪些代码发给了模型?
  • system prompt 里写了什么规则?
  • 每次请求带了多少历史上下文?
  • 为什么它选了这个工具,而不是另一个工具?
  • token 花在哪里了?
  • cache 有没有命中?
  • 一次任务到底花了多少钱?

很多时候,我们并不知道。

这就是我最近关注的一个开源工具:ccglass。

GitHub 地址:https://github.com/jianshuo/ccglass

ccglass 是什么?

一句话概括:

ccglass 是一个 AI 编程 Agent 的本地观测工具,用来查看 Claude Code、Codex 等工具实际发送给大模型的请求内容。

它不是另一个 AI 编程助手,也不是模型 provider。它更像是一个透明的"观察层"。

当你用 Claude Code、Codex、DeepSeek-TUI、Reasonix、Kimi、OpenCode、Ollama、OpenRouter 等工具时,ccglass 可以在本地启动一个代理,把请求和响应记录下来,并通过 Web Dashboard 展示出来。

你可以看到:

  • 模型收到的 system prompt
  • 用户消息和 assistant 消息历史
  • 工具列表和 tool schema
  • tool call 和 tool result
  • token 使用情况
  • cache 命中情况
  • 请求延迟
  • 成本估算
  • turn-to-turn 的上下文变化

这就像给 AI Agent 装了一块玻璃。以前你只能看到它的输出,现在你可以看到它"脑子里"收到的输入。

为什么现在特别需要这样的工具?

AI 编程已经从"补全工具"进入了"Agent 工具"阶段。

补全工具时代,我们关心的是:

它补的这段代码对不对?

Agent 工具时代,我们还要关心:

它为什么这么做?

这个区别很关键。

因为 Agent 不只是生成文本,它还会做决策。比如:

  • 决定读哪个文件
  • 决定运行哪个命令
  • 决定是否修改代码
  • 决定是否继续请求模型
  • 决定哪些上下文应该保留
  • 决定调用哪个工具

这些决策的质量,直接影响开发效率、代码质量和成本。

如果没有观测能力,我们只能靠猜:

  • 它是不是没看到某个文件?
  • 它是不是上下文太长导致重点丢失?
  • 它是不是 system prompt 里有某条规则影响了行为?
  • 它是不是工具 schema 太复杂,导致模型误判?
  • 它是不是每轮都重复发送大量无效上下文?

ccglass 的价值就在这里:它把这些猜测变成可以检查的事实。

它和普通抓包工具有什么不同?

很多人可能会问:这不就是抓包吗?Charles、mitmproxy、Proxyman 不能做吗?

理论上可以,但实际并不总是好用。

现在很多 AI CLI 是 Node 或原生程序,它们不一定稳定遵守 HTTP_PROXY / HTTPS_PROXY。有些还会有自己的网络实现、认证方式或连接逻辑。直接 patch fetch 也容易因为客户端升级而失效。

ccglass 走的是另一条路:

  1. 在本地启动一个代理服务。
  2. 通过 OPENAI_BASE_URL、ANTHROPIC_BASE_URL 等环境变量,让 AI CLI 把请求打到本地代理。
  3. 本地代理记录请求和响应。
  4. 再把请求转发给真实的模型 API。
  5. Dashboard 读取日志并可视化展示。

这种方式的好处是:

  • 不需要安装 CA 证书
  • 不需要处理 HTTPS 解密
  • 不需要改客户端源码
  • 对开发者更友好
  • 更适合观察 AI Agent 的 prompt、tool call 和 token 使用

它不是为了替代通用抓包工具,而是专门为 AI 编程 Agent 的观测场景设计的。

快速安装

ccglass 是一个 Node 工具,安装很简单:

bash 复制代码
npm install -g ccglass

安装完成后,直接运行:

bash 复制代码
ccglass

它会出现一个交互式菜单,让你选择要观察的客户端。

也可以直接指定:

bash 复制代码
ccglass claude
ccglass codex
ccglass deepseek
ccglass kimi
ccglass opencode

比如观察 Codex:

bash 复制代码
ccglass codex

启动成功后,终端会输出一个 Dashboard 地址,类似:

text 复制代码
dashboard: http://127.0.0.1:57633

打开这个地址,就可以实时看到请求记录。

Dashboard 里能看到什么?

ccglass 最有价值的地方就是 Dashboard。

它不是简单打印一堆 JSON,而是把 Agent 的请求流程整理成可读的视图。

1. 看 system prompt

system prompt 是 Agent 行为的底层规则。

很多时候,我们以为 Agent 是"自己想这么做",但实际上它可能是被 system prompt 约束了。

通过 ccglass,你可以看到模型真正收到的系统级指令。这对理解不同 AI 编程工具的设计非常有帮助。

2. 看工具 schema

Agent 能调用哪些工具?每个工具的参数是什么?工具描述是怎么写的?

这些都会影响模型的选择。

如果一个工具描述太模糊,模型可能会误用。如果工具太多、schema 太复杂,模型也可能选错。

ccglass 可以让你直接看到这些信息。

3. 看 tool call 和 tool result

AI Agent 的典型流程是:

text 复制代码
模型思考 -> 调用工具 -> 工具返回结果 -> 模型继续思考

ccglass 可以把这个循环展示出来。

你能看到模型为什么调用某个工具,也能看到工具返回了什么结果,以及这些结果如何影响下一轮请求。

4. 看 token 和成本

现在很多人使用 AI 编程工具时,只关注"有没有完成任务",但忽略了成本。

长上下文、多轮请求、大量工具结果,都可能让 token 快速增长。

ccglass 可以展示:

  • 输入 token
  • 输出 token
  • cache token
  • cache 命中率
  • cost 估算

这对团队使用尤其重要。因为 AI 编程一旦规模化使用,成本就不再是小问题。

5. 看上下文 diff

这是我觉得很实用的功能。

Agent 每一轮请求都会带上不同上下文。ccglass 可以比较两次请求之间的变化,让你知道:

  • 哪些内容新增了
  • 哪些内容被保留了
  • 哪些工具结果进入了下一轮
  • 哪些上下文可能造成干扰

这对分析"为什么 Agent 后面跑偏了"很有价值。

一个典型使用场景

假设你让 Claude Code 修改一个项目里的 bug。

你执行:

bash 复制代码
ccglass claude

然后在 Claude Code 里输入:

text 复制代码
帮我分析这个报错,并修复相关代码

Claude Code 开始工作。

这时你打开 ccglass Dashboard,可以看到:

  1. 第一轮请求里带了哪些系统规则。
  2. 它看到了哪些工具。
  3. 它决定先读哪个文件。
  4. 文件内容被工具返回后,下一轮请求如何变化。
  5. 它修改代码前,模型到底看到了什么。
  6. 整个任务消耗了多少 token。
  7. cache 命中了多少。

如果最后修复不对,你不再只能说"AI 又犯傻了"。

你可以具体分析:

  • 它是不是没读到关键文件?
  • 工具返回结果是不是被截断了?
  • 上下文里是不是混入了无关内容?
  • 模型是不是受某条系统指令影响?
  • 成本是不是主要消耗在重复上下文上?

这才是真正工程化地使用 AI 编程工具。

对个人开发者有什么用?

对个人来说,ccglass 最直接的价值是学习和调试。

你可以通过它研究:

  • Claude Code 是怎么组织上下文的
  • Codex 每轮请求带了什么内容
  • 工具调用是怎么进入模型上下文的
  • 一个优秀 Agent 的 prompt 结构长什么样
  • 为什么同一个任务在不同工具里表现差异很大

这对想深入理解 AI 编程的人非常有帮助。

说白了,使用 AI 工具不难,难的是理解 AI 工具。

只会用,是消费能力;能看懂,是工程能力。

对团队有什么用?

如果一个团队开始大量使用 AI 编程工具,ccglass 的价值会更明显。

团队最关心的通常不是"某一次回答好不好",而是:

  • 成本是否可控
  • 敏感信息是否被发送
  • Agent 行为是否可复盘
  • prompt 和工具设计是否合理
  • 为什么某类任务经常失败
  • 不同模型或工具到底谁更适合某个场景

ccglass 可以作为团队 AI 编程工具治理的一部分。

它提供的不是"控制模型"的能力,而是"观察模型输入输出链路"的能力。

而治理的第一步,永远是可观测。

支持哪些工具?

根据项目说明,ccglass 支持多种常见 AI 编程 CLI 和 provider,包括:

  • Claude Code
  • Codex
  • DeepSeek-TUI
  • Reasonix
  • Kimi
  • OpenCode
  • Ollama
  • LM Studio
  • OpenRouter
  • GLM
  • AWS Bedrock
  • Google Vertex AI
  • CodeBuddy

对于支持自定义 API base URL 的 IDE 或插件,也可以通过 proxy 模式接入。

比如:

bash 复制代码
ccglass proxy --provider openai

或者:

bash 复制代码
ccglass proxy --provider claude

然后把 IDE 里的 API base URL 配置成本地代理地址即可。

需要注意的是,如果某个 IDE 使用的是内置订阅模型,并且请求走厂商自己的后端,不支持自定义 base URL,那就不一定能被 ccglass 捕获。

安全方面要注意什么?

ccglass 默认会遮蔽 authorization、x-api-key 等认证字段。

但即便如此,日志本身仍然可能包含敏感信息,比如:

  • prompt
  • 代码片段
  • 文件路径
  • 工具返回结果
  • 项目上下文
  • 业务逻辑

所以不要随意把 ccglass 日志发到公开网络。

如果团队使用,建议明确日志保留和清理规则。

日志默认位于:

text 复制代码
~/.ccglass/sessions/

如果只是临时调试,用完后可以检查并清理不需要的 session。

它适合所有人吗?

如果你只是偶尔让 AI 补一段代码,可能暂时用不到 ccglass。

但如果你已经开始高频使用 Claude Code、Codex、Cursor、Cline、OpenCode 这类 Agent 工具,或者你正在研究 AI 编程工具的运行机制,那么 ccglass 很值得一试。

它尤其适合三类人:

第一类是重度 AI 编程用户。你每天都让 Agent 修改代码、分析项目、跑测试,那么你需要知道它到底在做什么。

第二类是 AI 工具研究者。你想比较不同 Agent 的 prompt、工具调用和上下文管理方式,ccglass 能给你第一手材料。

第三类是技术团队负责人。你关心 AI 编程的成本、安全、质量和可复盘性,ccglass 可以作为观测入口。

总结

AI 编程正在从"辅助写代码"进入"自动执行任务"的阶段。

这个阶段里,真正重要的不只是模型能力,还有可观测性。

一个 Agent 能写代码,当然很好。

但一个 Agent 为什么这样写、看到了什么、调用了什么工具、花了多少 token、上下文怎么变化,这些同样重要。

ccglass 做的事情很简单,也很关键:

让 AI 编程 Agent 不再是黑箱。

如果你正在使用 Claude Code、Codex 或其他 AI 编程工具,建议试一下 ccglass。哪怕只是打开 Dashboard 看一次请求,你也会对 AI Agent 的运行方式有完全不同的理解。

项目地址:

https://github.com/jianshuo/ccglass

安装命令:

bash 复制代码
npm install -g ccglass

启动命令:

bash 复制代码
ccglass

在 AI 编程越来越火的今天,会用工具已经不够了。能看懂工具,才是下一阶段开发者真正的竞争力。

相关推荐
lvwangshu5 天前
CF813D Two Melodies 题解
动态规划·题解·技巧·性质题·思维好题
lvwangshu6 天前
登录日志 题解
数据结构·线段树·题解·技巧·性质题·思维好题·细节题
lvwangshu8 天前
T2 最长上升子序列(lis)题解
动态规划·题解·技巧·性质题·思维好题
lvwangshu8 天前
T1 称重(weight)题解
题解·贪心·总结·技巧·性质题·思维好题
lvwangshu13 天前
P12960 毒药 题解
动态规划·题解·贪心·技巧·性质题·思维好题
humors22125 天前
支付宝游戏灵画师简易步骤整理
游戏·技巧·手游·攻略·灵画师
侯垒4 个月前
我让 Claude 写了一个贪吃蛇游戏,然后用 ccglass 看清它发给模型的真实请求
claude·codex·ccglass
qq_2153978975 个月前
谷歌浏览器独立多开
技巧
二宝1526 个月前
如何高效学习与实用技巧分享
学习·效率·技巧