get-shit-pretty 0.7.0 → 0.7.3

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 (112) hide show
  1. package/README.md +301 -124
  2. package/bin/install.js +1 -1
  3. package/gsp/agents/gsp-accessibility-auditor.md +1 -60
  4. package/gsp/agents/gsp-brand-auditor.md +1 -61
  5. package/gsp/agents/gsp-brand-creative-director.md +10 -0
  6. package/gsp/agents/gsp-brand-engineer.md +1 -122
  7. package/gsp/agents/gsp-brand-researcher.md +11 -0
  8. package/gsp/agents/gsp-brand-strategist.md +1 -65
  9. package/gsp/agents/gsp-project-builder.md +17 -0
  10. package/gsp/agents/gsp-project-critic.md +11 -0
  11. package/gsp/agents/gsp-project-designer.md +11 -0
  12. package/gsp/agents/gsp-project-researcher.md +1 -74
  13. package/gsp/agents/gsp-project-reviewer.md +12 -0
  14. package/gsp/hooks/hooks.json +32 -14
  15. package/gsp/skills/get-shit-pretty/SKILL.md +2 -5
  16. package/gsp/skills/gsp-accessibility/SKILL.md +0 -1
  17. package/gsp/skills/gsp-accessibility-audit/SKILL.md +9 -8
  18. package/gsp/skills/gsp-accessibility-audit/methodology/gsp-accessibility-auditor.md +59 -0
  19. package/gsp/skills/gsp-add-reference/SKILL.md +0 -1
  20. package/gsp/skills/gsp-art/SKILL.md +13 -10
  21. package/gsp/skills/gsp-brand-audit/SKILL.md +4 -2
  22. package/gsp/skills/gsp-brand-audit/methodology/gsp-brand-auditor.md +61 -0
  23. package/gsp/skills/gsp-brand-brief/SKILL.md +129 -0
  24. package/gsp/skills/gsp-brand-guidelines/SKILL.md +13 -11
  25. package/gsp/skills/gsp-brand-guidelines/methodology/gsp-brand-engineer.md +122 -0
  26. package/gsp/skills/gsp-brand-identity/SKILL.md +19 -18
  27. package/gsp/{agents/gsp-creative-director.md → skills/gsp-brand-identity/methodology/gsp-brand-creative-director.md} +0 -9
  28. package/gsp/skills/gsp-brand-refine/SKILL.md +0 -1
  29. package/gsp/skills/gsp-brand-research/SKILL.md +13 -13
  30. package/gsp/{agents/gsp-researcher.md → skills/gsp-brand-research/methodology/gsp-brand-researcher.md} +0 -10
  31. package/gsp/skills/gsp-brand-strategy/SKILL.md +14 -14
  32. package/gsp/skills/gsp-brand-strategy/methodology/gsp-brand-strategist.md +65 -0
  33. package/gsp/skills/gsp-brand-sync/SKILL.md +60 -10
  34. package/gsp/skills/gsp-color/SKILL.md +0 -1
  35. package/gsp/skills/gsp-design-system/SKILL.md +0 -1
  36. package/gsp/skills/gsp-doctor/SKILL.md +0 -1
  37. package/gsp/skills/gsp-help/SKILL.md +10 -7
  38. package/gsp/skills/gsp-icons/SKILL.md +0 -1
  39. package/gsp/skills/gsp-logo/SKILL.md +0 -1
  40. package/gsp/skills/gsp-phase-transition/SKILL.md +0 -3
  41. package/gsp/skills/gsp-pretty/SKILL.md +25 -24
  42. package/gsp/skills/gsp-progress/SKILL.md +0 -1
  43. package/gsp/skills/gsp-project-brief/SKILL.md +51 -22
  44. package/gsp/skills/gsp-project-build/SKILL.md +216 -74
  45. package/gsp/skills/gsp-project-build/bento-grid.md +114 -0
  46. package/gsp/{agents/gsp-builder.md → skills/gsp-project-build/methodology/gsp-project-builder.md} +14 -16
  47. package/gsp/skills/gsp-project-critique/SKILL.md +21 -17
  48. package/gsp/{agents/gsp-critic.md → skills/gsp-project-critique/methodology/gsp-project-critic.md} +0 -11
  49. package/gsp/skills/gsp-project-design/SKILL.md +9 -6
  50. package/gsp/{agents/gsp-designer.md → skills/gsp-project-design/methodology/gsp-project-designer.md} +0 -11
  51. package/gsp/skills/gsp-project-research/SKILL.md +4 -2
  52. package/gsp/skills/gsp-project-research/methodology/gsp-project-researcher.md +73 -0
  53. package/gsp/skills/gsp-project-review/SKILL.md +8 -5
  54. package/gsp/{agents/gsp-reviewer.md → skills/gsp-project-review/methodology/gsp-project-reviewer.md} +0 -12
  55. package/gsp/skills/gsp-scaffold/SKILL.md +0 -1
  56. package/gsp/skills/gsp-start/SKILL.md +59 -210
  57. package/gsp/skills/gsp-style/SKILL.md +1 -2
  58. package/gsp/skills/gsp-style/styles/INDEX.yml +7 -1
  59. package/gsp/skills/gsp-style/styles/academia.md +751 -787
  60. package/gsp/skills/gsp-style/styles/art-deco.md +316 -352
  61. package/gsp/skills/gsp-style/styles/bauhaus.md +189 -225
  62. package/gsp/skills/gsp-style/styles/bold-typography.md +433 -469
  63. package/gsp/skills/gsp-style/styles/botanical.md +141 -177
  64. package/gsp/skills/gsp-style/styles/claymorphism.md +377 -413
  65. package/gsp/skills/gsp-style/styles/cyberpunk.md +419 -455
  66. package/gsp/skills/gsp-style/styles/enterprise.md +224 -260
  67. package/gsp/skills/gsp-style/styles/flat-design.md +119 -155
  68. package/gsp/skills/gsp-style/styles/fluent.md +0 -31
  69. package/gsp/skills/gsp-style/styles/glassmorphism.md +0 -36
  70. package/gsp/skills/gsp-style/styles/humanist-literary.md +0 -28
  71. package/gsp/skills/gsp-style/styles/industrial.md +406 -438
  72. package/gsp/skills/gsp-style/styles/kinetic.md +531 -563
  73. package/gsp/skills/gsp-style/styles/liquid-glass.md +0 -36
  74. package/gsp/skills/gsp-style/styles/luxury.md +402 -438
  75. package/gsp/skills/gsp-style/styles/material.md +555 -591
  76. package/gsp/skills/gsp-style/styles/maximalism.md +875 -911
  77. package/gsp/skills/gsp-style/styles/minimal-dark.md +442 -478
  78. package/gsp/skills/gsp-style/styles/modern-dark.md +390 -426
  79. package/gsp/skills/gsp-style/styles/monochrome.md +472 -504
  80. package/gsp/skills/gsp-style/styles/neubrutalism.md +354 -390
  81. package/gsp/skills/gsp-style/styles/neumorphism.md +195 -231
  82. package/gsp/skills/gsp-style/styles/newsprint.md +529 -565
  83. package/gsp/skills/gsp-style/styles/nothing.md +445 -0
  84. package/gsp/skills/gsp-style/styles/nothing.yml +146 -0
  85. package/gsp/skills/gsp-style/styles/organic.md +177 -213
  86. package/gsp/skills/gsp-style/styles/playful-geometric.md +211 -247
  87. package/gsp/skills/gsp-style/styles/professional.md +503 -539
  88. package/gsp/skills/gsp-style/styles/retro.md +664 -700
  89. package/gsp/skills/gsp-style/styles/saas.md +490 -526
  90. package/gsp/skills/gsp-style/styles/sketch.md +189 -225
  91. package/gsp/skills/gsp-style/styles/swiss-minimalist.md +195 -227
  92. package/gsp/skills/gsp-style/styles/terminal.md +99 -135
  93. package/gsp/skills/gsp-style/styles/vaporwave.md +356 -392
  94. package/gsp/skills/gsp-style/styles/web3.md +337 -373
  95. package/gsp/skills/gsp-typography/SKILL.md +0 -1
  96. package/gsp/skills/gsp-update/SKILL.md +0 -1
  97. package/gsp/skills/gsp-visuals/SKILL.md +0 -1
  98. package/gsp/templates/branding/config.json +3 -2
  99. package/gsp/templates/exports-index.md +0 -7
  100. package/gsp/templates/phases/build.md +13 -4
  101. package/gsp/templates/projects/config.json +3 -2
  102. package/gsp/templates/projects/roadmap.md +0 -7
  103. package/gsp/templates/projects/state.md +0 -4
  104. package/package.json +1 -1
  105. package/scripts/lint-check.sh +1 -1
  106. package/gsp/agents/gsp-ascii-artist.md +0 -66
  107. package/gsp/agents/gsp-brand-syncer.md +0 -126
  108. package/gsp/agents/gsp-campaign-director.md +0 -79
  109. package/gsp/agents/gsp-scoper.md +0 -85
  110. package/gsp/skills/gsp-launch/SKILL.md +0 -97
  111. package/gsp/skills/gsp-start/questioning.md +0 -87
  112. package/gsp/templates/phases/launch.md +0 -55
