@polymorphism-tech/morph-spec 4.8.18 → 4.9.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 (138) hide show
  1. package/CLAUDE.md +98 -0
  2. package/README.md +2 -2
  3. package/bin/morph-spec.js +15 -56
  4. package/bin/task-manager.js +115 -14
  5. package/bin/validate.js +67 -33
  6. package/claude-plugin.json +1 -1
  7. package/docs/CHEATSHEET.md +201 -203
  8. package/docs/QUICKSTART.md +2 -2
  9. package/framework/CLAUDE.md +21 -0
  10. package/framework/agents.json +758 -164
  11. package/framework/hooks/claude-code/post-tool-use/context-refresh.js +1 -1
  12. package/framework/hooks/claude-code/post-tool-use/dispatch.js +2 -2
  13. package/framework/hooks/claude-code/post-tool-use/skill-reminder.js +155 -0
  14. package/framework/hooks/claude-code/pre-tool-use/protect-spec-files.js +1 -1
  15. package/framework/hooks/claude-code/session-start/inject-morph-context.js +71 -2
  16. package/framework/hooks/claude-code/statusline.py +76 -30
  17. package/framework/hooks/claude-code/user-prompt/set-terminal-title.js +14 -6
  18. package/framework/hooks/shared/activity-logger.js +0 -24
  19. package/framework/hooks/shared/phase-utils.js +3 -0
  20. package/framework/hooks/shared/skill-reminder-helpers.js +79 -0
  21. package/framework/hooks/shared/stale-task-reset.js +57 -0
  22. package/framework/hooks/shared/state-reader.js +2 -2
  23. package/framework/hooks/shared/worktree-helpers.js +53 -0
  24. package/framework/phases.json +40 -8
  25. package/framework/skills/level-0-meta/brainstorming/SKILL.md +1 -1
  26. package/framework/skills/level-0-meta/code-review/SKILL.md +1 -1
  27. package/framework/skills/level-0-meta/code-review-nextjs/SKILL.md +163 -163
  28. package/framework/skills/level-0-meta/frontend-review/SKILL.md +5 -5
  29. package/framework/skills/level-0-meta/morph-checklist/SKILL.md +2 -2
  30. package/framework/skills/level-0-meta/morph-init/SKILL.md +5 -5
  31. package/framework/skills/level-0-meta/morph-replicate/SKILL.md +4 -4
  32. package/framework/skills/level-0-meta/morph-replicate/references/blazor-html-mapping.md +1 -1
  33. package/framework/skills/level-0-meta/post-implementation/SKILL.md +59 -12
  34. package/framework/skills/level-0-meta/simulation-checklist/SKILL.md +1 -1
  35. package/framework/skills/level-0-meta/terminal-title/SKILL.md +1 -1
  36. package/framework/skills/level-0-meta/tool-usage-guide/SKILL.md +1 -1
  37. package/framework/skills/level-0-meta/tool-usage-guide/references/tools-per-phase.md +6 -5
  38. package/framework/skills/level-0-meta/verification-before-completion/SKILL.md +1 -1
  39. package/framework/skills/level-1-workflows/phase-clarify/SKILL.md +215 -189
  40. package/framework/skills/level-1-workflows/phase-codebase-analysis/SKILL.md +251 -251
  41. package/framework/skills/level-1-workflows/phase-design/SKILL.md +382 -365
  42. package/framework/skills/level-1-workflows/phase-implement/SKILL.md +492 -450
  43. package/framework/skills/level-1-workflows/phase-setup/SKILL.md +194 -190
  44. package/framework/skills/level-1-workflows/phase-tasks/SKILL.md +270 -270
  45. package/framework/skills/level-1-workflows/phase-uiux/SKILL.md +285 -285
  46. package/framework/standards/STANDARDS.json +640 -88
  47. package/framework/standards/infrastructure/vercel/vercel-database.md +106 -0
  48. package/framework/templates/REGISTRY.json +1825 -1909
  49. package/framework/templates/context/CONTEXT-FEATURE.md +276 -276
  50. package/framework/templates/docs/onboarding.md +1 -5
  51. package/framework/workflows/configs/nodejs-cli.json +40 -0
  52. package/package.json +2 -6
  53. package/src/commands/agents/dispatch-agents.js +55 -4
  54. package/src/commands/project/doctor.js +16 -47
  55. package/src/commands/project/init.js +1 -1
  56. package/src/commands/project/status.js +2 -2
  57. package/src/commands/project/update.js +381 -365
  58. package/src/commands/project/worktree.js +154 -0
  59. package/src/commands/state/advance-phase.js +120 -30
  60. package/src/commands/state/approve.js +2 -2
  61. package/src/commands/state/index.js +7 -8
  62. package/src/commands/state/phase-runner.js +1 -1
  63. package/src/commands/state/state.js +61 -6
  64. package/src/commands/tasks/task.js +78 -99
  65. package/src/commands/templates/template-render.js +93 -173
  66. package/src/commands/trust/trust.js +26 -21
  67. package/src/core/paths/output-schema.js +15 -0
  68. package/src/core/state/state-manager.js +28 -54
  69. package/src/core/workflows/workflow-detector.js +9 -87
  70. package/src/lib/phase-chain/phase-validator.js +330 -0
  71. package/src/lib/stack/stack-profile.js +88 -0
  72. package/src/lib/tasks/task-classifier.js +16 -0
  73. package/src/lib/tasks/test-runner.js +77 -0
  74. package/src/lib/trust/trust-manager.js +32 -144
  75. package/src/lib/validators/spec-validator.js +58 -4
  76. package/src/lib/validators/validation-runner.js +23 -11
  77. package/src/scripts/setup-infra.js +240 -224
  78. package/src/utils/agents-installer.js +2 -2
  79. package/src/utils/banner.js +1 -1
  80. package/src/utils/claude-settings-manager.js +1 -1
  81. package/src/utils/file-copier.js +1 -0
  82. package/src/utils/hooks-installer.js +258 -8
  83. package/framework/hooks/dev/check-sync-health.js +0 -117
  84. package/framework/hooks/dev/guard-version-numbers.js +0 -57
  85. package/framework/hooks/dev/sync-standards-registry.js +0 -60
  86. package/framework/hooks/dev/sync-template-registry.js +0 -60
  87. package/framework/hooks/dev/validate-skill-format.js +0 -70
  88. package/framework/hooks/dev/validate-standard-format.js +0 -73
  89. package/framework/templates/meta-prompts/hops/hop-retry.md +0 -78
  90. package/framework/templates/meta-prompts/hops/hop-validation.md +0 -97
  91. package/framework/templates/meta-prompts/hops/hop-wrapper.md +0 -36
  92. package/framework/workflows/configs/design-impl.json +0 -49
  93. package/framework/workflows/configs/express.json +0 -45
  94. package/framework/workflows/configs/fast-track.json +0 -42
  95. package/framework/workflows/configs/full-morph.json +0 -79
  96. package/framework/workflows/configs/fusion.json +0 -39
  97. package/framework/workflows/configs/long-running.json +0 -33
  98. package/framework/workflows/configs/spec-only.json +0 -43
  99. package/framework/workflows/configs/ui-refresh.json +0 -49
  100. package/framework/workflows/configs/zero-touch.json +0 -82
  101. package/src/commands/project/monitor.js +0 -295
  102. package/src/commands/project/tutorial.js +0 -115
  103. package/src/commands/state/validate-phase.js +0 -238
  104. package/src/commands/templates/generate-contracts.js +0 -445
  105. package/src/core/orchestrator.js +0 -171
  106. package/src/core/registry/command-registry.js +0 -28
  107. package/src/core/registry/index.js +0 -8
  108. package/src/core/registry/validator-registry.js +0 -204
  109. package/src/core/templates/template-validator.js +0 -296
  110. package/src/generator/config-generator.js +0 -206
  111. package/src/generator/templates/config.json.template +0 -40
  112. package/src/generator/templates/project.md.template +0 -67
  113. package/src/lib/agents/micro-agent-factory.js +0 -161
  114. package/src/lib/analysis/complexity-analyzer.js +0 -441
  115. package/src/lib/analysis/index.js +0 -7
  116. package/src/lib/analytics/analytics-engine.js +0 -345
  117. package/src/lib/checkpoints/checkpoint-hooks.js +0 -298
  118. package/src/lib/checkpoints/index.js +0 -7
  119. package/src/lib/context/context-bundler.js +0 -241
  120. package/src/lib/context/context-optimizer.js +0 -212
  121. package/src/lib/context/context-tracker.js +0 -273
  122. package/src/lib/context/core-four-tracker.js +0 -201
  123. package/src/lib/context/mcp-optimizer.js +0 -200
  124. package/src/lib/execution/fusion-executor.js +0 -304
  125. package/src/lib/execution/parallel-executor.js +0 -270
  126. package/src/lib/hooks/stop-hook-executor.js +0 -286
  127. package/src/lib/hops/hop-composer.js +0 -221
  128. package/src/lib/phase-chain/eligibility-checker.js +0 -243
  129. package/src/lib/threads/thread-coordinator.js +0 -238
  130. package/src/lib/threads/thread-manager.js +0 -317
  131. package/src/lib/tracking/artifact-trail.js +0 -202
  132. package/src/scanner/project-scanner.js +0 -242
  133. package/src/ui/diff-display.js +0 -91
  134. package/src/ui/interactive-wizard.js +0 -96
  135. package/src/ui/user-review.js +0 -211
  136. package/src/ui/wizard-questions.js +0 -188
  137. package/src/utils/color-utils.js +0 -70
  138. package/src/utils/process-handler.js +0 -97
