harnesslisted
Install: claude install-skill tigu77/tiguclaw
# Harness — 팀을 만들지 **말지**부터 정한다
이 스킬의 첫 번째 일은 팀을 만드는 것이 아니라 **팀이 필요한지 판정하는 것**이다.
아래 게이트를 통과하지 못하면 여기서 멈추고 직접 하거나 1명에게 위임한다. 그게 정답인
경우가 대부분이다.
**실행 모델**: 서브에이전트 위임 + 파일(`_workspace/`) 데이터 전달. 어느 어댑터로 전환해도
동일하게 동작한다(핵심원칙 #2).
지금 쓸 수 있는 협업 수단은 이만큼이다 — **금지 목록이 아니라 현재 런타임의 서술**이다:
| 하려는 것 | 지금 |
|---|---|
| 에이전트 사이 데이터 전달 | `_workspace/` 파일 |
| **여럿을 동시에 돌리기** | `spawn_agent(wait:false)` — 즉시 jobId. 기본(`wait:true`)은 그 자리에서 기다린다 |
| **결과 회수** | 자동이다. 소환자는 **거두기 전엔 못 끝난다**(런타임 보장) — 매니저면 이어지는 턴으로, 메인이면 새 답변으로 |
| 도는 중인 에이전트에 지시 얹기 | `steer_worker`(단방향, 다음 model-call 경계에 반영). 백그라운드 서브에도 된다 |
| 도는 중인 에이전트 멈추기 | `cancel_worker`·대시보드 카드·`/stop`. 멈추면 그 아래도 함께 멈춘다 |
| 진행 상황 관측 | 데몬 `EventBus` → 대시보드 잡 패널 |
| 에이전트 → 메인 실시간 알림(역방향) | **없다.** 결과는 완료 시 돌아온다(위 "결과 회수") |
| 서브에이전트가 다시 서브를 띄우기 | **불가** — `subagentDepth: 1`, 런타임이 막는다(깊이는 곱셈으로 커지고 안 보인다) |
깊이 제약만 하드다. 나머지는 **닫힌 문이 아니다** — 위 수단으로 안 되는 실제 사례를 만나면
프리미티브를 넓히자고 **사용자에게 제안하라**(능력 도입은 사용자 승인 사안 — SYSTEM.md).
다만 짓기 전에 위 수단의 조합으로 되는지 먼저 확인한다 — 대개 된다. 없는 사례를 상상해
인프라를 먼저 짓지 않는다.
---
## ① 게이트 — 어디로 갈 것인가
**팀을 만들지 말지가 팀 크기보다 앞선 결정이다.** ★비싸지는 건 위임이 아니라 **N** 이다 —
에이전트 하나는 대화 이력·메모리를 안 물려받아 메인 턴보다 **작게** 싣지만, 팀은 그게 N번이다.
그래서 아래 갈래는 **N을 정하는 판정**이지 아끼는 요령이 아니다. 세 갈래 중 하나를 고른다:
| 갈래 | 조건 | 행동 |
|------|------|------|
| **직접** | 단일 파일·단일 모듈, 읽고 답하는 질의, 감사·조회, 정답이 자명한 수정 | 비서가 그냥 한다. **파일도 팀도 만들지 않는다** |
| **1명 위임** | 일이 길지만(수 분+) 하나의 흐름이다. 또는 격리가 필요하다(대량 출력·긴 탐색) | `spawn_agent` 1명. **에이전트 파일 없이** 프롬프트에 역할을 실어도 된다(→③) |
| **팀** | 서로 **독립