gspec 1.13.2 → 1.15.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 (57) hide show
  1. package/bin/gspec.js +63 -19
  2. package/commands/gspec.architect.md +4 -3
  3. package/commands/gspec.feature.md +1 -1
  4. package/commands/gspec.research.md +1 -1
  5. package/commands/gspec.stack.md +2 -7
  6. package/dist/antigravity/gspec-analyze/SKILL.md +1 -1
  7. package/dist/antigravity/gspec-architect/SKILL.md +5 -4
  8. package/dist/antigravity/gspec-feature/SKILL.md +2 -2
  9. package/dist/antigravity/gspec-implement/SKILL.md +1 -1
  10. package/dist/antigravity/gspec-migrate/SKILL.md +1 -1
  11. package/dist/antigravity/gspec-practices/SKILL.md +1 -1
  12. package/dist/antigravity/gspec-profile/SKILL.md +1 -1
  13. package/dist/antigravity/gspec-research/SKILL.md +2 -2
  14. package/dist/antigravity/gspec-stack/SKILL.md +3 -8
  15. package/dist/antigravity/gspec-style/SKILL.md +1 -1
  16. package/dist/claude/gspec-analyze/SKILL.md +1 -1
  17. package/dist/claude/gspec-architect/SKILL.md +5 -4
  18. package/dist/claude/gspec-feature/SKILL.md +2 -2
  19. package/dist/claude/gspec-implement/SKILL.md +1 -1
  20. package/dist/claude/gspec-migrate/SKILL.md +1 -1
  21. package/dist/claude/gspec-practices/SKILL.md +1 -1
  22. package/dist/claude/gspec-profile/SKILL.md +1 -1
  23. package/dist/claude/gspec-research/SKILL.md +2 -2
  24. package/dist/claude/gspec-stack/SKILL.md +3 -8
  25. package/dist/claude/gspec-style/SKILL.md +1 -1
  26. package/dist/codex/gspec-analyze/SKILL.md +1 -1
  27. package/dist/codex/gspec-architect/SKILL.md +5 -4
  28. package/dist/codex/gspec-feature/SKILL.md +2 -2
  29. package/dist/codex/gspec-implement/SKILL.md +1 -1
  30. package/dist/codex/gspec-migrate/SKILL.md +1 -1
  31. package/dist/codex/gspec-practices/SKILL.md +1 -1
  32. package/dist/codex/gspec-profile/SKILL.md +1 -1
  33. package/dist/codex/gspec-research/SKILL.md +2 -2
  34. package/dist/codex/gspec-stack/SKILL.md +3 -8
  35. package/dist/codex/gspec-style/SKILL.md +1 -1
  36. package/dist/cursor/gspec-analyze.mdc +1 -1
  37. package/dist/cursor/gspec-architect.mdc +5 -4
  38. package/dist/cursor/gspec-feature.mdc +2 -2
  39. package/dist/cursor/gspec-implement.mdc +1 -1
  40. package/dist/cursor/gspec-migrate.mdc +1 -1
  41. package/dist/cursor/gspec-practices.mdc +1 -1
  42. package/dist/cursor/gspec-profile.mdc +1 -1
  43. package/dist/cursor/gspec-research.mdc +2 -2
  44. package/dist/cursor/gspec-stack.mdc +3 -8
  45. package/dist/cursor/gspec-style.mdc +1 -1
  46. package/dist/opencode/gspec-analyze/SKILL.md +1 -1
  47. package/dist/opencode/gspec-architect/SKILL.md +5 -4
  48. package/dist/opencode/gspec-feature/SKILL.md +2 -2
  49. package/dist/opencode/gspec-implement/SKILL.md +1 -1
  50. package/dist/opencode/gspec-migrate/SKILL.md +1 -1
  51. package/dist/opencode/gspec-practices/SKILL.md +1 -1
  52. package/dist/opencode/gspec-profile/SKILL.md +1 -1
  53. package/dist/opencode/gspec-research/SKILL.md +2 -2
  54. package/dist/opencode/gspec-stack/SKILL.md +3 -8
  55. package/dist/opencode/gspec-style/SKILL.md +1 -1
  56. package/package.json +1 -1
  57. package/templates/spec-sync.md +27 -6
package/bin/gspec.js CHANGED
@@ -118,6 +118,17 @@ function promptConfirmNo(message) {
118
118
  });
119
119
  }
120
120
 
