@mobiman/vector 1.1.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 (225) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +117 -0
  3. package/agents/vector-codebase-mapper.md +770 -0
  4. package/agents/vector-debugger.md +1338 -0
  5. package/agents/vector-executor.md +487 -0
  6. package/agents/vector-integration-checker.md +443 -0
  7. package/agents/vector-nyquist-auditor.md +176 -0
  8. package/agents/vector-phase-researcher.md +553 -0
  9. package/agents/vector-plan-checker.md +706 -0
  10. package/agents/vector-planner.md +1307 -0
  11. package/agents/vector-project-researcher.md +629 -0
  12. package/agents/vector-research-synthesizer.md +247 -0
  13. package/agents/vector-roadmapper.md +650 -0
  14. package/agents/vector-ui-auditor.md +439 -0
  15. package/agents/vector-ui-checker.md +300 -0
  16. package/agents/vector-ui-researcher.md +353 -0
  17. package/agents/vector-verifier.md +579 -0
  18. package/bin/install.cjs +2907 -0
  19. package/bin/install.cjs.map +1 -0
  20. package/bin/install.cts +3103 -0
  21. package/bin/install.d.cts +3 -0
  22. package/bin/install.d.cts.map +1 -0
  23. package/commands/vector/add-phase.md +43 -0
  24. package/commands/vector/add-tests.md +41 -0
  25. package/commands/vector/add-todo.md +47 -0
  26. package/commands/vector/audit-milestone.md +36 -0
  27. package/commands/vector/autonomous.md +41 -0
  28. package/commands/vector/check-todos.md +45 -0
  29. package/commands/vector/cleanup.md +18 -0
  30. package/commands/vector/complete-milestone.md +136 -0
  31. package/commands/vector/debug.md +168 -0
  32. package/commands/vector/discuss-phase.md +90 -0
  33. package/commands/vector/do.md +30 -0
  34. package/commands/vector/execute-phase.md +41 -0
  35. package/commands/vector/health.md +22 -0
  36. package/commands/vector/help.md +22 -0
  37. package/commands/vector/insert-phase.md +32 -0
  38. package/commands/vector/join-discord.md +18 -0
  39. package/commands/vector/list-phase-assumptions.md +46 -0
  40. package/commands/vector/map-codebase.md +71 -0
  41. package/commands/vector/new-milestone.md +44 -0
  42. package/commands/vector/new-project.md +42 -0
  43. package/commands/vector/pause-work.md +38 -0
  44. package/commands/vector/plan-milestone-gaps.md +34 -0
  45. package/commands/vector/plan-phase.md +45 -0
  46. package/commands/vector/progress.md +24 -0
  47. package/commands/vector/quick.md +47 -0
  48. package/commands/vector/reapply-patches.md +123 -0
  49. package/commands/vector/remove-phase.md +31 -0
  50. package/commands/vector/research-phase.md +190 -0
  51. package/commands/vector/resume-work.md +40 -0
  52. package/commands/vector/set-profile.md +12 -0
  53. package/commands/vector/settings.md +36 -0
  54. package/commands/vector/stats.md +18 -0
  55. package/commands/vector/ui-phase.md +34 -0
  56. package/commands/vector/ui-review.md +32 -0
  57. package/commands/vector/update.md +37 -0
  58. package/commands/vector/validate-phase.md +35 -0
  59. package/commands/vector/verify-work.md +38 -0
  60. package/core/bin/lib/commands.cjs +641 -0
  61. package/core/bin/lib/commands.cjs.map +1 -0
  62. package/core/bin/lib/commands.cts +712 -0
  63. package/core/bin/lib/commands.d.cts +23 -0
  64. package/core/bin/lib/commands.d.cts.map +1 -0
  65. package/core/bin/lib/config.cjs +281 -0
  66. package/core/bin/lib/config.cjs.map +1 -0
  67. package/core/bin/lib/config.cts +301 -0
  68. package/core/bin/lib/config.d.cts +50 -0
  69. package/core/bin/lib/config.d.cts.map +1 -0
  70. package/core/bin/lib/core.cjs +483 -0
  71. package/core/bin/lib/core.cjs.map +1 -0
  72. package/core/bin/lib/core.cts +544 -0
  73. package/core/bin/lib/core.d.cts +96 -0
  74. package/core/bin/lib/core.d.cts.map +1 -0
  75. package/core/bin/lib/frontmatter.cjs +341 -0
  76. package/core/bin/lib/frontmatter.cjs.map +1 -0
  77. package/core/bin/lib/frontmatter.cts +295 -0
  78. package/core/bin/lib/frontmatter.d.cts +18 -0
  79. package/core/bin/lib/frontmatter.d.cts.map +1 -0
  80. package/core/bin/lib/init.cjs +674 -0
  81. package/core/bin/lib/init.cjs.map +1 -0
  82. package/core/bin/lib/init.cts +775 -0
  83. package/core/bin/lib/init.d.cts +16 -0
  84. package/core/bin/lib/init.d.cts.map +1 -0
  85. package/core/bin/lib/milestone.cjs +210 -0
  86. package/core/bin/lib/milestone.cjs.map +1 -0
  87. package/core/bin/lib/milestone.cts +241 -0
  88. package/core/bin/lib/milestone.d.cts +11 -0
  89. package/core/bin/lib/milestone.d.cts.map +1 -0
  90. package/core/bin/lib/model-profiles.cjs +62 -0
  91. package/core/bin/lib/model-profiles.cjs.map +1 -0
  92. package/core/bin/lib/model-profiles.cts +66 -0
  93. package/core/bin/lib/model-profiles.d.cts +33 -0
  94. package/core/bin/lib/model-profiles.d.cts.map +1 -0
  95. package/core/bin/lib/phase.cjs +713 -0
  96. package/core/bin/lib/phase.cjs.map +1 -0
  97. package/core/bin/lib/phase.cts +914 -0
  98. package/core/bin/lib/phase.d.cts +21 -0
  99. package/core/bin/lib/phase.d.cts.map +1 -0
  100. package/core/bin/lib/roadmap.cjs +246 -0
  101. package/core/bin/lib/roadmap.cjs.map +1 -0
  102. package/core/bin/lib/roadmap.cts +311 -0
  103. package/core/bin/lib/roadmap.d.cts +7 -0
  104. package/core/bin/lib/roadmap.d.cts.map +1 -0
  105. package/core/bin/lib/state.cjs +709 -0
  106. package/core/bin/lib/state.cjs.map +1 -0
  107. package/core/bin/lib/state.cts +718 -0
  108. package/core/bin/lib/state.d.cts +47 -0
  109. package/core/bin/lib/state.d.cts.map +1 -0
  110. package/core/bin/lib/template.cjs +220 -0
  111. package/core/bin/lib/template.cjs.map +1 -0
  112. package/core/bin/lib/template.cts +229 -0
  113. package/core/bin/lib/template.d.cts +15 -0
  114. package/core/bin/lib/template.d.cts.map +1 -0
  115. package/core/bin/lib/verify.cjs +824 -0
  116. package/core/bin/lib/verify.cjs.map +1 -0
  117. package/core/bin/lib/verify.cts +829 -0
  118. package/core/bin/lib/verify.d.cts +17 -0
  119. package/core/bin/lib/verify.d.cts.map +1 -0
  120. package/core/bin/vector-tools.cjs +641 -0
  121. package/core/bin/vector-tools.cjs.map +1 -0
  122. package/core/bin/vector-tools.cts +603 -0
  123. package/core/bin/vector-tools.d.cts +128 -0
  124. package/core/bin/vector-tools.d.cts.map +1 -0
  125. package/core/references/checkpoints.md +776 -0
  126. package/core/references/continuation-format.md +249 -0
  127. package/core/references/decimal-phase-calculation.md +65 -0
  128. package/core/references/git-integration.md +248 -0
  129. package/core/references/git-planning-commit.md +38 -0
  130. package/core/references/model-profile-resolution.md +36 -0
  131. package/core/references/model-profiles.md +101 -0
  132. package/core/references/phase-argument-parsing.md +61 -0
  133. package/core/references/planning-config.md +200 -0
  134. package/core/references/questioning.md +162 -0
  135. package/core/references/tdd.md +263 -0
  136. package/core/references/ui-brand.md +160 -0
  137. package/core/references/verification-patterns.md +612 -0
  138. package/core/templates/DEBUG.md +164 -0
  139. package/core/templates/UAT.md +247 -0
  140. package/core/templates/UI-SPEC.md +100 -0
  141. package/core/templates/VALIDATION.md +76 -0
  142. package/core/templates/codebase/architecture.md +255 -0
  143. package/core/templates/codebase/concerns.md +310 -0
  144. package/core/templates/codebase/conventions.md +307 -0
  145. package/core/templates/codebase/integrations.md +280 -0
  146. package/core/templates/codebase/stack.md +186 -0
  147. package/core/templates/codebase/structure.md +285 -0
  148. package/core/templates/codebase/testing.md +480 -0
  149. package/core/templates/config.json +37 -0
  150. package/core/templates/context.md +352 -0
  151. package/core/templates/continue-here.md +78 -0
  152. package/core/templates/copilot-instructions.md +7 -0
  153. package/core/templates/debug-subagent-prompt.md +91 -0
  154. package/core/templates/discovery.md +146 -0
  155. package/core/templates/milestone-archive.md +123 -0
  156. package/core/templates/milestone.md +115 -0
  157. package/core/templates/phase-prompt.md +610 -0
  158. package/core/templates/planner-subagent-prompt.md +117 -0
  159. package/core/templates/project.md +184 -0
  160. package/core/templates/requirements.md +231 -0
  161. package/core/templates/research-project/ARCHITECTURE.md +204 -0
  162. package/core/templates/research-project/FEATURES.md +147 -0
  163. package/core/templates/research-project/PITFALLS.md +200 -0
  164. package/core/templates/research-project/STACK.md +120 -0
  165. package/core/templates/research-project/SUMMARY.md +170 -0
  166. package/core/templates/research.md +552 -0
  167. package/core/templates/retrospective.md +54 -0
  168. package/core/templates/roadmap.md +202 -0
  169. package/core/templates/state.md +176 -0
  170. package/core/templates/summary-complex.md +59 -0
  171. package/core/templates/summary-minimal.md +41 -0
  172. package/core/templates/summary-standard.md +48 -0
  173. package/core/templates/summary.md +248 -0
  174. package/core/templates/user-setup.md +311 -0
  175. package/core/templates/verification-report.md +322 -0
  176. package/core/workflows/add-phase.md +112 -0
  177. package/core/workflows/add-tests.md +351 -0
  178. package/core/workflows/add-todo.md +158 -0
  179. package/core/workflows/audit-milestone.md +332 -0
  180. package/core/workflows/autonomous.md +743 -0
  181. package/core/workflows/check-todos.md +177 -0
  182. package/core/workflows/cleanup.md +152 -0
  183. package/core/workflows/complete-milestone.md +766 -0
  184. package/core/workflows/diagnose-issues.md +219 -0
  185. package/core/workflows/discovery-phase.md +289 -0
  186. package/core/workflows/discuss-phase.md +762 -0
  187. package/core/workflows/do.md +104 -0
  188. package/core/workflows/execute-phase.md +468 -0
  189. package/core/workflows/execute-plan.md +483 -0
  190. package/core/workflows/health.md +159 -0
  191. package/core/workflows/help.md +513 -0
  192. package/core/workflows/insert-phase.md +130 -0
  193. package/core/workflows/list-phase-assumptions.md +178 -0
  194. package/core/workflows/map-codebase.md +316 -0
  195. package/core/workflows/new-milestone.md +386 -0
  196. package/core/workflows/new-project.md +1113 -0
  197. package/core/workflows/node-repair.md +92 -0
  198. package/core/workflows/pause-work.md +122 -0
  199. package/core/workflows/plan-milestone-gaps.md +274 -0
  200. package/core/workflows/plan-phase.md +666 -0
  201. package/core/workflows/progress.md +382 -0
  202. package/core/workflows/quick.md +717 -0
  203. package/core/workflows/remove-phase.md +155 -0
  204. package/core/workflows/research-phase.md +74 -0
  205. package/core/workflows/resume-project.md +307 -0
  206. package/core/workflows/settings.md +243 -0
  207. package/core/workflows/stats.md +60 -0
  208. package/core/workflows/transition.md +544 -0
  209. package/core/workflows/ui-phase.md +290 -0
  210. package/core/workflows/ui-review.md +157 -0
  211. package/core/workflows/update.md +320 -0
  212. package/core/workflows/validate-phase.md +167 -0
  213. package/core/workflows/verify-phase.md +243 -0
  214. package/core/workflows/verify-work.md +584 -0
  215. package/package.json +55 -0
  216. package/scripts/build-hooks.cjs +38 -0
  217. package/scripts/build-hooks.cjs.map +1 -0
  218. package/scripts/build-hooks.cts +41 -0
  219. package/scripts/build-hooks.d.cts +6 -0
  220. package/scripts/build-hooks.d.cts.map +1 -0
  221. package/scripts/run-tests.cjs +28 -0
  222. package/scripts/run-tests.cjs.map +1 -0
  223. package/scripts/run-tests.cts +28 -0
  224. package/scripts/run-tests.d.cts +3 -0
  225. package/scripts/run-tests.d.cts.map +1 -0
