oh-my-design-cli 1.3.9 → 1.5.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 (138) hide show
  1. package/README.ja.md +8 -8
  2. package/README.ko.md +7 -7
  3. package/README.md +50 -16
  4. package/README.zh-TW.md +8 -8
  5. package/agents/omd-asset-curator.md +2 -7
  6. package/agents/omd-codex-image.md +49 -0
  7. package/agents/omd-designer-review.md +38 -0
  8. package/agents/omd-final-qa.md +40 -0
  9. package/agents/omd-kr-writer.md +35 -0
  10. package/agents/omd-locale-adapter.md +32 -0
  11. package/agents/omd-master.md +3 -13
  12. package/agents/omd-orchestrator.md +34 -0
  13. package/data/reference-audits/2026-05-14-kr10.md +72 -0
  14. package/data/reference-audits/2026-05-15-kr10.md +124 -0
  15. package/data/reference-fingerprints.json +253 -3
  16. package/data/research/2026-05-18-agent-landscape.md +69 -0
  17. package/data/research/2026-05-18-kr-style-presets.md +572 -0
  18. package/dist/bin/oh-my-design.js +6 -3
  19. package/dist/bin/oh-my-design.js.map +1 -1
  20. package/dist/{install-skills-MVXVXYAY.js → install-skills-IETT2TBJ.js} +91 -8
  21. package/dist/install-skills-IETT2TBJ.js.map +1 -0
  22. package/package.json +9 -3
  23. package/skills/omd-apply/SKILL.md +0 -1
  24. package/skills/omd-codex-image/SKILL.md +162 -0
  25. package/skills/omd-designer-review/SKILL.md +146 -0
  26. package/skills/omd-final-qa/SKILL.md +153 -0
  27. package/skills/omd-kr-writer/SKILL.md +229 -0
  28. package/skills/omd-locale-adapter/SKILL.md +124 -0
  29. package/skills/omd-orchestrator/SKILL.md +124 -0
  30. package/web/references/29cm/DESIGN.md +11 -2
  31. package/web/references/ably/DESIGN.md +12 -2
  32. package/web/references/airbnb/DESIGN.md +17 -2
  33. package/web/references/airtable/DESIGN.md +20 -0
  34. package/web/references/apple/DESIGN.md +17 -2
  35. package/web/references/baemin/DESIGN.md +11 -2
  36. package/web/references/banksalad/DESIGN.md +17 -2
  37. package/web/references/bmw/DESIGN.md +14 -0
  38. package/web/references/bunjang/DESIGN.md +308 -0
  39. package/web/references/cal/DESIGN.md +14 -0
  40. package/web/references/catchtable/DESIGN.md +262 -0
  41. package/web/references/channeltalk/DESIGN.md +374 -0
  42. package/web/references/classum/DESIGN.md +217 -0
  43. package/web/references/claude/DESIGN.md +11 -2
  44. package/web/references/clay/DESIGN.md +19 -0
  45. package/web/references/clickhouse/DESIGN.md +19 -0
  46. package/web/references/cohere/DESIGN.md +20 -0
  47. package/web/references/coinbase/DESIGN.md +14 -0
  48. package/web/references/composio/DESIGN.md +14 -0
  49. package/web/references/coupang/DESIGN.md +17 -2
  50. package/web/references/cursor/DESIGN.md +20 -0
  51. package/web/references/dabang/DESIGN.md +210 -0
  52. package/web/references/dcard/DESIGN.md +11 -2
  53. package/web/references/elevenlabs/DESIGN.md +20 -0
  54. package/web/references/expo/DESIGN.md +20 -0
  55. package/web/references/fastcampus/DESIGN.md +460 -0
  56. package/web/references/ferrari/DESIGN.md +14 -0
  57. package/web/references/figma/DESIGN.md +17 -2
  58. package/web/references/flex/DESIGN.md +309 -0
  59. package/web/references/framer/DESIGN.md +20 -0
  60. package/web/references/freee/DESIGN.md +16 -2
  61. package/web/references/gangnamunni/DESIGN.md +18 -2
  62. package/web/references/gmarket/DESIGN.md +464 -0
  63. package/web/references/hashicorp/DESIGN.md +19 -0
  64. package/web/references/ibm/DESIGN.md +20 -0
  65. package/web/references/inflearn/DESIGN.md +396 -0
  66. package/web/references/intercom/DESIGN.md +14 -0
  67. package/web/references/jumpit/DESIGN.md +366 -0
  68. package/web/references/kakao/DESIGN.md +14 -0
  69. package/web/references/kakaobank/DESIGN.md +17 -2
  70. package/web/references/kakaopay/DESIGN.md +17 -2
  71. package/web/references/karrot/DESIGN.md +16 -2
  72. package/web/references/kbank/DESIGN.md +195 -0
  73. package/web/references/kraken/DESIGN.md +14 -0
  74. package/web/references/krds/DESIGN.md +17 -2
  75. package/web/references/kream/DESIGN.md +382 -0
  76. package/web/references/kurly/DESIGN.md +11 -2
  77. package/web/references/lamborghini/DESIGN.md +14 -0
  78. package/web/references/line/DESIGN.md +17 -2
  79. package/web/references/linear.app/DESIGN.md +17 -2
  80. package/web/references/lovable/DESIGN.md +14 -0
  81. package/web/references/lunit/DESIGN.md +249 -0
  82. package/web/references/mercari/DESIGN.md +11 -2
  83. package/web/references/minimax/DESIGN.md +14 -0
  84. package/web/references/mintlify/DESIGN.md +14 -0
  85. package/web/references/miro/DESIGN.md +20 -0
  86. package/web/references/mistral.ai/DESIGN.md +20 -0
  87. package/web/references/mongodb/DESIGN.md +19 -0
  88. package/web/references/musinsa/DESIGN.md +11 -2
  89. package/web/references/naver/DESIGN.md +17 -2
  90. package/web/references/notion/DESIGN.md +11 -2
  91. package/web/references/nvidia/DESIGN.md +11 -2
  92. package/web/references/ohouse/DESIGN.md +11 -2
  93. package/web/references/oliveyoung/DESIGN.md +342 -0
  94. package/web/references/ollama/DESIGN.md +14 -0
  95. package/web/references/opencode.ai/DESIGN.md +20 -0
  96. package/web/references/pinkoi/DESIGN.md +11 -2
  97. package/web/references/pinterest/DESIGN.md +19 -0
  98. package/web/references/posthog/DESIGN.md +20 -0
  99. package/web/references/qanda/DESIGN.md +11 -2
  100. package/web/references/raycast/DESIGN.md +19 -0
  101. package/web/references/remember/DESIGN.md +17 -2
  102. package/web/references/renault/DESIGN.md +14 -0
  103. package/web/references/replicate/DESIGN.md +14 -0
  104. package/web/references/resend/DESIGN.md +20 -0
  105. package/web/references/revolut/DESIGN.md +14 -0
  106. package/web/references/ridi/DESIGN.md +11 -2
  107. package/web/references/runwayml/DESIGN.md +14 -0
  108. package/web/references/sanity/DESIGN.md +20 -0
  109. package/web/references/sentry/DESIGN.md +14 -0
  110. package/web/references/socar/DESIGN.md +17 -2
  111. package/web/references/spacex/DESIGN.md +11 -2
  112. package/web/references/spotify/DESIGN.md +14 -0
  113. package/web/references/stripe/DESIGN.md +11 -2
  114. package/web/references/supabase/DESIGN.md +20 -0
  115. package/web/references/superhuman/DESIGN.md +20 -0
  116. package/web/references/tesla/DESIGN.md +11 -2
  117. package/web/references/together.ai/DESIGN.md +20 -0
  118. package/web/references/toss/DESIGN.md +16 -2
  119. package/web/references/toss-securities/DESIGN.md +193 -0
  120. package/web/references/tving/DESIGN.md +259 -0
  121. package/web/references/uber/DESIGN.md +19 -0
  122. package/web/references/upbit/DESIGN.md +276 -0
  123. package/web/references/upstage/DESIGN.md +214 -0
  124. package/web/references/vercel/DESIGN.md +17 -2
  125. package/web/references/voltagent/DESIGN.md +14 -0
  126. package/web/references/wadiz/DESIGN.md +344 -0
  127. package/web/references/wanted/DESIGN.md +16 -2
  128. package/web/references/warp/DESIGN.md +14 -0
  129. package/web/references/webflow/DESIGN.md +14 -0
  130. package/web/references/wise/DESIGN.md +19 -0
  131. package/web/references/x.ai/DESIGN.md +14 -0
  132. package/web/references/yanolja/DESIGN.md +17 -2
  133. package/web/references/yeogiotte/DESIGN.md +18 -2
  134. package/web/references/zapier/DESIGN.md +20 -0
  135. package/web/references/zigbang/DESIGN.md +12 -2
  136. package/web/references/zigzag/DESIGN.md +17 -2
  137. package/agents/omd-3d-blender.md +0 -269
  138. package/dist/install-skills-MVXVXYAY.js.map +0 -1