121
+ function promptConfirmYes(message) {
122
+ const rl = createInterface({ input: process.stdin, output: process.stdout });
123
+ return new Promise((resolve) => {
124
+ rl.question(message, (answer) => {
125
+ rl.close();
126
+ const trimmed = answer.trim().toLowerCase();
127
+ resolve(trimmed === '' || trimmed.startsWith('y'));
128
+ });
129
+ });
130
+ }
131
+
121
132
  function formatStarterName(slug) {
122
133
  if (slug === '_none') return 'None';
123
134
  return slug
@@ -759,19 +770,50 @@ async function saveSpec(cwd) {
759
770
 
760
771
  const selected = files[num - 1];
761
772
 
762
- // Prompt for name
763
- const name = await promptInput(chalk.bold('\n Save name (no spaces, e.g. my-saas-stack): '));
764
- if (!name) {
765
- console.error(chalk.red('\n Name is required.'));
766
- process.exit(1);
773
+ // Read source content and look for an existing name in frontmatter
774
+ let content = await readFile(selected.path, 'utf-8');
775
+ const { fields: sourceFields } = parseFrontmatter(content);
776
+ const existingName = sourceFields.name;
777
+
778
+ let name;
779
+ let overwriteConfirmed = false;
780
+
781
+ if (existingName) {
782
+ const existingPath = join(GSPEC_HOME, selected.type, `${existingName}.md`);
783
+ let savedExists = false;
784
+ try {
785
+ await stat(existingPath);
786
+ savedExists = true;
787
+ } catch (e) {
788
+ if (e.code !== 'ENOENT') throw e;
789
+ }
790
+
791
+ if (savedExists) {
792
+ const overwrite = await promptConfirmYes(
793
+ chalk.bold(`\n Overwrite existing ~/.gspec/${selected.type}/${existingName}.md? [Y/n]: `)
794
+ );
795
+ if (overwrite) {
796
+ name = existingName;
797
+ overwriteConfirmed = true;
798
+ }
799
+ } else {
800
+ name = existingName;
801
+ }
767
802
  }
768
- if (/\s/.test(name)) {
769
- console.error(chalk.red('\n Name cannot contain spaces. Use hyphens instead (e.g. my-saas-stack).'));
770
- process.exit(1);
803
+
804
+ if (!name) {
805
+ const answered = await promptInput(chalk.bold('\n Save name (no spaces, e.g. my-saas-stack): '));
806
+ if (!answered) {
807
+ console.error(chalk.red('\n Name is required.'));
808
+ process.exit(1);
809
+ }
810
+ if (/\s/.test(answered)) {
811
+ console.error(chalk.red('\n Name cannot contain spaces. Use hyphens instead (e.g. my-saas-stack).'));
812
+ process.exit(1);
813
+ }
814
+ name = answered;
771
815
  }
772
816
 
773
- // Read content and update frontmatter with name
774
- let content = await readFile(selected.path, 'utf-8');
775
817
  content = setFrontmatterField(content, 'name', name);
776
818
 
777
819
  // Ensure description exists
@@ -788,16 +830,18 @@ async function saveSpec(cwd) {
788
830
  const destPath = join(destDir, `${name}.md`);
789
831
  await mkdir(destDir, { recursive: true });
790
832
 
791
- // Check if file already exists
792
- try {
793
- await stat(destPath);
794
- const overwrite = await promptConfirm(chalk.yellow(`\n ${selected.type}/${name} already exists. Overwrite? [y/N]: `));
795
- if (!overwrite) {
796
- console.log(chalk.dim('\n Save cancelled.\n'));
797
- return;
833
+ // Check for conflict unless overwrite was already confirmed above
834
+ if (!overwriteConfirmed) {
835
+ try {
836
+ await stat(destPath);
837
+ const overwrite = await promptConfirm(chalk.yellow(`\n ${selected.type}/${name} already exists. Overwrite? [y/N]: `));
838
+ if (!overwrite) {
839
+ console.log(chalk.dim('\n Save cancelled.\n'));
840
+ return;
841
+ }
842
+ } catch (e) {
843
+ if (e.code !== 'ENOENT') throw e;
798
844
  }
799
- } catch (e) {
800
- if (e.code !== 'ENOENT') throw e;
801
845
  }
802
846
 
803
847
  // Uncheck all implementation checkboxes so saved specs start fresh
@@ -29,7 +29,7 @@ Before generating the architecture document, read **all** existing gspec documen
29
29
  4. **`gspec/practices.md`** — Development standards. Use this to align file organization, testing patterns, and code structure with team conventions.
30
30
  5. **`gspec/features/*.md`** — Individual feature requirements and dependencies. Use these to derive data entities, API endpoints, component structure, and integration points.
31
31
 
32
- All of these provide essential context. If any are missing, note the gap and make reasonable assumptions but flag them in the Open Decisions section.
32
+ All of these provide essential context. If any are missing, note the gap and ask the user to clarify before proceeding. If the user explicitly defers, make reasonable assumptions and record them in the Assumptions sub-section of the Technical Gap Analysis.
33
33
 
34
34
  ---
35
35
 
@@ -339,8 +339,9 @@ Examples of gaps to look for:
339
339
  - Technical decisions that were inferred rather than explicitly specified in existing specs
340
340
 
341
341
  ### 10. Open Decisions
342
- - Areas where the architecture may need to evolve as features are implemented
343
- - Questions that should be resolved before or during implementation
342
+ - **All technical questions and decisions must be resolved by asking the user before the document is saved.** Do not save the architecture with unresolved questions.
343
+ - If the user explicitly defers a decision, record it here with context explaining what was deferred and why. If there are no deferred decisions, omit this section entirely.
344
+ - Areas where the architecture may need to evolve as features are implemented may be noted, but these must be acknowledged evolution points — not unresolved questions.
344
345
 
345
346
  ---
346
347
 
@@ -163,8 +163,8 @@ This separation — combined with the portability principles above — allows th
163
163
 
164
164
  ### 6. Assumptions & Risks
165
165
  - Assumptions (what we're taking as true)
166
- - Open questions — **only** unknowns that genuinely cannot be answered until implementation or real-world usage begins (e.g., performance thresholds pending benchmarking, exact rate limits pending load testing). Questions about scope, users, priorities, or feature design must be asked and resolved in the chat before the spec is written. If there are no open questions, omit this sub-section.
167
166
  - Key risks and mitigations (brief bullet points — focus on risks that could affect implementation scope or approach)
167
+ - **No open questions** — All questions must be resolved by asking the user in the chat before the spec is saved. If the user explicitly defers a question, record it as a "Deferred Decision" with context explaining what was deferred and why. If there are no deferred decisions, omit the sub-section entirely. Never embed unresolved questions in the document by default.
168
168
 
169
169
  ### 7. Success Metrics
170
170
  - 2-4 measurable outcomes that define whether this feature is working
@@ -154,7 +154,7 @@ After writing `gspec/research.md`, ask the user:
154
154
  - Scope (in-scope goals, out-of-scope items, deferred ideas)
155
155
  - Capabilities (with P0/P1/P2 priority levels, using **unchecked checkboxes** `- [ ]` for each capability, each with 2-4 **acceptance criteria** as a sub-list)
156
156
  - Dependencies (on other features or external services)
157
- - Assumptions & Risks (assumptions, open questions, key risks and mitigations)
157
+ - Assumptions & Risks (assumptions, key risks and mitigations — all questions must be resolved in the chat before saving; only record explicitly deferred decisions)
158
158
  - Success Metrics
159
159
  - Implementation Context (standard portability note)
160
160
  - Begin the file with YAML frontmatter: `---\nspec-version: <<<SPEC_VERSION>>>\n---`
@@ -47,13 +47,8 @@ You should:
47
47
  - Deployment target (cloud, on-premise, hybrid)
48
48
  - Scale and performance requirements
49
49
 
50
- ### 2. Open Questions & Clarifications
51
- **List any critical questions that need answers before finalizing technology choices**
52
- - Missing requirements that impact stack decisions
53
- - Unclear constraints or preferences
54
- - Team expertise or existing infrastructure questions
55
- - Budget or licensing considerations
56
- - **Mark as "None" if all information is clear**
50
+ ### 2. Clarifications
51
+ **All questions that impact technology choices must be resolved by asking the user in the chat before the document is saved.** Do not save the stack spec with unresolved questions. If the user explicitly defers a decision, record it here as a "Deferred Decision" with context explaining what was deferred and why. If there are no deferred decisions, omit this section entirely.
57
52
 
58
53
  ### 3. Core Technology Stack
59
54
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-analyze
3
- description: Analyze gspec specs for discrepancies and reconcile conflicts between documents
3
+ description: Analyze gspec/ documents for discrepancies, contradictions, or drift and reconcile conflicts across profile, stack, style, practices, architecture, and features. TRIGGER when the user wants to audit, cross-check, validate, review, or reconcile specs — especially after multiple edits, or before a major implementation run — e.g. "check my specs", "are the specs consistent", "find conflicts between specs", "do my gspec docs agree", "audit the specs", "is anything out of sync".
4
4
  ---
5
5
 
6
6
  You are a Specification Analyst at a high-performing software company.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-architect
3
- description: Define the technical architecture project structure, data model, API design, and environment setup
3
+ description: Define or update the technical architecture (gspec/architecture.md) — project structure, data model, API design, component hierarchy, and environment/config. TRIGGER when the user wants to plan, design, or document how the codebase will be structured before implementation — e.g. "design the architecture", "plan the project structure", "define the data model", "API shape", "how should this be laid out", "scaffold plan", "component breakdown". Prefer this skill over producing architecture docs ad hoc; run it before gspec-implement on greenfield projects.
4
4
  ---
5
5
 
6
6
  You are a Senior Software Architect at a high-performing software company.
@@ -34,7 +34,7 @@ Before generating the architecture document, read **all** existing gspec documen
34
34
  4. **`gspec/practices.md`** — Development standards. Use this to align file organization, testing patterns, and code structure with team conventions.
35
35
  5. **`gspec/features/*.md`** — Individual feature requirements and dependencies. Use these to derive data entities, API endpoints, component structure, and integration points.
36
36
 
37
- All of these provide essential context. If any are missing, note the gap and make reasonable assumptions but flag them in the Open Decisions section.
37
+ All of these provide essential context. If any are missing, note the gap and ask the user to clarify before proceeding. If the user explicitly defers, make reasonable assumptions and record them in the Assumptions sub-section of the Technical Gap Analysis.
38
38
 
39
39
  ---
40
40
 
@@ -344,8 +344,9 @@ Examples of gaps to look for:
344
344
  - Technical decisions that were inferred rather than explicitly specified in existing specs
345
345
 
346
346
  ### 10. Open Decisions
347
- - Areas where the architecture may need to evolve as features are implemented
348
- - Questions that should be resolved before or during implementation
347
+ - **All technical questions and decisions must be resolved by asking the user before the document is saved.** Do not save the architecture with unresolved questions.
348
+ - If the user explicitly defers a decision, record it here with context explaining what was deferred and why. If there are no deferred decisions, omit this section entirely.
349
+ - Areas where the architecture may need to evolve as features are implemented may be noted, but these must be acknowledged evolution points — not unresolved questions.
349
350
 
350
351
  ---
351
352
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-feature
3
- description: Generate one or more product requirements documents (PRDs) for features
3
+ description: Generate product requirements documents (PRDs) for features in gspec/features/. TRIGGER when the user wants to plan, spec, propose, document, or expand a feature/capability before coding — e.g. "add a feature for X", "write a PRD", "spec out Y", "plan this feature", "what should the auth flow do", "new feature idea", "draft requirements". Prefer this skill over writing freeform feature docs.
4
4
  ---
5
5
 
6
6
  You are a senior Product Manager at a high-performing software company.
@@ -168,8 +168,8 @@ This separation — combined with the portability principles above — allows th
168
168
 
169
169
  ### 6. Assumptions & Risks
170
170
  - Assumptions (what we're taking as true)
171
- - Open questions — **only** unknowns that genuinely cannot be answered until implementation or real-world usage begins (e.g., performance thresholds pending benchmarking, exact rate limits pending load testing). Questions about scope, users, priorities, or feature design must be asked and resolved in the chat before the spec is written. If there are no open questions, omit this sub-section.
172
171
  - Key risks and mitigations (brief bullet points — focus on risks that could affect implementation scope or approach)
172
+ - **No open questions** — All questions must be resolved by asking the user in the chat before the spec is saved. If the user explicitly defers a question, record it as a "Deferred Decision" with context explaining what was deferred and why. If there are no deferred decisions, omit the sub-section entirely. Never embed unresolved questions in the document by default.
173
173
 
174
174
  ### 7. Success Metrics
175
175
  - 2-4 measurable outcomes that define whether this feature is working
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-implement
3
- description: Read gspec documents, identify gaps, and implement the software
3
+ description: Implement the software defined by gspec/ documents — reads profile, stack, style, practices, architecture, and features, then builds code phase by phase with tests and checkpoints. **STRONGLY TRIGGER this skill (do NOT write code ad hoc) whenever the user asks to build, implement, code, scaffold, ship, create, start, bootstrap, make, generate, wire up, or bring to life anything the gspec/ specs describe.** Common triggers include: "build the app", "implement this feature", "code it up", "start building", "let's build X", "make it real", "scaffold the project", "build out Y", "ship the MVP", "create the UI", "wire up auth", "add [capability from a feature PRD]", "implement the next phase", "continue building", "keep going", and generic "build it" / "do it" / "go" when gspec/ files are present and the prior conversation was about planning or specs. Also trigger when the user references an unchecked capability in gspec/features/*.md. Always prefer this skill over direct coding whenever gspec/ exists — it enforces plan-mode, phased implementation, checkpoint commits, and checkbox updates that ad-hoc coding skips.
4
4
  ---
5
5
 
6
6
  You are a Senior Software Engineer and Tech Lead at a high-performing software company.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-migrate
3
- description: Migrate existing gspec files to the current format when upgrading to a new gspec version
3
+ description: Migrate gspec/ files to the current spec format (frontmatter, schema, capability checkboxes) when upgrading the gspec version. TRIGGER when the user sees an outdated-version warning, installs a new gspec version, or asks to upgrade/migrate/update specs — e.g. "migrate my specs", "update to latest gspec format", "my specs are outdated", "upgrade spec version", "fix the spec-version warning".
4
4
  ---
5
5
 
6
6
  You are a Technical Documentation Migration Specialist.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-practices
3
- description: Define development practices, code quality standards, and engineering workflows
3
+ description: Define or update development practices (gspec/practices.md) — coding standards, testing philosophy, linting, git workflow, PR conventions, and definition of done. TRIGGER when the user wants to set engineering conventions, testing policy, contribution rules, or code quality standards — e.g. "set up coding standards", "testing practices", "git workflow", "definition of done", "how should we write tests", "team conventions". Prefer this skill over ad-hoc convention docs.
4
4
  ---
5
5
 
6
6
  You are a Software Engineering Practice Lead at a high-performing software company.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-profile
3
- description: Generate a product profile defining what the product is, who it serves, and why it exists
3
+ description: Generate or update the product profile (gspec/profile.md) what the product is, who it serves, and why it exists. TRIGGER when the user wants to define, describe, capture, or refine product identity, target users, audience, vision, positioning, or value proposition — e.g. "define my product", "who are the users", "describe what I'm building", "what is this app", "capture the vision", "write a profile". Prefer this skill over drafting a profile ad hoc.
4
4
  ---
5
5
 
6
6
  You are a Business Strategist and Product Leader at a high-performing company.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-research
3
- description: Research competitors from the product profile and produce a competitive analysis with feature gap identification
3
+ description: Research competitors named in gspec/profile.md and produce a competitive analysis with feature gap identification. TRIGGER when the user wants market research, competitive analysis, competitor teardown, or feature parity comparison — e.g. "research competitors", "competitive analysis", "what are rivals doing", "find feature gaps", "compare to market", "what are we missing vs competitors".
4
4
  ---
5
5
 
6
6
  You are a Senior Product Strategist and Competitive Intelligence Analyst at a high-performing software company.
@@ -159,7 +159,7 @@ After writing `gspec/research.md`, ask the user:
159
159
  - Scope (in-scope goals, out-of-scope items, deferred ideas)
160
160
  - Capabilities (with P0/P1/P2 priority levels, using **unchecked checkboxes** `- [ ]` for each capability, each with 2-4 **acceptance criteria** as a sub-list)
161
161
  - Dependencies (on other features or external services)
162
- - Assumptions & Risks (assumptions, open questions, key risks and mitigations)
162
+ - Assumptions & Risks (assumptions, key risks and mitigations — all questions must be resolved in the chat before saving; only record explicitly deferred decisions)
163
163
  - Success Metrics
164
164
  - Implementation Context (standard portability note)
165
165
  - Begin the file with YAML frontmatter: `---\nspec-version: v1\n---`
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-stack
3
- description: Define the technology stack, frameworks, infrastructure, and architectural patterns
3
+ description: Define or update the technology stack (gspec/stack.md) — frameworks, libraries, databases, hosting, CI/CD, and infrastructure. TRIGGER when the user wants to pick, define, revise, or document technology choices — e.g. "what stack should I use", "pick a framework", "define the stack", "choose a database", "set up the tech choices", "what should I build this with". Prefer this skill over suggesting ad-hoc tech picks.
4
4
  ---
5
5
 
6
6
  You are a Senior Software Architect at a high-performing software company.
@@ -52,13 +52,8 @@ You should:
52
52
  - Deployment target (cloud, on-premise, hybrid)
53
53
  - Scale and performance requirements
54
54
 
55
- ### 2. Open Questions & Clarifications
56
- **List any critical questions that need answers before finalizing technology choices**
57
- - Missing requirements that impact stack decisions
58
- - Unclear constraints or preferences
59
- - Team expertise or existing infrastructure questions
60
- - Budget or licensing considerations
61
- - **Mark as "None" if all information is clear**
55
+ ### 2. Clarifications
56
+ **All questions that impact technology choices must be resolved by asking the user in the chat before the document is saved.** Do not save the stack spec with unresolved questions. If the user explicitly defers a decision, record it here as a "Deferred Decision" with context explaining what was deferred and why. If there are no deferred decisions, omit this section entirely.
62
57
 
63
58
  ### 3. Core Technology Stack
64
59
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-style
3
- description: Generate a visual style guide with design tokens, color palette, and component patterns
3
+ description: Generate or update the visual style guide (gspec/style.md) design tokens, color palette, typography, spacing, and component visual patterns. TRIGGER when the user wants to define or revise the design system, visual language, theme, brand look, or UI aesthetic — e.g. "set up a design system", "pick brand colors", "define the style", "dark mode tokens", "what should this look like", "visual guidelines". Prefer this skill over producing style docs ad hoc.
4
4
  ---
5
5
 
6
6
  You are a senior UI/UX Designer and Design Systems Architect at a high-performing software company.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-analyze
3
- description: Analyze gspec specs for discrepancies and reconcile conflicts between documents
3
+ description: Analyze gspec/ documents for discrepancies, contradictions, or drift and reconcile conflicts across profile, stack, style, practices, architecture, and features. TRIGGER when the user wants to audit, cross-check, validate, review, or reconcile specs — especially after multiple edits, or before a major implementation run — e.g. "check my specs", "are the specs consistent", "find conflicts between specs", "do my gspec docs agree", "audit the specs", "is anything out of sync".
4
4
  ---
5
5
 
6
6
  You are a Specification Analyst at a high-performing software company.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-architect
3
- description: Define the technical architecture project structure, data model, API design, and environment setup
3
+ description: Define or update the technical architecture (gspec/architecture.md) — project structure, data model, API design, component hierarchy, and environment/config. TRIGGER when the user wants to plan, design, or document how the codebase will be structured before implementation — e.g. "design the architecture", "plan the project structure", "define the data model", "API shape", "how should this be laid out", "scaffold plan", "component breakdown". Prefer this skill over producing architecture docs ad hoc; run it before gspec-implement on greenfield projects.
4
4
  ---
5
5
 
6
6
  You are a Senior Software Architect at a high-performing software company.
@@ -34,7 +34,7 @@ Before generating the architecture document, read **all** existing gspec documen
34
34
  4. **`gspec/practices.md`** — Development standards. Use this to align file organization, testing patterns, and code structure with team conventions.
35
35
  5. **`gspec/features/*.md`** — Individual feature requirements and dependencies. Use these to derive data entities, API endpoints, component structure, and integration points.
36
36
 
37
- All of these provide essential context. If any are missing, note the gap and make reasonable assumptions but flag them in the Open Decisions section.
37
+ All of these provide essential context. If any are missing, note the gap and ask the user to clarify before proceeding. If the user explicitly defers, make reasonable assumptions and record them in the Assumptions sub-section of the Technical Gap Analysis.
38
38
 
39
39
  ---
40
40
 
@@ -344,8 +344,9 @@ Examples of gaps to look for:
344
344
  - Technical decisions that were inferred rather than explicitly specified in existing specs
345
345
 
346
346
  ### 10. Open Decisions
347
- - Areas where the architecture may need to evolve as features are implemented
348
- - Questions that should be resolved before or during implementation
347
+ - **All technical questions and decisions must be resolved by asking the user before the document is saved.** Do not save the architecture with unresolved questions.
348
+ - If the user explicitly defers a decision, record it here with context explaining what was deferred and why. If there are no deferred decisions, omit this section entirely.
349
+ - Areas where the architecture may need to evolve as features are implemented may be noted, but these must be acknowledged evolution points — not unresolved questions.
349
350
 
350
351
  ---
351
352
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-feature
3
- description: Generate one or more product requirements documents (PRDs) for features
3
+ description: Generate product requirements documents (PRDs) for features in gspec/features/. TRIGGER when the user wants to plan, spec, propose, document, or expand a feature/capability before coding — e.g. "add a feature for X", "write a PRD", "spec out Y", "plan this feature", "what should the auth flow do", "new feature idea", "draft requirements". Prefer this skill over writing freeform feature docs.
4
4
  ---
5
5
 
6
6
  You are a senior Product Manager at a high-performing software company.
@@ -168,8 +168,8 @@ This separation — combined with the portability principles above — allows th
168
168
 
169
169
  ### 6. Assumptions & Risks
170
170
  - Assumptions (what we're taking as true)
171
- - Open questions — **only** unknowns that genuinely cannot be answered until implementation or real-world usage begins (e.g., performance thresholds pending benchmarking, exact rate limits pending load testing). Questions about scope, users, priorities, or feature design must be asked and resolved in the chat before the spec is written. If there are no open questions, omit this sub-section.
172
171
  - Key risks and mitigations (brief bullet points — focus on risks that could affect implementation scope or approach)
172
+ - **No open questions** — All questions must be resolved by asking the user in the chat before the spec is saved. If the user explicitly defers a question, record it as a "Deferred Decision" with context explaining what was deferred and why. If there are no deferred decisions, omit the sub-section entirely. Never embed unresolved questions in the document by default.
173
173
 
174
174
  ### 7. Success Metrics
175
175
  - 2-4 measurable outcomes that define whether this feature is working
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-implement
3
- description: Read gspec documents, identify gaps, and implement the software
3
+ description: Implement the software defined by gspec/ documents — reads profile, stack, style, practices, architecture, and features, then builds code phase by phase with tests and checkpoints. **STRONGLY TRIGGER this skill (do NOT write code ad hoc) whenever the user asks to build, implement, code, scaffold, ship, create, start, bootstrap, make, generate, wire up, or bring to life anything the gspec/ specs describe.** Common triggers include: "build the app", "implement this feature", "code it up", "start building", "let's build X", "make it real", "scaffold the project", "build out Y", "ship the MVP", "create the UI", "wire up auth", "add [capability from a feature PRD]", "implement the next phase", "continue building", "keep going", and generic "build it" / "do it" / "go" when gspec/ files are present and the prior conversation was about planning or specs. Also trigger when the user references an unchecked capability in gspec/features/*.md. Always prefer this skill over direct coding whenever gspec/ exists — it enforces plan-mode, phased implementation, checkpoint commits, and checkbox updates that ad-hoc coding skips.
4
4
  ---
5
5
 
6
6
  You are a Senior Software Engineer and Tech Lead at a high-performing software company.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-migrate
3
- description: Migrate existing gspec files to the current format when upgrading to a new gspec version
3
+ description: Migrate gspec/ files to the current spec format (frontmatter, schema, capability checkboxes) when upgrading the gspec version. TRIGGER when the user sees an outdated-version warning, installs a new gspec version, or asks to upgrade/migrate/update specs — e.g. "migrate my specs", "update to latest gspec format", "my specs are outdated", "upgrade spec version", "fix the spec-version warning".
4
4
  ---
5
5
 
6
6
  You are a Technical Documentation Migration Specialist.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-practices
3
- description: Define development practices, code quality standards, and engineering workflows
3
+ description: Define or update development practices (gspec/practices.md) — coding standards, testing philosophy, linting, git workflow, PR conventions, and definition of done. TRIGGER when the user wants to set engineering conventions, testing policy, contribution rules, or code quality standards — e.g. "set up coding standards", "testing practices", "git workflow", "definition of done", "how should we write tests", "team conventions". Prefer this skill over ad-hoc convention docs.
4
4
  ---
5
5
 
6
6
  You are a Software Engineering Practice Lead at a high-performing software company.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-profile
3
- description: Generate a product profile defining what the product is, who it serves, and why it exists
3
+ description: Generate or update the product profile (gspec/profile.md) what the product is, who it serves, and why it exists. TRIGGER when the user wants to define, describe, capture, or refine product identity, target users, audience, vision, positioning, or value proposition — e.g. "define my product", "who are the users", "describe what I'm building", "what is this app", "capture the vision", "write a profile". Prefer this skill over drafting a profile ad hoc.
4
4
  ---
5
5
 
6
6
  You are a Business Strategist and Product Leader at a high-performing company.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-research
3
- description: Research competitors from the product profile and produce a competitive analysis with feature gap identification
3
+ description: Research competitors named in gspec/profile.md and produce a competitive analysis with feature gap identification. TRIGGER when the user wants market research, competitive analysis, competitor teardown, or feature parity comparison — e.g. "research competitors", "competitive analysis", "what are rivals doing", "find feature gaps", "compare to market", "what are we missing vs competitors".
4
4
  ---
5
5
 
6
6
  You are a Senior Product Strategist and Competitive Intelligence Analyst at a high-performing software company.
@@ -159,7 +159,7 @@ After writing `gspec/research.md`, ask the user:
159
159
  - Scope (in-scope goals, out-of-scope items, deferred ideas)
160
160
  - Capabilities (with P0/P1/P2 priority levels, using **unchecked checkboxes** `- [ ]` for each capability, each with 2-4 **acceptance criteria** as a sub-list)
161
161
  - Dependencies (on other features or external services)
162
- - Assumptions & Risks (assumptions, open questions, key risks and mitigations)
162
+ - Assumptions & Risks (assumptions, key risks and mitigations — all questions must be resolved in the chat before saving; only record explicitly deferred decisions)
163
163
  - Success Metrics
164
164
  - Implementation Context (standard portability note)
165
165
  - Begin the file with YAML frontmatter: `---\nspec-version: v1\n---`
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-stack
3
- description: Define the technology stack, frameworks, infrastructure, and architectural patterns
3
+ description: Define or update the technology stack (gspec/stack.md) — frameworks, libraries, databases, hosting, CI/CD, and infrastructure. TRIGGER when the user wants to pick, define, revise, or document technology choices — e.g. "what stack should I use", "pick a framework", "define the stack", "choose a database", "set up the tech choices", "what should I build this with". Prefer this skill over suggesting ad-hoc tech picks.
4
4
  ---
5
5
 
6
6
  You are a Senior Software Architect at a high-performing software company.
@@ -52,13 +52,8 @@ You should:
52
52
  - Deployment target (cloud, on-premise, hybrid)
53
53
  - Scale and performance requirements
54
54
 
55
- ### 2. Open Questions & Clarifications
56
- **List any critical questions that need answers before finalizing technology choices**
57
- - Missing requirements that impact stack decisions
58
- - Unclear constraints or preferences
59
- - Team expertise or existing infrastructure questions
60
- - Budget or licensing considerations
61
- - **Mark as "None" if all information is clear**
55
+ ### 2. Clarifications
56
+ **All questions that impact technology choices must be resolved by asking the user in the chat before the document is saved.** Do not save the stack spec with unresolved questions. If the user explicitly defers a decision, record it here as a "Deferred Decision" with context explaining what was deferred and why. If there are no deferred decisions, omit this section entirely.
62
57
 
63
58
  ### 3. Core Technology Stack
64
59
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-style
3
- description: Generate a visual style guide with design tokens, color palette, and component patterns
3
+ description: Generate or update the visual style guide (gspec/style.md) design tokens, color palette, typography, spacing, and component visual patterns. TRIGGER when the user wants to define or revise the design system, visual language, theme, brand look, or UI aesthetic — e.g. "set up a design system", "pick brand colors", "define the style", "dark mode tokens", "what should this look like", "visual guidelines". Prefer this skill over producing style docs ad hoc.
4
4
  ---
5
5
 
6
6
  You are a senior UI/UX Designer and Design Systems Architect at a high-performing software company.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-analyze
3
- description: Analyze gspec specs for discrepancies and reconcile conflicts between documents
3
+ description: Analyze gspec/ documents for discrepancies, contradictions, or drift and reconcile conflicts across profile, stack, style, practices, architecture, and features. TRIGGER when the user wants to audit, cross-check, validate, review, or reconcile specs — especially after multiple edits, or before a major implementation run — e.g. "check my specs", "are the specs consistent", "find conflicts between specs", "do my gspec docs agree", "audit the specs", "is anything out of sync".
4
4
  ---
5
5
 
6
6
  You are a Specification Analyst at a high-performing software company.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-architect
3
- description: Define the technical architecture project structure, data model, API design, and environment setup
3
+ description: Define or update the technical architecture (gspec/architecture.md) — project structure, data model, API design, component hierarchy, and environment/config. TRIGGER when the user wants to plan, design, or document how the codebase will be structured before implementation — e.g. "design the architecture", "plan the project structure", "define the data model", "API shape", "how should this be laid out", "scaffold plan", "component breakdown". Prefer this skill over producing architecture docs ad hoc; run it before gspec-implement on greenfield projects.
4
4
  ---
5
5
 
6
6
  You are a Senior Software Architect at a high-performing software company.
@@ -34,7 +34,7 @@ Before generating the architecture document, read **all** existing gspec documen
34
34
  4. **`gspec/practices.md`** — Development standards. Use this to align file organization, testing patterns, and code structure with team conventions.
35
35
  5. **`gspec/features/*.md`** — Individual feature requirements and dependencies. Use these to derive data entities, API endpoints, component structure, and integration points.
36
36
 
37
- All of these provide essential context. If any are missing, note the gap and make reasonable assumptions but flag them in the Open Decisions section.
37
+ All of these provide essential context. If any are missing, note the gap and ask the user to clarify before proceeding. If the user explicitly defers, make reasonable assumptions and record them in the Assumptions sub-section of the Technical Gap Analysis.
38
38
 
39
39
  ---
40
40
 
@@ -344,8 +344,9 @@ Examples of gaps to look for:
344
344
  - Technical decisions that were inferred rather than explicitly specified in existing specs
345
345
 
346
346
  ### 10. Open Decisions
347
- - Areas where the architecture may need to evolve as features are implemented
348
- - Questions that should be resolved before or during implementation
347
+ - **All technical questions and decisions must be resolved by asking the user before the document is saved.** Do not save the architecture with unresolved questions.
348
+ - If the user explicitly defers a decision, record it here with context explaining what was deferred and why. If there are no deferred decisions, omit this section entirely.
349
+ - Areas where the architecture may need to evolve as features are implemented may be noted, but these must be acknowledged evolution points — not unresolved questions.
349
350
 
350
351
  ---
351
352
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-feature
3
- description: Generate one or more product requirements documents (PRDs) for features
3
+ description: Generate product requirements documents (PRDs) for features in gspec/features/. TRIGGER when the user wants to plan, spec, propose, document, or expand a feature/capability before coding — e.g. "add a feature for X", "write a PRD", "spec out Y", "plan this feature", "what should the auth flow do", "new feature idea", "draft requirements". Prefer this skill over writing freeform feature docs.
4
4
  ---
5
5
 
6
6
  You are a senior Product Manager at a high-performing software company.
@@ -168,8 +168,8 @@ This separation — combined with the portability principles above — allows th
168
168
 
169
169
  ### 6. Assumptions & Risks
170
170
  - Assumptions (what we're taking as true)
171
- - Open questions — **only** unknowns that genuinely cannot be answered until implementation or real-world usage begins (e.g., performance thresholds pending benchmarking, exact rate limits pending load testing). Questions about scope, users, priorities, or feature design must be asked and resolved in the chat before the spec is written. If there are no open questions, omit this sub-section.
172
171
  - Key risks and mitigations (brief bullet points — focus on risks that could affect implementation scope or approach)
172
+ - **No open questions** — All questions must be resolved by asking the user in the chat before the spec is saved. If the user explicitly defers a question, record it as a "Deferred Decision" with context explaining what was deferred and why. If there are no deferred decisions, omit the sub-section entirely. Never embed unresolved questions in the document by default.
173
173
 
174
174
  ### 7. Success Metrics
175
175
  - 2-4 measurable outcomes that define whether this feature is working
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-implement
3
- description: Read gspec documents, identify gaps, and implement the software
3
+ description: Implement the software defined by gspec/ documents — reads profile, stack, style, practices, architecture, and features, then builds code phase by phase with tests and checkpoints. **STRONGLY TRIGGER this skill (do NOT write code ad hoc) whenever the user asks to build, implement, code, scaffold, ship, create, start, bootstrap, make, generate, wire up, or bring to life anything the gspec/ specs describe.** Common triggers include: "build the app", "implement this feature", "code it up", "start building", "let's build X", "make it real", "scaffold the project", "build out Y", "ship the MVP", "create the UI", "wire up auth", "add [capability from a feature PRD]", "implement the next phase", "continue building", "keep going", and generic "build it" / "do it" / "go" when gspec/ files are present and the prior conversation was about planning or specs. Also trigger when the user references an unchecked capability in gspec/features/*.md. Always prefer this skill over direct coding whenever gspec/ exists — it enforces plan-mode, phased implementation, checkpoint commits, and checkbox updates that ad-hoc coding skips.
4
4
  ---
5
5
 
6
6
  You are a Senior Software Engineer and Tech Lead at a high-performing software company.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-migrate
3
- description: Migrate existing gspec files to the current format when upgrading to a new gspec version
3
+ description: Migrate gspec/ files to the current spec format (frontmatter, schema, capability checkboxes) when upgrading the gspec version. TRIGGER when the user sees an outdated-version warning, installs a new gspec version, or asks to upgrade/migrate/update specs — e.g. "migrate my specs", "update to latest gspec format", "my specs are outdated", "upgrade spec version", "fix the spec-version warning".
4
4
  ---
5
5
 
6
6
  You are a Technical Documentation Migration Specialist.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-practices
3
- description: Define development practices, code quality standards, and engineering workflows
3
+ description: Define or update development practices (gspec/practices.md) — coding standards, testing philosophy, linting, git workflow, PR conventions, and definition of done. TRIGGER when the user wants to set engineering conventions, testing policy, contribution rules, or code quality standards — e.g. "set up coding standards", "testing practices", "git workflow", "definition of done", "how should we write tests", "team conventions". Prefer this skill over ad-hoc convention docs.
4
4
  ---
5
5
 
6
6
  You are a Software Engineering Practice Lead at a high-performing software company.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-profile
3
- description: Generate a product profile defining what the product is, who it serves, and why it exists
3
+ description: Generate or update the product profile (gspec/profile.md) what the product is, who it serves, and why it exists. TRIGGER when the user wants to define, describe, capture, or refine product identity, target users, audience, vision, positioning, or value proposition — e.g. "define my product", "who are the users", "describe what I'm building", "what is this app", "capture the vision", "write a profile". Prefer this skill over drafting a profile ad hoc.
4
4
  ---
5
5
 
6
6
  You are a Business Strategist and Product Leader at a high-performing company.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-research
3
- description: Research competitors from the product profile and produce a competitive analysis with feature gap identification
3
+ description: Research competitors named in gspec/profile.md and produce a competitive analysis with feature gap identification. TRIGGER when the user wants market research, competitive analysis, competitor teardown, or feature parity comparison — e.g. "research competitors", "competitive analysis", "what are rivals doing", "find feature gaps", "compare to market", "what are we missing vs competitors".
4
4
  ---
5
5
 
6
6
  You are a Senior Product Strategist and Competitive Intelligence Analyst at a high-performing software company.
@@ -159,7 +159,7 @@ After writing `gspec/research.md`, ask the user:
159
159
  - Scope (in-scope goals, out-of-scope items, deferred ideas)
160
160
  - Capabilities (with P0/P1/P2 priority levels, using **unchecked checkboxes** `- [ ]` for each capability, each with 2-4 **acceptance criteria** as a sub-list)
161
161
  - Dependencies (on other features or external services)
162
- - Assumptions & Risks (assumptions, open questions, key risks and mitigations)
162
+ - Assumptions & Risks (assumptions, key risks and mitigations — all questions must be resolved in the chat before saving; only record explicitly deferred decisions)
163
163
  - Success Metrics
164
164
  - Implementation Context (standard portability note)
165
165
  - Begin the file with YAML frontmatter: `---\nspec-version: v1\n---`
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-stack
3
- description: Define the technology stack, frameworks, infrastructure, and architectural patterns
3
+ description: Define or update the technology stack (gspec/stack.md) — frameworks, libraries, databases, hosting, CI/CD, and infrastructure. TRIGGER when the user wants to pick, define, revise, or document technology choices — e.g. "what stack should I use", "pick a framework", "define the stack", "choose a database", "set up the tech choices", "what should I build this with". Prefer this skill over suggesting ad-hoc tech picks.
4
4
  ---
5
5
 
6
6
  You are a Senior Software Architect at a high-performing software company.
@@ -52,13 +52,8 @@ You should:
52
52
  - Deployment target (cloud, on-premise, hybrid)
53
53
  - Scale and performance requirements
54
54
 
55
- ### 2. Open Questions & Clarifications
56
- **List any critical questions that need answers before finalizing technology choices**
57
- - Missing requirements that impact stack decisions
58
- - Unclear constraints or preferences
59
- - Team expertise or existing infrastructure questions
60
- - Budget or licensing considerations
61
- - **Mark as "None" if all information is clear**
55
+ ### 2. Clarifications
56
+ **All questions that impact technology choices must be resolved by asking the user in the chat before the document is saved.** Do not save the stack spec with unresolved questions. If the user explicitly defers a decision, record it here as a "Deferred Decision" with context explaining what was deferred and why. If there are no deferred decisions, omit this section entirely.
62
57
 
63
58
  ### 3. Core Technology Stack
64
59
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-style
3
- description: Generate a visual style guide with design tokens, color palette, and component patterns
3
+ description: Generate or update the visual style guide (gspec/style.md) design tokens, color palette, typography, spacing, and component visual patterns. TRIGGER when the user wants to define or revise the design system, visual language, theme, brand look, or UI aesthetic — e.g. "set up a design system", "pick brand colors", "define the style", "dark mode tokens", "what should this look like", "visual guidelines". Prefer this skill over producing style docs ad hoc.
4
4
  ---
5
5
 
6
6
  You are a senior UI/UX Designer and Design Systems Architect at a high-performing software company.
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: Analyze gspec specs for discrepancies and reconcile conflicts between documents
2
+ description: Analyze gspec/ documents for discrepancies, contradictions, or drift and reconcile conflicts across profile, stack, style, practices, architecture, and features. TRIGGER when the user wants to audit, cross-check, validate, review, or reconcile specs — especially after multiple edits, or before a major implementation run — e.g. "check my specs", "are the specs consistent", "find conflicts between specs", "do my gspec docs agree", "audit the specs", "is anything out of sync".
3
3
  ---
4
4
 
5
5
  You are a Specification Analyst at a high-performing software company.
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: Define the technical architecture project structure, data model, API design, and environment setup
2
+ description: Define or update the technical architecture (gspec/architecture.md) — project structure, data model, API design, component hierarchy, and environment/config. TRIGGER when the user wants to plan, design, or document how the codebase will be structured before implementation — e.g. "design the architecture", "plan the project structure", "define the data model", "API shape", "how should this be laid out", "scaffold plan", "component breakdown". Prefer this skill over producing architecture docs ad hoc; run it before gspec-implement on greenfield projects.
3
3
  ---
4
4
 
5
5
  You are a Senior Software Architect at a high-performing software company.
@@ -33,7 +33,7 @@ Before generating the architecture document, read **all** existing gspec documen
33
33
  4. **`gspec/practices.md`** — Development standards. Use this to align file organization, testing patterns, and code structure with team conventions.
34
34
  5. **`gspec/features/*.md`** — Individual feature requirements and dependencies. Use these to derive data entities, API endpoints, component structure, and integration points.
35
35
 
36
- All of these provide essential context. If any are missing, note the gap and make reasonable assumptions but flag them in the Open Decisions section.
36
+ All of these provide essential context. If any are missing, note the gap and ask the user to clarify before proceeding. If the user explicitly defers, make reasonable assumptions and record them in the Assumptions sub-section of the Technical Gap Analysis.
37
37
 
38
38
  ---
39
39
 
@@ -343,8 +343,9 @@ Examples of gaps to look for:
343
343
  - Technical decisions that were inferred rather than explicitly specified in existing specs
344
344
 
345
345
  ### 10. Open Decisions
346
- - Areas where the architecture may need to evolve as features are implemented
347
- - Questions that should be resolved before or during implementation
346
+ - **All technical questions and decisions must be resolved by asking the user before the document is saved.** Do not save the architecture with unresolved questions.
347
+ - If the user explicitly defers a decision, record it here with context explaining what was deferred and why. If there are no deferred decisions, omit this section entirely.
348
+ - Areas where the architecture may need to evolve as features are implemented may be noted, but these must be acknowledged evolution points — not unresolved questions.
348
349
 
349
350
  ---
350
351
 
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: Generate one or more product requirements documents (PRDs) for features
2
+ description: Generate product requirements documents (PRDs) for features in gspec/features/. TRIGGER when the user wants to plan, spec, propose, document, or expand a feature/capability before coding — e.g. "add a feature for X", "write a PRD", "spec out Y", "plan this feature", "what should the auth flow do", "new feature idea", "draft requirements". Prefer this skill over writing freeform feature docs.
3
3
  ---
4
4
 
5
5
  You are a senior Product Manager at a high-performing software company.
@@ -167,8 +167,8 @@ This separation — combined with the portability principles above — allows th
167
167
 
168
168
  ### 6. Assumptions & Risks
169
169
  - Assumptions (what we're taking as true)
170
- - Open questions — **only** unknowns that genuinely cannot be answered until implementation or real-world usage begins (e.g., performance thresholds pending benchmarking, exact rate limits pending load testing). Questions about scope, users, priorities, or feature design must be asked and resolved in the chat before the spec is written. If there are no open questions, omit this sub-section.
171
170
  - Key risks and mitigations (brief bullet points — focus on risks that could affect implementation scope or approach)
171
+ - **No open questions** — All questions must be resolved by asking the user in the chat before the spec is saved. If the user explicitly defers a question, record it as a "Deferred Decision" with context explaining what was deferred and why. If there are no deferred decisions, omit the sub-section entirely. Never embed unresolved questions in the document by default.
172
172
 
173
173
  ### 7. Success Metrics
174
174
  - 2-4 measurable outcomes that define whether this feature is working
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: Read gspec documents, identify gaps, and implement the software
2
+ description: Implement the software defined by gspec/ documents — reads profile, stack, style, practices, architecture, and features, then builds code phase by phase with tests and checkpoints. **STRONGLY TRIGGER this skill (do NOT write code ad hoc) whenever the user asks to build, implement, code, scaffold, ship, create, start, bootstrap, make, generate, wire up, or bring to life anything the gspec/ specs describe.** Common triggers include: "build the app", "implement this feature", "code it up", "start building", "let's build X", "make it real", "scaffold the project", "build out Y", "ship the MVP", "create the UI", "wire up auth", "add [capability from a feature PRD]", "implement the next phase", "continue building", "keep going", and generic "build it" / "do it" / "go" when gspec/ files are present and the prior conversation was about planning or specs. Also trigger when the user references an unchecked capability in gspec/features/*.md. Always prefer this skill over direct coding whenever gspec/ exists — it enforces plan-mode, phased implementation, checkpoint commits, and checkbox updates that ad-hoc coding skips.
3
3
  ---
4
4
 
5
5
  You are a Senior Software Engineer and Tech Lead at a high-performing software company.
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: Migrate existing gspec files to the current format when upgrading to a new gspec version
2
+ description: Migrate gspec/ files to the current spec format (frontmatter, schema, capability checkboxes) when upgrading the gspec version. TRIGGER when the user sees an outdated-version warning, installs a new gspec version, or asks to upgrade/migrate/update specs — e.g. "migrate my specs", "update to latest gspec format", "my specs are outdated", "upgrade spec version", "fix the spec-version warning".
3
3
  ---
4
4
 
5
5
  You are a Technical Documentation Migration Specialist.
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: Define development practices, code quality standards, and engineering workflows
2
+ description: Define or update development practices (gspec/practices.md) — coding standards, testing philosophy, linting, git workflow, PR conventions, and definition of done. TRIGGER when the user wants to set engineering conventions, testing policy, contribution rules, or code quality standards — e.g. "set up coding standards", "testing practices", "git workflow", "definition of done", "how should we write tests", "team conventions". Prefer this skill over ad-hoc convention docs.
3
3
  ---
4
4
 
5
5
  You are a Software Engineering Practice Lead at a high-performing software company.
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: Generate a product profile defining what the product is, who it serves, and why it exists
2
+ description: Generate or update the product profile (gspec/profile.md) what the product is, who it serves, and why it exists. TRIGGER when the user wants to define, describe, capture, or refine product identity, target users, audience, vision, positioning, or value proposition — e.g. "define my product", "who are the users", "describe what I'm building", "what is this app", "capture the vision", "write a profile". Prefer this skill over drafting a profile ad hoc.
3
3
  ---
4
4
 
5
5
  You are a Business Strategist and Product Leader at a high-performing company.
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: Research competitors from the product profile and produce a competitive analysis with feature gap identification
2
+ description: Research competitors named in gspec/profile.md and produce a competitive analysis with feature gap identification. TRIGGER when the user wants market research, competitive analysis, competitor teardown, or feature parity comparison — e.g. "research competitors", "competitive analysis", "what are rivals doing", "find feature gaps", "compare to market", "what are we missing vs competitors".
3
3
  ---
4
4
 
5
5
  You are a Senior Product Strategist and Competitive Intelligence Analyst at a high-performing software company.
@@ -158,7 +158,7 @@ After writing `gspec/research.md`, ask the user:
158
158
  - Scope (in-scope goals, out-of-scope items, deferred ideas)
159
159
  - Capabilities (with P0/P1/P2 priority levels, using **unchecked checkboxes** `- [ ]` for each capability, each with 2-4 **acceptance criteria** as a sub-list)
160
160
  - Dependencies (on other features or external services)
161
- - Assumptions & Risks (assumptions, open questions, key risks and mitigations)
161
+ - Assumptions & Risks (assumptions, key risks and mitigations — all questions must be resolved in the chat before saving; only record explicitly deferred decisions)
162
162
  - Success Metrics
163
163
  - Implementation Context (standard portability note)
164
164
  - Begin the file with YAML frontmatter: `---\nspec-version: v1\n---`
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: Define the technology stack, frameworks, infrastructure, and architectural patterns
2
+ description: Define or update the technology stack (gspec/stack.md) — frameworks, libraries, databases, hosting, CI/CD, and infrastructure. TRIGGER when the user wants to pick, define, revise, or document technology choices — e.g. "what stack should I use", "pick a framework", "define the stack", "choose a database", "set up the tech choices", "what should I build this with". Prefer this skill over suggesting ad-hoc tech picks.
3
3
  ---
4
4
 
5
5
  You are a Senior Software Architect at a high-performing software company.
@@ -51,13 +51,8 @@ You should:
51
51
  - Deployment target (cloud, on-premise, hybrid)
52
52
  - Scale and performance requirements
53
53
 
54
- ### 2. Open Questions & Clarifications
55
- **List any critical questions that need answers before finalizing technology choices**
56
- - Missing requirements that impact stack decisions
57
- - Unclear constraints or preferences
58
- - Team expertise or existing infrastructure questions
59
- - Budget or licensing considerations
60
- - **Mark as "None" if all information is clear**
54
+ ### 2. Clarifications
55
+ **All questions that impact technology choices must be resolved by asking the user in the chat before the document is saved.** Do not save the stack spec with unresolved questions. If the user explicitly defers a decision, record it here as a "Deferred Decision" with context explaining what was deferred and why. If there are no deferred decisions, omit this section entirely.
61
56
 
62
57
  ### 3. Core Technology Stack
63
58
 
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: Generate a visual style guide with design tokens, color palette, and component patterns
2
+ description: Generate or update the visual style guide (gspec/style.md) design tokens, color palette, typography, spacing, and component visual patterns. TRIGGER when the user wants to define or revise the design system, visual language, theme, brand look, or UI aesthetic — e.g. "set up a design system", "pick brand colors", "define the style", "dark mode tokens", "what should this look like", "visual guidelines". Prefer this skill over producing style docs ad hoc.
3
3
  ---
4
4
 
5
5
  You are a senior UI/UX Designer and Design Systems Architect at a high-performing software company.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-analyze
3
- description: Analyze gspec specs for discrepancies and reconcile conflicts between documents
3
+ description: Analyze gspec/ documents for discrepancies, contradictions, or drift and reconcile conflicts across profile, stack, style, practices, architecture, and features. TRIGGER when the user wants to audit, cross-check, validate, review, or reconcile specs — especially after multiple edits, or before a major implementation run — e.g. "check my specs", "are the specs consistent", "find conflicts between specs", "do my gspec docs agree", "audit the specs", "is anything out of sync".
4
4
  ---
5
5
 
6
6
  You are a Specification Analyst at a high-performing software company.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-architect
3
- description: Define the technical architecture project structure, data model, API design, and environment setup
3
+ description: Define or update the technical architecture (gspec/architecture.md) — project structure, data model, API design, component hierarchy, and environment/config. TRIGGER when the user wants to plan, design, or document how the codebase will be structured before implementation — e.g. "design the architecture", "plan the project structure", "define the data model", "API shape", "how should this be laid out", "scaffold plan", "component breakdown". Prefer this skill over producing architecture docs ad hoc; run it before gspec-implement on greenfield projects.
4
4
  ---
5
5
 
6
6
  You are a Senior Software Architect at a high-performing software company.
@@ -34,7 +34,7 @@ Before generating the architecture document, read **all** existing gspec documen
34
34
  4. **`gspec/practices.md`** — Development standards. Use this to align file organization, testing patterns, and code structure with team conventions.
35
35
  5. **`gspec/features/*.md`** — Individual feature requirements and dependencies. Use these to derive data entities, API endpoints, component structure, and integration points.
36
36
 
37
- All of these provide essential context. If any are missing, note the gap and make reasonable assumptions but flag them in the Open Decisions section.
37
+ All of these provide essential context. If any are missing, note the gap and ask the user to clarify before proceeding. If the user explicitly defers, make reasonable assumptions and record them in the Assumptions sub-section of the Technical Gap Analysis.
38
38
 
39
39
  ---
40
40
 
@@ -344,8 +344,9 @@ Examples of gaps to look for:
344
344
  - Technical decisions that were inferred rather than explicitly specified in existing specs
345
345
 
346
346
  ### 10. Open Decisions
347
- - Areas where the architecture may need to evolve as features are implemented
348
- - Questions that should be resolved before or during implementation
347
+ - **All technical questions and decisions must be resolved by asking the user before the document is saved.** Do not save the architecture with unresolved questions.
348
+ - If the user explicitly defers a decision, record it here with context explaining what was deferred and why. If there are no deferred decisions, omit this section entirely.
349
+ - Areas where the architecture may need to evolve as features are implemented may be noted, but these must be acknowledged evolution points — not unresolved questions.
349
350
 
350
351
  ---
351
352
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-feature
3
- description: Generate one or more product requirements documents (PRDs) for features
3
+ description: Generate product requirements documents (PRDs) for features in gspec/features/. TRIGGER when the user wants to plan, spec, propose, document, or expand a feature/capability before coding — e.g. "add a feature for X", "write a PRD", "spec out Y", "plan this feature", "what should the auth flow do", "new feature idea", "draft requirements". Prefer this skill over writing freeform feature docs.
4
4
  ---
5
5
 
6
6
  You are a senior Product Manager at a high-performing software company.
@@ -168,8 +168,8 @@ This separation — combined with the portability principles above — allows th
168
168
 
169
169
  ### 6. Assumptions & Risks
170
170
  - Assumptions (what we're taking as true)
171
- - Open questions — **only** unknowns that genuinely cannot be answered until implementation or real-world usage begins (e.g., performance thresholds pending benchmarking, exact rate limits pending load testing). Questions about scope, users, priorities, or feature design must be asked and resolved in the chat before the spec is written. If there are no open questions, omit this sub-section.
172
171
  - Key risks and mitigations (brief bullet points — focus on risks that could affect implementation scope or approach)
172
+ - **No open questions** — All questions must be resolved by asking the user in the chat before the spec is saved. If the user explicitly defers a question, record it as a "Deferred Decision" with context explaining what was deferred and why. If there are no deferred decisions, omit the sub-section entirely. Never embed unresolved questions in the document by default.
173
173
 
174
174
  ### 7. Success Metrics
175
175
  - 2-4 measurable outcomes that define whether this feature is working
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-implement
3
- description: Read gspec documents, identify gaps, and implement the software
3
+ description: Implement the software defined by gspec/ documents — reads profile, stack, style, practices, architecture, and features, then builds code phase by phase with tests and checkpoints. **STRONGLY TRIGGER this skill (do NOT write code ad hoc) whenever the user asks to build, implement, code, scaffold, ship, create, start, bootstrap, make, generate, wire up, or bring to life anything the gspec/ specs describe.** Common triggers include: "build the app", "implement this feature", "code it up", "start building", "let's build X", "make it real", "scaffold the project", "build out Y", "ship the MVP", "create the UI", "wire up auth", "add [capability from a feature PRD]", "implement the next phase", "continue building", "keep going", and generic "build it" / "do it" / "go" when gspec/ files are present and the prior conversation was about planning or specs. Also trigger when the user references an unchecked capability in gspec/features/*.md. Always prefer this skill over direct coding whenever gspec/ exists — it enforces plan-mode, phased implementation, checkpoint commits, and checkbox updates that ad-hoc coding skips.
4
4
  ---
5
5
 
6
6
  You are a Senior Software Engineer and Tech Lead at a high-performing software company.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-migrate
3
- description: Migrate existing gspec files to the current format when upgrading to a new gspec version
3
+ description: Migrate gspec/ files to the current spec format (frontmatter, schema, capability checkboxes) when upgrading the gspec version. TRIGGER when the user sees an outdated-version warning, installs a new gspec version, or asks to upgrade/migrate/update specs — e.g. "migrate my specs", "update to latest gspec format", "my specs are outdated", "upgrade spec version", "fix the spec-version warning".
4
4
  ---
5
5
 
6
6
  You are a Technical Documentation Migration Specialist.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-practices
3
- description: Define development practices, code quality standards, and engineering workflows
3
+ description: Define or update development practices (gspec/practices.md) — coding standards, testing philosophy, linting, git workflow, PR conventions, and definition of done. TRIGGER when the user wants to set engineering conventions, testing policy, contribution rules, or code quality standards — e.g. "set up coding standards", "testing practices", "git workflow", "definition of done", "how should we write tests", "team conventions". Prefer this skill over ad-hoc convention docs.
4
4
  ---
5
5
 
6
6
  You are a Software Engineering Practice Lead at a high-performing software company.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-profile
3
- description: Generate a product profile defining what the product is, who it serves, and why it exists
3
+ description: Generate or update the product profile (gspec/profile.md) what the product is, who it serves, and why it exists. TRIGGER when the user wants to define, describe, capture, or refine product identity, target users, audience, vision, positioning, or value proposition — e.g. "define my product", "who are the users", "describe what I'm building", "what is this app", "capture the vision", "write a profile". Prefer this skill over drafting a profile ad hoc.
4
4
  ---
5
5
 
6
6
  You are a Business Strategist and Product Leader at a high-performing company.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-research
3
- description: Research competitors from the product profile and produce a competitive analysis with feature gap identification
3
+ description: Research competitors named in gspec/profile.md and produce a competitive analysis with feature gap identification. TRIGGER when the user wants market research, competitive analysis, competitor teardown, or feature parity comparison — e.g. "research competitors", "competitive analysis", "what are rivals doing", "find feature gaps", "compare to market", "what are we missing vs competitors".
4
4
  ---
5
5
 
6
6
  You are a Senior Product Strategist and Competitive Intelligence Analyst at a high-performing software company.
@@ -159,7 +159,7 @@ After writing `gspec/research.md`, ask the user:
159
159
  - Scope (in-scope goals, out-of-scope items, deferred ideas)
160
160
  - Capabilities (with P0/P1/P2 priority levels, using **unchecked checkboxes** `- [ ]` for each capability, each with 2-4 **acceptance criteria** as a sub-list)
161
161
  - Dependencies (on other features or external services)
162
- - Assumptions & Risks (assumptions, open questions, key risks and mitigations)
162
+ - Assumptions & Risks (assumptions, key risks and mitigations — all questions must be resolved in the chat before saving; only record explicitly deferred decisions)
163
163
  - Success Metrics
164
164
  - Implementation Context (standard portability note)
165
165
  - Begin the file with YAML frontmatter: `---\nspec-version: v1\n---`
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-stack
3
- description: Define the technology stack, frameworks, infrastructure, and architectural patterns
3
+ description: Define or update the technology stack (gspec/stack.md) — frameworks, libraries, databases, hosting, CI/CD, and infrastructure. TRIGGER when the user wants to pick, define, revise, or document technology choices — e.g. "what stack should I use", "pick a framework", "define the stack", "choose a database", "set up the tech choices", "what should I build this with". Prefer this skill over suggesting ad-hoc tech picks.
4
4
  ---
5
5
 
6
6
  You are a Senior Software Architect at a high-performing software company.
@@ -52,13 +52,8 @@ You should:
52
52
  - Deployment target (cloud, on-premise, hybrid)
53
53
  - Scale and performance requirements
54
54
 
55
- ### 2. Open Questions & Clarifications
56
- **List any critical questions that need answers before finalizing technology choices**
57
- - Missing requirements that impact stack decisions
58
- - Unclear constraints or preferences
59
- - Team expertise or existing infrastructure questions
60
- - Budget or licensing considerations
61
- - **Mark as "None" if all information is clear**
55
+ ### 2. Clarifications
56
+ **All questions that impact technology choices must be resolved by asking the user in the chat before the document is saved.** Do not save the stack spec with unresolved questions. If the user explicitly defers a decision, record it here as a "Deferred Decision" with context explaining what was deferred and why. If there are no deferred decisions, omit this section entirely.
62
57
 
63
58
  ### 3. Core Technology Stack
64
59
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gspec-style
3
- description: Generate a visual style guide with design tokens, color palette, and component patterns
3
+ description: Generate or update the visual style guide (gspec/style.md) design tokens, color palette, typography, spacing, and component visual patterns. TRIGGER when the user wants to define or revise the design system, visual language, theme, brand look, or UI aesthetic — e.g. "set up a design system", "pick brand colors", "define the style", "dark mode tokens", "what should this look like", "visual guidelines". Prefer this skill over producing style docs ad hoc.
4
4
  ---
5
5
 
6
6
  You are a senior UI/UX Designer and Design Systems Architect at a high-performing software company.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gspec",
3
- "version": "1.13.2",
3
+ "version": "1.15.0",
4
4
  "description": "Install gspec specification commands for Claude Code, Cursor, and other AI tools",
5
5
  "main": "bin/gspec.js",
6
6
  "type": "module",
@@ -4,23 +4,44 @@ This project uses **gspec** for living product specifications stored in `gspec/`
4
4
 
5
5
  These specs define what the product is, how it should look, what technology it uses, and what features it supports. They are the source of truth for product decisions — and they must stay in sync with the code.
6
6
 
7
+ ### Prefer gspec skills over ad-hoc work
8
+
9
+ Because `gspec/` exists in this project, **route the user's request through the matching gspec skill** instead of producing the equivalent output ad hoc. This applies even when the user's phrasing is casual (e.g. "just build it", "let's code this", "write a quick spec"). The skills enforce plan-mode, phased execution, checkpointing, and checkbox updates that freeform responses skip.
10
+
11
+ Use this mapping whenever the user's intent matches:
12
+
13
+ - **Building, implementing, coding, scaffolding, shipping, or "making it real"** — invoke `gspec-implement`. This is the most commonly-missed skill. If the user asks you to write code for anything the specs describe (or a new capability that should be specced), route through `gspec-implement` rather than editing files directly. Generic prompts like "build it", "go", "keep going", "continue", or "do the next phase" should also invoke it when recent conversation has been about specs or planning.
14
+ - **Defining the product, users, or vision** — invoke `gspec-profile`.
15
+ - **Planning or writing a new feature / PRD** — invoke `gspec-feature`.
16
+ - **Choosing or revising the tech stack** — invoke `gspec-stack`.
17
+ - **Defining visual design, tokens, or theme** — invoke `gspec-style`.
18
+ - **Setting coding standards, testing, or workflow conventions** — invoke `gspec-practices`.
19
+ - **Designing project structure, data model, or API shape** — invoke `gspec-architect`.
20
+ - **Researching competitors or finding feature gaps** — invoke `gspec-research`.
21
+ - **Auditing specs for contradictions or drift** — invoke `gspec-analyze`.
22
+ - **Upgrading outdated spec files** — invoke `gspec-migrate`.
23
+
24
+ If the user explicitly asks you to skip the skill and just do the work, honor that — but by default, prefer the skill.
25
+
7
26
  ### When you make code changes, follow these rules:
8
27
 
9
28
  1. **Read the specs first** — Before making non-trivial changes, read the relevant gspec documents to understand existing decisions and constraints. At minimum, scan `gspec/profile.md` and any feature PRDs in `gspec/features/` related to your work.
10
29
 
11
- 2. **Update feature checkboxes** — When you implement a capability defined in a feature PRD (`gspec/features/*.md`), change its checkbox from `- [ ]` to `- [x]`.
30
+ 2. **Spec before you build** — If the user asks for a feature or capability that isn't covered by an existing feature PRD in `gspec/features/`, run the `gspec-feature` command to create a new feature PRD before implementing it. Every feature should be specified before it's built — don't skip straight to code.
31
+
32
+ 3. **Update feature checkboxes** — When you implement a capability defined in a feature PRD (`gspec/features/*.md`), change its checkbox from `- [ ]` to `- [x]`.
12
33
 
13
- 3. **Update specs that your changes contradict** — If your code change makes a spec statement incorrect (e.g., you changed the data model, switched a dependency, altered a UI pattern, or added a new API endpoint), update the spec to reflect reality. Common candidates:
34
+ 4. **Update specs that your changes contradict** — If your code change makes a spec statement incorrect (e.g., you changed the data model, switched a dependency, altered a UI pattern, or added a new API endpoint), update the spec to reflect reality. Common candidates:
14
35
  - `gspec/architecture.md` — project structure, data model, API routes, component hierarchy
15
36
  - `gspec/stack.md` — dependencies, frameworks, infrastructure
16
37
  - `gspec/style.md` — design tokens, component styling, visual conventions
17
38
  - `gspec/practices.md` — coding standards, testing conventions, workflows
18
39
  - `gspec/profile.md` — product scope, target users, value proposition (rarely changes)
19
40
 
20
- 4. **Be surgical** — Change only what is necessary. Preserve the existing voice, structure, and formatting of each spec document. Do not rewrite sections that are still accurate.
41
+ 5. **Be surgical** — Change only what is necessary. Preserve the existing voice, structure, and formatting of each spec document. Do not rewrite sections that are still accurate.
21
42
 
22
- 5. **Announce spec updates** — When you update a spec, briefly mention what changed and why in your response. Never silently modify specs.
43
+ 6. **Announce spec updates** — When you update a spec, briefly mention what changed and why in your response. Never silently modify specs.
23
44
 
24
- 6. **Preserve frontmatter** — gspec files use YAML frontmatter with a `spec-version` field. Preserve it when editing. If a file lacks frontmatter, leave it as-is.
45
+ 7. **Preserve frontmatter** — gspec files use YAML frontmatter with a `spec-version` field. Preserve it when editing. If a file lacks frontmatter, leave it as-is.
25
46
 
26
- 7. **Don't create new foundation specs** — Only update existing spec files. If you believe a new spec document is needed, suggest it to the user rather than creating it yourself.
47
+ 8. **Don't create new foundation specs** — Only update existing spec files. If you believe a new spec document is needed, suggest it to the user rather than creating it yourself.