CLAWGYM II · PAPER DEEP DIVEarXiv:2608.16798 · 2026-08-17
能不能不改 Claude Code 或 OpenClaw 的内部逻辑,直接用 RL 训练它背后的模型?

ClawGym II 在 model-serving boundary 截获真实 token 与 log-prob,再把零散调用恢复成 prefix tree。Harness 继续负责工具、上下文和重试,trainer 只接收可归因的轨迹与 reward。

9.8 / 10作者兴趣度:与完整 Agent harness 的训练直接相关
30A3B · ClawGym-BenchOpenClaw:52.64 → 62.62;Claude Code:37.06 → 51.87。
标题:ClawGym II: Exploring Black-Box RL on Agent Harness
02 · MOTIVATION保留部署时真正使用的 harness

白盒 agent loop 容易训练,完整 harness 才接近真实使用

Claude Code、OpenClaw 会自己构造 prompt、执行工具、重试、调用 subagent、压缩上下文。把它们重写进训练框架,会改变 policy 实际面对的交互分布。

WHITE-BOX

训练框架看见全部 control flow

可以直接定义 state、action、tool loop 和 credit assignment,但部署 harness 的行为被替换了。

BLACK-BOX

只观察模型 API

Harness 内部逻辑保持不动;可见的是一次次 model call 和最终 workspace。

TARGET

让 reward 回到正确 token

必须恢复长轨迹、过滤辅助分支,并保留 rollout 时的 token 与概率。

来源:论文 §1、§2.1、§2.2。
03 · SYSTEM BOUNDARYopaque harness ≠ opaque model

训练系统不读 harness 内部状态,只守住所有生成都经过的模型端点

HARNESS PRIVATE
prompt assemblytoolsretry / compaction
OBSERVED
input tokensoutput tokensrollout log-probtask metadata
AFTER ROLLOUT
workspace rewardpolicy update
边界条件论文假设 harness 的所有模型生成都会经过可替换的 serving endpoint。如果某些决策绕过这个端点,训练系统就看不见它们。
来源:论文 §2.1、Figure 1;图为解释性重绘。
04 · PIPELINEtask → native harness → proxy → tree → verifier → update

一个 rollout 的数据怎样从任务走到梯度

ClawGym II black-box RL pipeline
根据论文 Figure 1 与 §2.1–§2.3 重绘。原图许可不允许直接复用。
05 · PREFIX TREEmodel calls 不是天然的一条 transcript

重试、compaction 和 subagent 会把一次 rollout 分成多个分支

Prefix tree reconstruction and filtering
来源:论文 §2.2.1–§2.2.3;图为解释性重绘。
06 · TRAJECTORY FILTERING先判断哪条分支代表主任务

同一棵树里的 leaf 并不都该拿到最终 reward

DROP

Retry dead leaf

格式错误后的旧尝试没有后续,被重试替代。

DROP ROLLOUT

过度分叉

leaf 超过预设阈值时,整次 rollout 被视为异常。阈值未披露。

EXCLUDE

Compaction / subagent

它们的角色与主任务不同,直接广播终局 reward 会混淆 credit。

KEEP

Main-agent paths

保留有效 root-to-leaf 路径,共享 prefix 在一个 rollout 中只计一次。

来源:论文 §2.2.2–§2.2.3。Over-branching threshold 未公开。
07 · GRPOreward 属于 rollout,不属于某条 leaf

同一 task 的多个 rollout 先做组内标准化,再把 advantage 写回树节点

Âᵢ = (Rᵢ − μq) / (σq + ε)rollout gᵢ 中所有保留 trajectory 继承同一个 Rᵢ;共享 prefix token 只进入一次 loss。

分组单位

同一 task 下的 n 个 rollout。

优势单位

每个 rollout 一个 Âᵢ,而不是每个 branch 一个 reward。

仍未解决

同一 rollout 内各分支到底贡献了多少,终局 reward 无法区分。

来源:论文 §2.2.3,Equation 1。
08 · PPO简化的 branch-local GAE

PPO 把 sibling branches 分开回传,γ = λ = 1

ESTIMATOR
Âₜ = Rᵢ − Vφ(sₜ)

每条 trajectory 在自己的末 token 收到 rollout reward,再独立做 GAE backup。优势不穿过 branch point 传到 sibling。

TRADE-OFF