@@ -2,7 +2,6 @@
2
2
  name: gsp-start
3
3
  description: Start here — picks up where you left off
4
4
  user-invocable: true
5
- model: sonnet
6
5
  allowed-tools:
7
6
  - Read
8
7
  - Write
@@ -10,69 +9,60 @@ allowed-tools:
10
9
  - AskUserQuestion
11
10
  - Glob
12
11
  - Grep
13
- - Agent
14
- - WebSearch
15
- - WebFetch
16
12
  ---
17
13
  <context>
18
- You are the GSP (Get Shit Pretty) entry point — a design lead starting a first call with a client. You scan the codebase and `.design/` directory, greet the user with what you found, and flow naturally into the right workflow.
14
+ You are the GSP (Get Shit Pretty) entry point — a concierge that scans the workspace, shows what exists, and routes the user to the right workflow.
19
15
 
20
16
  GSP uses a dual-diamond architecture:
21
- - **Diamond 1 — Branding** (4 skills, 4 phases): brand-research → brand-strategy → brand-identity → brand-patterns (optional: brand-audit before evolving)
22
- - **Diamond 2 — Project** (6 phases): brief → research → design → critique → build → review
23
- - **Optional:** launch (on request)
17
+ - **Diamond 1 — Branding** (4 skills, 4 phases): brand-brief → brand-research → brand-strategy → brand-identity → brand-guidelines (optional: brand-audit before research for existing brands)
18
+ - **Diamond 2 — Project** (6 phases): project-brief → research → design → critique → build → review
24
19
 
