get-shit-pretty 0.6.2 → 0.7.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 (161) hide show
  1. package/README.md +7 -12
  2. package/bin/install.js +125 -84
  3. package/gsp/agents/gsp-accessibility-auditor.md +4 -4
  4. package/gsp/agents/gsp-ascii-artist.md +2 -2
  5. package/gsp/agents/gsp-brand-auditor.md +3 -3
  6. package/gsp/agents/gsp-brand-engineer.md +131 -0
  7. package/gsp/agents/gsp-brand-strategist.md +3 -3
  8. package/gsp/agents/gsp-brand-syncer.md +8 -7
  9. package/gsp/agents/gsp-builder.md +49 -6
  10. package/gsp/agents/gsp-campaign-director.md +3 -4
  11. package/gsp/agents/gsp-creative-director.md +80 -0
  12. package/gsp/agents/gsp-critic.md +100 -18
  13. package/gsp/agents/gsp-designer.md +52 -5
  14. package/gsp/agents/gsp-project-researcher.md +4 -4
  15. package/gsp/agents/gsp-researcher.md +5 -5
  16. package/gsp/agents/gsp-reviewer.md +3 -3
  17. package/gsp/agents/gsp-scoper.md +3 -3
  18. package/gsp/hooks/hooks.json +5 -5
  19. package/gsp/skills/get-shit-pretty/SKILL.md +10 -9
  20. package/gsp/skills/gsp-accessibility/SKILL.md +12 -12
  21. package/gsp/skills/gsp-accessibility-audit/SKILL.md +8 -9
  22. package/gsp/skills/gsp-add-reference/SKILL.md +6 -1
  23. package/gsp/skills/gsp-art/SKILL.md +6 -1
  24. package/gsp/skills/gsp-brand-audit/SKILL.md +5 -5
  25. package/gsp/skills/gsp-brand-guidelines/SKILL.md +233 -0
  26. package/gsp/skills/gsp-brand-guidelines/token-mapping.md +329 -0
  27. package/gsp/skills/gsp-brand-identity/SKILL.md +29 -20
  28. package/gsp/skills/gsp-brand-refine/SKILL.md +30 -23
  29. package/gsp/skills/gsp-brand-research/SKILL.md +4 -4
  30. package/gsp/{references → skills/gsp-brand-research}/design-trends.md +4 -4
  31. package/gsp/skills/gsp-brand-strategy/SKILL.md +7 -7
  32. package/gsp/skills/gsp-brand-sync/SKILL.md +10 -10
  33. package/gsp/skills/gsp-brand-sync/chunk-format.md +79 -0
  34. package/gsp/skills/gsp-color/SKILL.md +73 -0
  35. package/gsp/skills/gsp-color/chunk-format.md +79 -0
  36. package/gsp/skills/{gsp-palette/SKILL.md → gsp-color/domains/palette.md} +31 -101
  37. package/gsp/skills/gsp-color/domains/system.md +123 -0
  38. package/gsp/skills/gsp-design-system/SKILL.md +9 -4
  39. package/gsp/skills/gsp-doctor/SKILL.md +25 -18
  40. package/gsp/skills/gsp-help/SKILL.md +30 -29
  41. package/gsp/skills/gsp-icons/SKILL.md +108 -0
  42. package/gsp/skills/gsp-icons/chunk-format.md +79 -0
  43. package/gsp/skills/gsp-launch/SKILL.md +3 -4
  44. package/gsp/skills/gsp-logo/SKILL.md +173 -0
  45. package/gsp/skills/gsp-logo/chunk-format.md +79 -0
  46. package/gsp/skills/gsp-phase-transition/SKILL.md +124 -0
  47. package/gsp/skills/gsp-pretty/SKILL.md +2 -2
  48. package/gsp/skills/gsp-progress/SKILL.md +20 -20
  49. package/gsp/skills/gsp-project-brief/SKILL.md +8 -9
  50. package/gsp/skills/gsp-project-build/SKILL.md +30 -25
  51. package/gsp/skills/gsp-project-critique/SKILL.md +17 -18
  52. package/gsp/{references → skills/gsp-project-critique}/visual-taste.md +1 -1
  53. package/gsp/skills/gsp-project-design/SKILL.md +18 -18
  54. package/gsp/skills/gsp-project-research/SKILL.md +6 -7
  55. package/gsp/skills/gsp-project-review/SKILL.md +8 -10
  56. package/gsp/skills/gsp-scaffold/SKILL.md +3 -3
  57. package/gsp/skills/gsp-start/SKILL.md +15 -15
  58. package/gsp/{references → skills/gsp-start}/questioning.md +1 -1
  59. package/gsp/skills/gsp-style/SKILL.md +43 -45
  60. package/gsp/skills/gsp-style/chunk-format.md +79 -0
  61. package/gsp/skills/gsp-style/style-preset-schema.md +124 -0
  62. package/gsp/skills/gsp-style/styles/INDEX.yml +1 -1
  63. package/gsp/skills/gsp-style/styles/academia.yml +80 -0
  64. package/gsp/skills/gsp-style/styles/art-deco.yml +81 -0
  65. package/gsp/skills/gsp-style/styles/bauhaus.yml +78 -0
  66. package/gsp/skills/gsp-style/styles/bold-typography.yml +73 -0
  67. package/gsp/skills/gsp-style/styles/botanical.yml +78 -0
  68. package/gsp/skills/gsp-style/styles/claymorphism.yml +84 -0
  69. package/gsp/skills/gsp-style/styles/cyberpunk.yml +87 -0
  70. package/gsp/skills/gsp-style/styles/enterprise.yml +81 -0
  71. package/gsp/skills/gsp-style/styles/flat-design.yml +67 -0
  72. package/gsp/skills/gsp-style/styles/fluent.yml +82 -0
  73. package/gsp/skills/gsp-style/styles/glassmorphism.yml +83 -0
  74. package/gsp/skills/gsp-style/styles/humanist-literary.yml +74 -0
  75. package/gsp/skills/gsp-style/styles/industrial.yml +82 -0
  76. package/gsp/skills/gsp-style/styles/kinetic.yml +94 -0
  77. package/gsp/skills/gsp-style/styles/liquid-glass.yml +91 -0
  78. package/gsp/skills/gsp-style/styles/luxury.yml +83 -0
  79. package/gsp/skills/gsp-style/styles/material.yml +83 -0
  80. package/gsp/skills/gsp-style/styles/maximalism.yml +92 -0
  81. package/gsp/skills/gsp-style/styles/minimal-dark.yml +75 -0
  82. package/gsp/skills/gsp-style/styles/modern-dark.yml +88 -0
  83. package/gsp/skills/gsp-style/styles/monochrome.yml +68 -0
  84. package/gsp/skills/gsp-style/styles/neubrutalism.yml +83 -0
  85. package/gsp/skills/gsp-style/styles/neumorphism.yml +77 -0
  86. package/gsp/skills/gsp-style/styles/newsprint.yml +81 -0
  87. package/gsp/skills/gsp-style/styles/organic.yml +77 -0
  88. package/gsp/skills/gsp-style/styles/playful-geometric.yml +90 -0
  89. package/gsp/skills/gsp-style/styles/professional.yml +67 -0
  90. package/gsp/skills/gsp-style/styles/retro.yml +85 -0
  91. package/gsp/skills/gsp-style/styles/saas.yml +83 -0
  92. package/gsp/skills/gsp-style/styles/sketch.yml +86 -0
  93. package/gsp/skills/gsp-style/styles/swiss-minimalist.yml +69 -0
  94. package/gsp/skills/gsp-style/styles/terminal.yml +83 -0
  95. package/gsp/skills/gsp-style/styles/vaporwave.yml +84 -0
  96. package/gsp/skills/gsp-style/styles/web3.yml +82 -0
  97. package/gsp/skills/gsp-typography/SKILL.md +70 -0
  98. package/gsp/skills/gsp-typography/chunk-format.md +79 -0
  99. package/gsp/skills/gsp-typography/domains/pairing.md +109 -0
  100. package/gsp/skills/gsp-typography/domains/scale.md +227 -0
  101. package/gsp/skills/gsp-typography/domains/system.md +108 -0
  102. package/gsp/skills/gsp-update/SKILL.md +1 -2
  103. package/gsp/skills/gsp-visuals/SKILL.md +82 -0
  104. package/gsp/skills/gsp-visuals/chunk-format.md +79 -0
  105. package/gsp/skills/gsp-visuals/domains/3d.md +127 -0
  106. package/gsp/skills/gsp-visuals/domains/imagery.md +145 -0
  107. package/gsp/skills/gsp-visuals/domains/textures.md +138 -0
  108. package/gsp/skills/gsp-visuals/domains/video.md +107 -0
  109. package/gsp/templates/branding/config.json +1 -1
  110. package/gsp/templates/branding/roadmap.md +9 -9
  111. package/gsp/templates/exports-index.md +8 -8
  112. package/gsp/templates/phases/brief.md +1 -1
  113. package/gsp/templates/phases/build.md +1 -1
  114. package/gsp/templates/phases/critique.md +1 -1
  115. package/gsp/templates/phases/design.md +2 -2
  116. package/gsp/templates/phases/discover.md +1 -1
  117. package/gsp/templates/phases/identity.md +1 -1
  118. package/gsp/templates/phases/launch.md +1 -1
  119. package/gsp/templates/phases/patterns.md +60 -71
  120. package/gsp/templates/phases/research.md +1 -1
  121. package/gsp/templates/phases/review.md +1 -1
  122. package/gsp/templates/phases/strategy.md +1 -1
  123. package/gsp/templates/phases/style.md +158 -0
  124. package/gsp/templates/projects/config.json +1 -1
  125. package/gsp/templates/projects/roadmap.md +7 -7
  126. package/gsp/templates/projects/state.md +1 -1
  127. package/package.json +1 -2
  128. package/.claude-plugin/plugin.json +0 -24
  129. package/gsp/agents/gsp-identity-designer.md +0 -74
  130. package/gsp/agents/gsp-pattern-architect.md +0 -189
  131. package/gsp/prompts/01-design-system-architect.md +0 -19
  132. package/gsp/prompts/02-brand-identity-creator.md +0 -16
  133. package/gsp/prompts/03-ui-ux-pattern-master.md +0 -21
  134. package/gsp/prompts/04-marketing-asset-factory.md +0 -14
  135. package/gsp/prompts/05-implementation-spec-expert.md +0 -15
  136. package/gsp/prompts/06-design-critique-partner.md +0 -14
  137. package/gsp/prompts/07-design-trend-synthesizer.md +0 -3
  138. package/gsp/prompts/08-accessibility-auditor.md +0 -23
  139. package/gsp/prompts/09-design-to-code-translator.md +0 -49
  140. package/gsp/prompts/10-project-scoper.md +0 -17
  141. package/gsp/prompts/11-deliverable-reviewer.md +0 -18
  142. package/gsp/prompts/12-project-researcher.md +0 -18
  143. package/gsp/references/phase-transitions.md +0 -132
  144. package/gsp/references/style-preset-schema.md +0 -63
  145. package/gsp/skills/gsp-brand-patterns/SKILL.md +0 -240
  146. package/gsp/skills/gsp-typescale/SKILL.md +0 -234
  147. /package/gsp/{references → skills/gsp-accessibility-audit}/wcag-checklist.md +0 -0
  148. /package/gsp/{references → skills/gsp-art}/terminal-art.md +0 -0
  149. /package/gsp/{references → skills/gsp-brand-audit}/chunk-format.md +0 -0
  150. /package/gsp/{references → skills/gsp-brand-guidelines}/design-tokens.md +0 -0
  151. /package/gsp/{references → skills/gsp-brand-strategy}/brand-archetypes.md +0 -0
  152. /package/gsp/{references → skills/gsp-brand-strategy}/brand-prism.md +0 -0
  153. /package/gsp/{references → skills/gsp-brand-strategy}/positioning-frameworks.md +0 -0
  154. /package/gsp/{references → skills/gsp-brand-strategy}/voice-tone.md +0 -0
  155. /package/gsp/{references → skills/gsp-color/references}/color-composition.md +0 -0
  156. /package/gsp/{references → skills/gsp-project-build}/visual-effects.md +0 -0
  157. /package/gsp/{references → skills/gsp-project-critique}/anti-patterns.md +0 -0
  158. /package/gsp/{references → skills/gsp-project-critique}/nielsen-heuristics.md +0 -0
  159. /package/gsp/{references → skills/gsp-project-design}/apple-hig-patterns.md +0 -0
  160. /package/gsp/{references → skills/gsp-project-design}/block-patterns.md +0 -0
  161. /package/gsp/{references → skills/gsp-typography/references}/typography-scales.md +0 -0
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: brand-refine
2
+ name: gsp-brand-refine
3
3
  description: Targeted brand adjustments mid-project — tweak colors, typography, or spacing without re-running the full branding diamond
