arena

arena is a skill for Claude Code from michael-denyer/pstack-claude. It costs 58 tokens per session (1,386 once invoked), scanned A, a copy of arena, MIT.

A workflow for running several parallel attempts at the same task, comparing them, combining the strongest parts, and checking the final result.

In plain words
What is it for?
Use it for non-trivial artifacts where multiple candidate solutions can be judged against clear criteria and merged into one verified result.
Why use it?
It reduces the risk of committing early to a weak approach on a difficult task.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin. Also seen: mentions subagents; mentions Claude Code; mentions Codex.

Part of the pstack plugin — 69 skills, 4 agents, 1 hook shipped together

Good fit Use it for non-trivial artifacts where multiple candidate solutions can be judged against clear criteria and merged into one verified result.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/michael-denyer/pstack-claude/arena
About the project

pstack-claude is a set of opinionated coding-agent skills and workflows ported from Cursor to Claude Code, Codex, Pi, and other agent harnesses. It guides agents toward concise, simple, and verified code by routing goals to suitable workflows and supporting subagent tools. The catalogue entries are the project's skills, agents, hook, and plugin implementations for these agent environments.

michael-denyer/pstack-claude · 3,302 stars · on GitHub

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add michael-denyer/pstack-claude --skill arena
Clone the repo
git clone --depth 1 https://github.com/michael-denyer/pstack-claude

Made for: Claude Code.

Or install pstack, the plugin that ships this one along with the rest of its 69 skills, 4 agents, 1 hook.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for arena

README.md
[![agentmods](https://agentmods.dev/badge/skills/michael-denyer/pstack-claude/arena/github.svg)](https://agentmods.dev/skills/michael-denyer/pstack-claude/arena)
Your own site
<a href="https://agentmods.dev/skills/michael-denyer/pstack-claude/arena"><img src="https://agentmods.dev/badge/skills/michael-denyer/pstack-claude/arena/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for arena

Your own site · 80×15
<a href="https://agentmods.dev/skills/michael-denyer/pstack-claude/arena"><img src="https://agentmods.dev/badge/skills/michael-denyer/pstack-claude/arena.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 58 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,386 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • Socket pass 20 Oct 2026
  • Snyk pass 20 Oct 2026
How audits are shown
Origin 86% copy Near-identical to another mod in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00058 $0.01386
Opus 5.5 $0.00023 $0.00554
Sonnet 5.5 $0.00012 $0.00277
Haiku 4.5 $0.00006 $0.00139

Measured 2d ago against content hash 81327dd64a4e, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

arena scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

This is a copy

86% identical to arena — 15 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

plugins/pstack/skills/arena/SKILL.md · 65 lines

How it starts

The opening of the file, as written. The whole thing — 65 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Arena

On Codex, read the platform mapping, including its per-skill notes, before following this skill.

On GitHub Copilot, read the platform mapping, including its per-skill notes, before following this skill.

On Muse, read the platform mapping, including its per-skill notes, before following this skill.

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 pstack-models.md. If the sheet or that line is missing, run one each on the defaults in Models. An auto or inherit-parent entry in this line or the cross-judge line means the parent model, so omit model for it. If the Agent tool rejects a configured entry, run that seat on its family's default and say so. Families go by model name, such as Opus, Fable, or Sonnet. With no family match, use the single-role default in Models. If it rejects a default, use the closest valid slug of the same family from its error message. 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 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.

Read the full file on GitHub · 65 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago Changed · +2 lines 81327dd64a4e
  2. 7d ago Changed 7fea2b6eb1e6
  3. 10d ago Changed · -23 lines cd3773b64fd6
  4. 14d ago Changed 7807e00c4ad6
  5. 17d ago Changed · +2 lines 26e8365a64c3
  6. 27d ago Changed · +4 lines f59c0e268fef
  7. 29d ago Changed 5590eb0d3e52
  8. 1mo ago Changed 62592f511ccd
  9. 1mo ago Changed 707c2da187a1
  10. 1mo ago First seen · 80 lines · 58 tokens per session scan A a6db34a09d02

Subscribe to this mod's changes

arena is a skill published in the GitHub repository michael-denyer/pstack-claude (3,302 stars, last pushed today), licensed MIT. It adds 58 tokens to every session and 1,386 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. It is 86% identical to arena, differing in 15 lines, and is treated as a copy.

Related

Other skills, from other repositories

nft-standards

Implement NFT standards (ERC-721, ERC-1155) with proper metadata handling, minting strategies, and marketplace integration. Use when creating NFT contracts, building NFT marketplaces, or implementing digital asset systems.

wshobson/agents · 48 tokens

postgresql-table-design

Use this skill when designing or reviewing a PostgreSQL-specific schema. Covers best-practices, data types, indexing, constraints, performance patterns, and advanced features.

wshobson/agents · 37 tokens

istio-traffic-management

Configure Istio traffic management including routing, load balancing, circuit breakers, and canary deployments. Use when implementing service mesh traffic policies, progressive delivery, or resilience patterns.

wshobson/agents · 40 tokens

workflow-orchestration-patterns

Design durable workflows with Temporal for distributed systems. Covers workflow vs activity separation, saga patterns, state management, and determinism constraints. Use when building long-running processes, distributed transactions, or microservice orchestration.

wshobson/agents · 49 tokens

cl-analyze

Analyze one ClosedLoop feature ticket from a URL or FEA slug before execution. Use when asked to assess ticket complexity, feasibility, readiness, applicable requirements PRDs and missing PRD links, UI design guidance, human UI plan approval needs, blockers, legacy split lineage, merge-batch compatibility, nonsensical…

closedloop-ai/claude-plugins · 144 tokens

software-ai-integration

Applies production AI integration patterns for chat, structured output, guardrails, provider routing, and AI UX. Use when adding LLM-powered features to an application.

vasilyu1983/AI-Agents-public · 38 tokens