조직 설계 스킬
목적부터 히어링을 거쳐 역할(에이전트)을 정의하고, 디렉터리 구조·CLAUDE.md·하네스(Rules / Hooks / Skills / Settings) 를 일괄 생성합니다. 개인의 목표 달성을 위한 담당자 정의부터 대규모 조직까지 모든 규모에 대응합니다.
생성물의 전체 구조
.claude/
rules/
role-<name>.md ← 각 역할의 운영 규칙 (경로 연결)
skills/
ask-<name>/SKILL.md ← 각 역할 호출 스킬
settings.json ← Hooks·권한·Agent Team 활성화를 추가
org/
<role>/CLAUDE.md ← 각 역할의 설계서
workflows/ ← 워크플로우 정의 (어떤 업무에 어떤 패턴을 사용할지)
README.md ← 조직도 (Mermaid)
플로우
AskUserQuestion 도구를 사용하여 인터랙티브한 선택식 히어링을 진행합니다.
모든 단계를 한 번에 제시하지 않고, 한 단계씩 진행합니다.
AskUserQuestion 사용법
- 각 질문은 2~4개의 선택지를 준비합니다 ("기타 (자유 입력)"는 자동으로 추가되므로 포함하지 않음)
- 다중 선택이 적절한 질문에는
multiSelect: true를 설정합니다 - 권장하는 선택지가 있으면 맨 앞에 두고 "(권장)"을 붙입니다
- 한 번 호출에 최대 4개의 질문까지 동시에 물을 수 있습니다
- 선택지의
description에 보충 설명을 추가하여 사용자가 판단하기 쉽게 합니다
단계 0: 현재 상태 확인 (자동 실행)
스킬 실행 시, 먼저 다음을 자동으로 확인합니다 (사용자에게 질문 없음):
-
org/디렉터리가 존재하는지 확인합니다 (Glob으로org/**/CLAUDE.md검색) -
존재하는 경우:
-
org/README.md와 각 역할의CLAUDE.md를 읽습니다 -
현재 조직 구성 (역할 목록, 관계성, 책임 범위)을 텍스트로 요약하여 제시합니다
-
하네스 설정 상태도 확인합니다:
.claude/rules/role-*.md존재 확인.claude/skills/ask-*/SKILL.md존재 확인.claude/settings.json내 hooks 설정 확인
-
프로젝트 내 다른 파일 (소스 코드, 문서 등)도 확인하여 현재 조직 구성이 프로젝트 실태와 일치하는지 분석합니다
-
다음 관점에서 개선 포인트를 도출합니다:
- 커버리지 부족: 프로젝트에 존재하는 기능 영역 중 담당 역할이 없는 경우
- 역할의 과부족: 사용되지 않는 역할, 부하가 편중된 역할
- 관계성 불일치: 보고 라인이나 커뮤니케이션 경로가 실태와 맞지 않는 경우
- 서브에이전트화 상황: 오케스트레이터 역할이 정의되어 있는지, 각 역할의 CLAUDE.md에 "서브에이전트 실행 프로토콜" 섹션이 있는지, 권장 모델이 지정되어 있는지
- 하네스 누락: Rules / Skills / Hooks가 생성되지 않은 역할이 있는지
-
개선 포인트가 있으면 제안으로 모아서 제시합니다
-
AskUserQuestion으로 모드를 선택:무엇을 하시겠습니까? (multiSelect: false, header: "모드")
label description 개선하기 현재 구성을 개선·수정합니다 추가하기 기존 구성에 새 역할을 추가합니다 하네스만 생성 기존 역할에 하네스(Rules/Skills/Hooks)만 추가합니다 처음부터 만들기 기존 구성을 무시하고 새로 만듭니다 -
"개선하기"인 경우: 개선 제안을 바탕으로 단계 3(역할 정의)부터 시작합니다
-
"추가하기"인 경우: 단계 2(기능 도출)부터 시작합니다 (기존 기능은 선택된 것으로 취급)
-
"하네스만 생성"인 경우: 단계 5(하네스 생성)로 바로 진행합니다
-
"처음부터 만들기"인 경우: 단계 1부터 정상적으로 시작합니다
-
-
존재하지 않는 경우: 단계 1부터 정상적으로 시작합니다
단계 1: 목적 확인
AskUserQuestion으로 다음 3개의 질문을 한 번 호출에 동시에 묻습니다:
Q1. 달성하고 싶은 것은? (multiSelect: true, header: "목적")
| label | description |
|---|---|
| 제품 개발 | 서비스나 앱 등의 제품을 만듭니다 |
| 콘텐츠 제작 | 기사·영상·자료 등의 콘텐츠를 만들고 발신합니다 |
| 업무 효율화 | 기존 업무나 워크플로우를 개선·자동화합니다 |
| 연구·학습 | 조사·분석·스킬업 등 지식을 깊게 합니다 |
Q2. 전달할 대상은? (multiSelect: true, header: "대상")
| label | description |
|---|---|
| 자기 자신 | 개인의 목표 달성이나 자기 관리를 위해 |
| 팀 멤버 | 사내나 프로젝트 내 동료를 위해 |
| 고객·클라이언트 | 직접 거래처나 클라이언트를 위해 |
| 최종 사용자 | 일반 이용자나 커뮤니티를 위해 |
Q3. 규모는? (multiSelect: false, header: "규모")
| label | description |
|---|---|
| 개인 | 개인용 에이전트·담당자 구성 |
| 소팀 | 2~5명 정도의 소규모 구성 |
| 중간 규모 | 6~20명 정도의 팀 구성 |
| 조직·부서 | 20명 이상의 큰 구성 |
답변을 바탕으로 체크리스트 형식으로 인식을 정리하고, 텍스트로 확인을 받습니다. 합의가 이루어지면 다음 단계로 진행합니다.
단계 2: 필요한 기능 도출
단계 1의 답변에 기반하여, 관련 기능 4개를 골라 제시합니다.
AskUserQuestion으로 1개의 질문을 묻습니다:
필요한 기능은? (multiSelect: true, header: "기능")
선택지는 단계 1의 목적에 따라 동적으로 4개를 선택합니다. 선택지 풀 (목적에 따라 4개 제시): 기획·전략 수립 / 설계·아키텍처 / 개발·구현 / 디자인·UI/UX / 테스트·품질 관리 / 리서치·정보 수집 / 라이팅·문서 작성 / 마케팅·고객 유치 / 영업·고객 대응 / 고객 지원 / 프로젝트 관리 / 데이터 분석 / 재무·회계 / 인사·채용 / 인프라·운영
선택 후, "추가 기능이 있습니까?"를 확인 (더 있음 → 남은 풀에서 4개 제시, 충분할 때까지 반복).
단계 3: 역할 정의
단계 2에서 선택된 기능을 바탕으로 역할 구성안을 자동 생성하고, 텍스트로 제시합니다.
Q1. 이 구성으로 괜찮습니까? (multiSelect: false, header: "구성 확인")
| label | description |
|---|---|
| 이 구성으로 OK | 제시된 역할 구성으로 진행합니다 |
| 역할을 추가하고 싶음 | 부족한 역할이 있습니다 |
| 통합·삭제하고 싶음 | 역할이 너무 많거나 정리하고 싶습니다 |
| 이름을 바꾸고 싶음 | 역할명을 수정하고 싶습니다 |
수정이 필요한 경우 "기타" 자유 입력으로 구체적으로 지시받습니다. OK가 될 때까지 반복합니다.
Q2. 역할 간 관계성은? (multiSelect: false, header: "관계성")
| label | description |
|---|---|
| 플랫 | 모두가 대등, 상하 관계 없음 |
| 리더형 | 1명이 정리 역할, 나머지가 멤버 |
| 계층형 | 부서장→리드→멤버의 다계층 |
| 허브형 | 중심 역할이 다른 모든 역할과 연계 |
Q3. 책임 범위 확인 각 역할의 책임 범위안을 텍스트로 제시하고, "이 내용으로 OK / 수정하고 싶음"으로 확인합니다 (수정은 자유 입력).
단계 3.5: 실행 아키텍처 설계
이 단계의 상세는 architecture-design.md를 참조하여 실행합니다.
내용: SubAgent / Agent Team 선택, 오케스트레이터·워커 설계, 팀 편성, 모델 할당.
단계 4: 확인 및 생성
Mermaid 다이어그램과 역할 목록을 텍스트로 제시하고, 생성물의 전체 구조("생성물의 전체 구조" 섹션 참조)도 함께 표시합니다.
AskUserQuestion으로 최종 확인:
생성해도 괜찮습니까? "생성하기 / 수정하고 싶음"으로 최종 확인. 승인 후, 단계 5(하네스 생성)를 포함하여 일괄 생성합니다.
단계 5: 하네스 생성
생성 로직의 상세는 harness-generation.md를 참조하여 실행합니다.
템플릿은 templates.md를 참조합니다.
디렉터리 구조 규칙:
- 각 역할의 디렉터리는
org/<role>/에 생성합니다 - 이미
org/디렉터리가 존재하는 경우, 기존 구성에 추가·업데이트하는 형태로 대응합니다 - 계층이 있으면 중첩, 플랫하면 그대로 병렬로 배치합니다
주의사항
- 역할명 (디렉터리명)은 영어 소문자 케밥 케이스를 사용합니다
- CLAUDE.md의 내용은 한국어로 작성합니다
- 각 역할의 책임 범위가 명확히 분리되도록 설계합니다
- "회사", "기업" 같은 표현을 피하고, "조직", "팀", "구성" 등 일반적인 표현을 사용합니다
- 개인 이용의 경우, 역할은 "담당자", "에이전트"로 취급합니다
- 하네스 생성 시 기존 settings.json을 깨뜨리지 않도록, 차이 병합(diff merge)을 철저히 합니다
- allowed-tools는 최소 권한 원칙에 따라, 역할에 불필요한 도구를 포함하지 않습니다