4
4
  user-invocable: true
5
5
  model: sonnet
@@ -13,21 +13,21 @@ allowed-tools:
13
13
  - WebFetch
14
14
  ---
15
15
  <context>
16
- You are a GSP brand refinement skill. You take targeted feedback about brand visual issues and surgically update token values — no need to re-run strategy or identity.
16
+ You are a GSP brand refinement skill. You take targeted feedback about brand visual issues and surgically update the brand's `.yml` preset — no need to re-run strategy or identity.
17
17
 
18
- This skill modifies **tokens.json** and **palettes.json** only. If the user's feedback is strategic ("make the tone more playful") or narrative ("the brand story feels off"), redirect to `/gsp:brand-strategy` or `/gsp:brand-identity`.
18
+ This skill modifies **`{brand-name}.yml`** — the single source of truth for brand tokens, patterns, constraints, effects, and intensity. If the user's feedback is strategic ("make the tone more playful") or narrative ("the brand story feels off"), redirect to `/gsp-brand-strategy` or `/gsp-brand-identity`.
19
19
  </context>
20
20
 
21
21
  <objective>
22
- Accept natural language feedback about brand visuals, identify which tokens are affected, apply targeted value changes, and log what changed.
22
+ Accept natural language feedback about brand visuals, identify which `.yml` values are affected, apply targeted changes, and regenerate `STYLE.md` if it exists.
23
23
 
