AI 도구
아레나(arena) 설치 가이드: Claude Code 서브에이전트 여러 명 경쟁시켜 최선안 뽑는 법
지금 다 못 읽겠다면 · 이 가이드 링크를 메일로 받기
목차 · 9개 섹션
클로드한테 한 번 시킨 답, 그대로 믿고 쓰시나요?
**아레나(arena)**는 같은 일을 클로드 여러 명에게 동시에 맡기고, 심사 AI가 점수를 매겨 제일 나은 답을 고른 다음, 떨어진 답에서 잘한 부분만 가져와 붙여주는 Claude Code 스킬입니다. 무료(MIT 라이선스)고, 파일 하나만 넣으면 됩니다.
제가 직접 돌려봤더니 셋 중 둘이 틀렸어요. 올해 바뀐 공휴일 법을 몰랐거든요. 심사 AI는 맞힌 하나를 정확히 골랐고요.
이 글은 2026년 9월 28일 실측(Claude Code 2.1.280)과 10월 11일 레포 재확인을 바탕으로 정리했습니다. 설치법, 쓰는 법, 실측 결과, 그리고 어떤 과제에 써야 본전을 뽑는지 순서대로 갑니다.
아레나가 하는 일
한 번 물어보고 마음에 안 들면 다시 물어보는 대신, 처음부터 여러 명에게 똑같은 과제를 줍니다. 스킬 파일에 적힌 단계는 여섯 개예요.
- Frame — 과제와 채점 기준(3~6개 항목)을 정합니다. 후보들은 과제만 보고, 채점 기준은 못 봅니다.
- Fan out — 후보 서브에이전트들을 한 번에 띄웁니다. 각자 다른 폴더에 따로 작업하고, “뭘 고려했고 뭘 버렸는지” 짧은 메모를 같이 냅니다.
- Cross-judge — 후보가 다 끝나면 심사 에이전트 한 명이 채점 기준대로 항목별 점수를 매기고 기반으로 쓸 답을 추천합니다.
- Pick — 메인 클로드도 모든 답을 끝까지 읽고 따로 채점한 뒤, 심사와 비교해 기반이 될 답을 고릅니다.
- Graft — 떨어진 답에서 쓸 만한 것(보통 한 답에서 한두 개)만 골라 기반 답에 손으로 옮깁니다. 통째로 붙여넣지 않습니다.
- Verify — 합친 결과를 다시 검증합니다.
결과물은 합쳐진 결과 하나 + 합성 기록(synthesis note) 하나예요. 합성 기록에는 어느 답을 기반으로 골랐는지, 심사 점수, 어디서 무엇을 가져왔는지, 무엇을 버렸는지가 남습니다.
참고 — 원래 이 스킬을 소개한 해외 릴스는 “서브에이전트 100개”라고 했는데, 스킬 파일 어디에도 100이라는 숫자는 없습니다. 제가 돌렸을 때는 후보 3명 + 심사 1명이었어요. 기본 후보 수는 버전마다 다른데, 아래 설치 섹션에 적어뒀습니다.
설치
아레나는 pstack 이라는 스킬 묶음 안에 들어 있는 스킬 하나입니다. pstack은 개발자 poteto가 “Cursor에서 매일 쓰는 스킬”이라며 공개한 것이고, Cursor 공식 플러그인 레포에 있어요.
- 레포:
cursor/plugins· 위치:pstack/skills/arena/SKILL.md(파일 하나, 약 4KB) - 라이선스: pstack 폴더의 LICENSE 원문 기준 MIT (Copyright 2026 Lauren Tan). GitHub 레포 정보 화면에는 라이선스가 표시되지 않으니 폴더 안 파일로 확인하세요.
- 레포 스타: 10,753개 (2026-10-11, GitHub API 기준)
Claude Code에 넣기 — 파일 하나 복사
내 계정 전체에서 쓰려면 ~/.claude/skills/ 아래에, 특정 프로젝트에서만 쓰려면 그 프로젝트의 .claude/skills/ 아래에 넣습니다.
# 내 계정 전체에서 쓰기
mkdir -p ~/.claude/skills/arena
curl -fsSL https://raw.githubusercontent.com/cursor/plugins/main/pstack/skills/arena/SKILL.md \
-o ~/.claude/skills/arena/SKILL.md
# 이 프로젝트에서만 쓰기 (프로젝트 폴더에서 실행)
mkdir -p .claude/skills/arena
curl -fsSL https://raw.githubusercontent.com/cursor/plugins/main/pstack/skills/arena/SKILL.md \
-o .claude/skills/arena/SKILL.md
제가 9월 28일에 돌릴 때도 이 파일 하나만 복사했고, Cursor 전용 설정 파일이 없어도 기본값으로 잘 돌았습니다.
설치 확인
Claude Code를 새로 열고 /ar 까지 쳐보세요. 명령 목록에 /arena 가 뜨면 끝입니다.
함정 1 — README의 설치 명령은 Cursor용입니다
pstack README에는 설치 명령이 /add-plugin pstack 으로 적혀 있는데, 이건 Cursor에서 치는 명령입니다. Claude Code용 플러그인 목록(.claude-plugin/marketplace.json)에는 2026년 10월 11일 기준 pstack이 없어서 claude plugin install 로는 못 깝니다. 위처럼 파일을 직접 넣으세요.
함정 2 — 버전에 따라 기본 후보 수가 다릅니다
스킬 파일은 계속 고쳐지고 있습니다. 후보를 몇 명 띄울지는 파일 안 “Pick the runners” 줄이 정하는데, 설정 파일이 없을 때의 기본값이 이렇게 바뀌었어요.
| 버전 | 기본 후보 |
|---|---|
| 9월 23일 버전 (제가 실측한 버전) | 3명 — opus·gpt·grok 계열 하나씩 |
| 10월 6일 이후 (지금 main) | 2명 — opus·grok 계열 하나씩 |
지금 버전으로 깔았는데 후보 3명을 원하면 과제에 “후보 3명으로” 라고 같이 적어보세요. 스킬도 “설계 방향이 여러 개면 더 띄우라”고 적어두긴 했는데, 이 문구로 후보 수가 바뀌는지는 제가 직접 확인하진 못했습니다. 제가 실측한 파일 그대로 쓰고 싶으면 그때 커밋으로 고정해서 받으세요.
mkdir -p ~/.claude/skills/arena
curl -fsSL https://raw.githubusercontent.com/cursor/plugins/12d587dfb20741cafc376c42c696c5f6e2a64487/pstack/skills/arena/SKILL.md \
-o ~/.claude/skills/arena/SKILL.md
함정 3 — 모델 이름이 Cursor 기준이라 Claude Code에서는 바꿔서 돕니다
스킬에 적힌 기본 모델(claude-opus-…, gpt-…, grok-…)은 Cursor에서 쓰는 이름입니다. Claude Code에서는 그대로 못 부르는 경우가 있어서, 클로드가 쓸 수 있는 모델로 바꿔서 돌립니다. 제 실측에서도 opus 자리는 sonnet으로, grok 자리는 다른 클로드 모델로 대신 돌았어요.
그래서 “여러 회사 모델끼리 경쟁”은 Claude Code만으로는 재현되지 않습니다. 아무 플러그인 없는 Claude Code라면 클로드 모델끼리 겨룹니다. (제 컴퓨터에는 Codex 연동 플러그인이 깔려 있어서 후보 하나와 심사가 GPT 계열로 돌았습니다. 아래 실측 결과는 그 환경 기준이에요.)
쓰는 법 — 슬래시 아레나를 직접 칩니다
/arena 할 일
자동으로 켜지지 않습니다. 스킬 파일 맨 위에 disable-model-invocation: true 가 들어 있어서, 클로드가 “이건 아레나로 돌려야겠다” 하고 스스로 부르지 않아요. Claude Code 공식 문서도 이 설정을 “클로드가 자동으로 실행하지 못하게 막는 것”이라고 설명합니다. 쓰고 싶을 때 직접 /arena 를 쳐야 합니다.
예시는 이런 식입니다.
/arena 한국 공휴일·대체공휴일 계산기를 파이썬 파일 하나로 만들어줘. 2024~2030년, 현행법 기준. 표준 라이브러리만.
/arena 이 함수 리팩터링 방향을 세 가지로 잡아서 비교해줘. 동작은 그대로 유지. 후보 3명으로.
요령 — 과제 문장이 곧 계약서입니다
스킬 파일에 “모든 후보가 같은 프롬프트를 받으니, 프롬프트가 계약서”라고 적혀 있습니다. 후보들은 채점 기준을 못 보고 과제만 보거든요.
- 무엇을 만들지(파일 하나, 함수 몇 개, 입력·출력)를 구체적으로 씁니다.
- 기준 시점을 씁니다. “현행법 기준”, “2026년 최신 기준”처럼요. 제 실측에서 이 한 줄이 승부를 갈랐습니다.
- 맞았는지 확인할 방법을 같이 주면 좋습니다. 테스트 명령, 예시 입력과 정답 몇 개 같은 것이요.
끝나면 볼 것
합성 기록 파일을 먼저 여세요. 제 실측에서는 작업 폴더에 ARENA-SYNTHESIS.md 로 남았습니다(파일 이름은 실행마다 달라질 수 있어요). 어느 후보가 왜 뽑혔는지, 심사 점수가 몇 점이었는지, 다른 후보에서 무엇을 가져왔는지가 다 적혀 있어서 결과를 믿을지 판단하기 좋습니다.
직접 돌려본 결과 (2026-09-28)
같은 과제를 아레나 1번, 에이전트 1명에게 따로 시켜서 비교했습니다. 채점은 스킬이 못 보는 곳에 숨겨둔 검사로 했어요.
3차 — 올해 바뀐 법을 1명만 알았다
과제는 한국 공휴일·대체공휴일 계산기(2024~2030년) + 영업일 계산. 규칙은 알려주지 않고 “현행법 기준으로” 한 줄만 줬습니다. 채점은 숨긴 검사 2,996개(공휴일 날짜 + 날짜별 영업일 판정 + 영업일 더하기)입니다.
배경: 2026년 4월 30일 공포된 대통령령 제36290호(관공서의 공휴일에 관한 규정 개정, 5월 1일 시행)로 노동절(5월 1일)과 제헌절(7월 17일)이 공휴일이 됐고, 둘 다 대체공휴일도 적용됩니다. 모델이 학습한 뒤에 바뀐 법이에요.
| 후보 | 결과 | 심사 점수 |
|---|---|---|
| 후보 1 (sonnet) | 개정을 스스로 찾아 2026년부터 적용 → 유일한 만점 | 49/50 |
| 후보 2 (Codex) | 코드는 깔끔했지만 개정 전 법 → 공휴일 12일 누락 | 42/50 |
| 후보 3 (클로드) | 개정 전 법 + 2027년 설날 날짜를 하루 틀림 | 40/50 |
- 심사는 후보 1을 기반으로 추천했고, 메인 클로드의 따로 채점(47/41/43점)도 같은 답을 골랐습니다.
- 그다음 후보 3에서 날짜·시간이 같이 들어온 입력을 처리하는 부분을 가져와 붙였습니다. 후보 1에는 7월 17일 오전 10시를 넣으면 “영업일”이라고 답하는 버그가 있었는데, 후보 3의 처리 방식으로 고쳐졌어요.
- 최종 결과: 2,996개 검사 만점. 걸린 시간 2,923초(약 49분).
정직하게 덧붙이면 — 아레나가 “1명보다 항상 낫다”는 아닙니다. 같은 과제를 1명에게 세 번 따로 시켰더니 1회차는 틀렸고(2,933/2,996, 노동절·제헌절 누락에 2028년 설날 날짜 오류), 2·3회차는 웹 검색으로 개정을 찾아내 만점이었어요. 아레나의 값어치는 여러 명 중 한 명만 맞혀도 그걸 골라내 준다는 데 있습니다. 한 번 돌려서 틀린 답을 받을 확률을 줄이는 보험에 가깝습니다.
1·2차 — 쉬운 과제에서는 차이가 없었다
| 실측 | 과제 | 1명 | 아레나 |
|---|---|---|---|
| 1차 | 시간 문자열 파서("1h30m" → 초), 숨긴 테스트 36개 | 36/36 · 197초 | 36/36 · 1,499초(약 25분) |
| 2차 | 3차와 같은 공휴일 계산기, 단 규칙과 음력 날짜를 프롬프트에 다 알려줌 | 3번 모두 만점 · 507~725초 | 만점 · 3,244초(약 54분) |
1차에서 아레나가 다르게 한 건 애매한 입력 해석 정도였습니다("30m1h"처럼 순서가 뒤집힌 입력을 거부하는 등). 버그를 고쳤다기보다 정책을 고른 쪽이에요. 정답을 다 알려주면 여러 명을 띄워도 얻을 게 없다는 게 1·2차 결론입니다.
시간과 사용량
| 실측 | 1명 | 아레나 |
|---|---|---|
| 1차 (시간 파서) | 197초 · 약 $2.13 | 1,499초 · 약 $17.68 |
| 2차 (공휴일, 규칙 줌) | 507~725초 | 3,244초 · 약 $34.13 |
| 3차 (공휴일, 규칙 안 줌) | 781 | 2,923초 · 약 $51.26 |
- 시간은
time으로 잰 실제 경과 시간, 금액은 Claude Code가 결과에 표시한 정가 환산입니다. - 저는 구독(로그인)으로 돌려서 실제로 청구되진 않았지만, 사용 한도는 그만큼 씁니다. API 키로 쓰면 이 금액이 실제로 나갑니다.
- 한 번에 25~54분 걸렸습니다. 기다리면서 보는 용도가 아니라, 점심 먹는 동안이나 다른 일 하는 동안 돌려두는 용도예요.
잘 먹히는 과제 고르는 법
1·2·3차를 돌려보고 나니 기준이 꽤 분명해졌습니다. 시간이 1명보다 몇 배씩 들기 때문에, 틀렸을 때 손해가 그 시간보다 클 때만 쓰는 게 맞아요.
이럴 때 쓰세요
- 틀리면 곤란한 일. 돈·날짜·법·계약처럼 틀린 걸 모르고 쓰면 나중에 크게 터지는 일. 제 공휴일 계산기가 딱 그랬습니다. 1명에게만 시켰으면 노동절이 빠진 계산기를 그대로 믿고 썼을 거예요.
- 모델이 학습한 뒤에 바뀐 사실이 걸린 일. 올해 바뀐 법·요금·정책·라이브러리 버전처럼요. 누군가 한 명이라도 찾아내면 심사가 그걸 골라냅니다. 과제에 “현행 기준”, “최신 확인”을 꼭 넣으세요.
- 정답이 하나로 안 정해지고 설계 판단이 갈리는 일. 구조 설계, API 모양, 리팩터링 방향처럼 “한 번 잡으면 되돌리기 힘든” 일. 스킬 설명에도 “한 번의 시도가 잘못된 모양으로 굳어버릴 수 있을 때” 쓰라고 적혀 있습니다.
- 맞았는지 확인할 방법이 있는 일. 테스트나 정답 예시가 있으면 심사와 검증 단계가 제대로 일합니다.
이럴 땐 아깝습니다
- 규칙과 정답을 이미 다 알려줄 수 있는 일. 2차처럼 1명도 바로 맞힙니다. 시간만 4.5~6.4배 듭니다.
- 간단하고 정답이 뻔한 일. 1차 시간 파서처럼 결과가 같습니다.
- 틀려도 바로 보이고 바로 고칠 수 있는 일. 문구 하나, 작은 버그 하나는 다시 물어보는 게 빠릅니다.
- 빨리 답이 필요한 일. 한 번에 25분 넘게 걸립니다.
30초 체크리스트
/arena 를 치기 전에 이 세 가지를 물어보세요.
- 이게 틀린 채로 쓰이면, 30분 넘게 손해 보나?
- 모델이 모를 수도 있는 최근 변화가 걸려 있나? 또는 방향이 여러 갈래로 갈리나?
- 결과가 맞는지 확인할 방법(테스트·정답 예시)을 줄 수 있나?
1번이 “예”고 2·3번 중 하나라도 “예”면 돌릴 만합니다. 1번이 “아니오”면 그냥 한 번 물어보세요.
알아둘 것
- 스킬은 무료지만 사용량은 듭니다. 후보 수만큼 서브에이전트가 돌아서 1명 돌릴 때보다 사용량이 몇 배 나옵니다(위 표).
- 후보 모델은 환경에 따라 다릅니다. 플러그인 없는 Claude Code면 클로드 모델끼리, Codex 연동 같은 플러그인이 있으면 다른 회사 모델이 섞일 수 있습니다.
- 스킬 파일이 참조하는 다른 파일은 없어도 돕니다. 스킬 본문이 pstack의 다른 원칙 스킬(prove-it-works 등)과 Cursor 설정 파일(
~/.cursor/rules/pstack-models.mdc)을 언급하지만, 없으면 기본값으로 진행합니다. 제 실측도 파일 하나로만 돌렸습니다. - 후보들이 제각각이면 과제를 다시 쓰세요. 스킬도 “후보들이 크게 갈리면 과제 정의가 부족한 것이니 평균 내지 말고 다시 짜서 돌리라”고 적어둡니다.
- 연습용 폴더에서 처음 돌려보세요. 후보마다 폴더를 따로 만들고 파일을 씁니다.
3줄 요약
- 설치:
SKILL.md하나를~/.claude/skills/arena/에 넣기 (README의/add-plugin은 Cursor용) - 실행: 자동으로 안 켜지니
/arena 할 일을 직접 치기. 한 번에 25~54분 - 틀리면 곤란하고, 모델이 모를 최근 변화가 걸린 일에만 쓰기. 정답을 다 알려줄 수 있는 일엔 아깝습니다
출처
- arena 스킬 원문: cursor/plugins · pstack/skills/arena/SKILL.md
- pstack README·LICENSE: cursor/plugins · pstack
- Claude Code 공식 문서, Extend Claude with skills — 스킬 위치,
disable-model-invocation - 국가법령정보센터, 관공서의 공휴일에 관한 규정 개정이유 — 대통령령 제36290호(2026. 4. 30. 공포, 5. 1. 시행)
- 연합뉴스, 노동절·제헌절 공휴일 지정 절차 마무리…국무회의 의결 (2026-04-28)
- 실측: 2026-09-28, Claude Code 2.1.280, 1·2·3차 각 산출물과 숨긴 채점 스크립트 (10-11 재채점으로 3차 결과 재확인)
FOR TEAMS
이 가이드, 우리 팀에 적용하려면?
회사명과 업무 한 줄만 남겨주시면 널포인터스튜디오가 직접 검토해 회신드립니다.