debatelisted
Install: claude install-skill SONGYEONGSIN/vibe-flow
# Debate Skill — 전문가 토론 실행 프로토콜
동등한 전문가 에이전트들이 주제에 대해 토론하고, 수렴/합의를 도출한 뒤, 구조화된 종합 보고서를 생성합니다.
## 사용법
```
/debate <주제>
/debate --template <템플릿> <주제>
/debate --ref <debateId> <후속 주제>
```
## 설정
`~/.claude/skills/debate/protocol.json`에서 설정을 읽습니다:
| 설정 | 기본값 | 설명 |
|------|--------|------|
| maxRounds | 3 | 최대 라운드 수 (수렴 안 되면 여기서 종료) |
| hardLimitRounds | 5 | 절대 상한 라운드 |
| convergenceThreshold | 75 | 수렴 판단 점수 (0-100) |
| maxAgents | 5 | 최대 참여 에이전트 수 |
| debateStyle | "intense" | "intense" (날카로운 토론) 또는 "collaborative" (협력적) |
## 전체 실행 절차
### Step 1: 에이전트 발견 및 선택
1. `~/.claude/agents/*.md` 디렉토리의 모든 `.md` 파일을 읽습니다
2. 각 파일의 YAML frontmatter에서 `debate` 필드를 확인합니다:
- `debate: false` → 토론 참여 제외
- `debate.expertise: [키워드 배열]` → 주제 매칭에 사용
- `debate.perspective: "관점 설명"` → 토론 시 역할 안내
3. 주제와 에이전트의 expertise 키워드 겹침으로 관련도를 점수화합니다
4. 상위 에이전트를 선택합니다 (최소 2명, 최대 maxAgents)
5. 관련도가 높은 에이전트가 2명 미만이면 사용자에게 알립니다
### Step 2: 라운드 실행 (병렬)
각 라운드에서 모든 선택된 에이전트를 **Task() 도구로 병렬 실행**합니다.
각 에이전트에게 전달할 프롬프트:
```
당신은 [{agent.perspective}] 전문가입니다.
자신의 전문 분야에서 확고한 입장을 가지고 토론에 참여하세요.
## 토론 주제
{topic}
## 라운드 {roundNumber} {초기 입장 or 반론}
{이전 라운드가 있으면: 이전 발언 내용}
## 규칙
- 코드베이스를 직접 읽어서 근거를 제시하세요
- intense: 약한 주장은 날카롭게 지적, 억지 양보 금지
- collaborative: 공통점 찾기, 종합적 해결책
## 응답 형식
1. 핵심 주장 (1-2문장)
2. 근거 (코드베이스 증거 또는 기술적 분석)
3. 다른 의견에 대한 반응 (라운드 1+: 동의/반박/수정)
4. 구체적 제안
```
**에이전트별 타임아웃**: 2분. 타임아웃 시 "(타임아웃으로 불참)" 처리.
**개별 실패 허용**: Promise.allSettled로 하나가 실패해도 나머지 진행.
### Step 3: 수렴 체크 (조정자)
각 라운드 후 조정자