SuperAPI AI 工具集

agent-reproduce-align

测试与质量

查看项目

更新于 10-16 08:20

技能介绍

用途

Agent Reproduce Align 用于在 Qwen Code 已经具备某个候选实现后,与选定的参考智能体(codex 或 claude-code)进行基于证据的行为对齐验证。其目标不是逐字节相等,而是匹配对该功能真正重要的可观察契约。

默认目标仓库为当前工作目录。仅当用户明确提供路径时,才使用用户指定的路径。

参考智能体选择

使用与 $agent-reproduce-feature 阶段相同的参考智能体。如果之前的选择不可用,询问一次并将答案记录在场景或运行笔记中。

工作流程

  1. 重新陈述对齐目标:功能名称与触发条件、选定的参考智能体、一个基线提示或交互脚本、可接受的差异、必须匹配的字段。
  2. 在独立的捕获目录中,用相同场景分别运行参考智能体和 Qwen Code。
  3. 当状态可能影响对齐时,在参考运行前后捕获所选参考智能体的本地状态。
  4. 使用 scripts/normalize_trace.py 规范化轨迹。
  5. 使用 scripts/compare_traces.py 对比规范化后的轨迹。
  6. 按以下顺序检查差异:解释行为的参考智能体状态变化;缺失的工具/函数名称;schema 结构与必填字段;模型设置与响应模式;影响行为的提示词角色/顺序差异;终端可见输出与退出状态。
  7. 修补 Qwen Code,重跑最小的失败场景,并重复上述过程。
  8. 仓库中只保留脱敏后的最小测试夹具。

首次对比前请阅读 references/alignment-workflow.md。

常用命令

规范化:

.qwen/skills/agent-reproduce-align/scripts/normalize_trace.py \
  .repro-runs/reference/http.jsonl \
  > .repro-runs/reference/normalized.json

对比:

.qwen/skills/agent-reproduce-align/scripts/compare_traces.py \
  .repro-runs/reference/normalized.json \
  .repro-runs/qwen/normalized.json

运行配对的 shell 场景:

REPRO_REFERENCE_AGENT=codex \
.qwen/skills/agent-reproduce-align/scripts/run_pair_capture.sh \
  .repro-runs/slash-help \
  "codex exec '/help'" \
  "npm test -- --runInBand"

对于 Claude Code,设置 REPRO_REFERENCE_AGENT=claude-code,并将第一个命令替换为所发现的 Claude Code 命令。当设置了 REPRO_REFERENCE_AGENT 时,配对运行器会写入 reference/state-before、reference/state-after 和 reference/state-diff。仅在 shell 引号简单时使用配对运行器。对于交互式斜杠命令,请使用 tmux 手动运行两次捕获,以便两侧接收相同的按键输入。仅在测试或自定义状态目录时使用 REPRO_REFERENCE_STATE_ROOT=/tmp/some-root。

对比规则

  • 先对比契约,再对比措辞。精确的提示词文本通常属于实现细节。
  • 将缺失的 schema、错误的必填字段或错误的参数名称视为高信号失败。
  • 仅当用户可见工作流依赖输出顺序时,才将输出顺序视为重要。
  • 不要追逐特定于提供方的端点、模型名称、ID、时间戳、token 计数或临时标头,除非功能依赖它们。
  • 不要追逐每一次本地状态写入。除非功能契约要求特定的配置、记忆或权限副作用,否则将状态差异视为解释性证据。
  • 当 Qwen Code 通过用户可见场景,且剩余轨迹差异被记录为有意为之,即可停止。

完成标准

  • 同一场景的参考智能体与 Qwen Code 轨迹在本地存在。
  • 参考智能体状态差异存在,或状态捕获被记录为与该场景无关。
  • 规范化对比中没有未解释的必须匹配差异。
  • Qwen Code 测试或冒烟命令覆盖了修复后的行为。
  • 任何剩余不匹配若影响用户,需写入任务笔记或 Qwen Code 文档。

适用场景与限制

该技能适用于 Qwen Code 已实现某功能后,需要与 Codex 或 Claude Code 进行行为对齐验证的场景。其限制包括:不追求逐字节一致;需要用户提供或确认参考智能体;交互式命令需借助 tmux 手动捕获;仓库中只应保留脱敏后的最小测试夹具。