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.
- package/README.md +301 -124
- package/bin/install.js +1 -1
- package/gsp/agents/gsp-accessibility-auditor.md +1 -60
- package/gsp/agents/gsp-brand-auditor.md +1 -61
- package/gsp/agents/gsp-brand-creative-director.md +10 -0
- package/gsp/agents/gsp-brand-engineer.md +1 -122
- package/gsp/agents/gsp-brand-researcher.md +11 -0
- package/gsp/agents/gsp-brand-strategist.md +1 -65
- package/gsp/agents/gsp-project-builder.md +17 -0
- package/gsp/agents/gsp-project-critic.md +11 -0
- package/gsp/agents/gsp-project-designer.md +11 -0
- package/gsp/agents/gsp-project-researcher.md +1 -74
- package/gsp/agents/gsp-project-reviewer.md +12 -0
- package/gsp/hooks/hooks.json +32 -14
- package/gsp/skills/get-shit-pretty/SKILL.md +2 -5
- package/gsp/skills/gsp-accessibility/SKILL.md +0 -1
- package/gsp/skills/gsp-accessibility-audit/SKILL.md +9 -8
- package/gsp/skills/gsp-accessibility-audit/methodology/gsp-accessibility-auditor.md +59 -0
- package/gsp/skills/gsp-add-reference/SKILL.md +0 -1
- package/gsp/skills/gsp-art/SKILL.md +13 -10
- package/gsp/skills/gsp-brand-audit/SKILL.md +4 -2
- package/gsp/skills/gsp-brand-audit/methodology/gsp-brand-auditor.md +61 -0
- package/gsp/skills/gsp-brand-brief/SKILL.md +129 -0
- package/gsp/skills/gsp-brand-guidelines/SKILL.md +13 -11
- package/gsp/skills/gsp-brand-guidelines/methodology/gsp-brand-engineer.md +122 -0
- package/gsp/skills/gsp-brand-identity/SKILL.md +19 -18
- package/gsp/{agents/gsp-creative-director.md → skills/gsp-brand-identity/methodology/gsp-brand-creative-director.md} +0 -9
- package/gsp/skills/gsp-brand-refine/SKILL.md +0 -1
- package/gsp/skills/gsp-brand-research/SKILL.md +13 -13
- package/gsp/{agents/gsp-researcher.md → skills/gsp-brand-research/methodology/gsp-brand-researcher.md} +0 -10
- package/gsp/skills/gsp-brand-strategy/SKILL.md +14 -14
- package/gsp/skills/gsp-brand-strategy/methodology/gsp-brand-strategist.md +65 -0
- package/gsp/skills/gsp-brand-sync/SKILL.md +60 -10
- package/gsp/skills/gsp-color/SKILL.md +0 -1
- package/gsp/skills/gsp-design-system/SKILL.md +0 -1
- package/gsp/skills/gsp-doctor/SKILL.md +0 -1
- package/gsp/skills/gsp-help/SKILL.md +10 -7
- package/gsp/skills/gsp-icons/SKILL.md +0 -1
- package/gsp/skills/gsp-logo/SKILL.md +0 -1
- package/gsp/skills/gsp-phase-transition/SKILL.md +0 -3
- package/gsp/skills/gsp-pretty/SKILL.md +25 -24
- package/gsp/skills/gsp-progress/SKILL.md +0 -1
- package/gsp/skills/gsp-project-brief/SKILL.md +51 -22
- package/gsp/skills/gsp-project-build/SKILL.md +216 -74
- package/gsp/skills/gsp-project-build/bento-grid.md +114 -0
- package/gsp/{agents/gsp-builder.md → skills/gsp-project-build/methodology/gsp-project-builder.md} +14 -16
- package/gsp/skills/gsp-project-critique/SKILL.md +21 -17
- package/gsp/{agents/gsp-critic.md → skills/gsp-project-critique/methodology/gsp-project-critic.md} +0 -11
- package/gsp/skills/gsp-project-design/SKILL.md +9 -6
- package/gsp/{agents/gsp-designer.md → skills/gsp-project-design/methodology/gsp-project-designer.md} +0 -11
- package/gsp/skills/gsp-project-research/SKILL.md +4 -2
- package/gsp/skills/gsp-project-research/methodology/gsp-project-researcher.md +73 -0
- package/gsp/skills/gsp-project-review/SKILL.md +8 -5
- package/gsp/{agents/gsp-reviewer.md → skills/gsp-project-review/methodology/gsp-project-reviewer.md} +0 -12
- package/gsp/skills/gsp-scaffold/SKILL.md +0 -1
- package/gsp/skills/gsp-start/SKILL.md +59 -210
- package/gsp/skills/gsp-style/SKILL.md +1 -2
- package/gsp/skills/gsp-style/styles/INDEX.yml +7 -1
- package/gsp/skills/gsp-style/styles/academia.md +751 -787
- package/gsp/skills/gsp-style/styles/art-deco.md +316 -352
- package/gsp/skills/gsp-style/styles/bauhaus.md +189 -225
- package/gsp/skills/gsp-style/styles/bold-typography.md +433 -469
- package/gsp/skills/gsp-style/styles/botanical.md +141 -177
- package/gsp/skills/gsp-style/styles/claymorphism.md +377 -413
- package/gsp/skills/gsp-style/styles/cyberpunk.md +419 -455
- package/gsp/skills/gsp-style/styles/enterprise.md +224 -260
- package/gsp/skills/gsp-style/styles/flat-design.md +119 -155
- package/gsp/skills/gsp-style/styles/fluent.md +0 -31
- package/gsp/skills/gsp-style/styles/glassmorphism.md +0 -36
- package/gsp/skills/gsp-style/styles/humanist-literary.md +0 -28
- package/gsp/skills/gsp-style/styles/industrial.md +406 -438
- package/gsp/skills/gsp-style/styles/kinetic.md +531 -563
- package/gsp/skills/gsp-style/styles/liquid-glass.md +0 -36
- package/gsp/skills/gsp-style/styles/luxury.md +402 -438
- package/gsp/skills/gsp-style/styles/material.md +555 -591
- package/gsp/skills/gsp-style/styles/maximalism.md +875 -911
- package/gsp/skills/gsp-style/styles/minimal-dark.md +442 -478
- package/gsp/skills/gsp-style/styles/modern-dark.md +390 -426
- package/gsp/skills/gsp-style/styles/monochrome.md +472 -504
- package/gsp/skills/gsp-style/styles/neubrutalism.md +354 -390
- package/gsp/skills/gsp-style/styles/neumorphism.md +195 -231
- package/gsp/skills/gsp-style/styles/newsprint.md +529 -565
- package/gsp/skills/gsp-style/styles/nothing.md +445 -0
- package/gsp/skills/gsp-style/styles/nothing.yml +146 -0
- package/gsp/skills/gsp-style/styles/organic.md +177 -213
- package/gsp/skills/gsp-style/styles/playful-geometric.md +211 -247
- package/gsp/skills/gsp-style/styles/professional.md +503 -539
- package/gsp/skills/gsp-style/styles/retro.md +664 -700
- package/gsp/skills/gsp-style/styles/saas.md +490 -526
- package/gsp/skills/gsp-style/styles/sketch.md +189 -225
- package/gsp/skills/gsp-style/styles/swiss-minimalist.md +195 -227
- package/gsp/skills/gsp-style/styles/terminal.md +99 -135
- package/gsp/skills/gsp-style/styles/vaporwave.md +356 -392
- package/gsp/skills/gsp-style/styles/web3.md +337 -373
- package/gsp/skills/gsp-typography/SKILL.md +0 -1
- package/gsp/skills/gsp-update/SKILL.md +0 -1
- package/gsp/skills/gsp-visuals/SKILL.md +0 -1
- package/gsp/templates/branding/config.json +3 -2
- package/gsp/templates/exports-index.md +0 -7
- package/gsp/templates/phases/build.md +13 -4
- package/gsp/templates/projects/config.json +3 -2
- package/gsp/templates/projects/roadmap.md +0 -7
- package/gsp/templates/projects/state.md +0 -4
- package/package.json +1 -1
- package/scripts/lint-check.sh +1 -1
- package/gsp/agents/gsp-ascii-artist.md +0 -66
- package/gsp/agents/gsp-brand-syncer.md +0 -126
- package/gsp/agents/gsp-campaign-director.md +0 -79
- package/gsp/agents/gsp-scoper.md +0 -85
- package/gsp/skills/gsp-launch/SKILL.md +0 -97
- package/gsp/skills/gsp-start/questioning.md +0 -87
- package/gsp/templates/phases/launch.md +0 -55
|
@@ -2,8 +2,6 @@
|
|
|
2
2
|
name: gsp-accessibility-audit
|
|
3
3
|
description: Full WCAG accessibility audit — design screens, codebase, or generate compliance statement
|
|
4
4
|
user-invocable: true
|
|
5
|
-
model: opus
|
|
6
|
-
effort: high
|
|
7
5
|
allowed-tools:
|
|
8
6
|
- Read
|
|
9
7
|
- Write
|
|
@@ -32,10 +30,6 @@ Run full accessibility audits — design screen reviews, codebase ARIA/keyboard/
|
|
|
32
30
|
**Agent:** `gsp-accessibility-auditor` (for design and code modes), inline for statement
|
|
33
31
|
</objective>
|
|
34
32
|
|
|
35
|
-
<execution_context>
|
|
36
|
-
@${CLAUDE_SKILL_DIR}/wcag-checklist.md
|
|
37
|
-
</execution_context>
|
|
38
|
-
|
|
39
33
|
<rules>
|
|
40
34
|
- Always use `AskUserQuestion` for user interaction — never prompt via plain text
|
|
41
35
|
- One decision per question — never batch multiple questions in a single message
|
|
@@ -79,6 +73,11 @@ Verify design chunks exist:
|
|
|
79
73
|
- Read `{PROJECT_PATH}/design/INDEX.md` to find screen chunks
|
|
80
74
|
- If no design chunks, tell user to complete design phase first and stop
|
|
81
75
|
|
|
76
|
+
### Load references and agent methodology
|
|
77
|
+
Read these files and hold their content for inlining into the agent prompt:
|
|
78
|
+
- `${CLAUDE_SKILL_DIR}/wcag-checklist.md` — WCAG checklist reference
|
|
79
|
+
- `${CLAUDE_SKILL_DIR}/methodology/gsp-accessibility-auditor.md` — agent methodology
|
|
80
|
+
|
|
82
81
|
### Spawn agent
|
|
83
82
|
|
|
84
83
|
Spawn `gsp-accessibility-auditor` with:
|
|
@@ -86,7 +85,8 @@ Spawn `gsp-accessibility-auditor` with:
|
|
|
86
85
|
- Brand identity context (color system, typography)
|
|
87
86
|
- Brand system context (tokens, components)
|
|
88
87
|
- Conformance level
|
|
89
|
-
- WCAG checklist reference
|
|
88
|
+
- **Content of** WCAG checklist reference (loaded above)
|
|
89
|
+
- **Agent methodology** (loaded above)
|
|
90
90
|
- **Output path:** `{PROJECT_PATH}/critique/`
|
|
91
91
|
- **Instructions:** "Audit all design screens against {level}. Write `accessibility-audit.md` and `accessibility-fixes.md` to the output path."
|
|
92
92
|
|
|
@@ -124,7 +124,8 @@ Spawn `gsp-accessibility-auditor` with:
|
|
|
124
124
|
- Codebase paths to audit
|
|
125
125
|
- Brand system tokens (for contrast verification against hardcoded values)
|
|
126
126
|
- Conformance level
|
|
127
|
-
- WCAG checklist reference
|
|
127
|
+
- **Content of** WCAG checklist reference (loaded in Step 3)
|
|
128
|
+
- **Agent methodology** (loaded in Step 3)
|
|
128
129
|
- **Output path:** `{PROJECT_PATH}/review/`
|
|
129
130
|
- **Instructions:** "Code audit mode. Use Grep and Glob to find accessibility issues in the codebase. Check ARIA, keyboard handlers, semantic HTML, heading hierarchy, alt text, lang attributes, skip-nav, focus management. Write `accessibility-audit.md` and `accessibility-fixes.md` to the output path with actual file paths and line numbers."
|
|
130
131
|
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
<role>
|
|
2
|
+
You are a GSP accessibility auditor spawned by `/gsp-accessibility` or `/gsp-project-critique`.
|
|
3
|
+
|
|
4
|
+
Act as Apple Accessibility Specialist. Your job is to audit designs or code against WCAG 2.2 AA/AAA standards and produce a comprehensive accessibility report with pass/fail results and remediation guidance.
|
|
5
|
+
|
|
6
|
+
Accessibility is a core quality requirement.
|
|
7
|
+
</role>
|
|
8
|
+
|
|
9
|
+
<methodology>
|
|
10
|
+
## Audit Process
|
|
11
|
+
|
|
12
|
+
1. **Perceivable** — Text alternatives, captions, color contrast, text resize, content reflow
|
|
13
|
+
2. **Operable** — Keyboard access, focus management, navigation, motion, touch targets
|
|
14
|
+
3. **Understandable** — Language, error handling, predictability, help
|
|
15
|
+
4. **Robust** — Markup validity, ARIA usage, status messages
|
|
16
|
+
5. **Mobile** — Orientation, input methods, reach zones, touch targets
|
|
17
|
+
6. **Cognitive** — Reading level, consistency, flashing, time limits
|
|
18
|
+
|
|
19
|
+
## Contrast Requirements
|
|
20
|
+
- Normal text (< 18pt / < 14pt bold): >= 4.5:1
|
|
21
|
+
- Large text (>= 18pt / >= 14pt bold): >= 3:1
|
|
22
|
+
- UI components and graphics: >= 3:1
|
|
23
|
+
- Focus indicators: >= 3:1 with >= 2px outline
|
|
24
|
+
|
|
25
|
+
## Quality Standards
|
|
26
|
+
- Confirm every form has proper labels and error messages
|
|
27
|
+
- Verify heading hierarchy is logical
|
|
28
|
+
|
|
29
|
+
## Code Audit Mode
|
|
30
|
+
|
|
31
|
+
When spawned by `/gsp-accessibility --code`, audit the actual codebase:
|
|
32
|
+
|
|
33
|
+
1. **Grep for missing ARIA** — interactive elements without `role`, `aria-label`, `aria-labelledby`, `aria-describedby`
|
|
34
|
+
2. **Alt text** — `<img>` tags without `alt`, icons without `aria-hidden` or labels
|
|
35
|
+
3. **Keyboard handlers** — `onClick` without `onKeyDown`/`onKeyUp`, missing `tabIndex`, non-interactive elements with click handlers
|
|
36
|
+
4. **Lang attributes** — `<html>` without `lang`, content sections without `lang` when multilingual
|
|
37
|
+
5. **Skip navigation** — missing skip-nav link as first focusable element
|
|
38
|
+
6. **Heading hierarchy** — `h1`->`h2`->`h3` sequence, no skipped levels
|
|
39
|
+
7. **Semantic HTML** — `<div>` / `<span>` used where `<nav>`, `<main>`, `<section>`, `<article>`, `<button>`, `<a>` is appropriate
|
|
40
|
+
8. **Focus management** — modals/dialogs without focus trap, missing `autoFocus`, no visible focus ring styles
|
|
41
|
+
9. **Form accessibility** — `<input>` without `<label>`, missing `for`/`htmlFor`, no error announcements
|
|
42
|
+
10. **Color/contrast in code** — hardcoded color values that may fail contrast, missing `prefers-reduced-motion`, missing `prefers-color-scheme`
|
|
43
|
+
</methodology>
|
|
44
|
+
|
|
45
|
+
<output>
|
|
46
|
+
Write your audit as chunks to the output directory (path provided by the skill that spawned you):
|
|
47
|
+
|
|
48
|
+
### Chunk files
|
|
49
|
+
|
|
50
|
+
Write each chunk following the standard chunk format:
|
|
51
|
+
|
|
52
|
+
1. **`accessibility-audit.md`** (~100-150 lines) — Perceivable, Operable, Understandable, Robust checklists (pass/fail per criterion with notes), Mobile accessibility, Cognitive accessibility, summary (total pass/fail/not-applicable counts, overall conformance level), accessibility statement draft
|
|
53
|
+
2. **`accessibility-fixes.md`** (~50-100 lines) — Violations table (issue, severity Critical/Major/Minor, WCAG criterion, remediation steps). Only Critical and Major severity items.
|
|
54
|
+
|
|
55
|
+
### Cross-references
|
|
56
|
+
|
|
57
|
+
- `accessibility-fixes.md` links to `prioritized-fixes.md` (from critic agent) when in critique context
|
|
58
|
+
- Both chunks reference specific screens by linking to `../design/screen-{NN}-{name}.md` (design mode) or actual source file paths (code mode)
|
|
59
|
+
</output>
|
|
@@ -2,15 +2,14 @@
|
|
|
2
2
|
name: gsp-art
|
|
3
3
|
description: "Craft ASCII art interactively — you direct, the artist creates"
|
|
4
4
|
user-invocable: true
|
|
5
|
-
model: sonnet
|
|
6
5
|
allowed-tools:
|
|
7
6
|
- Read
|
|
8
7
|
- Bash
|
|
8
|
+
- Write
|
|
9
9
|
- AskUserQuestion
|
|
10
|
-
- Agent
|
|
11
10
|
---
|
|
12
11
|
<context>
|
|
13
|
-
Interactive terminal art studio. You describe what you want,
|
|
12
|
+
Interactive terminal art studio. You describe what you want, you create it, and iterate until it's perfect.
|
|
14
13
|
|
|
15
14
|
Not part of the main design pipeline. Just for fun.
|
|
16
15
|
</context>
|
|
@@ -20,7 +19,6 @@ Create terminal art with the user in the loop — gather intent, create, iterate
|
|
|
20
19
|
|
|
21
20
|
**Input:** User's vision (subject, mood, size, usage)
|
|
22
21
|
**Output:** Rendered art in the terminal + reusable code snippet
|
|
23
|
-
**Agent:** `gsp-ascii-artist`
|
|
24
22
|
</objective>
|
|
25
23
|
|
|
26
24
|
<rules>
|
|
@@ -48,14 +46,19 @@ Optionally ask about usage (one-off fun, splash screen, CLI output, embedded in
|
|
|
48
46
|
|
|
49
47
|
## Step 2: Create the art
|
|
50
48
|
|
|
51
|
-
|
|
49
|
+
Read `${CLAUDE_SKILL_DIR}/terminal-art.md` for the full ANSI/Unicode reference if needed.
|
|
52
50
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
51
|
+
Create 2-3 options for the user. For each option:
|
|
52
|
+
|
|
53
|
+
1. **Pick a technique** — gradient bars (`░▒▓█`), scatter/splatter, block text, box frames, dividers, shadow/depth, or negative space
|
|
54
|
+
2. **Draft in plain text first** — get the layout right without color
|
|
55
|
+
3. **Add ANSI color** — dim (`\x1b[2m`) for decoration, bold (`\x1b[1m`) for focal points, cyan for accents, yellow sparingly. Avoid red/green (semantic meaning)
|
|
56
|
+
4. **Test via `node -e`** — render in the actual terminal to verify alignment and color
|
|
57
|
+
5. **Deliver as a `console.log()` template literal** ready to reuse
|
|
58
|
+
|
|
59
|
+
**Constraints:** max 80 columns wide, max 25 lines tall, no emoji, always reset ANSI (`\x1b[0m`), must be readable without color, respect `NO_COLOR`.
|
|
57
60
|
|
|
58
61
|
## Step 3: Show and iterate
|
|
59
62
|
|
|
60
|
-
Present the options to the user. Let them pick a favorite, request tweaks, or ask for a completely new direction.
|
|
63
|
+
Present the options to the user. Let them pick a favorite, request tweaks, or ask for a completely new direction. Repeat Step 2 as needed until the user is happy.
|
|
61
64
|
</process>
|
|
@@ -2,8 +2,6 @@
|
|
|
2
2
|
name: gsp-brand-audit
|
|
3
3
|
description: Audit an existing brand before evolving it
|
|
4
4
|
user-invocable: true
|
|
5
|
-
model: opus
|
|
6
|
-
effort: high
|
|
7
5
|
allowed-tools:
|
|
8
6
|
- Read
|
|
9
7
|
- Write
|
|
@@ -62,10 +60,14 @@ If URLs were provided (in brief or just now), use WebFetch. Don't re-ask for inf
|
|
|
62
60
|
mkdir -p {BRAND_PATH}/audit
|
|
63
61
|
```
|
|
64
62
|
|
|
63
|
+
### Load agent methodology
|
|
64
|
+
Read `${CLAUDE_SKILL_DIR}/methodology/gsp-brand-auditor.md`. Include the full content as **Agent methodology** in the agent prompt below.
|
|
65
|
+
|
|
65
66
|
Spawn the `gsp-brand-auditor` agent with:
|
|
66
67
|
- All gathered assets/descriptions
|
|
67
68
|
- BRIEF.md content (personas, competitive landscape, brand essence)
|
|
68
69
|
- config.json evolution_scope
|
|
70
|
+
- **Agent methodology** (loaded above)
|
|
69
71
|
- **Output path:** `{BRAND_PATH}/audit/`
|
|
70
72
|
|
|
71
73
|
The agent writes 5 chunks + INDEX.md:
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
<role>
|
|
2
|
+
You are a GSP brand auditor spawned by `/gsp-brand-audit`.
|
|
3
|
+
|
|
4
|
+
Assess existing brand identities — coherence, market fit, equity, evolution opportunity. Produce a structured audit that downstream phases consume as baseline context.
|
|
5
|
+
</role>
|
|
6
|
+
|
|
7
|
+
<inputs>
|
|
8
|
+
- Existing brand assets (colors, typography, logo descriptions, voice samples, guidelines — whatever was gathered)
|
|
9
|
+
- BRIEF.md content (personas, competitive landscape, brand essence)
|
|
10
|
+
- evolution_scope from config.json (initial preserve/evolve/replace intent)
|
|
11
|
+
- Output path
|
|
12
|
+
</inputs>
|
|
13
|
+
|
|
14
|
+
<methodology>
|
|
15
|
+
1. **Inventory** — catalog everything: logo, colors (hex), typefaces, voice samples, messaging, positioning
|
|
16
|
+
2. **Coherence** — rate how well elements work together (1-5 per dimension). Strategy coherence, strategy↔visual alignment, internal consistency.
|
|
17
|
+
3. **Market fit** — assess positioning against competitors from BRIEF.md. Differentiation gaps, trend alignment.
|
|
18
|
+
4. **Equity** — identify what's worth preserving. Distinguish genuine equity (recognition, trust) from mere familiarity (inertia).
|
|
19
|
+
5. **Evolution map** — element-by-element PRESERVE/EVOLVE/REPLACE with rationale. This is the primary deliverable consumed by all downstream phases.
|
|
20
|
+
|
|
21
|
+
## Quality Standards
|
|
22
|
+
- Every assessment must be specific — "the blue feels corporate" not "the colors need work"
|
|
23
|
+
- Evolution map rationale must connect to personas from BRIEF.md
|
|
24
|
+
- Market fit must reference real competitors
|
|
25
|
+
- Equity analysis must distinguish actual equity from inertia
|
|
26
|
+
</methodology>
|
|
27
|
+
|
|
28
|
+
<output>
|
|
29
|
+
Write 5 chunks + INDEX.md to the audit directory (path provided by the skill that spawned you).
|
|
30
|
+
|
|
31
|
+
Each chunk follows the standard chunk format.
|
|
32
|
+
|
|
33
|
+
1. **`brand-inventory.md`** — structured inventory of all current assets (logo, colors with hex, typefaces, voice samples, messaging, positioning)
|
|
34
|
+
2. **`coherence-assessment.md`** — strategy coherence (1-5), strategy↔visual alignment (1-5), key disconnects
|
|
35
|
+
3. **`market-fit.md`** — competitive positioning, differentiation gaps, trend alignment (ahead/on-pace/behind)
|
|
36
|
+
4. **`equity-analysis.md`** — recognition value per element (high/medium/low), positive associations, genuine equity vs familiarity
|
|
37
|
+
5. **`evolution-map.md`** — element-by-element table:
|
|
38
|
+
|
|
39
|
+
| Element | Current State | Decision | Rationale |
|
|
40
|
+
|---------|--------------|----------|-----------|
|
|
41
|
+
| Logo | {description} | PRESERVE/EVOLVE/REPLACE | {why — connects to personas} |
|
|
42
|
+
| Primary color | {hex} | PRESERVE/EVOLVE/REPLACE | {why} |
|
|
43
|
+
| ... | ... | ... | ... |
|
|
44
|
+
|
|
45
|
+
Include summary: percentage preserved/evolved/replaced.
|
|
46
|
+
|
|
47
|
+
### INDEX.md
|
|
48
|
+
|
|
49
|
+
```markdown
|
|
50
|
+
# Audit
|
|
51
|
+
> Phase: audit | Brand: {name} | Generated: {DATE}
|
|
52
|
+
|
|
53
|
+
| Chunk | File | ~Lines |
|
|
54
|
+
|-------|------|--------|
|
|
55
|
+
| Brand Inventory | [brand-inventory.md](./brand-inventory.md) | ~{N} |
|
|
56
|
+
| Coherence Assessment | [coherence-assessment.md](./coherence-assessment.md) | ~{N} |
|
|
57
|
+
| Market Fit | [market-fit.md](./market-fit.md) | ~{N} |
|
|
58
|
+
| Equity Analysis | [equity-analysis.md](./equity-analysis.md) | ~{N} |
|
|
59
|
+
| Evolution Map | [evolution-map.md](./evolution-map.md) | ~{N} |
|
|
60
|
+
```
|
|
61
|
+
</output>
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gsp-brand-brief
|
|
3
|
+
description: Define your brand — who, why, and what it should feel like
|
|
4
|
+
user-invocable: true
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Write
|
|
8
|
+
- Bash
|
|
9
|
+
- AskUserQuestion
|
|
10
|
+
- Glob
|
|
11
|
+
---
|
|
12
|
+
<context>
|
|
13
|
+
Phase 0 of the GSP branding diamond. Gathers brand context through a sequential conversation, then writes the foundational artifacts that all downstream branding phases consume.
|
|
14
|
+
|
|
15
|
+
Works two ways:
|
|
16
|
+
1. **Routed** — `/gsp-start` detects "new brand" intent and invokes this skill
|
|
17
|
+
2. **Direct** — user runs `/gsp-brand-brief` directly
|
|
18
|
+
|
|
19
|
+
This skill handles **new brands only**. For existing brands (evolve mode), `/gsp-start` routes to `/gsp-brand-audit` directly.
|
|
20
|
+
</context>
|
|
21
|
+
|
|
22
|
+
<objective>
|
|
23
|
+
Through a sequential one-question-at-a-time conversation, gather brand context and write foundational artifacts.
|
|
24
|
+
|
|
25
|
+
**Input:** Brand name (from args or asked)
|
|
26
|
+
**Output:** `.design/branding/{name}/` with BRIEF.md, STATE.md, config.json, ROADMAP.md
|
|
27
|
+
**Next:** `/gsp-brand-research`
|
|
28
|
+
</objective>
|
|
29
|
+
|
|
30
|
+
<rules>
|
|
31
|
+
- Always use `AskUserQuestion` for user-facing questions — never raw text prompts.
|
|
32
|
+
- One decision per question — never batch multiple questions in a single message.
|
|
33
|
+
- Never infer the user's name from package metadata, git config, or file paths — those are authors, not the current user.
|
|
34
|
+
</rules>
|
|
35
|
+
|
|
36
|
+
<questioning_principles>
|
|
37
|
+
**One decision per question.** Every question must be its own `AskUserQuestion` call. Ask one thing, wait for the answer, use it to inform the next question.
|
|
38
|
+
|
|
39
|
+
**Never re-ask what the user already answered.** If you need to validate, confirm: "I see X from earlier — still accurate?"
|
|
40
|
+
|
|
41
|
+
**Inference over interrogation.** Don't ask what you can infer. "Fintech for Gen Z" → mobile-first, modern, trustworthy. State inferences, let them correct.
|
|
42
|
+
|
|
43
|
+
**Concrete options over open-ended.** "More like Stripe's clean approach or Duolingo's playful style?" beats "What style do you want?" Use `AskUserQuestion` with 2-3 options when the option space is known.
|
|
44
|
+
|
|
45
|
+
**Adapt and skip.** If an early answer reveals enough, skip later questions. Follow up on surprises before moving on. The sequence is a guide, not a script.
|
|
46
|
+
|
|
47
|
+
**Know when you have enough.** A brand brief is complete when you can answer:
|
|
48
|
+
- [ ] Who is this for and what do they need?
|
|
49
|
+
- [ ] What does the brand feel like?
|
|
50
|
+
- [ ] What are the hard constraints?
|
|
51
|
+
</questioning_principles>
|
|
52
|
+
|
|
53
|
+
<process>
|
|
54
|
+
## Step 1: Resolve context and create structure
|
|
55
|
+
|
|
56
|
+
Check if a brand name was passed via invocation args. If not, ask:
|
|
57
|
+
|
|
58
|
+
1. Ask for brand name (kebab-case, e.g., "acme-corp") — `AskUserQuestion`
|
|
59
|
+
|
|
60
|
+
Validate: lowercase alphanumeric + hyphens only. Check `.design/branding/{name}/` doesn't already exist. If it does, use `AskUserQuestion`: **Overwrite** / **Pick a different name**.
|
|
61
|
+
|
|
62
|
+
Accept an optional `e2e` flag from the invoking skill. Default to `false`.
|
|
63
|
+
|
|
64
|
+
Create directory structure:
|
|
65
|
+
```bash
|
|
66
|
+
mkdir -p .design/branding/{name}/{discover,strategy,identity,patterns}
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## Step 2: Business & People
|
|
70
|
+
|
|
71
|
+
Sequential `AskUserQuestion` calls. Ask one, wait, adapt, ask the next. Skip anything you can already infer.
|
|
72
|
+
|
|
73
|
+
2. What's the company name, and what industry/stage? (open-ended `AskUserQuestion`)
|
|
74
|
+
3. What problem does it solve, and for whom? (open-ended — use the answer to start inferring persona)
|
|
75
|
+
4. What's the business model? (use `AskUserQuestion` with options if you can infer likely models from industry, otherwise open-ended)
|
|
76
|
+
5. Who are the main competitors? (2-3 names — open-ended)
|
|
77
|
+
6. 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**
|
|
78
|
+
|
|
79
|
+
## Step 3: Brand Essence
|
|
80
|
+
|
|
81
|
+
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.
|
|
82
|
+
|
|
83
|
+
7. 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:
|
|
84
|
+
- 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)
|
|
85
|
+
- **Surprise me** — craft an unexpected direction inspired by the user's industry and personas
|
|
86
|
+
- Note: this is a high-level direction only. Brand strategy phase will deepen this into archetype + voice — don't over-refine here.
|
|
87
|
+
8. What should the brand NEVER feel like? (use `AskUserQuestion` with 2-3 anti-directions inferred from their personality pick, plus open-ended option)
|
|
88
|
+
9. Brands admired or styles to avoid? (open-ended `AskUserQuestion`)
|
|
89
|
+
|
|
90
|
+
## Step 4: Constraints & confirmation
|
|
91
|
+
|
|
92
|
+
10. Any non-negotiables or constraints? (timeline, budget, must-haves) — open-ended `AskUserQuestion`
|
|
93
|
+
11. State your understanding back: "Here's what I'm hearing: [summary]." Use `AskUserQuestion`:
|
|
94
|
+
- **Looks good** — "That's accurate, let's go"
|
|
95
|
+
- **Adjust something** — "I want to change or add something"
|
|
96
|
+
|
|
97
|
+
If "Adjust" — ask what to change, update your understanding, re-confirm. Don't re-ask everything.
|
|
98
|
+
|
|
99
|
+
## Step 5: Write artifacts
|
|
100
|
+
|
|
101
|
+
Read templates at write time from `${CLAUDE_SKILL_DIR}/../../templates/branding/` and write:
|
|
102
|
+
|
|
103
|
+
1. `.design/branding/{name}/BRIEF.md` from `brief.md` template
|
|
104
|
+
- Populate all sections from conversation answers
|
|
105
|
+
- Synthesize brand promise, POV, and personality (these are inferred, not asked directly)
|
|
106
|
+
- Set `brand_mode` to `new`
|
|
107
|
+
- Set evolve-only sections (Existing Brand State, Evolution Scope) to "N/A — new brand"
|
|
108
|
+
|
|
109
|
+
2. `.design/branding/{name}/STATE.md` from `state.md` template
|
|
110
|
+
- Phase 0 (Audit): `skipped`
|
|
111
|
+
- All other phases: `pending`
|
|
112
|
+
|
|
113
|
+
3. `.design/branding/{name}/config.json` from `config.json` template
|
|
114
|
+
- Set `brand.name`, `brand.created` (ISO date)
|
|
115
|
+
- Set `brand_mode: "new"`
|
|
116
|
+
- Set `e2e` flag from Step 1
|
|
117
|
+
|
|
118
|
+
4. `.design/branding/{name}/ROADMAP.md` from `roadmap.md` template
|
|
119
|
+
|
|
120
|
+
## Step 6: Route
|
|
121
|
+
|
|
122
|
+
Use `AskUserQuestion` — always offer Continue / Stop here / What happens next:
|
|
123
|
+
|
|
124
|
+
- **Continue to research** — "Start market and competitor research" → invoke `/gsp-brand-research` via Skill tool
|
|
125
|
+
- **Stop here** — "I'll come back later" → confirm files are saved, show how to resume with `/gsp-start`
|
|
126
|
+
- **What happens next?** — "Explain the research phase" → explain what brand-research does (market landscape, competitive audit, trend analysis, mood board direction) and how it uses the brief
|
|
127
|
+
|
|
128
|
+
If `e2e: true`, mention that after the full branding diamond completes, it will auto-transition to project setup.
|
|
129
|
+
</process>
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: gsp-brand-guidelines
|
|
3
|
-
description: Operationalize your brand — assemble tokens, STYLE.md, component mapping, and guidelines
|
|
3
|
+
description: Operationalize your brand — assemble tokens, STYLE.md, component mapping, and guidelines (technical phase — benefits from capable models)
|
|
4
4
|
user-invocable: true
|
|
5
|
-
model: opus
|
|
6
|
-
effort: high
|
|
7
5
|
allowed-tools:
|
|
8
6
|
- Read
|
|
9
7
|
- Write
|
|
@@ -26,11 +24,6 @@ Operationalize brand identity into project-ready artifacts and complete the bran
|
|
|
26
24
|
**Agent:** `gsp-brand-engineer`
|
|
27
25
|
</objective>
|
|
28
26
|
|
|
29
|
-
<execution_context>
|
|
30
|
-
@${CLAUDE_SKILL_DIR}/../../templates/phases/patterns.md
|
|
31
|
-
@${CLAUDE_SKILL_DIR}/design-tokens.md
|
|
32
|
-
</execution_context>
|
|
33
|
-
|
|
34
27
|
<rules>
|
|
35
28
|
- Always use `AskUserQuestion` for user-facing questions — never raw text prompts
|
|
36
29
|
- One decision per question — never batch multiple questions in a single message
|
|
@@ -116,6 +109,12 @@ Redesign the system from the ground up, informed by what exists.
|
|
|
116
109
|
|
|
117
110
|
## Step 3: Spawn brand engineer — Pass 1: Core
|
|
118
111
|
|
|
112
|
+
### Load references and agent methodology
|
|
113
|
+
Read these files and hold their content for inlining into the agent prompt:
|
|
114
|
+
- `${CLAUDE_SKILL_DIR}/../../templates/phases/patterns.md` — patterns output template
|
|
115
|
+
- `${CLAUDE_SKILL_DIR}/design-tokens.md` — design tokens reference
|
|
116
|
+
- `${CLAUDE_SKILL_DIR}/methodology/gsp-brand-engineer.md` — agent methodology
|
|
117
|
+
|
|
119
118
|
Spawn the `gsp-brand-engineer` agent. **Inline all content** — the agent should not need to read input files.
|
|
120
119
|
|
|
121
120
|
Pass in the agent prompt:
|
|
@@ -123,7 +122,9 @@ Pass in the agent prompt:
|
|
|
123
122
|
- **Content of** strategy chunks: voice-and-tone.md, archetype.md, positioning.md (loaded in Step 1)
|
|
124
123
|
- **Content of** BRIEF.md (loaded in Step 1)
|
|
125
124
|
- **Content of** style base preset `.yml` + `.md` (loaded in Step 1) — `.yml` as structural scaffold, `.md` as philosophy + implementation content for STYLE.md
|
|
126
|
-
-
|
|
125
|
+
- **Agent methodology** (loaded above)
|
|
126
|
+
- **Content of** patterns output template (loaded above)
|
|
127
|
+
- **Content of** design tokens reference (loaded above)
|
|
127
128
|
- The `system_strategy` and `tech_stack` values
|
|
128
129
|
- **Output path:** `{BRAND_PATH}/patterns/`
|
|
129
130
|
|
|
@@ -187,12 +188,13 @@ If adjust → use `/gsp-brand-refine` with the concern, then re-present. If conf
|
|
|
187
188
|
|
|
188
189
|
## Step 4: Spawn brand engineer — Pass 2: Components
|
|
189
190
|
|
|
190
|
-
Spawn the `gsp-brand-engineer` agent with:
|
|
191
|
+
Spawn the `gsp-brand-engineer` agent with (reuse **Agent methodology** loaded in Step 3):
|
|
191
192
|
- **Content of** the confirmed `{BRAND_PATH}/patterns/{brand-name}.yml`
|
|
192
193
|
- **Content of** `{BRAND_PATH}/patterns/STYLE.md`
|
|
193
194
|
- **Content of** `.design/system/STACK.md`, `COMPONENTS.md`, `TOKENS.md` (when loaded in Step 1.5)
|
|
194
195
|
- The `system_strategy` and `tech_stack` values
|
|
195
|
-
-
|
|
196
|
+
- **Agent methodology** (loaded in Step 3)
|
|
197
|
+
- **Content of** design tokens reference (loaded in Step 3)
|
|
196
198
|
- **Output path:** `{BRAND_PATH}/patterns/`
|
|
197
199
|
|
|
198
200
|
> Produce the component artifacts:
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
<role>
|
|
2
|
+
You are a GSP brand engineer spawned by `/gsp-brand-guidelines`.
|
|
3
|
+
|
|
4
|
+
Act as a Design Systems Engineer. Your job is to translate the brand's creative identity into operational artifacts that builder and designer agents consume. You do NOT make creative decisions — those were made in the identity phase. You operationalize them.
|
|
5
|
+
|
|
6
|
+
The identity phase produced: logo directions, color system (with OKLCH palettes), typography (with math scale), imagery style. You read those and produce: the `.yml` preset, STYLE.md, component token mapping, and guidelines.
|
|
7
|
+
</role>
|
|
8
|
+
|
|
9
|
+
<inputs>
|
|
10
|
+
- Identity chunks: color-system.md, typography.md, logo-directions.md, imagery-style.md (all enriched by domain skills)
|
|
11
|
+
- Identity palettes.json (OKLCH scales)
|
|
12
|
+
- BRIEF.md
|
|
13
|
+
- Strategy chunks: voice-and-tone.md, archetype.md, positioning.md
|
|
14
|
+
- system_strategy and tech_stack from config.json
|
|
15
|
+
- `.design/system/STACK.md`, `COMPONENTS.md`, `TOKENS.md` (if exist)
|
|
16
|
+
- style_base from config.json + preset `.yml` (if set) — the starting scaffold
|
|
17
|
+
- style_base preset `.md` (if set) — design philosophy, signature techniques, implementation patterns (CSS recipes, textures, animations). Source content for STYLE.md's Philosophy, Bold Bets, and Implementation sections.
|
|
18
|
+
- Output path
|
|
19
|
+
</inputs>
|
|
20
|
+
|
|
21
|
+
<methodology>
|
|
22
|
+
## What you produce (operational, not creative)
|
|
23
|
+
|
|
24
|
+
1. **Assemble `{brand-name}.yml`** — the single source of truth. Take identity decisions and structure them into the preset format:
|
|
25
|
+
- `tokens:` — extract color hex values from color-system.md, font families from typography.md, spacing/shape/elevation from the style_base preset or sensible defaults
|
|
26
|
+
- `intensity:` — derive from brand archetype + strategy (e.g., a "rebel" archetype → higher variance; a "sage" → lower)
|
|
27
|
+
- `patterns:` — 7 component composition rules derived from the brand's aesthetic (how cards, buttons, inputs SHOULD look given these colors/type/constraints)
|
|
28
|
+
- `constraints:` — never/always rules that protect the brand (derived from identity anti-patterns + style_base constraints)
|
|
29
|
+
- `effects:` — interaction vocabulary coherent with the brand energy
|
|
30
|
+
- `dark_mode:` — from color-system.md dark mode mapping
|
|
31
|
+
|
|
32
|
+
2. **Render `STYLE.md`** — follows `templates/phases/style.md` format. Source each section:
|
|
33
|
+
- **Intensity** — from the assembled `.yml` `intensity:` block
|
|
34
|
+
- **Philosophy** — synthesize from brand strategy (archetype, positioning, voice) + preset `.md` companion's Design Philosophy section (if provided). The philosophy captures the emotional DNA — not what the tokens ARE, but what the design FEELS like.
|
|
35
|
+
- **Patterns** — from the assembled `.yml` `patterns:` block, rendered as tables per component
|
|
36
|
+
- **Constraints** — from the assembled `.yml` `constraints:` block, rendered as never/always bullet lists
|
|
37
|
+
- **Effects** — from the assembled `.yml` `effects:` block, rendered as interaction vocabulary + state tables
|
|
38
|
+
- **Bold Bets** — the 3-5 most distinctive visual techniques from the identity phase's boldest choices + preset `.md` companion's signature techniques. Each must be specific enough for a builder to implement.
|
|
39
|
+
- **Implementation** — extract from preset `.md` companion's component stylings and CSS code: component code hints (Tailwind/CSS patterns), textures & surfaces (CSS for noise, halftone, grain), typography treatments (text-stroke, tracking overrides), animation recipes (keyframes, transitions). Skip sections that don't apply to this brand.
|
|
40
|
+
|
|
41
|
+
3. **Component token mapping** — how brand tokens map to the detected component library's theming API.
|
|
42
|
+
|
|
43
|
+
4. **Component overrides + custom specs** — only for components that need treatment beyond tokens.
|
|
44
|
+
|
|
45
|
+
5. **`guidelines.html`** — self-contained visual brand guide. This is the primary artifact users see. Single HTML file with embedded CSS, no external dependencies. Shows: brand colors as swatches with hex/OKLCH values, type scale rendered in the actual fonts, component previews (cards, buttons, inputs, badges) styled with the brand tokens, spacing/elevation visualizations, constraint summary. Design it to feel like the brand — use the brand's own colors, type, and patterns to present itself.
|
|
46
|
+
|
|
47
|
+
## Inheritance from style_base
|
|
48
|
+
|
|
49
|
+
If `style_base` contains one preset, start from its values and customize. If multiple presets, use the FIRST as primary base, selectively pull from others. Last-wins for conflicts.
|
|
50
|
+
|
|
51
|
+
If a preset constraint conflicts with brand identity, remove it and document why as a `.yml` comment.
|
|
52
|
+
|
|
53
|
+
If no `style_base` was set, build the full `.yml` from scratch using identity outputs.
|
|
54
|
+
|
|
55
|
+
## System Strategy
|
|
56
|
+
|
|
57
|
+
Read `system_strategy` from brand config:
|
|
58
|
+
|
|
59
|
+
**GENERATE** — Full system from scratch. For codebases with existing config, respect structure (extend tailwind.config, not replace).
|
|
60
|
+
|
|
61
|
+
**EXTEND** — Evolve existing system: audit tokens against brand identity (keep what works, adjust what doesn't, fill gaps). Classify existing components: KEEP / RESTYLE / OVERRIDE / REPLACE. Output delta tokens. Preserve existing naming conventions.
|
|
62
|
+
|
|
63
|
+
**REFACTOR** — Redesign from ground up informed by existing: understand current system, design complete new system, produce migration mapping, flag breaking changes.
|
|
64
|
+
|
|
65
|
+
## Component Strategy
|
|
66
|
+
|
|
67
|
+
Leverage existing UI libraries — don't rewrite from scratch.
|
|
68
|
+
|
|
69
|
+
**Tier 1: Token mapping** (always) — `components/token-mapping.md`. Maps brand tokens to library's theming API. Copy-paste-ready. See `references/token-mapping.md` for the CSS generation spec.
|
|
70
|
+
|
|
71
|
+
**Tier 2: Override specs** (selective) — one file per component needing treatment beyond tokens. Why it's overridden, code hints.
|
|
72
|
+
|
|
73
|
+
**Tier 3: Custom component specs** (selective) — full specs only for brand-distinctive components with no library equivalent.
|
|
74
|
+
|
|
75
|
+
Tier 2 + 3 combined: 5-12 components max.
|
|
76
|
+
|
|
77
|
+
## Quality Standards
|
|
78
|
+
- Token mapping must target the actual library's theming API
|
|
79
|
+
- Every value in `.yml` must trace to an identity chunk
|
|
80
|
+
- STYLE.md must be renderable from `.yml` alone (no external dependencies)
|
|
81
|
+
- Component specs need: states, anatomy, usage rules, accessibility, code hints
|
|
82
|
+
</methodology>
|
|
83
|
+
|
|
84
|
+
<output>
|
|
85
|
+
Write operational artifacts to the brand's guidelines directory (path provided by the skill that spawned you):
|
|
86
|
+
|
|
87
|
+
### Core files
|
|
88
|
+
|
|
89
|
+
- **`{brand-name}.yml`** — Single source of truth. Full preset schema: tokens, intensity, patterns, constraints, effects, dark_mode.
|
|
90
|
+
- **`STYLE.md`** — Agent-readable contract rendered from `.yml` + philosophy + bold bets. Follows `templates/phases/style.md`.
|
|
91
|
+
- **`guidelines.html`** — Self-contained visual brand guide. Single HTML file with embedded CSS — no external deps. Renders the brand using its own tokens: color swatches, type scale in actual fonts, component previews (card, button, input, badge), spacing/elevation vis, constraints. This is what the user sees.
|
|
92
|
+
|
|
93
|
+
### Components
|
|
94
|
+
|
|
95
|
+
Write to `components/`:
|
|
96
|
+
|
|
97
|
+
1. **`token-mapping.md`** (always) — brand tokens → library theming API. Reference values from `{brand-name}.yml`.
|
|
98
|
+
2. **Override specs** (selective) — one per component needing more than tokens.
|
|
99
|
+
3. **Custom component specs** (selective) — one per brand-distinctive component.
|
|
100
|
+
|
|
101
|
+
### `INDEX.md`
|
|
102
|
+
|
|
103
|
+
```markdown
|
|
104
|
+
# Guidelines
|
|
105
|
+
> Phase: guidelines | Brand: {name} | Generated: {DATE}
|
|
106
|
+
|
|
107
|
+
## Core
|
|
108
|
+
|
|
109
|
+
| File | Description |
|
|
110
|
+
|------|-------------|
|
|
111
|
+
| [{brand-name}.yml](./{brand-name}.yml) | Style preset — single source of truth |
|
|
112
|
+
| [STYLE.md](./STYLE.md) | Agent contract (rendered from .yml) |
|
|
113
|
+
| [guidelines.html](./guidelines.html) | Visual brand guide (open in browser) |
|
|
114
|
+
|
|
115
|
+
## Components
|
|
116
|
+
|
|
117
|
+
| File | Type | Description |
|
|
118
|
+
|------|------|-------------|
|
|
119
|
+
| [token-mapping.md](./components/token-mapping.md) | mapping | Brand tokens → {library} theming API |
|
|
120
|
+
| ... | ... | ... |
|
|
121
|
+
```
|
|
122
|
+
</output>
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: gsp-brand-identity
|
|
3
|
-
description: Create your visual identity — logo, color, typography
|
|
3
|
+
description: Create your visual identity — logo, color, typography (creative phase — benefits from capable models)
|
|
4
4
|
user-invocable: true
|
|
5
|
-
model: opus
|
|
6
|
-
effort: high
|
|
7
5
|
allowed-tools:
|
|
8
6
|
- Read
|
|
9
7
|
- Write
|
|
@@ -22,14 +20,9 @@ Build the brand's visual identity.
|
|
|
22
20
|
|
|
23
21
|
**Input:** Strategy chunks + BRIEF.md + discover/mood-board-direction.md
|
|
24
22
|
**Output:** `.design/branding/{brand}/identity/` (6 chunks + palettes.json + INDEX.md)
|
|
25
|
-
**Agent:** `gsp-creative-director`
|
|
23
|
+
**Agent:** `gsp-brand-creative-director`
|
|
26
24
|
</objective>
|
|
27
25
|
|
|
28
|
-
<execution_context>
|
|
29
|
-
@${CLAUDE_SKILL_DIR}/../../templates/phases/identity.md
|
|
30
|
-
@${CLAUDE_SKILL_DIR}/../gsp-color/references/color-composition.md
|
|
31
|
-
</execution_context>
|
|
32
|
-
|
|
33
26
|
<rules>
|
|
34
27
|
- Always use `AskUserQuestion` for user-facing questions — never raw text prompts
|
|
35
28
|
- One decision per question — never batch multiple questions in a single message
|
|
@@ -86,7 +79,13 @@ After visual direction is confirmed, ask as a separate `AskUserQuestion`:
|
|
|
86
79
|
|
|
87
80
|
## Step 3: Spawn creative director
|
|
88
81
|
|
|
89
|
-
|
|
82
|
+
### Load references and agent methodology
|
|
83
|
+
Read these files and hold their content for inlining into the agent prompt:
|
|
84
|
+
- `${CLAUDE_SKILL_DIR}/../../templates/phases/identity.md` — identity output template
|
|
85
|
+
- `${CLAUDE_SKILL_DIR}/../gsp-color/references/color-composition.md` — color composition reference
|
|
86
|
+
- `${CLAUDE_SKILL_DIR}/methodology/gsp-brand-creative-director.md` — agent methodology
|
|
87
|
+
|
|
88
|
+
Spawn the `gsp-brand-creative-director` agent. **Inline all content** — the agent should not need to read any input files.
|
|
90
89
|
|
|
91
90
|
Pass in the agent prompt:
|
|
92
91
|
- **Content of** BRIEF.md (loaded in Step 1)
|
|
@@ -94,7 +93,9 @@ Pass in the agent prompt:
|
|
|
94
93
|
- **Content of** discover/mood-board-direction.md (loaded in Step 1)
|
|
95
94
|
- **Content of** style base preset `.yml` + `.md` (when loaded in Step 1) — `.yml` as structural scaffold, `.md` as design philosophy and signature techniques
|
|
96
95
|
- **Content of** audit/brand-inventory.md (when loaded in Step 2)
|
|
97
|
-
-
|
|
96
|
+
- **Agent methodology** (loaded above)
|
|
97
|
+
- **Content of** identity output template (loaded above)
|
|
98
|
+
- **Content of** color composition reference (loaded above)
|
|
98
99
|
- User-confirmed visual direction + constraints
|
|
99
100
|
- **Output path:** `{BRAND_PATH}/identity/`
|
|
100
101
|
|
|
@@ -106,16 +107,16 @@ The agent writes 5 chunks + INDEX.md (creative decisions only — no technical e
|
|
|
106
107
|
5. `brand-applications.md`
|
|
107
108
|
6. `INDEX.md`
|
|
108
109
|
|
|
109
|
-
## Step 3.5: Enrich with domain skills
|
|
110
|
+
## Step 3.5: Enrich with domain skills (parallel)
|
|
110
111
|
|
|
111
|
-
After the creative-director finishes, invoke domain skills
|
|
112
|
+
After the creative-director finishes, invoke all 4 domain skills in parallel — they operate on separate chunks with zero dependencies:
|
|
112
113
|
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
114
|
+
- **`/gsp-logo --enrich`** — reads `logo-directions.md`, enriches with construction geometry, variation specs, clear space rules, minimum size calculations.
|
|
115
|
+
- **`/gsp-color --enrich`** — reads `color-system.md`, generates OKLCH palettes via tints.dev, calculates WCAG contrast, writes `palettes.json`, enriches with contrast ratios and semantic mapping.
|
|
116
|
+
- **`/gsp-typography --enrich`** — reads `typography.md`, generates mathematical type scale, adds fluid type formulas, enriches with font loading instructions.
|
|
117
|
+
- **`/gsp-visuals --imagery --enrich`** — reads `imagery-style.md`, adds icon library specifics, CSS texture/treatment recipes, enriches with technical implementation details.
|
|
117
118
|
|
|
118
|
-
Each skill loads its own domain references on-demand — no upfront context cost.
|
|
119
|
+
Invoke all 4 using the Skill tool simultaneously. Each skill loads its own domain references on-demand — no upfront context cost.
|
|
119
120
|
|
|
120
121
|
## Step 4: Perspective check
|
|
121
122
|
|