@tienne/gestalt 0.55.0 → 0.56.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CLAUDE.md CHANGED
@@ -55,41 +55,7 @@ pnpm tsx bin/gestalt.ts humanize-check --before a.md --after b.md --register cha
55
55
 
56
56
  ## Role Agent 자동 라우팅
57
57
 
58
- 아래 상황에서는 사용자가 명시적으로 에이전트를 지정하지 않아도 해당 에이전트를 proactively 사용한다. `/agent [이름] "태스크"` 또는 `ges_agent` MCP 도구로 호출한다.
59
-
60
- | 상황 | 에이전트 |
61
- |------|---------|
62
- | 영상/비디오 URL이 포함되거나 "요약해줘" 요청 | `video-summarizer` |
63
- | 번역투·AI 말투·어색한 한국어 교정 요청 | `humanize-monolith` (윤문 모드) |
64
- | 고치지 말고 AI 티만 짚어달라는 요청 ("이거 AI 같아?", "슬롭인지 봐줘", "패턴만 짚어줘") | `humanize-monolith` (탐지 모드 — 원문 무수정, 패턴 인용만, 저자 판정·등급 금지) |
65
- | README, API 문서, 가이드, 개발자 문서 작성 | `technical-writer` |
66
- | 발표 슬라이드 콘텐츠·문구·데이터 요약·발표 노트 작성 | `presentation-writer` |
67
- | 슬라이드 Reveal.js 구조·템플릿·비주얼 디자인 자문 | `presentation-designer` |
68
- | 발표자료·슬라이드·프레젠테이션 제작 요청 ("발표자료 만들어줘", "슬라이드 만들어줘", "피치덱") | `presentation` 스킬 사용 (presentation-writer 콘텐츠 → 승인 단계 → presentation-designer 디자인 → Reveal.js HTML) |
69
- | 시스템 설계, 아키텍처 리뷰, 설계 패턴 | `architect` |
70
- | 보안 취약점, 인증/인가, 시크릿 노출 검토 | `security-reviewer` |
71
- | 성능 병목, N+1, 메모리 누수 분석 | `performance-reviewer` |
72
- | 코드 가독성, SOLID, 에러 처리 리뷰 | `quality-reviewer` |
73
- | 테스트 케이스, 엣지 케이스, QA | `qa-engineer` |
74
- | UX 문구 작성·교정, 버튼 텍스트, 에러 메시지, 토스트, 온보딩 카피 | `ux-writer` |
75
- | 슬랙·메신저 메시지 작성 또는 딱딱한/AI스러운 초안을 본인 말투로 다듬기 | `slack-messenger` |
76
- | 슬랙 메시지 전송·예약 발송 요청 ("~라고 보내줘", "공지해줘", "예약 발송해줘") | `slack-send` 스킬 사용 (내부적으로 slack-messenger 다듬기 → 승인 단계 → 전송) |
77
- | 지라 티켓 본문 작성·구조화 (제목, 설명, 완료 조건, 이슈타입 추천) | `jira-writer` |
78
- | 지라 티켓 생성 요청 ("티켓 만들어줘", "이슈 생성해줘", "지라에 올려줘") | `jira-create` 스킬 사용 (내부적으로 jira-writer 구조화 → 프로젝트·필드 확정 → 승인 단계 → createJiraIssue) |
79
- | UI, React, 접근성, 컴포넌트 설계 | `frontend-developer` |
80
- | UI·React 코드 리뷰, 접근성·번들 최적화 검토 | `frontend-reviewer` |
81
- | API, DB, 인증, 서버 로직 | `backend-developer` |
82
- | CI/CD, 인프라, 모니터링 | `devops-engineer` |
83
- | 요구사항 정리, 로드맵, 유저 스토리 | `product-planner` |
84
- | 성과 분석·KPI 해석·분기 성과 보고·회고 리포트 | `impact-writer` |
85
- | 제안서, RFC, 의사결정 메모 등 설득·합의용 기획 산문 | `impact-writer` |
86
- | 성과 보고서·제안서·RFC·회고 작성 요청 ("성과 보고서 써줘", "제안서 작성", "RFC 써줘") | `brief` 스킬 사용 |
87
- | 기술 분석, 벤치마크, 사례 조사 | `researcher` |
88
- | 내 PR에 달린 리뷰 코멘트 답변 본문 작성 (반영·대안·보류·질문) | `code-review-responder` |
89
- | PR·브랜치·커밋 코드 리뷰 요청 | `/review` 스킬 사용 |
90
- | 받은 리뷰 반영·답글 게시 요청 ("리뷰 반영해줘", "리뷰 코멘트에 답해줘", "받은 리뷰 처리해줘") | `review-reply` 스킬 사용 (스레드 수집 → 유형 분류 승인 → 수정·커밋 → 답글 승인 → 게시) |
91
- | PR 작성·생성 요청 ("PR 만들어줘", "PR 작성해줘", "PR 올려줘") | `gestalt:pr` 스킬 사용 |
92
- | 실행 태스크를 외부 런타임 워커로 뿌리는 요청 ("orca로 실행", "codex로 실행", "워커 띄워서 실행") | `dispatch` 스킬 사용 (런타임 감지 → 같은 워크트리에 터미널 → worker_done 대기 → ready 재계산). 런타임 없으면 execute의 기본 병렬 경로 |
58
+ 아래 상황에서는 사용자가 명시적으로 에이전트를 지정하지 않아도 해당 에이전트를 proactively 사용한다. 기준 표는 [`plugin/skills/_shared/proactive-routing.md`](./plugin/skills/_shared/proactive-routing.md)에 있다 — 이 파일은 플러그인과 함께 배포되므로 다른 레포에 설치된 세션도 같은 표를 본다. `/agent [이름] "태스크"` 또는 `ges_agent` MCP 도구로 호출한다.
93
59
 