24
- **Input:** Natural language feedback (e.g., "accent is too muted", "heading weight too heavy")
25
- **Output:** Updated `tokens.json` and/or `palettes.json` + `REFINE-LOG.md`
24
+ **Input:** Natural language feedback (e.g., "accent is too muted", "make buttons rounder", "more motion")
25
+ **Output:** Updated `{brand-name}.yml` + regenerated `STYLE.md` (if exists) + `REFINE-LOG.md`
26
26
  **Agent:** None — inline skill, surgical edits
27
27
  </objective>
28
28
 
29
29
  <execution_context>
30
- @${CLAUDE_SKILL_DIR}/../../references/design-tokens.md
30
+ @${CLAUDE_SKILL_DIR}/../gsp-brand-guidelines/design-tokens.md
31
31
  </execution_context>
32
32
 
33
33
  <rules>
@@ -43,33 +43,40 @@ Accept natural language feedback about brand visuals, identify which tokens are
43
43
  <process>
44
44
  ## Step 0: Locate brand and parse feedback
45
45
 
46
- Extract feedback from the user's input (everything after `/gsp:brand-refine`).
46
+ Extract feedback from the user's input (everything after `/gsp-brand-refine`).
47
47
 
48
48
  If no feedback provided, use `AskUserQuestion`: "What would you like to adjust? (e.g., 'accent is too muted', 'heading font feels too heavy', 'spacing too tight')"
49
49
 
50
50
  Resolve brand from `.design/branding/` (one → use it, multiple → ask). Set `BRAND_PATH`.
