@eskoubar95/spec 0.1.4 → 0.1.5

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 (37) hide show
  1. package/dist/lib/copy-template.js +6 -6
  2. package/dist/lib/copy-template.js.map +1 -1
  3. package/package.json +2 -2
  4. package/template/.cursor/MCP-SETUP.md +16 -0
  5. package/template/.cursor/agents/batch-runner.md +52 -0
  6. package/template/.cursor/agents/verifier.md +40 -0
  7. package/template/.cursor/commands/_shared/branch-detection.md +78 -0
  8. package/template/.cursor/commands/_shared/git-workflow.md +3 -1
  9. package/template/.cursor/commands/_shared/github-workflows.md +7 -5
  10. package/template/.cursor/commands/_shared/helper-metadata.md +20 -0
  11. package/template/.cursor/commands/_shared/linear-automation.md +14 -6
  12. package/template/.cursor/commands/_shared/linear-helpers.md +26 -14
  13. package/template/.cursor/commands/_shared/pr-description.md +11 -2
  14. package/template/.cursor/commands/spec/init.md +33 -0
  15. package/template/.cursor/commands/spec/plan.md +43 -9
  16. package/template/.cursor/commands/spec/refine.md +7 -0
  17. package/template/.cursor/commands/task/batch.md +112 -0
  18. package/template/.cursor/commands/task/start.md +28 -6
  19. package/template/.cursor/commands/task/validate.md +19 -15
  20. package/template/.cursor/scripts/{validate-helpers.js → validate-helpers.cjs} +30 -32
  21. package/template/.cursor/skills/sdd-commit-unit/SKILL.md +42 -0
  22. package/template/.cursor/skills/sdd-design-system-bootstrap/SKILL.md +35 -0
  23. package/template/.cursor/skills/sdd-git-default-branch/SKILL.md +49 -0
  24. package/template/.cursor/skills/sdd-pr-create-or-update/SKILL.md +41 -0
  25. package/template/.cursor/skills/sdd-task-preflight/SKILL.md +47 -0
  26. package/template/.cursor/skills/sdd-validation-suite/SKILL.md +47 -0
  27. package/template/spec/00-root-spec.md +9 -0
  28. package/template/spec/templates/02-architecture.md +64 -0
  29. package/template/spec/templates/06-acceptance.md +59 -0
  30. package/template/spec/templates/07-design-system.md +145 -0
  31. package/template/spec/templates/08-infrastructure.md +76 -0
  32. package/template/spec/templates/09-sitemap.md +50 -0
  33. package/template/work/backlog/tasks.local.md +6 -0
  34. package/template/work/linear/FALLBACK-STRATEGY.md +84 -0
  35. package/template/work/linear/LABEL-MAPPING-GUIDE.md +72 -0
  36. package/template/work/linear/SETUP.md +75 -0
  37. package/template/work/linear/sync-config.md +86 -0