94
60
  ## Project Structure
95
61
  ```
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tienne/gestalt",
3
- "version": "0.55.0",
3
+ "version": "0.56.0",
4
4
  "description": "TypeScript AI Development Harness - Gestalt psychology-driven requirement clarification",
5
5
  "type": "module",
6
6
  "main": "./dist/src/index.js",
@@ -62,6 +62,7 @@
62
62
  | C-10 | 콜론 부제 헤딩 "X: Y" 반복 | S1 | 콜론 뒤를 버리고 앞부분만 남긴다. **더 좋은 부제로 바꾸지 않는다** — 부제를 갈아끼우면 패턴이 그대로 남는다. 앞부분만으로 뜻이 안 서면 평서 헤딩 한 문장으로 |
63
63
  | C-11 | 연결어미 뒤 쉼표 (-고/-며/-지만/-며서/-아서/-어서 직후 쉼표) | S1 | 쉼표 제거. 6+회=강한 신호. KatFish 4.84배 분리도 |
64
64
  | C-12 | 가운뎃점(·) 나열 남발 — 본문 산문에서 "A·B·C"로 항목 압축 | S1 | 쉼표나 구어 연결로 풀기("A, B, C" / "A랑 B하고 C"). 사람은 산문에서 가운뎃점을 거의 안 쓴다. 단 표 안 압축, 용어 목록, 굳어진 합성어("입출력")는 예외 |
65
+ | C-13 | 같은 문단에서 같은 수치를 다른 단위로 반복 표기("3%" 다음 "3할") — 참조 표현의 숫자만 바꿔 재사용하며 단위를 못 맞춘 경우 | S2 | 단위를 하나로 통일한다. 빌려 쓴 수치 예시는 값과 단위를 통째로 새로 쓴다("3%인데 3할이" → "3%인데 3%가") |
65
66
 
66
67
  ## D. AI 특유의 관용구 (Signature Phrases)
67
68
 
@@ -0,0 +1,46 @@
1
+ # Role Agent 자동 라우팅 (공유 규칙)
2
+
3
+ 이 표가 **기준 문서**다. 어느 상황에 어느 에이전트나 스킬을 사용자가 명시하지 않아도 proactively
4
+ 쓸지는 여기서만 고친다. `CLAUDE.md`와 `plugin/skills/agent/SKILL.md`는 이 파일을 가리킬 뿐 표를
5
+ 복제하지 않는다 — 복제본은 표가 늘어날 때 같이 안 고쳐져 조용히 갈라진다.
6
+
7
+ `/agent [이름] "태스크"` 또는 `ges_agent` MCP 도구로 호출한다.
8
+
9
+ | 상황 | 에이전트 |
10
+ |------|---------|
11
+ | 영상/비디오 URL이 포함되거나 "요약해줘" 요청 | `video-summarizer` |
12
+ | 번역투·AI 말투·어색한 한국어 교정 요청 | `humanize-monolith` (윤문 모드) |
13
+ | 고치지 말고 AI 티만 짚어달라는 요청 ("이거 AI 같아?", "슬롭인지 봐줘", "패턴만 짚어줘") | `humanize-monolith` (탐지 모드 — 원문 무수정, 패턴 인용만, 저자 판정·등급 금지) |
14
+ | README, API 문서, 가이드, 개발자 문서 작성 | `technical-writer` |
15
+ | 발표 슬라이드 콘텐츠·문구·데이터 요약·발표 노트 작성 | `presentation-writer` |
16
+ | 슬라이드 Reveal.js 구조·템플릿·비주얼 디자인 자문 | `presentation-designer` |
17
+ | 발표자료·슬라이드·프레젠테이션 제작 요청 ("발표자료 만들어줘", "슬라이드 만들어줘", "피치덱") | `presentation` 스킬 사용 (presentation-writer 콘텐츠 → 승인 단계 → presentation-designer 디자인 → Reveal.js HTML) |
18
+ | 시스템 설계, 아키텍처 리뷰, 설계 패턴 | `architect` |
19
+ | 보안 취약점, 인증/인가, 시크릿 노출 검토 | `security-reviewer` |
20
+ | 성능 병목, N+1, 메모리 누수 분석 | `performance-reviewer` |
21
+ | 코드 가독성, SOLID, 에러 처리 리뷰 | `quality-reviewer` |
22
+ | 테스트 케이스, 엣지 케이스, QA | `qa-engineer` |
23
+ | UX 문구 작성·교정, 버튼 텍스트, 에러 메시지, 토스트, 온보딩 카피 | `ux-writer` |
24
+ | 슬랙·메신저 메시지 작성 또는 딱딱한/AI스러운 초안을 본인 말투로 다듬기 | `slack-messenger` |
25
+ | 슬랙 메시지 전송·예약 발송 요청 ("~라고 보내줘", "공지해줘", "예약 발송해줘") | `slack-send` 스킬 사용 (내부적으로 slack-messenger 다듬기 → 승인 단계 → 전송) |
26
+ | 지라 티켓 본문 작성·구조화 (제목, 설명, 완료 조건, 이슈타입 추천) | `jira-writer` |
27
+ | 지라 티켓 생성 요청 ("티켓 만들어줘", "이슈 생성해줘", "지라에 올려줘") | `jira-create` 스킬 사용 (내부적으로 jira-writer 구조화 → 프로젝트·필드 확정 → 승인 단계 → createJiraIssue) |
28
+ | UI, React, 접근성, 컴포넌트 설계 | `frontend-developer` |
29
+ | UI·React 코드 리뷰, 접근성·번들 최적화 검토 | `frontend-reviewer` |
30
+ | API, DB, 인증, 서버 로직 | `backend-developer` |
31
+ | CI/CD, 인프라, 모니터링 | `devops-engineer` |
32
+ | 요구사항 정리, 로드맵, 유저 스토리 | `product-planner` |
33
+ | 성과 분석·KPI 해석·분기 성과 보고·회고 리포트 | `impact-writer` |
34
+ | 제안서, RFC, 의사결정 메모 등 설득·합의용 기획 산문 | `impact-writer` |
35
+ | 성과 보고서·제안서·RFC·회고 작성 요청 ("성과 보고서 써줘", "제안서 작성", "RFC 써줘") | `brief` 스킬 사용 |
36
+ | 기술 분석, 벤치마크, 사례 조사 | `researcher` |
37
+ | 내 PR에 달린 리뷰 코멘트 답변 본문 작성 (반영·대안·보류·질문) | `code-review-responder` |
38
+ | PR·브랜치·커밋 코드 리뷰 요청 | `/review` 스킬 사용 |
39
+ | 받은 리뷰 반영·답글 게시 요청 ("리뷰 반영해줘", "리뷰 코멘트에 답해줘", "받은 리뷰 처리해줘") | `review-reply` 스킬 사용 (스레드 수집 → 유형 분류 승인 → 수정·커밋 → 답글 승인 → 게시) |
40
+ | PR 작성·생성 요청 ("PR 만들어줘", "PR 작성해줘", "PR 올려줘") | `gestalt:pr` 스킬 사용 |
41
+ | 실행 태스크를 외부 런타임 워커로 뿌리는 요청 ("orca로 실행", "codex로 실행", "워커 띄워서 실행") | `dispatch` 스킬 사용 (런타임 감지 → 같은 워크트리에 터미널 → worker_done 대기 → ready 재계산). 런타임 없으면 execute의 기본 병렬 경로 |
42
+
43
+ ## 표를 늘릴 때
44
+
45
+ 여기 한 줄 추가하면 끝이다. `CLAUDE.md`와 `agent/SKILL.md`를 따라가서 고칠 필요가 없다 — 둘 다
46
+ 이 파일을 가리키기만 하기 때문이다.
@@ -78,17 +78,7 @@ Invoke any Gestalt Role or Review agent directly, outside the Gestalt pipeline.
78
78
 
79
79
  ## Proactive Invocation
80
80
 
81
- 이 스킬은 사용자가 `/agent`를 명시하지 않아도 아래 상황에서 자동으로 실행된다. CLAUDE.md Role Agent 자동 라우팅 규칙에 따라 적절한 에이전트를 선택해 실행한다.
82
-
83
- - 영상, 비디오 URL 포함 또는 "요약해줘" → `video-summarizer`
84
- - 번역투, AI 말투 교정 → `humanize-monolith`
85
- - 문서, README, 가이드 작성 → `technical-writer`
86
- - 발표 슬라이드 콘텐츠, 문구 작성 → `presentation-writer`
87
- - 슬라이드 Reveal.js 구조, 비주얼 디자인 → `presentation-designer`
88
- - 발표자료, 프레젠테이션 제작(콘텐츠+디자인 통합) → `presentation` 스킬
89
- - 보안 검토 → `security-reviewer`
90
- - 성능 분석 → `performance-reviewer`
91
- - 코드 리뷰 → `quality-reviewer`
81
+ 이 스킬은 사용자가 `/agent`를 명시하지 않아도 상황에 맞는 에이전트로 자동 실행된다. 어느 상황에 어느 에이전트나 스킬을 쓸지는 [`../_shared/proactive-routing.md`](../_shared/proactive-routing.md)가 기준 문서다 여기 목록을 따로 옮겨 적지 않는다. 그 파일을 읽고 상황에 맞는 항목을 고른다.
92
82
 
93
83
  에이전트 이름 없이 태스크 설명만 있는 경우: `ges_agent({ action: "list" })`로 전체 목록을 조회한 뒤 설명과 domain을 기반으로 가장 적합한 에이전트를 자동 선택한다.
94
84
 
@@ -119,7 +119,18 @@ git diff {target}...HEAD # 실제 diff (핵심 변경만)
119
119
  - **PR 템플릿이 있는 경우**: 템플릿 구조를 깨지 않는 선에서, 변경 요약 성격의 섹션(예: Changes, 변경 사항) 안이나 바로 아래에 흐름 변화를 배치합니다. 템플릿에 이미 유사 섹션이 있으면 그 안에 녹입니다.
120
120
  - **템플릿이 없는 경우**: `## Changes` 아래에 흐름 변화 섹션을 둡니다.