51
- Check that `{BRAND_PATH}/patterns/tokens.json` exists. If not: "No tokens found. Run `/gsp:brand-patterns` first."
51
+ Find the brand's `.yml` file: scan `{BRAND_PATH}/patterns/` for a `.yml` file that is NOT in `foundations/` or `components/`. If not found: "No brand style found. Run `/gsp-brand-guidelines` first."
52
+
53
+ Also check if `{BRAND_PATH}/patterns/STYLE.md` exists (will need regeneration after changes).
52
54
 
53
55
  ## Step 1: Read current state
54
56
 
55
- Read `{BRAND_PATH}/patterns/tokens.json` once. Extract all sections relevant to the feedback:
57
+ Read the brand `.yml` once. Map feedback to the relevant section:
56
58
 
57
- | Feedback signals | Token section |
59
+ | Feedback signals | `.yml` section |
58
60
  |-----------------|---------------|
59
- | color, accent, muted, vibrant, contrast, tint, shade, hue | `color` |
60
- | font, heading, body, weight, size, line-height | `typography` |
61
- | spacing, padding, gap, tight, loose, dense | `spacing` |
62
- | shadow, elevation, depth, flat | `shadow` |
63
- | radius, rounded, sharp, corners | `borderRadius` |
64
-
65
- Also read `{BRAND_PATH}/identity/palettes.json` if it exists and feedback involves colors.
61
+ | color, accent, muted, vibrant, contrast, tint, shade, hue | `tokens.color` + `dark_mode.color` |
62
+ | font, heading, body, weight, size, line-height | `tokens.typography` |
63
+ | spacing, padding, gap, tight, loose, dense | `tokens.spacing` |
64
+ | shadow, elevation, depth, flat | `tokens.elevation` |
65
+ | radius, rounded, sharp, corners | `tokens.shape` |
66
+ | motion, speed, slow, fast, bounce, snap | `tokens.motion` + `intensity.motion` |
67
+ | creative, playful, restrained, chaos, calm | `intensity.variance` |
68
+ | dense, airy, packed, spacious | `intensity.density` |
69
+ | button, card, input, badge, nav | `patterns.{component}` |
70
+ | never, always, forbidden, required | `constraints` |
71
+ | hover, click, press, animation, effect | `effects` |
72
+ | dark mode, dark background, dark theme, night | `dark_mode.color` (+ any section above if the feedback applies to dark mode specifically) |
66
73
 
67
74
  ## Step 2: Propose changes
68
75
 
69
76
  Show a clear before/after for each affected token:
70
77
 
71
78
  ```
72
- /gsp:brand-refine
79
+ /gsp-brand-refine
73
80
  ═══════════════════════════════════════
74
81
 
75
82
  Feedback: "the accent is too muted"
@@ -101,7 +108,7 @@ If regenerating, call the tints.dev API:
101
108
  ```
102
109
  WebFetch: https://www.tints.dev/api/{colorName}/{hexWithoutHash}
103
110
  ```
104
- Parse the response for the 11-stop OKLCH scale (50–950) and update `palettes.json`.
111
+ Parse the response for the 11-stop OKLCH scale (50–950) and update `identity/palettes.json` as a reference artifact, then update the `.yml` color tokens from the new ramp.
105
112
 
106
113
  ### Typography changes involving scale ratio
107
114
 
@@ -115,8 +122,8 @@ Use `AskUserQuestion`:
115
122
  - **Cancel** — "keep current values"
116
123
 
117
124
  Apply confirmed changes:
118
- 1. **tokens.json** — edit values in place with `Edit`. Preserve structure.
119
- 2. **palettes.json**update if palette was regenerated.
125
+ 1. **`{brand-name}.yml`** — edit values in place with `Edit`. Preserve structure.
126
+ 2. **`STYLE.md`** — if it exists, regenerate the affected sections (Patterns tables, Constraints lists, Effects tables, or Intensity dials) to reflect the `.yml` changes. Read the template from `${CLAUDE_SKILL_DIR}/../../templates/phases/style.md` for format reference.
120
127
 
121
128
  ## Step 4: Log and finish
122
129
 
@@ -134,7 +141,7 @@ Append to `{BRAND_PATH}/REFINE-LOG.md`:
134
141
  Display summary:
135
142
 
136
143
  ```
137
- /gsp:brand-refine — {n} tokens updated
144
+ /gsp-brand-refine — {n} tokens updated
138
145
  ═══════════════════════════════════════
139
146
 
140
147
  Updated: {list of tokens}
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: brand-research
2
+ name: gsp-brand-research
3
3
  description: Research your market and competitors
4
4
  user-invocable: true
5
5
  model: sonnet
@@ -27,7 +27,7 @@ Research market context that will inform brand strategy.
27
27
 
28
28
  <execution_context>
29
29
  @${CLAUDE_SKILL_DIR}/../../templates/phases/discover.md
30
- @${CLAUDE_SKILL_DIR}/../../references/design-trends.md (index only — agent loads specific trend files only after open research validates relevance)
30
+ @${CLAUDE_SKILL_DIR}/design-trends.md (index only — agent loads specific trend files only after open research validates relevance)
31
31
  @${CLAUDE_SKILL_DIR}/../gsp-style/styles/INDEX.yml
32
32
  </execution_context>
33
33
 
@@ -43,7 +43,7 @@ Research market context that will inform brand strategy.
43
43
 