@@ -1,203 +1,201 @@
1
- # morph-spec Cheat Sheet
2
-
3
- ## Setup
4
-
5
- ```bash
6
- npm install -g @polymorphism-tech/morph-spec # install globally
7
- morph-spec init # initialize project
8
- morph-spec init --wizard # interactive wizard
9
- morph-spec init --force # overwrite existing
10
- morph-spec update # sync framework files
11
- morph-spec doctor # health check
12
- morph-spec --version
13
- ```
14
-
15
- ---
16
-
17
- ## Phase workflow
18
-
19
- ```
20
- proposal → setup → [uiux] → design → clarify → tasks → implement → [sync]
21
- ```
22
-
23
- Phases in brackets are optional.
24
-
25
- | Phase | Directory | Output files | Gate |
26
- |-------|-----------|--------------|------|
27
- | proposal | `0-proposal/` | `proposal.md` | ✅ Approval |
28
- | setup | *(no output)* | context loaded | — |
29
- | uiux *(optional)* | `2-ui/` | `design-system.md`, `mockups.md`, `components.md`, `flows.md` | ✅ Approval |
30
- | design | `1-design/` | `spec.md`, `contracts.cs`, `decisions.md` | ✅ Approval |
31
- | clarify | `1-design/` | spec updated | — |
32
- | tasks | `3-tasks/` | `tasks.md` | ✅ Approval |
33
- | implement | `4-implement/` | code + `recap.md` | — |
34
- | sync *(optional)* | `.morph/context/` | standards updated | — |
35
-
36
- ---
37
-
38
- ## Slash commands (Claude Code)
39
-
40
- | Command | Description |
41
- |---------|-------------|
42
- | `/morph-proposal {feature}` | Full spec pipeline — phases 0–4 with approval gates |
43
- | `/morph-apply {feature}` | Implement approved feature — phase 5 |
44
- | `/morph-status` | Project-wide feature status dashboard |
45
- | `/morph-preflight` | Pre-implementation validation (7 checks) |
46
-
47
- ---
48
-
49
- ## CLI — project management
50
-
51
- ```bash
52
- morph-spec init [--force] [--skip-mcp]
53
- morph-spec update [--templates] [--standards]
54
- morph-spec doctor
55
- ```
56
-
57
- ---
58
-
59
- ## CLI — feature workflow
60
-
61
- ```bash
62
- morph-spec state list # all features
63
- morph-spec state get {feature} [--json] # feature detail
64
- morph-spec state set {feature} {key} {value} # update property
65
- morph-spec phase advance {feature} # advance to next phase
66
- morph-spec status {feature} [--json] [--verbose]
67
- morph-spec task done {feature} # mark task complete
68
- morph-spec task start {feature} # start next task
69
- morph-spec task next {feature} # preview next task
70
- ```
71
-
72
- ---
73
-
74
- ## CLI — validation
75
-
76
- ```bash
77
- morph-spec validate # all validators
78
- morph-spec validate architecture
79
- morph-spec validate packages
80
- morph-spec validate contrast [--wcag-aaa]
81
- morph-spec validate-feature {feature} [--phase {phase}] [--json]
82
- ```
83
-
84
- ---
85
-
86
- ## CLI — utilities
87
-
88
- ```bash
89
- morph-spec generate recap {feature} # auto-generate recap.md
90
- morph-spec template render {id} {output} {vars-json}
91
- morph-spec trust status [feature]
92
- morph-spec trust set {feature} {level} [reason]
93
- morph-spec mcp setup [name] [--list] [--auto]
94
- ```
95
-
96
- ---
97
-
98
- ## State — mark-output
99
-
100
- ```bash
101
- morph-spec state mark-output {feature} proposal
102
- morph-spec state mark-output {feature} spec
103
- morph-spec state mark-output {feature} contracts
104
- morph-spec state mark-output {feature} decisions
105
- morph-spec state mark-output {feature} tasks
106
- morph-spec state mark-output {feature} recap
107
-
108
- # UI outputs (camelCase or kebab-case both work)
109
- morph-spec state mark-output {feature} uiDesignSystem
110
- morph-spec state mark-output {feature} uiMockups
111
- morph-spec state mark-output {feature} uiComponents
112
- morph-spec state mark-output {feature} uiFlows
113
- ```
114
-
115
- ---
116
-
117
- ## State — agents
118
-
119
- ```bash
120
- morph-spec state add-agent {feature} {agent-id}
121
- morph-spec state remove-agent {feature} {agent-id}
122
- ```
123
-
124
- ---
125
-
126
- ## Checkpoints
127
-
128
- ```bash
129
- morph-spec checkpoint-save {feature}
130
- morph-spec checkpoint-restore {feature}
131
- morph-spec checkpoint-list {feature}
132
- ```
133
-
134
- ---
135
-
136
- ## Approvals
137
-
138
- ```bash
139
- morph-spec approve {feature} {gate} # approve a gate
140
- morph-spec approval-status {feature} # show gate status
141
- ```
142
-
143
- ---
144
-
145
- ## Directory structure
146
-
147
- ```
148
- .morph/
149
- ├── config/
150
- └── config.json # project config (editable)
151
- ├── framework/ # READ-ONLY
152
- ├── agents.json # 38 agents, 4 tiers
153
- ├── standards/ # 82 standards across 11 categories
154
- └── templates/ # code and IaC templates
155
- ├── context/ # project context (editable)
156
- ├── README.md
157
- │ └── standards.md
158
- ├── features/
159
- └── {feature}/
160
- │ ├── 0-proposal/proposal.md
161
- │ ├── 1-design/spec.md, contracts.cs, decisions.md
162
- ├── 2-ui/design-system.md, mockups.md, components.md, flows.md
163
- ├── 3-tasks/tasks.md
164
- │ └── 4-implement/recap.md
165
- ├── checkpoints/
166
- ├── logs/
167
- └── state.json # READ-ONLY — CLI managed
168
-
169
- .claude/
170
- ├── commands/ # slash commands
171
- ├── skills/ # framework skills (SKILL.md per dir)
172
- ├── agents/ # native subagents (38)
173
- ├── morph-{id}.md # tier 1-2 agents
174
- └── morph-domain-{name}.md # tier 3 domain agents
175
- ├── rules/ # path-scoped rules (6 files)
176
- └── settings.local.json # hooks (11)
177
- ```
178
-
179
- ---
180
-
181
- ## Protected files
182
-
183
- These files are never edited directly. Use CLI commands or `morph-spec update` instead:
184
-
185
- | Path | Protected by |
186
- |------|-------------|
187
- | `.morph/state.json` | `permissions.deny` |
188
- | `.morph/framework/**` | `permissions.deny` |
189
- | Approved spec/contracts | `protect-spec-files.js` hook |
190
-
191
- ---
192
-
193
- ## Links
194
-
195
- - [QUICKSTART.md](QUICKSTART.md) — step-by-step guide
196
- - [ARCHITECTURE.md](ARCHITECTURE.md) — system design
197
- - [CHANGELOG.md](../CHANGELOG.md) — release history
198
- - [npm](https://www.npmjs.com/package/@polymorphism-tech/morph-spec)
199
- - support@polymorphism.com.br
200
-
201
- ---
202
-
203
- *morph-spec v4.8.18 by Polymorphism Tech*
1
+ # morph-spec Cheat Sheet
2
+
3
+ ## Setup
4
+
5
+ ```bash
6
+ npm install -g @polymorphism-tech/morph-spec # install globally
7
+ morph-spec init # initialize project
8
+ morph-spec init --wizard # interactive wizard
9
+ morph-spec init --force # overwrite existing
10
+ morph-spec update # sync framework files
11
+ morph-spec doctor # health check
12
+ morph-spec --version
13
+ ```
14
+
15
+ ---
16
+
17
+ ## Phase workflow
18
+
19
+ ```
20
+ proposal → setup → [uiux] → design → clarify → tasks → implement → [sync]
21
+ ```
22
+
23
+ Phases in brackets are optional.
24
+
25
+ | Phase | Directory | Output files | Gate |
26
+ |-------|-----------|--------------|------|
27
+ | proposal | `0-proposal/` | `proposal.md` | ✅ Approval |
28
+ | setup | *(no output)* | context loaded | — |
29
+ | uiux *(optional)* | `2-ui/` | `design-system.md`, `mockups.md`, `components.md`, `flows.md` | ✅ Approval |
30
+ | design | `1-design/` | `spec.md`, `contracts.cs`, `decisions.md` | ✅ Approval |
31
+ | clarify | `1-design/` | spec updated | — |
32
+ | tasks | `3-tasks/` | `tasks.md` | ✅ Approval |
33
+ | implement | `4-implement/` | code + `recap.md` | — |
34
+ | sync *(optional)* | `.morph/context/` | standards updated | — |
35
+
36
+ ---
37
+
38
+ ## Slash commands (Claude Code)
39
+
40
+ | Command | Description |
41
+ |---------|-------------|
42
+ | `/morph-proposal {feature}` | Full spec pipeline — phases 0–4 with approval gates |
43
+ | `/morph-apply {feature}` | Implement approved feature — phase 5 |
44
+ | `/morph-status` | Project-wide feature status dashboard |
45
+ | `/morph-preflight` | Pre-implementation validation (7 checks) |
46
+
47
+ ---
48
+
49
+ ## CLI — project management
50
+
51
+ ```bash
52
+ morph-spec init [--force] [--skip-mcp]
53
+ morph-spec update [--templates] [--standards]
54
+ morph-spec doctor
55
+ ```
56
+
57
+ ---
58
+
59
+ ## CLI — feature workflow
60
+
61
+ ```bash
62
+ morph-spec state list # all features
63
+ morph-spec state get {feature} [--json] # feature detail
64
+ morph-spec state set {feature} {key} {value} # update property
65
+ morph-spec phase advance {feature} # advance to next phase
66
+ morph-spec status {feature} [--json] [--verbose]
67
+ morph-spec task done {feature} {task-id} # mark task complete
68
+ morph-spec task start {feature} {task-id} # start a task
69
+ morph-spec task next {feature} # preview next task
70
+ ```
71
+
72
+ ---
73
+
74
+ ## CLI — validation
75
+
76
+ ```bash
77
+ morph-spec validate # all validators
78
+ morph-spec validate architecture
79
+ morph-spec validate packages
80
+ morph-spec validate contrast [--wcag-aaa]
81
+ morph-spec validate-feature {feature} [--phase {phase}] [--json]
82
+ ```
83
+
84
+ ---
85
+
86
+ ## CLI — utilities
87
+
88
+ ```bash
89
+ morph-spec generate recap {feature} # auto-generate recap.md
90
+ morph-spec template render {id} {output} {vars-json}
91
+ morph-spec trust status [feature]
92
+ morph-spec trust set {feature} {level} [reason] # level: manual|high|auto
93
+ morph-spec mcp setup [name] [--list] [--auto]
94
+ ```
95
+
96
+ ---
97
+
98
+ ## State — mark-output
99
+
100
+ ```bash
101
+ morph-spec state mark-output {feature} proposal
102
+ morph-spec state mark-output {feature} spec
103
+ morph-spec state mark-output {feature} contracts
104
+ morph-spec state mark-output {feature} decisions
105
+ morph-spec state mark-output {feature} tasks
106
+ morph-spec state mark-output {feature} recap
107
+
108
+ # UI outputs (camelCase or kebab-case both work)
109
+ morph-spec state mark-output {feature} uiDesignSystem
110
+ morph-spec state mark-output {feature} uiMockups
111
+ morph-spec state mark-output {feature} uiComponents
112
+ morph-spec state mark-output {feature} uiFlows
113
+ ```
114
+
115
+ ---
116
+
117
+ ## State — agents
118
+
119
+ ```bash
120
+ morph-spec state add-agent {feature} {agent-id}
121
+ morph-spec state remove-agent {feature} {agent-id}
122
+ ```
123
+
124
+ ---
125
+
126
+ ## Checkpoints
127
+
128
+ ```bash
129
+ morph-spec checkpoint-save {feature}
130
+ ```
131
+
132
+ ---
133
+
134
+ ## Approvals
135
+
136
+ ```bash
137
+ morph-spec approve {feature} {gate} # approve a gate
138
+ morph-spec approval-status {feature} # show gate status
139
+ ```
140
+
141
+ ---
142
+
143
+ ## Directory structure
144
+
145
+ ```
146
+ .morph/
147
+ ├── config/
148
+ │ └── config.json # project config (editable)
149
+ ├── framework/ # READ-ONLY
150
+ ├── agents.json # 42 agents, 4 tiers
151
+ ├── standards/ # 82 standards across 11 categories
152
+ └── templates/ # code and IaC templates
153
+ ├── context/ # project context (editable)
154
+ ├── README.md
155
+ │ └── standards.md
156
+ ├── features/
157
+ │ └── {feature}/
158
+ ├── 0-proposal/proposal.md
159
+ ├── 1-design/spec.md, contracts.cs, decisions.md
160
+ │ ├── 2-ui/design-system.md, mockups.md, components.md, flows.md
161
+ │ ├── 3-tasks/tasks.md
162
+ └── 4-implement/recap.md
163
+ ├── checkpoints/
164
+ ├── logs/
165
+ └── state.json # READ-ONLY — CLI managed
166
+
167
+ .claude/
168
+ ├── commands/ # slash commands
169
+ ├── skills/ # framework skills (SKILL.md per dir)
170
+ ├── agents/ # native subagents (38)
171
+ ├── morph-{id}.md # tier 1-2 agents
172
+ │ └── morph-domain-{name}.md # tier 3 domain agents
173
+ ├── rules/ # path-scoped rules (6 files)
174
+ └── settings.local.json # hooks (11)
175
+ ```
176
+
177
+ ---
178
+
179
+ ## Protected files
180
+
181
+ These files are never edited directly. Use CLI commands or `morph-spec update` instead:
182
+
183
+ | Path | Protected by |
184
+ |------|-------------|
185
+ | `.morph/state.json` | `permissions.deny` |
186
+ | `.morph/framework/**` | `permissions.deny` |
187
+ | Approved spec/contracts | `protect-spec-files.js` hook |
188
+
189
+ ---
190
+
191
+ ## Links
192
+
193
+ - [QUICKSTART.md](QUICKSTART.md) — step-by-step guide
194
+ - [ARCHITECTURE.md](ARCHITECTURE.md) — system design
195
+ - [CHANGELOG.md](../CHANGELOG.md) — release history
196
+ - [npm](https://www.npmjs.com/package/@polymorphism-tech/morph-spec)
197
+ - support@polymorphism.com.br
198
+
199
+ ---
200
+
201
+ *morph-spec v4.9.0 by Polymorphism Tech*
@@ -127,7 +127,7 @@ morph-spec phase advance my-feature
127
127
  Mark a task complete:
128
128
 
129
129
  ```bash
130
- morph-spec task done my-feature
130
+ morph-spec task done my-feature T001
131
131
  ```
132
132
 
133
133
  Run validators at any time:
@@ -203,4 +203,4 @@ morph-spec doctor
203
203
 
204
204
  ---
205
205
 
206
- *morph-spec v4.8.18 by Polymorphism Tech*
206
+ *morph-spec v4.9.0 by Polymorphism Tech*
@@ -18,6 +18,7 @@
18
18
  - Ignore standards in `.morph/framework/standards/`
19
19
  - Create infrastructure manually
20
20
  - Generate code without defined contracts
21
+ - List questions as plain text — always use the `AskUserQuestion` tool
21
22
 
22
23
  **ALWAYS:**
23
24
  - Follow the mandatory phases
@@ -25,6 +26,7 @@
25
26
  - Document decisions in `decisions.md`
26
27
  - Checkpoint every 3 implemented tasks
27
28
  - Use Infrastructure as Code
29
+ - Use `AskUserQuestion` tool whenever asking the user anything (1–4 questions per call; split into sequential calls if more)
28
30
 
29
31
  ---
30
32
 
@@ -48,6 +50,25 @@
48
50
  | `.morph/framework/` | **READ-ONLY** — framework files managed by morph-spec |
49
51
  | `.morph/config/config.json` | Project configuration (editable) |
50
52
 
53
+ ### mark-output types
54
+
55
+ Use `morph-spec state mark-output <feature> <type>` with one of these exact type names:
56
+
57
+ | Type | Phase | kebab alias |
58
+ |------|-------|-------------|
59
+ | `proposal` | proposal | — |
60
+ | `schemaAnalysis` | design | `schema-analysis` |
61
+ | `spec` | design | — |
62
+ | `contracts` | design | — |
63
+ | `contractsVsa` | design | `contracts-vsa` |
64
+ | `decisions` | design | — |
65
+ | `clarifications` | clarify | — |
66
+ | `tasks` | tasks | — |
67
+ | `uiDesignSystem` | uiux | `ui-design-system` |
68
+ | `uiMockups` | uiux | `ui-mockups` |
69
+ | `uiComponents` | uiux | `ui-components` |
70
+ | `uiFlows` | uiux | `ui-flows` |
71
+ | `recap` | implement | — |
51
72
  ---
52
73
 
53
74
  ## Phase Sequence