gspec 1.7.0 → 1.10.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 (72) hide show
  1. package/bin/gspec.js +275 -8
  2. package/commands/gspec.analyze.md +1 -1
  3. package/commands/gspec.implement.md +3 -3
  4. package/commands/gspec.practices.md +3 -1
  5. package/commands/gspec.stack.md +11 -6
  6. package/commands/gspec.style.md +18 -23
  7. package/dist/antigravity/gspec-analyze/SKILL.md +1 -1
  8. package/dist/antigravity/gspec-architect/SKILL.md +1 -1
  9. package/dist/antigravity/gspec-feature/SKILL.md +1 -1
  10. package/dist/antigravity/gspec-implement/SKILL.md +4 -4
  11. package/dist/antigravity/gspec-migrate/SKILL.md +5 -5
  12. package/dist/antigravity/gspec-practices/SKILL.md +4 -2
  13. package/dist/antigravity/gspec-profile/SKILL.md +1 -1
  14. package/dist/antigravity/gspec-research/SKILL.md +3 -3
  15. package/dist/antigravity/gspec-stack/SKILL.md +12 -7
  16. package/dist/antigravity/gspec-style/SKILL.md +19 -24
  17. package/dist/claude/gspec-analyze/SKILL.md +1 -1
  18. package/dist/claude/gspec-architect/SKILL.md +1 -1
  19. package/dist/claude/gspec-feature/SKILL.md +1 -1
  20. package/dist/claude/gspec-implement/SKILL.md +4 -4
  21. package/dist/claude/gspec-migrate/SKILL.md +5 -5
  22. package/dist/claude/gspec-practices/SKILL.md +4 -2
  23. package/dist/claude/gspec-profile/SKILL.md +1 -1
  24. package/dist/claude/gspec-research/SKILL.md +3 -3
  25. package/dist/claude/gspec-stack/SKILL.md +12 -7
  26. package/dist/claude/gspec-style/SKILL.md +19 -24
  27. package/dist/codex/gspec-analyze/SKILL.md +1 -1
  28. package/dist/codex/gspec-architect/SKILL.md +1 -1
  29. package/dist/codex/gspec-feature/SKILL.md +1 -1
  30. package/dist/codex/gspec-implement/SKILL.md +4 -4
  31. package/dist/codex/gspec-migrate/SKILL.md +5 -5
  32. package/dist/codex/gspec-practices/SKILL.md +4 -2
  33. package/dist/codex/gspec-profile/SKILL.md +1 -1
  34. package/dist/codex/gspec-research/SKILL.md +3 -3
  35. package/dist/codex/gspec-stack/SKILL.md +12 -7
  36. package/dist/codex/gspec-style/SKILL.md +19 -24
  37. package/dist/cursor/gspec-analyze.mdc +1 -1
  38. package/dist/cursor/gspec-architect.mdc +1 -1
  39. package/dist/cursor/gspec-feature.mdc +1 -1
  40. package/dist/cursor/gspec-implement.mdc +4 -4
  41. package/dist/cursor/gspec-migrate.mdc +5 -5
  42. package/dist/cursor/gspec-practices.mdc +4 -2
  43. package/dist/cursor/gspec-profile.mdc +1 -1
  44. package/dist/cursor/gspec-research.mdc +3 -3
  45. package/dist/cursor/gspec-stack.mdc +12 -7
  46. package/dist/cursor/gspec-style.mdc +19 -24
  47. package/dist/opencode/gspec-analyze/SKILL.md +168 -0
  48. package/dist/opencode/gspec-architect/SKILL.md +361 -0
  49. package/dist/opencode/gspec-feature/SKILL.md +204 -0
  50. package/dist/opencode/gspec-implement/SKILL.md +200 -0
  51. package/dist/opencode/gspec-migrate/SKILL.md +118 -0
  52. package/dist/opencode/gspec-practices/SKILL.md +137 -0
  53. package/dist/opencode/gspec-profile/SKILL.md +221 -0
  54. package/dist/opencode/gspec-research/SKILL.md +302 -0
  55. package/dist/opencode/gspec-stack/SKILL.md +305 -0
  56. package/dist/opencode/gspec-style/SKILL.md +224 -0
  57. package/package.json +3 -1
  58. package/starters/features/about-page.md +98 -0
  59. package/starters/features/contact-form.md +147 -0
  60. package/starters/features/contact-page.md +103 -0
  61. package/starters/features/home-page.md +103 -0
  62. package/starters/features/responsive-navbar.md +113 -0
  63. package/starters/features/services-page.md +103 -0
  64. package/starters/features/site-footer.md +121 -0
  65. package/starters/features/theme-switcher.md +124 -0
  66. package/starters/practices/tdd-pipeline-first.md +192 -0
  67. package/starters/stacks/astro-tailwind-github-pages.md +283 -0
  68. package/starters/stacks/nextjs-supabase-vercel.md +319 -0
  69. package/starters/stacks/nextjs-vercel-typescript.md +264 -0
  70. package/starters/styles/clean-professional.md +316 -0
  71. package/starters/styles/dark-minimal-developer.md +442 -0
  72. package/templates/spec-sync.md +1 -1
@@ -25,7 +25,7 @@ You should:
25
25
  - Begin the file with YAML frontmatter containing the gspec version:
