Agent 可能会开始读文件、分析上下文、调用工具、请求模型、继续补充上下文、再请求模型。最后它给你一个结果看起来很顺滑。可如果你追问几个问题它到底把哪些代码发给了模型system prompt 里写了什么规则每次请求带了多少历史上下文为什么它选了这个工具而不是另一个工具token 花在哪里了cache 有没有命中一次任务到底花了多少钱很多时候我们并不知道。这就是我最近关注的一个开源工具ccglass。GitHub 地址https://github.com/jianshuo/ccglassccglass 是什么一句话概括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 schematool call 和 tool resulttoken 使用情况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 走的是另一条路在本地启动一个代理服务。通过 OPENAI_BASE_URL、ANTHROPIC_BASE_URL 等环境变量让 AI CLI 把请求打到本地代理。本地代理记录请求和响应。再把请求转发给真实的模型 API。Dashboard 读取日志并可视化展示。这种方式的好处是不需要安装 CA 证书不需要处理 HTTPS 解密不需要改客户端源码对开发者更友好更适合观察 AI Agent 的 prompt、tool call 和 token 使用它不是为了替代通用抓包工具而是专门为 AI 编程 Agent 的观测场景设计的。快速安装ccglass 是一个 Node 工具安装很简单npm install -g ccglass安装完成后直接运行ccglass它会出现一个交互式菜单让你选择要观察的客户端。demo也可以直接指定ccglass claudeccglass codexccglass deepseekccglass kimiccglass opencode比如观察 Codexccglass codex启动成功后终端会输出一个 Dashboard 地址类似dashboard: http://127.0.0.1:57633打开这个地址就可以实时看到请求记录。Dashboard 里能看到什么ccglass 最有价值的地方就是 Dashboard。它不是简单打印一堆 JSON而是把 Agent 的请求流程整理成可读的视图。看 system promptsystem prompt 是 Agent 行为的底层规则。很多时候我们以为 Agent 是“自己想这么做”但实际上它可能是被 system prompt 约束了。通过 ccglass你可以看到模型真正收到的系统级指令。这对理解不同 AI 编程工具的设计非常有帮助。看工具 schemaAgent 能调用哪些工具每个工具的参数是什么工具描述是怎么写的这些都会影响模型的选择。如果一个工具描述太模糊模型可能会误用。如果工具太多、schema 太复杂模型也可能选错。ccglass 可以让你直接看到这些信息。看 tool call 和 tool resultAI Agent 的典型流程是模型思考 - 调用工具 - 工具返回结果 - 模型继续思考ccglass 可以把这个循环展示出来。你能看到模型为什么调用某个工具也能看到工具返回了什么结果以及这些结果如何影响下一轮请求。看 token 和成本现在很多人使用 AI 编程工具时只关注“有没有完成任务”但忽略了成本。长上下文、多轮请求、大量工具结果都可能让 token 快速增长。ccglass 可以展示输入 token输出 tokencache tokencache 命中率cost 估算这对团队使用尤其重要。因为 AI 编程一旦规模化使用成本就不再是小问题。看上下文 diff这是我觉得很实用的功能。Agent 每一轮请求都会带上不同上下文。ccglass 可以比较两次请求之间的变化让你知道哪些内容新增了哪些内容被保留了哪些工具结果进入了下一轮哪些上下文可能造成干扰这对分析“为什么 Agent 后面跑偏了”很有价值。一个典型使用场景假设你让 Claude Code 修改一个项目里的 bug。你执行ccglass claude然后在 Claude Code 里输入帮我分析这个报错并修复相关代码Claude Code 开始工作。这时你打开 ccglass Dashboard可以看到第一轮请求里带了哪些系统规则。它看到了哪些工具。它决定先读哪个文件。文件内容被工具返回后下一轮请求如何变化。它修改代码前模型到底看到了什么。整个任务消耗了多少 token。cache 命中了多少。如果最后修复不对你不再只能说“AI 又犯傻了”。你可以具体分析它是不是没读到关键文件工具返回结果是不是被截断了上下文里是不是混入了无关内容模型是不是受某条系统指令影响成本是不是主要消耗在重复上下文上这才是真正工程化地使用 AI 编程工具。对个人开发者有什么用对个人来说ccglass 最直接的价值是学习和调试。你可以通过它研究Claude Code 是怎么组织上下文的Codex 每轮请求带了什么内容工具调用是怎么进入模型上下文的一个优秀 Agent 的 prompt 结构长什么样为什么同一个任务在不同工具里表现差异很大这对想深入理解 AI 编程的人非常有帮助。说白了使用 AI 工具不难难的是理解 AI 工具。只会用是消费能力能看懂是工程能力。对团队有什么用如果一个团队开始大量使用 AI 编程工具ccglass 的价值会更明显。团队最关心的通常不是“某一次回答好不好”而是成本是否可控敏感信息是否被发送Agent 行为是否可复盘prompt 和工具设计是否合理为什么某类任务经常失败不同模型或工具到底谁更适合某个场景ccglass 可以作为团队 AI 编程工具治理的一部分。它提供的不是“控制模型”的能力而是“观察模型输入输出链路”的能力。而治理的第一步永远是可观测。支持哪些工具根据项目说明ccglass 支持多种常见 AI 编程 CLI 和 provider包括Claude CodeCodexDeepSeek-TUIReasonixKimiOpenCodeOllamaLM StudioOpenRouterGLMAWS BedrockGoogle Vertex AICodeBuddy对于支持自定义 API base URL 的 IDE 或插件也可以通过 proxy 模式接入。比如ccglass proxy --provider openai或者ccglass proxy --provider claude然后把 IDE 里的 API base URL 配置成本地代理地址即可。需要注意的是如果某个 IDE 使用的是内置订阅模型并且请求走厂商自己的后端不支持自定义 base URL那就不一定能被 ccglass 捕获。
AI Agent 越来越能干,也越来越像一个黑箱。
发布时间:2026/7/10 7:15:35
Agent 可能会开始读文件、分析上下文、调用工具、请求模型、继续补充上下文、再请求模型。最后它给你一个结果看起来很顺滑。可如果你追问几个问题它到底把哪些代码发给了模型system prompt 里写了什么规则每次请求带了多少历史上下文为什么它选了这个工具而不是另一个工具token 花在哪里了cache 有没有命中一次任务到底花了多少钱很多时候我们并不知道。这就是我最近关注的一个开源工具ccglass。GitHub 地址https://github.com/jianshuo/ccglassccglass 是什么一句话概括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 schematool call 和 tool resulttoken 使用情况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 走的是另一条路在本地启动一个代理服务。通过 OPENAI_BASE_URL、ANTHROPIC_BASE_URL 等环境变量让 AI CLI 把请求打到本地代理。本地代理记录请求和响应。再把请求转发给真实的模型 API。Dashboard 读取日志并可视化展示。这种方式的好处是不需要安装 CA 证书不需要处理 HTTPS 解密不需要改客户端源码对开发者更友好更适合观察 AI Agent 的 prompt、tool call 和 token 使用它不是为了替代通用抓包工具而是专门为 AI 编程 Agent 的观测场景设计的。快速安装ccglass 是一个 Node 工具安装很简单npm install -g ccglass安装完成后直接运行ccglass它会出现一个交互式菜单让你选择要观察的客户端。demo也可以直接指定ccglass claudeccglass codexccglass deepseekccglass kimiccglass opencode比如观察 Codexccglass codex启动成功后终端会输出一个 Dashboard 地址类似dashboard: http://127.0.0.1:57633打开这个地址就可以实时看到请求记录。Dashboard 里能看到什么ccglass 最有价值的地方就是 Dashboard。它不是简单打印一堆 JSON而是把 Agent 的请求流程整理成可读的视图。看 system promptsystem prompt 是 Agent 行为的底层规则。很多时候我们以为 Agent 是“自己想这么做”但实际上它可能是被 system prompt 约束了。通过 ccglass你可以看到模型真正收到的系统级指令。这对理解不同 AI 编程工具的设计非常有帮助。看工具 schemaAgent 能调用哪些工具每个工具的参数是什么工具描述是怎么写的这些都会影响模型的选择。如果一个工具描述太模糊模型可能会误用。如果工具太多、schema 太复杂模型也可能选错。ccglass 可以让你直接看到这些信息。看 tool call 和 tool resultAI Agent 的典型流程是模型思考 - 调用工具 - 工具返回结果 - 模型继续思考ccglass 可以把这个循环展示出来。你能看到模型为什么调用某个工具也能看到工具返回了什么结果以及这些结果如何影响下一轮请求。看 token 和成本现在很多人使用 AI 编程工具时只关注“有没有完成任务”但忽略了成本。长上下文、多轮请求、大量工具结果都可能让 token 快速增长。ccglass 可以展示输入 token输出 tokencache tokencache 命中率cost 估算这对团队使用尤其重要。因为 AI 编程一旦规模化使用成本就不再是小问题。看上下文 diff这是我觉得很实用的功能。Agent 每一轮请求都会带上不同上下文。ccglass 可以比较两次请求之间的变化让你知道哪些内容新增了哪些内容被保留了哪些工具结果进入了下一轮哪些上下文可能造成干扰这对分析“为什么 Agent 后面跑偏了”很有价值。一个典型使用场景假设你让 Claude Code 修改一个项目里的 bug。你执行ccglass claude然后在 Claude Code 里输入帮我分析这个报错并修复相关代码Claude Code 开始工作。这时你打开 ccglass Dashboard可以看到第一轮请求里带了哪些系统规则。它看到了哪些工具。它决定先读哪个文件。文件内容被工具返回后下一轮请求如何变化。它修改代码前模型到底看到了什么。整个任务消耗了多少 token。cache 命中了多少。如果最后修复不对你不再只能说“AI 又犯傻了”。你可以具体分析它是不是没读到关键文件工具返回结果是不是被截断了上下文里是不是混入了无关内容模型是不是受某条系统指令影响成本是不是主要消耗在重复上下文上这才是真正工程化地使用 AI 编程工具。对个人开发者有什么用对个人来说ccglass 最直接的价值是学习和调试。你可以通过它研究Claude Code 是怎么组织上下文的Codex 每轮请求带了什么内容工具调用是怎么进入模型上下文的一个优秀 Agent 的 prompt 结构长什么样为什么同一个任务在不同工具里表现差异很大这对想深入理解 AI 编程的人非常有帮助。说白了使用 AI 工具不难难的是理解 AI 工具。只会用是消费能力能看懂是工程能力。对团队有什么用如果一个团队开始大量使用 AI 编程工具ccglass 的价值会更明显。团队最关心的通常不是“某一次回答好不好”而是成本是否可控敏感信息是否被发送Agent 行为是否可复盘prompt 和工具设计是否合理为什么某类任务经常失败不同模型或工具到底谁更适合某个场景ccglass 可以作为团队 AI 编程工具治理的一部分。它提供的不是“控制模型”的能力而是“观察模型输入输出链路”的能力。而治理的第一步永远是可观测。支持哪些工具根据项目说明ccglass 支持多种常见 AI 编程 CLI 和 provider包括Claude CodeCodexDeepSeek-TUIReasonixKimiOpenCodeOllamaLM StudioOpenRouterGLMAWS BedrockGoogle Vertex AICodeBuddy对于支持自定义 API base URL 的 IDE 或插件也可以通过 proxy 模式接入。比如ccglass proxy --provider openai或者ccglass proxy --provider claude然后把 IDE 里的 API base URL 配置成本地代理地址即可。需要注意的是如果某个 IDE 使用的是内置订阅模型并且请求走厂商自己的后端不支持自定义 base URL那就不一定能被 ccglass 捕获。