44
44
  Resolve brand from `.design/branding/` (one → use it, multiple → ask). Set `BRAND_PATH`.
45
45
 
46
- Read `{BRAND_PATH}/BRIEF.md`. If missing, tell user to run `/gsp:start` first.
46
+ Read `{BRAND_PATH}/BRIEF.md`. If missing, tell user to run `/gsp-start` first.
47
47
  Read `{BRAND_PATH}/config.json` for `brand_mode`.
48
48
 
49
49
  ## Step 2: Confirm research scope
@@ -85,5 +85,5 @@ Update `{BRAND_PATH}/STATE.md`: set Phase 1 (Discover) to `complete`.
85
85
 
86
86
  ## Step 5: Phase transition
87
87
 
88
- Render phase transition (see `references/phase-transitions.md`).
88
+ Invoke `/gsp-phase-transition` with phase `discover` and output directory `{BRAND_PATH}/research/`.
89
89
  </process>
@@ -1,6 +1,6 @@
1
1
  # Design Trends Reference — Index
2
2
 
3
- Production-ready style presets and deep engineering references for current design trends. Consolidated in the `/gsp:style` skill.
3
+ Production-ready style presets and deep engineering references for current design trends. Consolidated in the `/gsp-style` skill.
4
4
 
5
5
  Last updated: 2026-03-14
6
6
 
@@ -8,13 +8,13 @@ Last updated: 2026-03-14
8
8
 
9
9
  ## Style Presets (34)
10
10
 
11
- Style presets with structured tokens live in the `/gsp:style` skill at `skills/gsp-style/styles/`. Each preset is a YAML file with color, typography, shape, elevation, spacing, and motion tokens ready for W3C Design Token expansion.
11
+ Style presets with structured tokens live in the `/gsp-style` skill at `skills/gsp-style/styles/`. Each preset is a YAML file with color, typography, shape, elevation, spacing, and motion tokens ready for W3C Design Token expansion.
12
12
 
13
- Run `/gsp:style --list` to see all available styles, or read `skills/gsp-style/styles/INDEX.yml` for the full catalog with tags and vibes.
13
+ Run `/gsp-style --list` to see all available styles, or read `skills/gsp-style/styles/INDEX.yml` for the full catalog with tags and vibes.
14
14
 
15
15
  ## Deep Engineering References (9)
16
16
 
17
- Detailed CSS implementation guides, framework notes, and accessibility analysis live in the `/gsp:style` skill at `skills/gsp-style/trends/`:
17
+ Detailed CSS implementation guides, framework notes, and accessibility analysis live in the `/gsp-style` skill at `skills/gsp-style/trends/`:
18
18
 
19
19
  | # | Trend | Description | Compat |
20
20
  |---|-------|-------------|--------|
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: brand-strategy
2
+ name: gsp-brand-strategy
3
3
  description: Define positioning, voice, and messaging
4
4
  user-invocable: true
5
5
  model: opus
@@ -27,9 +27,9 @@ Define brand strategy and voice through interactive creative direction, then pro
27
27
 
28
28
  <execution_context>
29
29
  @${CLAUDE_SKILL_DIR}/../../templates/phases/strategy.md
30
- @${CLAUDE_SKILL_DIR}/../../references/brand-archetypes.md
31
- @${CLAUDE_SKILL_DIR}/../../references/positioning-frameworks.md
32
- @${CLAUDE_SKILL_DIR}/../../references/voice-tone.md
30
+ @${CLAUDE_SKILL_DIR}/brand-archetypes.md
31
+ @${CLAUDE_SKILL_DIR}/positioning-frameworks.md
32
+ @${CLAUDE_SKILL_DIR}/voice-tone.md
33
33
  </execution_context>
34
34
 
35
35
  <rules>
@@ -45,7 +45,7 @@ Define brand strategy and voice through interactive creative direction, then pro
45
45
  ## Step 0: Resolve brand
46
46
 
47
47
  Resolve brand from `.design/branding/` (one → use it, multiple → ask). Set `BRAND_PATH`.
48
- If missing, tell user to run `/gsp:start` first.
48
+ If missing, tell user to run `/gsp-start` first.
49
49
 
50
50
  ## Step 1: Load context
51
51
 
@@ -65,7 +65,7 @@ Frame as: "Here's where this brand can win." Keep it to 4-6 lines.
65
65
 
66
66
  ## Step 3: Archetype selection
67
67
 
68
- Read the personality direction from BRIEF.md (gathered during `/gsp:start`). Use it as the starting point — don't re-ask for personality. Deepen it into a structural archetype.
68
+ Read the personality direction from BRIEF.md (gathered during `/gsp-start`). Use it as the starting point — don't re-ask for personality. Deepen it into a structural archetype.
69
69
 
70
70
  Use `AskUserQuestion` with 2-3 archetype candidates that align with the chosen personality direction. Each option:
71
71
  - **Label:** archetype name
@@ -146,5 +146,5 @@ If adjust → loop back. If confirmed → proceed.
146
146
 
147
147
  Update `{BRAND_PATH}/STATE.md`: set Phase 2 (Strategy) to `complete`.
148
148
 