26
26
  ```
27
27
  ---
28
- gspec-version: 1.7.0
28
+ gspec-version: 1.10.0
29
29
  ---
30
30
  ```
31
31
  The frontmatter must be the very first content in the file, before the main heading.
@@ -96,6 +96,8 @@ You should:
96
96
  - Responsive design tooling
97
97
 
98
98
  - **Note**: Visual design values (colors, typography, spacing) are documented separately as framework-agnostic design tokens; include here how the chosen CSS framework maps to those tokens
99
+ - **Component library** (if applicable) — e.g., shadcn/ui, Headless UI, Radix UI. Component libraries are framework-specific technology choices and belong in the stack, not the style guide.
100
+ - **Note**: Icon libraries (e.g., HeroIcons, Lucide) are defined in `gspec/style.md`, not here. The stack defines the CSS framework and component library; the style defines the icon set. Do NOT include an iconography section in the stack document.
99
101
 
100
102
  ### 5. Backend Stack
101
103
  **Mark as N/A if this is a frontend-only or static site project**
@@ -134,9 +136,9 @@ You should:
134
136
  - Scaling approach
135
137
 
136
138
  #### CI/CD Pipeline
137
- - CI/CD platform (GitHub Actions, GitLab CI, Jenkins, etc.)
138
- - Pipeline stages
139
- - Deployment automation
139
+ - CI/CD platform technology (GitHub Actions, GitLab CI, Jenkins, etc.) and rationale
140
+ - Deployment automation and trigger configuration
141
+ - **Note**: The stack defines *which CI/CD technology* is used. The pipeline structure (stages, gates, ordering) is defined in `gspec/practices.md`. Include platform-specific configuration details here (e.g., workflow YAML format, runner setup), not pipeline philosophy.
140
142
 
141
143
  #### Infrastructure as Code
142
144
  - IaC tool (Terraform, CloudFormation, Pulumi, etc.)
@@ -194,10 +196,13 @@ You should:
194
196
 
195
197
  ### 10. Testing Infrastructure
196
198
 
199
+ > **The stack is the single authority for test tooling choices.** Define which frameworks and tools are used here. Testing philosophy, patterns, and coverage requirements are defined in `gspec/practices.md`.
200
+
197
201
  #### Testing Frameworks
198
- - Unit testing framework
202
+ - Unit testing framework (Vitest, Jest, pytest, etc.) and rationale
199
203
  - Integration testing tools
200
- - E2E testing framework (Playwright, Cypress, etc.)
204
+ - E2E testing framework (Playwright, Cypress, etc.) and rationale
205
+ - Component testing tools (if applicable)
201
206
 
202
207
  #### Test Data Management
203
208
  - Test database strategy
@@ -224,7 +229,7 @@ You should:
224
229
  ### 12. Development Tools
225
230
 
226
231
  #### Package Management
227
- - Package manager (npm, yarn, pnpm, pip, maven, etc.)
232
+ - **Package manager** — Explicitly declare the package manager (npm, yarn, pnpm, pip, maven, etc.) with rationale for the choice. This must be stated clearly so all other gspec commands and CI/CD configuration use the correct tool.
228
233
  - Dependency management strategy
229
234
  - Private package registry (if applicable)
230
235
 
@@ -27,7 +27,7 @@ You should:
27
27
  - Begin the file with YAML frontmatter containing the gspec version:
28
28
  ```
29
29
  ---
30
- gspec-version: 1.7.0
30
+ gspec-version: 1.10.0
31
31
  ---
32
32
  ```
33
33
  The frontmatter must be the very first content in the file, before the main heading.
@@ -115,34 +115,27 @@ You should:
115
115
  - Component color adjustments
116
116
  - Contrast considerations
117
117
 
118
- #### Theme Switching
119
- - How themes interact with the color palette
120
- - Token mapping between themes
118
+ ### 6. Component Styling
121
119
 
122
- ### 6. Components
120
+ > **Focus on visual styling only** — colors, borders, typography, spacing, and state appearances. Do NOT define component structure, layout behavior, or interaction patterns (those belong in feature PRDs). The goal is to answer "what does it look like?" not "how does it work?"
123
121
 
124
122
  #### Buttons
125
- - Primary, secondary, tertiary styles
126
- - States (default, hover, active, disabled)
127
- - Sizes and padding
128
- - Border radius
123
+ - Color treatments for primary, secondary, ghost variants
124
+ - States: default, hover, active, disabled appearances
125
+ - Sizes and border radius
129
126
 
130
127
  #### Form Elements
131
- - Input fields
132
- - Dropdowns, checkboxes, radio buttons
133
- - Labels and helper text
134
- - Validation states
128
+ - Input field colors, borders, and focus ring styles
129
+ - Label and helper text typography
130
+ - Validation state colors (error, success)
135
131
 
136
132
  #### Cards & Containers
137
- - Background colors
138
- - Border styles
139
- - Shadow elevations
140
- - Corner radius
133
+ - Background colors and border styles
134
+ - Shadow elevations and corner radius
141
135
 
142
- #### Navigation
143
- - Header/navbar styles
144
- - Menu patterns
145
- - Active states
136
+ #### Navigation Elements
137
+ - Link colors: default, hover, active states
138
+ - Background treatments for navigation surfaces
146
139
 