121
121
  - 흐름 변화가 없는 변경(순수 리팩터링·문서 수정 등)이면 에이전트가 남긴 `흐름 변화 없음` 표기를 그대로 반영하고 억지로 표를 만들지 않습니다.
122
- - 생성된 description을 **사용자에게 미리보기로 먼저 표시**합니다.
122
+
123
+ ### 4.5단계: description 워싱 (humanize-monolith)
124
+
125
+ 3단계 `changeContext`는 `change-context-writer`가 이미 자체 humanize를 거친 텍스트지만 4단계에서 여기에 `출처`, `검증·리뷰`, 자가 리뷰 노트처럼 레포 템플릿이 요구하는 나머지 섹션을 새로 합성합니다. 이 부분은 별도 윤문 없이 나온 문장이라, 4단계에서 합성한 PR 제목과 본문 전체를 `humanize-monolith`로 한 번 더 다듬습니다.
126
+
127
+ `ges_agent { action: "get", name: "humanize-monolith" }`로 에이전트 시스템 프롬프트를 가져온 뒤, PR 제목과 본문 전체에 S1 규칙을 적용해 교정합니다.
128
+
129
+ - **보존 대상**: 코드 블록, 파일 경로, 커밋 해시, 수치, 체크리스트 항목의 사실 내용은 한 글자도 건드리지 않습니다. `## 흐름 변화 (AS-IS → TO-BE)` 섹션의 화살표 대비, 표, Mermaid 구조도 그대로 둡니다.
130
+ - **어투**: `../role-agents/_shared/references/author-voice.md`의 "PR 설명·변경 컨텍스트" 장르 기준을 따릅니다. 담백한 서술체를 유지하되 "~한 것 같습니다"의 부드러움은 깎지 않습니다.
131
+ - **레포 템플릿 구조는 재구성하지 않습니다.** 0단계에서 발견한 PR 템플릿의 섹션 순서, 체크박스, 헤딩은 그대로 두고 문장 표현만 다듬습니다.
132
+
133
+ 윤문된 description을 **사용자에게 미리보기로 먼저 표시**합니다.
123
134
 