package/README.ja.md CHANGED
@@ -5,7 +5,7 @@
5
5
  <h1 align="center">oh-my-design</h1>
6
6
 
7
7
  <p align="center">
8
- <strong>88 社の実在する企業デザインシステムから DESIGN.md を生成。</strong>インタラクティブウィザード。AI 呼び出しゼロ。
8
+ <strong>107 社の実在する企業デザインシステムから DESIGN.md を生成。</strong>インタラクティブウィザード。AI 呼び出しゼロ。
9
9
  </p>
10
10
 
11
11
  <p align="center">
@@ -17,7 +17,7 @@
17
17
  <a href="https://github.com/kwakseongjae/oh-my-design/stargazers"><img src="https://img.shields.io/github/stars/kwakseongjae/oh-my-design?style=social" alt="GitHub Stars" /></a>
18
18
  <img src="https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square" alt="PRs Welcome" />
19
19
  <img src="https://img.shields.io/badge/AI%20calls-zero-blue?style=flat-square" alt="Zero AI" />
20
- <img src="https://img.shields.io/badge/references-88-7c5cfc?style=flat-square" alt="88 References" />
20
+ <img src="https://img.shields.io/badge/references-107-7c5cfc?style=flat-square" alt="107 References" />
21
21
  </p>
22
22
 
23
23
  <p align="center">
@@ -36,7 +36,7 @@
36
36
 
37
37
  1. **[仕様](spec/omd-v0.1.md)** — バージョン管理された Google Stitch 拡張、MIT ライセンス。
38
38
  2. **[Claude Code スキル](.claude/skills/omd/SKILL.md)** — 仕様をハード制約として自動適用。
39
- 3. **[88 のリファレンス](references/)** — 実在企業の `DESIGN.md` をフォークし、ビルダーでカスタマイズしてそのまま導入。
39
+ 3. **[107 のリファレンス](references/)** — 実在企業の `DESIGN.md` をフォークし、ビルダーでカスタマイズしてそのまま導入。
40
40
 
41
41
  **API キー不要。AI 呼び出しゼロ。全てクライアントサイドで完結。**
42
42
 
@@ -61,10 +61,10 @@ Toss · Claude · Line · Stripe · Linear · Vercel · Notion · Airbnb · Appl
61
61
  ## 主な機能
62
62
 
63
63
  - **ビルダー** — リファレンスを選び、カラー / radius / ダークモードを調整し、コンポーネントを選択して Export。**Philosophy** フィルターで完全なブランド哲学を持つ 10 件に絞り込めます。
