arena
Run N parallel attempts at one task under distinct constraints, pick a base, graft the best of the others.
Skill by luizhcrocha
Chalk Labs
Need help deploying arena?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
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/luizhcrocha-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
- Run N parallel attempts at one task under distinct constraints, pick a base, graft the best of the others. Use for "arena this" or competing designs of one contested shape.
- License
- MIT
- Instructions
- 55 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Arena Fan out N parallel attempts at the same task, each under a different constraint. Read every candidate end to end. Pick the strongest as the base, graft the best ideas from the others into it, verify the result. Adapted from poteto's pstack (MIT). Open a todo list with the six phases before launching anything: Frame, Fan out, Cross-judge, Pick, Graft, Verify. ## 1. Frame Every runner gets the same task, so the brief is the contract. 1. **The artifact.** State what each candidate produces: a design sketch, a module, a document, a script. 2. **The rubric.** State what success looks like for *this* task, then turn it into 3 to 6 concrete, gradeable criteria. The rubric is for the judge and the picker; runners see only the task. 3. **The constraints.** N runners, default 3. Diversity comes from a distinct constraint per runner, all on the same model: - A design task (an interface, a module, a seam) takes the constraints from `tstack:codebase-design`'s [DESIGN-IT-TWICE.md](../codebase-design/DESIGN-IT-TWICE.md): minimize the interface, maximize flexibility, optimize for the common caller, and ports & adapters when a dependency crosses the seam. - Any other task: write N distinct approaches, each a different whole shape (a different data structure, a different decomposition, a different owner of the hard part), not flavors of one. 4. **The output paths.** Each runner writes to its own place, per Separate Before Serializing Shared State (`tstack:principles`). In a jj repo: `jj workspace add ../<repo>-arena-<n> -r <base> --name arena-<n>`, one per runner, from the same base. Outside a repo: `<scratchpad>/arena-<slug>/candidate-<n>/`. Done when the artifact, the rubric, N constraints and N output paths are written down. ## 2. Fan out Spawn all N runners in one message: fresh agents playing the Implementer role ([MODELS.md](../../productivity/coordinator/MODELS.md)), `run_in_background: true`. Each brief carries the task, pointers to the shared grounding (files, not pasted content), its one constraint, its output path, and an order to produce the artifact and a short rationale naming the alternatives it considered and what it rejected. Tell each runner it is one of several: build the best candidate its constraint allows, and skip hedging toward a safe middle, since the differences between candidates are the signal. A runner that produces nothing drops out: continue with N-1 and note the dropout. Done when every runner has returned or dropped out. ## 3. Cross-judge Once every candidate is written, spawn one judge: a fresh agent that ran nothing in this arena, playing the Decider role, read-only, in the background (if the Decider's model is unavailable, take its fallback from MODELS.md and say so in the reply). It gets the rubric and the candidates by neutral labels (A, B, C), without the constraint each ran under, scores each criterion per candidate, and recommends a base with its reason. It runs while you read in step 4. ## 4. Pick a base Read every candidate end to end before picking. Score each against the rubric criterion by criterion, not on holistic feel, then compare with the judge. 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 candidate a future maintainer can extend most easily without breaking its invariants. When two feel tied, take the cleaner seam or the smaller interface, per the Laziness Protocol. Done when the pick and its reason, with the judge's verdict, are in the synthesis note. ## 5. 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 Redesign from First Principles, so the result stays coherent under one mental model; pasting whole blocks from a loser breaks that. Record each graft with its source candidate, and each rejection with its reason. - **Convergence**: the candidates landed on the same shape. That is a strong agreement signal: note it and ship the consensus shape; no graft is needed. - **Divergence**: the candidates share almost nothing. Step 1 was under-specified: reframe and re-run rather than averaging the divergence. In a jj repo the grafted result lands in the caller's workspace (the base candidate's change squashed or rebased in, grafts on top), and every `arena-<n>` workspace goes: `jj workspace forget arena-<n>`, then remove its directory, and abandon the candidate changes not kept. Done when the grafts are in and no arena workspace is left. ## 6. Verify The synthesized artifact holds up under the same scrutiny as any other output, per Prove It Works: run it, test it, read the real output. A problem the arena missed means step 1 was wrong (reframe and re-run) or one candidate caught it and the graft was missed (back to step 5); fix the cause rather than patching over it. ## Output One synthesized artifact, and beside it a short **synthesis note**: the base and why, the judge's verdict, each graft with its source candidate, the rejections with reasons, convergence or divergence, dropouts, and the verification result.
From luizhcrocha/skills, MIT.
More from luizhcrocha/skills
- 0.570score
lang-c
luizhcrocha
C rules and taste for tstack (C23, GCC/Clang, sanitizers, clang-tidy, QMK keymaps).
SkillAFreshness: AClaude Code +9 - 0.567score
architect
luizhcrocha
Sketch types, signatures and the module map from competing candidates before code, then implement against it.
SkillAFreshness: AClaude Code +9 - 0.567score
apple-design
luizhcrocha
Apple's fluid-interface principles for the web: springs, velocity handoff, momentum, rubber-banding, materials, type.
SkillAFreshness: AClaude Code +9 - 0.567score
create-verification-skill
luizhcrocha
Generate a project-local verify-<app> skill that launches the app and drives it like a user, with a feature map.
SkillAFreshness: AClaude Code +9 - 0.567score
design-engineering
luizhcrocha
Craft rules for web UI polish (press states, origins, transforms, clip-path, gestures, performance, accessibility) and a Before/After review table.
SkillAFreshness: AClaude Code +9 - 0.567score
how
luizhcrocha
Explain how code works, as onboarding a senior engineer.
SkillAFreshness: AClaude Code +9 - 0.567score
interrogate
luizhcrocha
Adversarial review: three fresh reviewers (correctness and security, maintainability, intent) try to break a change; the lead gives a verdict.
SkillAFreshness: AClaude Code +9 - 0.561score
explain
luizhcrocha
Explain a piece of work plainly (what, how, why) as one conversational account.
SkillAFreshness: AClaude Code +9 - 0.561score
figure-it-out
luizhcrocha
Design an auditable bespoke playbook when no tuca-mode playbook fits.
SkillAFreshness: AClaude Code +9 - 0.561score
find-animation-opportunities
luizhcrocha
Find places in a UI that don't animate but should, and reject the ones that shouldn't; read-only, exact values.
SkillAFreshness: AClaude Code +9 - 0.561score
improve-animations
luizhcrocha
Audit a codebase's animation and motion code and write prioritized, self-contained fix plans for other agents; read-only on source.
SkillAFreshness: AClaude Code +9 - 0.561score
animate
luizhcrocha
Build an animation or transition that passes review-animations, or name a motion effect ("what's it called when...").
SkillAFreshness: AClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 8, 2026 (22 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/luizhcrocha/skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from luizhcrocha
- 0.570score
lang-c
luizhcrocha
C rules and taste for tstack (C23, GCC/Clang, sanitizers, clang-tidy, QMK keymaps).
SkillAFreshness: AClaude Code +9 - 0.567score
create-verification-skill
luizhcrocha
Generate a project-local verify-<app> skill that launches the app and drives it like a user, with a feature map.
SkillAFreshness: AClaude Code +9 - 0.567score
apple-design
luizhcrocha
Apple's fluid-interface principles for the web: springs, velocity handoff, momentum, rubber-banding, materials, type.
SkillAFreshness: AClaude Code +9 - 0.567score
architect
luizhcrocha
Sketch types, signatures and the module map from competing candidates before code, then implement against it.
SkillAFreshness: AClaude Code +9 - 0.567score
design-engineering
luizhcrocha
Craft rules for web UI polish (press states, origins, transforms, clip-path, gestures, performance, accessibility) and a Before/After review table.
SkillAFreshness: AClaude Code +9 - 0.567score
how
luizhcrocha
Explain how code works, as onboarding a senior engineer.
SkillAFreshness: AClaude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get arena running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
arena skill. Agent Mart. https://agentmart.dev/skills/luizhcrocha-arena (last updated 2026-10-24)