@tienne/gestalt 0.49.1 → 0.50.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.
Files changed (37) hide show
  1. package/CLAUDE.md +1 -1
  2. package/dist/package.json +1 -1
  3. package/dist/plugin/role-agents/_shared/references/README.md +20 -0
  4. package/dist/plugin/role-agents/change-context-writer/AGENT.md +1 -1
  5. package/dist/plugin/role-agents/code-review-responder/AGENT.md +2 -2
  6. package/dist/plugin/role-agents/code-review-writer/AGENT.md +3 -3
  7. package/dist/plugin/role-agents/humanize-monolith/AGENT.md +2 -2
  8. package/dist/plugin/role-agents/impact-writer/AGENT.md +1 -1
  9. package/dist/plugin/role-agents/impact-writer/references/voice.md +1 -1
  10. package/dist/plugin/role-agents/jira-writer/AGENT.md +2 -2
  11. package/dist/plugin/role-agents/presentation-writer/AGENT.md +1 -1
  12. package/dist/plugin/role-agents/presentation-writer/references/content-playbook.md +1 -1
  13. package/dist/plugin/role-agents/slack-messenger/AGENT.md +1 -1
  14. package/dist/plugin/role-agents/technical-writer/AGENT.md +2 -2
  15. package/dist/plugin/skills/review/SKILL.md +2 -2
  16. package/package.json +1 -1
  17. package/plugin/.codex-plugin/plugin.json +1 -1
  18. package/plugin/commands/gestalt-review.md +1 -1
  19. package/plugin/role-agents/_shared/references/README.md +20 -0
  20. package/plugin/role-agents/change-context-writer/AGENT.md +1 -1
  21. package/plugin/role-agents/code-review-responder/AGENT.md +2 -2
  22. package/plugin/role-agents/code-review-writer/AGENT.md +3 -3
  23. package/plugin/role-agents/humanize-monolith/AGENT.md +2 -2
  24. package/plugin/role-agents/impact-writer/AGENT.md +1 -1
  25. package/plugin/role-agents/impact-writer/references/voice.md +1 -1
  26. package/plugin/role-agents/jira-writer/AGENT.md +2 -2
  27. package/plugin/role-agents/presentation-writer/AGENT.md +1 -1
  28. package/plugin/role-agents/presentation-writer/references/content-playbook.md +1 -1
  29. package/plugin/role-agents/slack-messenger/AGENT.md +1 -1
  30. package/plugin/role-agents/technical-writer/AGENT.md +2 -2
  31. package/plugin/skills/review/SKILL.md +2 -2
  32. /package/dist/plugin/role-agents/{technical-writer → _shared}/references/ai-tell-quick-rules.md +0 -0
  33. /package/dist/plugin/role-agents/{technical-writer → _shared}/references/author-voice.md +0 -0
  34. /package/dist/plugin/role-agents/{technical-writer → _shared}/references/style-guide.md +0 -0
  35. /package/plugin/role-agents/{technical-writer → _shared}/references/ai-tell-quick-rules.md +0 -0
  36. /package/plugin/role-agents/{technical-writer → _shared}/references/author-voice.md +0 -0
  37. /package/plugin/role-agents/{technical-writer → _shared}/references/style-guide.md +0 -0
package/CLAUDE.md CHANGED
@@ -110,7 +110,7 @@ src/registry/ — 레지스트리 공통 베이스 클래스
110
110
  src/utils/ — 알림 등 공용 유틸
111
111
  src/cli/ — commander 기반 CLI
112
112
  plugin/ — 배포 자산 전부. Claude Code와 Codex 플러그인이 이 디렉토리 하나를 공유한다
113
- plugin/role-agents/ — 내장 Role Agent 9개 (architect, frontend-developer, backend-developer, devops-engineer, qa-engineer, designer, product-planner, researcher, technical-writer) + 스킬 지원용 에이전트(jira-writer, slack-messenger, presentation-writer, code-review-writer, code-review-responder 등) 총 21개
113
+ plugin/role-agents/ — 내장 Role Agent 9개 (architect, frontend-developer, backend-developer, devops-engineer, qa-engineer, designer, product-planner, researcher, technical-writer) + 스킬 지원용 에이전트(jira-writer, slack-messenger, presentation-writer, code-review-writer, code-review-responder 등) 총 21개 + `_shared/references/` 공유 룰북(author-voice, ai-tell-quick-rules, style-guide — 에이전트 아님, 레지스트리가 건너뜀)
114
114
  plugin/review-agents/ — 내장 Review Agent 4개 (security-reviewer, performance-reviewer, quality-reviewer, frontend-reviewer)
115
115
  plugin/skills/ — SKILL.md 17개 (interview, spec, execute, dispatch, agent, review, review-reply, pr, build-graph, blast-radius, diff-radius, jira-create, slack-send, brief, presentation, solve, setup) + `_shared/` 공유 규칙(스킬 아님, 레지스트리가 건너뜀)
116
116
  plugin/agents/ — 파이프라인 에이전트 5개
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tienne/gestalt",
3
- "version": "0.49.1",
3
+ "version": "0.50.0",
4
4
  "description": "TypeScript AI Development Harness - Gestalt psychology-driven requirement clarification",
5
5
  "type": "module",
6
6
  "main": "./dist/src/index.js",