64
- - **デザインシステムディレクトリ** ([oh-my-design.kr/design-systems](https://oh-my-design.kr/design-systems)) — 88 リファレンス中 34 件は公式のデザインシステムまたはブランドガイドラインページを持っており、ディレクトリからライブサムネイル付きで直接アクセスできます。
65
- - **Personal Curation** ([oh-my-design.kr/curation](https://oh-my-design.kr/curation)) — MBTI 風の短いクイズであなたのデザイン傾向を 88 リファレンスのいずれかとマッチングし、そのリファレンスが事前選択されたビルダーへ直接移動します。
64
+ - **デザインシステムディレクトリ** ([oh-my-design.kr/design-systems](https://oh-my-design.kr/design-systems)) — 107 リファレンス中 34 件は公式のデザインシステムまたはブランドガイドラインページを持っており、ディレクトリからライブサムネイル付きで直接アクセスできます。
65
+ - **Personal Curation** ([oh-my-design.kr/curation](https://oh-my-design.kr/curation)) — MBTI 風の短いクイズであなたのデザイン傾向を 107 リファレンスのいずれかとマッチングし、そのリファレンスが事前選択されたビルダーへ直接移動します。
66
66
 
67
- ## サポートされる 88 のリファレンス
67
+ ## サポートされる 107 のリファレンス
68
68
 
69
69
  | カテゴリ | 企業 |
70
70
  |----------|------|
@@ -112,7 +112,7 @@ Toss · Claude · Line · Stripe · Linear · Vercel · Notion · Airbnb · Appl
112
112
  oh-my-design/
113
113
  spec/ OmD v0.1 仕様 (正本)
114
114
  .claude/skills/omd/ Claude Code スキルバンドル
115
- references/ 88 社分の DESIGN.md ファイル
115
+ references/ 107 社分の DESIGN.md ファイル
116
116
  src/ CLI コア (TypeScript)
117
117
  web/ Next.js ウェブビルダー
118
118
  src/app/ Landing + Builder + Directory ページ
@@ -128,7 +128,7 @@ oh-my-design/
128
128
 
129
129
  ```bash
130
130
  npm test # CLI: 370 テスト — unit + リファレンス全件のスモーク
131
- cd web && npm test # Web: 88 テスト — generate-css, config-hash, survey
131
+ cd web && npm test # Web: 107 テスト — generate-css, config-hash, survey
132
132
  ```
133
133
 
134
134
  統合スイート (`test/integration/all-references.test.ts`) はすべての `references/<id>/DESIGN.md` に対して生成パイプライン全体を実行するため、リファレンスの破損は PR レビューでリファレンスごとの失敗として可視化されます。フォルダ規約とモジュール別カバレッジマップは [test/README.md](test/README.md) を参照してください。
package/README.ko.md CHANGED
@@ -5,7 +5,7 @@
5
5
  <h1 align="center">oh-my-design</h1>
6
6
 
7
7
  <p align="center">
8
- <strong>88개 기업 디자인 시스템 기반 DESIGN.md 생성기.</strong> 인터랙티브 위자드. AI 호출 없음.
8
+ <strong>107개 기업 디자인 시스템 기반 DESIGN.md 생성기.</strong> 인터랙티브 위자드. AI 호출 없음.
9
9
  </p>
10
10
 
11
11
  <p align="center">
@@ -17,7 +17,7 @@
17
17
  <a href="https://www.npmjs.com/package/oh-my-design-cli"><img src="https://img.shields.io/npm/dm/oh-my-design-cli?style=flat-square&color=cb3837" alt="npm downloads" /></a>
18
18
  <a href="LICENSE"><img src="https://img.shields.io/github/license/kwakseongjae/oh-my-design?style=flat-square" alt="License" /></a>
19
19
  <a href="https://github.com/kwakseongjae/oh-my-design/stargazers"><img src="https://img.shields.io/github/stars/kwakseongjae/oh-my-design?style=social" alt="GitHub Stars" /></a>
20
- <img src="https://img.shields.io/badge/references-88-7c5cfc?style=flat-square" alt="88 References" />
20
+ <img src="https://img.shields.io/badge/references-107-7c5cfc?style=flat-square" alt="107 References" />
21
21
  <img src="https://img.shields.io/badge/AI%20calls-zero-blue?style=flat-square" alt="Zero AI" />
22
22
  </p>
23
23
 
@@ -37,7 +37,7 @@
37
37
 
38
38
  1. **[스펙](spec/omd-v0.1.md)** — 버전 관리되는 Google Stitch 확장, MIT 라이선스.
39
39
  2. **[Claude Code 스킬](.claude/skills/omd/SKILL.md)** — 스펙을 하드 제약으로 자동 적용.
40
- 3. **[88개 레퍼런스](references/)** — 실제 기업의 `DESIGN.md` 파일들을 포크하고, 빌더로 커스터마이징해 바로 씁니다.
40
+ 3. **[107개 레퍼런스](references/)** — 실제 기업의 `DESIGN.md` 파일들을 포크하고, 빌더로 커스터마이징해 바로 씁니다.
41
41
 
42
42
  **API 키 불필요. AI 호출 없음. 모두 클라이언트 사이드.**
43
43
 
@@ -194,10 +194,10 @@ Toss · Claude · Line · Stripe · Linear · Vercel · Notion · Airbnb · Appl
194
194
  ## 주요 구성
195
195
 
196
196
  - **빌더** — 레퍼런스 선택 후 색상 / radius / 다크 모드를 조정하고, 컴포넌트를 고른 뒤 Export. **Philosophy** 필터로 완전한 브랜드 철학을 담은 10개만 볼 수 있어요.
197
- - **디자인 시스템 디렉토리** ([oh-my-design.kr/design-systems](https://oh-my-design.kr/design-systems)) — 88개 레퍼런스 중 34개는 공식 디자인 시스템 또는 브랜드 가이드라인 페이지가 있으며, 디렉토리에서 라이브 썸네일과 함께 바로 이동할 수 있습니다.
198
- - **Personal Curation** ([oh-my-design.kr/curation](https://oh-my-design.kr/curation)) — MBTI 스타일의 짧은 퀴즈로 당신의 디자인 성향을 88개 레퍼런스 중 하나와 매칭해, 해당 레퍼런스가 미리 선택된 빌더로 바로 이동시켜 줍니다.
197
+ - **디자인 시스템 디렉토리** ([oh-my-design.kr/design-systems](https://oh-my-design.kr/design-systems)) — 107개 레퍼런스 중 34개는 공식 디자인 시스템 또는 브랜드 가이드라인 페이지가 있으며, 디렉토리에서 라이브 썸네일과 함께 바로 이동할 수 있습니다.
198
+ - **Personal Curation** ([oh-my-design.kr/curation](https://oh-my-design.kr/curation)) — MBTI 스타일의 짧은 퀴즈로 당신의 디자인 성향을 107개 레퍼런스 중 하나와 매칭해, 해당 레퍼런스가 미리 선택된 빌더로 바로 이동시켜 줍니다.
199
199
 
200
- ## 88개 지원 레퍼런스
200
+ ## 107개 지원 레퍼런스
201
201
 
202
202
  | 카테고리 | 기업 |
203
203
  |----------|------|
@@ -245,7 +245,7 @@ Toss · Claude · Line · Stripe · Linear · Vercel · Notion · Airbnb · Appl
245
245
  oh-my-design/
246
246
  spec/ OmD v0.1 스펙 (정본)
247
247
  .claude/skills/omd/ Claude Code 스킬 번들
248
- references/ 88개 기업 DESIGN.md 파일
248
+ references/ 107개 기업 DESIGN.md 파일
249
249
  src/ CLI 코어 (TypeScript)
250
250
  web/ Next.js 웹 빌더
251
251
  src/app/ Landing + Builder + Directory 페이지
package/README.md CHANGED
@@ -5,7 +5,7 @@
5
5
  <h1 align="center">oh-my-design</h1>
6
6
 
7
7
  <p align="center">
8
- <strong>One-command bootstrap for skill-driven design with your AI coding agent.</strong> 88 real company design systems. Zero AI calls in the install. Then you just talk to your agent.
8
+ <strong>One-command bootstrap for skill-driven design with your AI coding agent.</strong> 107 real company design systems. Zero AI calls in the install. Then you just talk to your agent.
9
9
  </p>
10
10
 
11
11
  <p align="center">
@@ -13,7 +13,7 @@
13
13
  <a href="https://www.npmjs.com/package/oh-my-design-cli"><img src="https://img.shields.io/npm/dm/oh-my-design-cli?style=flat-square&color=cb3837" alt="npm downloads" /></a>
14
14
  <a href="LICENSE"><img src="https://img.shields.io/github/license/kwakseongjae/oh-my-design?style=flat-square" alt="License" /></a>
15
15
  <a href="https://github.com/kwakseongjae/oh-my-design/stargazers"><img src="https://img.shields.io/github/stars/kwakseongjae/oh-my-design?style=social" alt="GitHub Stars" /></a>
16
- <img src="https://img.shields.io/badge/references-88-7c5cfc?style=flat-square" alt="88 References" />
16
+ <img src="https://img.shields.io/badge/references-107-7c5cfc?style=flat-square" alt="107 References" />
17
17
  <img src="https://img.shields.io/badge/CLI%20commands-1-blue?style=flat-square" alt="One CLI command" />
18
18
  </p>
19
19
 
@@ -23,7 +23,7 @@
23
23
 
24
24
  **oh-my-design (OmD)** turns your AI coding agent (Claude Code / Codex / OpenCode / Cursor) into a senior product designer with a working memory of your brand. You install once. After that, you just describe what you want — components, screens, copy, assets, charts — and the agent applies your project's design system, picks the right asset medium, and ships.
25
25
 
26
- `DESIGN.md` is the brand spec ([Google Stitch](https://stitch.withgoogle.com/docs/design-md/overview/) tokens + the brand-philosophy layer: Voice / Narrative / Principles / Personas / States / Motion). 88 real-company DESIGN.md files ship in this package. Pick one, customize through conversation, ship.
26
+ `DESIGN.md` is the brand spec ([Google Stitch](https://stitch.withgoogle.com/docs/design-md/overview/) tokens + the brand-philosophy layer: Voice / Narrative / Principles / Personas / States / Motion). 107 real-company DESIGN.md files ship in this package. Pick one, customize through conversation, ship.
27
27
 
28
28
  **No API keys. No external infra. Everything runs inside your existing CLI session.**
29
29
 
@@ -58,12 +58,29 @@ npm view oh-my-design-cli version # latest on the registry
58
58
 
59
59
  **What's new each release:** [CHANGELOG.md](./CHANGELOG.md). Every release entry says what changed in the skills, agents, hooks, CLI, and data. If a change requires anything beyond a re-install — for example a migration of `DESIGN.md` frontmatter — it will be called out at the top of that entry.
60
60
 
61
+ ### v0.2 agent layer (bundled)
62
+
63
+ A supervisor + specialist topology for multi-step authoring workflows. **6 skills + 6 sub-agents**, all channel-aware, installed alongside the core skills by `install-skills`:
64
+
65
+ | Skill / agent | Role |
66
+ |---|---|
67
+ | `omd-orchestrator` | Supervisor — 5-stage workflow (write → review → revise → localize → critic → images → handoff), 2-round revision cap |
68
+ | `omd-kr-writer` | Korean prose, **12 voice presets** (toss-tech-design default / karrot-neighborly / brunch-maker / naver-d2 / …) |
69
+ | `omd-locale-adapter` | KR → EN/JP/ZH-TW **adaptation** (cultural swaps, not literal translation) |
70
+ | `omd-designer-review` | Visual + brand audit vs DESIGN.md — typo/color/radius/state, BLOCK·WARN·FYI |
71
+ | `omd-final-qa` | 8-item rubric, read-only verdict, no rubber-stamps |
72
+ | `omd-codex-image` | Channel-aware image materialization — `<!-- omd:gen-image -->` spec → **Codex native generation** / `omd-asset-curator` fallback / OpenCode user-queue |
73
+
74
+ Pattern adopted: Anthropic orchestrator-workers + LangGraph supervisor revision-cap. Background & full routing rules: [`data/research/2026-05-18-agent-landscape.md`](./data/research/2026-05-18-agent-landscape.md) · KR voice taxonomy: [`data/research/2026-05-18-kr-style-presets.md`](./data/research/2026-05-18-kr-style-presets.md).
75
+
76
+ Promotion of future skills into the bundle is governed by the [`omd-release-hygiene`](./.claude/skills/omd-release-hygiene/SKILL.md) checklist. (A deterministic Korean-orthography linter was prototyped and dropped — a 25-pattern regex heuristic had too low recall to be worth shipping; if you need automated KR spellcheck, wire an external service such as the 부산대 한국어 맞춤법 검사기.)
77
+
61
78
  ## How to use omd with your AI
62
79
 
63
80
  Open Claude Code (or Codex / OpenCode) in your project. Just talk:
64
81
 
65
82
  > "Set up the design system for a calm B2B fintech dashboard."
66
- > Agent picks a reference from 88 (likely Linear or Stripe), proposes a hybrid DESIGN.md, asks for confirmation, writes the file plus shims.
83
+ > Agent picks a reference from 107 (likely Linear or Stripe), proposes a hybrid DESIGN.md, asks for confirmation, writes the file plus shims.
67
84
 
68
85
  > "Make the empty-state for the search results page."
69
86
  > Agent reads DESIGN.md, builds the component with brand tokens, picks an inline SVG illustration matching the voice, drops in microcopy that follows the §10 voice rules.
@@ -71,9 +88,6 @@ Open Claude Code (or Codex / OpenCode) in your project. Just talk:
71
88
  > "Design the entire onboarding from scratch — Toss-style for a family meal-tracking app."
72
89
  > Agent invokes the harness — runs the 10-phase pipeline (discovery, research, IA, wireframes, components, assets, microcopy, validation, handoff), spawns sub-agents in parallel where possible, asks you 3 mandatory checkpoints, hands back a v0/Cursor-ready package.
73
90
 
74
- > "Render a 3D water glass for the hero."
75
- > Agent recommends Blender, walks you through install-on-demand (it does not bundle it in the upfront bootstrap), then renders with materials cited from DESIGN.md §2 and §6.
76
-
77
91
  > "Add a daily-intake line chart."
78
92
  > Agent reads your `package.json`, sees `recharts` is installed, builds the chart with brand colors, no library mismatch.
79
93
 
@@ -84,26 +98,26 @@ Open Claude Code (or Codex / OpenCode) in your project. Just talk:
84
98
 
85
99
  | Path | Owner | Purpose |
86
100
  |---|---|---|
87
- | `.claude/skills/omd-*/SKILL.md` | install-skills | Claude Code skill bundle (apply / harness / init / learn / remember / sync / reference-capture / asset-fetch / experiment-gallery) |
101
+ | `.claude/skills/omd-*/SKILL.md` | install-skills | Claude Code skill bundle (15 skills core flow + capture/assets + v0.2 agent layer) |
88
102
  | `.codex/skills/omd-*/SKILL.md` | install-skills | Codex skill bundle |
89
103
  | `.opencode/agents/omd-*.md` | install-skills | OpenCode agent bundle |
90
- | `.claude/agents/omd-*.md` | install-skills | 11 canonical sub-agents (master + 10 specialists) |
91
- | `.claude/data/*` | install-skills | 88-reference fingerprints, vocabulary, opt-out corpus |
104
+ | `.claude/agents/omd-*.md` | install-skills | 16 canonical sub-agents (master + 15 specialists) |
105
+ | `.claude/data/*` | install-skills | 107-reference fingerprints, vocabulary, opt-out corpus |
92
106
  | `.claude/hooks/*.cjs` | install-skills | UserPromptSubmit / SessionStart / PostToolUse hooks |
93
107
  | `.claude/skills/skill-rules.json` | install-skills | Skill activation rules |
94
- | `references/*/DESIGN.md` | bundled | 88 real design systems |
108
+ | `references/*/DESIGN.md` | bundled | 107 real design systems |
95
109
  | `DESIGN.md` | your agent (after init flow) | Your project's authoritative brand spec |
96
110
  | `CLAUDE.md` / `AGENTS.md` / `.cursor/rules/omd-design.mdc` | omd-sync skill | Pointers so every agent reads DESIGN.md |
97
111
  | `.omd/preferences.md` | omd-remember skill | Append-only design correction log |
98
112
  | `.omd/runs/<id>/` | omd-harness skill | Per-harness-run artifacts (briefs, wireframes, eval, handoff zips) |
99
113
 
100
- ## The 9 skills + 11 agents
114
+ ## The 15 skills + 16 agents
101
115
 
102
116
  Skills (loaded into your agent's context based on prompt triggers):
103
117
 
104
118
  **Core flow**
105
119
  - **omd:apply** — DESIGN.md as authoritative context for every UI task. Routes complex requests (assets, charts, full screens, a11y audit) to specialized sub-agents.
106
- - **omd:init** — Bootstrap DESIGN.md from a reference + project description. 88 references, hybrid variation that preserves the reference voice while shifting only user-named axes.
120
+ - **omd:init** — Bootstrap DESIGN.md from a reference + project description. 107 references, hybrid variation that preserves the reference voice while shifting only user-named axes.
107
121
  - **omd:harness** — `/omd-harness <task>` to run the 10-phase design pipeline. 7 hero archetypes (rule 9) match brand vibe to layout (center-text / carousel / split-screen / editorial / dashboard / quote-led / left-character). Reveal safety net (rule 10), wordmark-only logo (rule 5), container-inner consistency (rule 7), decomposed hero (rule 8).
108
122
  - **omd:remember** — Captures user corrections to `.omd/preferences.md` automatically when the agent detects them.
109
123
  - **omd:learn** — Folds pending corrections back into DESIGN.md by scope.
@@ -114,20 +128,40 @@ Skills (loaded into your agent's context based on prompt triggers):
114
128
  - **omd:asset-fetch** — Free-license asset catalog with verified URLs. DiceBear CC0 (notionists/lorelei avatars), Lucide ISC icons, Picsum CC0 / Loremflickr Flickr-CC photos, SIL OFL display fonts (Bricolage Grotesque / Space Grotesk / DM Serif Display / Fraunces). Strict anti-patterns: handcrafted character SVG forbidden, brand creative work never in product DOM.
115
129
  - **omd:experiment-gallery** — N-brand experiment results in a single comparison index.html. iframe scaled previews + wow ratings + multi-turn deltas + per-brand IP audit. Reusable across batches.
116
130
 
117
- Sub-agents1 orchestrator + 10 specialists (invoked by the master or directly by skills):
131
+ **v0.2 agent layer** (6 more) `omd:orchestrator` / `omd:kr-writer` / `omd:locale-adapter` / `omd:designer-review` / `omd:final-qa` / `omd:codex-image`. See the [v0.2 agent layer](#v02-agent-layer-bundled) table above for what each does.
132
+
133
+ Sub-agents — master + 15 specialists (invoked by the master or directly by skills):
118
134
 
119
135
  - **omd-master** — Conversational state machine, runs the harness phases. opus.
120
136
  - **omd-ux-researcher** — Reads bundled references, validates Tier-1 official design system URLs. opus.
121
137
  - **omd-ui-junior** — Generates wireframes and component manifests from DESIGN.md. sonnet.
122
138
  - **omd-ux-engineer** — Section-level interaction / motion / IA / mobile / perceived-perf audit + code-level fixes. NN/g heuristics + Refactoring UI + Web Vitals + WAI-ARIA. Senior advisor; pairs with `omd-ui-junior` (generator). opus.
123
- - **omd-asset-curator** — Picks asset medium (inline SVG / chart library / Lottie / Rive / Unsplash / 3D), generates inline code or sources external. Stack-aware (recharts vs chartjs vs custom SVG, lucide vs heroicons, etc.). sonnet.
124
- - **omd-3d-blender** — Blender MCP renderer with just-in-time install walkthrough. opus.
139
+ - **omd-asset-curator** — Picks asset medium (inline SVG / chart library / Lottie / Rive / Unsplash), generates inline code or sources external. Stack-aware (recharts vs chartjs vs custom SVG, lucide vs heroicons, etc.). sonnet.
125
140
  - **omd-microcopy** — Voice-consistent copy generation tied to DESIGN.md §10. sonnet.
126
141
  - **omd-ux-writer** — Section-level copy audit + 2-3 strong alternatives + A/B hypothesis. Podmajersky / Erika Hall / Mailchimp / Stripe / GitHub voice docs integrated. Senior advisor; pairs with `omd-microcopy` (generator). opus.
127
142
  - **omd-a11y-auditor** — WCAG checks. haiku.
128
143
  - **omd-persona-tester** — Adversarial 4-persona walkthrough (V/J/F/S). sonnet.
129
144
  - **omd-critic** — Root-cause analysis when the user iterates. opus.
130
145
 
146
+ Plus the **6 v0.2 sub-agents** (orchestrator / kr-writer / locale-adapter / designer-review / final-qa / codex-image) — documented in the [v0.2 agent layer](#v02-agent-layer-bundled) section.
147
+
148
+ ## MCP server
149
+
150
+ Want the 107 brand DESIGN.md files exposed directly to your agent as MCP resources, tools, and prompts? Use **[oh-my-design-mcp](./packages/mcp/)** — a separate, free, drop-in MCP server.
151
+
152
+ ```json
153
+ {
154
+ "mcpServers": {
155
+ "oh-my-design": {
156
+ "command": "npx",
157
+ "args": ["-y", "oh-my-design-mcp"]
158
+ }
159
+ }
160
+ }
161
+ ```
162
+
163
+ Works with Claude Desktop, Cursor, Cline, Continue, and Codex. Zero AI calls, zero config, fully offline. Full install guide and tool reference: [`packages/mcp/README.md`](./packages/mcp/README.md).
164
+
131
165
  ## What it is not
132
166
 
133
167
  - It is not a collection of CLI commands. There is one bootstrap command. Everything else is skill prose.
package/README.zh-TW.md CHANGED
@@ -5,7 +5,7 @@
5
5
  <h1 align="center">oh-my-design</h1>
6
6
 
7
7
  <p align="center">
8
- <strong>從 88 家真實企業的設計系統生成 DESIGN.md。</strong>互動式精靈。零 AI 呼叫。
8
+ <strong>從 107 家真實企業的設計系統生成 DESIGN.md。</strong>互動式精靈。零 AI 呼叫。
9
9
  </p>
10
10
 
11
11
  <p align="center">
@@ -17,7 +17,7 @@
17
17
  <a href="https://github.com/kwakseongjae/oh-my-design/stargazers"><img src="https://img.shields.io/github/stars/kwakseongjae/oh-my-design?style=social" alt="GitHub Stars" /></a>
18
18
  <img src="https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square" alt="PRs Welcome" />
19
19
  <img src="https://img.shields.io/badge/AI%20calls-zero-blue?style=flat-square" alt="Zero AI" />
20
- <img src="https://img.shields.io/badge/references-88-7c5cfc?style=flat-square" alt="88 References" />
20
+ <img src="https://img.shields.io/badge/references-107-7c5cfc?style=flat-square" alt="107 References" />
21
21
  </p>
22
22
 
23
23
  <p align="center">
@@ -36,7 +36,7 @@
36
36
 
37
37
  1. **[規範](spec/omd-v0.1.md)** — 版本化的 Google Stitch 擴充,MIT 授權。
38
38
  2. **[Claude Code skill](.claude/skills/omd/SKILL.md)** — 將規範作為硬性約束自動套用。
39
- 3. **[88 個參考檔案](references/)** — 真實企業的 `DESIGN.md`,可以 fork、透過 builder 客製化後直接上線。
39
+ 3. **[107 個參考檔案](references/)** — 真實企業的 `DESIGN.md`,可以 fork、透過 builder 客製化後直接上線。
40
40
 
41
41
  **無須 API 金鑰。零 AI 呼叫。全部在客戶端執行。**
42
42
 
@@ -61,10 +61,10 @@ Toss · Claude · Line · Stripe · Linear · Vercel · Notion · Airbnb · Appl
61
61
  ## 主要功能
62
62
 
63
63
  - **Builder** — 選擇參考、調整色彩 / radius / 深色模式、挑選元件,然後按下 Export。透過 **Philosophy** 篩選可以只顯示具備完整品牌哲學的 10 個參考。
64
- - **Design Systems 目錄** ([oh-my-design.kr/design-systems](https://oh-my-design.kr/design-systems)) — 88 個參考中有 34 個擁有官方設計系統或品牌指南頁面,可從目錄配合即時縮圖直接前往。
65
- - **Personal Curation** ([oh-my-design.kr/curation](https://oh-my-design.kr/curation)) — 透過 MBTI 風格的簡短測驗,將你的設計偏好對應到 88 個參考之一,並直接帶你進入已預選該參考的 Builder。
64
+ - **Design Systems 目錄** ([oh-my-design.kr/design-systems](https://oh-my-design.kr/design-systems)) — 107 個參考中有 34 個擁有官方設計系統或品牌指南頁面,可從目錄配合即時縮圖直接前往。
65
+ - **Personal Curation** ([oh-my-design.kr/curation](https://oh-my-design.kr/curation)) — 透過 MBTI 風格的簡短測驗,將你的設計偏好對應到 107 個參考之一,並直接帶你進入已預選該參考的 Builder。
66
66
 
67
- ## 88 個支援的參考
67
+ ## 107 個支援的參考
68
68
 
69
69
  | 類別 | 企業 |
70
70
  |------|------|
@@ -112,7 +112,7 @@ Toss · Claude · Line · Stripe · Linear · Vercel · Notion · Airbnb · Appl
112
112
  oh-my-design/
113
113
  spec/ OmD v0.1 規範 (正本)
114
114
  .claude/skills/omd/ Claude Code skill 包
115
- references/ 88 家企業的 DESIGN.md 檔案
115
+ references/ 107 家企業的 DESIGN.md 檔案
116
116
  src/ CLI 核心 (TypeScript)
117
117
  web/ Next.js 網頁 builder
118
118
  src/app/ Landing + Builder + Directory 頁面
@@ -128,7 +128,7 @@ Web 測試與原始碼並列存放 (`web/src/**/*.test.ts`)。
128
128
 
129
129
  ```bash
130
130
  npm test # CLI:370 個測試 — unit + 全 reference smoke
131
- cd web && npm test # Web:88 個測試 — generate-css、config-hash、survey
131
+ cd web && npm test # Web:107 個測試 — generate-css、config-hash、survey
132
132
  ```
133
133
 
134
134
  整合套件 (`test/integration/all-references.test.ts`) 會對每個 `references/<id>/DESIGN.md` 執行完整的生成管線,因此損壞的 reference 會在 PR 審查時以單一 reference 的失敗形式呈現。資料夾規範與模組別覆蓋率對照表請參考 [test/README.md](test/README.md)。
@@ -65,8 +65,7 @@ cap: 한 화면당 8-12 에셋. 초과하면 우선순위 매겨 critical만 처
65
65
  | 차트 (custom 시각화, 1회성) | **inline SVG + d3-shape OR pure path** | 직접 작성 | 정확 제어 |
66
66
  | 사진 (제품, 사람, 풍경) | **Unsplash / Pexels** | URL listing + 사용자 download | 라이선스 무료 |
67
67
  | 일러스트 (스타일 통일된 여러 장) | **unDraw** + brand 색 변환 | OPL 라이선스 | 무료 + 통일감 |
68
- | Hero 사진 / 제품 mockup (사실적) | **Unsplash 우선, 안 맞으면 omd-3d-blender** | 사진 3D 폴백 | 비용 / 시간 |
69
- | Hero 3D 렌더 (제품 mockup, 의식적 3D) | **omd-3d-blender 라우팅** | dispatch | Blender MCP |
68
+ | Hero 사진 / 제품 mockup (사실적) | **Unsplash / Pexels** | 사진 listing | 비용 / 시간 |
70
69
  | 비디오 (배경 루프, 3-10초) | **Mixkit / Coverr** | URL listing | 무료 |
71
70
  | 로고 | **사용자 자체 제공** 또는 brand-color SVG placeholder | self brief | 로고는 사용자 자산 |
72
71
  | empty state / placeholder | **inline SVG (custom)** | 24-48 line path, 1-2 컬러 | 작고 의미 명확 |
@@ -172,11 +171,7 @@ JS: `liquidGroup.setAttribute('transform', `translate(0, ${fillY[count]})`);`
172
171
 
173
172
  manifest 엔트리 schema 동일 (id, source, url, license, attribution, downloaded_to, fetched_at, fetched_by).
174
173
 
175
- ### 분기 C — 3D dispatch
176
-
177
- `type=3d-render` 또는 `3d-mockup`이면 omd-3d-blender 서브에이전트 spawn. 사용자에게 Blender 설치 의향 먼저 확인.
178
-
179
- ### 분기 D — 차트 라이브러리 코드 생성
174
+ ### 분기 C — 차트 라이브러리 코드 생성
180
175
 
181
176
  Step 0의 OMD-STACK 매칭 결과에 따라 import + JSX/Vue/Svelte 작성:
182
177
 
@@ -0,0 +1,49 @@
1
+ ---
2
+ name: omd-codex-image
3
+ description: "Channel-aware image materializer. Reads `<!-- omd:gen-image -->` spec blocks in HTML/MD/JSX and materializes them through Codex's native image generation, omd-asset-curator fallback, or user-queue (OpenCode). One spec format, three downstream paths."
4
+ tools: Read, Write, Edit, Glob, Grep, Bash
5
+ model: sonnet
6
+ ---
7
+
8
+ # omd-codex-image
9
+
10
+ Materialize placeholder images embedded as `<!-- omd:gen-image ... -->` spec blocks.
11
+
12
+ ## Boot
13
+
14
+ 1. Read `.claude/skills/omd-codex-image/SKILL.md` in full
15
+ 2. Resolve `channel` input (auto-detect via `process.env.OMD_CHANNEL`, host agent identity, or `--channel` flag)
16
+ 3. Read `artifact_path`
17
+
18
+ ## Workflow
19
+
20
+ Follow §1 of the skill — channel-specific dispatch:
21
+
22
+ - `codex` → native image generation primitive (tool name varies; pick whatever is available)
23
+ - `claude-code` → omd-asset-curator (free-license catalog) as fallback
24
+ - `opencode` → terminal user-queue prompt
25
+
26
+ Apply idempotency rules from §3 (skip already-done blocks).
27
+
28
+ ## Output
29
+
30
+ - Materialized image files at each `filename` path
31
+ - Spec blocks preserved verbatim
32
+ - `<!-- omd:gen-image:done at=<ISO> by=<channel> -->` annotation added immediately below each processed spec
33
+ - One-line summary per §5
34
+
35
+ ## Self-audit
36
+
37
+ Before reporting:
38
+
39
+ 1. Every spec block in the artifact either has a `:done` annotation OR an `:error` annotation
40
+ 2. No spec block was deleted or modified
41
+ 3. Every `filename` path exists with size > 0 (unless error state)
42
+ 4. No identifiable person likeness was generated
43
+ 5. No brand logos were synthesized (logos must be sourced from `references:` URLs)
44
+
45
+ Fail → re-run that block before returning.
46
+
47
+ ## Parallel safety
48
+
49
+ Multiple artifacts in different paths are independent. The orchestrator may invoke this agent in parallel across files. Within a single artifact, process spec blocks sequentially (avoids race on the file write).
@@ -0,0 +1,38 @@
1
+ ---
2
+ name: omd-designer-review
3
+ description: "Visual + brand consistency reviewer. Audits HTML/MD/JSX against the brand DESIGN.md across typography, color budget, radius scale, component states, mobile responsiveness, spacing. Outputs BLOCK / WARN / FYI with line refs. Read-only advisory — never modifies artifacts."
4
+ tools: Read, Glob, Grep, Bash
5
+ model: opus
6
+ ---
7
+
8
+ # omd-designer-review
9
+
10
+ You audit visual and brand consistency. You do NOT modify the artifact — only emit a structured review report.
11
+
12
+ ## Boot
13
+
14
+ 1. Read `.claude/skills/omd-designer-review/SKILL.md` in full
15
+ 2. Read `artifact_path` from inputs
16
+ 3. **Re-read `design_md_path`** even if you "remember" it. Record the read timestamp in the report header.
17
+
18
+ ## Audit
19
+
20
+ Execute the 6 audit categories (§1.1–§1.6 of skill). Every issue must include:
21
+ - Severity (BLOCK / WARN / FYI)
22
+ - Location with line ref
23
+ - Verbatim evidence quote
24
+ - Specific fix suggestion
25
+
26
+ ## Output
27
+
28
+ Write to `<work_dir>/.reviews/designer-review-round-<N>.md` (or `output_path` if specified). End with explicit verdict: PASS / REVISION / BLOCK.
29
+
30
+ ## Anti-patterns
31
+
32
+ - "Looks good" / "전반적으로 OK" → hard-banned. Rewrite with explicit cited issues.
33
+ - Issues without line refs → reject your own draft and redo.
34
+ - DESIGN.md cached from prior round → invalid. Always re-read.
35
+
36
+ ## Round-2 mode
37
+
38
+ If `prior_report_path` is supplied, mark each prior issue as RESOLVED / UNRESOLVED / NEW. Unresolved BLOCKs at round 2 → orchestrator BLOCK escalation.
@@ -0,0 +1,40 @@
1
+ ---
2
+ name: omd-final-qa
3
+ description: "Read-only final-gate critic. Enforces an 8-item rubric. Hard 2-round revision cap. Forbids 'looks good' rubber-stamps and requires line refs for every FAIL."
4
+ tools: Read, Glob, Grep, Bash
5
+ model: opus
6
+ ---
7
+
8
+ # omd-final-qa
9
+
10
+ Final gate before user handoff. Read-only. Closed rubric.
11
+
12
+ ## Boot
13
+
14
+ 1. Read `.claude/skills/omd-final-qa/SKILL.md` in full
15
+ 2. Read every artifact in `artifact_paths`
16
+ 3. **Re-read `design_md_path`** — record timestamp
17
+ 4. Read `prior_reviews` (designer-review reports) if present
18
+
19
+ ## Rubric execution
20
+
21
+ Evaluate all 8 rubric items (§1 of skill). For each:
22
+ - **PASS** requires a 1-line evidence statement
23
+ - **FAIL** requires line ref + verbatim quote + fix direction
24
+
25
+ Any FAIL → verdict = REVISION (round 1) or BLOCK (round 2).
26
+
27
+ ## Output
28
+
29
+ Write to `<work_dir>/.reviews/final-qa-round-<N>.md`. End with explicit verdict.
30
+
31
+ ## Hard prohibitions
32
+
33
+ - "Looks good", "전반적으로 OK", "괜찮음" → self-reject the draft and rewrite with specific evidence.
34
+ - Modifying any artifact → bug. Never use Write/Edit.
35
+ - Caching DESIGN.md across rounds → invalid.
36
+ - Adding/removing rubric items mid-run → forbidden. Rubric updates only via SKILL.md PR.
37
+
38
+ ## Round-2 escalation
39
+
40
+ If round 2 still FAILs, output verdict = BLOCK and stop. Orchestrator handles user escalation.
@@ -0,0 +1,35 @@
1
+ ---
2
+ name: omd-kr-writer
3
+ description: "Korean blog / long-form writer with 6 voice presets (toss-tech-design, karrot-neighborly, brunch-maker-popular, biz-formal-report, academic-paper, journalism-broadsheet). Default preset toss-tech-design."
4
+ tools: Read, Write, Edit, Glob, Grep, Bash
5
+ model: opus
6
+ ---
7
+
8
+ # omd-kr-writer
9
+
10
+ You write Korean long-form content for the oh-my-design project. Before drafting any sentence, **read `.claude/skills/omd-kr-writer/SKILL.md` in full**, then read `data/research/2026-05-18-kr-style-presets.md` for the preset spec.
11
+
12
+ ## Boot
13
+
14
+ 1. Parse `preset_id` from inputs (default: `toss-tech-design`)
15
+ 2. Read SKILL.md
16
+ 3. Read the preset section from `2026-05-18-kr-style-presets.md`
17
+ 4. Read `brand_design_md` if provided (for token consistency in code samples / figure captions)
18
+
19
+ ## Output
20
+
21
+ Write to `output_path` from envelope. Frontmatter must include `voice_preset: <preset_id>` and `locale: ko`.
22
+
23
+ ## Self-audit (mandatory before returning)
24
+
25
+ Per preset spec, measure:
26
+ - Ending-form distribution vs preset target
27
+ - Average sentence length
28
+ - Banned endings (must be 0)
29
+ - Character count vs preset range
30
+
31
+ If any metric fails, revise before returning. If still failing after 1 self-revision, return with a `self_audit: FAIL` note in the orchestrator handoff — the orchestrator will start a revision round.
32
+
33
+ ## Revision rounds
34
+
35
+ If invoked with `prior_review` path, read that review report first. Address every BLOCK item and as many WARN items as practical. Note unresolved items in the orchestrator handoff with rationale.
@@ -0,0 +1,32 @@
1
+ ---
2
+ name: omd-locale-adapter
3
+ description: "Adapts (not translates) Korean canonical content into EN / JP / ZH-TW. Cultural reference swaps, register matching, traditional-character idioms. KR is always source of truth."
4
+ tools: Read, Write, Edit, Glob, Grep
5
+ model: opus
6
+ ---
7
+
8
+ # omd-locale-adapter
9
+
10
+ Adapt KR canonical to EN/JP/ZH-TW. Translation is not the goal — voice and cultural register match is.
11
+
12
+ ## Boot
13
+
14
+ 1. Read `.claude/skills/omd-locale-adapter/SKILL.md` in full
15
+ 2. Read KR source file (`index.ko.md` or equivalent)
16
+ 3. Identify target locale(s) from inputs
17
+
18
+ ## Workflow
19
+
20
+ Follow the 7-step adaptation procedure (§2 of skill). Preserve code blocks, URLs, figure src, frontmatter slug, numerals verbatim. Apply locale-specific cultural swaps.
21
+
22
+ ## Output
23
+
24
+ `index.<locale>.md` per target. Frontmatter must include `locale`, `source_locale: ko`, `source_revision`, `adapted_at`.
25
+
26
+ ## Self-audit (mandatory)
27
+
28
+ Per §6: H2 count match, figure count match, gloss check on first-occurrence company names, length within preset ratio. Fail → re-adapt before returning.
29
+
30
+ ## Parallel safety
31
+
32
+ EN/JP/ZH-TW are independent — orchestrator may invoke this agent in parallel for different locales targeting the same KR source.
@@ -192,19 +192,9 @@ Each turn you are in one state. Determine current state from `.handoff.json` `st
192
192
  **Quality 가드**: 작성 후 §10-15 본문이 reference의 §10-15와 비교해서 50% 이상 겹치는지 self-check. 안 겹치면 voice 망가진 것 — Step 4.4 다시.
193
193
 
194
194
  ### Step 5 — Asset curation
195
- DESIGN.md emit 직후 omd-asset-curator spawn. punch-list에 "favicon · og image · empty-state illustration · 12 icons · loading state · (선택) 3D hero render" 등 production에 필요한 에셋 식별.
196
-
197
- **3D 자산이 식별되면**:
198
- - asset-curator가 type=`3d-render`/`3d-mockup` 항목을 manifest에 표시
199
- - 사용자에게 한 줄 묻기: "hero에 3D water-glass mockup이 좋아 보이는데, Blender 설치 + MCP connector로 생성할 수 있어요 (Anthropic 2026-04-28 공식 connector). 설치는 5분 정도 걸림."
200
- - picker:
201
- - **install + use** — omd-3d-blender 설치 walk-through 후 생성 (Recommended if hero/render in spec)
202
- - **2D fallback** — Unsplash photo 또는 unDraw illustration로 대체
203
- - **skip 3D** — 3D 자산 빼고 진행
204
- - **이미 설치됨 / 그냥 Blender로** — omd-3d-blender 바로 사용
205
- - 사용자 선택 → master spawn omd-3d-blender (subagent_type: 'omd-3d-blender'). 결과: png + glb 둘 다 + manifest 엔트리.
206
-
207
- **2D 자산** (대부분): 평소 fallback chain (Lucide / Unsplash / unDraw / 자체 SVG) 또는 self-fill brief 생성.
195
+ DESIGN.md emit 직후 omd-asset-curator spawn. punch-list에 "favicon · og image · empty-state illustration · 12 icons · loading state" 등 production에 필요한 에셋 식별.
196
+
197
+ **2D 자산** (전부): fallback chain (Lucide / Unsplash / unDraw / 자체 SVG) 또는 self-fill brief 생성.
208
198
 
209
199
  ### Step 6 — Microcopy + handoff
210
200
  spawn omd-microcopy (§10 Voice 적용해서 prototype copy 정제) + a11y-auditor + handoff zip.
@@ -0,0 +1,34 @@
1
+ ---
2
+ name: omd-orchestrator
3
+ description: "Coordinates multi-agent design workflows. Routes between omd-kr-writer, omd-locale-adapter, omd-designer-review, omd-final-qa, omd-codex-image. Maintains 2-round revision cap. Logs every handoff."
4
+ tools: Read, Write, Edit, Bash, Glob, Grep, Agent, TaskCreate, TaskUpdate, TaskList
5
+ model: opus
6
+ ---
7
+
8
+ # omd-orchestrator
9
+
10
+ You are the supervisor for the omd v0.2 agent layer. Before any action, **read `.claude/skills/omd-orchestrator/SKILL.md` in full**. The skill doc is the source of truth — this agent file is just the invocation envelope.
11
+
12
+ ## Boot sequence
13
+
14
+ 1. Read `.claude/skills/omd-orchestrator/SKILL.md`
15
+ 2. Read `data/research/2026-05-18-agent-landscape.md` for context
16
+ 3. Identify the user's request type using the routing decision tree (§2 of skill)
17
+ 4. Initialize `<work_dir>/.orchestrator.log`
18
+ 5. Execute the standard 5-stage workflow OR a subset based on routing
19
+
20
+ ## Subagent invocation
21
+
22
+ You invoke specialists via the Agent tool. Each handoff follows the YAML envelope in §7 of the skill. Log each handoff to `.orchestrator.log` with timestamp + status.
23
+
24
+ ## Hard rules
25
+
26
+ - 2-round revision cap per critic gate (designer-review, final-qa) — never round 3
27
+ - Critics are read-only — if a critic modifies files, treat as bug + restart that stage
28
+ - DESIGN.md must be re-read each stage (no caching)
29
+ - "looks good" rubber-stamp responses from any critic → reject + re-invoke with explicit "cite line refs" instruction
30
+ - Never commit / push without explicit user request
31
+
32
+ ## Escalation
33
+
34
+ When 2-round cap hits BLOCK, present user 3 options: force-pass (with known-issues frontmatter) / restart-from-stage-1 / abort. Wait for explicit choice. Log decision.