25
20
  Multiple brands and projects can coexist. Projects reference a brand.
26
21
  </context>
27
22
 
28
23
  <objective>
29
- Through a sequential one-question-at-a-time conversation, gather a complete brief and create the right project structure (brand, project, or both). Route the user to their first phase skill.
24
+ Detect workspace state, greet the user with what you found, and route to the right skill. No questioning, no agents, no heavy scanning just detect and route.
30
25
  </objective>
31
26
 
32
- <execution_context>
33
- @${CLAUDE_SKILL_DIR}/questioning.md
34
- </execution_context>
35
-
36
27
  <rules>
37
28
  - Never infer the user's name from package metadata, git config, or file paths — those are authors, not the current user.
38
29
  - Always use `AskUserQuestion` for user-facing questions — never raw text prompts.
30
+ - One decision per question — never batch multiple questions in a single message.
39
31
  </rules>
40
32
 
41
- <questioning_principles>
42
- Follow these principles throughout all conversations:
43
-
44
- 1. **One decision per question** — every question must be its own `AskUserQuestion` call with exactly one decision. Never group multiple questions into a single message. Ask, wait for the answer, then ask the next thing.
45
- 2. **Never re-ask** — if the user already answered something (in this phase or a prior one), don't ask again. If you need to validate, confirm: "I see X from earlier — still accurate?" The user should never feel like they're repeating themselves.
46
- 3. **Inference over interrogation** — state assumptions, let them correct. "SaaS dashboard for enterprise" → you already know: professional, data-dense, web-first.
47
- 4. **Adapt and skip** — use each answer to inform the next question. If an answer reveals enough to skip a later question, skip it. Don't follow a rigid checklist.
48
- 5. **Concrete options over open-ended** — "More like Stripe's clean approach or Duolingo's playful style?" beats "What style do you want?"
49
- 6. **Know when you have enough** — fill gaps with smart defaults. Don't over-ask.
50
- </questioning_principles>
51
-
52
33
  <process>
53
- ## Step 1: Scan and greet (parallel)
34
+ ## Step 1: Scan workspace
54
35
 
55
- ### Step 1a: Scan `.design/` (sync — fast)
36
+ ### Step 1a: Scan `.design/` state
56
37
 
57
38
  Scan `.design/` for existing brands and projects:
58
39
  - Check `.design/branding/` for brand directories (each has a `config.json` with `project_type: "brand"`)
