arena
Installation
SKILL.md
Arena
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 pstack settings file (~/.cursor/rules/pstack-models.mdcin Cursor,~/.claude/rules/pstack-models.mdin Claude Code,~/.agents/pstack-models.mdin other harnesses). If the file or that line is missing, default to one each onclaude-opus-5-5-xhighandgrok-4.7-xhigh-fast. Anautoorinherit-parententry in this line or the cross-judge line means the parent model, so omitmodelfor it. If your subagent tool rejects a configured entry, run that seat on its family's default and say so. Families go by prefix:claude-*, andgrok-*withcursor-grok-*andcomposer-*. A refusedcomposer-*entry runs ongrok-4.7-xhigh-fast. With no family match, useclaude-opus-5-5-xhigh. If it rejects a default, use the closest valid slug of the same family from its error message or your harness's model list. 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 poteto-mode 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.
Phase B: Fan out
Spawn all N subagents in one message with run_in_background: true, each with the task, the path to the shared grounding, its own output path, and instructions to produce the artifact and a short rationale naming the alternatives it considered and what it rejected.
If a candidate produces no output, proceed with N-1 and note the dropout.