147
140
  ### 7. Visual Effects
148
141
 
@@ -162,11 +155,13 @@ You should:
162
155
 
163
156
  ### 8. Iconography
164
157
 
165
- #### Icon Style
166
- - Outlined vs filled
158
+ > **The style guide is the single authority for icon library choices.** The stack document defines the CSS framework and component library (e.g., shadcn/ui); the style guide defines which icon set is used. This separation ensures icon decisions are driven by design rationale (visual consistency, stroke style) while component library decisions remain with the technology stack (framework compatibility).
159
+
160
+ #### Icon Library
161
+ - Specific icon library recommendation with rationale
162
+ - Outlined vs filled style
167
163
  - Stroke width
168
164
  - Size standards
169
- - Icon library recommendation
170
165
 
171
166
  #### Usage Guidelines
172
167
  - When to use icons
@@ -28,7 +28,7 @@ Read **every** available gspec document in this order:
28
28
 
29
29
  1. `gspec/profile.md` — Product identity, scope, audience, and positioning
30
30
  2. `gspec/stack.md` — Technology choices, frameworks, infrastructure
31
- 3. `gspec/style.md` — Visual design language, tokens, component patterns
31
+ 3. `gspec/style.md` — Visual design language, tokens, component styling
32
32
  4. `gspec/practices.md` — Development standards, testing, conventions
33
33
  5. `gspec/architecture.md` — Technical blueprint: project structure, data model, API design, environment
34
34
  6. `gspec/research.md` — Competitive analysis and feature proposals
@@ -45,7 +45,7 @@ All of these provide essential context. If any are missing, note the gap and mak
45
45
  - Begin the file with YAML frontmatter containing the gspec version:
46
46
  ```
47
47
  ---
48
- gspec-version: 1.7.0
48
+ gspec-version: 1.10.0
49
49
  ---
50
50
  ```
51
51
  The frontmatter must be the very first content in the file, before the main heading.
@@ -85,7 +85,7 @@ Feature PRDs are designed to be **portable across projects**. A feature spec wri
85
85
  - Begin each file with YAML frontmatter containing the gspec version:
86
86
  ```
87
87
  ---
88
- gspec-version: 1.7.0
88
+ gspec-version: 1.10.0
89
89
  ---
90
90
  ```
91
91
  The frontmatter must be the very first content in the file, before the main heading.
@@ -105,11 +105,11 @@ Present a brief scaffold summary to the user before proceeding to feature implem
105
105
 
106
106
  1. **Announce the phase** — State which phase you're starting, what it covers, and what capabilities will be implemented
107
107
  2. **Implement the phase:**
108
- a. **Follow the stack** — Use the exact technologies, frameworks, and patterns defined in `gspec/stack.md`
109
- b. **Follow the practices** — Adhere to coding standards, testing requirements, and conventions from `gspec/practices.md`
110
- c. **Follow the style** — Apply the design system, tokens, and component patterns from `gspec/style.md`
108
+ a. **Follow the stack** — Use the exact technologies, frameworks, and patterns defined in `gspec/stack.md`. The stack is the single authority for technology choices (testing tools, CI/CD platform, package manager). Where stack-specific practices (Section 15 of `stack.md`) conflict with general practices in `practices.md`, the stack's technology-specific guidance takes precedence for framework-specific concerns.
109
+ b. **Follow the practices** — Adhere to coding standards, testing philosophy, pipeline structure, and conventions from `gspec/practices.md`
110
+ c. **Follow the style** — Apply the design system, tokens, and icon library from `gspec/style.md`. The style is the single authority for icon library choices. Component libraries (e.g., shadcn/ui) are defined in `gspec/stack.md`.
111
111
  d. **Satisfy the requirements** — Trace each piece of code back to a functional requirement in the feature PRD (if available) or to the user's stated goals and the approved implementation plan
112
- 3. **Mark capabilities as implemented** — After successfully implementing each capability, immediately update the feature PRD by changing its checkbox from `- [ ]` to `- [x]`. Do this incrementally as each capability is completed, not in a batch at the end. If a capability line did not have a checkbox prefix, add one as `- [x]`. This ensures that if the session is interrupted, progress is not lost. When updating gspec files, preserve existing `gspec-version` YAML frontmatter. If a file lacks frontmatter, add `---\ngspec-version: 1.7.0\n---` at the top.
112
+ 3. **Mark capabilities as implemented** — After successfully implementing each capability, immediately update the feature PRD by changing its checkbox from `- [ ]` to `- [x]`. Do this incrementally as each capability is completed, not in a batch at the end. If a capability line did not have a checkbox prefix, add one as `- [x]`. This ensures that if the session is interrupted, progress is not lost. When updating gspec files, preserve existing `gspec-version` YAML frontmatter. If a file lacks frontmatter, add `---\ngspec-version: 1.10.0\n---` at the top.
113
113
  4. **Run tests** — Execute the tests defined for this phase (and any existing tests to catch regressions). Fix any failures before proceeding.
114
114
  6. **Surface new gaps** — If implementation reveals new ambiguities, pause and consult the user rather than making silent assumptions