59
40
  - Check `.design/projects/` for project directories (each has a `config.json` with `project_type: "design"`)
60
41
  - Check for legacy flat `.design/config.json` at root (pre-0.4.0 structure)
61
42
  - For each brand/project found, read its `config.json` to get phase statuses
62
- - **Migration:** For each brand, if `{brand}/system/` exists but `{brand}/patterns/` does not, rename via `mv {brand}/system/ {brand}/patterns/` and log: "Migrated {brand} system/ → patterns/"
63
- - If `.design/CHANGELOG.md` doesn't exist, create it from `templates/changelog.md`
64
43
 
65
- ### Step 1b: Run design system scan (background)
44
+ ### Step 1b: Quick codebase check (inline — no agents)
45
+
46
+ If `package.json` exists, read it to extract:
47
+ - **Framework** (Next.js, Vite, Expo, etc.)
48
+ - **Styling** (Tailwind, CSS Modules, styled-components, etc.)
49
+ - **Component library** (shadcn/ui, Radix, MUI, etc.)
50
+ - **Classification:** greenfield (no custom code), boilerplate (scaffolded), or existing (real code)
51
+
52
+ Quick glob for component count: `src/components/**/*` or `components/**/*`.
66
53
 
67
- Spawn `/gsp-design-system` as a background agent (`run_in_background: true`, `subagent_type: "general-purpose"`). It writes to `.design/system/` — don't wait for it. Store the task reference for the brand essence questions or Step 4.
54
+ Also scan for brand-relevant assets:
55
+ - Logo files: glob for `**/logo*.{svg,png}`, `**/icon*.{svg,png}` in public/assets directories
56
+ - Font files: glob for `**/*.{woff,woff2,ttf,otf}` in public/fonts or similar
57
+ - Color definitions: check `globals.css` or `global.css` for CSS custom properties
68
58
 
69
- ### Step 1c: Greet
59
+ This is 2-4 fast reads — no agent spawn needed.
70
60
 
71
- Greet based on `.design/` findings from Step 1a. Use `AskUserQuestion` with clickable options to guide the user into the right flow.
61
+ ## Step 2: Greet
72
62
 
