orbital-command 0.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 (325) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +396 -0
  3. package/bin/orbital.js +362 -0
  4. package/dist/assets/WorkflowVisualizer-BZ21PIIF.js +84 -0
  5. package/dist/assets/WorkflowVisualizer-BZV40eAE.css +1 -0
  6. package/dist/assets/charts-D__PA1zp.js +72 -0
  7. package/dist/assets/index-D1G6i0nS.css +1 -0
  8. package/dist/assets/index-DpItvKpf.js +419 -0
  9. package/dist/assets/ui-BvF022GT.js +53 -0
  10. package/dist/assets/vendor-Dzv9lrRc.js +59 -0
  11. package/dist/index.html +19 -0
  12. package/dist/scanner-sweep.png +0 -0
  13. package/dist/server/server/adapters/index.js +34 -0
  14. package/dist/server/server/adapters/iterm2-adapter.js +29 -0
  15. package/dist/server/server/adapters/subprocess-adapter.js +21 -0
  16. package/dist/server/server/adapters/terminal-adapter.js +1 -0
  17. package/dist/server/server/config.js +156 -0
  18. package/dist/server/server/database.js +90 -0
  19. package/dist/server/server/index.js +372 -0
  20. package/dist/server/server/init.js +811 -0
  21. package/dist/server/server/parsers/event-parser.js +64 -0
  22. package/dist/server/server/parsers/scope-parser.js +188 -0
  23. package/dist/server/server/routes/config-routes.js +163 -0
  24. package/dist/server/server/routes/data-routes.js +461 -0
  25. package/dist/server/server/routes/dispatch-routes.js +215 -0
  26. package/dist/server/server/routes/git-routes.js +92 -0
  27. package/dist/server/server/routes/scope-routes.js +215 -0
  28. package/dist/server/server/routes/sprint-routes.js +116 -0
  29. package/dist/server/server/routes/version-routes.js +130 -0
  30. package/dist/server/server/routes/workflow-routes.js +185 -0
  31. package/dist/server/server/schema.js +90 -0
  32. package/dist/server/server/services/batch-orchestrator.js +253 -0
  33. package/dist/server/server/services/claude-session-service.js +352 -0
  34. package/dist/server/server/services/config-service.js +132 -0
  35. package/dist/server/server/services/deploy-service.js +51 -0
  36. package/dist/server/server/services/event-service.js +63 -0
  37. package/dist/server/server/services/gate-service.js +83 -0
  38. package/dist/server/server/services/git-service.js +309 -0
  39. package/dist/server/server/services/github-service.js +145 -0
  40. package/dist/server/server/services/readiness-service.js +184 -0
  41. package/dist/server/server/services/scope-cache.js +72 -0
  42. package/dist/server/server/services/scope-service.js +424 -0
  43. package/dist/server/server/services/sprint-orchestrator.js +312 -0
  44. package/dist/server/server/services/sprint-service.js +293 -0
  45. package/dist/server/server/services/workflow-service.js +397 -0
  46. package/dist/server/server/utils/cc-hooks-parser.js +49 -0
  47. package/dist/server/server/utils/dispatch-utils.js +305 -0
  48. package/dist/server/server/utils/logger.js +86 -0
  49. package/dist/server/server/utils/terminal-launcher.js +388 -0
  50. package/dist/server/server/utils/worktree-manager.js +98 -0
  51. package/dist/server/server/watchers/event-watcher.js +81 -0
  52. package/dist/server/server/watchers/scope-watcher.js +33 -0
  53. package/dist/server/shared/api-types.js +5 -0
  54. package/dist/server/shared/default-workflow.json +616 -0
  55. package/dist/server/shared/workflow-config.js +44 -0
  56. package/dist/server/shared/workflow-engine.js +353 -0
  57. package/index.html +15 -0
  58. package/package.json +110 -0
  59. package/postcss.config.js +6 -0
  60. package/schemas/orbital.config.schema.json +83 -0
  61. package/scripts/postinstall.js +24 -0
  62. package/scripts/start.sh +20 -0
  63. package/server/adapters/index.ts +41 -0
  64. package/server/adapters/iterm2-adapter.ts +37 -0
  65. package/server/adapters/subprocess-adapter.ts +25 -0
  66. package/server/adapters/terminal-adapter.ts +24 -0
  67. package/server/config.ts +234 -0
  68. package/server/database.ts +107 -0
  69. package/server/index.ts +452 -0
  70. package/server/init.ts +891 -0
  71. package/server/parsers/event-parser.ts +74 -0
  72. package/server/parsers/scope-parser.ts +240 -0
  73. package/server/routes/config-routes.ts +182 -0
  74. package/server/routes/data-routes.ts +548 -0
  75. package/server/routes/dispatch-routes.ts +275 -0
  76. package/server/routes/git-routes.ts +112 -0
  77. package/server/routes/scope-routes.ts +262 -0
  78. package/server/routes/sprint-routes.ts +142 -0
  79. package/server/routes/version-routes.ts +156 -0
  80. package/server/routes/workflow-routes.ts +198 -0
  81. package/server/schema.ts +90 -0
  82. package/server/services/batch-orchestrator.ts +286 -0
  83. package/server/services/claude-session-service.ts +441 -0
  84. package/server/services/config-service.ts +151 -0
  85. package/server/services/deploy-service.ts +98 -0
  86. package/server/services/event-service.ts +98 -0
  87. package/server/services/gate-service.ts +126 -0
  88. package/server/services/git-service.ts +391 -0
  89. package/server/services/github-service.ts +183 -0
  90. package/server/services/readiness-service.ts +250 -0
  91. package/server/services/scope-cache.ts +81 -0
  92. package/server/services/scope-service.ts +476 -0
  93. package/server/services/sprint-orchestrator.ts +361 -0
  94. package/server/services/sprint-service.ts +415 -0
  95. package/server/services/workflow-service.ts +461 -0
  96. package/server/utils/cc-hooks-parser.ts +70 -0
  97. package/server/utils/dispatch-utils.ts +395 -0
  98. package/server/utils/logger.ts +109 -0
  99. package/server/utils/terminal-launcher.ts +462 -0
  100. package/server/utils/worktree-manager.ts +104 -0
  101. package/server/watchers/event-watcher.ts +100 -0
  102. package/server/watchers/scope-watcher.ts +38 -0
  103. package/shared/api-types.ts +20 -0
  104. package/shared/default-workflow.json +616 -0
  105. package/shared/workflow-config.ts +170 -0
  106. package/shared/workflow-engine.ts +427 -0
  107. package/src/App.tsx +33 -0
  108. package/src/components/AgentBadge.tsx +40 -0
  109. package/src/components/BatchPreflightModal.tsx +115 -0
  110. package/src/components/CardDisplayToggle.tsx +74 -0
  111. package/src/components/ColumnHeaderActions.tsx +55 -0
  112. package/src/components/ColumnMenu.tsx +99 -0
  113. package/src/components/DeployHistory.tsx +141 -0
  114. package/src/components/DispatchModal.tsx +164 -0
  115. package/src/components/DispatchPopover.tsx +139 -0
  116. package/src/components/DragOverlay.tsx +25 -0
  117. package/src/components/DriftSidebar.tsx +140 -0
  118. package/src/components/EnvironmentStrip.tsx +88 -0
  119. package/src/components/ErrorBoundary.tsx +62 -0
  120. package/src/components/FilterChip.tsx +105 -0
  121. package/src/components/GateIndicator.tsx +33 -0
  122. package/src/components/IdeaDetailModal.tsx +190 -0
  123. package/src/components/IdeaFormDialog.tsx +113 -0
  124. package/src/components/KanbanColumn.tsx +201 -0
  125. package/src/components/MarkdownRenderer.tsx +114 -0
  126. package/src/components/NeonGrid.tsx +128 -0
  127. package/src/components/PromotionQueue.tsx +89 -0
  128. package/src/components/ScopeCard.tsx +234 -0
  129. package/src/components/ScopeDetailModal.tsx +255 -0
  130. package/src/components/ScopeFilterBar.tsx +152 -0
  131. package/src/components/SearchInput.tsx +102 -0
  132. package/src/components/SessionPanel.tsx +335 -0
  133. package/src/components/SprintContainer.tsx +303 -0
  134. package/src/components/SprintDependencyDialog.tsx +78 -0
  135. package/src/components/SprintPreflightModal.tsx +138 -0
  136. package/src/components/StatusBar.tsx +168 -0
  137. package/src/components/SwimCell.tsx +67 -0
  138. package/src/components/SwimLaneRow.tsx +94 -0
  139. package/src/components/SwimlaneBoardView.tsx +108 -0
  140. package/src/components/VersionBadge.tsx +139 -0
  141. package/src/components/ViewModeSelector.tsx +114 -0
  142. package/src/components/config/AgentChip.tsx +53 -0
  143. package/src/components/config/AgentCreateDialog.tsx +321 -0
  144. package/src/components/config/AgentEditor.tsx +175 -0
  145. package/src/components/config/DirectoryTree.tsx +582 -0
  146. package/src/components/config/FileEditor.tsx +550 -0
  147. package/src/components/config/HookChip.tsx +50 -0
  148. package/src/components/config/StageCard.tsx +198 -0
  149. package/src/components/config/TransitionZone.tsx +173 -0
  150. package/src/components/config/UnifiedWorkflowPipeline.tsx +216 -0
  151. package/src/components/config/WorkflowPipeline.tsx +161 -0
  152. package/src/components/source-control/BranchList.tsx +93 -0
  153. package/src/components/source-control/BranchPanel.tsx +105 -0
  154. package/src/components/source-control/CommitLog.tsx +100 -0
  155. package/src/components/source-control/CommitRow.tsx +47 -0
  156. package/src/components/source-control/GitHubPanel.tsx +110 -0
  157. package/src/components/source-control/GitHubSetupGuide.tsx +52 -0
  158. package/src/components/source-control/GitOverviewBar.tsx +101 -0
  159. package/src/components/source-control/PullRequestList.tsx +69 -0
  160. package/src/components/source-control/WorktreeList.tsx +80 -0
  161. package/src/components/ui/badge.tsx +41 -0
  162. package/src/components/ui/button.tsx +55 -0
  163. package/src/components/ui/card.tsx +78 -0
  164. package/src/components/ui/dialog.tsx +94 -0
  165. package/src/components/ui/popover.tsx +33 -0
  166. package/src/components/ui/scroll-area.tsx +54 -0
  167. package/src/components/ui/separator.tsx +28 -0
  168. package/src/components/ui/tabs.tsx +52 -0
  169. package/src/components/ui/toggle-switch.tsx +35 -0
  170. package/src/components/ui/tooltip.tsx +27 -0
  171. package/src/components/workflow/AddEdgeDialog.tsx +217 -0
  172. package/src/components/workflow/AddListDialog.tsx +201 -0
  173. package/src/components/workflow/ChecklistEditor.tsx +239 -0
  174. package/src/components/workflow/CommandPrefixManager.tsx +118 -0
  175. package/src/components/workflow/ConfigSettingsPanel.tsx +189 -0
  176. package/src/components/workflow/DirectionSelector.tsx +133 -0
  177. package/src/components/workflow/DispatchConfigPanel.tsx +180 -0
  178. package/src/components/workflow/EdgeDetailPanel.tsx +236 -0
  179. package/src/components/workflow/EdgePropertyEditor.tsx +251 -0
  180. package/src/components/workflow/EditToolbar.tsx +138 -0
  181. package/src/components/workflow/HookDetailPanel.tsx +250 -0
  182. package/src/components/workflow/HookExecutionLog.tsx +24 -0
  183. package/src/components/workflow/HookSourceModal.tsx +129 -0
  184. package/src/components/workflow/HooksDashboard.tsx +363 -0
  185. package/src/components/workflow/ListPropertyEditor.tsx +251 -0
  186. package/src/components/workflow/MigrationPreviewDialog.tsx +237 -0
  187. package/src/components/workflow/MovementRulesPanel.tsx +188 -0
  188. package/src/components/workflow/NodeDetailPanel.tsx +245 -0
  189. package/src/components/workflow/PresetSelector.tsx +414 -0
  190. package/src/components/workflow/SkillCommandBuilder.tsx +174 -0
  191. package/src/components/workflow/WorkflowEdgeComponent.tsx +145 -0
  192. package/src/components/workflow/WorkflowNode.tsx +147 -0
  193. package/src/components/workflow/graphLayout.ts +186 -0
  194. package/src/components/workflow/mergeHooks.ts +85 -0
  195. package/src/components/workflow/useEditHistory.ts +88 -0
  196. package/src/components/workflow/useWorkflowEditor.ts +262 -0
  197. package/src/components/workflow/validateConfig.ts +70 -0
  198. package/src/hooks/useActiveDispatches.ts +198 -0
  199. package/src/hooks/useBoardSettings.ts +170 -0
  200. package/src/hooks/useCardDisplay.ts +57 -0
  201. package/src/hooks/useCcHooks.ts +24 -0
  202. package/src/hooks/useConfigTree.ts +51 -0
  203. package/src/hooks/useEnforcementRules.ts +46 -0
  204. package/src/hooks/useEvents.ts +59 -0
  205. package/src/hooks/useFileEditor.ts +165 -0
  206. package/src/hooks/useGates.ts +57 -0
  207. package/src/hooks/useIdeaActions.ts +53 -0
  208. package/src/hooks/useKanbanDnd.ts +410 -0
  209. package/src/hooks/useOrbitalConfig.ts +54 -0
  210. package/src/hooks/usePipeline.ts +47 -0
  211. package/src/hooks/usePipelineData.ts +338 -0
  212. package/src/hooks/useReconnect.ts +25 -0
  213. package/src/hooks/useScopeFilters.ts +125 -0
  214. package/src/hooks/useScopeSessions.ts +44 -0
  215. package/src/hooks/useScopes.ts +67 -0
  216. package/src/hooks/useSearch.ts +67 -0
  217. package/src/hooks/useSettings.tsx +187 -0
  218. package/src/hooks/useSocket.ts +25 -0
  219. package/src/hooks/useSourceControl.ts +105 -0
  220. package/src/hooks/useSprintPreflight.ts +55 -0
  221. package/src/hooks/useSprints.ts +154 -0
  222. package/src/hooks/useStatusBarHighlight.ts +18 -0
  223. package/src/hooks/useSwimlaneBoardSettings.ts +104 -0
  224. package/src/hooks/useTheme.ts +9 -0
  225. package/src/hooks/useTransitionReadiness.ts +53 -0
  226. package/src/hooks/useVersion.ts +155 -0
  227. package/src/hooks/useViolations.ts +65 -0
  228. package/src/hooks/useWorkflow.tsx +125 -0
  229. package/src/hooks/useZoomModifier.ts +19 -0
  230. package/src/index.css +797 -0
  231. package/src/layouts/DashboardLayout.tsx +113 -0
  232. package/src/lib/collisionDetection.ts +20 -0
  233. package/src/lib/scope-fields.ts +61 -0
  234. package/src/lib/swimlane.ts +146 -0
  235. package/src/lib/utils.ts +15 -0
  236. package/src/main.tsx +19 -0
  237. package/src/socket.ts +11 -0
  238. package/src/types/index.ts +497 -0
  239. package/src/views/AgentFeed.tsx +339 -0
  240. package/src/views/DeployPipeline.tsx +59 -0
  241. package/src/views/EnforcementView.tsx +378 -0
  242. package/src/views/PrimitivesConfig.tsx +500 -0
  243. package/src/views/QualityGates.tsx +1012 -0
  244. package/src/views/ScopeBoard.tsx +454 -0
  245. package/src/views/SessionTimeline.tsx +516 -0
  246. package/src/views/Settings.tsx +183 -0
  247. package/src/views/SourceControl.tsx +95 -0
  248. package/src/views/WorkflowVisualizer.tsx +382 -0
  249. package/tailwind.config.js +161 -0
  250. package/templates/agents/AUTO-INVOKE.md +180 -0
  251. package/templates/agents/CONFLICT-RESOLUTION.md +128 -0
  252. package/templates/agents/QUICK-REFERENCE.md +122 -0
  253. package/templates/agents/README.md +188 -0
  254. package/templates/agents/SKILL-TRIGGERS.md +100 -0
  255. package/templates/agents/blue-team/frontend-designer.md +424 -0
  256. package/templates/agents/green-team/architect.md +526 -0
  257. package/templates/agents/green-team/rules-enforcer.md +131 -0
  258. package/templates/agents/red-team/attacker-learned.md +24 -0
  259. package/templates/agents/red-team/attacker.md +486 -0
  260. package/templates/agents/red-team/chaos.md +548 -0
  261. package/templates/agents/reference/component-registry.md +82 -0
  262. package/templates/agents/workflows/full-mode.md +218 -0
  263. package/templates/agents/workflows/quick-mode.md +118 -0
  264. package/templates/agents/workflows/security-mode.md +283 -0
  265. package/templates/anti-patterns/dangerous-shortcuts.md +427 -0
  266. package/templates/config/agent-triggers.json +92 -0
  267. package/templates/hooks/agent-team-gate.sh +31 -0
  268. package/templates/hooks/agent-trigger.sh +97 -0
  269. package/templates/hooks/block-push.sh +66 -0
  270. package/templates/hooks/block-workarounds.sh +61 -0
  271. package/templates/hooks/blocker-check.sh +28 -0
  272. package/templates/hooks/completion-checklist.sh +28 -0
  273. package/templates/hooks/decision-capture.sh +15 -0
  274. package/templates/hooks/dependency-check.sh +27 -0
  275. package/templates/hooks/end-session.sh +31 -0
  276. package/templates/hooks/exploration-logger.sh +37 -0
  277. package/templates/hooks/files-changed-summary.sh +37 -0
  278. package/templates/hooks/get-session-id.sh +49 -0
  279. package/templates/hooks/git-commit-guard.sh +34 -0
  280. package/templates/hooks/init-session.sh +93 -0
  281. package/templates/hooks/orbital-emit.sh +79 -0
  282. package/templates/hooks/orbital-report-deploy.sh +78 -0
  283. package/templates/hooks/orbital-report-gates.sh +40 -0
  284. package/templates/hooks/orbital-report-violation.sh +36 -0
  285. package/templates/hooks/orbital-scope-update.sh +53 -0
  286. package/templates/hooks/phase-verify-reminder.sh +26 -0
  287. package/templates/hooks/review-gate-check.sh +82 -0
  288. package/templates/hooks/scope-commit-logger.sh +37 -0
  289. package/templates/hooks/scope-create-cleanup.sh +36 -0
  290. package/templates/hooks/scope-create-gate.sh +80 -0
  291. package/templates/hooks/scope-create-tracker.sh +17 -0
  292. package/templates/hooks/scope-file-sync.sh +53 -0
  293. package/templates/hooks/scope-gate.sh +35 -0
  294. package/templates/hooks/scope-helpers.sh +188 -0
  295. package/templates/hooks/scope-lifecycle-gate.sh +139 -0
  296. package/templates/hooks/scope-prepare.sh +244 -0
  297. package/templates/hooks/scope-transition.sh +172 -0
  298. package/templates/hooks/session-enforcer.sh +143 -0
  299. package/templates/hooks/time-tracker.sh +33 -0
  300. package/templates/lessons-learned.md +15 -0
  301. package/templates/orbital.config.json +35 -0
  302. package/templates/presets/development.json +42 -0
  303. package/templates/presets/gitflow.json +712 -0
  304. package/templates/presets/minimal.json +23 -0
  305. package/templates/quick/rules.md +218 -0
  306. package/templates/scopes/_template.md +255 -0
  307. package/templates/settings-hooks.json +98 -0
  308. package/templates/skills/git-commit/SKILL.md +85 -0
  309. package/templates/skills/git-dev/SKILL.md +99 -0
  310. package/templates/skills/git-hotfix/SKILL.md +223 -0
  311. package/templates/skills/git-main/SKILL.md +84 -0
  312. package/templates/skills/git-production/SKILL.md +165 -0
  313. package/templates/skills/git-staging/SKILL.md +112 -0
  314. package/templates/skills/scope-create/SKILL.md +81 -0
  315. package/templates/skills/scope-fix-review/SKILL.md +168 -0
  316. package/templates/skills/scope-implement/SKILL.md +110 -0
  317. package/templates/skills/scope-post-review/SKILL.md +144 -0
  318. package/templates/skills/scope-pre-review/SKILL.md +211 -0
  319. package/templates/skills/scope-verify/SKILL.md +201 -0
  320. package/templates/skills/session-init/SKILL.md +62 -0
  321. package/templates/skills/session-resume/SKILL.md +201 -0
  322. package/templates/skills/test-checks/SKILL.md +171 -0
  323. package/templates/skills/test-code-review/SKILL.md +252 -0
  324. package/tsconfig.json +25 -0
  325. package/vite.config.ts +38 -0