115
115
  7. **Pause and report** — After completing the phase and confirming tests pass, present a phase completion summary to the user:
@@ -5,7 +5,7 @@ description: Migrate existing gspec files to the current format when upgrading t
5
5
 
6
6
  You are a Technical Documentation Migration Specialist.
7
7
 
8
- Your task is to update existing gspec specification documents to match the current gspec format (version 1.7.0). You preserve all substantive content while ensuring documents follow the latest structural conventions.
8
+ Your task is to update existing gspec specification documents to match the current gspec format (version 1.10.0). You preserve all substantive content while ensuring documents follow the latest structural conventions.
9
9
 
10
10
  ---
11
11
 
@@ -21,14 +21,14 @@ Scan the `gspec/` directory for all Markdown files:
21
21
  For each file, check the YAML frontmatter at the top of the file:
22
22
  - If the file starts with `---` followed by YAML content and another `---`, read the `gspec-version` field
23
23
  - If no frontmatter exists, the file predates version tracking
24
- - If `gspec-version` matches `1.7.0`, the file is current — skip it
24
+ - If `gspec-version` matches `1.10.0`, the file is current — skip it
25
25
 
26
26
  Present an inventory to the user:
27
27
 
28
28
  > **gspec File Inventory:**
29
29
  > - `gspec/profile.md` — no version (needs migration)
30
30
  > - `gspec/stack.md` — version 1.0.3 (needs migration)
31
- > - `gspec/style.md` — version 1.7.0 (current, skipping)
31
+ > - `gspec/style.md` — version 1.10.0 (current, skipping)
32
32
  > - `gspec/features/user-auth.md` — no version (needs migration)
33
33
 
34
34
  Ask the user to confirm which files to migrate, or confirm all.
@@ -63,7 +63,7 @@ For each file to migrate:
63
63
  5. **Add or update the frontmatter** — Ensure the file starts with:
64
64
  ```
65
65
  ---
66
- gspec-version: 1.7.0
66
+ gspec-version: 1.10.0
67
67
  ---
68
68
  ```
69
69
  6. **Present the proposed changes** to the user before writing. Show what sections are being reorganized, what is being added, and confirm no content is being lost.
@@ -77,7 +77,7 @@ After migrating all files:
77
77
  3. **Present a completion summary**:
78
78
 
79
79
  > **Migration Complete:**
80
- > - 4 files migrated to version 1.7.0
80
+ > - 4 files migrated to version 1.10.0
81
81
  > - 2 files were already current (skipped)
82
82
  > - Content preserved in all files
83
83
  > - Sections reorganized: [list any structural changes]
@@ -25,7 +25,7 @@ You should:
25
25
  - Begin the file with YAML frontmatter containing the gspec version:
26
26
  ```
27
27
  ---
28
- gspec-version: 1.7.0
28
+ gspec-version: 1.10.0
29
29
  ---
30
30
  ```
31
31
  The frontmatter must be the very first content in the file, before the main heading.
@@ -39,8 +39,10 @@ You should:
39
39
  - Focus on practices that matter for this specific project
40
40
  - Avoid generic advice that doesn't apply
41
41
  - **Do NOT include technology stack information** — this is documented separately
42
- - **Do NOT prescribe specific testing frameworks, tools, or libraries** — focus on testing principles, patterns, and practices, not which tools to use
42
+ - **Do NOT prescribe specific testing frameworks, tools, or libraries** — focus on testing principles, patterns, and practices. The stack document (`gspec/stack.md`) is the single authority for which test tools are used.
43
+ - **DO define CI/CD pipeline structure** — the practices document defines pipeline stages, gates, and ordering (lint → typecheck → test → build → deploy). The stack document defines which CI/CD platform technology is used (GitHub Actions, GitLab CI, etc.).
43
44
  - **Mark sections as "Not Applicable"** when they don't apply to this project
45
+ - **Precedence rule**: Where this document conflicts with technology-specific practices in `gspec/stack.md`, the stack's technology-specific practices take precedence for framework-specific concerns (e.g., file naming conventions dictated by a framework). This document governs general engineering principles.
44
46
 
45
47
  ---
46
48
 
@@ -25,7 +25,7 @@ You should:
25
25
  - Begin the file with YAML frontmatter containing the gspec version:
26
26
  ```
27
27
  ---
28
- gspec-version: 1.7.0
28
+ gspec-version: 1.10.0
29
29
  ---
30
30
  ```
31
31
  The frontmatter must be the very first content in the file, before the main heading.
@@ -162,7 +162,7 @@ After writing `gspec/research.md`, ask the user:
162
162
  - Assumptions & Risks (assumptions, open questions, key risks and mitigations)
163
163
  - Success Metrics
164
164
  - Implementation Context (standard portability note)
165
- - Begin the file with YAML frontmatter: `---\ngspec-version: 1.7.0\n---`
165
+ - Begin the file with YAML frontmatter: `---\ngspec-version: 1.10.0\n---`
166
166
  2. **Name the file** descriptively based on the feature (e.g., `gspec/features/csv-export.md`, `gspec/features/onboarding-wizard.md`)
167
167
  3. **Keep the PRD portable** — use generic role descriptions (not project-specific persona names), define success metrics in terms of the feature's own outcomes (not project-level KPIs), and describe UX behavior generically (not tied to a specific design system). The PRD should be reusable across projects.