@@ -0,0 +1,717 @@
1
+ <purpose>
2
+ Execute small, ad-hoc tasks with Vector guarantees (atomic commits, STATE.md tracking). Quick mode spawns vector-planner (quick mode) + vector-executor(s), tracks tasks in `.planning/quick/`, and updates STATE.md's "Quick Tasks Completed" table.
3
+
4
+ With `--discuss` flag: lightweight discussion phase before planning. Surfaces assumptions, clarifies gray areas, captures decisions in CONTEXT.md so the planner treats them as locked.
5
+
6
+ With `--full` flag: enables plan-checking (max 2 iterations) and post-execution verification for quality guarantees without full milestone ceremony.
7
+
8
+ With `--research` flag: spawns a focused research agent before planning. Investigates implementation approaches, library options, and pitfalls. Use when you're unsure how to approach a task.
9
+
10
+ Flags are composable: `--discuss --research --full` gives discussion + research + plan-checking + verification.
11
+ </purpose>
12
+
13
+ <required_reading>
14
+ Read all files referenced by the invoking prompt's execution_context before starting.
15
+ </required_reading>
16
+
17
+ <process>
18
+ **Step 1: Parse arguments and get task description**
19
+
20
+ Parse `$ARGUMENTS` for:
21
+ - `--full` flag → store as `$FULL_MODE` (true/false)
22
+ - `--discuss` flag → store as `$DISCUSS_MODE` (true/false)
23
+ - `--research` flag → store as `$RESEARCH_MODE` (true/false)
24
+ - Remaining text → use as `$DESCRIPTION` if non-empty
25
+
26
+ If `$DESCRIPTION` is empty after parsing, prompt user interactively:
27
+
28
+ ```
29
+ AskUserQuestion(
30
+ header: "Quick Task",
31
+ question: "What do you want to do?",
32
+ followUp: null
33
+ )
34
+ ```
35
+
36
+ Store response as `$DESCRIPTION`.
37
+
38
+ If still empty, re-prompt: "Please provide a task description."
39
+
40
+ Display banner based on active flags:
41
+
42
+ If `$DISCUSS_MODE` and `$RESEARCH_MODE` and `$FULL_MODE`:
43
+ ```
44
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
45
+ Vector ► QUICK TASK (DISCUSS + RESEARCH + FULL)
46
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
47
+
48
+ ◆ Discussion + research + plan checking + verification enabled
49
+ ```
50
+
51
+ If `$DISCUSS_MODE` and `$FULL_MODE` (no research):
52
+ ```
53
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
54
+ Vector ► QUICK TASK (DISCUSS + FULL)
55
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
56
+
57
+ ◆ Discussion + plan checking + verification enabled
58
+ ```
59
+
60
+ If `$DISCUSS_MODE` and `$RESEARCH_MODE` (no full):
61
+ ```
62
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
63
+ Vector ► QUICK TASK (DISCUSS + RESEARCH)
64
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
65
+
66
+ ◆ Discussion + research enabled
67
+ ```
68
+
69
+ If `$RESEARCH_MODE` and `$FULL_MODE` (no discuss):
70
+ ```
71
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
72
+ Vector ► QUICK TASK (RESEARCH + FULL)
73
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
74
+
75
+ ◆ Research + plan checking + verification enabled
76
+ ```
77
+
78
+ If `$DISCUSS_MODE` only:
79
+ ```
80
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
81
+ Vector ► QUICK TASK (DISCUSS)
82
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
83
+
84
+ ◆ Discussion phase enabled — surfacing gray areas before planning
85
+ ```
86
+
87
+ If `$RESEARCH_MODE` only:
88
+ ```
89
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
90
+ Vector ► QUICK TASK (RESEARCH)
91
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
92
+
93
+ ◆ Research phase enabled — investigating approaches before planning
94
+ ```
95
+
96
+ If `$FULL_MODE` only:
97
+ ```
98
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
99
+ Vector ► QUICK TASK (FULL MODE)
100
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
101
+
102
+ ◆ Plan checking + verification enabled
103
+ ```
104
+
105
+ ---
106
+
107
+ **Step 2: Initialize**
108
+
109
+ ```bash
110
+ INIT=$(node "$HOME/.claude/core/bin/vector-tools.cjs" init quick "$DESCRIPTION")
111
+ if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
112
+ ```
113
+
114
+ Parse JSON for: `planner_model`, `executor_model`, `checker_model`, `verifier_model`, `commit_docs`, `quick_id`, `slug`, `date`, `timestamp`, `quick_dir`, `task_dir`, `roadmap_exists`, `planning_exists`.
115
+
116
+ **If `roadmap_exists` is false:** Error — Quick mode requires an active project with ROADMAP.md. Run `/vector:new-project` first.
117
+
118
+ Quick tasks can run mid-phase - validation only checks ROADMAP.md exists, not phase status.
119
+
120
+ ---
121
+
122
+ **Step 3: Create task directory**
123
+
124
+ ```bash
125
+ mkdir -p "${task_dir}"
126
+ ```
127
+
128
+ ---
129
+
130
+ **Step 4: Create quick task directory**
131
+
132
+ Create the directory for this quick task:
133
+
134
+ ```bash
135
+ QUICK_DIR=".planning/quick/${quick_id}-${slug}"
136
+ mkdir -p "$QUICK_DIR"
137
+ ```
138
+
139
+ Report to user:
140
+ ```
141
+ Creating quick task ${quick_id}: ${DESCRIPTION}
142
+ Directory: ${QUICK_DIR}
143
+ ```
144
+
145
+ Store `$QUICK_DIR` for use in orchestration.
146
+
147
+ ---
148
+
149
+ **Step 4.5: Discussion phase (only when `$DISCUSS_MODE`)**
150
+
151
+ Skip this step entirely if NOT `$DISCUSS_MODE`.
152
+
153
+ Display banner:
154
+ ```
155
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
156
+ Vector ► DISCUSSING QUICK TASK
157
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
158
+
159
+ ◆ Surfacing gray areas for: ${DESCRIPTION}
160
+ ```
161
+
162
+ **4.5a. Identify gray areas**
163
+
164
+ Analyze `$DESCRIPTION` to identify 2-4 gray areas — implementation decisions that would change the outcome and that the user should weigh in on.
165
+
166
+ Use the domain-aware heuristic to generate phase-specific (not generic) gray areas:
167
+ - Something users **SEE** → layout, density, interactions, states
168
+ - Something users **CALL** → responses, errors, auth, versioning
169
+ - Something users **RUN** → output format, flags, modes, error handling
170
+ - Something users **READ** → structure, tone, depth, flow
171
+ - Something being **ORGANIZED** → criteria, grouping, naming, exceptions
172
+
173
+ Each gray area should be a concrete decision point, not a vague category. Example: "Loading behavior" not "UX".
174
+
175
+ **4.5b. Present gray areas**
176
+
177
+ ```
178
+ AskUserQuestion(
179
+ header: "Gray Areas",
180
+ question: "Which areas need clarification before planning?",
181
+ options: [
182
+ { label: "${area_1}", description: "${why_it_matters_1}" },
183
+ { label: "${area_2}", description: "${why_it_matters_2}" },
184
+ { label: "${area_3}", description: "${why_it_matters_3}" },
185
+ { label: "All clear", description: "Skip discussion — I know what I want" }
186
+ ],
187
+ multiSelect: true
188
+ )
189
+ ```
190
+
191
+ If user selects "All clear" → skip to Step 5 (no CONTEXT.md written).
192
+
193
+ **4.5c. Discuss selected areas**
194
+
195
+ For each selected area, ask 1-2 focused questions via AskUserQuestion:
196
+
197
+ ```
198
+ AskUserQuestion(
199
+ header: "${area_name}",
200
+ question: "${specific_question_about_this_area}",
201
+ options: [
202
+ { label: "${concrete_choice_1}", description: "${what_this_means}" },
203
+ { label: "${concrete_choice_2}", description: "${what_this_means}" },
204
+ { label: "${concrete_choice_3}", description: "${what_this_means}" },
205
+ { label: "You decide", description: "Claude's discretion" }
206
+ ],
207
+ multiSelect: false
208
+ )
209
+ ```
210
+
211
+ Rules:
212
+ - Options must be concrete choices, not abstract categories
213
+ - Highlight recommended choice where you have a clear opinion
214
+ - If user selects "Other" with freeform text, switch to plain text follow-up (per questioning.md freeform rule)
215
+ - If user selects "You decide", capture as Claude's Discretion in CONTEXT.md
216
+ - Max 2 questions per area — this is lightweight, not a deep dive
217
+
218
+ Collect all decisions into `$DECISIONS`.
219
+
220
+ **4.5d. Write CONTEXT.md**
221
+
222
+ Write `${QUICK_DIR}/${quick_id}-CONTEXT.md` using the standard context template structure:
223
+
224
+ ```markdown
225
+ # Quick Task ${quick_id}: ${DESCRIPTION} - Context
226
+
227
+ **Gathered:** ${date}
228
+ **Status:** Ready for planning
229
+
230
+ <domain>
231
+ ## Task Boundary
232
+
233
+ ${DESCRIPTION}
234
+
235
+ </domain>
236
+
237
+ <decisions>
238
+ ## Implementation Decisions
239
+
240
+ ### ${area_1_name}
241
+ - ${decision_from_discussion}
242
+
243
+ ### ${area_2_name}
244
+ - ${decision_from_discussion}
245
+
246
+ ### Claude's Discretion
247
+ ${areas_where_user_said_you_decide_or_areas_not_discussed}
248
+
249
+ </decisions>
250
+
251
+ <specifics>
252
+ ## Specific Ideas
253
+
254
+ ${any_specific_references_or_examples_from_discussion}
255
+
256
+ [If none: "No specific requirements — open to standard approaches"]
257
+
258
+ </specifics>
259
+
260
+ <canonical_refs>
261
+ ## Canonical References
262
+
263
+ ${any_specs_adrs_or_docs_referenced_during_discussion}
264
+
265
+ [If none: "No external specs — requirements fully captured in decisions above"]
266
+
267
+ </canonical_refs>
268
+ ```
269
+
270
+ Note: Quick task CONTEXT.md omits `<code_context>` and `<deferred>` sections (no codebase scouting, no phase scope to defer to). Keep it lean. The `<canonical_refs>` section is included when external docs were referenced — omit it only if no external docs apply.
271
+
272
+ Report: `Context captured: ${QUICK_DIR}/${quick_id}-CONTEXT.md`
273
+
274
+ ---
275
+
276
+ **Step 4.75: Research phase (only when `$RESEARCH_MODE`)**
277
+
278
+ Skip this step entirely if NOT `$RESEARCH_MODE`.
279
+
280
+ Display banner:
281
+ ```
282
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
283
+ Vector ► RESEARCHING QUICK TASK
284
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
285
+
286
+ ◆ Investigating approaches for: ${DESCRIPTION}
287
+ ```
288
+
289
+ Spawn a single focused researcher (not 4 parallel researchers like full phases — quick tasks need targeted research, not broad domain surveys):
290
+
291
+ ```
292
+ Task(
293
+ prompt="
294
+ <research_context>
295
+
296
+ **Mode:** quick-task
297
+ **Task:** ${DESCRIPTION}
298
+ **Output:** ${QUICK_DIR}/${quick_id}-RESEARCH.md
299
+
300
+ <files_to_read>
301
+ - .planning/STATE.md (Project state — what's already built)
302
+ - .planning/PROJECT.md (Project context)
303
+ - ./CLAUDE.md (if exists — project-specific guidelines)
304
+ ${DISCUSS_MODE ? '- ' + QUICK_DIR + '/' + quick_id + '-CONTEXT.md (User decisions — research should align with these)' : ''}
305
+ </files_to_read>
306
+
307
+ </research_context>
308
+
309
+ <focus>
310
+ This is a quick task, not a full phase. Research should be concise and targeted:
311
+ 1. Best libraries/patterns for this specific task
312
+ 2. Common pitfalls and how to avoid them
313
+ 3. Integration points with existing codebase
314
+ 4. Any constraints or gotchas worth knowing before planning
315
+
316
+ Do NOT produce a full domain survey. Target 1-2 pages of actionable findings.
317
+ </focus>
318
+
319
+ <output>
320
+ Write research to: ${QUICK_DIR}/${quick_id}-RESEARCH.md
321
+ Use standard research format but keep it lean — skip sections that don't apply.
322
+ Return: ## RESEARCH COMPLETE with file path
323
+ </output>
324
+ ",
325
+ subagent_type="vector-phase-researcher",
326
+ model="{planner_model}",
327
+ description="Research: ${DESCRIPTION}"
328
+ )
329
+ ```
330
+
331
+ After researcher returns:
332
+ 1. Verify research exists at `${QUICK_DIR}/${quick_id}-RESEARCH.md`
333
+ 2. Report: "Research complete: ${QUICK_DIR}/${quick_id}-RESEARCH.md"
334
+
335
+ If research file not found, warn but continue: "Research agent did not produce output — proceeding to planning without research."
336
+
337
+ ---
338
+
339
+ **Step 5: Spawn planner (quick mode)**
340
+
341
+ **If `$FULL_MODE`:** Use `quick-full` mode with stricter constraints.
342
+
343
+ **If NOT `$FULL_MODE`:** Use standard `quick` mode.
344
+
345
+ ```
346
+ Task(
347
+ prompt="
348
+ <planning_context>
349
+
350
+ **Mode:** ${FULL_MODE ? 'quick-full' : 'quick'}
351
+ **Directory:** ${QUICK_DIR}
352
+ **Description:** ${DESCRIPTION}
353
+
354
+ <files_to_read>
355
+ - .planning/STATE.md (Project State)
356
+ - ./CLAUDE.md (if exists — follow project-specific guidelines)
357
+ ${DISCUSS_MODE ? '- ' + QUICK_DIR + '/' + quick_id + '-CONTEXT.md (User decisions — locked, do not revisit)' : ''}
358
+ ${RESEARCH_MODE ? '- ' + QUICK_DIR + '/' + quick_id + '-RESEARCH.md (Research findings — use to inform implementation choices)' : ''}
359
+ </files_to_read>
360
+
361
+ **Project skills:** Check .claude/skills/ or .agents/skills/ directory (if either exists) — read SKILL.md files, plans should account for project skill rules
362
+
363
+ </planning_context>
364
+
365
+ <constraints>
366
+ - Create a SINGLE plan with 1-3 focused tasks
367
+ - Quick tasks should be atomic and self-contained
368
+ ${RESEARCH_MODE ? '- Research findings are available — use them to inform library/pattern choices' : '- No research phase'}
369
+ ${FULL_MODE ? '- Target ~40% context usage (structured for verification)' : '- Target ~30% context usage (simple, focused)'}
370
+ ${FULL_MODE ? '- MUST generate `must_haves` in plan frontmatter (truths, artifacts, key_links)' : ''}
371
+ ${FULL_MODE ? '- Each task MUST have `files`, `action`, `verify`, `done` fields' : ''}
372
+ </constraints>
373
+
374
+ <output>
375
+ Write plan to: ${QUICK_DIR}/${quick_id}-PLAN.md
376
+ Return: ## PLANNING COMPLETE with plan path
377
+ </output>
378
+ ",
379
+ subagent_type="vector-planner",
380
+ model="{planner_model}",
381
+ description="Quick plan: ${DESCRIPTION}"
382
+ )
383
+ ```
384
+
385
+ After planner returns:
386
+ 1. Verify plan exists at `${QUICK_DIR}/${quick_id}-PLAN.md`
387
+ 2. Extract plan count (typically 1 for quick tasks)
388
+ 3. Report: "Plan created: ${QUICK_DIR}/${quick_id}-PLAN.md"
389
+
390
+ If plan not found, error: "Planner failed to create ${quick_id}-PLAN.md"
391
+
392
+ ---
393
+
394
+ **Step 5.5: Plan-checker loop (only when `$FULL_MODE`)**
395
+
396
+ Skip this step entirely if NOT `$FULL_MODE`.
397
+
398
+ Display banner:
399
+ ```
400
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
401
+ Vector ► CHECKING PLAN
402
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
403
+
404
+ ◆ Spawning plan checker...
405
+ ```
406
+
407
+ Checker prompt:
408
+
409
+ ```markdown
410
+ <verification_context>
411
+ **Mode:** quick-full
412
+ **Task Description:** ${DESCRIPTION}
413
+
414
+ <files_to_read>
415
+ - ${QUICK_DIR}/${quick_id}-PLAN.md (Plan to verify)
416
+ </files_to_read>
417
+
418
+ **Scope:** This is a quick task, not a full phase. Skip checks that require a ROADMAP phase goal.
419
+ </verification_context>
420
+
421
+ <check_dimensions>
422
+ - Requirement coverage: Does the plan address the task description?
423
+ - Task completeness: Do tasks have files, action, verify, done fields?
424
+ - Key links: Are referenced files real?
425
+ - Scope sanity: Is this appropriately sized for a quick task (1-3 tasks)?
426
+ - must_haves derivation: Are must_haves traceable to the task description?
427
+
428
+ Skip: cross-plan deps (single plan), ROADMAP alignment
429
+ ${DISCUSS_MODE ? '- Context compliance: Does the plan honor locked decisions from CONTEXT.md?' : '- Skip: context compliance (no CONTEXT.md)'}
430
+ </check_dimensions>
431
+
432
+ <expected_output>
433
+ - ## VERIFICATION PASSED — all checks pass
434
+ - ## ISSUES FOUND — structured issue list
435
+ </expected_output>
436
+ ```
437
+
438
+ ```
439
+ Task(
440
+ prompt=checker_prompt,
441
+ subagent_type="vector-plan-checker",
442
+ model="{checker_model}",
443
+ description="Check quick plan: ${DESCRIPTION}"
444
+ )
445
+ ```
446
+
447
+ **Handle checker return:**
448
+
449
+ - **`## VERIFICATION PASSED`:** Display confirmation, proceed to step 6.
450
+ - **`## ISSUES FOUND`:** Display issues, check iteration count, enter revision loop.
451
+
452
+ **Revision loop (max 2 iterations):**
453
+
454
+ Track `iteration_count` (starts at 1 after initial plan + check).
455
+
456
+ **If iteration_count < 2:**
457
+
458
+ Display: `Sending back to planner for revision... (iteration ${N}/2)`
459
+
460
+ Revision prompt:
461
+
462
+ ```markdown
463
+ <revision_context>
464
+ **Mode:** quick-full (revision)
465
+
466
+ <files_to_read>
467
+ - ${QUICK_DIR}/${quick_id}-PLAN.md (Existing plan)
468
+ </files_to_read>
469
+
470
+ **Checker issues:** ${structured_issues_from_checker}
471
+
472
+ </revision_context>
473
+
474
+ <instructions>
475
+ Make targeted updates to address checker issues.
476
+ Do NOT replan from scratch unless issues are fundamental.
477
+ Return what changed.
478
+ </instructions>
479
+ ```
480
+
481
+ ```
482
+ Task(
483
+ prompt=revision_prompt,
484
+ subagent_type="vector-planner",
485
+ model="{planner_model}",
486
+ description="Revise quick plan: ${DESCRIPTION}"
487
+ )
488
+ ```
489
+
490
+ After planner returns → spawn checker again, increment iteration_count.
491
+
492
+ **If iteration_count >= 2:**
493
+
494
+ Display: `Max iterations reached. ${N} issues remain:` + issue list
495
+
496
+ Offer: 1) Force proceed, 2) Abort
497
+
498
+ ---
499
+
500
+ **Step 6: Spawn executor**
501
+
502
+ Spawn vector-executor with plan reference:
503
+
504
+ ```
505
+ Task(
506
+ prompt="
507
+ Execute quick task ${quick_id}.
508
+
509
+ <files_to_read>
510
+ - ${QUICK_DIR}/${quick_id}-PLAN.md (Plan)
511
+ - .planning/STATE.md (Project state)
512
+ - ./CLAUDE.md (Project instructions, if exists)
513
+ - .claude/skills/ or .agents/skills/ (Project skills, if either exists — list skills, read SKILL.md for each, follow relevant rules during implementation)
514
+ </files_to_read>
515
+
516
+ <constraints>
517
+ - Execute all tasks in the plan
518
+ - Commit each task atomically
519
+ - Create summary at: ${QUICK_DIR}/${quick_id}-SUMMARY.md
520
+ - Do NOT update ROADMAP.md (quick tasks are separate from planned phases)
521
+ </constraints>
522
+ ",
523
+ subagent_type="vector-executor",
524
+ model="{executor_model}",
525
+ description="Execute: ${DESCRIPTION}"
526
+ )
527
+ ```
528
+
529
+ After executor returns:
530
+ 1. Verify summary exists at `${QUICK_DIR}/${quick_id}-SUMMARY.md`
531
+ 2. Extract commit hash from executor output
532
+ 3. Report completion status
533
+
534
+ **Known Claude Code bug (classifyHandoffIfNeeded):** If executor reports "failed" with error `classifyHandoffIfNeeded is not defined`, this is a Claude Code runtime bug — not a real failure. Check if summary file exists and git log shows commits. If so, treat as successful.
535
+
536
+ If summary not found, error: "Executor failed to create ${quick_id}-SUMMARY.md"
537
+
538
+ Note: For quick tasks producing multiple plans (rare), spawn executors in parallel waves per execute-phase patterns.
539
+
540
+ ---
541
+
542
+ **Step 6.5: Verification (only when `$FULL_MODE`)**
543
+
544
+ Skip this step entirely if NOT `$FULL_MODE`.
545
+
546
+ Display banner:
547
+ ```
548
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
549
+ Vector ► VERIFYING RESULTS
550
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
551
+
552
+ ◆ Spawning verifier...
553
+ ```
554
+
555
+ ```
556
+ Task(
557
+ prompt="Verify quick task goal achievement.
558
+ Task directory: ${QUICK_DIR}
559
+ Task goal: ${DESCRIPTION}
560
+
561
+ <files_to_read>
562
+ - ${QUICK_DIR}/${quick_id}-PLAN.md (Plan)
563
+ </files_to_read>
564
+
565
+ Check must_haves against actual codebase. Create VERIFICATION.md at ${QUICK_DIR}/${quick_id}-VERIFICATION.md.",
566
+ subagent_type="vector-verifier",
567
+ model="{verifier_model}",
568
+ description="Verify: ${DESCRIPTION}"
569
+ )
570
+ ```
571
+
572
+ Read verification status:
573
+ ```bash
574
+ grep "^status:" "${QUICK_DIR}/${quick_id}-VERIFICATION.md" | cut -d: -f2 | tr -d ' '
575
+ ```
576
+
577
+ Store as `$VERIFICATION_STATUS`.
578
+
579
+ | Status | Action |
580
+ |--------|--------|
581
+ | `passed` | Store `$VERIFICATION_STATUS = "Verified"`, continue to step 7 |
582
+ | `human_needed` | Display items needing manual check, store `$VERIFICATION_STATUS = "Needs Review"`, continue |
583
+ | `gaps_found` | Display gap summary, offer: 1) Re-run executor to fix gaps, 2) Accept as-is. Store `$VERIFICATION_STATUS = "Gaps"` |
584
+
585
+ ---
586
+
587
+ **Step 7: Update STATE.md**
588
+
589
+ Update STATE.md with quick task completion record.
590
+
591
+ **7a. Check if "Quick Tasks Completed" section exists:**
592
+
593
+ Read STATE.md and check for `### Quick Tasks Completed` section.
594
+
595
+ **7b. If section doesn't exist, create it:**
596
+
597
+ Insert after `### Blockers/Concerns` section:
598
+
599
+ **If `$FULL_MODE`:**
600
+ ```markdown
601
+ ### Quick Tasks Completed
602
+
603
+ | # | Description | Date | Commit | Status | Directory |
604
+ |---|-------------|------|--------|--------|-----------|
605
+ ```
606
+
607
+ **If NOT `$FULL_MODE`:**
608
+ ```markdown
609
+ ### Quick Tasks Completed
610
+
611
+ | # | Description | Date | Commit | Directory |
612
+ |---|-------------|------|--------|-----------|
613
+ ```
614
+
615
+ **Note:** If the table already exists, match its existing column format. If adding `--full` to a project that already has quick tasks without a Status column, add the Status column to the header and separator rows, and leave Status empty for the new row's predecessors.
616
+
617
+ **7c. Append new row to table:**
618
+
619
+ Use `date` from init:
620
+
621
+ **If `$FULL_MODE` (or table has Status column):**
622
+ ```markdown
623
+ | ${quick_id} | ${DESCRIPTION} | ${date} | ${commit_hash} | ${VERIFICATION_STATUS} | [${quick_id}-${slug}](./quick/${quick_id}-${slug}/) |
624
+ ```
625
+
626
+ **If NOT `$FULL_MODE` (and table has no Status column):**
627
+ ```markdown
628
+ | ${quick_id} | ${DESCRIPTION} | ${date} | ${commit_hash} | [${quick_id}-${slug}](./quick/${quick_id}-${slug}/) |
629
+ ```
630
+
631
+ **7d. Update "Last activity" line:**
632
+
633
+ Use `date` from init:
634
+ ```
635
+ Last activity: ${date} - Completed quick task ${quick_id}: ${DESCRIPTION}
636
+ ```
637
+
638
+ Use Edit tool to make these changes atomically
639
+
640
+ ---
641
+
642
+ **Step 8: Final commit and completion**
643
+
644
+ Stage and commit quick task artifacts:
645
+
646
+ Build file list:
647
+ - `${QUICK_DIR}/${quick_id}-PLAN.md`
648
+ - `${QUICK_DIR}/${quick_id}-SUMMARY.md`
649
+ - `.planning/STATE.md`
650
+ - If `$DISCUSS_MODE` and context file exists: `${QUICK_DIR}/${quick_id}-CONTEXT.md`
651
+ - If `$RESEARCH_MODE` and research file exists: `${QUICK_DIR}/${quick_id}-RESEARCH.md`
652
+ - If `$FULL_MODE` and verification file exists: `${QUICK_DIR}/${quick_id}-VERIFICATION.md`
653
+
654
+ ```bash
655
+ node "$HOME/.claude/core/bin/vector-tools.cjs" commit "docs(quick-${quick_id}): ${DESCRIPTION}" --files ${file_list}
656
+ ```
657
+
658
+ Get final commit hash:
659
+ ```bash
660
+ commit_hash=$(git rev-parse --short HEAD)
661
+ ```
662
+
663
+ Display completion output:
664
+
665
+ **If `$FULL_MODE`:**
666
+ ```
667
+ ---
668
+
669
+ Vector > QUICK TASK COMPLETE (FULL MODE)
670
+
671
+ Quick Task ${quick_id}: ${DESCRIPTION}
672
+
673
+ ${RESEARCH_MODE ? 'Research: ' + QUICK_DIR + '/' + quick_id + '-RESEARCH.md' : ''}
674
+ Summary: ${QUICK_DIR}/${quick_id}-SUMMARY.md
675
+ Verification: ${QUICK_DIR}/${quick_id}-VERIFICATION.md (${VERIFICATION_STATUS})
676
+ Commit: ${commit_hash}
677
+
678
+ ---
679
+
680
+ Ready for next task: /vector:quick
681
+ ```
682
+
683
+ **If NOT `$FULL_MODE`:**
684
+ ```
685
+ ---
686
+
687
+ Vector > QUICK TASK COMPLETE
688
+
689
+ Quick Task ${quick_id}: ${DESCRIPTION}
690
+
691
+ ${RESEARCH_MODE ? 'Research: ' + QUICK_DIR + '/' + quick_id + '-RESEARCH.md' : ''}
692
+ Summary: ${QUICK_DIR}/${quick_id}-SUMMARY.md
693
+ Commit: ${commit_hash}
694
+
695
+ ---
696
+
697
+ Ready for next task: /vector:quick
698
+ ```
699
+
700
+ </process>
701
+
702
+ <success_criteria>
703
+ - [ ] ROADMAP.md validation passes
704
+ - [ ] User provides task description
705
+ - [ ] `--full`, `--discuss`, and `--research` flags parsed from arguments when present
706
+ - [ ] Slug generated (lowercase, hyphens, max 40 chars)
707
+ - [ ] Quick ID generated (YYMMDD-xxx format, 2s Base36 precision)
708
+ - [ ] Directory created at `.planning/quick/YYMMDD-xxx-slug/`
709
+ - [ ] (--discuss) Gray areas identified and presented, decisions captured in `${quick_id}-CONTEXT.md`
710
+ - [ ] (--research) Research agent spawned, `${quick_id}-RESEARCH.md` created
711
+ - [ ] `${quick_id}-PLAN.md` created by planner (honors CONTEXT.md decisions when --discuss, uses RESEARCH.md findings when --research)
712
+ - [ ] (--full) Plan checker validates plan, revision loop capped at 2
713
+ - [ ] `${quick_id}-SUMMARY.md` created by executor
714
+ - [ ] (--full) `${quick_id}-VERIFICATION.md` created by verifier
715
+ - [ ] STATE.md updated with quick task row (Status column when --full)
716
+ - [ ] Artifacts committed
717
+ </success_criteria>