arena-skill
Jakeschincariol · Jakeschincariol/arena-skill
Skill Claude Code này cho phép người dùng đặt 100 sub-agent với các chiến lược khác nhau đối đầu nhau trên cùng một nhiệm vụ, xác định giải pháp mạnh mẽ nhất bằng cách yêu cầu họ tấn công và bảo vệ công việc của mình.
When Claude keeps giving you bad answers, make 100 versions of it fight to the death. Same task, 100 different strategies, a bracket, one answer left. Free Claude Code skill.
Xem trước
Bạn có thể làm gì với nó
- Tạo ra giải pháp mã mạnh mẽ nhất cho một vấn đề khó bằng cách cho nhiều AI agent cạnh tranh và tinh chỉnh đầu ra của chúng.
- Nhanh chóng đánh giá các chiến lược AI khác nhau cho một nhiệm vụ nhất định và tìm ra cách tiếp cận tối ưu mà không cần nhắc lệnh thủ công rộng rãi.
- Nhận được một câu trả lời mạnh mẽ cho một truy vấn phức tạp, cùng với những lời chỉ trích mà nó đã chịu đựng, để đảm bảo chất lượng và độ tin cậy cao hơn.
Kiểm tra an toàn
Không thấy dấu hiệu rủi ro trong các file đã quét.
Quét tự động các file trong repo. Luôn xem lại code trước khi chạy.
Trích từ README
The Arena skill
When Claude keeps giving you bad answers, make 100 versions of it fight to the death. One Claude Code skill. Free, MIT, no signup, no API key, nothing to connect.
You use it when you are not happy with what Claude gave you. Instead of asking again and again,
/arena spins up 100 sub-agents and gives every one of them the exact same task, word for word.
Each one gets a different strategy card: a way of reasoning, a workflow and a strategy, so each one
attacks the task differently. Then they pair off. Each attacks the other's solution, each defends
and revises its own, and a judge scores the match on a written rubric. The loser is out. 100
becomes 50, then 25, 13, 7, 4, 2, 1.
What comes back is the one solution that survived, the attacks it beat on the way, and how many rounds it took.
It never touches your files. Every sub-agent writes inside .arena/. The winning answer comes
back to you, and using it is your call.
Install
Paste this into Claude:
https://github.com/Jakeschincariol/arena-skill
Install this skill, then confirm /arena works.
Or copy the folder yourself, in Claude Code:
git clone https://github.com/Jakeschincariol/arena-skill.git
cp -r arena-skill/skills/arena ~/.claude/skills/
Or as a plugin:
/plugin marketplace add Jakeschincariol/arena-skill
/plugin install arena-skill@arena-skill
Claude Code namespaces plugin skills, so installed as a plugin it shows up as /arena-skill:arena.
Copy the folder instead if you want plain /arena. Project-local instead of global: copy the same
folder into your repo's .claude/skills/.
It needs Claude Code, because it spawns sub-agents with the Agent tool, and Python 3.8 or newer. Nothing to pip install.
Use it
/arena
/arena --quick write the headline for our pricing page
/arena --agents 32 fix the flaky test in tests/test_api.py
/arena --seed 7 plan my launch week, I have 6 hours a day
On its own, /arena takes your last request as the task and the answer you did not like as the one
to beat. Claude can also reach for it without the slash, when you say something like "that's a bad
answer, make them compete". When it starts itself like that, it asks before it spends anything.
| flag | what it does |
|---|---|
--agents N | N competitors. Default 100. |
--quick | 16 competitors. The everyday setting. |
--seed S | Same seed, same cards and same bracket. Default random, and recorded. |
--wave W | Sub-agents per wave. Default 10. Only raise it if you raised Claude Code's limit. |
How it works
- Spawn. N sub-agents, one Agent call each. Every one gets the same task text, byte for byte (a test checks it), plus one strategy card. There are 15 reasoning modes (first principles, inversion, analogy, adversarial, constraint first, worked example, Socratic, contrarian, systems thinking and more), 12 workflows (draft, critique, rewrite; outline first; test first; research, then synthesise; three drafts, pick one...) and 12 strategies (simplest thing that works, maximal rigour, user empathy first, edge cases first, speed...). That is 2,160 different cards. The dealer gives each agent its own, with no repeats.
- Attack. Solutions are paired, and the pairing avoids putting two agents with the same reasoning mode against each other. Each side attacks the other's solution through its own card: what is wrong, what requirement it missed, the exact input that breaks it. Up to 7 attacks, labelled FATAL, MAJOR or MINOR.
- Defend. Each side answers every attack it took, conceding or rebutting with evidence, then rewrites its solution to fix everything it conceded.
- Judge. A separate judge sub-agent reads both revised solutions, checks every attack itself,
and scores both on the rubric: correctness 30, completeness against the
task 25, robustness to the attacks raised 20, specificity 15, clarity 10. The judge never sees
the cards.
bracket.pydoes the arithmetic: the higher total goes through, and a solution with a verified fatal flaw cannot beat one without. The loser is out. - Repeat. The survivors carry their revised solutions into the next round. An odd number means one bye, never to the same agent twice while anyone else is waiting for one.
- Result. One solution left. You get it, the attacks it survived, its card and the round count. If you started from an answer you rejected, a last judge compares the winner with it blind and the skill tells you the score, even when the old answer wins.
The 100-agent bracket, from python3 skills/arena/bracket.py plan:
round alive matches bye sub-agent calls waves
spawn 100 - - 100 10
1 100 50 - 250 25
2 50 25 - 125 13
3 25 12 yes 60 8
4 13 6 yes 30 5
5 7 3 yes 15 3
6 4 2 - 10 3
7 2 1 - 5 3
total 595 70
alive per round: 100 -> 50 -> 25 -> 13 -> 7 -> 4 -> 2 -> 1
The whole tournament lives in one JSON file, managed by bracket.py. The main Claude session
only runs the loop and never reads the hundreds of solution files: every sub-agent writes its work
to disk and replies with one line, so the main context holds receipts and bookkeeping, not the
work. If the conversation gets compacted halfway through, bracket.py next picks it up from the
file.
What it costs
The skill is free. The tokens are yours, and 100 agents is a lot of them.
| agents | rounds | sub-agent calls | waves of 10 |
|---|---|---|---|
| 100, the default | 7 | 595 | 70 |
| 64 | 6 | 379 | 49 |
| 32 | 5 | 187 | 28 |
16, --quick | 4 | 91 | 16 |
| 8 | 3 | 43 | 10 |
Add one call when t