168
168
  4. **Keep the PRD product-focused** — describe *what* and *why*, not *how*. Implementation details belong in the code, not the PRD.
@@ -181,7 +181,7 @@ After writing `gspec/research.md`, ask the user:
181
181
  - Begin `gspec/research.md` with YAML frontmatter containing the gspec version:
182
182
  ```
183
183
  ---
184
- gspec-version: 1.7.0
184
+ gspec-version: 1.10.0
185
185
  ---
186
186
  ```
187
187
  The frontmatter must be the very first content in the file, before the main heading.
@@ -198,7 +198,7 @@ The `gspec/research.md` file must follow this structure:
198
198
 
199
199
  ```markdown
200
200
  ---
201
- gspec-version: 1.7.0
201
+ gspec-version: 1.10.0
202
202
  ---
203
203
 
204
204
  # Competitive Research
@@ -25,7 +25,7 @@ You should:
25
25
  - Begin the file with YAML frontmatter containing the gspec version:
26
26
  ```
27
27
  ---
28
- gspec-version: 1.7.0
28
+ gspec-version: 1.10.0
29
29
  ---
30
30
  ```
31
31
  The frontmatter must be the very first content in the file, before the main heading.
@@ -96,6 +96,8 @@ You should:
96
96
  - Responsive design tooling
97
97
 
98
98
  - **Note**: Visual design values (colors, typography, spacing) are documented separately as framework-agnostic design tokens; include here how the chosen CSS framework maps to those tokens
99
+ - **Component library** (if applicable) — e.g., shadcn/ui, Headless UI, Radix UI. Component libraries are framework-specific technology choices and belong in the stack, not the style guide.
100
+ - **Note**: Icon libraries (e.g., HeroIcons, Lucide) are defined in `gspec/style.md`, not here. The stack defines the CSS framework and component library; the style defines the icon set. Do NOT include an iconography section in the stack document.
99
101
 
100
102
  ### 5. Backend Stack
101
103
  **Mark as N/A if this is a frontend-only or static site project**
@@ -134,9 +136,9 @@ You should:
134
136
  - Scaling approach
135
137
 
136
138
  #### CI/CD Pipeline
137
- - CI/CD platform (GitHub Actions, GitLab CI, Jenkins, etc.)
138
- - Pipeline stages
139
- - Deployment automation
139
+ - CI/CD platform technology (GitHub Actions, GitLab CI, Jenkins, etc.) and rationale
140
+ - Deployment automation and trigger configuration
141
+ - **Note**: The stack defines *which CI/CD technology* is used. The pipeline structure (stages, gates, ordering) is defined in `gspec/practices.md`. Include platform-specific configuration details here (e.g., workflow YAML format, runner setup), not pipeline philosophy.
140
142
 
141
143
  #### Infrastructure as Code
142
144
  - IaC tool (Terraform, CloudFormation, Pulumi, etc.)
@@ -194,10 +196,13 @@ You should:
194
196
 
195
197
  ### 10. Testing Infrastructure
196
198
 
199
+ > **The stack is the single authority for test tooling choices.** Define which frameworks and tools are used here. Testing philosophy, patterns, and coverage requirements are defined in `gspec/practices.md`.
200
+
197
201
  #### Testing Frameworks
198
- - Unit testing framework
202
+ - Unit testing framework (Vitest, Jest, pytest, etc.) and rationale
199
203
  - Integration testing tools
200
- - E2E testing framework (Playwright, Cypress, etc.)
204
+ - E2E testing framework (Playwright, Cypress, etc.) and rationale
205
+ - Component testing tools (if applicable)
201
206
 
202
207
  #### Test Data Management
203
208
  - Test database strategy
@@ -224,7 +229,7 @@ You should:
224
229
  ### 12. Development Tools
225
230
 
226
231
  #### Package Management
227
- - Package manager (npm, yarn, pnpm, pip, maven, etc.)
232
+ - **Package manager** — Explicitly declare the package manager (npm, yarn, pnpm, pip, maven, etc.) with rationale for the choice. This must be stated clearly so all other gspec commands and CI/CD configuration use the correct tool.
228
233
  - Dependency management strategy
229
234
  - Private package registry (if applicable)
230
235
 
@@ -27,7 +27,7 @@ You should:
27
27
  - Begin the file with YAML frontmatter containing the gspec version:
28
28
  ```
29
29
  ---
30
- gspec-version: 1.7.0
30
+ gspec-version: 1.10.0
31
31
  ---