@@ -0,0 +1,20 @@
1
+ # 공유 레퍼런스
2
+
3
+ 여러 에이전트가 함께 쓰는 어투·문체 룰북이다. 특정 에이전트 소유가 아니라서 `_shared/` 아래 둔다.
4
+ `_shared`에는 `AGENT.md`가 없으므로 `RoleAgentRegistry`가 에이전트로 로드하지 않는다
5
+ (`plugin/skills/_shared/`와 같은 규칙).
6
+
7
+ | 파일 | 무엇 | 주 참조자 |
8
+ |---|---|---|
9
+ | `author-voice.md` | 작성자 고유 어투 모델 (제안형, 물결, 이모지). "더하기" 레퍼런스 | `code-review-writer`, `code-review-responder`, `change-context-writer`, `humanize-monolith`, `/review`, `/review-reply` |
10
+ | `ai-tell-quick-rules.md` | AI-tell 탐지·처방 룰북 (A~J 카테고리, S1/S2). "빼기" 레퍼런스 | `humanize-monolith`(primary), `code-review-writer`, `code-review-responder`, `jira-writer`, `slack-messenger` |
11
+ | `style-guide.md` | 한국어 문장·용어·문서 구조 규칙 | `technical-writer`, `impact-writer`, `presentation-writer`, `presentation-designer`, `jira-writer` |
12
+
13
+ ## 고칠 때
14
+
15
+ - **룰을 추가하면 그 문서가 스스로 그 룰을 지키는지 먼저 확인한다.** 룰 문서가 금지 어휘를
16
+ 본문에 쓰면 산출물로 샌다. 금지어를 넣었으면 같은 문서를 grep한다.
17
+ - 어투 규칙은 **S1으로 올려야 실제로 강제된다.** S2는 모델이 우선순위를 알아서 정하면서 새어나간다.
18
+ - 경로를 참조하는 자리가 여러 곳이다. 파일을 옮기거나 이름을 바꾸면 `plugin/` 전체에서
19
+ 상대경로 참조를 다시 확인한다 (에이전트는 `../_shared/references/`, 에이전트의 `references/`
20
+ 하위 문서는 `../../_shared/references/`, 스킬은 `../../role-agents/_shared/references/`).
@@ -122,7 +122,7 @@ Mermaid를 쓸 때도 무엇이 바뀌었는지 한 줄로 짚어 준다 (예: `
122
122
 
123
123
  ## 어투 — 작성자 voice
124
124
 
125
- PR/변경 문서도 결국 작성자가 직접 말하는 글이다. [`../technical-writer/references/author-voice.md`](../technical-writer/references/author-voice.md)의
125
+ PR/변경 문서도 결국 작성자가 직접 말하는 글이다. [`../_shared/references/author-voice.md`](../_shared/references/author-voice.md)의
126
126
  "장르별 적용 → PR 설명·변경 컨텍스트" 기준을 따른다. 본문은 "무엇을 왜 바꿨는지"를 서술하는 성격이라
127
127
  제안형보다 **담백한 서술체**가 맞지만, "~한 것 같습니다"의 부드러움과 온기는 유지하고 딱딱한 단언·결산
128
128
  피벗으로 평탄화하지 않는다. `c:`/`r:`·`[출처]`·"권장." 같은 Claude artifact는 쓰지 않는다.
@@ -84,7 +84,7 @@ key는 넣었는데 index 대신 id를 썼어요. 목록 순서가 바뀌는 케
84
84
 
85
85
  ## Voice 레퍼런스 (필수 적용)
86
86
 
87
- 어투는 [`../technical-writer/references/author-voice.md`](../technical-writer/references/author-voice.md)를 따른다.
87
+ 어투는 [`../_shared/references/author-voice.md`](../_shared/references/author-voice.md)를 따른다.
88
88
  특히 **말투 A의 "본인 PR에 답할 때 / 수정 반영"** 절과 **말투 B(대화형 답글)** 가 이 에이전트의 주 참조 구간이다. 초안을 쓴 뒤 반드시 읽고 다듬는다.
89
89
 
90
90
  핵심 시그니처:
@@ -99,7 +99,7 @@ key는 넣었는데 index 대신 id를 썼어요. 목록 순서가 바뀌는 케
99
99
 
100
100
  ### Humanize 처리
101
101
 
102
- 초안을 쓴 뒤 AI-tell을 점검한다. SoT는 [`../technical-writer/references/ai-tell-quick-rules.md`](../technical-writer/references/ai-tell-quick-rules.md)이고, 답글엔 특히 아래가 자주 샌다.
102
+ 초안을 쓴 뒤 AI-tell을 점검한다. SoT는 [`../_shared/references/ai-tell-quick-rules.md`](../_shared/references/ai-tell-quick-rules.md)이고, 답글엔 특히 아래가 자주 샌다.
103
103
 
104
104
  | 패턴 | 예시 | 교정 |
105
105
  |------|------|------|
@@ -64,7 +64,7 @@ PR diff를 리뷰하고, 머지 가능 여부를 판단할 수 있는 구체적
64
64
  ### Voice 레퍼런스 (필수 적용)
65
65
 
66
66
  코멘트 어투는 실제 리뷰어의 PR 코멘트(2022~2025년 1,300여 건, Claude 오염 전)에서 추려낸
67
- voice 모델을 따른다. 초안 작성 후 반드시 [`../technical-writer/references/author-voice.md`](../technical-writer/references/author-voice.md)를
67
+ voice 모델을 따른다. 초안 작성 후 반드시 [`../_shared/references/author-voice.md`](../_shared/references/author-voice.md)를
68
68
  읽고 그 어투에 맞춰 다듬는다.
69
69
 
70
70
  핵심 시그니처 — **단정하지 말고 제안한다:**
@@ -83,7 +83,7 @@ voice 모델을 따른다. 초안 작성 후 반드시 [`../technical-writer/ref
83
83
  ### Humanize 처리 — AI-tell 제거 + 음차 교정
84
84
 
85
85
  코멘트 초안을 작성한 뒤 AI-tell을 점검·교정한다. 교정 규칙의 SoT는
86
- [`../technical-writer/references/ai-tell-quick-rules.md`](../technical-writer/references/ai-tell-quick-rules.md)이며,
86
+ [`../_shared/references/ai-tell-quick-rules.md`](../_shared/references/ai-tell-quick-rules.md)이며,
87
87
  인라인 코멘트엔 특히 다음을 적용한다.
88
88
 
89
89
  **제거할 패턴 (S1 — 반드시 교정)**
@@ -147,7 +147,7 @@ voice 모델을 따른다. 초안 작성 후 반드시 [`../technical-writer/ref
147
147
 
148
148
  아래 패턴은 인라인·대화형 **두 말투 모두에서 보존한다**. 특히 "~것 같아요/같습니다"는
149
149
  직접 쓴 리뷰에서 282건으로 인라인 리뷰의 핵심 제안 어투다 — 헤징으로 오인해 깎으면 안 된다.
150
- (상세: `../technical-writer/references/author-voice.md`)
150
+ (상세: `../_shared/references/author-voice.md`)
151
151
 
152
152
  | 보존할 패턴 | 이유 |
153
153
  |-------------|------|
@@ -21,8 +21,8 @@ You are the Humanize Monolith role agent.
21
21
 
22
22
  순수 텍스트 윤문 전담 에이전트다. 문서 구조·내용·정보는 건드리지 않고, AI가 쓴 티가 나는 패턴(번역투·AI 관용구·헤징·시각 장식 남발)만 탐지해 자연스러운 한국어로 교정한다. 한 콜 안에서 탐지 → 처방 → 자가검증을 끝내고 등급과 함께 윤문 결과를 반환한다.
23
23
 
24
- 세부 룰북: `../technical-writer/references/ai-tell-quick-rules.md` (slim 룰북, 본 에이전트가 primary 참조자)
25
- 작성자 voice 보존 기준: `../technical-writer/references/author-voice.md` — 리뷰 코멘트·PR/변경 문서 등
24
+ 세부 룰북: `../_shared/references/ai-tell-quick-rules.md` (slim 룰북, 본 에이전트가 primary 참조자)
25
+ 작성자 voice 보존 기준: `../_shared/references/author-voice.md` — 리뷰 코멘트·PR/변경 문서 등
26
26
  "작성자가 직접 말하는" 텍스트를 윤문할 때는 이 문서의 **보존 패턴을 깎지 않는다** (아래 Do-NOT 참조).
27
27
 
28
28
  ## 두 가지 작업
@@ -13,7 +13,7 @@ You are the Impact Writer role agent.
13
13
 
14
14
  어투·문체 기준: `references/voice.md` — 독자별 말투(격식체/해요체)와 작성자 voice 적용 기준. **작성 전 반드시 확인한다.**
15
15
  세부 문서 유형별 구조: `references/doc-playbooks.md`
16
- 한국어 문장·용어 규칙: `../technical-writer/references/style-guide.md` (공유)
16
+ 한국어 문장·용어 규칙: `../_shared/references/style-guide.md` (공유)
17
17
  전면 윤문은 `humanize-monolith`가 담당한다 (아래 humanize 처리 참조).
18
18
 
19
19
  ## 다른 라이터와의 경계
@@ -1,6 +1,6 @@
1
1
  # Impact Writer Voice — 성과·기획 문서 어투 기준
2
2
 
3
- 성과 분석과 의사결정·기획 문서의 voice 기준이다. 코드 리뷰 코멘트 어투(`../technical-writer/references/author-voice.md`)와 기술문서 해요체(`style-guide.md`) 사이에 있는, 비즈니스 산문 전용 말투다. 작성자 voice의 "단정 말고 제안" 기질은 이어받되, 친근체와 이모지처럼 보고 장르에 안 맞는 요소는 덜어낸다.
3
+ 성과 분석과 의사결정·기획 문서의 voice 기준이다. 코드 리뷰 코멘트 어투(`../../_shared/references/author-voice.md`)와 기술문서 해요체(`style-guide.md`) 사이에 있는, 비즈니스 산문 전용 말투다. 작성자 voice의 "단정 말고 제안" 기질은 이어받되, 친근체와 이모지처럼 보고 장르에 안 맞는 요소는 덜어낸다.
4
4
 
5
5
  ## 한 줄 원칙
6
6
 
@@ -13,8 +13,8 @@ You are the Jira Writer role agent.
13
13
 
14
14
  산출물은 AI가 쓴 티가 나면 안 된다. 사람 개발자가 직접 친 티켓처럼 읽혀야 한다. **작업 시작 전 두 SSOT를 반드시 읽는다.**
15
15
 
16
- - AI-tell 제거 룰북: [`../technical-writer/references/ai-tell-quick-rules.md`](../technical-writer/references/ai-tell-quick-rules.md) — 번역투·AI 관용구·시각 장식 탐지·처방의 SoT
17
- - 문체 기준: [`../technical-writer/references/style-guide.md`](../technical-writer/references/style-guide.md) — 능동·직접 동사·용어 일관성
16
+ - AI-tell 제거 룰북: [`../_shared/references/ai-tell-quick-rules.md`](../_shared/references/ai-tell-quick-rules.md) — 번역투·AI 관용구·시각 장식 탐지·처방의 SoT
17
+ - 문체 기준: [`../_shared/references/style-guide.md`](../_shared/references/style-guide.md) — 능동·직접 동사·용어 일관성
18
18
 
19
19
  ## 티켓 말투 (voice)
20
20
 
@@ -11,7 +11,7 @@ You are the Presentation Writer role agent.
11
11
 
12
12
  발표 자료의 **콘텐츠**를 전담한다. 슬라이드마다 무엇을 말할지, 어떤 한 문장으로 청중을 움직일지, 수치를 어떤 맥락과 함께 보여줄지를 정한다. 슬라이드를 어떤 템플릿에 어떤 레이아웃으로 그릴지는 `presentation-designer`의 몫이다. 이 에이전트는 "무슨 말을 하는가"를 쓰고, designer는 "그 말을 어떻게 보여주는가"를 그린다.
13
13
 
14
- 한국어 문장·용어 규칙: `../technical-writer/references/style-guide.md` (공유)
14
+ 한국어 문장·용어 규칙: `../_shared/references/style-guide.md` (공유)
15
15
  슬라이드 유형별 콘텐츠 가이드: `references/content-playbook.md`
16
16
  전면 윤문은 `humanize-monolith`가 담당한다 (아래 humanize 처리 참조).
17
17
 
@@ -1,6 +1,6 @@
1
1
  # Content Playbook — 슬라이드 유형별 콘텐츠 작성
2
2
 
3
- 슬라이드 유형별 콘텐츠 뼈대. 각 유형은 `presentation-designer`의 슬라이드 타입(`presentation-designer/AGENT.md`의 Layout Patterns)과 1:1로 맞물린다. writer가 여기 형식으로 쓰면 designer가 그대로 타입을 배정해 HTML로 옮긴다. 공통 원칙은 AGENT.md의 작성 원칙을 따르고, 한국어 문장 규칙은 `../technical-writer/references/style-guide.md`를 공유한다.
3
+ 슬라이드 유형별 콘텐츠 뼈대. 각 유형은 `presentation-designer`의 슬라이드 타입(`presentation-designer/AGENT.md`의 Layout Patterns)과 1:1로 맞물린다. writer가 여기 형식으로 쓰면 designer가 그대로 타입을 배정해 HTML로 옮긴다. 공통 원칙은 AGENT.md의 작성 원칙을 따르고, 한국어 문장 규칙은 `../../_shared/references/style-guide.md`를 공유한다.
4
4
 
5
5
  ## 유형 ↔ designer 슬라이드 타입 매핑
6
6
 
@@ -51,7 +51,7 @@ Voice 모델의 SoT는 [`references/voice-sample.md`](./references/voice-sample.
51
51
 
52
52
  ### 3단계 — AI-tell 제거 (다듬기 모드에서 특히)
53
53
 
54
- `voice-sample.md`의 "쓰지 말 것"과 [`../technical-writer/references/ai-tell-quick-rules.md`](../technical-writer/references/ai-tell-quick-rules.md)를 기준으로 다음을 반드시 제거한다.
54
+ `voice-sample.md`의 "쓰지 말 것"과 [`../_shared/references/ai-tell-quick-rules.md`](../_shared/references/ai-tell-quick-rules.md)를 기준으로 다음을 반드시 제거한다.
55
55
 
56
56
  | 제거할 패턴 | 교정 |
57
57
  |-------------|------|
@@ -9,8 +9,8 @@ description: "테크니컬 라이터 전문가. API 문서, 컴포넌트 가이
9
9
 
10
10
  You are the Technical Writer role agent.
11
11
 
12
- 세부 스타일 가이드: `references/style-guide.md`
13
- AI-tell 패턴 윤문은 `humanize-monolith` 에이전트가 담당한다. 전면 윤문이 필요하면 위임하라. (`references/ai-tell-quick-rules.md`는 humanize-monolith가 primary 참조자)
12
+ 세부 스타일 가이드: `../_shared/references/style-guide.md`
13
+ AI-tell 패턴 윤문은 `humanize-monolith` 에이전트가 담당한다. 전면 윤문이 필요하면 위임하라. (`../_shared/references/ai-tell-quick-rules.md`는 humanize-monolith가 primary 참조자)
14
14
 
15
15
  ## 평가 관점
16
16
 
@@ -224,8 +224,8 @@ ges_execute {
224
224
  **코드 스니펫 블록은 한 글자도 건드리지 않습니다.** 엔진이 각 이슈 아래에 해당 라인 주변 코드를 코드펜스로 붙이는데(지목한 라인에 `>` 마커), 이건 디스크에서 그대로 읽은 원본입니다. 라인 번호, 들여쓰기, 마커를 포함해 펜스 안쪽 전체가 보존 대상입니다.
225
225
 
226
226
  humanize-monolith는 두 룰북을 함께 적용합니다.
227
- - **어투**: `../../role-agents/technical-writer/references/author-voice.md` — 제안형("~하는 게 좋을 것 같아요/어떨까요?"), 온기·물결·이모지(코멘트당 1개 안팎)는 보존하고, `[출처]` 태깅·"…권장." 체언 종지(Claude artifact)는 쓰지 않습니다. (파이프라인 리포트는 severity 섹션 구조라 `r:`/`c:`/`a:` 접두어를 붙이지 않습니다 — 접두어는 4.7단계 PR 인라인 코멘트에만 씁니다.)
228
- - **음차·AI-tell**: `../../role-agents/technical-writer/references/ai-tell-quick-rules.md` — 안 굳어진 음차("소스 오브 트루스" 등)는 한글 의역하되, 굳어진 화이트리스트(컴포넌트·토큰·렌더링·트레이드오프 등)는 그대로 둡니다.
227
+ - **어투**: `../../role-agents/_shared/references/author-voice.md` — 제안형("~하는 게 좋을 것 같아요/어떨까요?"), 온기·물결·이모지(코멘트당 1개 안팎)는 보존하고, `[출처]` 태깅·"…권장." 체언 종지(Claude artifact)는 쓰지 않습니다. (파이프라인 리포트는 severity 섹션 구조라 `r:`/`c:`/`a:` 접두어를 붙이지 않습니다 — 접두어는 4.7단계 PR 인라인 코멘트에만 씁니다.)
228
+ - **음차·AI-tell**: `../../role-agents/_shared/references/ai-tell-quick-rules.md` — 안 굳어진 음차("소스 오브 트루스" 등)는 한글 의역하되, 굳어진 화이트리스트(컴포넌트·토큰·렌더링·트레이드오프 등)는 그대로 둡니다.
229
229
 
230
230
  즉 리뷰 파이프라인 리포트도 인라인 코멘트와 동일하게 voice + 음차가 함께 처리됩니다.
231
231
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tienne/gestalt",
3
- "version": "0.49.1",
3
+ "version": "0.50.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.49.1",
3
+ "version": "0.50.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",
@@ -17,7 +17,7 @@ The short version:
17
17
  1. Collect the diff and blast radius for the target.
18
18
  2. Run the security, performance, and quality review agents over it.
19
19
  3. Reconcile their findings into one report, dropping duplicates and anything the diff does not support.
20
- 4. Rewrite the report in the author's voice using `role-agents/technical-writer/references/author-voice.md` and `ai-tell-quick-rules.md`.
20
+ 4. Rewrite the report in the author's voice using `role-agents/_shared/references/author-voice.md` and `ai-tell-quick-rules.md`.
21
21
  5. If the target is a PR, post inline comments with `r:` / `c:` / `a:` prefixes. Otherwise print the report.
22
22
 
23
23
  ## Notes
@@ -0,0 +1,20 @@
1
+ # 공유 레퍼런스
2
+
3
+ 여러 에이전트가 함께 쓰는 어투·문체 룰북이다. 특정 에이전트 소유가 아니라서 `_shared/` 아래 둔다.
4
+ `_shared`에는 `AGENT.md`가 없으므로 `RoleAgentRegistry`가 에이전트로 로드하지 않는다
5
+ (`plugin/skills/_shared/`와 같은 규칙).
6
+
7
+ | 파일 | 무엇 | 주 참조자 |
8
+ |---|---|---|
9
+ | `author-voice.md` | 작성자 고유 어투 모델 (제안형, 물결, 이모지). "더하기" 레퍼런스 | `code-review-writer`, `code-review-responder`, `change-context-writer`, `humanize-monolith`, `/review`, `/review-reply` |
10
+ | `ai-tell-quick-rules.md` | AI-tell 탐지·처방 룰북 (A~J 카테고리, S1/S2). "빼기" 레퍼런스 | `humanize-monolith`(primary), `code-review-writer`, `code-review-responder`, `jira-writer`, `slack-messenger` |
11
+ | `style-guide.md` | 한국어 문장·용어·문서 구조 규칙 | `technical-writer`, `impact-writer`, `presentation-writer`, `presentation-designer`, `jira-writer` |
12
+
13
+ ## 고칠 때
14
+
15
+ - **룰을 추가하면 그 문서가 스스로 그 룰을 지키는지 먼저 확인한다.** 룰 문서가 금지 어휘를
16
+ 본문에 쓰면 산출물로 샌다. 금지어를 넣었으면 같은 문서를 grep한다.
17
+ - 어투 규칙은 **S1으로 올려야 실제로 강제된다.** S2는 모델이 우선순위를 알아서 정하면서 새어나간다.
18
+ - 경로를 참조하는 자리가 여러 곳이다. 파일을 옮기거나 이름을 바꾸면 `plugin/` 전체에서
19
+ 상대경로 참조를 다시 확인한다 (에이전트는 `../_shared/references/`, 에이전트의 `references/`
20
+ 하위 문서는 `../../_shared/references/`, 스킬은 `../../role-agents/_shared/references/`).
@@ -122,7 +122,7 @@ Mermaid를 쓸 때도 무엇이 바뀌었는지 한 줄로 짚어 준다 (예: `
122
122
 
123
123
  ## 어투 — 작성자 voice
124
124
 
125
- PR/변경 문서도 결국 작성자가 직접 말하는 글이다. [`../technical-writer/references/author-voice.md`](../technical-writer/references/author-voice.md)의
125
+ PR/변경 문서도 결국 작성자가 직접 말하는 글이다. [`../_shared/references/author-voice.md`](../_shared/references/author-voice.md)의
126
126
  "장르별 적용 → PR 설명·변경 컨텍스트" 기준을 따른다. 본문은 "무엇을 왜 바꿨는지"를 서술하는 성격이라
127
127
  제안형보다 **담백한 서술체**가 맞지만, "~한 것 같습니다"의 부드러움과 온기는 유지하고 딱딱한 단언·결산
128
128
  피벗으로 평탄화하지 않는다. `c:`/`r:`·`[출처]`·"권장." 같은 Claude artifact는 쓰지 않는다.
@@ -84,7 +84,7 @@ key는 넣었는데 index 대신 id를 썼어요. 목록 순서가 바뀌는 케
84
84
 
85
85
  ## Voice 레퍼런스 (필수 적용)
86
86
 
87
- 어투는 [`../technical-writer/references/author-voice.md`](../technical-writer/references/author-voice.md)를 따른다.
87
+ 어투는 [`../_shared/references/author-voice.md`](../_shared/references/author-voice.md)를 따른다.
88
88
  특히 **말투 A의 "본인 PR에 답할 때 / 수정 반영"** 절과 **말투 B(대화형 답글)** 가 이 에이전트의 주 참조 구간이다. 초안을 쓴 뒤 반드시 읽고 다듬는다.
89
89
 
90
90
  핵심 시그니처:
@@ -99,7 +99,7 @@ key는 넣었는데 index 대신 id를 썼어요. 목록 순서가 바뀌는 케
99
99
 
100
100
  ### Humanize 처리
101
101
 
102
- 초안을 쓴 뒤 AI-tell을 점검한다. SoT는 [`../technical-writer/references/ai-tell-quick-rules.md`](../technical-writer/references/ai-tell-quick-rules.md)이고, 답글엔 특히 아래가 자주 샌다.
102
+ 초안을 쓴 뒤 AI-tell을 점검한다. SoT는 [`../_shared/references/ai-tell-quick-rules.md`](../_shared/references/ai-tell-quick-rules.md)이고, 답글엔 특히 아래가 자주 샌다.
103
103
 
104
104
  | 패턴 | 예시 | 교정 |
105
105
  |------|------|------|
@@ -64,7 +64,7 @@ PR diff를 리뷰하고, 머지 가능 여부를 판단할 수 있는 구체적
64
64
  ### Voice 레퍼런스 (필수 적용)
65
65
 
66
66
  코멘트 어투는 실제 리뷰어의 PR 코멘트(2022~2025년 1,300여 건, Claude 오염 전)에서 추려낸
67
- voice 모델을 따른다. 초안 작성 후 반드시 [`../technical-writer/references/author-voice.md`](../technical-writer/references/author-voice.md)를
67
+ voice 모델을 따른다. 초안 작성 후 반드시 [`../_shared/references/author-voice.md`](../_shared/references/author-voice.md)를
68
68
  읽고 그 어투에 맞춰 다듬는다.
69
69
 
70
70
  핵심 시그니처 — **단정하지 말고 제안한다:**
@@ -83,7 +83,7 @@ voice 모델을 따른다. 초안 작성 후 반드시 [`../technical-writer/ref
83
83
  ### Humanize 처리 — AI-tell 제거 + 음차 교정
84
84
 
85
85
  코멘트 초안을 작성한 뒤 AI-tell을 점검·교정한다. 교정 규칙의 SoT는
86
- [`../technical-writer/references/ai-tell-quick-rules.md`](../technical-writer/references/ai-tell-quick-rules.md)이며,
86
+ [`../_shared/references/ai-tell-quick-rules.md`](../_shared/references/ai-tell-quick-rules.md)이며,
87
87
  인라인 코멘트엔 특히 다음을 적용한다.
88
88
 
89
89
  **제거할 패턴 (S1 — 반드시 교정)**
@@ -147,7 +147,7 @@ voice 모델을 따른다. 초안 작성 후 반드시 [`../technical-writer/ref
147
147
 
148
148
  아래 패턴은 인라인·대화형 **두 말투 모두에서 보존한다**. 특히 "~것 같아요/같습니다"는
149
149
  직접 쓴 리뷰에서 282건으로 인라인 리뷰의 핵심 제안 어투다 — 헤징으로 오인해 깎으면 안 된다.
150
- (상세: `../technical-writer/references/author-voice.md`)
150
+ (상세: `../_shared/references/author-voice.md`)
151
151
 
152
152
  | 보존할 패턴 | 이유 |
153
153
  |-------------|------|
@@ -21,8 +21,8 @@ You are the Humanize Monolith role agent.
21
21
 
22
22
  순수 텍스트 윤문 전담 에이전트다. 문서 구조·내용·정보는 건드리지 않고, AI가 쓴 티가 나는 패턴(번역투·AI 관용구·헤징·시각 장식 남발)만 탐지해 자연스러운 한국어로 교정한다. 한 콜 안에서 탐지 → 처방 → 자가검증을 끝내고 등급과 함께 윤문 결과를 반환한다.
23
23
 
24
- 세부 룰북: `../technical-writer/references/ai-tell-quick-rules.md` (slim 룰북, 본 에이전트가 primary 참조자)
25
- 작성자 voice 보존 기준: `../technical-writer/references/author-voice.md` — 리뷰 코멘트·PR/변경 문서 등
24
+ 세부 룰북: `../_shared/references/ai-tell-quick-rules.md` (slim 룰북, 본 에이전트가 primary 참조자)
25
+ 작성자 voice 보존 기준: `../_shared/references/author-voice.md` — 리뷰 코멘트·PR/변경 문서 등
26
26
  "작성자가 직접 말하는" 텍스트를 윤문할 때는 이 문서의 **보존 패턴을 깎지 않는다** (아래 Do-NOT 참조).
27
27
 
28
28
  ## 두 가지 작업
@@ -13,7 +13,7 @@ You are the Impact Writer role agent.
13
13
 
14
14
  어투·문체 기준: `references/voice.md` — 독자별 말투(격식체/해요체)와 작성자 voice 적용 기준. **작성 전 반드시 확인한다.**
15
15
  세부 문서 유형별 구조: `references/doc-playbooks.md`
16
- 한국어 문장·용어 규칙: `../technical-writer/references/style-guide.md` (공유)
16
+ 한국어 문장·용어 규칙: `../_shared/references/style-guide.md` (공유)
17
17
  전면 윤문은 `humanize-monolith`가 담당한다 (아래 humanize 처리 참조).
18
18
 
19
19
  ## 다른 라이터와의 경계
@@ -1,6 +1,6 @@
1
1
  # Impact Writer Voice — 성과·기획 문서 어투 기준
2
2
 
3
- 성과 분석과 의사결정·기획 문서의 voice 기준이다. 코드 리뷰 코멘트 어투(`../technical-writer/references/author-voice.md`)와 기술문서 해요체(`style-guide.md`) 사이에 있는, 비즈니스 산문 전용 말투다. 작성자 voice의 "단정 말고 제안" 기질은 이어받되, 친근체와 이모지처럼 보고 장르에 안 맞는 요소는 덜어낸다.
3
+ 성과 분석과 의사결정·기획 문서의 voice 기준이다. 코드 리뷰 코멘트 어투(`../../_shared/references/author-voice.md`)와 기술문서 해요체(`style-guide.md`) 사이에 있는, 비즈니스 산문 전용 말투다. 작성자 voice의 "단정 말고 제안" 기질은 이어받되, 친근체와 이모지처럼 보고 장르에 안 맞는 요소는 덜어낸다.
4
4
 
5
5
  ## 한 줄 원칙
6
6
 
@@ -13,8 +13,8 @@ You are the Jira Writer role agent.
13
13
 
14
14
  산출물은 AI가 쓴 티가 나면 안 된다. 사람 개발자가 직접 친 티켓처럼 읽혀야 한다. **작업 시작 전 두 SSOT를 반드시 읽는다.**
15
15
 
16
- - AI-tell 제거 룰북: [`../technical-writer/references/ai-tell-quick-rules.md`](../technical-writer/references/ai-tell-quick-rules.md) — 번역투·AI 관용구·시각 장식 탐지·처방의 SoT
17
- - 문체 기준: [`../technical-writer/references/style-guide.md`](../technical-writer/references/style-guide.md) — 능동·직접 동사·용어 일관성
16
+ - AI-tell 제거 룰북: [`../_shared/references/ai-tell-quick-rules.md`](../_shared/references/ai-tell-quick-rules.md) — 번역투·AI 관용구·시각 장식 탐지·처방의 SoT
17
+ - 문체 기준: [`../_shared/references/style-guide.md`](../_shared/references/style-guide.md) — 능동·직접 동사·용어 일관성
18
18
 
19
19
  ## 티켓 말투 (voice)
20
20
 
@@ -11,7 +11,7 @@ You are the Presentation Writer role agent.
11
11
 
12
12
  발표 자료의 **콘텐츠**를 전담한다. 슬라이드마다 무엇을 말할지, 어떤 한 문장으로 청중을 움직일지, 수치를 어떤 맥락과 함께 보여줄지를 정한다. 슬라이드를 어떤 템플릿에 어떤 레이아웃으로 그릴지는 `presentation-designer`의 몫이다. 이 에이전트는 "무슨 말을 하는가"를 쓰고, designer는 "그 말을 어떻게 보여주는가"를 그린다.
13
13
 
14
- 한국어 문장·용어 규칙: `../technical-writer/references/style-guide.md` (공유)
14
+ 한국어 문장·용어 규칙: `../_shared/references/style-guide.md` (공유)
15
15
  슬라이드 유형별 콘텐츠 가이드: `references/content-playbook.md`
16
16
  전면 윤문은 `humanize-monolith`가 담당한다 (아래 humanize 처리 참조).
17
17
 
@@ -1,6 +1,6 @@
1
1
  # Content Playbook — 슬라이드 유형별 콘텐츠 작성
2
2
 
3
- 슬라이드 유형별 콘텐츠 뼈대. 각 유형은 `presentation-designer`의 슬라이드 타입(`presentation-designer/AGENT.md`의 Layout Patterns)과 1:1로 맞물린다. writer가 여기 형식으로 쓰면 designer가 그대로 타입을 배정해 HTML로 옮긴다. 공통 원칙은 AGENT.md의 작성 원칙을 따르고, 한국어 문장 규칙은 `../technical-writer/references/style-guide.md`를 공유한다.
3
+ 슬라이드 유형별 콘텐츠 뼈대. 각 유형은 `presentation-designer`의 슬라이드 타입(`presentation-designer/AGENT.md`의 Layout Patterns)과 1:1로 맞물린다. writer가 여기 형식으로 쓰면 designer가 그대로 타입을 배정해 HTML로 옮긴다. 공통 원칙은 AGENT.md의 작성 원칙을 따르고, 한국어 문장 규칙은 `../../_shared/references/style-guide.md`를 공유한다.
4
4
 
5
5
  ## 유형 ↔ designer 슬라이드 타입 매핑
6
6
 
@@ -51,7 +51,7 @@ Voice 모델의 SoT는 [`references/voice-sample.md`](./references/voice-sample.
51
51
 
52
52
  ### 3단계 — AI-tell 제거 (다듬기 모드에서 특히)
53
53
 
54
- `voice-sample.md`의 "쓰지 말 것"과 [`../technical-writer/references/ai-tell-quick-rules.md`](../technical-writer/references/ai-tell-quick-rules.md)를 기준으로 다음을 반드시 제거한다.
54
+ `voice-sample.md`의 "쓰지 말 것"과 [`../_shared/references/ai-tell-quick-rules.md`](../_shared/references/ai-tell-quick-rules.md)를 기준으로 다음을 반드시 제거한다.
55
55
 
56
56
  | 제거할 패턴 | 교정 |
57
57
  |-------------|------|
@@ -9,8 +9,8 @@ description: "테크니컬 라이터 전문가. API 문서, 컴포넌트 가이
9
9
 
10
10
  You are the Technical Writer role agent.
11
11
 
12
- 세부 스타일 가이드: `references/style-guide.md`
13
- AI-tell 패턴 윤문은 `humanize-monolith` 에이전트가 담당한다. 전면 윤문이 필요하면 위임하라. (`references/ai-tell-quick-rules.md`는 humanize-monolith가 primary 참조자)
12
+ 세부 스타일 가이드: `../_shared/references/style-guide.md`
13
+ AI-tell 패턴 윤문은 `humanize-monolith` 에이전트가 담당한다. 전면 윤문이 필요하면 위임하라. (`../_shared/references/ai-tell-quick-rules.md`는 humanize-monolith가 primary 참조자)
14
14
 
15
15
  ## 평가 관점
16
16
 
@@ -224,8 +224,8 @@ ges_execute {
224
224
  **코드 스니펫 블록은 한 글자도 건드리지 않습니다.** 엔진이 각 이슈 아래에 해당 라인 주변 코드를 코드펜스로 붙이는데(지목한 라인에 `>` 마커), 이건 디스크에서 그대로 읽은 원본입니다. 라인 번호, 들여쓰기, 마커를 포함해 펜스 안쪽 전체가 보존 대상입니다.
225
225
 
226
226
  humanize-monolith는 두 룰북을 함께 적용합니다.
227
- - **어투**: `../../role-agents/technical-writer/references/author-voice.md` — 제안형("~하는 게 좋을 것 같아요/어떨까요?"), 온기·물결·이모지(코멘트당 1개 안팎)는 보존하고, `[출처]` 태깅·"…권장." 체언 종지(Claude artifact)는 쓰지 않습니다. (파이프라인 리포트는 severity 섹션 구조라 `r:`/`c:`/`a:` 접두어를 붙이지 않습니다 — 접두어는 4.7단계 PR 인라인 코멘트에만 씁니다.)
228
- - **음차·AI-tell**: `../../role-agents/technical-writer/references/ai-tell-quick-rules.md` — 안 굳어진 음차("소스 오브 트루스" 등)는 한글 의역하되, 굳어진 화이트리스트(컴포넌트·토큰·렌더링·트레이드오프 등)는 그대로 둡니다.
227
+ - **어투**: `../../role-agents/_shared/references/author-voice.md` — 제안형("~하는 게 좋을 것 같아요/어떨까요?"), 온기·물결·이모지(코멘트당 1개 안팎)는 보존하고, `[출처]` 태깅·"…권장." 체언 종지(Claude artifact)는 쓰지 않습니다. (파이프라인 리포트는 severity 섹션 구조라 `r:`/`c:`/`a:` 접두어를 붙이지 않습니다 — 접두어는 4.7단계 PR 인라인 코멘트에만 씁니다.)
228
+ - **음차·AI-tell**: `../../role-agents/_shared/references/ai-tell-quick-rules.md` — 안 굳어진 음차("소스 오브 트루스" 등)는 한글 의역하되, 굳어진 화이트리스트(컴포넌트·토큰·렌더링·트레이드오프 등)는 그대로 둡니다.
229
229
 
230
230
  즉 리뷰 파이프라인 리포트도 인라인 코멘트와 동일하게 voice + 음차가 함께 처리됩니다.
231
231