arena
Spawn N parallel candidates at the same task, pick a base, graft the strongest parts of the losers into it.
Skill by MaxFabian25
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/maxfabian25-arena
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: productivity
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/arena
What's inside
- Skill name
arena- Description
- Spawn N parallel candidates at the same task, pick a base, graft the strongest parts of the losers into it. Use for /arena, 'arena this', 'throw it in the arena', or when one attempt at a non-trivial artifact would lock in the wrong shape.
- License
- MIT
- Instructions
- 44 lines in SKILL.md · view on GitHub
Before installing
- Instructions read files in your home folder (~/.ssh, ~/.aws…)
Files (2)
- SKILL.md
- openai.yaml · agents/
SKILL.md (first lines)
# 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. 1. State the artifact each candidate is producing. 2. 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. 3. Pick the runners. Use the `arena runners` line in `~/.config/pstack/models.md`. If the file or that line is missing, default to the role's entries in [harnesses.md](../poteto-mode/references/harnesses.md) (Defaults), one Claude-family runner and one GPT-family runner. The family this harness does not run natively goes on a cross-harness seat. An `auto` or `inherit-parent` entry in this line or the cross-judge line means the parent model, so omit `model` for it. Apply every entry per [harnesses.md](../poteto-mode/references/harnesses.md) (Models). If a tool rejects a configured entry, run that seat on its family's default and say so. Families are Claude and GPT, read from the model after any `codex:` or `claude:` prefix, and a default `inherit-parent` is the parent's family. With no family match, use the default's first entry. If it rejects a default, resolve and apply per [harnesses.md](../poteto-mode/references/harnesses.md) (Models), or drop that seat and say so when no valid model remains. If dropped seats leave fewer than two runners, add runners on a remaining runner's model until there are two, or one when the configured line has one entry. If none remain, omit `model` to inherit the parent, and report the fallback. 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. 4. 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. ## Phase C: Cross-judge After all Phase B candidates complete, read the `arena cross-judge pool` line in `~/.config/pstack/models.md`, or the role's defaults in [harnesses.md](../poteto-mode/references/harnesses.md) (Defaults) when absent. The judge must be from a different model family from the parent's, using the families defined in Phase A. Try eligible pool entries in order. An `auto` or `inherit-parent` entry never judges. Resolve and apply each entry per that reference's Models section; use its read-only agent row or a read-only cross-harness seat. If a model is rejected, use a valid effort for that same model, then try the next eligible entry. If no eligible entry runs, try eligible defaults unless the user explicitly restricted the allowed models. If none runs, skip the judge, pick the base alone in Phase D, and say so. If the parent's model is unknown, try real pool entries in order and report that the family check could not run. The judge sees the rubric and candidates by path label, scores each criterion, and recommends a base with rationale. It runs alongside your reading in Phase D, only after candidates stop writing. ## Phase D: Pick a base Read every candidate end to end before picking. Score each against the rubric criterion by criterion, not on holistic feel, and compare with the cross-judge when Phase C ran one. Agreement on the base confirms the pick. Disagreement means one of you is biased or the rubric was ambiguous. Read both rationales before deciding. Pick the base a future maintainer can extend most easily without breaking invariants. When two feel tied, prefer the cleaner boundary or smaller API, per the Laziness Protocol. ## Phase E: Graft Walk each losing candidate once more for what is worth porting into the base, usually one or two things per candidate, not most of it. Fold each graft in by hand, per the **redesign-from-first-principles** principle skill, so the result stays coherent under one mental model. Don't paste mechanically. If the candidates converge on one shape, that is strong agreement. Note it and ship the consensus shape. No graft is needed. If they wildly diverge, Phase A was under-specified. Reframe and re-run rather than averaging the divergence. ## Phase F: Verify Verify the synthesized artifact like any other output, per the **prove-it-works** principle skill. If verification finds a problem the arena missed, either Phase A was wrong (re-frame and re-run) or a candidate caught it and you missed the graft (go back to Phase E). Don't paper over it. ## Outputs One synthesized artifact, with a short synthesis note alongside naming the base and why, the cross-judge's verdict or that Phase C skipped the judge, each graft with its source candidate, what was rejected and why, any convergence or dropouts, and the verification result.
From MaxFabian25/pstack-harness-adaptations, MIT.
More from MaxFabian25/pstack-harness-adaptations
- 0.541score
architect
MaxFabian25
Sketch types, signatures, and module structure before code, then stay in the loop while implementation fills in.
SkillAFreshness: AClaude Code +9 - 0.541score
create-verification-skill
MaxFabian25
Generate a project-local verification skill that drives your app the way a user does — any language, framework, or platform.
SkillAFreshness: AClaude Code +9 - 0.541score
how
MaxFabian25
Use for "how does X work", code walkthroughs before changing something, and placement / ownership / layering questions ("where should this live", "which…
SkillAFreshness: AClaude Code +9 - 0.541score
interrogate
MaxFabian25
Use for "interrogate", "adversarial review", "multi-model review", "challenge this", "stress test this code", "find blind spots", or "tear this apart".
SkillAFreshness: AClaude Code +9 - 0.539score
benchmark-checklist
MaxFabian25
Vet a perf measurement (limiter, tuning, limits, errors, repeatability, relevance, and whether the work happened) before you report or act on it.
SkillAFreshness: AClaude Code +9 - 0.536score
maintain-verification-skill
MaxFabian25
Periodic pass that keeps a project's verification skill and feature map honest: parallel source readers per feature, one live session driving every feature…
SkillAFreshness: AClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 14, 2026 (15 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from MaxFabian25
- 0.541score
how
MaxFabian25
Use for "how does X work", code walkthroughs before changing something, and placement / ownership / layering questions ("where should this live", "which…
SkillAFreshness: AClaude Code +9 - 0.541score
interrogate
MaxFabian25
Use for "interrogate", "adversarial review", "multi-model review", "challenge this", "stress test this code", "find blind spots", or "tear this apart".
SkillAFreshness: AClaude Code +9 - 0.541score
architect
MaxFabian25
Sketch types, signatures, and module structure before code, then stay in the loop while implementation fills in.
SkillAFreshness: AClaude Code +9 - 0.541score
create-verification-skill
MaxFabian25
Generate a project-local verification skill that drives your app the way a user does — any language, framework, or platform.
SkillAFreshness: AClaude Code +9 - 0.539score
benchmark-checklist
MaxFabian25
Vet a perf measurement (limiter, tuning, limits, errors, repeatability, relevance, and whether the work happened) before you report or act on it.
SkillAFreshness: AClaude Code +9 - 0.536score
maintain-verification-skill
MaxFabian25
Periodic pass that keeps a project's verification skill and feature map honest: parallel source readers per feature, one live session driving every feature…
SkillAFreshness: AClaude Code +9
Cite this page
arena skill. Agent Mart. https://agentmart.dev/skills/maxfabian25-arena (last updated 2026-10-24)