32
32
  ```
33
33
  The frontmatter must be the very first content in the file, before the main heading.
@@ -115,34 +115,27 @@ You should:
115
115
  - Component color adjustments
116
116
  - Contrast considerations
117
117
 
118
- #### Theme Switching
119
- - How themes interact with the color palette
120
- - Token mapping between themes
118
+ ### 6. Component Styling
121
119
 
122
- ### 6. Components
120
+ > **Focus on visual styling only** — colors, borders, typography, spacing, and state appearances. Do NOT define component structure, layout behavior, or interaction patterns (those belong in feature PRDs). The goal is to answer "what does it look like?" not "how does it work?"
123
121
 
124
122
  #### Buttons
125
- - Primary, secondary, tertiary styles
126
- - States (default, hover, active, disabled)
127
- - Sizes and padding
128
- - Border radius
123
+ - Color treatments for primary, secondary, ghost variants
124
+ - States: default, hover, active, disabled appearances
125
+ - Sizes and border radius
129
126
 
130
127
  #### Form Elements
131
- - Input fields
132
- - Dropdowns, checkboxes, radio buttons
133
- - Labels and helper text
134
- - Validation states
128
+ - Input field colors, borders, and focus ring styles
129
+ - Label and helper text typography
130
+ - Validation state colors (error, success)
135
131
 
136
132
  #### Cards & Containers
137
- - Background colors
138
- - Border styles
139
- - Shadow elevations
140
- - Corner radius
133
+ - Background colors and border styles
134
+ - Shadow elevations and corner radius
141
135
 
142
- #### Navigation
143
- - Header/navbar styles
144
- - Menu patterns
145
- - Active states
136
+ #### Navigation Elements
137
+ - Link colors: default, hover, active states
138
+ - Background treatments for navigation surfaces
146
139
 
147
140
  ### 7. Visual Effects
148
141
 
@@ -162,11 +155,13 @@ You should:
162
155
 
163
156
  ### 8. Iconography
164
157
 
165
- #### Icon Style
166
- - Outlined vs filled
158
+ > **The style guide is the single authority for icon library choices.** The stack document defines the CSS framework and component library (e.g., shadcn/ui); the style guide defines which icon set is used. This separation ensures icon decisions are driven by design rationale (visual consistency, stroke style) while component library decisions remain with the technology stack (framework compatibility).
159
+
160
+ #### Icon Library
161
+ - Specific icon library recommendation with rationale
162
+ - Outlined vs filled style
167
163
  - Stroke width
168
164
  - Size standards
169
- - Icon library recommendation
170
165
 
171
166
  #### Usage Guidelines
172
167
  - When to use icons
@@ -28,7 +28,7 @@ Read **every** available gspec document in this order:
28
28
 
29
29
  1. `gspec/profile.md` — Product identity, scope, audience, and positioning
30
30
  2. `gspec/stack.md` — Technology choices, frameworks, infrastructure
31
- 3. `gspec/style.md` — Visual design language, tokens, component patterns
31
+ 3. `gspec/style.md` — Visual design language, tokens, component styling
32
32
  4. `gspec/practices.md` — Development standards, testing, conventions
33
33
  5. `gspec/architecture.md` — Technical blueprint: project structure, data model, API design, environment
34
34
  6. `gspec/research.md` — Competitive analysis and feature proposals
@@ -45,7 +45,7 @@ All of these provide essential context. If any are missing, note the gap and mak
45
45
  - Begin the file with YAML frontmatter containing the gspec version:
46
46
  ```
47
47
  ---
48
- gspec-version: 1.7.0
48
+ gspec-version: 1.10.0
49
49
  ---
50
50
  ```
51
51
  The frontmatter must be the very first content in the file, before the main heading.
@@ -85,7 +85,7 @@ Feature PRDs are designed to be **portable across projects**. A feature spec wri
85
85
  - Begin each file with YAML frontmatter containing the gspec version:
86
86
  ```
87
87
  ---
88
- gspec-version: 1.7.0
88
+ gspec-version: 1.10.0
89
89
  ---