@@ -0,0 +1,75 @@
1
+ # Linear Setup Guide
2
+
3
+ This guide walks you through setting up Linear integration with the SDD workflow.
4
+
5
+ ## Prerequisites
6
+
7
+ - A Linear workspace + team
8
+ - Linear MCP configured in Cursor
9
+ - Access to Linear Settings
10
+
11
+ ## Hard stop (recommended)
12
+
13
+ If you enable Linear mode (`MODE=linear`), `/spec/plan` treats missing required status mappings as a **hard stop** for Linear sync:
14
+
15
+ - Required keys in `work/linear/sync-config.md`:
16
+ - `STATUS_BACKLOG`
17
+ - `STATUS_IN_PROGRESS`
18
+ - `STATUS_DONE`
19
+ - `STATUS_BLOCKED`
20
+
21
+ ## Step 1: Create/choose a Linear team
22
+
23
+ 1. Create a team (if needed)
24
+ 2. Note the team ID for `work/linear/sync-config.md` (optional)
25
+
26
+ ## Step 2: Ensure statuses exist
27
+
28
+ 1. Go to Linear Settings → Statuses
29
+ 2. Ensure you have statuses that match your desired mapping (defaults: Backlog, In Progress, Done, Blocked)
30
+ 3. Use status **names** in `sync-config.md` (recommended), or IDs if you need fixed UUIDs
31
+
32
+ ## Step 3: Ensure labels exist (optional)
33
+
34
+ Labels can be created automatically when missing, but you can also create them manually in Linear Settings → Labels.
35
+
36
+ ## Step 4: Configure sync config
37
+
38
+ 1. Create/update `work/linear/sync-config.md`
39
+ 2. Set `MODE=linear`
40
+ 3. Optionally set:
41
+ - `MCP_CONNECTION_NAME` (if you have multiple Linear MCP connections)
42
+ - `DEFAULT_TEAM_ID`
43
+ 4. Set status mapping keys:
44
+ - `STATUS_BACKLOG`, `STATUS_IN_PROGRESS`, `STATUS_DONE`, `STATUS_BLOCKED`
45
+ 5. Enable optional automation:
46
+ - `AUTO_ASSIGN_LABELS=true`
47
+ - `AUTO_CREATE_PROJECTS=true`
48
+ - `AUTO_CREATE_DOCUMENTS=true`
49
+
50
+ ## Step 5: Tag-driven label mapping (recommended)
51
+
52
+ Use `**Tags:**` in `work/backlog/tasks.local.md` to drive labels:
53
+ - See `work/linear/LABEL-MAPPING-GUIDE.md`
54
+
55
+ ## Step 6: Test
56
+
57
+ - Run `/spec/plan` (creates projects/issues/docs if enabled)
58
+ - Run `/task/start` and `/task/validate` on a Linear issue ID to verify status + comments
59
+
60
+ ## Troubleshooting
61
+
62
+ - Fallback behavior: `work/linear/FALLBACK-STRATEGY.md`
63
+
64
+ ## What SDD can do automatically (once configured)
65
+
66
+ - **/spec/plan**: create milestone projects (optional), create/update task issues, create/update spec documents (optional)
67
+ - **/task/start**: update status + add a structured “Started …” comment
68
+ - **/task/validate**: update status + add a structured “Validated …” comment
69
+
70
+ ## What the user must do manually
71
+
72
+ - Configure the Linear MCP connection in Cursor (and provide `MCP_CONNECTION_NAME` if multiple)
73
+ - Ensure your desired statuses exist in Linear (or adjust mappings)
74
+ - Decide label taxonomy (recommended: `**Tags:**` in `work/backlog/tasks.local.md` → labels; see `LABEL-MAPPING-GUIDE.md`)
75
+
@@ -0,0 +1,86 @@
1
+ # Linear Sync Configuration
2
+
3
+ This file configures Linear MCP integration with the SDD workflow.
4
+
5
+ ## Mode
6
+
7
+ Create this file and set:
8
+
9
+ ```
10
+ MODE=linear
11
+ ```
12
+
13
+ If the file does not exist (or MODE is not `linear`), the system runs in local mode only.
14
+
15
+ ## MCP Connection Configuration (optional)
16
+
17
+ If you have multiple Linear MCP connections in Cursor, specify which one to use:
18
+
19
+ ```
20
+ MCP_CONNECTION_NAME=linear
21
+ ```
22
+
23
+ ## Team Configuration (optional)
24
+
25
+ Assign projects/issues to a default team:
26
+
27
+ ```
28
+ DEFAULT_TEAM_ID=[team-id]
29
+ ```
30
+
31
+ ## Status Mapping
32
+
33
+ Map SDD statuses to Linear statuses (names recommended):
34
+
35
+ **Required when `MODE=linear` (hard requirement for `/spec/plan` Linear sync):**
36
+ - `STATUS_BACKLOG`
37
+ - `STATUS_IN_PROGRESS`
38
+ - `STATUS_DONE`
39
+ - `STATUS_BLOCKED`
40
+
41
+ ```
42
+ STATUS_BACKLOG=Backlog
43
+ STATUS_IN_PROGRESS=In Progress
44
+ STATUS_DONE=Done
45
+ STATUS_BLOCKED=Blocked
46
+ ```
47
+
48
+ ## Labels
49
+
50
+ Enable tag-driven label assignment:
51
+
52
+ ```
53
+ AUTO_ASSIGN_LABELS=true
54
+ LABEL_PREFIX=
55
+ ```
56
+
57
+ See `work/linear/LABEL-MAPPING-GUIDE.md`.
58
+
59
+ ## Projects
60
+
61
+ Enable milestone → Linear project automation:
62
+
63
+ ```
64
+ AUTO_CREATE_PROJECTS=true
65
+ ```
66
+
67
+ ## Documents
68
+
69
+ Enable spec → Linear document automation:
70
+
71
+ ```
72
+ AUTO_CREATE_DOCUMENTS=true
73
+ ```
74
+
75
+ ## Cycles (optional)
76
+
77
+ ```
78
+ USE_CYCLES=false
79
+ ACTIVE_CYCLE_ID=[cycle-id]
80
+ ```
81
+
82
+ ## Fallbacks + troubleshooting
83
+
84
+ - `work/linear/FALLBACK-STRATEGY.md`
85
+ - `work/linear/SETUP.md`
86
+