149
- Render phase transition (see `references/phase-transitions.md`).
149
+ Invoke `/gsp-phase-transition` with phase `strategy` and output directory `{BRAND_PATH}/strategy/`.
150
150
  </process>
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: brand-sync
2
+ name: gsp-brand-sync
3
3
  description: Sync brand to match a project's shipped state — tokens, voice, visual patterns, personality
4
4
  user-invocable: true
5
5
  model: opus
@@ -17,7 +17,7 @@ allowed-tools:
17
17
  <context>
18
18
  Standalone brand feedback skill. After a project ships (or mid-development), the codebase and content may have diverged from the brand system — adjusted colors, shifted tone of voice, evolved visual patterns. This skill detects those divergences across all brand dimensions and updates the brand to match.
19
19
 
20
- This is the standalone version of the feedback loop built into `/gsp:project-build` (build-time). Use this when:
20
+ This is the standalone version of the feedback loop built into `/gsp-project-build` (build-time). Use this when:
21
21
  - A project evolved beyond its original brand during development
22
22
  - Manual tweaks were made post-build
23
23
  - The voice/tone landed differently than the strategy specified
@@ -33,8 +33,8 @@ Compare a project's shipped state against its source brand across all dimensions
33
33
  </objective>
34
34
 
35
35
  <execution_context>
36
- @${CLAUDE_SKILL_DIR}/../../references/design-tokens.md
37
- @${CLAUDE_SKILL_DIR}/../../references/chunk-format.md
36
+ @${CLAUDE_SKILL_DIR}/../gsp-brand-guidelines/design-tokens.md
37
+ @${CLAUDE_SKILL_DIR}/chunk-format.md
38
38
  </execution_context>
39
39
 
40
40
  <rules>
@@ -49,7 +49,7 @@ Compare a project's shipped state against its source brand across all dimensions
49
49
  ## Step 0: Resolve brand and project
50
50
 
51
51
  Resolve brand from `.design/branding/` (one → use it, multiple → ask). Set `BRAND_PATH`.
52
- Check that the brand has at least one of: `patterns/tokens.json`, `strategy/`, `identity/`. If none exist, tell the user: "No brand system found. Run `/gsp:brand-patterns` first."
52
+ Check that the brand has at least one of: `patterns/{brand-name}.yml`, `strategy/`, `identity/`. If none exist, tell the user: "No brand system found. Run `/gsp-brand-guidelines` first."
53
53
 
54
54
  Verify the project codebase has shipped output — source files with components, copy, or styles.
55
55
 