90
90
  ```
91
91
  The frontmatter must be the very first content in the file, before the main heading.
@@ -105,11 +105,11 @@ Present a brief scaffold summary to the user before proceeding to feature implem
105
105
 
106
106
  1. **Announce the phase** — State which phase you're starting, what it covers, and what capabilities will be implemented
107
107
  2. **Implement the phase:**
108
- a. **Follow the stack** — Use the exact technologies, frameworks, and patterns defined in `gspec/stack.md`
109
- b. **Follow the practices** — Adhere to coding standards, testing requirements, and conventions from `gspec/practices.md`
110
- c. **Follow the style** — Apply the design system, tokens, and component patterns from `gspec/style.md`
108
+ a. **Follow the stack** — Use the exact technologies, frameworks, and patterns defined in `gspec/stack.md`. The stack is the single authority for technology choices (testing tools, CI/CD platform, package manager). Where stack-specific practices (Section 15 of `stack.md`) conflict with general practices in `practices.md`, the stack's technology-specific guidance takes precedence for framework-specific concerns.
109
+ b. **Follow the practices** — Adhere to coding standards, testing philosophy, pipeline structure, and conventions from `gspec/practices.md`
110
+ c. **Follow the style** — Apply the design system, tokens, and icon library from `gspec/style.md`. The style is the single authority for icon library choices. Component libraries (e.g., shadcn/ui) are defined in `gspec/stack.md`.
111
111
  d. **Satisfy the requirements** — Trace each piece of code back to a functional requirement in the feature PRD (if available) or to the user's stated goals and the approved implementation plan
112
- 3. **Mark capabilities as implemented** — After successfully implementing each capability, immediately update the feature PRD by changing its checkbox from `- [ ]` to `- [x]`. Do this incrementally as each capability is completed, not in a batch at the end. If a capability line did not have a checkbox prefix, add one as `- [x]`. This ensures that if the session is interrupted, progress is not lost. When updating gspec files, preserve existing `gspec-version` YAML frontmatter. If a file lacks frontmatter, add `---\ngspec-version: 1.7.0\n---` at the top.
112
+ 3. **Mark capabilities as implemented** — After successfully implementing each capability, immediately update the feature PRD by changing its checkbox from `- [ ]` to `- [x]`. Do this incrementally as each capability is completed, not in a batch at the end. If a capability line did not have a checkbox prefix, add one as `- [x]`. This ensures that if the session is interrupted, progress is not lost. When updating gspec files, preserve existing `gspec-version` YAML frontmatter. If a file lacks frontmatter, add `---\ngspec-version: 1.10.0\n---` at the top.
113
113
  4. **Run tests** — Execute the tests defined for this phase (and any existing tests to catch regressions). Fix any failures before proceeding.
114
114
  6. **Surface new gaps** — If implementation reveals new ambiguities, pause and consult the user rather than making silent assumptions
115
115
  7. **Pause and report** — After completing the phase and confirming tests pass, present a phase completion summary to the user:
@@ -5,7 +5,7 @@ description: Migrate existing gspec files to the current format when upgrading t
5
5
 
6
6
  You are a Technical Documentation Migration Specialist.
7
7
 
8
- Your task is to update existing gspec specification documents to match the current gspec format (version 1.7.0). You preserve all substantive content while ensuring documents follow the latest structural conventions.
8
+ Your task is to update existing gspec specification documents to match the current gspec format (version 1.10.0). You preserve all substantive content while ensuring documents follow the latest structural conventions.
9
9
 
10
10
  ---
11
11
 
@@ -21,14 +21,14 @@ Scan the `gspec/` directory for all Markdown files:
21
21
  For each file, check the YAML frontmatter at the top of the file:
22
22
  - If the file starts with `---` followed by YAML content and another `---`, read the `gspec-version` field
23
23
  - If no frontmatter exists, the file predates version tracking
24
- - If `gspec-version` matches `1.7.0`, the file is current — skip it
24
+ - If `gspec-version` matches `1.10.0`, the file is current — skip it
25
25
 
26
26
  Present an inventory to the user:
27
27
 
28
28
  > **gspec File Inventory:**
29
29
  > - `gspec/profile.md` — no version (needs migration)
30
30
  > - `gspec/stack.md` — version 1.0.3 (needs migration)
31
- > - `gspec/style.md` — version 1.7.0 (current, skipping)
31
+ > - `gspec/style.md` — version 1.10.0 (current, skipping)
32
32
  > - `gspec/features/user-auth.md` — no version (needs migration)
33
33
 
34
34
  Ask the user to confirm which files to migrate, or confirm all.
@@ -63,7 +63,7 @@ For each file to migrate:
63
63
  5. **Add or update the frontmatter** — Ensure the file starts with:
64
64
  ```
65
65
  ---
66
- gspec-version: 1.7.0
66
+ gspec-version: 1.10.0
67
67
  ---
68
68
  ```
69
69
  6. **Present the proposed changes** to the user before writing. Show what sections are being reorganized, what is being added, and confirm no content is being lost.
@@ -77,7 +77,7 @@ After migrating all files:
77
77
  3. **Present a completion summary**:
78
78
 
79
79
  > **Migration Complete:**
80
- > - 4 files migrated to version 1.7.0
80
+ > - 4 files migrated to version 1.10.0
81
81
  > - 2 files were already current (skipped)
82
82
  > - Content preserved in all files
83
83
  > - Sections reorganized: [list any structural changes]
@@ -25,7 +25,7 @@ You should:
25
25
  - Begin the file with YAML frontmatter containing the gspec version:
26
26
  ```
27
27
  ---
28
- gspec-version: 1.7.0
28
+ gspec-version: 1.10.0
29
29
  ---
30
30
  ```
31
31
  The frontmatter must be the very first content in the file, before the main heading.
@@ -39,8 +39,10 @@ You should:
39
39
  - Focus on practices that matter for this specific project
40
40
  - Avoid generic advice that doesn't apply
41
41
  - **Do NOT include technology stack information** — this is documented separately
42
- - **Do NOT prescribe specific testing frameworks, tools, or libraries** — focus on testing principles, patterns, and practices, not which tools to use
42
+ - **Do NOT prescribe specific testing frameworks, tools, or libraries** — focus on testing principles, patterns, and practices. The stack document (`gspec/stack.md`) is the single authority for which test tools are used.
43
+ - **DO define CI/CD pipeline structure** — the practices document defines pipeline stages, gates, and ordering (lint → typecheck → test → build → deploy). The stack document defines which CI/CD platform technology is used (GitHub Actions, GitLab CI, etc.).
43
44
  - **Mark sections as "Not Applicable"** when they don't apply to this project
45
+ - **Precedence rule**: Where this document conflicts with technology-specific practices in `gspec/stack.md`, the stack's technology-specific practices take precedence for framework-specific concerns (e.g., file naming conventions dictated by a framework). This document governs general engineering principles.
44
46
 
45
47
  ---
46
48
 
@@ -25,7 +25,7 @@ You should:
25
25
  - Begin the file with YAML frontmatter containing the gspec version:
26
26
  ```
27
27
  ---
