arena
Installation
SKILL.md
Arena
Read the host adapter once per session before following this skill. It maps upstream Cursor-specific tool, model, path, and permission instructions to your host and sets authority limits.
Open a todolist with one entry per phase (Frame, Fan out, Cross-judge, Pick, Graft, Verify) before launching anything.
Phase A: Frame
Every candidate gets the same prompt, so the prompt is the contract.
- State the artifact each candidate is producing.
- Derive the rubric, 3-6 concrete gradeable criteria for what success looks like on this task. It is the picker's tool in Phase D. Candidates only see the task.
- Pick the runners. Use the
arena runnersline in the model rule. If the rule or that line is missing, default to one each onclaude-opus-5-5-xhighandinherit-parent. Anautoorinherit-parententry in this line means the parent model, so omitmodelfor it. If the Task tool rejects a configured entry, run that seat on its family's default and say so. Families go by provider prefix, such asclaude-*,gpt-*, orgemini-*. If the family has no default, or the Task tool rejects that default, use the closest valid slug of the same family from its error message, or drop the seat and say so when there is none. If dropped seats leave fewer than two runners, add runners until there are two, or one when the line has one entry. Run each added runner on a remaining runner's model, or omitmodelso it runs on the parent model when none remain, and say so. Spawn more runners when the arena covers multiple design directions. Use the same model N times when the work is generation-bound rather than judgment-sensitive. Pick each subagent's reasoning level and fast or standard speed for the job, per the Subagents section of the saltmode skill. - Give each candidate its own output location (a git worktree where possible, otherwise
/tmp/arena-<slug>/candidate-<n>/), per the separate-before-serializing-shared-state principle skill.