实现简单,方差与 bias 要自己承担

critic 要从很早的中间 state 预测长程回报;没有 temporal discounting。论文把更完整的 tree-aware credit assignment 留给后续工作。

来源:论文 §2.2.3,Equation 2。
09 · TOKEN FIDELITYharness 可改文字表示,不能改训练 token

token-in-token-out 保留原始采样序列,importance correction 修正概率偏差

1 · SAMPLEInference engine保存 exact output tokens 与 log πrollout。
2 · ACTHarness text view可格式化 tool call、重序列化消息。
3 · TRAINTrainer token view直接使用保存的 tokens,不重新编码 harness 文本。
4 · CORRECTToken-level ratio用截断 importance weight 降低概率 mismatch。
wₜ = min(exp(log πold(aₜ|sₜ) − log πrollout(aₜ|sₜ)), c̄)这是 bias 与 variance 的折中。论文没有公开 c̄ 的数值。
来源:论文 §2.2.4,Equations 3–4。
10 · MIX-HARNESS一个 policy,两种交互分布

同题在不同 harness 下不能放进同一 advantage group

OpenClaw group
task q + H_OC8 rolloutsnormalize  inside group
Claude Code group
task q + H_CC8 rolloutsnormalize  inside group
共同更新一个 policy任务可以相同,组内统计必须按 task-harness pair 分开。这样不会把 harness 导致的 reward 分布差异误当成 policy 优劣。
来源:论文 §2.3。Mix-harness 只给曲线和定性结论,没有完整数值表。
11 · CLAWGYM-SYNDATApersona route + skill route

GPT-5 生成任务与 workspace,GPT-5.4 做质量复核

PERSONA ROUTE

9 大类、43 个子类

GPT-5 根据 persona 与 7 类、26 种 atomic operations 生成任务,再生成 mock workspace、Python checker 和 rubric。

SKILL ROUTE

约 30K skills → 约 16K

MiniMax-M2.5 先标注 ClawHub skills。每题使用 1 个主 skill,最多搭配 3 个辅助 skills,再由 GPT-5 生成任务。

MODEL REVIEW

GPT-5.4 四项检查

plausibility、difficulty、checker alignment,以及 rubric 是否只补 code checker 不擅长判断的维度。

HUMAN SAMPLE

50 题人工抽样

四维平均 4.06 / 5。论文没有给多标注者一致性,也没有披露全量人工复核。

来源:ClawGym 原论文 §2 与 ClawGym-SynData revision 98d0478。
12 · CLAWGYM-BENCHheld-out synthetic tasks

先用模型成功率找出“强模型能做、小模型仍难”的题,再交给人复核

POOL未用于训练的合成题沿用 instruction + workspace + checker + rubric 结构。
CALIBRATEstrong / small 各 4 次strong avg ≥ 0.2;small avg ≤ 0.6;strong > small。
MODEL AUDITGPT-5.4 诊断检查任务、checker 和 rubric。
HUMAN REVIEWaccept / revise / reject最终入选 200 题:156 code-only,44 hybrid。
来源:ClawGym 原论文 §2.4 与官方 Bench README。strong/small 的具体模型未披露。
13 · REAL CASEbenchmark_data.jsonl line 1 · Messaging and Collaboration

志愿者污染修复团队:从数据文件产出四个同步更新文件

VISIBLE TO AGENT

Prompt + workspace

data/tasks.csv、data/updates.jsonl、原始公告、summarizer 和公开 tests。Agent 可运行命令并修改 workspace。

交付:summary JSON、pytest 输出、weekly status report、announcement rewrite。

HIDDEN DURING EXECUTION

Reward 与 rubric

reward/test.py、两条 rubric 和 judge prompt 不暴露给 Agent。rollout 结束后,评测器在最终 workspace 上运行。

本题由合成管线生成,并由 benchmark 筛选流程复核,不是现实志愿组织人工编写。

来源:ClawGym-Bench benchmark_data.jsonl line 1,revision c8cbd1d。
14 · CODE CHECKER15 个等权 binary metrics

代码分数衡量的是完成度,每条 assertion 各占 1/15

# official reward/test.py
scores = {
  "summary_json_exists": 0.0,
  "tests_all_passed": 0.0,
  "status_report_title_correct": 0.0,
  "highlights_top3_correct": 0.0,
  ... # 15 metrics total
}