73
- If a `package.json` exists (quick check via glob don't wait for the full scan), add to the greeting: "I'm scanning your codebase in the background — I'll factor in what I find."
63
+ Greet based on findings from Step 1. Use `AskUserQuestion` with clickable options to guide the user into the right flow.
74
64
 
75
- Adapt the greeting based on what the scan revealed. Use plain text with Unicode characters for visual hierarchy:
65
+ Use plain text with Unicode characters for visual hierarchy:
76
66
 
77
67
  - **Diamonds:** `◆` complete, `◈` active/in-progress, `◇` pending
78
68
  - **Dividers:** `─── Label ──────────────────` as section separators
@@ -80,199 +70,63 @@ Adapt the greeting based on what the scan revealed. Use plain text with Unicode
80
70
  - **Summary box:** `┌──┐│└──┘` border with key-value pairs inside
81
71
 
82
72
  **Fresh start (no `.design/`):**
83
- Show ` /gsp- ◇◇\n looks like a fresh start.` (append codebase scanning note if `package.json` exists). Use `AskUserQuestion` with: Brand identity, Design project, Both (brand + project), Quick project.
84
-
85
- **Legacy `.design/` detected (flat structure, pre-0.4.0):**
86
- Acknowledge the legacy project. Use `AskUserQuestion`: Start fresh brand, Start design project, Keep working.
87
-
88
- **Brands exist, no projects:**
89
- Show brand name + pipeline flow (compact single-line if complete, full pipeline if incomplete). Use `AskUserQuestion`: one option per existing brand + Create new brand.
73
+ Show ` /gsp- ◇◇\n looks like a fresh start.`
90
74
 
91
- **Brands + projects exist (canonical format):**
92
- Show compact brand (single-line if complete) + full project pipeline flow. Then `AskUserQuestion`:
93
- - **Continue {project}** — "pick up at {next phase}"
94
- - **New project** — "start a new design project"
95
- - **New brand** — "create a new brand identity"
96
- - **View progress** — "see full progress dashboard"
97
-
98
- When codebase has been scanned (`.design/system/STACK.md` exists), show a Summary Box using data from STACK.md and COMPONENTS.md:
75
+ If codebase was detected, show a summary box:
99
76
  ```
100
77
  ┌──────────────────────────────────────────┐
101
- │ /gsp- ◆◈ │
102
- │ │
103
78
  │ framework Next.js 14 │
104
79
  │ styling Tailwind + shadcn/ui │
105
80
  │ components 47 detected │
81
+ │ assets logo.svg, 2 font files │
106
82
  │ type existing codebase │
107
83
  └──────────────────────────────────────────┘
108
84
  ```
109
85
 
110
- **Codebase signals found (any state):**
111
- Weave in what you found naturally: framework, styling, component count.
112
-
113
- ## Step 2: Route based on conversation
114
-
115
- From the greeting exchange, determine which flow to run:
116
-
117
- - **Brand identity** → Brand flow (Step 3)
118
- - **Design project** → Check for brands first. If none exist, explain they need a brand first. Offer to create one, then auto-transition to project flow.
119
- - **Full design (brand + project)** → Brand flow (Step 3), with E2E flag so brand completion auto-transitions to project flow (Step 4)
120
- - **Quick project** → Quick flow (Step 5)
121
- - **Continue existing work** → route to `/gsp-progress`
122
-
123
- ## Step 3: Brand flow
124
-
125
- Each question is its own `AskUserQuestion` call. Ask one, wait, adapt, ask the next. Skip anything you can already infer.
126
-
127
- **Step 3a — Brand name and path selection:**
128
-
129
- 1. Ask for brand name (kebab-case, e.g., "acme-corp")
130
- 2. "Do you already have brand materials to work with?" — use `AskUserQuestion`:
131
- - **Yes, I have an existing brand** — "I have a logo, colors, guidelines, or other assets"
132
- - **No, starting fresh** — "Building a brand from scratch"
133
-
134
- If **yes** → set `brand_mode: "evolve"`. Continue with evolve sequence (Step 3b-evolve).
135
- If **no** → set `brand_mode: "new"`. Continue with new sequence (Step 3b-new).
136
-
137
- 3. Create directory structure:
138
- ```bash
139
- mkdir -p .design/branding/{name}/{audit,discover,strategy,identity,patterns}
140
- ```
141
-
142
- **Step 3b-evolve — Gather existing brand context:**
143
-
144
- Ask these before business questions — the existing brand shapes everything:
145
-
146
- 3. Share your current brand materials — logo, colors, guidelines, URLs, anything you have. (open-ended — gather thoroughly here. Brand-audit will NOT re-ask for assets.)
147
- 4. How old is the current brand? (open-ended)
148
- 5. What's working well with the current brand? (open-ended)
149
- 6. What's not working — what are the pain points? (open-ended)
150
- 7. Evolution scope — use `AskUserQuestion`: **Preserve most, tweak details** / **Evolve significantly, keep core** / **Replace — start fresh**
151
-
152
- Then continue to Step 3c (business & people), skipping anything the brand materials already reveal.
153
-
154
- **Step 3b-new — Skip to business questions:**
155
-
156
- Continue directly to Step 3c.
157
-
158
- **Step 3c — Business & People:**
86
+ Use `AskUserQuestion` with:
87
+ - **New brand** "Create a brand identity from scratch"
88
+ - **Evolve existing brand** — "I have brand materials to work with"
89
+ - **Design project** "Start a design project (needs a brand first)"
90
+ - **Both (brand + project)** — "Full pipeline: brand then project"
91
+ - **Quick project** — "Skip branding, use a style preset"
159
92
 
160
- 8. What's the company name, and what industry/stage? (open-ended `AskUserQuestion`)
161
- 9. What problem does it solve, and for whom? (open-ended use the answer to start inferring persona)
162
- 10. What's the business model? (use `AskUserQuestion` with options if you can infer likely models from industry, otherwise open-ended)
163
- 11. Who are the main competitors? (2-3 names — open-ended)
164
- 12. Present an inferred primary persona — a concrete profile (name, role, frustration, aspiration) based on answers so far. Personas should feel like real people — dig into the emotional layer. Use `AskUserQuestion`: **Looks right** / **Adjust** / **Add a secondary persona**
165
-
166
- **Step 3d — Brand Essence:**
167
-
168
- Before presenting personality options, **internally synthesize** promise (what should someone feel?) and point of view (what does this brand disagree with?) from prior answers. Don't ask these directly — use them to ground personality options.
169
-
170
- 13. Brand personality direction — use `AskUserQuestion` with 2-3 concrete personality directions. **Each option must explain WHY it fits this brand's audience and problem** — not just a style label:
171
- - Each option: **Label** (3 adjectives) / **Description** (why this personality fits their specific audience and competitive position — reference the persona by name, the problem, or the gap) / **Preview** (example sentence in that voice, using their product context)
172
- - **Surprise me** — craft an unexpected direction inspired by the user's industry and personas
173
- - Note: this is a high-level direction only. Brand strategy phase will deepen this into archetype + voice — don't over-refine here.
174
- 14. What should the brand NEVER feel like? (use `AskUserQuestion` with 2-3 anti-directions inferred from their personality pick, plus open-ended option)
175
- 15. Brands admired or styles to avoid? (open-ended `AskUserQuestion`)
176
-
177
- Note: competitive landscape deep-dive happens in the research phase — don't re-confirm it here. The competitor names from Q11 are enough.
178
-
179
- **Step 3e — Constraints & confirmation:**
180
-
181
- 16. Any non-negotiables or constraints? (timeline, budget, must-haves) — open-ended `AskUserQuestion`
182
- 17. **Check background scan:** If the codebase scanner has returned results, weave tech findings naturally into your summary.
183
- 18. State your understanding back: "Here's what I'm hearing: [summary]." Use `AskUserQuestion`:
184
- - **Looks good** — "That's accurate, let's go"
185
- - **Adjust something** — "I want to change or add something"
186
-
187
- Skip any question you can already answer from prior context. Don't over-ask.
188
-
189
- 4. Read templates from `${CLAUDE_SKILL_DIR}/../../templates/branding/` and write artifacts:
190
- - `.design/branding/{name}/BRIEF.md` from `brief.md` template
191
- - `.design/branding/{name}/STATE.md` from `state.md` template
192
- - `.design/branding/{name}/config.json` from `config.json` template
193
- - `.design/branding/{name}/ROADMAP.md` from `roadmap.md` template
194
-
195
- 5. Set `brand_mode` in config.json based on Step 2 routing decision.
196
-
197
- 6. Route using `AskUserQuestion` — always offer Continue / Stop here / What happens next:
198
-
199
- - **Brand-only, new →** continue to `/gsp-brand-research`
200
- - **Brand-only, evolve →** continue to `/gsp-brand-audit`
201
- - **E2E, new →** continue to `/gsp-brand-research` (complete the entire brand pipeline first — research → strategy → identity → patterns — then auto-transition to Step 4 for project setup). Set `"e2e": true` in config.json so brand-patterns knows to route to project flow after completion.
202
- - **E2E, evolve →** continue to `/gsp-brand-audit` (complete full brand pipeline, then auto-transition to Step 4). Set `"e2e": true` in config.json.
203
-
204
- ## Step 4: Project flow
205
-
206
- **Background:** Run `git branch --show-current` with `run_in_background: true` now — result will be ready by the time we need it for git context detection.
207
-
208
- 1. Show available brands with phase status. No brands → offer to create one. One complete → suggest as default. Multiple → `AskUserQuestion` with one option per brand.
209
-
210
- 2. User selects a brand.
211
-
212
- 3. Ask for project name (kebab-case, e.g., "acme-website")
213
-
214
- 4. Create directory structure:
215
- ```bash
216
- mkdir -p .design/projects/{name}/{brief,research,design,critique,build,review,codebase,exports,references}
217
- ```
218
-
219
- ### Detect git context
220
-
221
- Use the background `git branch --show-current` result. If detected, confirm branch with `AskUserQuestion`. Store in config.json `git.branch` + STATE.md `## Git`. No git repo → skip silently.
222
-
223
- 5. Write `.design/projects/{name}/brand.ref` — brand name, relative path, consumed_at ISO date, identity_hash (first 8 chars md5 of IDENTITY.md, or "pending").
224
-
225
- 6. Consume `.design/system/STACK.md` — note classification for config.json, auto-infer `implementation_target` from STACK.md + COMPONENTS.md.
226
-
227
- 7. Gather project brief as a sequential conversation. Each question is its own `AskUserQuestion` call. Ask one, wait, adapt, ask the next. Skip anything you can already infer from the codebase scan.
228
-
229
- **Sequence — What we're building:**
93
+ **Legacy `.design/` detected (flat structure, pre-0.4.0):**
94
+ Acknowledge the legacy project. Use `AskUserQuestion`: Start fresh brand, Start design project, Keep working.
230
95
 
231
- 1. What are we building? (app, website, dashboard, etc.) — open-ended `AskUserQuestion`
232
- 2. Present background scan findings: "I found a {classification} {framework} project with {details}." Use `AskUserQuestion`: **Build on this** / **Different stack** / **Tell me more**
233
- 3. Platforms? — use `AskUserQuestion`: **Web** / **iOS** / **Android** / **Cross-platform** (skip if obvious from codebase)
234
- 4. Implementation target — use `AskUserQuestion` with options based on codebase analysis (e.g., shadcn, rn-reusables, custom, css-only)
235
- 5. Design scope — use `AskUserQuestion`:
236
- - **Full** — "Complete design: screens, components, tokens"
237
- - **Partial** — "Specific screens or flows only"
238
- - **Tokens only** — "Just design tokens, no screens"
239
- 6. Key screens/flows needed? — open-ended `AskUserQuestion`
96
+ **Brands exist, no projects:**
97
+ Show brand name + pipeline flow (compact single-line if complete, full pipeline if incomplete). Use `AskUserQuestion`: one option per existing brand to continue + Create new brand + Start design project.
240
98
 
241
- **Sequence Success & confirmation:**
99
+ **Brands + projects exist (canonical format):**
100
+ Show compact brand (single-line if complete) + full project pipeline flow. Then `AskUserQuestion`:
101
+ - **Continue {project}** — "pick up at {next phase}"
102
+ - **New project** — "start a new design project"
103
+ - **New brand** — "create a new brand identity"
104
+ - **View progress** — "see full progress dashboard"
242
105
 
243
- 7. What does success look like? open-ended `AskUserQuestion`
244
- 8. Any constraints? (timeline, budget, must-haves) — open-ended `AskUserQuestion`
245
- 9. State your understanding back: "Here's what I'm hearing: [summary]." Use `AskUserQuestion`:
246
- - **Looks good** — "That's accurate, let's go"
247
- - **Adjust something** — "I want to change or add something"
248
- - **Explain this** — "Walk me through what you captured and why" → explain each section of the brief and how it'll be used in the next phases
249
- - **Surprise me** — "Suggest something I haven't thought of" → propose an unexpected screen, flow, or feature angle that would elevate the project based on what you know about the brand, audience, and codebase. Present it as a suggestion the user can adopt, tweak, or skip.
106
+ Weave codebase signals into the greeting naturally when found.
250
107
 
251
- Skip any question you can already answer from the codebase scan. Don't over-ask.
108
+ ## Step 3: Route
252
109
 
253
- 8. Read templates from `${CLAUDE_SKILL_DIR}/../../templates/projects/` and write artifacts:
254
- - `.design/projects/{name}/BRIEF.md` from `brief.md` template
255
- - `.design/projects/{name}/STATE.md` from `state.md` template — populate `## Git` table with detected/confirmed branch (or "—")
256
- - `.design/projects/{name}/config.json` from `config.json` template — populate `git.branch` with detected/confirmed branch (or empty string)
257
- - `.design/projects/{name}/ROADMAP.md` from `roadmap.md` template
258
- - `.design/projects/{name}/exports/INDEX.md` from `${CLAUDE_SKILL_DIR}/../../templates/exports-index.md`
110
+ From the greeting exchange, route to the right skill:
259
111
 
260
- 9. Route using `AskUserQuestion`: "Project set up! Ready to scope what you're building?"
261
- - **Continue to scoping** — "Scope the project now" → invoke `/gsp-project-brief` via Skill tool
262
- - **Stop here** "I'll come back later" confirm files are saved, show how to resume with `/gsp-start`
263
- - **What happens next?** "Explain the scoping phase" explain what project-brief does (screen list, component adaptations, gap analysis) and how it uses the brief
112
+ - **New brand** invoke `/gsp-brand-brief` via Skill tool
113
+ - **Evolve existing brand** → invoke `/gsp-brand-audit` via Skill tool
114
+ - **Design project** Check for brands first. If none exist, explain they need a brand first. Offer to create one (route to `/gsp-brand-brief` with `e2e: true`), or use a style preset (Quick flow).
115
+ - **Both (brand + project)**invoke `/gsp-brand-brief` via Skill tool with `e2e: true`
116
+ - **Quick project** → Quick flow (Step 4)
117
+ - **Continue existing work** → route to `/gsp-progress`
264
118
 
265
- ## Step 5: Quick project flow
119
+ ## Step 4: Quick project flow
266
120
 
267
121
  For users who want to skip branding and start designing immediately with a style preset.
268
122
 
269
- ### 5a: Style selection
123
+ ### 4a: Style selection
270
124
 
271
- Read `${CLAUDE_SKILL_DIR}/../../skills/gsp-style/styles/INDEX.yml` and present styles grouped by category. Use `AskUserQuestion` with one option per mood group (showing 2-3 preset names as preview) plus **Surprise me**. When user picks a group, drill into specific presets. If user names a preset directly, skip the group step.
125
+ Read `${CLAUDE_SKILL_DIR}/../gsp-style/styles/INDEX.yml` and present styles grouped by category. Use `AskUserQuestion` with one option per mood group (showing 2-3 preset names as preview) plus **Surprise me**. When user picks a group, drill into specific presets. If user names a preset directly, skip the group step.
272
126
 
273
127
  **"Surprise me" logic:** Weight by codebase type — dev tools → dark/minimal, content → editorial, SaaS → minimal/bold, e-commerce → warm/playful, unknown → random.
274
128
 
275
- ### 5b: Create minimal brand
129
+ ### 4b: Create minimal brand
276
130
 
277
131
  1. Create brand directory:
278
132
  ```bash
@@ -304,7 +158,7 @@ mkdir -p .design/branding/_style-{preset}/patterns/
304
158
  - Phase 3 (Identity): `skipped`
305
159
  - Phase 4 (System): `complete`
306
160
 
307
- ### 5c: Transition to project
161
+ ### 4c: Transition to project
308
162
 
309
163
  Display:
310
164
  ```
@@ -314,17 +168,12 @@ Display:
314
168
  now let's scope your project.
315
169
  ```
316
170
 
317
- Continue directly to Step 4 (project flow) with these modifications:
318
- - Skip "show available brands" — auto-select `_style-{preset}`
319
- - Go straight to asking for project name
320
- - Set `style_preset: "{preset}"` in the project's `config.json`
321
- - Set `identity_hash: "style-only"` in `brand.ref`
322
- - Proceed with the normal sequential project brief gathering
171
+ Route to `/gsp-project-brief` via Skill tool with the style brand pre-selected.
323
172
 
324
173
  ### Upgrade path
325
174
 
326
175
  If a user later wants full branding, they can:
327
- 1. Run `/gsp-start` → "Brand identity" to create a real brand
176
+ 1. Run `/gsp-start` → "New brand" to create a real brand
328
177
  2. Full diamond produces identity + patterns with real tokens
329
178
  3. Update the project's `brand.ref` to point to the new brand
330
179
  4. Re-run build phases — they pick up the new tokens automatically
@@ -2,7 +2,6 @@
2
2
  name: gsp-style
3
3
  description: Apply a design style — get tokens and foundations without the branding diamond
4
4
  user-invocable: true
5
- model: sonnet
6
5
  allowed-tools:
7
6
  - Read
8
7
  - Write
@@ -136,7 +135,7 @@ Read the style template from `${CLAUDE_SKILL_DIR}/../../templates/phases/style.m
136
135
 
137
136
  Read BOTH source files:
138
137
  - `styles/{name}.yml` — structured data (tokens, intensity, patterns, constraints, effects)
139
- - `styles/{name}.md` — prose companion (design philosophy, CSS code hints, component styling, textures). Skip the `<role>` block — start from `<design-system>`.
138
+ - `styles/{name}.md` — prose companion (design philosophy, CSS code hints, component styling, textures).
140
139
 
141
140
  If the `.md` companion doesn't exist, render STYLE.md from `.yml` data only (thinner but functional).
142
141
 
@@ -1,8 +1,14 @@
1
1
  # Style Preset Index
2
- # 34 styles — sourced from designprompts.dev, GSP trend references, and original presets
2
+ # 35 styles — sourced from designprompts.dev, GSP trend references, and original presets
3
3
  # Tags enable fuzzy matching: /gsp-style "something dark and techy" → cyberpunk, terminal, modern-dark
4
4
 
5
5
  styles:
6
+ # ── Industrial ────────────────────────
7
+ - name: nothing
8
+ file: nothing.yml
9
+ tags: [monochrome, industrial, dark, minimal, technical, instrument, mechanical, swiss]
10
+ vibe: "Nothing Phone DNA — OLED black, dot-matrix Doto headlines, red signal accent, zero shadows"
11
+
6
12
  # ── Minimal ─────────────────────────
7
13
  - name: swiss-minimalist
8
14
  file: swiss-minimalist.yml