get-shit-pretty 0.2.0 → 0.4.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.
- package/LICENSE +21 -0
- package/README.md +15 -9
- package/agents/{gsp-accessibility-auditor.md → gsp-auditor.md} +17 -14
- package/agents/gsp-brand-auditor.md +97 -0
- package/agents/gsp-brand-strategist.md +64 -27
- package/agents/{gsp-design-engineer.md → gsp-builder.md} +12 -9
- package/agents/gsp-campaign-director.md +50 -11
- package/agents/gsp-codebase-scanner.md +171 -0
- package/agents/gsp-critic.md +18 -13
- package/agents/gsp-designer.md +126 -0
- package/agents/gsp-identity-designer.md +90 -0
- package/agents/gsp-project-researcher.md +102 -0
- package/agents/gsp-researcher.md +54 -18
- package/agents/gsp-reviewer.md +66 -0
- package/agents/gsp-scoper.md +103 -0
- package/agents/gsp-system-architect.md +91 -26
- package/agents/gsp-verbal-strategist.md +84 -0
- package/bin/install.js +161 -5
- package/commands/gsp/brand-audit.md +116 -0
- package/commands/gsp/brand-discover.md +17 -0
- package/commands/gsp/brand-identity.md +200 -0
- package/commands/gsp/brand-patterns.md +223 -0
- package/commands/gsp/brand-research.md +99 -0
- package/commands/gsp/brand-strategy.md +140 -0
- package/commands/gsp/brand-system.md +17 -0
- package/commands/gsp/brand-verbal.md +94 -0
- package/commands/gsp/brand.md +9 -83
- package/commands/gsp/brief.md +142 -0
- package/commands/gsp/build.md +49 -41
- package/commands/gsp/critique.md +140 -0
- package/commands/gsp/design.md +65 -50
- package/commands/gsp/discover.md +17 -0
- package/commands/gsp/doctor.md +319 -0
- package/commands/gsp/help.md +85 -38
- package/commands/gsp/identity.md +18 -0
- package/commands/gsp/launch.md +55 -35
- package/commands/gsp/new-project.md +5 -86
- package/commands/gsp/new.md +237 -0
- package/commands/gsp/plan.md +18 -0
- package/commands/gsp/progress.md +58 -26
- package/commands/gsp/research.md +91 -34
- package/commands/gsp/review.md +115 -59
- package/commands/gsp/strategy.md +18 -0
- package/commands/gsp/system.md +8 -65
- package/commands/gsp/update.md +102 -0
- package/commands/gsp/verbal.md +18 -0
- package/package.json +2 -2
- package/prompts/01-design-system-architect.md +35 -3
- package/prompts/03-ui-ux-pattern-master.md +11 -1
- package/prompts/09-design-to-code-translator.md +9 -0
- package/prompts/10-project-scoper.md +51 -0
- package/prompts/11-deliverable-reviewer.md +58 -0
- package/prompts/12-project-researcher.md +57 -0
- package/references/brand-archetypes.md +151 -0
- package/references/brand-prism.md +138 -0
- package/references/chunk-format.md +48 -0
- package/references/design-trends.md +47 -0
- package/references/positioning-frameworks.md +197 -0
- package/references/questioning.md +1 -1
- package/references/trends/aurora-gradients.md +245 -0
- package/references/trends/bento-grid.md +473 -0
- package/references/trends/claymorphism.md +232 -0
- package/references/trends/dark-mode-oled.md +282 -0
- package/references/trends/glassmorphism.md +455 -0
- package/references/trends/kinetic-typography.md +277 -0
- package/references/trends/liquid-glass.md +236 -0
- package/references/trends/micro-interactions.md +307 -0
- package/references/trends/neubrutalism.md +276 -0
- package/references/voice-tone.md +193 -0
- package/scripts/gsp-statusline.js +1 -1
- package/templates/branding/brief.md +74 -0
- package/templates/branding/config.json +26 -0
- package/templates/branding/roadmap.md +43 -0
- package/templates/branding/state.md +29 -0
- package/templates/changelog.md +4 -0
- package/templates/codebase-inventory.md +71 -0
- package/templates/exports-index.md +93 -0
- package/templates/manifest.md +19 -0
- package/templates/phases/brief.md +53 -0
- package/templates/phases/build.md +24 -48
- package/templates/phases/critique.md +68 -0
- package/templates/phases/design.md +54 -32
- package/templates/phases/discover.md +60 -0
- package/templates/phases/identity.md +78 -0
- package/templates/phases/launch.md +48 -55
- package/templates/phases/research.md +75 -47
- package/templates/phases/review.md +27 -75
- package/templates/phases/strategy.md +67 -0
- package/templates/phases/system.md +84 -78
- package/templates/phases/verbal.md +63 -0
- package/templates/{project.md → projects/brief.md} +13 -17
- package/templates/projects/config.json +32 -0
- package/templates/projects/roadmap.md +59 -0
- package/templates/{state.md → projects/state.md} +19 -9
- package/agents/gsp-spec-engineer.md +0 -121
- package/agents/gsp-ui-designer.md +0 -59
- package/commands/gsp/spec.md +0 -88
- package/templates/config.json +0 -26
- package/templates/phases/brand.md +0 -60
- package/templates/phases/spec.md +0 -46
- package/templates/roadmap.md +0 -62
package/commands/gsp/research.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: gsp:research
|
|
3
|
-
description:
|
|
3
|
+
description: Deep project research — UX patterns, competitor UX, technical approaches
|
|
4
4
|
allowed-tools:
|
|
5
5
|
- Read
|
|
6
6
|
- Write
|
|
@@ -8,64 +8,121 @@ allowed-tools:
|
|
|
8
8
|
- Task
|
|
9
9
|
- WebSearch
|
|
10
10
|
- WebFetch
|
|
11
|
+
- Grep
|
|
12
|
+
- Glob
|
|
11
13
|
---
|
|
12
14
|
<context>
|
|
13
|
-
Phase
|
|
15
|
+
Phase 2 of the GSP project diamond. Deep research phase that investigates UX patterns, competitor experiences, technical approaches, accessibility strategies, and content patterns specific to what this project is building.
|
|
16
|
+
|
|
17
|
+
This is NOT brand-level discovery (that's `/gsp:brand-discover`). This is project-level research — focused on the product type, user flows, and implementation challenges.
|
|
18
|
+
|
|
19
|
+
Works with the dual-diamond architecture: reads brand context from `.design/branding/{brand}/` via `brand.ref`, reads/writes project assets in `.design/projects/{project}/`.
|
|
14
20
|
</context>
|
|
15
21
|
|
|
16
22
|
<objective>
|
|
17
|
-
|
|
23
|
+
Deep research into UX patterns, competitor experiences, and technical approaches for this project.
|
|
18
24
|
|
|
19
|
-
**Input:**
|
|
20
|
-
**Output:**
|
|
21
|
-
**Agent:** `gsp-researcher`
|
|
25
|
+
**Input:** Brief scope + brand system + project BRIEF.md
|
|
26
|
+
**Output:** `{project}/research/` (6 research chunks + INDEX.md)
|
|
27
|
+
**Agent:** `gsp-project-researcher`
|
|
22
28
|
</objective>
|
|
23
29
|
|
|
24
30
|
<execution_context>
|
|
25
|
-
@/Users/jubs/.claude/get-shit-pretty/prompts/
|
|
31
|
+
@/Users/jubs/.claude/get-shit-pretty/prompts/12-project-researcher.md
|
|
26
32
|
@/Users/jubs/.claude/get-shit-pretty/templates/phases/research.md
|
|
27
33
|
</execution_context>
|
|
28
34
|
|
|
29
35
|
<process>
|
|
36
|
+
## Step 0: Resolve project and brand
|
|
37
|
+
|
|
38
|
+
Scan `.design/projects/` for project directories. If only one project exists, use it. If multiple, ask the user which project to work on.
|
|
39
|
+
|
|
40
|
+
Set `PROJECT_PATH` = `.design/projects/{project}`
|
|
41
|
+
|
|
42
|
+
Read `{PROJECT_PATH}/brand.ref` to resolve brand path:
|
|
43
|
+
- Set `BRAND_PATH` = `.design/branding/{brand}`
|
|
44
|
+
|
|
30
45
|
## Step 1: Load context
|
|
31
46
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
47
|
+
### Brief (chunk-first)
|
|
48
|
+
|
|
49
|
+
Read `{PROJECT_PATH}/brief/INDEX.md`. If it exists, load `scope.md` and `target-adaptations.md`.
|
|
50
|
+
|
|
51
|
+
If brief doesn't exist, tell the user to run `/gsp:brief` first.
|
|
37
52
|
|
|
38
|
-
|
|
53
|
+
### Brand system (selective)
|
|
39
54
|
|
|
40
|
-
|
|
55
|
+
Read `{BRAND_PATH}/system/INDEX.md`. If it exists, load foundation chunks (to understand the design system constraints).
|
|
41
56
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
-
|
|
57
|
+
### Brand discovery (selective)
|
|
58
|
+
|
|
59
|
+
Read `{BRAND_PATH}/discover/INDEX.md`. If it exists, load `competitive-audit.md` and `trend-analysis.md` (to avoid duplicating brand-level research).
|
|
60
|
+
|
|
61
|
+
### Project context
|
|
62
|
+
|
|
63
|
+
Read:
|
|
64
|
+
- `{PROJECT_PATH}/BRIEF.md` — what we're building, platforms, audience
|
|
65
|
+
- `{PROJECT_PATH}/config.json` — get `implementation_target`, `platform`, `tech_stack`
|
|
66
|
+
|
|
67
|
+
## Step 1.5: Scope check
|
|
68
|
+
|
|
69
|
+
**If `design_scope` is `tokens`:**
|
|
70
|
+
1. Update `{PROJECT_PATH}/STATE.md` — set Phase 2 (Research) status to `skipped`
|
|
71
|
+
2. Display: "Research phase skipped — design scope is `tokens`."
|
|
72
|
+
3. Route: "Run `/gsp:build`."
|
|
73
|
+
4. Stop here.
|
|
74
|
+
|
|
75
|
+
## Step 2: Spawn project researcher
|
|
76
|
+
|
|
77
|
+
Spawn the `gsp-project-researcher` agent with:
|
|
78
|
+
- Brief scope chunks
|
|
79
|
+
- Brand system foundation chunks
|
|
80
|
+
- Brand discovery chunks (competitive audit, trends — to build on, not duplicate)
|
|
81
|
+
- BRIEF.md
|
|
82
|
+
- config.json preferences
|
|
83
|
+
- The Project Researcher prompt (12)
|
|
45
84
|
- The research output template
|
|
46
|
-
-
|
|
85
|
+
- `implementation_target`, `platform`, `tech_stack`
|
|
86
|
+
- **Output path:** `{PROJECT_PATH}/research/`
|
|
87
|
+
|
|
88
|
+
The agent researches using WebSearch and writes chunks directly:
|
|
89
|
+
- `research/ux-patterns.md`
|
|
90
|
+
- `research/competitor-ux.md`
|
|
91
|
+
- `research/technical-research.md`
|
|
92
|
+
- `research/accessibility-patterns.md`
|
|
93
|
+
- `research/content-strategy.md`
|
|
94
|
+
- `research/reference-specs.md`
|
|
95
|
+
- `research/recommendations.md`
|
|
96
|
+
- `research/INDEX.md`
|
|
47
97
|
|
|
48
|
-
|
|
49
|
-
1. Research current design trends for the industry
|
|
50
|
-
2. Identify 5 macro trends with real brand examples
|
|
51
|
-
3. Map competitor positioning (2x2)
|
|
52
|
-
4. Analyze user expectation shifts
|
|
53
|
-
5. Assess platform evolution (iOS, Material, Web)
|
|
54
|
-
6. Provide strategic recommendations
|
|
55
|
-
7. Define mood board direction
|
|
98
|
+
## Step 2.5: Write exports
|
|
56
99
|
|
|
57
|
-
|
|
100
|
+
Update `{PROJECT_PATH}/exports/INDEX.md`:
|
|
101
|
+
- If INDEX.md doesn't exist, copy it from `templates/exports-index.md`
|
|
102
|
+
- Replace everything between `<!-- BEGIN:research -->` and `<!-- END:research -->` with populated table:
|
|
58
103
|
|
|
59
|
-
|
|
104
|
+
```markdown
|
|
105
|
+
<!-- BEGIN:research -->
|
|
106
|
+
| Section | File |
|
|
107
|
+
|---------|------|
|
|
108
|
+
| UX Patterns | [ux-patterns.md](../research/ux-patterns.md) |
|
|
109
|
+
| Competitor UX | [competitor-ux.md](../research/competitor-ux.md) |
|
|
110
|
+
| Technical Research | [technical-research.md](../research/technical-research.md) |
|
|
111
|
+
| Accessibility Patterns | [accessibility-patterns.md](../research/accessibility-patterns.md) |
|
|
112
|
+
| Content Strategy | [content-strategy.md](../research/content-strategy.md) |
|
|
113
|
+
| Reference Specs | [reference-specs.md](../research/reference-specs.md) |
|
|
114
|
+
| Recommendations | [recommendations.md](../research/recommendations.md) |
|
|
115
|
+
<!-- END:research -->
|
|
116
|
+
```
|
|
60
117
|
|
|
61
|
-
## Step
|
|
118
|
+
## Step 3: Update state
|
|
62
119
|
|
|
63
|
-
Update
|
|
64
|
-
- Set Phase
|
|
120
|
+
Update `{PROJECT_PATH}/STATE.md`:
|
|
121
|
+
- Set Phase 2 (Research) status to `complete`
|
|
65
122
|
- Record completion date
|
|
66
123
|
|
|
67
|
-
## Step
|
|
124
|
+
## Step 4: Route next
|
|
68
125
|
|
|
69
|
-
|
|
70
|
-
"Run `/gsp:brand` to create brand identity based on these insights."
|
|
126
|
+
"Run `/gsp:design` to design screens informed by this research."
|
|
71
127
|
</process>
|
|
128
|
+
</output>
|
package/commands/gsp/review.md
CHANGED
|
@@ -1,103 +1,159 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: gsp:review
|
|
3
|
-
description:
|
|
3
|
+
description: Validate built deliverables — token compliance, screen coverage, acceptance
|
|
4
4
|
allowed-tools:
|
|
5
5
|
- Read
|
|
6
6
|
- Write
|
|
7
7
|
- Bash
|
|
8
8
|
- Task
|
|
9
|
+
- Grep
|
|
10
|
+
- Glob
|
|
9
11
|
---
|
|
10
12
|
<context>
|
|
11
|
-
Phase 6 of the GSP
|
|
13
|
+
Phase 6 of the GSP project diamond. Validates that built deliverables match the design intent — checking system token usage, screen coverage, component implementation, and accessibility compliance in the actual code.
|
|
14
|
+
|
|
15
|
+
Works with the dual-diamond architecture: reads brand system from `.design/branding/{brand}/system/` via `brand.ref`, reads/writes project assets in `.design/projects/{project}/`.
|
|
12
16
|
</context>
|
|
13
17
|
|
|
14
18
|
<objective>
|
|
15
|
-
|
|
19
|
+
Validate built deliverables against design intent.
|
|
16
20
|
|
|
17
|
-
**Input:**
|
|
18
|
-
**Output:**
|
|
19
|
-
**
|
|
21
|
+
**Input:** Built code + design chunks + brand system
|
|
22
|
+
**Output:** `{project}/review/` (acceptance-report.md + issues.md + INDEX.md) + exports/INDEX.md update
|
|
23
|
+
**Agent:** `gsp-reviewer`
|
|
20
24
|
</objective>
|
|
21
25
|
|
|
22
26
|
<execution_context>
|
|
23
|
-
@/Users/jubs/.claude/get-shit-pretty/prompts/
|
|
24
|
-
@/Users/jubs/.claude/get-shit-pretty/prompts/08-accessibility-auditor.md
|
|
27
|
+
@/Users/jubs/.claude/get-shit-pretty/prompts/11-deliverable-reviewer.md
|
|
25
28
|
@/Users/jubs/.claude/get-shit-pretty/templates/phases/review.md
|
|
26
|
-
@/Users/jubs/.claude/get-shit-pretty/references/nielsen-heuristics.md
|
|
27
|
-
@/Users/jubs/.claude/get-shit-pretty/references/wcag-checklist.md
|
|
28
29
|
</execution_context>
|
|
29
30
|
|
|
30
31
|
<process>
|
|
32
|
+
## Step 0: Resolve project and brand
|
|
33
|
+
|
|
34
|
+
Scan `.design/projects/` for project directories. If only one project exists, use it. If multiple, ask the user which project to work on.
|
|
35
|
+
|
|
36
|
+
Set `PROJECT_PATH` = `.design/projects/{project}`
|
|
37
|
+
|
|
38
|
+
Read `{PROJECT_PATH}/brand.ref` to resolve brand path:
|
|
39
|
+
- Set `BRAND_PATH` = `.design/branding/{brand}`
|
|
40
|
+
|
|
31
41
|
## Step 1: Load context
|
|
32
42
|
|
|
33
|
-
Read
|
|
43
|
+
Read `{PROJECT_PATH}/config.json` to get `implementation_target` and `design_scope`.
|
|
34
44
|
|
|
35
|
-
|
|
36
|
-
- `.design/BRIEF.md`
|
|
37
|
-
- `.design/brand/IDENTITY.md`
|
|
38
|
-
- `.design/system/SYSTEM.md`
|
|
39
|
-
- `.design/screens/SCREENS.md`
|
|
40
|
-
- `.design/specs/SPECS.md` (if it exists)
|
|
45
|
+
### Load all artifacts
|
|
41
46
|
|
|
42
|
-
|
|
47
|
+
**Build output:** Read `{PROJECT_PATH}/build/CODE.md` and scan `{PROJECT_PATH}/build/components/` for implemented components.
|
|
43
48
|
|
|
44
|
-
|
|
49
|
+
**Design:** Read `{PROJECT_PATH}/design/INDEX.md` → load all screen chunks.
|
|
50
|
+
Fallback: `{PROJECT_PATH}/screens/INDEX.md` (legacy).
|
|
45
51
|
|
|
46
|
-
|
|
52
|
+
**Brand system:** Read `{BRAND_PATH}/system/INDEX.md` → load foundation + component chunks.
|
|
53
|
+
Also read `{BRAND_PATH}/system/tokens.json`.
|
|
47
54
|
|
|
48
|
-
**
|
|
49
|
-
- The Design Critique Partner prompt (06)
|
|
50
|
-
- Nielsen's 10 Heuristics reference
|
|
51
|
-
- All design artifacts
|
|
55
|
+
**Brief:** Read `{PROJECT_PATH}/brief/INDEX.md` → load scope and adaptations.
|
|
52
56
|
|
|
53
|
-
|
|
54
|
-
1. Nielsen's 10 heuristics scored 1-5 with specific examples
|
|
55
|
-
2. Visual hierarchy analysis
|
|
56
|
-
3. Typography and color assessment
|
|
57
|
-
4. Usability evaluation
|
|
58
|
-
5. Cognitive load analysis
|
|
59
|
-
6. Prioritized fixes (Critical / Important / Polish)
|
|
60
|
-
7. 2 alternative redesign directions
|
|
57
|
+
**Research:** Read `{PROJECT_PATH}/research/INDEX.md` → load `reference-specs.md` (to verify specs were followed).
|
|
61
58
|
|
|
62
|
-
**
|
|
63
|
-
- The Accessibility Auditor prompt (08)
|
|
64
|
-
- WCAG 2.2 AA checklist
|
|
65
|
-
- All design artifacts
|
|
59
|
+
**Critique:** Read `{PROJECT_PATH}/critique/INDEX.md` → load prioritized-fixes and accessibility-fixes (to verify they were addressed).
|
|
66
60
|
|
|
67
|
-
|
|
68
|
-
1. Perceivable, Operable, Understandable, Robust checklists
|
|
69
|
-
2. Mobile and cognitive accessibility checks
|
|
70
|
-
3. Violations list with severity and WCAG criteria
|
|
71
|
-
4. Remediation steps
|
|
72
|
-
5. Accessibility statement
|
|
61
|
+
**Codebase:** Scan actual codebase for implemented components (when `implementation_target` is not `figma`).
|
|
73
62
|
|
|
74
|
-
## Step
|
|
63
|
+
## Step 1.5: Scope check
|
|
75
64
|
|
|
76
|
-
|
|
77
|
-
|
|
65
|
+
**If `design_scope` is `tokens`:**
|
|
66
|
+
1. Run token-audit-only review: verify token naming, scale consistency, contrast ratios, and brand alignment. Skip screen coverage and component coverage checks.
|
|
67
|
+
2. Write `{PROJECT_PATH}/review/acceptance-report.md` (token-focused verdict) and `{PROJECT_PATH}/review/issues.md` (token issues only)
|
|
68
|
+
3. Write `{PROJECT_PATH}/review/INDEX.md`
|
|
69
|
+
4. Update `{PROJECT_PATH}/exports/INDEX.md` between `<!-- BEGIN:review -->` and `<!-- END:review -->` with populated table
|
|
70
|
+
5. Update `{PROJECT_PATH}/STATE.md` — set Phase 6 (Review) to `complete` or `needs-revision`
|
|
71
|
+
6. Route: display verdict and suggest `/gsp:launch` or re-run `/gsp:review`
|
|
72
|
+
7. **Stop here**
|
|
78
73
|
|
|
79
|
-
## Step
|
|
74
|
+
## Step 2: Spawn reviewer
|
|
75
|
+
|
|
76
|
+
Spawn the `gsp-reviewer` agent with:
|
|
77
|
+
- Build output (CODE.md + component files)
|
|
78
|
+
- Design chunks
|
|
79
|
+
- Brand system chunks + tokens.json
|
|
80
|
+
- Brief chunks
|
|
81
|
+
- Critique fixes (to verify resolution)
|
|
82
|
+
- The Deliverable Reviewer prompt (11)
|
|
83
|
+
- The review output template
|
|
84
|
+
- **Output path:** `{PROJECT_PATH}/review/`
|
|
80
85
|
|
|
81
|
-
|
|
86
|
+
The agent writes chunks directly:
|
|
87
|
+
- `review/acceptance-report.md`
|
|
88
|
+
- `review/issues.md`
|
|
89
|
+
- `review/INDEX.md`
|
|
82
90
|
|
|
83
|
-
|
|
84
|
-
- Display issues clearly
|
|
85
|
-
- Recommend looping back: "Run `/gsp:design` or `/gsp:spec` to address critical issues, then `/gsp:review` again."
|
|
86
|
-
- Update STATE.md review loop tracking
|
|
91
|
+
## Step 3: Write exports
|
|
87
92
|
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
93
|
+
Update `{PROJECT_PATH}/exports/INDEX.md`:
|
|
94
|
+
|
|
95
|
+
```markdown
|
|
96
|
+
<!-- BEGIN:review -->
|
|
97
|
+
| Section | File |
|
|
98
|
+
|---------|------|
|
|
99
|
+
| Acceptance Report | [acceptance-report.md](../review/acceptance-report.md) |
|
|
100
|
+
| Issues | [issues.md](../review/issues.md) |
|
|
101
|
+
<!-- END:review -->
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
## Step 4: Assess results
|
|
105
|
+
|
|
106
|
+
Read `review/acceptance-report.md` for the verdict:
|
|
107
|
+
|
|
108
|
+
**Pass:** All screens implemented, tokens used correctly, accessibility compliant.
|
|
109
|
+
**Conditional Pass:** Minor issues found, but shippable.
|
|
110
|
+
**Fail:** Critical issues — must address before shipping.
|
|
91
111
|
|
|
92
112
|
## Step 5: Update state
|
|
93
113
|
|
|
94
|
-
Update
|
|
95
|
-
- Set Phase 6 (Review) status to `complete`
|
|
96
|
-
- Record review loop count
|
|
114
|
+
Update `{PROJECT_PATH}/STATE.md`:
|
|
115
|
+
- Set Phase 6 (Review) status to `complete` or `needs-revision`
|
|
97
116
|
- Record completion date
|
|
117
|
+
- If Pass or Conditional Pass: Set Prettiness Level to 100%
|
|
118
|
+
|
|
119
|
+
### Finalize git tracking
|
|
120
|
+
|
|
121
|
+
1. If `git.branch` is set in config.json:
|
|
122
|
+
- Run `gh pr list --head {branch} --json url,number --limit 1` to find an open PR
|
|
123
|
+
- If found, update `git.pr` in config.json and STATE.md `## Git` table
|
|
124
|
+
- If not found, note: "No PR found for branch `{branch}`."
|
|
125
|
+
- If `gh` is not available, skip silently — leave PR field as "—"
|
|
126
|
+
2. Include PR link in the CHANGELOG.md entry if available (see format below)
|
|
127
|
+
|
|
128
|
+
### Update manifest + changelog
|
|
129
|
+
|
|
130
|
+
1. Update `{PROJECT_PATH}/codebase/MANIFEST.md`:
|
|
131
|
+
- Update Status to `complete` (Pass) or `partial` (Conditional Pass)
|
|
132
|
+
- Populate Branch and PR lines in the manifest header from config.json `git` values
|
|
133
|
+
- Fix component paths if renamed during implementation
|
|
134
|
+
|
|
135
|
+
2. Append to `.design/CHANGELOG.md`:
|
|
136
|
+
- Add entry with project name, date, brand, scope summary
|
|
137
|
+
- List added/modified components, patterns, file count
|
|
138
|
+
- Link to manifest for detail
|
|
139
|
+
- Use this format:
|
|
140
|
+
```
|
|
141
|
+
## [{project-name}] — {DATE}
|
|
142
|
+
> Brand: {brand} | Scope: {one-line scope from BRIEF.md}
|
|
143
|
+
|
|
144
|
+
**Added:** {component list, comma-separated}
|
|
145
|
+
**Modified:** {component list, or "—"}
|
|
146
|
+
**Patterns:** {patterns established, comma-separated, or "—"}
|
|
147
|
+
**PR:** [{#number}]({url}) or "—"
|
|
148
|
+
**Files:** {count} files touched → [manifest](./projects/{name}/codebase/MANIFEST.md)
|
|
149
|
+
```
|
|
98
150
|
|
|
99
151
|
## Step 6: Route next
|
|
100
152
|
|
|
101
|
-
If
|
|
102
|
-
|
|
153
|
+
**If Pass/Conditional Pass:**
|
|
154
|
+
"Project is fully pretty! All 6 project phases complete. Run `/gsp:launch` if you need marketing campaign assets, or `/gsp:progress` to see the full journey."
|
|
155
|
+
|
|
156
|
+
**If Fail:**
|
|
157
|
+
"Critical issues found. Address the issues in `review/issues.md`, then run `/gsp:review` again."
|
|
103
158
|
</process>
|
|
159
|
+
</output>
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gsp:strategy
|
|
3
|
+
description: Brand strategy (alias for /gsp:brand-strategy)
|
|
4
|
+
allowed-tools:
|
|
5
|
+
- Read
|
|
6
|
+
---
|
|
7
|
+
<process>
|
|
8
|
+
Display:
|
|
9
|
+
```
|
|
10
|
+
🎨 GSP — Redirecting...
|
|
11
|
+
|
|
12
|
+
/gsp:strategy now redirects to /gsp:brand-strategy in GSP 0.4.0.
|
|
13
|
+
Brand commands now use the brand- prefix for clarity.
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
Tell the user to run `/gsp:brand-strategy` instead.
|
|
17
|
+
</process>
|
|
18
|
+
</output>
|
package/commands/gsp/system.md
CHANGED
|
@@ -1,74 +1,17 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: gsp:system
|
|
3
|
-
description:
|
|
3
|
+
description: Design system (alias for /gsp:brand-patterns)
|
|
4
4
|
allowed-tools:
|
|
5
5
|
- Read
|
|
6
|
-
- Write
|
|
7
|
-
- Bash
|
|
8
|
-
- Task
|
|
9
6
|
---
|
|
10
|
-
<context>
|
|
11
|
-
Phase 3 of the GSP design pipeline. Uses the Design System Architect prompt to build a complete design system with foundations, components, and tokens.
|
|
12
|
-
</context>
|
|
13
|
-
|
|
14
|
-
<objective>
|
|
15
|
-
Build a complete design system from the brand identity.
|
|
16
|
-
|
|
17
|
-
**Input:** `.design/brand/IDENTITY.md`
|
|
18
|
-
**Output:** `.design/system/SYSTEM.md` + `.design/system/tokens.json`
|
|
19
|
-
**Agent:** `gsp-system-architect`
|
|
20
|
-
</objective>
|
|
21
|
-
|
|
22
|
-
<execution_context>
|
|
23
|
-
@/Users/jubs/.claude/get-shit-pretty/prompts/01-design-system-architect.md
|
|
24
|
-
@/Users/jubs/.claude/get-shit-pretty/templates/phases/system.md
|
|
25
|
-
@/Users/jubs/.claude/get-shit-pretty/references/design-tokens.md
|
|
26
|
-
</execution_context>
|
|
27
|
-
|
|
28
7
|
<process>
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
- `.design/brand/IDENTITY.md` — brand colors, type, personality
|
|
33
|
-
- `.design/brand/palettes.json` — tints.dev generated color palettes (11-stop OKLCH scales)
|
|
34
|
-
- `.design/BRIEF.md` — platforms, tech stack, constraints
|
|
35
|
-
|
|
36
|
-
If IDENTITY.md doesn't exist, tell the user to run `/gsp:brand` first.
|
|
37
|
-
If palettes.json exists, use its OKLCH values as the foundation for the color system tokens.
|
|
38
|
-
|
|
39
|
-
## Step 2: Spawn system architect
|
|
40
|
-
|
|
41
|
-
Spawn the `gsp-system-architect` agent with:
|
|
42
|
-
- The IDENTITY.md and BRIEF.md content
|
|
43
|
-
- The Design System Architect prompt (01)
|
|
44
|
-
- The system output template
|
|
45
|
-
- The design tokens reference
|
|
46
|
-
|
|
47
|
-
The agent should deliver:
|
|
48
|
-
1. Color system (primary, semantic, dark mode, contrast ratios, usage)
|
|
49
|
-
2. Typography scale (9 levels, responsive, accessible)
|
|
50
|
-
3. Grid system (12-column)
|
|
51
|
-
4. Spacing system (8px base)
|
|
52
|
-
5. Elevation / shadow scale
|
|
53
|
-
6. Border radius tokens
|
|
54
|
-
7. 30+ components with states, anatomy, usage, accessibility, code specs
|
|
55
|
-
8. Design patterns
|
|
56
|
-
9. Design tokens as JSON (`tokens.json`)
|
|
57
|
-
10. Design principles and do's/don'ts
|
|
58
|
-
|
|
59
|
-
## Step 3: Write output
|
|
60
|
-
|
|
61
|
-
1. Write system to `.design/system/SYSTEM.md`
|
|
62
|
-
2. Write tokens to `.design/system/tokens.json`
|
|
63
|
-
|
|
64
|
-
## Step 4: Update state
|
|
65
|
-
|
|
66
|
-
Update `.design/STATE.md`:
|
|
67
|
-
- Set Phase 3 (System) status to `complete`
|
|
68
|
-
- Record completion date
|
|
8
|
+
Display:
|
|
9
|
+
```
|
|
10
|
+
🎨 GSP — Redirecting...
|
|
69
11
|
|
|
70
|
-
|
|
12
|
+
/gsp:system now redirects to /gsp:brand-patterns.
|
|
13
|
+
Brand commands now use the brand- prefix for clarity.
|
|
14
|
+
```
|
|
71
15
|
|
|
72
|
-
|
|
73
|
-
"Run `/gsp:design` to create UI/UX screens using this system."
|
|
16
|
+
Tell the user to run `/gsp:brand-patterns` instead.
|
|
74
17
|
</process>
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gsp:update
|
|
3
|
+
description: Update GSP to the latest version
|
|
4
|
+
---
|
|
5
|
+
<objective>
|
|
6
|
+
Check for GSP updates, show what's new, and run the update if the user confirms.
|
|
7
|
+
</objective>
|
|
8
|
+
|
|
9
|
+
<process>
|
|
10
|
+
|
|
11
|
+
## Step 1 — Detect installation
|
|
12
|
+
|
|
13
|
+
Check for a `VERSION` file to determine install type:
|
|
14
|
+
|
|
15
|
+
1. **Local install**: `.claude/get-shit-pretty/VERSION` relative to the current working directory
|
|
16
|
+
2. **Global install**: `~/.claude/get-shit-pretty/VERSION`
|
|
17
|
+
|
|
18
|
+
If neither exists, tell the user GSP doesn't appear to be installed and suggest running:
|
|
19
|
+
```
|
|
20
|
+
npx get-shit-pretty
|
|
21
|
+
```
|
|
22
|
+
Then stop.
|
|
23
|
+
|
|
24
|
+
Read the VERSION file to get the installed version. Store which type was detected (local or global).
|
|
25
|
+
|
|
26
|
+
## Step 2 — Check latest version
|
|
27
|
+
|
|
28
|
+
Run:
|
|
29
|
+
```bash
|
|
30
|
+
npm view get-shit-pretty version
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
If the command fails, tell the user the version check failed (they may be offline or npm is unavailable) and stop.
|
|
34
|
+
|
|
35
|
+
## Step 3 — Compare versions
|
|
36
|
+
|
|
37
|
+
If installed version >= latest version, tell the user:
|
|
38
|
+
```
|
|
39
|
+
GSP v{installed} is already up to date.
|
|
40
|
+
```
|
|
41
|
+
Then stop.
|
|
42
|
+
|
|
43
|
+
## Step 4 — Show what's new
|
|
44
|
+
|
|
45
|
+
Tell the user:
|
|
46
|
+
```
|
|
47
|
+
Update available: v{installed} → v{latest}
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
Fetch the changelog to show what changed:
|
|
51
|
+
```bash
|
|
52
|
+
curl -sf https://raw.githubusercontent.com/jubs-cloud/get-shit-pretty/main/CHANGELOG.md
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
If the fetch succeeds, extract and display the section for the latest version. If it fails, skip — changelog display is optional.
|
|
56
|
+
|
|
57
|
+
## Step 5 — Warn about clean install
|
|
58
|
+
|
|
59
|
+
Tell the user:
|
|
60
|
+
```
|
|
61
|
+
The update replaces:
|
|
62
|
+
• commands/gsp/* (all GSP commands)
|
|
63
|
+
• get-shit-pretty/* (runtime files)
|
|
64
|
+
• gsp-* agents (all GSP agents)
|
|
65
|
+
|
|
66
|
+
Custom files outside these prefixes are preserved.
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## Step 6 — Confirm with user
|
|
70
|
+
|
|
71
|
+
Ask the user to confirm before proceeding. If they decline, stop.
|
|
72
|
+
|
|
73
|
+
## Step 7 — Execute update
|
|
74
|
+
|
|
75
|
+
Based on the detected install type from Step 1:
|
|
76
|
+
|
|
77
|
+
- **Local install**: run `npx get-shit-pretty@latest --claude --local`
|
|
78
|
+
- **Global install**: run `npx get-shit-pretty@latest --claude`
|
|
79
|
+
|
|
80
|
+
Show the output to the user.
|
|
81
|
+
|
|
82
|
+
## Step 8 — Clear update cache
|
|
83
|
+
|
|
84
|
+
Remove the update cache so the statusline reflects the new state:
|
|
85
|
+
```bash
|
|
86
|
+
rm -f ~/.claude/get-shit-pretty/.update-cache.json
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
Also check for a local cache:
|
|
90
|
+
```bash
|
|
91
|
+
rm -f .claude/get-shit-pretty/.update-cache.json
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
## Step 9 — Remind to restart
|
|
95
|
+
|
|
96
|
+
Tell the user:
|
|
97
|
+
```
|
|
98
|
+
GSP updated to v{latest}.
|
|
99
|
+
Restart your Claude Code session to load the new commands and agents.
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
</process>
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gsp:verbal
|
|
3
|
+
description: Verbal identity (alias for /gsp:brand-verbal)
|
|
4
|
+
allowed-tools:
|
|
5
|
+
- Read
|
|
6
|
+
---
|
|
7
|
+
<process>
|
|
8
|
+
Display:
|
|
9
|
+
```
|
|
10
|
+
🎨 GSP — Redirecting...
|
|
11
|
+
|
|
12
|
+
/gsp:verbal now redirects to /gsp:brand-verbal in GSP 0.4.0.
|
|
13
|
+
Brand commands now use the brand- prefix for clarity.
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
Tell the user to run `/gsp:brand-verbal` instead.
|
|
17
|
+
</process>
|
|
18
|
+
</output>
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "get-shit-pretty",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "A design engineering system for Claude Code, OpenCode, Gemini, and Codex.
|
|
3
|
+
"version": "0.4.0",
|
|
4
|
+
"description": "A design engineering system for Claude Code, OpenCode, Gemini, and Codex. Dual-diamond: Branding (discover → strategy → verbal → identity → system) + Projects (brief → research → design → critique → build → review).",
|
|
5
5
|
"bin": {
|
|
6
6
|
"get-shit-pretty": "bin/install.js"
|
|
7
7
|
},
|