if wc < 120:
    scores["announcement_under_120_words"] = 1.0

return scores
完全满足15 / 15,code score = 1.00。
部分满足例如 12 / 15,code score = 0.80,并不会被自动二值化成 FAIL。
真实 blind spot公告文件不存在时 ann_text="",word count 是 0,under_120_words 仍会得 1。
来源:官方 case 的 reward/test.py 第 253–348 行;解释性摘录。
15 · HYBRID JUDGEdeterministic checker + GPT-5.4 rubric

客观约束交给代码,语气与 actionability 交给 rubric

Real benchmark case scoring
来源:官方 Bench 的 reward.py、judge.py、runner.py 与 case line 1。论文 Appendix A 的 prompt 比公开实现多 transcript 与 changed files。
16 · EXPERIMENT SETUPmatched rollout budget

GRPO 和 PPO 每次 update 都消耗 256 条 rollout,但看见的任务多样性不同

GRPO
32 × 8

32 tasks,每题 8 rollouts,用组内相对 advantage。

PPO
256 × 1

256 tasks,每题 1 rollout,另需预训练 value model。

CONTEXT
64K

更长轨迹由 harness 自己做 context management。

MODEL
30A3B

OpenClaw 从 ClawII-Cold 开始;Claude Code 从 Qwen3 base 开始。

来源:论文 §3.1–§3.2。两种 harness 的初始化不同,不能把最终分差全归因于 harness。
17 · MAIN RESULTSQwen3-30A3B family · Table 1

在对应 harness 内训练后,ClawGym-Bench 与 PinchBench 都提高

Main benchmark results
根据论文 Table 1 重绘。OpenClaw baseline 是 ClawII-Cold-30A3B;Claude Code baseline 是 Qwen3-30A3B。
18 · TRANSFERharder tasks + white-to-black

同一 pipeline 能迁移,但训练 harness 仍留下明显偏好

Cross-harness transfer results
JobBench-Easy20.46 → 27.20,Claude Code rollout。
OfficeQA-Full8.53 → 21.54,Claude Code rollout。
White-to-black gapWhiteBox policy 在 AgentLoop 得 59.90,换到 OpenClaw 只有 50.33;直接用 OpenClaw 训练为 62.62。
根据论文 Figures 5–6、Table 2 重绘。JobBench-style / OfficeQA-style 训练任务数量未披露。
19 · RELATED WORK同一维度比较

贡献主要在“黑盒轨迹恢复 + 原生 harness + tree-aware optimization”的组合

工作保留原生 harness训练信号怎样接入ClawGym II 的边界
ClawGymOpenClaw 数据与 benchmark合成任务、checker、rubric 和 cold startClawGym II 复用数据资产,新增在线 RL 桥接。
POLAR / OpenForgeRL是model API boundary同属 harness-native RL;本文重点是 prefix tree 与 forked trajectories。
Dressage面向多 Agent / sandbox可扩展 rollout infra更偏通用系统基础设施,本文给出 OpenClaw / Claude Code 的树恢复算法。
LEGO-RL是proxy + sandbox + verifier + routing replayLEGO-RL 更强调工程完整性;ClawGym II 更细讲黑盒分叉轨迹和 PPO / GRPO。
White-box AgentLoop否训练框架直接控制 loop更易 credit assignment,但与部署 harness 有分布差异。
来源:论文 Related Work、§4.7;对 LEGO-RL 的描述来自其原论文与官方仓库。
20 · TAKEAWAYS对 Claude Code / Codex harness 研究最值得带走的点

这篇论文给出了能运行的桥,但还没有证明“harness-general policy”已经学成

USEAPI boundary 足够成为训练接口无需改写完整 harness,就能收集 policy tokens 与 reward。
METHODForked trace 需要树结构共享 prefix 去重;retry、compaction 和 subagent 要分开处理。
JUDGE任务分数是连续完成度公开 runner 对 final_score 求平均;论文称 Pass@1,二者表述并不完全一致。
EVIDENCE训练方差未知没有重复 run 或置信区间;mix-harness 也缺完整数值表。
REPRODUCIBILITY核心训练代码尚未公开companion 仓库检查时为空,无法独立核验 prefix-tree 实现。
NEXT跨 harness 因果实验固定 task、model、budget 与 initialization,测 harness-conditioned transfer matrix。
核心结论1 / 20