28
- gspec-version: 1.7.0
28
+ gspec-version: 1.10.0
29
29
  ---
30
30
  ```
31
31
  The frontmatter must be the very first content in the file, before the main heading.
@@ -162,7 +162,7 @@ After writing `gspec/research.md`, ask the user:
162
162
  - Assumptions & Risks (assumptions, open questions, key risks and mitigations)
163
163
  - Success Metrics
164
164
  - Implementation Context (standard portability note)
165
- - Begin the file with YAML frontmatter: `---\ngspec-version: 1.7.0\n---`
165
+ - Begin the file with YAML frontmatter: `---\ngspec-version: 1.10.0\n---`
166
166
  2. **Name the file** descriptively based on the feature (e.g., `gspec/features/csv-export.md`, `gspec/features/onboarding-wizard.md`)
167
167
  3. **Keep the PRD portable** — use generic role descriptions (not project-specific persona names), define success metrics in terms of the feature's own outcomes (not project-level KPIs), and describe UX behavior generically (not tied to a specific design system). The PRD should be reusable across projects.
168
168
  4. **Keep the PRD product-focused** — describe *what* and *why*, not *how*. Implementation details belong in the code, not the PRD.
@@ -181,7 +181,7 @@ After writing `gspec/research.md`, ask the user:
181
181
  - Begin `gspec/research.md` with YAML frontmatter containing the gspec version:
182
182
  ```
183
183
  ---
184
- gspec-version: 1.7.0
184
+ gspec-version: 1.10.0
185
185
  ---
186
186
  ```
187
187
  The frontmatter must be the very first content in the file, before the main heading.
@@ -198,7 +198,7 @@ The `gspec/research.md` file must follow this structure:
198
198
 
199
199
  ```markdown
200
200
  ---
201
- gspec-version: 1.7.0
201
+ gspec-version: 1.10.0
202
202
  ---
203
203
 
204
204
  # Competitive Research
@@ -25,7 +25,7 @@ You should:
25
25
  - Begin the file with YAML frontmatter containing the gspec version:
26
26
  ```
27
27
  ---
28
- gspec-version: 1.7.0
28
+ gspec-version: 1.10.0
29
29
  ---
30
30
  ```
31
31
  The frontmatter must be the very first content in the file, before the main heading.
@@ -96,6 +96,8 @@ You should:
96
96
  - Responsive design tooling
97
97
 
98
98
  - **Note**: Visual design values (colors, typography, spacing) are documented separately as framework-agnostic design tokens; include here how the chosen CSS framework maps to those tokens
99
+ - **Component library** (if applicable) — e.g., shadcn/ui, Headless UI, Radix UI. Component libraries are framework-specific technology choices and belong in the stack, not the style guide.
100
+ - **Note**: Icon libraries (e.g., HeroIcons, Lucide) are defined in `gspec/style.md`, not here. The stack defines the CSS framework and component library; the style defines the icon set. Do NOT include an iconography section in the stack document.
99
101
 
100
102
  ### 5. Backend Stack
101
103
  **Mark as N/A if this is a frontend-only or static site project**
@@ -134,9 +136,9 @@ You should:
134
136
  - Scaling approach
135
137
 
136
138
  #### CI/CD Pipeline
137
- - CI/CD platform (GitHub Actions, GitLab CI, Jenkins, etc.)
138
- - Pipeline stages
139
- - Deployment automation
139
+ - CI/CD platform technology (GitHub Actions, GitLab CI, Jenkins, etc.) and rationale
140
+ - Deployment automation and trigger configuration
141
+ - **Note**: The stack defines *which CI/CD technology* is used. The pipeline structure (stages, gates, ordering) is defined in `gspec/practices.md`. Include platform-specific configuration details here (e.g., workflow YAML format, runner setup), not pipeline philosophy.
140
142
 
141
143
  #### Infrastructure as Code
142
144
  - IaC tool (Terraform, CloudFormation, Pulumi, etc.)
@@ -194,10 +196,13 @@ You should:
194
196
 
195
197
  ### 10. Testing Infrastructure
196
198
 
199
+ > **The stack is the single authority for test tooling choices.** Define which frameworks and tools are used here. Testing philosophy, patterns, and coverage requirements are defined in `gspec/practices.md`.
200
+
197
201
  #### Testing Frameworks
198
- - Unit testing framework
202
+ - Unit testing framework (Vitest, Jest, pytest, etc.) and rationale
199
203
  - Integration testing tools
200
- - E2E testing framework (Playwright, Cypress, etc.)
204
+ - E2E testing framework (Playwright, Cypress, etc.) and rationale
205
+ - Component testing tools (if applicable)
201
206
 
202
207
  #### Test Data Management
203
208
  - Test database strategy
@@ -224,7 +229,7 @@ You should:
224
229
  ### 12. Development Tools
225
230
 
226
231
  #### Package Management
227
- - Package manager (npm, yarn, pnpm, pip, maven, etc.)
232
+ - **Package manager** — Explicitly declare the package manager (npm, yarn, pnpm, pip, maven, etc.) with rationale for the choice. This must be stated clearly so all other gspec commands and CI/CD configuration use the correct tool.
228
233
  - Dependency management strategy
229
234
  - Private package registry (if applicable)
230
235