@@ -0,0 +1,211 @@
1
+ ---
2
+ name: scope-pre-review
3
+ description: Reviews scope documents with full agent team analysis for comprehensive feedback. Use before implementing scopes, for thorough scope review, or when getting multiple perspectives.
4
+ user-invocable: true
5
+ agent-mode: team-review
6
+ ---
7
+
8
+ # /scope-pre-review - Full Agent Team Analysis
9
+
10
+ ## What This Does
11
+
12
+ Invokes the project's agent team to review a scope from all perspectives, applies fixes directly to the SPECIFICATION, then records findings in the AGENT REVIEW section for traceability.
13
+
14
+ **Key principle**: After review, the SPECIFICATION must be a ready-to-execute contract. The implementer should never need to read AGENT REVIEW to know what to build.
15
+
16
+ ## Steps
17
+
18
+ ### Step 0: Record Session ID
19
+
20
+ 1. Run: `bash .claude/hooks/get-session-id.sh` — capture the UUID output
21
+ 2. Read the scope file's YAML frontmatter `sessions` field
22
+ 3. If `sessions:` key doesn't exist in frontmatter, add `sessions: {}` after `tags:`
23
+ 4. If the UUID is NOT already in `sessions.reviewScope`, append it (skip if duplicate)
24
+ 5. Write the updated frontmatter back to the scope file
25
+
26
+ ### Step 1: Load Scope Context
27
+
28
+ Extract from the scope document:
29
+ - **SPECIFICATION section** (primary context for agents)
30
+ - **PROCESS Decisions & Uncertainties** (helps agents understand reasoning)
31
+ - **Files Summary** (determines which agents to invoke)
32
+
33
+ ### Step 2: Determine Which Agents to Invoke
34
+
35
+ Select agents based on `.claude/config/agent-triggers.json` and `orbital.config.json` agents configuration. The trigger file maps file patterns to the agents that should review changes in those areas.
36
+
37
+ Read `.claude/config/agent-triggers.json` and match the scope's **Files Summary** against the configured patterns to determine which agents to launch.
38
+
39
+ ### Step 3: Launch Agent Team in Parallel
40
+
41
+ **Launch all relevant agents in a SINGLE message with parallel Task tool calls.**
42
+
43
+ Read each agent's spec first from `.claude/agents/`. Then launch with `subagent_type: "general-purpose"`:
44
+
45
+ ```
46
+ Task: "Agent Review" — Include full SPECIFICATION section in prompt.
47
+ Each agent reviews from their perspective and returns findings with severity.
48
+ ```
49
+
50
+ ### Step 4: Synthesize Findings with Dispositions
51
+
52
+ Categorize agent findings into BLOCKERS / WARNINGS / SUGGESTIONS / VERIFIED OK (same as before). Then assign each finding a **disposition** that determines what happens next:
53
+
54
+ | Disposition | When to Use | Applied to Spec? |
55
+ |-------------|-------------|-------------------|
56
+ | `APPLY` | Single clear fix, no ambiguity | Yes, automatically |
57
+ | `CLARIFY` | Multiple valid resolution paths — user must choose | Yes, after user answers |
58
+ | `NOTE` | Advisory guidance for the implementer, no spec change needed | No |
59
+
60
+ **Classification rules:**
61
+
62
+ - **BLOCKERS**: Default `APPLY`. Escalate to `CLARIFY` only when the blocker presents two or more valid approaches and the right choice depends on user preference or business context.
63
+ - **WARNINGS**: `APPLY` when they identify a concrete spec gap (missing file, wrong type, missing constraint, incorrect architecture). `NOTE` when advisory ("keep additions minimal", "consider extracting if file grows").
64
+ - **SUGGESTIONS**: Default `NOTE`. Promote to `APPLY` only when they fill an objective spec deficiency (e.g., missing shared component that multiple phases reference).
65
+
66
+ **Resolve conflicts during synthesis** using a priority hierarchy appropriate to the project. Typical ordering:
67
+ 1. Security agents (security wins)
68
+ 2. Domain-critical agents (safety, financial, data integrity)
69
+ 3. Reliability agents (chaos, resilience)
70
+ 4. Domain experts (correctness)
71
+ 5. Architecture agents (patterns)
72
+ 6. UI/UX agents (aesthetics)
73
+
74
+ ### Step 5: Ask Clarifying Questions
75
+
76
+ **After synthesis, before touching the spec** — collect all `CLARIFY` items and present them to the user as a batch. For each item:
77
+ - State the problem clearly
78
+ - List labeled options (A, B, etc.)
79
+ - Provide a recommendation with reasoning
80
+
81
+ Wait for user answers before proceeding.
82
+
83
+ **If zero `CLARIFY` items, skip this step entirely.**
84
+
85
+ Example format:
86
+
87
+ ```
88
+ The review found N items that need your input before I update the spec:
89
+
90
+ **[B-2] Service layer boundary violation**
91
+ Module X has zero DB imports. Adding data lookup inside processRequest() breaks layer purity.
92
+
93
+ A) Push data resolution to callers — callers pass pre-resolved data into Module X (clean layers, slightly more caller code)
94
+ B) Create a thin middleware — wraps Module X calls, resolves data externally (more abstraction, new file)
95
+
96
+ Recommendation: A — matches existing caller-resolves pattern in the codebase
97
+
98
+ **[W-4] Configuration source for feature Y**
99
+ Feature Y uses a flat estimate, has no concept of dynamic configuration.
100
+
101
+ A) Use a config constant (e.g., CONFIG.FEATURE_Y.ESTIMATE)
102
+ B) Calculate from historical data
103
+
104
+ Recommendation: A — simpler, no query overhead
105
+
106
+ Which options? (e.g., "B-2: A, W-4: A" or "agree" for all recommendations)
107
+ ```
108
+
109
+ ### Step 6: Apply Fixes to SPECIFICATION
110
+
111
+ With all `APPLY` items and resolved `CLARIFY` items, systematically update the SPECIFICATION. The review is an authorized modification — no need to toggle `spec_locked`.
112
+
113
+ **What to update, by section:**
114
+
115
+ | Spec Subsection | Types of Changes |
116
+ |-----------------|------------------|
117
+ | **Requirements (Must Have)** | Add missing requirements identified by blockers. Update text to incorporate fixes. |
118
+ | **Requirements (Nice to Have)** | Promote to Must Have if a blocker requires the item. |
119
+ | **Requirements (Out of Scope)** | Add items explicitly excluded by review decisions. |
120
+ | **Technical Approach** | Fix architectural errors (e.g., tier violations). Update diagrams/data flows. Document resolved design decisions. |
121
+ | **Implementation Phases — Files** | Add missing files (test files, schema.sql, etc.). Remove invalid files. Update file descriptions. |
122
+ | **Implementation Phases — Changes** | Update change descriptions to incorporate fixes. Add new change items for blocker-identified work. |
123
+ | **Files Summary** | Add/remove/update rows to match phase file changes. |
124
+ | **Success Criteria** | Add criteria for significant blocker fixes. |
125
+ | **Risk Assessment** | Add new risks identified by agents. Update mitigations. |
126
+ | **Definition of Done** | Add items for significant new requirements. |
127
+
128
+ **Do NOT modify**: DASHBOARD (status updates are Step 8), PROCESS (implementation working memory), AGENT REVIEW (written separately in Step 7).
129
+
130
+ **Add a DEVIATION NOTE** inside the SPECIFICATION HTML comment block:
131
+
132
+ ```html
133
+ <!--
134
+ DEVIATION NOTE (YYYY-MM-DD): Spec updated by /scope-pre-review to address
135
+ N blockers and M warnings. Key changes: [2-3 word summary per major change].
136
+ See AGENT REVIEW section for full traceability.
137
+ -->
138
+ ```
139
+
140
+ ### Step 7: Write AGENT REVIEW Section
141
+
142
+ Write findings to the **AGENT REVIEW** section with the same synthesis format, plus a summary header and **Resolution** lines for traceability:
143
+
144
+ ```markdown
145
+ ### Review Status
146
+ - **Requested**: [agent-list]
147
+ - **Completed**: [agent-list]
148
+ - **Date**: YYYY-MM-DD
149
+
150
+ ### Spec Changes Applied
151
+ N blockers and M warnings applied directly to the SPECIFICATION.
152
+ K items resolved via user clarification.
153
+ J items are implementation notes (no spec change).
154
+
155
+ ### Synthesis
156
+
157
+ **BLOCKERS** (must fix before implementation):
158
+
159
+ - [B-1] Description (Source: Agent, Severity)
160
+ **Resolution**: APPLIED — [one-line summary of what changed in the spec]
161
+
162
+ - [B-2] Description (Source: Agent, Severity)
163
+ **Resolution**: APPLIED (user chose Option A) — [one-line summary]
164
+
165
+ - [B-3] Description (Source: Agent)
166
+ **Resolution**: NOTE — [why no spec change: advisory guidance, implementation detail, etc.]
167
+
168
+ **WARNINGS** (should fix):
169
+
170
+ - [W-1] Description (Source: Agent)
171
+ **Resolution**: APPLIED — [what changed]
172
+
173
+ - [W-2] Description (Source: Agent)
174
+ **Resolution**: NOTE — implementation guidance for the executor
175
+
176
+ **SUGGESTIONS** (nice to have):
177
+
178
+ - [S-1] Description (Source: Agent)
179
+ **Resolution**: NOTE — optional enhancement, not applied to spec
180
+
181
+ - [S-2] Description (Source: Agent)
182
+ **Resolution**: APPLIED — [what changed]
183
+
184
+ **VERIFIED OK**:
185
+ - [Points agents confirmed are correct]
186
+ ```
187
+
188
+ ### Step 8: Update Scope Status
189
+
190
+ After applying spec fixes and writing the AGENT REVIEW:
191
+ - Update frontmatter: `status: backlog`, `spec_locked: true`
192
+ - Move file: `mv scopes/planning/{file} scopes/backlog/`
193
+ - Update DASHBOARD Quick Status: `🟢 **Status**: Backlog | **Spec Locked**: Yes`
194
+ - Add to Recent Activity: `Review completed — N blockers, M warnings. X items applied to spec, K clarifications resolved.`
195
+
196
+ ### Step 9: Signal Completion
197
+
198
+ Emit the agent completion event so the Orbital Command dashboard turns off the progress indicator:
199
+
200
+ ```bash
201
+ bash .claude/hooks/orbital-emit.sh AGENT_COMPLETED '{"outcome":"success","action":"team_review"}' --scope "{NNN}"
202
+ ```
203
+
204
+ ## Modes
205
+
206
+ | Command | What Runs |
207
+ |---------|-----------|
208
+ | `/scope-pre-review` | All relevant agents based on files |
209
+ | `/scope-pre-review security` | Red team only (security + resilience agents) |
210
+ | `/scope-pre-review domain` | Blue team only (domain experts) |
211
+ | `/scope-pre-review full` | ALL agents regardless of files |
@@ -0,0 +1,201 @@
1
+ ---
2
+ name: scope-verify
3
+ description: Formal review gate that checks spec compliance, session separation, and test gate results before allowing completion. Use when a scope is in review state and ready for formal verification.
4
+ user-invocable: true
5
+ ---
6
+
7
+ # /scope-verify NNN — Formal Review Gate
8
+
9
+ Runs a comprehensive review of a scope before it can be marked as completed. This is the **only** path to completion — the implementing session cannot complete its own work.
10
+
11
+ ## Prerequisites
12
+
13
+ - Scope must be in `scopes/implementing/` (primary) or `scopes/review/` (re-runs)
14
+ - Scope must have `sessions.implementScope` recorded (implementation happened)
15
+ - Current session must be **different** from the implementing session
16
+
17
+ ## Workflow
18
+
19
+ ### Step 0: Record Session ID
20
+
21
+ 1. Run: `bash .claude/hooks/get-session-id.sh` — capture the UUID output
22
+ 2. Read the scope file's YAML frontmatter `sessions` field
23
+ 3. If `sessions:` key doesn't exist in frontmatter, add `sessions: {}` after `tags:`
24
+ 4. If the UUID is NOT already in `sessions.reviewGate`, append it (skip if duplicate)
25
+ 5. Write the updated frontmatter back to the scope file
26
+
27
+ ### Step 1: Validate Preconditions
28
+
29
+ 1. Find the scope file: `scopes/implementing/*{NNN}*.md` (primary) or `scopes/review/*{NNN}*.md` (re-runs)
30
+ - If not found in either directory, error: "Scope NNN not found."
31
+ 2. Read frontmatter — verify `status: implementing` or `status: review`
32
+ 3. Read `sessions.implementScope` — must exist and be non-empty
33
+ 4. **Session separation**: Compare current session UUID with ALL UUIDs in `sessions.implementScope`
34
+ - If current UUID appears in `implementScope` → **BLOCK**:
35
+ ```
36
+ Session separation violation: You implemented this scope.
37
+ A different session must run the review gate.
38
+ Start a new Claude Code session and run: /scope-post-review NNN
39
+ ```
40
+
41
+ ### Step 2: Check Test Gate Results
42
+
43
+ Before proceeding, verify that `/test-checks` and `/test-code-review` have been run. This skill does NOT embed the full test suite itself — it checks whether test results already exist.
44
+
45
+ 1. Check for recent test gate results (e.g., gate reports from Orbital Command, or recent passing test output in the session)
46
+ 2. If no test results exist, **BLOCK**:
47
+ ```
48
+ Test gate results not found. Run /test-checks and /test-code-review first,
49
+ then re-run /scope-post-review NNN.
50
+ ```
51
+ 3. If test results exist but contain failures, **BLOCK** and report the failures.
52
+
53
+ ### Step 3: Scope-Specific Checks
54
+
55
+ Run 3 checks that the test gates don't cover:
56
+
57
+ #### 3a. Spec Compliance (Agent Judgment)
58
+
59
+ 1. Read the scope's **SPECIFICATION** section (Part 2):
60
+ - Requirements (Must Have, Nice to Have)
61
+ - Implementation Phases
62
+ - Success Criteria
63
+ - Definition of Done
64
+ 2. Read `baseCommit` from scope frontmatter (set when scope entered implementing)
65
+ - If `baseCommit` exists: `git diff ${baseCommit}...HEAD -- $(list files from scope's Files Summary table)`
66
+ - If `baseCommit` missing and `WORKFLOW_BRANCHING_MODE=worktree`: `git diff main...HEAD -- $(list files)`
67
+ - If `baseCommit` missing and trunk mode: `git diff HEAD~10...HEAD -- $(list files)` (heuristic fallback)
68
+ 3. Cross-reference each "Must Have" requirement against the actual changes
69
+ 4. Verify each Success Criteria item is addressed
70
+ 5. **Verdict**: PASS if all Must Have requirements and Success Criteria are addressed, FAIL otherwise
71
+ 6. **Evidence**: List each requirement and whether it was found in the diff
72
+
73
+ #### 3b. No Follow-on Work (Agent Judgment)
74
+
75
+ 1. Read the scope's **PROCESS** section (Part 3):
76
+ - Check "Deviations from Spec" for any items marked as deferred
77
+ - Check Implementation Log for TODOs or "will do later" language
78
+ 2. Read the scope's **AGENT REVIEW** section:
79
+ - Check for unresolved BLOCKERs
80
+ 3. Read the scope's **DASHBOARD** section:
81
+ - Check all phases are marked `✅ Done`
82
+ - Check for incomplete Next Actions
83
+ 4. **Verdict**: PASS if no deferred work is found, FAIL otherwise
84
+ 5. **Evidence**: List any deferred items found (or "No deferred items, 0 unresolved blockers")
85
+
86
+ #### 3c. Project-Specific Validation (Machine-Verifiable)
87
+
88
+ Run any project-specific validation commands from `orbital.config.json`:
89
+ - Run `commands.validateTemplates` (if configured, skip if null)
90
+ - Run `commands.validateDocs` (if configured, skip if null)
91
+ - Run `commands.checkRules` (if configured, skip if null)
92
+
93
+ 1. If no project-specific commands are configured → **PASS** with evidence "No project-specific validations configured"
94
+ 2. If commands are configured:
95
+ - Run each non-null command
96
+ - **Verdict**: PASS if all configured commands succeed, FAIL otherwise
97
+ 3. **Evidence**: List commands run and their results
98
+
99
+ ### Step 4: Write Verdict File
100
+
101
+ Write the verdict to `.claude/review-verdicts/{NNN}.json`:
102
+
103
+ ```json
104
+ {
105
+ "scopeId": NNN,
106
+ "verdict": "PASS|FAIL",
107
+ "reviewSession": "<current-session-uuid>",
108
+ "implementSession": "<first-uuid-from-sessions.implementScope>",
109
+ "reviewedAt": "<ISO-8601-timestamp>",
110
+ "criteria": {
111
+ "test_gates": {
112
+ "verdict": "PASS|FAIL",
113
+ "evidence": "<summary of /test-checks and /test-code-review results>"
114
+ },
115
+ "spec_compliance": {
116
+ "verdict": "PASS|FAIL",
117
+ "evidence": "<list of requirements checked>"
118
+ },
119
+ "no_followon_work": {
120
+ "verdict": "PASS|FAIL",
121
+ "evidence": "<deferred items or 'none found'>"
122
+ },
123
+ "project_validation": {
124
+ "verdict": "PASS|FAIL",
125
+ "evidence": "<validation status>"
126
+ }
127
+ }
128
+ }
129
+ ```
130
+
131
+ Overall verdict is PASS only if ALL 4 criteria are PASS.
132
+
133
+ ### Step 5: Update Scope
134
+
135
+ 1. Update the scope's **AGENT REVIEW** section with a review gate summary:
136
+ ```markdown
137
+ ### Review Gate — YYYY-MM-DD
138
+ - **Verdict**: PASS/FAIL
139
+ - **Session**: <uuid>
140
+ - **test_gates**: PASS/FAIL — <evidence>
141
+ - **spec_compliance**: PASS/FAIL — <evidence>
142
+ - **no_followon_work**: PASS/FAIL — <evidence>
143
+ - **project_validation**: PASS/FAIL — <evidence>
144
+ ```
145
+
146
+ ### Step 6: Scope Transition (on PASS only)
147
+
148
+ If all criteria passed:
149
+ 1. Move scope file: `mv scopes/implementing/{file} scopes/review/` (or leave in place if already in `scopes/review/`)
150
+ 2. Update frontmatter: `status: review`
151
+ 3. Update DASHBOARD: `✅ **Status**: Reviewed | Ready to Commit`
152
+
153
+ ### Step 7: Report & Next Steps
154
+
155
+ **If any FAIL**:
156
+ ```
157
+ ╔═══════════════════════════════════════════════════════════════╗
158
+ ║ ❌ REVIEW GATE FAILED — Scope NNN ║
159
+ ╠═══════════════════════════════════════════════════════════════╣
160
+ ║ Failed criteria: ║
161
+ ║ • spec_compliance: [evidence] ║
162
+ ║ • no_followon_work: [evidence] ║
163
+ ║ ║
164
+ ║ Fix the issues, then re-run: /scope-post-review NNN ║
165
+ ╚═══════════════════════════════════════════════════════════════╝
166
+ ```
167
+
168
+ Scope stays in `scopes/implementing/` on failure.
169
+
170
+ Then emit the FAIL event and stop:
171
+ ```bash
172
+ bash .claude/hooks/orbital-emit.sh AGENT_COMPLETED '{"outcome":"failure","verdict":"FAIL"}' --scope "{NNN}"
173
+ ```
174
+
175
+ **If all PASS**:
176
+ ```
177
+ ╔═══════════════════════════════════════════════════════════════╗
178
+ ║ ✅ REVIEW GATE PASSED — Scope NNN ║
179
+ ╠═══════════════════════════════════════════════════════════════╣
180
+ ║ All 4 criteria passed. Verdict written to: ║
181
+ ║ .claude/review-verdicts/NNN.json ║
182
+ ║ ║
183
+ ║ Scope moved to review. Ready to commit. ║
184
+ ║ Next: /git-commit to commit. ║
185
+ ╚═══════════════════════════════════════════════════════════════╝
186
+ ```
187
+
188
+ Then emit the success event:
189
+ ```bash
190
+ bash .claude/hooks/orbital-emit.sh AGENT_COMPLETED '{"outcome":"success","verdict":"PASS"}' --scope "{NNN}"
191
+ ```
192
+
193
+ **Do NOT auto-chain** into `/scope complete` or `/git-commit`. The next step is manual.
194
+
195
+ ## Important Notes
196
+
197
+ - The verdict file is the **only** artifact that unlocks committing via `/git-commit`
198
+ - The `review-gate-check.sh` hook enforces this at the Edit tool level
199
+ - Re-running the review gate overwrites the previous verdict file
200
+ - Session separation is enforced at both skill level (Step 1) and hook level
201
+ - On PASS, the scope moves to `scopes/review/` — `/git-commit` handles the next transition
@@ -0,0 +1,62 @@
1
+ ---
2
+ name: session-init
3
+ description: Initializes work session context by loading project state and recent history. Use at session start, when beginning work, or when context needs refreshing.
4
+ user-invocable: true
5
+ ---
6
+
7
+ # /session-init - Re-Initialize Session Context
8
+
9
+ ---
10
+ tokens: ~200
11
+ trigger: /session-init
12
+ purpose: Re-display session initialization and reload critical context
13
+ ---
14
+
15
+ ## What This Does
16
+
17
+ Re-shows the session initialization banner and reloads awareness of the enforcement system. Use when:
18
+ - You've been working a while and need a reset
19
+ - Agent seems to have forgotten the rules
20
+ - Starting a new logical task within the same session
21
+
22
+ ## Steps
23
+
24
+ 1. **Display the initialization banner:**
25
+
26
+ ```
27
+ ══════════════════════════════════════════════════════════════════════════════
28
+ SESSION RE-INITIALIZED
29
+ ══════════════════════════════════════════════════════════════════════════════
30
+
31
+ Before writing ANY code, you MUST:
32
+
33
+ 1. IDENTIFY TASK TYPE & USE THE MATCHING SKILL:
34
+ Check .claude/skills/ for available workflow skills.
35
+ Common patterns:
36
+ ┌────────────────────┬─────────────────────┐
37
+ │ Task │ Invoke First │
38
+ ├────────────────────┼─────────────────────┤
39
+ │ Plan feature │ /scope-create │
40
+ │ Implement scope │ /scope-implement │
41
+ │ Review scope │ /scope-verify │
42
+ │ Commit work │ /git-commit │
43
+ └────────────────────┴─────────────────────┘
44
+
45
+ 2. STATE WHAT YOU READ before proceeding:
46
+ "I have read [specific files] and am ready to proceed."
47
+
48
+ ══════════════════════════════════════════════════════════════════════════════
49
+ PROJECT RULES:
50
+ ══════════════════════════════════════════════════════════════════════════════
51
+
52
+ Read .claude/orbital.config.json for project-specific rules
53
+ and enforcement configuration.
54
+
55
+ ══════════════════════════════════════════════════════════════════════════════
56
+ BEFORE EVERY COMMIT: Run /test-checks
57
+ ══════════════════════════════════════════════════════════════════════════════
58
+ ```
59
+
60
+ 2. **Confirm readiness:**
61
+
62
+ State: "Session re-initialized. Ready to proceed with proper workflow."
@@ -0,0 +1,201 @@
1
+ ---
2
+ name: session-resume
3
+ description: Resumes previous work session by loading saved context and progress. Use when continuing previous work, picking up where left off, or restoring session state.
4
+ user-invocable: true
5
+ ---
6
+
7
+ # /session-resume - Session Resumption
8
+
9
+ Reconstruct context and pick up where you left off.
10
+
11
+ ---
12
+
13
+ ## What This Skill Does
14
+
15
+ Quickly rebuilds context after interruption:
16
+
17
+ 1. **Check git status** - Uncommitted work
18
+ 2. **Check recent commits** - What was done
19
+ 3. **Check scope docs** - In-progress scopes
20
+ 4. **Check TODOs** - Pending markers in code
21
+ 5. **Reconstruct state** - "Where were we?"
22
+ 6. **Identify next steps** - What to do next
23
+
24
+ ---
25
+
26
+ ## When to Use
27
+
28
+ - After context compaction
29
+ - Starting new session with in-progress work
30
+ - Returning after a break
31
+ - "Where were we?"
32
+
33
+ ---
34
+
35
+ ## Trigger Phrases
36
+
37
+ This skill should be suggested when user says:
38
+ - "Where were we?"
39
+ - "What was I working on?"
40
+ - "Resume"
41
+ - "Continue where we left off"
42
+ - "Pick up from before"
43
+
44
+ ---
45
+
46
+ ## Auto-Trigger Contexts
47
+
48
+ This skill should be **automatically suggested** when:
49
+ - Session starts with uncommitted changes in git
50
+ - After context compaction (detected by system)
51
+ - Conversation starts with implicit continuation
52
+
53
+ ---
54
+
55
+ ## Execution
56
+
57
+ ### Step 1: Check Git Status
58
+
59
+ ```bash
60
+ # Uncommitted changes
61
+ git status --short
62
+
63
+ # Recent commits (last 5)
64
+ git log --oneline -5
65
+
66
+ # Current branch
67
+ git branch --show-current
68
+ ```
69
+
70
+ **Parse results:**
71
+ ```markdown
72
+ ### Git Context
73
+
74
+ **Branch**: `feature/scope-012-refactor`
75
+ **Uncommitted changes**: 8 files modified
76
+ **Recent commits**:
77
+ - `abc1234` feat: Add auth middleware (2 hours ago)
78
+ - `def5678` refactor: Extract helper functions (3 hours ago)
79
+ ```
80
+
81
+ ### Step 2: Check Scope Documents
82
+
83
+ ```bash
84
+ # Find in-progress scopes
85
+ grep -l "Status:.*In Progress\|Status:.*in_progress" scopes/*.md
86
+
87
+ # Check most recent scope
88
+ ls -t scopes/*.md | head -1
89
+ ```
90
+
91
+ **Parse scope status:**
92
+ ```markdown
93
+ ### Active Scope
94
+
95
+ **Scope**: 012-service-refactor
96
+ **Status**: In Progress
97
+ **Current Phase**: Phase 2 - Extract Helpers
98
+ **Completed**: Phase 1
99
+ **Remaining**: Phase 2 (in progress), Phase 3, Phase 4
100
+ ```
101
+
102
+ ### Step 3: Check for TODOs
103
+
104
+ ```bash
105
+ # TODO markers in recently modified files
106
+ git diff --name-only HEAD~5 | xargs grep -n "TODO\|FIXME\|XXX" 2>/dev/null
107
+
108
+ # Or in uncommitted changes
109
+ git diff --name-only | xargs grep -n "TODO\|FIXME" 2>/dev/null
110
+ ```
111
+
112
+ ### Step 4: Generate Resume Report
113
+
114
+ ```markdown
115
+ ## Session Resume Report
116
+
117
+ ### Quick Summary
118
+ You were working on **Scope 012: Service Refactor**.
119
+ Last activity was **2 hours ago**.
120
+
121
+ ### Current State
122
+
123
+ **Branch**: `feature/scope-012-refactor`
124
+
125
+ **Uncommitted Work**:
126
+ - `src/utils/helpers.ts` - New file (extracted helpers)
127
+ - `src/services/manager.ts` - Modified (imports updated)
128
+
129
+ **Scope Progress**:
130
+ | Phase | Status |
131
+ |-------|--------|
132
+ | Phase 1: Extract types | Complete |
133
+ | Phase 2: Extract helpers | In Progress |
134
+ | Phase 3: Integrate changes | Pending |
135
+
136
+ **TODOs Found**:
137
+ - `helpers.ts:45`: `// TODO: Add error handling`
138
+
139
+ ### Recommended Next Steps
140
+
141
+ 1. **Complete Phase 2**: Finish extracting queue helpers
142
+ 2. **Fix TODO**: Add error handling in helpers.ts:45
143
+ 3. **Run tests**: Verify nothing is broken
144
+ 4. **Commit checkpoint**: Save progress before Phase 3
145
+ ```
146
+
147
+ ### Step 5: Offer Actions
148
+
149
+ After presenting the resume report, offer:
150
+ - "Continue with [next phase]?"
151
+ - "Should I run `/test-checks` first to verify state?"
152
+ - "Would you like me to explain what was being worked on?"
153
+
154
+ ---
155
+
156
+ ## Output Format
157
+
158
+ ```markdown
159
+ ## 🔄 Session Resume
160
+
161
+ ### Context Restored
162
+ [1-2 sentence summary of where we are]
163
+
164
+ ### Work in Progress
165
+ | Item | Status | Files |
166
+ |------|--------|-------|
167
+ | [task] | [status] | [files] |
168
+
169
+ ### Last Actions
170
+ - [Recent commit 1]
171
+ - [Recent commit 2]
172
+
173
+ ### Pending Items
174
+ - [ ] [Item 1]
175
+ - [ ] [Item 2]
176
+
177
+ ### Suggested Next Step
178
+ [Recommended action]
179
+ ```
180
+
181
+ ---
182
+
183
+ ## Integration with Scope Documents
184
+
185
+ If a scope is in progress, extract:
186
+ - Current phase name and status
187
+ - Checklist items completed/remaining
188
+ - Team review findings (if present)
189
+ - Blockers identified
190
+
191
+ This makes the scope document the **single source of truth** for resumption.
192
+
193
+ ---
194
+
195
+ ## Tips
196
+
197
+ - **Check uncommitted first** - Most important context
198
+ - **Recent > old** - Focus on last few hours of work
199
+ - **Be specific** - Name files, line numbers, phases
200
+ - **Suggest action** - Don't just report, recommend next step
201
+ - **Link to scope** - If scope exists, reference it