@@ -60,7 +60,7 @@ mkdir -p {BRAND_PATH}/sync
60
60
  ```
61
61
 
62
62
  Spawn the `gsp-brand-syncer` agent with:
63
- - `BRAND_PATH` and all available brand files (tokens.json, strategy chunks, identity chunks, foundation chunks)
63
+ - `BRAND_PATH` and all available brand files ({brand-name}.yml, strategy chunks, identity chunks, foundation chunks)
64
64
  - Project codebase location (working directory)
65
65
  - **Output path:** `{BRAND_PATH}/sync/`
66
66
 
@@ -74,7 +74,7 @@ Read `{BRAND_PATH}/sync/SYNC-REPORT.md`. Present a compact summary per dimension
74
74
  - **Tokens only** — just sync the quantitative token changes
75
75
  - **Pick by dimension** — choose which dimensions to sync
76
76
  - **Review each** — walk through every divergence individually
77
- - **Refine manually** — run `/gsp:brand-refine` to make targeted token adjustments instead
77
+ - **Refine manually** — run `/gsp-brand-refine` to make targeted token adjustments instead
78
78
  - **Skip** — don't update the brand
79
79
 
80
80
  If "Pick by dimension", ask per dimension. If "Review each", walk through the Update Map from the report.
@@ -85,15 +85,15 @@ For "Removed" tokens: ask whether to remove from brand or keep (may be used by o
85
85
 
86
86
  Use the Update Map from the sync report. For each confirmed change:
87
87
 
88
- **Tokens** — edit `tokens.json` in place (preserve W3C structure). Update corresponding foundation chunks in `{BRAND_PATH}/patterns/foundations/` and style preset `.yml` if it exists.
88
+ **Tokens** — edit the brand `.yml` preset in place. Regenerate affected STYLE.md sections if they exist.
89
89
 
90
90
  **Voice & tone** — update `{BRAND_PATH}/strategy/voice-and-tone.md` (adjust attributes, tone positions, style rules). Update `messaging.md` if messaging shifted.
91
91
 
92
- **Visual patterns** — update foundation chunks in `{BRAND_PATH}/patterns/foundations/`. Update component specs and identity chunks if visual identity evolved.
92
+ **Visual patterns** — update the brand `.yml` patterns/constraints/effects blocks. Update component specs in `{BRAND_PATH}/patterns/components/` and identity chunks if visual identity evolved.
93
93
 
94
94
  **Personality** — update `{BRAND_PATH}/strategy/archetype.md` and `positioning.md`. Update `brand-platform.md` if values/promise shifted.
95
95
 
96
- Preserve chunk format per `references/chunk-format.md`. Update INDEX.md files if chunks were added.
96
+ Preserve chunk format per `chunk-format.md`. Update INDEX.md files if chunks were added.
97
97
 
98
98
  ## Step 4: Summary
99
99
 
@@ -0,0 +1,79 @@
1
+ # Chunk Format Reference
2
+
3
+ Standard format for all GSP phase output files. Chunks are the primary output — agents write chunks directly, not monoliths.
4
+
5
+ ## File Format
6
+
7
+ Every chunk follows this structure:
8
+
9
+ # {Section/Component/Screen Name}
10
+
11
+ > Phase: {phase} | Brand/Project: {name} | Generated: {DATE}
12
+
13
+ ---
14
+
15
+ {Content for this chunk}
16
+
17
+ ---
18
+
19
+ ## Related
20
+
21
+ - [{Related chunk name}]({relative-path-to-related-chunk})
22
+
23
+ ## Naming Conventions
24
+
25
+ - **Singular, kebab-case, lowercase:** "Buttons" → `button.md`, "Date Picker" → `date-picker.md`
26
+ - **Screen files:** `screen-{NN}-{kebab-case-name}.md` (e.g., `screen-01-home.md`)
27
+
28
+ ## INDEX.md Format
29
+
30
+ Each phase directory gets an INDEX.md manifest:
31
+
32
+ # {Phase Name}
33
+ > Phase: {phase} | Brand/Project: {name} | Generated: {DATE}
34
+
35
+ | Chunk | File | ~Lines |
36
+ |-------|------|--------|
37
+ | {Section} | [{filename}](./{filename}) | ~{N} |
38
+
39
+ Lightweight — just a lookup table. No prose.
40
+
41
+ ## Rules
42
+
43
+ - **Chunks are primary output** — agents write chunks directly to the phase directory
44
+ - **No monoliths** — do not write a single large file then re-chunk it
45
+ - **Size target:** 50-200 lines per chunk
46
+ - **Self-contained:** each chunk must be understandable without loading other chunks
47
+ - **Cross-references:** `## Related` section uses relative paths to related chunks
48
+ - **Idempotent:** re-running a phase regenerates all chunks in that phase directory
49
+
50
+ ## Output Budgets
51
+
52
+ Context is finite. Every line in a chunk is consumed by downstream agents. Budget accordingly.
53
+
54
+ ### Per-chunk budgets
55
+
56
+ | Chunk type | Target | Hard max | Notes |
57
+ |-----------|--------|----------|-------|
58
+ | Phase chunk (design, research, etc.) | 50-150 lines | 200 lines | Self-contained, one concept per chunk |
59
+ | INDEX.md | 10-30 lines | 50 lines | Lookup table only, no prose |
60
+ | BUILD-LOG.md | 50-100 lines | 150 lines | Summary + tables, not narrative |
61
+ | Component spec | 30-80 lines | 120 lines | Props, states, behavior — not full implementation |
62
+ | Screen spec | 80-150 lines | 200 lines | Layout, components, interactions, states |
63
+
64
+ ### Per-phase budgets (total across all chunks)
65
+
66
+ | Phase | Target total | Hard max | Typical chunks |
67
+ |-------|-------------|----------|----------------|
68
+ | Brief | 100-200 lines | 300 lines | 2-4 |
69
+ | Research | 200-400 lines | 600 lines | 5-8 |
70
+ | Design | 300-600 lines | 800 lines | 6-12 |
71
+ | Critique | 100-200 lines | 300 lines | 2-4 |
72
+ | Build log | 50-100 lines | 150 lines | 1 |
73
+ | Review | 100-200 lines | 300 lines | 2-4 |
74
+
75
+ ### Terminal output (inline skills)
76
+
77
+ - **Diagnostic** (doctor, progress): uncapped — user needs to see it, does not persist in agent context
78
+ - **Greeting/status** (start): 20-40 lines
79
+ - **Phase transitions**: 10-20 lines
@@ -0,0 +1,73 @@
1
+ ---
2
+ name: gsp-color
3
+ description: "Design color systems — palettes, contrast, semantic mapping, dark mode"
4
+ user-invocable: true
5
+ model: sonnet
6
+ allowed-tools:
7
+ - Read
8
+ - Write
9
+ - AskUserQuestion
10
+ - Glob
11
+ - Grep
12
+ - WebFetch
13
+ ---
14
+ <context>
15
+ You are a GSP color director. You build complete color systems — palette generation, OKLCH scales, WCAG contrast validation, semantic mapping, and dark mode.
16
+
17
+ This is a standalone composable skill. It works two ways:
18
+ 1. **Standalone** — user runs `/gsp-color` directly for palette exploration, contrast checking, or full system design
19
+ 2. **As a building block** — the creative-director invokes `/gsp-color --enrich` to add technical precision to creative color choices
20
+ </context>
21
+
22
+ <objective>
23
+ Build production-ready color palettes or full color systems from brand colors or user input.
24
+
25
+ **Input:** Hex colors, `--preview`, `--enrich`, or interactive
26
+ **Output:** `color-system.md` chunk + `palettes.json` (OKLCH scales)
27
+ **Agent:** None — inline skill, deterministic palette generation + contrast math
28
+ </objective>
29
+
30
+ <execution_context>
31
+ @${CLAUDE_SKILL_DIR}/chunk-format.md
32
+ </execution_context>
33
+
34
+ <rules>
35
+ - Always use `AskUserQuestion` for user interaction — never prompt via plain text
36
+ - One decision per question — never batch multiple questions in a single message
37
+ - Every palette gets the full 11-stop OKLCH scale: 50, 100, 200, 300, 400, 500, 600, 700, 800, 900, 950
38
+ - Color names must be semantic (primary, secondary, accent, neutral) not literal (red, blue)
39
+ - All foreground/background pairs must report WCAG AA contrast ratios
40
+ - Dark mode mapping must maintain equivalent contrast relationships
41
+ - Foundation chunks follow chunk-format.md format exactly
42
+ </rules>
43
+
44
+ <process>
45
+ ## Step 0: Parse mode
46
+
47
+ | Input | Mode | Domain |
48
+ |-------|------|--------|
49
+ | `/gsp-color #hex [#hex...] --preview` | Preview scales | palette |
50
+ | `/gsp-color #hex [#hex...]` | Generate from hex | palette |
51
+ | `/gsp-color --enrich` | Enrich existing system | system |
52
+ | `/gsp-color` | Interactive full system | system |
53
+
54
+ ## Step 1: Load domain
55
+
56
+ Read the domain file for the detected mode:
57
+ - **palette** mode → Read `${CLAUDE_SKILL_DIR}/domains/palette.md`
58
+ - **system** mode → Read `${CLAUDE_SKILL_DIR}/domains/system.md`
59
+
60
+ For system mode, also read `${CLAUDE_SKILL_DIR}/references/color-composition.md`.
61
+
62
+ ## Step 2: Execute domain framework
63
+
64
+ Follow the loaded domain file's complete workflow — it contains all generation logic, API calls, output formats, and completion steps.
65
+
66
+ ## Step 3: Write output
67
+
68
+ Write `color-system.md` + `palettes.json` to the resolved output path (skip if `--preview`).
69
+
70
+ ## Step 4: Summary
71
+
72
+ Display result summary and offer next steps per the domain file's completion section.
73
+ </process>
@@ -0,0 +1,79 @@
1
+ # Chunk Format Reference
2
+
3
+ Standard format for all GSP phase output files. Chunks are the primary output — agents write chunks directly, not monoliths.
4
+
5
+ ## File Format
6
+
7
+ Every chunk follows this structure:
8
+
9
+ # {Section/Component/Screen Name}
10
+
11
+ > Phase: {phase} | Brand/Project: {name} | Generated: {DATE}
12
+
13
+ ---
14
+
15
+ {Content for this chunk}
16
+
17
+ ---
18
+
19
+ ## Related
20
+
21
+ - [{Related chunk name}]({relative-path-to-related-chunk})
22
+
23
+ ## Naming Conventions
24
+
25
+ - **Singular, kebab-case, lowercase:** "Buttons" → `button.md`, "Date Picker" → `date-picker.md`
26
+ - **Screen files:** `screen-{NN}-{kebab-case-name}.md` (e.g., `screen-01-home.md`)
27
+
28
+ ## INDEX.md Format
29
+
30
+ Each phase directory gets an INDEX.md manifest:
31
+
32
+ # {Phase Name}
33
+ > Phase: {phase} | Brand/Project: {name} | Generated: {DATE}
34
+
35
+ | Chunk | File | ~Lines |
36
+ |-------|------|--------|
37
+ | {Section} | [{filename}](./{filename}) | ~{N} |
38
+
39
+ Lightweight — just a lookup table. No prose.
40
+
41
+ ## Rules
42
+
43
+ - **Chunks are primary output** — agents write chunks directly to the phase directory
44
+ - **No monoliths** — do not write a single large file then re-chunk it
45
+ - **Size target:** 50-200 lines per chunk
46
+ - **Self-contained:** each chunk must be understandable without loading other chunks
47
+ - **Cross-references:** `## Related` section uses relative paths to related chunks
48
+ - **Idempotent:** re-running a phase regenerates all chunks in that phase directory
49
+
50
+ ## Output Budgets
51
+
52
+ Context is finite. Every line in a chunk is consumed by downstream agents. Budget accordingly.
53
+
54
+ ### Per-chunk budgets
55
+
56
+ | Chunk type | Target | Hard max | Notes |
57
+ |-----------|--------|----------|-------|
58
+ | Phase chunk (design, research, etc.) | 50-150 lines | 200 lines | Self-contained, one concept per chunk |
59
+ | INDEX.md | 10-30 lines | 50 lines | Lookup table only, no prose |
60
+ | BUILD-LOG.md | 50-100 lines | 150 lines | Summary + tables, not narrative |
61
+ | Component spec | 30-80 lines | 120 lines | Props, states, behavior — not full implementation |
62
+ | Screen spec | 80-150 lines | 200 lines | Layout, components, interactions, states |
63
+
64
+ ### Per-phase budgets (total across all chunks)
65
+
66
+ | Phase | Target total | Hard max | Typical chunks |
67
+ |-------|-------------|----------|----------------|
68
+ | Brief | 100-200 lines | 300 lines | 2-4 |
69
+ | Research | 200-400 lines | 600 lines | 5-8 |
70
+ | Design | 300-600 lines | 800 lines | 6-12 |
71
+ | Critique | 100-200 lines | 300 lines | 2-4 |
72
+ | Build log | 50-100 lines | 150 lines | 1 |
73
+ | Review | 100-200 lines | 300 lines | 2-4 |
74
+
75
+ ### Terminal output (inline skills)
76
+
77
+ - **Diagnostic** (doctor, progress): uncapped — user needs to see it, does not persist in agent context
78
+ - **Greeting/status** (start): 20-40 lines
79
+ - **Phase transitions**: 10-20 lines