Arena 是一个用于“多候选并行比选并择优融合”的技能。它的基本思路是:让多个候选者在同一任务、同一提示词下各自独立产出结果,然后对这些结果进行评分、挑选一个基线,再把其他候选者中更优的部分手工移植进来,最终形成一个综合产物。
使用方式上,Arena 按阶段组织流程:先在待办清单中为每个阶段建立条目,包括 Frame(定框)、Fan out(并行分发)、Cross-judge(交叉评审)、Pick(选基线)、Graft(移植)、Verify(验证)。开始前需阅读一次宿主适配说明,以了解工具、模型、路径和权限的映射及权限边界。
Frame 阶段要求所有候选者使用相同提示词,因此提示词即契约:明确每个候选者要产出的工件,并制定 3 到 6 条可评分的具体标准作为评分表,供后续挑选使用。同时确定运行候选者的模型名单;若配置缺失,默认使用 claude-opus-5-5-xhigh 和 inherit-parent 各一个。若某条目被 Task 工具拒绝,则改用同家族默认模型并说明;若同家族无默认或仍被拒绝,则使用错误信息中同家族最接近的有效标识,或去掉该席位并说明。若席位去掉后不足两个,则补充运行者,使用剩余运行者的模型,或在无剩余时省略模型以使用父模型。每个候选者需有独立输出位置,优先使用 git worktree,否则使用 /tmp/arena-<slug>/candidate-<n>/。
Fan out 阶段在一条消息中并行启动全部候选子智能体,每个候选者获得任务、共享背景资料路径、自己的输出路径,并被要求产出工件和简短理由,说明考虑过哪些替代方案、拒绝了什么。若某候选者没有产出,则以 N-1 继续并记录掉队情况。
Cross-judge 阶段在所有候选者完成后,从交叉评审池中选一个模型启动只读评审子智能体。评审者不得与父模型同家族;若无法找到其他家族的可用条目,则跳过评审,在 Pick 阶段独自选择基线并说明。评审者按路径标签查看评分表和候选者,逐项打分并推荐基线及理由,与主流程阅读并行进行。
Pick 阶段要求完整阅读每个候选者,按评分表逐条打分而非凭整体感觉,并与交叉评审结果比较;一致则确认选择,不一致则阅读双方理由后再决定。选择时优先考虑未来维护者最容易扩展且不破坏不变量的基线;若难分高下,倾向于边界更清晰或 API 更小的方案。
Graft 阶段逐个查看落选候选者,找出值得移植进基线的内容,通常每个候选者一到两处而非大部分,手工融入以保持单一心智模型下的连贯性。若候选者收敛到同一形态,说明高度一致,可直接采用共识形态而无需移植;若分歧过大,说明 Frame 阶段定义不足,应重新定框并重跑,而不是平均分歧。
Verify 阶段对综合产物进行验证。若验证发现 Arena 遗漏的问题,要么是 Frame 阶段有误需重跑,要么是某候选者已发现但移植时遗漏,需回到 Graft 阶段,不应掩盖问题。
最终输出为一个综合产物,并附简短综合说明,列明所选的基线和原因、交叉评审结论或跳过评审的说明、每项移植及其来源候选者、被拒绝的内容及原因、收敛或掉队情况以及验证结果。