setup-panelslisted
Install: claude install-skill DaeSeokSong/oh-my-ouroboros
# tmux Teammate Panel Setup
teammate 생성 후 tmux 패널을 자동 구성하는 명령입니다.
## 스크립트 경로
`~/.claude/scripts/tmux-panels.sh`
## 배치 정책
| 팀원 수 | 전략 | 메인 윈도우 | 오버플로우 |
|---------|------|-----------|----------|
| 1~4 | 1행 | Main(65%) + 1행(35%) | 없음 |
| 5~8 | 2행 | Main(55%) + 2행(45%) | 없음 |
| 9~12 | 3행 | Main(50%) + 3행(50%) | 없음 |
| 13~N | 3행+overflow | Main + 12명 | tm-1, tm-2... |
오버플로우 윈도우 간 이동: `Ctrl+b n` (다음) / `Ctrl+b p` (이전)
## 실행 절차
$ARGUMENTS 를 파싱하여 아래 순서로 실행:
1. **인자가 "cleanup"** → `tmux-panels.sh cleanup`
2. **인자가 "status"** → `tmux-panels.sh status`
3. **인자가 "purge"** → `tmux-panels.sh purge`
4. **그 외 모든 경우 (인자 유무 관계없이)**:
- **STEP 1**: 활성 팀 config.json 자동 조회
- `~/.claude/teams/` 하위에서 가장 최근 수정된 팀 폴더의 `config.json` 읽기
- `members` 배열에서 `name`과 `agentType`(또는 역할 정보) 추출
- **STEP 2**: 실제 생성된 팀원 수 확인
- config.json에 없는 팀원은 패널 생성 대상에서 제외
- **STEP 3**: 팀원 수만큼 패널 자동 구성
- `tmux-panels.sh setup "name1:agentType1" "name2:agentType2" ...`
- **팀 config가 없는 경우**: 인자로 전달된 `name:role` 형식을 그대로 사용
## 팀원 조회 방법 (코드)
```bash
# 활성 팀 config.json 경로 찾기
TEAM_CONFIG=$(ls -t ~/.claude/teams/*/config.json 2>/dev/null | head -1)
# members 배열에서 name:agentType 추출
if [ -n "$TEAM_CONFIG" ]; then
python3 -c "
import json, sys
data = json.load(open('$TEAM_CONFIG'))
members = data.get('members', [])
for m in members:
name = m.get('name', '')
role = m.get('agentType', 'agent')
print(f'{name}:{role}')
"
fi
```
## 자동 연동 워크플로우
⚠️ **반드시 아래 순서 준수** (setup → spawn 순서는