opensession: Skill for Claude Code

.agents/skills/pstack-suite/skills/arena/SKILL.md

arena is a skill for Claude Code from tellahq/opensession. It costs 60 tokens per session (1,111 once invoked), scanned A, original, MIT.

A method for asking several independent agents to attempt the same non-trivial task, then combining the strongest parts into one result.

In plain words
What is it for?
Use it to compare alternative designs or artifacts, select a base attempt, merge useful ideas, and verify the combined result.
Why use it?
It reduces the risk of committing early to a weak design or implementation when multiple approaches are possible.

Skill for Claude Code

Written for Claude Code: disable-model-invocation in frontmatter. Also seen: installed under .agents/ (shared by several agents).

This is tellahq/opensession's own configuration. It tells Claude Code how to work on opensession itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything opensession configures →

Reuse

Borrowing it

Nothing to install: this file belongs to tellahq/opensession. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/tellahq/opensession/main/.agents/skills/pstack-suite/skills/arena/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/tellahq/opensession

Made for: Claude Code.

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/tellahq/opensession/arena.svg)](https://agentmods.dev/skills/tellahq/opensession/arena)
Your own site
<a href="https://agentmods.dev/skills/tellahq/opensession/arena"><img src="https://agentmods.dev/badge/skills/tellahq/opensession/arena.svg" alt="Measured on agentmods" height="20"></a>
Per session 60 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,111 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.
Origin original No closer match found 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.00060 $0.01111
Opus 5 $0.00030 $0.00556
Sonnet 5 $0.00012 $0.00222
Haiku 4.5 $0.00006 $0.00111

Measured 3d ago against content hash 03d3a1c4f35e, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, 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 3d 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.

.agents/skills/pstack-suite/skills/arena/SKILL.md · 72 lines

How it starts

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

Arena

Fan out N parallel attempts at the same task. Read every candidate end to end. Pick the strongest as the base. Graft the best ideas from the others into it. Verify the synthesized result.

Start

Keep a checklist with one entry per phase before launching anything. The arena runs autonomously and the list keeps phases from silently disappearing.

  1. Frame
  2. Fan out
  3. Cross-judge
  4. Pick
  5. Graft
  6. Verify

Phase A: Frame

The N candidates will receive the same prompt, so the prompt is the contract. Get it right before spawning anything.

  1. State the artifact each candidate is producing.
  2. Derive the rubric. State what success looks like for this task, then turn it into 3-6 concrete gradeable criteria. Concrete: Adds a --dry-run flag that skips writes. Vague: code is correct. The rubric is the picker's tool in Phase D; candidates only see the task.
  3. Pick the runners. Use the current session or workspace model preset by default. Pass explicit models only when the user or preset provides valid configured ids. Spawn more when the arena covers multiple design directions. The same model N times is appropriate when the work is generation-bound rather than judgment-sensitive.
  4. Assign output paths. Each candidate writes to its own location (a git worktree where possible, otherwise /tmp/arena-<slug>/candidate-<n>/). N candidates writing to the same path is shared mutable state and fails the the separate-before-serializing-shared-state principle skill test.

Phase B: Fan out

Discover the policy-gated Open Session session tools. Spawn all N children in parallel with spawn_task. Use ask mode for read-only artifacts and code mode with separate isolated worktrees for writes. Begin each brief with /pstack and include the task, shared grounding, exclusive output path, verification, and instructions to produce both the artifact and a short rationale.

The rationale is mandatory. Without it, the parent cannot tell whether a candidate's structure is principled or accidental, which makes Phase E grafting unreliable. Each rationale names the alternatives the candidate considered and what it rejected.

Read the full file on GitHub · 72 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. 3d ago First seen · 72 lines · 60 tokens per session scan A 03d3a1c4f35e

Subscribe to this mod's changes

arena is a skill published in the GitHub repository tellahq/opensession (355 stars, last pushed yesterday), licensed MIT. It adds 60 tokens to every session and 1,111 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.

Related

Other skills, from other repositories

systematic-debugging

Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.

obra/superpowers · 21 tokens

local-ai-agents

Build local-first AI agents that run entirely on a developer workstation with Microsoft Foundry Local and Qwen function-calling models. Covers Small Language Models (SLMs), the OpenAI-compatible local endpoint, sandboxed local tools, local RAG with Chroma, local MCP servers, hybrid cloud/local routing, and the…

microsoft/ai-agents-for-beginners · 200 tokens

next-cache-components-adoption

Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…

vercel/next.js · 95 tokens

chat-pet-sprite-creation

Use when creating or changing VS Code chat pet sprite art, sprite sheets, state animations, eye treatments, Stable/Insiders variants, or pet transitions under src/vs/workbench/contrib/chat/browser/widget/media/chatPet.

microsoft/vscode · 53 tokens

cpu-profile-analysis

Analyze V8/Chrome CPU profiles (.cpuprofile) and DevTools trace files (Trace-.json). Use when: profiling performance, investigating slow functions, comparing code paths, finding bottlenecks, analyzing timeToRequest, understanding call trees from sampling profiler data, analyzing layout/paint/rendering, investigating…

microsoft/vscode · 71 tokens

insight-error-page

Write or audit an insight-kind error page for the Next.js dev overlay. Use when creating a new errors/ .mdx page, auditing an existing one, or checking that a page matches the framework fix cards. Covers page structure, title alignment, FixCard cards with Copy prompt button, code snippets, terminology verification…

vercel/next.js · 83 tokens