124
135
  ### 5단계: gh pr create 확인 및 실행
125
136
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tienne/gestalt",
3
- "version": "0.55.0",
3
+ "version": "0.56.0",
4
4
  "description": "TypeScript AI Development Harness - Gestalt psychology-driven requirement clarification",
5
5
  "type": "module",
6
6
  "main": "./dist/src/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gestalt",
3
- "version": "0.55.0",
3
+ "version": "0.56.0",
4
4
  "description": "Gestalt psychology-driven AI development harness. Transforms scattered requirements into structured, validated specifications through interactive interviews.",
5
5
  "author": {
6
6
  "name": "tienne"
@@ -62,6 +62,7 @@
62
62
  | C-10 | 콜론 부제 헤딩 "X: Y" 반복 | S1 | 콜론 뒤를 버리고 앞부분만 남긴다. **더 좋은 부제로 바꾸지 않는다** — 부제를 갈아끼우면 패턴이 그대로 남는다. 앞부분만으로 뜻이 안 서면 평서 헤딩 한 문장으로 |
63
63
  | C-11 | 연결어미 뒤 쉼표 (-고/-며/-지만/-며서/-아서/-어서 직후 쉼표) | S1 | 쉼표 제거. 6+회=강한 신호. KatFish 4.84배 분리도 |
64
64
  | C-12 | 가운뎃점(·) 나열 남발 — 본문 산문에서 "A·B·C"로 항목 압축 | S1 | 쉼표나 구어 연결로 풀기("A, B, C" / "A랑 B하고 C"). 사람은 산문에서 가운뎃점을 거의 안 쓴다. 단 표 안 압축, 용어 목록, 굳어진 합성어("입출력")는 예외 |
65
+ | C-13 | 같은 문단에서 같은 수치를 다른 단위로 반복 표기("3%" 다음 "3할") — 참조 표현의 숫자만 바꿔 재사용하며 단위를 못 맞춘 경우 | S2 | 단위를 하나로 통일한다. 빌려 쓴 수치 예시는 값과 단위를 통째로 새로 쓴다("3%인데 3할이" → "3%인데 3%가") |
65
66
 
66
67
  ## D. AI 특유의 관용구 (Signature Phrases)
67
68
 
@@ -0,0 +1,46 @@
1
+ # Role Agent 자동 라우팅 (공유 규칙)
2
+
3
+ 이 표가 **기준 문서**다. 어느 상황에 어느 에이전트나 스킬을 사용자가 명시하지 않아도 proactively
4
+ 쓸지는 여기서만 고친다. `CLAUDE.md`와 `plugin/skills/agent/SKILL.md`는 이 파일을 가리킬 뿐 표를
5
+ 복제하지 않는다 — 복제본은 표가 늘어날 때 같이 안 고쳐져 조용히 갈라진다.
6
+
7
+ `/agent [이름] "태스크"` 또는 `ges_agent` MCP 도구로 호출한다.
8
+
9
+ | 상황 | 에이전트 |
10
+ |------|---------|
11
+ | 영상/비디오 URL이 포함되거나 "요약해줘" 요청 | `video-summarizer` |
12
+ | 번역투·AI 말투·어색한 한국어 교정 요청 | `humanize-monolith` (윤문 모드) |
13
+ | 고치지 말고 AI 티만 짚어달라는 요청 ("이거 AI 같아?", "슬롭인지 봐줘", "패턴만 짚어줘") | `humanize-monolith` (탐지 모드 — 원문 무수정, 패턴 인용만, 저자 판정·등급 금지) |
14
+ | README, API 문서, 가이드, 개발자 문서 작성 | `technical-writer` |
15
+ | 발표 슬라이드 콘텐츠·문구·데이터 요약·발표 노트 작성 | `presentation-writer` |
16
+ | 슬라이드 Reveal.js 구조·템플릿·비주얼 디자인 자문 | `presentation-designer` |
17
+ | 발표자료·슬라이드·프레젠테이션 제작 요청 ("발표자료 만들어줘", "슬라이드 만들어줘", "피치덱") | `presentation` 스킬 사용 (presentation-writer 콘텐츠 → 승인 단계 → presentation-designer 디자인 → Reveal.js HTML) |
18
+ | 시스템 설계, 아키텍처 리뷰, 설계 패턴 | `architect` |
19
+ | 보안 취약점, 인증/인가, 시크릿 노출 검토 | `security-reviewer` |
20
+ | 성능 병목, N+1, 메모리 누수 분석 | `performance-reviewer` |
21
+ | 코드 가독성, SOLID, 에러 처리 리뷰 | `quality-reviewer` |
22
+ | 테스트 케이스, 엣지 케이스, QA | `qa-engineer` |
23
+ | UX 문구 작성·교정, 버튼 텍스트, 에러 메시지, 토스트, 온보딩 카피 | `ux-writer` |
24
+ | 슬랙·메신저 메시지 작성 또는 딱딱한/AI스러운 초안을 본인 말투로 다듬기 | `slack-messenger` |
25
+ | 슬랙 메시지 전송·예약 발송 요청 ("~라고 보내줘", "공지해줘", "예약 발송해줘") | `slack-send` 스킬 사용 (내부적으로 slack-messenger 다듬기 → 승인 단계 → 전송) |
26
+ | 지라 티켓 본문 작성·구조화 (제목, 설명, 완료 조건, 이슈타입 추천) | `jira-writer` |
27
+ | 지라 티켓 생성 요청 ("티켓 만들어줘", "이슈 생성해줘", "지라에 올려줘") | `jira-create` 스킬 사용 (내부적으로 jira-writer 구조화 → 프로젝트·필드 확정 → 승인 단계 → createJiraIssue) |
28
+ | UI, React, 접근성, 컴포넌트 설계 | `frontend-developer` |
29
+ | UI·React 코드 리뷰, 접근성·번들 최적화 검토 | `frontend-reviewer` |
30
+ | API, DB, 인증, 서버 로직 | `backend-developer` |
31
+ | CI/CD, 인프라, 모니터링 | `devops-engineer` |
32
+ | 요구사항 정리, 로드맵, 유저 스토리 | `product-planner` |
33
+ | 성과 분석·KPI 해석·분기 성과 보고·회고 리포트 | `impact-writer` |
34
+ | 제안서, RFC, 의사결정 메모 등 설득·합의용 기획 산문 | `impact-writer` |
35
+ | 성과 보고서·제안서·RFC·회고 작성 요청 ("성과 보고서 써줘", "제안서 작성", "RFC 써줘") | `brief` 스킬 사용 |
36
+ | 기술 분석, 벤치마크, 사례 조사 | `researcher` |
37
+ | 내 PR에 달린 리뷰 코멘트 답변 본문 작성 (반영·대안·보류·질문) | `code-review-responder` |
38
+ | PR·브랜치·커밋 코드 리뷰 요청 | `/review` 스킬 사용 |
39
+ | 받은 리뷰 반영·답글 게시 요청 ("리뷰 반영해줘", "리뷰 코멘트에 답해줘", "받은 리뷰 처리해줘") | `review-reply` 스킬 사용 (스레드 수집 → 유형 분류 승인 → 수정·커밋 → 답글 승인 → 게시) |
40
+ | PR 작성·생성 요청 ("PR 만들어줘", "PR 작성해줘", "PR 올려줘") | `gestalt:pr` 스킬 사용 |
41
+ | 실행 태스크를 외부 런타임 워커로 뿌리는 요청 ("orca로 실행", "codex로 실행", "워커 띄워서 실행") | `dispatch` 스킬 사용 (런타임 감지 → 같은 워크트리에 터미널 → worker_done 대기 → ready 재계산). 런타임 없으면 execute의 기본 병렬 경로 |
42
+
43
+ ## 표를 늘릴 때
44
+
45
+ 여기 한 줄 추가하면 끝이다. `CLAUDE.md`와 `agent/SKILL.md`를 따라가서 고칠 필요가 없다 — 둘 다
46
+ 이 파일을 가리키기만 하기 때문이다.
@@ -78,17 +78,7 @@ Invoke any Gestalt Role or Review agent directly, outside the Gestalt pipeline.
78
78
 
79
79
  ## Proactive Invocation
80
80
 
81
- 이 스킬은 사용자가 `/agent`를 명시하지 않아도 아래 상황에서 자동으로 실행된다. CLAUDE.md Role Agent 자동 라우팅 규칙에 따라 적절한 에이전트를 선택해 실행한다.
82
-
83
- - 영상, 비디오 URL 포함 또는 "요약해줘" → `video-summarizer`
84
- - 번역투, AI 말투 교정 → `humanize-monolith`
85
- - 문서, README, 가이드 작성 → `technical-writer`
86
- - 발표 슬라이드 콘텐츠, 문구 작성 → `presentation-writer`
87
- - 슬라이드 Reveal.js 구조, 비주얼 디자인 → `presentation-designer`
88
- - 발표자료, 프레젠테이션 제작(콘텐츠+디자인 통합) → `presentation` 스킬
89
- - 보안 검토 → `security-reviewer`
90
- - 성능 분석 → `performance-reviewer`
91
- - 코드 리뷰 → `quality-reviewer`
81
+ 이 스킬은 사용자가 `/agent`를 명시하지 않아도 상황에 맞는 에이전트로 자동 실행된다. 어느 상황에 어느 에이전트나 스킬을 쓸지는 [`../_shared/proactive-routing.md`](../_shared/proactive-routing.md)가 기준 문서다 여기 목록을 따로 옮겨 적지 않는다. 그 파일을 읽고 상황에 맞는 항목을 고른다.
92
82
 
93
83
  에이전트 이름 없이 태스크 설명만 있는 경우: `ges_agent({ action: "list" })`로 전체 목록을 조회한 뒤 설명과 domain을 기반으로 가장 적합한 에이전트를 자동 선택한다.
94
84
 
@@ -119,7 +119,18 @@ git diff {target}...HEAD # 실제 diff (핵심 변경만)
119
119
  - **PR 템플릿이 있는 경우**: 템플릿 구조를 깨지 않는 선에서, 변경 요약 성격의 섹션(예: Changes, 변경 사항) 안이나 바로 아래에 흐름 변화를 배치합니다. 템플릿에 이미 유사 섹션이 있으면 그 안에 녹입니다.
120
120
  - **템플릿이 없는 경우**: `## Changes` 아래에 흐름 변화 섹션을 둡니다.
121
121
  - 흐름 변화가 없는 변경(순수 리팩터링·문서 수정 등)이면 에이전트가 남긴 `흐름 변화 없음` 표기를 그대로 반영하고 억지로 표를 만들지 않습니다.
122
- - 생성된 description을 **사용자에게 미리보기로 먼저 표시**합니다.
122
+
123
+ ### 4.5단계: description 워싱 (humanize-monolith)
124
+
125
+ 3단계 `changeContext`는 `change-context-writer`가 이미 자체 humanize를 거친 텍스트지만 4단계에서 여기에 `출처`, `검증·리뷰`, 자가 리뷰 노트처럼 레포 템플릿이 요구하는 나머지 섹션을 새로 합성합니다. 이 부분은 별도 윤문 없이 나온 문장이라, 4단계에서 합성한 PR 제목과 본문 전체를 `humanize-monolith`로 한 번 더 다듬습니다.
126
+
127
+ `ges_agent { action: "get", name: "humanize-monolith" }`로 에이전트 시스템 프롬프트를 가져온 뒤, PR 제목과 본문 전체에 S1 규칙을 적용해 교정합니다.
128
+
129
+ - **보존 대상**: 코드 블록, 파일 경로, 커밋 해시, 수치, 체크리스트 항목의 사실 내용은 한 글자도 건드리지 않습니다. `## 흐름 변화 (AS-IS → TO-BE)` 섹션의 화살표 대비, 표, Mermaid 구조도 그대로 둡니다.
130
+ - **어투**: `../role-agents/_shared/references/author-voice.md`의 "PR 설명·변경 컨텍스트" 장르 기준을 따릅니다. 담백한 서술체를 유지하되 "~한 것 같습니다"의 부드러움은 깎지 않습니다.
131
+ - **레포 템플릿 구조는 재구성하지 않습니다.** 0단계에서 발견한 PR 템플릿의 섹션 순서, 체크박스, 헤딩은 그대로 두고 문장 표현만 다듬습니다.
132
+
133
+ 윤문된 description을 **사용자에게 미리보기로 먼저 표시**합니다.
123
134
 
124
135
  ### 5단계: gh pr create 확인 및 실행
125
136