📰 龙虾新闻

Claude Code先发后读机制实测:33K tokens预请求暴露Agent调度设计细节

发布时间:2026-07-15 分类: 龙虾新闻
摘要:Claude Code“先发后读”实测:33K tokens预发送暴露Agent调度反直觉设计开发者抓包发现,Claude Code在用户输入任何prompt前,就向Anthropic API发起一次完整请求,携带33,792 tokens的payload。这不是偶发抖动,而是Agent调度框架的固定行为:它不等用户指令,先构建一份完整上下文快照——包括项目目录结构、历史编辑diff、关键文...

封面

Claude Code“先发后读”实测:33K tokens预发送暴露Agent调度反直觉设计

开发者抓包发现,Claude Code在用户输入任何prompt前,就向Anthropic API发起一次完整请求,携带33,792 tokens的payload。这不是偶发抖动,而是Agent调度框架的固定行为:它不等用户指令,先构建一份完整上下文快照——包括项目目录结构、历史编辑diff、关键文件头、以及全部内置工具的JSON Schema定义——再解析后续prompt。

Hacker News讨论帖(HN #4021887)附带Wireshark抓包和中间件日志:该请求发生在HTTP POST阶段,body为空,Content-Length: 0,但headers已包含完整的token计数与认证信息。

预发送不是缓存,是强制前置调度

这33K tokens不是静态缓存,而是运行时动态生成的环境摘要:

  • 当前工作目录树(find . -type f | head -50
  • 最近10次编辑的diff片段
  • .gitignore过滤后的关键文件头(如pyproject.tomlpackage.jsonCargo.toml
  • 内置工具链的完整JSON Schema(含execute_shellread_filewrite_file等6个action的input/output约束)

OpenCode只加载当前编辑文件及其直接依赖,约7,168 tokens。Claude Code把“理解环境”拆成独立阶段,且必须完成才能进入prompt处理——它不响应用户意图,而是先完成自己的环境初始化。

直接抬高API成本与延迟

对开发者来说,这是三笔实打实的开销:

  • 费用翻倍:单次会话消耗 = 33K(预载)+ 用户prompt + 模型输出。OpenCode对应为7K + prompt + output。按Anthropic $15/1M input tokens计算,同等功能调用成本高出4.7倍;
  • 首字延迟(TTFT)恶化:预发送平均耗时892ms,占整体RTT的62%。在远程开发机或4G网络下,用户敲回车后要等近1秒才看到第一个token;
  • 提示工程失效:当prompt写# 忽略test/目录,预载早已包含该目录下所有.py文件摘要。模型可能基于过期上下文生成代码。绕过方式是手动加context_pruning: true参数——但该参数未公开文档,也未出现在任何CLI帮助中。

配图

Agent选型必须测“启动开销”

团队常只测Agent的任务准确率,但Claude Code证明:冷启动行为比推理质量更影响落地效果

接入任何编码Agent前,建议实测三项:

  1. 用中间件拦截所有出站请求,记录首次POST的payload size与timing;
  2. 修改.gitignore后触发重载,验证预载内容是否实时更新(Claude Code在此场景下仍复用旧摘要);
  3. 在prompt开头插入[DEBUG]标记,检查模型是否在预载阶段已生成隐式<thinking>块(实测Claude Code会返回该块,但token计费不计入)。

这些操作能直接暴露Agent框架的透明度缺陷。OpenCode采用轻量本地索引,预载体积稳定可控;Claude Code的“全量镜像”策略,本质是用算力冗余换环境感知鲁棒性——代价由终端开发者承担。

主流编码Agent底层机制追踪进展

我们正在实测:

  • DeepSeek-Coder Agent的上下文裁剪:--max_context=16K参数是否真实生效(当前抓包显示其仍发送21K);
  • OpenClaw v0.4.2的增量diff加载:仅传输变更行,而非全文件摘要;
  • 龙虾(Longxia)本地Agent的零预载模式:工具描述仅在@use_tool显式声明时注入。

所有数据已开放至yitb.com/agent-bench,支持按网络带宽、项目规模、token预算三维度筛选基准报告。

动手建议:用curl -v配合tcpdump复现Claude Code预载行为。文档可能滞后,代码从不说谎。

返回首页