@openlife/cli 1.8.3 → 1.10.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 (232) hide show
  1. package/.catalog/agents/test-agent/AGENT.md +1 -1
  2. package/.catalog/mcps/test-mcp/mcp.json +1 -1
  3. package/.catalog/skills/sample-from-url/IMPORTED_REFERENCE.md +2 -2
  4. package/.catalog/skills/test-skill/REFERENCE.md +1 -1
  5. package/.catalog/squads/00-governance-advisory-board/workflows/wf-board-meeting.yaml +25 -0
  6. package/.catalog/squads/00-governance-advisory-board/workflows/wf-decision-framework.yaml +25 -0
  7. package/.catalog/squads/00-governance-c-level-squad/workflows/wf-board-presentation.yaml +25 -0
  8. package/.catalog/squads/00-governance-c-level-squad/workflows/wf-strategic-planning.yaml +25 -0
  9. package/.catalog/squads/00-governance-project-ops-squad/workflows/mission-to-project.yaml +25 -0
  10. package/.catalog/squads/00-governance-project-ops-squad/workflows/sprint-planning.yaml +25 -0
  11. package/.catalog/squads/00-governance-project-ops-squad/workflows/weekly-review.yaml +25 -0
  12. package/.catalog/squads/01-meta-framework-swarm-tree-orchestration/workflows/tree-analysis-flow.yaml +25 -0
  13. package/.catalog/squads/01-meta-framework-swarm-tree-orchestration/workflows/tree-execution-flow.yaml +25 -0
  14. package/.catalog/squads/01-meta-framework-swarm-tree-orchestration/workflows/tree-planning-flow.yaml +25 -0
  15. package/.catalog/squads/01-meta-framework-swarm-tree-orchestration/workflows/tree-resume-flow.yaml +25 -0
  16. package/.catalog/squads/02-product-growth-brand-squad/workflows/wf-brand-creation.yaml +25 -0
  17. package/.catalog/squads/02-product-growth-brand-squad/workflows/wf-rebrand.yaml +25 -0
  18. package/.catalog/squads/02-product-growth-copy-squad/workflows/wf-copy-review-cycle.yaml +25 -0
  19. package/.catalog/squads/02-product-growth-copy-squad/workflows/wf-full-copy-project.yaml +25 -0
  20. package/.catalog/squads/02-product-growth-design-squad/workflows/wf-design-system-creation.yaml +25 -0
  21. package/.catalog/squads/02-product-growth-design-squad/workflows/wf-feature-design.yaml +25 -0
  22. package/.catalog/squads/02-product-growth-hormozi-squad/workflows/wf-business-turnaround.yaml +25 -0
  23. package/.catalog/squads/02-product-growth-hormozi-squad/workflows/wf-offer-creation.yaml +25 -0
  24. package/.catalog/squads/02-product-growth-movement/workflows/wf-movement-launch.yaml +25 -0
  25. package/.catalog/squads/02-product-growth-saas-onboarding-activator/workflows/full-onboarding-activation-workflow.yaml +25 -0
  26. package/.catalog/squads/02-product-growth-saas-onboarding-activator/workflows/quick-engagement-boost-workflow.yaml +25 -0
  27. package/.catalog/squads/02-product-growth-sales-squad/workflows/followup-sequence.yaml +25 -0
  28. package/.catalog/squads/02-product-growth-sales-squad/workflows/full-sales-cycle.yaml +25 -0
  29. package/.catalog/squads/02-product-growth-sales-squad/workflows/proposal-flow.yaml +25 -0
  30. package/.catalog/squads/02-product-growth-storytelling/workflows/wf-brand-narrative.yaml +25 -0
  31. package/.catalog/squads/02-product-growth-storytelling/workflows/wf-story-development.yaml +25 -0
  32. package/.catalog/squads/02-product-growth-traffic-masters/workflows/wf-account-audit.yaml +25 -0
  33. package/.catalog/squads/02-product-growth-traffic-masters/workflows/wf-campaign-launch.yaml +25 -0
  34. package/.catalog/squads/03-engineering-quality-automated-code-review-squad/workflows/full-code-review-workflow.yaml +25 -0
  35. package/.catalog/squads/03-engineering-quality-automated-code-review-squad/workflows/quick-security-check-workflow.yaml +25 -0
  36. package/.catalog/squads/04-data-security-cybersecurity/workflows/wf-incident-response.yaml +25 -0
  37. package/.catalog/squads/04-data-security-cybersecurity/workflows/wf-pentest-engagement.yaml +25 -0
  38. package/.catalog/squads/04-data-security-data-quality-guardian/workflows/full-data-quality-audit-workflow.yaml +25 -0
  39. package/.catalog/squads/04-data-security-data-quality-guardian/workflows/quick-data-check-workflow.yaml +25 -0
  40. package/.catalog/squads/04-data-security-data-squad/workflows/wf-analytics-setup.yaml +25 -0
  41. package/.catalog/squads/04-data-security-data-squad/workflows/wf-growth-sprint.yaml +25 -0
  42. package/.catalog/squads/04-data-security-incident-response-squad/workflows/full-incident-response-workflow.yaml +25 -0
  43. package/.catalog/squads/04-data-security-incident-response-squad/workflows/rapid-triage-workflow.yaml +25 -0
  44. package/.catalog/squads/04-data-security-soc-alert-triage/workflows/full-alert-triage-workflow.yaml +25 -0
  45. package/.catalog/squads/04-data-security-soc-alert-triage/workflows/rapid-classification-workflow.yaml +25 -0
  46. package/.catalog/squads/05-domain-specialists-adaptive-tutor-k12/workflows/full-tutoring-cycle-workflow.yaml +25 -0
  47. package/.catalog/squads/05-domain-specialists-adaptive-tutor-k12/workflows/quick-practice-session-workflow.yaml +25 -0
  48. package/.catalog/squads/05-domain-specialists-ambient-clinical-scribe/workflows/full-documentation-workflow.yaml +25 -0
  49. package/.catalog/squads/05-domain-specialists-ambient-clinical-scribe/workflows/quick-note-workflow.yaml +25 -0
  50. package/.catalog/squads/05-domain-specialists-contract-review-squad/workflows/full-contract-review-workflow.yaml +25 -0
  51. package/.catalog/squads/05-domain-specialists-contract-review-squad/workflows/quick-risk-assessment-workflow.yaml +25 -0
  52. package/.catalog/squads/05-domain-specialists-crypto-token-forge/workflows/full-token-launch-workflow.yaml +25 -0
  53. package/.catalog/squads/05-domain-specialists-crypto-token-forge/workflows/memecoin-express-workflow.yaml +25 -0
  54. package/.catalog/squads/05-domain-specialists-crypto-token-forge/workflows/utility-token-launch-workflow.yaml +25 -0
  55. package/.catalog/squads/05-domain-specialists-resume-screener-squad/workflows/full-resume-screening-workflow.yaml +25 -0
  56. package/.catalog/squads/05-domain-specialists-resume-screener-squad/workflows/quick-skills-match-workflow.yaml +25 -0
  57. package/.catalog/squads/test-squad/SQUAD.md +1 -1
  58. package/.openlife/method/agents/atlas.md +102 -0
  59. package/.openlife/method/agents/builder.md +92 -0
  60. package/.openlife/method/agents/conductor.md +93 -0
  61. package/.openlife/method/agents/forge.md +96 -0
  62. package/.openlife/method/agents/genesis.md +115 -0
  63. package/.openlife/method/agents/lyra.md +85 -0
  64. package/.openlife/method/agents/maestro.md +92 -0
  65. package/.openlife/method/agents/mesh.md +101 -0
  66. package/.openlife/method/agents/prism.md +85 -0
  67. package/.openlife/method/agents/sentinel.md +115 -0
  68. package/.openlife/method/agents/steward.md +93 -0
  69. package/.openlife/method/agents/vortex.md +94 -0
  70. package/dist/cli/CommandFlowRunner.js +167 -0
  71. package/dist/cli/install/Phases.js +43 -0
  72. package/dist/index.js +118 -0
  73. package/dist/orchestrator/ProjectMetadata.js +183 -0
  74. package/dist/test_flow_run_cli.js +183 -0
  75. package/dist/test_host_uninstaller.js +12 -2
  76. package/dist/test_openlife_method_inventory.js +211 -0
  77. package/dist/test_workflow_e2e.js +10 -3
  78. package/dist-templates/claude-code/agents/openlife-atlas.md +12 -44
  79. package/dist-templates/claude-code/agents/openlife-builder.md +20 -0
  80. package/dist-templates/claude-code/agents/openlife-conductor.md +20 -0
  81. package/dist-templates/claude-code/agents/openlife-forge.md +12 -34
  82. package/dist-templates/claude-code/agents/openlife-genesis.md +12 -51
  83. package/dist-templates/claude-code/agents/openlife-lyra.md +12 -32
  84. package/dist-templates/claude-code/agents/openlife-maestro.md +27 -41
  85. package/dist-templates/claude-code/agents/openlife-mesh.md +20 -0
  86. package/dist-templates/claude-code/agents/openlife-prism.md +20 -0
  87. package/dist-templates/claude-code/agents/openlife-sentinel.md +20 -0
  88. package/dist-templates/claude-code/agents/openlife-steward.md +20 -0
  89. package/dist-templates/claude-code/agents/openlife-vortex.md +20 -0
  90. package/dist-templates/claude-code/commands/openlife/agents/atlas.md +28 -0
  91. package/dist-templates/claude-code/commands/openlife/agents/builder.md +28 -0
  92. package/dist-templates/claude-code/commands/openlife/agents/conductor.md +28 -0
  93. package/dist-templates/claude-code/commands/openlife/agents/forge.md +28 -0
  94. package/dist-templates/claude-code/commands/openlife/agents/genesis.md +28 -0
  95. package/dist-templates/claude-code/commands/openlife/agents/lyra.md +28 -0
  96. package/dist-templates/claude-code/commands/openlife/agents/maestro.md +28 -0
  97. package/dist-templates/claude-code/commands/openlife/agents/mesh.md +28 -0
  98. package/dist-templates/claude-code/commands/openlife/agents/prism.md +28 -0
  99. package/dist-templates/claude-code/commands/openlife/agents/sentinel.md +28 -0
  100. package/dist-templates/claude-code/commands/openlife/agents/steward.md +28 -0
  101. package/dist-templates/claude-code/commands/openlife/agents/vortex.md +28 -0
  102. package/dist-templates/claude-code/commands/openlife/ask.md +32 -9
  103. package/dist-templates/claude-code/commands/openlife/audit.md +43 -0
  104. package/dist-templates/claude-code/commands/openlife/doctor.md +9 -14
  105. package/dist-templates/claude-code/commands/openlife/dream.md +28 -13
  106. package/dist-templates/claude-code/commands/openlife/explore.md +32 -0
  107. package/dist-templates/claude-code/commands/openlife/flow/brownfield-discovery.md +38 -0
  108. package/dist-templates/claude-code/commands/openlife/flow/brownfield-fullstack.md +38 -0
  109. package/dist-templates/claude-code/commands/openlife/flow/brownfield-service.md +38 -0
  110. package/dist-templates/claude-code/commands/openlife/flow/brownfield-ui.md +38 -0
  111. package/dist-templates/claude-code/commands/openlife/flow/epic.md +38 -0
  112. package/dist-templates/claude-code/commands/openlife/flow/greenfield-fullstack.md +38 -0
  113. package/dist-templates/claude-code/commands/openlife/flow/greenfield-service.md +38 -0
  114. package/dist-templates/claude-code/commands/openlife/flow/greenfield-ui.md +38 -0
  115. package/dist-templates/claude-code/commands/openlife/flow/qa-loop.md +38 -0
  116. package/dist-templates/claude-code/commands/openlife/flow/release.md +38 -0
  117. package/dist-templates/claude-code/commands/openlife/flow/spec-pipeline.md +38 -0
  118. package/dist-templates/claude-code/commands/openlife/flow/story-cycle.md +38 -0
  119. package/dist-templates/claude-code/commands/openlife/health.md +37 -0
  120. package/dist-templates/claude-code/commands/openlife/plan.md +38 -0
  121. package/dist-templates/claude-code/commands/openlife/review.md +34 -0
  122. package/dist-templates/claude-code/commands/openlife/ship.md +35 -0
  123. package/dist-templates/claude-code/commands/openlife/start.md +38 -0
  124. package/dist-templates/claude-code/commands/openlife/status.md +8 -10
  125. package/dist-templates/claude-code/commands/openlife/story.md +34 -0
  126. package/dist-templates/codex/agents/openlife-atlas.md +12 -44
  127. package/dist-templates/codex/agents/openlife-builder.md +20 -0
  128. package/dist-templates/codex/agents/openlife-conductor.md +20 -0
  129. package/dist-templates/codex/agents/openlife-forge.md +12 -34
  130. package/dist-templates/codex/agents/openlife-genesis.md +12 -51
  131. package/dist-templates/codex/agents/openlife-lyra.md +12 -32
  132. package/dist-templates/codex/agents/openlife-maestro.md +27 -41
  133. package/dist-templates/codex/agents/openlife-mesh.md +20 -0
  134. package/dist-templates/codex/agents/openlife-prism.md +20 -0
  135. package/dist-templates/codex/agents/openlife-sentinel.md +20 -0
  136. package/dist-templates/codex/agents/openlife-steward.md +20 -0
  137. package/dist-templates/codex/agents/openlife-vortex.md +20 -0
  138. package/dist-templates/codex/commands/openlife/agents/atlas.md +28 -0
  139. package/dist-templates/codex/commands/openlife/agents/builder.md +28 -0
  140. package/dist-templates/codex/commands/openlife/agents/conductor.md +28 -0
  141. package/dist-templates/codex/commands/openlife/agents/forge.md +28 -0
  142. package/dist-templates/codex/commands/openlife/agents/genesis.md +28 -0
  143. package/dist-templates/codex/commands/openlife/agents/lyra.md +28 -0
  144. package/dist-templates/codex/commands/openlife/agents/maestro.md +28 -0
  145. package/dist-templates/codex/commands/openlife/agents/mesh.md +28 -0
  146. package/dist-templates/codex/commands/openlife/agents/prism.md +28 -0
  147. package/dist-templates/codex/commands/openlife/agents/sentinel.md +28 -0
  148. package/dist-templates/codex/commands/openlife/agents/steward.md +28 -0
  149. package/dist-templates/codex/commands/openlife/agents/vortex.md +28 -0
  150. package/dist-templates/codex/commands/openlife/ask.md +32 -9
  151. package/dist-templates/codex/commands/openlife/audit.md +43 -0
  152. package/dist-templates/codex/commands/openlife/doctor.md +9 -14
  153. package/dist-templates/codex/commands/openlife/dream.md +28 -13
  154. package/dist-templates/codex/commands/openlife/explore.md +32 -0
  155. package/dist-templates/codex/commands/openlife/flow/brownfield-discovery.md +38 -0
  156. package/dist-templates/codex/commands/openlife/flow/brownfield-fullstack.md +38 -0
  157. package/dist-templates/codex/commands/openlife/flow/brownfield-service.md +38 -0
  158. package/dist-templates/codex/commands/openlife/flow/brownfield-ui.md +38 -0
  159. package/dist-templates/codex/commands/openlife/flow/epic.md +38 -0
  160. package/dist-templates/codex/commands/openlife/flow/greenfield-fullstack.md +38 -0
  161. package/dist-templates/codex/commands/openlife/flow/greenfield-service.md +38 -0
  162. package/dist-templates/codex/commands/openlife/flow/greenfield-ui.md +38 -0
  163. package/dist-templates/codex/commands/openlife/flow/qa-loop.md +38 -0
  164. package/dist-templates/codex/commands/openlife/flow/release.md +38 -0
  165. package/dist-templates/codex/commands/openlife/flow/spec-pipeline.md +38 -0
  166. package/dist-templates/codex/commands/openlife/flow/story-cycle.md +38 -0
  167. package/dist-templates/codex/commands/openlife/health.md +37 -0
  168. package/dist-templates/codex/commands/openlife/plan.md +38 -0
  169. package/dist-templates/codex/commands/openlife/review.md +34 -0
  170. package/dist-templates/codex/commands/openlife/ship.md +35 -0
  171. package/dist-templates/codex/commands/openlife/start.md +38 -0
  172. package/dist-templates/codex/commands/openlife/status.md +8 -10
  173. package/dist-templates/codex/commands/openlife/story.md +34 -0
  174. package/dist-templates/gemini-cli/agents/openlife-atlas.md +12 -44
  175. package/dist-templates/gemini-cli/agents/openlife-builder.md +20 -0
  176. package/dist-templates/gemini-cli/agents/openlife-conductor.md +20 -0
  177. package/dist-templates/gemini-cli/agents/openlife-forge.md +12 -34
  178. package/dist-templates/gemini-cli/agents/openlife-genesis.md +12 -51
  179. package/dist-templates/gemini-cli/agents/openlife-lyra.md +12 -32
  180. package/dist-templates/gemini-cli/agents/openlife-maestro.md +27 -41
  181. package/dist-templates/gemini-cli/agents/openlife-mesh.md +20 -0
  182. package/dist-templates/gemini-cli/agents/openlife-prism.md +20 -0
  183. package/dist-templates/gemini-cli/agents/openlife-sentinel.md +20 -0
  184. package/dist-templates/gemini-cli/agents/openlife-steward.md +20 -0
  185. package/dist-templates/gemini-cli/agents/openlife-vortex.md +20 -0
  186. package/dist-templates/gemini-cli/commands/openlife/agents/atlas.md +28 -0
  187. package/dist-templates/gemini-cli/commands/openlife/agents/builder.md +28 -0
  188. package/dist-templates/gemini-cli/commands/openlife/agents/conductor.md +28 -0
  189. package/dist-templates/gemini-cli/commands/openlife/agents/forge.md +28 -0
  190. package/dist-templates/gemini-cli/commands/openlife/agents/genesis.md +28 -0
  191. package/dist-templates/gemini-cli/commands/openlife/agents/lyra.md +28 -0
  192. package/dist-templates/gemini-cli/commands/openlife/agents/maestro.md +28 -0
  193. package/dist-templates/gemini-cli/commands/openlife/agents/mesh.md +28 -0
  194. package/dist-templates/gemini-cli/commands/openlife/agents/prism.md +28 -0
  195. package/dist-templates/gemini-cli/commands/openlife/agents/sentinel.md +28 -0
  196. package/dist-templates/gemini-cli/commands/openlife/agents/steward.md +28 -0
  197. package/dist-templates/gemini-cli/commands/openlife/agents/vortex.md +28 -0
  198. package/dist-templates/gemini-cli/commands/openlife/ask.md +32 -9
  199. package/dist-templates/gemini-cli/commands/openlife/audit.md +43 -0
  200. package/dist-templates/gemini-cli/commands/openlife/doctor.md +9 -14
  201. package/dist-templates/gemini-cli/commands/openlife/dream.md +28 -13
  202. package/dist-templates/gemini-cli/commands/openlife/explore.md +32 -0
  203. package/dist-templates/gemini-cli/commands/openlife/flow/brownfield-discovery.md +38 -0
  204. package/dist-templates/gemini-cli/commands/openlife/flow/brownfield-fullstack.md +38 -0
  205. package/dist-templates/gemini-cli/commands/openlife/flow/brownfield-service.md +38 -0
  206. package/dist-templates/gemini-cli/commands/openlife/flow/brownfield-ui.md +38 -0
  207. package/dist-templates/gemini-cli/commands/openlife/flow/epic.md +38 -0
  208. package/dist-templates/gemini-cli/commands/openlife/flow/greenfield-fullstack.md +38 -0
  209. package/dist-templates/gemini-cli/commands/openlife/flow/greenfield-service.md +38 -0
  210. package/dist-templates/gemini-cli/commands/openlife/flow/greenfield-ui.md +38 -0
  211. package/dist-templates/gemini-cli/commands/openlife/flow/qa-loop.md +38 -0
  212. package/dist-templates/gemini-cli/commands/openlife/flow/release.md +38 -0
  213. package/dist-templates/gemini-cli/commands/openlife/flow/spec-pipeline.md +38 -0
  214. package/dist-templates/gemini-cli/commands/openlife/flow/story-cycle.md +38 -0
  215. package/dist-templates/gemini-cli/commands/openlife/health.md +37 -0
  216. package/dist-templates/gemini-cli/commands/openlife/plan.md +38 -0
  217. package/dist-templates/gemini-cli/commands/openlife/review.md +34 -0
  218. package/dist-templates/gemini-cli/commands/openlife/ship.md +35 -0
  219. package/dist-templates/gemini-cli/commands/openlife/start.md +38 -0
  220. package/dist-templates/gemini-cli/commands/openlife/status.md +8 -10
  221. package/dist-templates/gemini-cli/commands/openlife/story.md +34 -0
  222. package/dist-templates/workflows/brownfield-fullstack.yaml +131 -0
  223. package/dist-templates/workflows/brownfield-service.yaml +111 -0
  224. package/dist-templates/workflows/brownfield-ui.yaml +115 -0
  225. package/dist-templates/workflows/continuous-deployment.yaml +139 -0
  226. package/dist-templates/workflows/epic-orchestration.yaml +101 -0
  227. package/dist-templates/workflows/greenfield-service.yaml +154 -0
  228. package/dist-templates/workflows/greenfield-ui.yaml +140 -0
  229. package/dist-templates/workflows/spec-pipeline.yaml +135 -0
  230. package/package.json +5 -2
  231. package/scripts/generate-slash-commands.js +395 -0
  232. package/scripts/generate-squad-workflow-stubs.js +144 -0
@@ -1,20 +1,35 @@
1
1
  ---
2
- description: Run the OpenLife Dream Organizer — surfaces ideas, pending stories, and prioritization from accumulated context
3
- allowed-tools: Bash(openlife:*)
2
+ description: Dream Organizer — surface ideas, pending stories, and prioritization from accumulated context (host LLM answers directly)
3
+ allowed-tools:
4
+ - Read
5
+ - Write
6
+ - Edit
7
+ - Bash(openlife:*)
8
+ - Grep
9
+ - Glob
10
+ - Agent
11
+ - AskUserQuestion
4
12
  ---
5
13
 
6
- Run `openlife dream` (the Dream Organizer) and present the output as a ranked list of next actions for the user.
14
+ **Mode:** host-native (the host LLM running this conversation answers directly no external API key required).
7
15
 
8
- The Dream Organizer reads:
9
- - Conversation memory (last sessions)
10
- - Pending stories in `docs/stories/`
11
- - Open governance consents in `.openlife/governance-consents.json`
12
- - Mission state in `.openlife/`
16
+ Run the OpenLife Dream Organizer using your own reasoning, not an external model.
13
17
 
14
- Format the output as:
18
+ 1. Read recent context from this conversation + any planning files the user has open
19
+ 2. Optionally read `.catalog/` for project-specific ideas already captured
20
+ 3. Surface unprioritized ideas, pending stories, and recommendations grouped by theme
21
+ 4. Be opinionated about priority order — don't return a flat list
15
22
 
16
- 1. **Top 3 priorities** the highest-signal items with one-line justification
17
- 2. **Deferred** — items the Dream Organizer parked
18
- 3. **Open questions** — anything the user needs to decide before work can proceed
23
+ If the user wants the external model chain for richer ideation: `openlife dream "..."` in a terminal.
19
24
 
20
- Don't make up items the command didn't return.
25
+ ---
26
+
27
+ ### Want the external model chain instead?
28
+
29
+ If you specifically need the configured `models.json` chain (for cost-tracking, batch, or non-host contexts), run the command in a terminal:
30
+
31
+ ```bash
32
+ openlife dream "$ARGUMENTS"
33
+ ```
34
+
35
+ That path uses the Brain dispatcher and requires the appropriate API key in `.env`. The slash command (this one) intentionally bypasses external APIs to keep host-CLI usage zero-config.
@@ -0,0 +1,32 @@
1
+ ---
2
+ description: Exploratory ideation — host LLM acts as Lyra for divergent brainstorming then convergent narrative
3
+ allowed-tools:
4
+ - Read
5
+ - Write
6
+ - Edit
7
+ - Bash(openlife:*)
8
+ - Grep
9
+ - Glob
10
+ - Agent
11
+ - AskUserQuestion
12
+ ---
13
+
14
+ **Mode:** host-native (the host LLM running this conversation answers directly — no external API key required).
15
+
16
+ Read `.openlife/method/agents/lyra.md`, become Lyra, and run `*brainstorm "$ARGUMENTS"`.
17
+
18
+ Surface options + tradeoffs. Mark confidence per claim (high / medium / low). Cite sources when claims are non-obvious.
19
+
20
+ Do NOT commit to a plan in this command — that's `/openlife:plan`. Explore is divergent; Plan is convergent.
21
+
22
+ ---
23
+
24
+ ### Want the external model chain instead?
25
+
26
+ If you specifically need the configured `models.json` chain (for cost-tracking, batch, or non-host contexts), run the command in a terminal:
27
+
28
+ ```bash
29
+ openlife explore "$ARGUMENTS"
30
+ ```
31
+
32
+ That path uses the Brain dispatcher and requires the appropriate API key in `.env`. The slash command (this one) intentionally bypasses external APIs to keep host-CLI usage zero-config.
@@ -0,0 +1,38 @@
1
+ ---
2
+ description: Brownfield Discovery: 10-phase audit of an existing codebase
3
+ argument-hint: "[--dry-run] [--vars key=value]"
4
+ allowed-tools:
5
+ - Read
6
+ - Bash(openlife:*)
7
+ - Grep
8
+ - Glob
9
+ - Agent
10
+ - AskUserQuestion
11
+ ---
12
+
13
+ **Mode:** host-native — you (the host LLM) orchestrate the `brownfield-discovery` workflow yourself, playing the personas as needed.
14
+
15
+ ### Step 1 — Load the workflow definition
16
+
17
+ Read `dist-templates/workflows/brownfield-discovery.yaml` (project local override at `.openlife/method/workflows/brownfield-discovery.yaml` or `.catalog/workflows/brownfield-discovery.yaml` takes precedence if present).
18
+
19
+ If `$ARGUMENTS` contains `--dry-run`, ALSO shell out to `openlife flow run brownfield-discovery --dry-run` to print the phase plan, then STOP.
20
+
21
+ ### Step 2 — Walk the phases
22
+
23
+ For each phase in the workflow's `sequence`:
24
+
25
+ 1. Announce which phase you're entering and which persona owns this phase (the `agent:` field on the step)
26
+ 2. Read `.openlife/method/agents/<persona-id>.md` for the active persona — adopt that persona for this phase
27
+ 3. Execute the step's `action` using the persona's discipline (commands, hand-off rules, anti-patterns)
28
+ 4. Produce the artifacts listed in `creates:` — write them to the paths declared in the YAML
29
+ 5. If `elicit: true`, ask the user via AskUserQuestion before proceeding
30
+ 6. Hand off to the next phase's persona; announce the handoff
31
+
32
+ ### Step 3 — Surface failures explicitly
33
+
34
+ On any step failure: identify the failing step, the active persona, and offer to escalate to `@openlife-maestro` (read `.openlife/method/agents/maestro.md`).
35
+
36
+ ### Why host-native, not shell?
37
+
38
+ Running the workflow this way uses your reasoning (the host LLM) instead of the external Brain chain. Zero API key needed for orchestration. If the user wants the external Brain to drive (headless / batch / cron), they can run `openlife flow run brownfield-discovery "$ARGUMENTS"` in a terminal.
@@ -0,0 +1,38 @@
1
+ ---
2
+ description: Brownfield Full-Stack: enhance an existing full-stack app
3
+ argument-hint: "[--dry-run] [--vars key=value]"
4
+ allowed-tools:
5
+ - Read
6
+ - Bash(openlife:*)
7
+ - Grep
8
+ - Glob
9
+ - Agent
10
+ - AskUserQuestion
11
+ ---
12
+
13
+ **Mode:** host-native — you (the host LLM) orchestrate the `brownfield-fullstack` workflow yourself, playing the personas as needed.
14
+
15
+ ### Step 1 — Load the workflow definition
16
+
17
+ Read `dist-templates/workflows/brownfield-fullstack.yaml` (project local override at `.openlife/method/workflows/brownfield-fullstack.yaml` or `.catalog/workflows/brownfield-fullstack.yaml` takes precedence if present).
18
+
19
+ If `$ARGUMENTS` contains `--dry-run`, ALSO shell out to `openlife flow run brownfield-fullstack --dry-run` to print the phase plan, then STOP.
20
+
21
+ ### Step 2 — Walk the phases
22
+
23
+ For each phase in the workflow's `sequence`:
24
+
25
+ 1. Announce which phase you're entering and which persona owns this phase (the `agent:` field on the step)
26
+ 2. Read `.openlife/method/agents/<persona-id>.md` for the active persona — adopt that persona for this phase
27
+ 3. Execute the step's `action` using the persona's discipline (commands, hand-off rules, anti-patterns)
28
+ 4. Produce the artifacts listed in `creates:` — write them to the paths declared in the YAML
29
+ 5. If `elicit: true`, ask the user via AskUserQuestion before proceeding
30
+ 6. Hand off to the next phase's persona; announce the handoff
31
+
32
+ ### Step 3 — Surface failures explicitly
33
+
34
+ On any step failure: identify the failing step, the active persona, and offer to escalate to `@openlife-maestro` (read `.openlife/method/agents/maestro.md`).
35
+
36
+ ### Why host-native, not shell?
37
+
38
+ Running the workflow this way uses your reasoning (the host LLM) instead of the external Brain chain. Zero API key needed for orchestration. If the user wants the external Brain to drive (headless / batch / cron), they can run `openlife flow run brownfield-fullstack "$ARGUMENTS"` in a terminal.
@@ -0,0 +1,38 @@
1
+ ---
2
+ description: Brownfield Service: modify an existing service / API
3
+ argument-hint: "[--dry-run] [--vars key=value]"
4
+ allowed-tools:
5
+ - Read
6
+ - Bash(openlife:*)
7
+ - Grep
8
+ - Glob
9
+ - Agent
10
+ - AskUserQuestion
11
+ ---
12
+
13
+ **Mode:** host-native — you (the host LLM) orchestrate the `brownfield-service` workflow yourself, playing the personas as needed.
14
+
15
+ ### Step 1 — Load the workflow definition
16
+
17
+ Read `dist-templates/workflows/brownfield-service.yaml` (project local override at `.openlife/method/workflows/brownfield-service.yaml` or `.catalog/workflows/brownfield-service.yaml` takes precedence if present).
18
+
19
+ If `$ARGUMENTS` contains `--dry-run`, ALSO shell out to `openlife flow run brownfield-service --dry-run` to print the phase plan, then STOP.
20
+
21
+ ### Step 2 — Walk the phases
22
+
23
+ For each phase in the workflow's `sequence`:
24
+
25
+ 1. Announce which phase you're entering and which persona owns this phase (the `agent:` field on the step)
26
+ 2. Read `.openlife/method/agents/<persona-id>.md` for the active persona — adopt that persona for this phase
27
+ 3. Execute the step's `action` using the persona's discipline (commands, hand-off rules, anti-patterns)
28
+ 4. Produce the artifacts listed in `creates:` — write them to the paths declared in the YAML
29
+ 5. If `elicit: true`, ask the user via AskUserQuestion before proceeding
30
+ 6. Hand off to the next phase's persona; announce the handoff
31
+
32
+ ### Step 3 — Surface failures explicitly
33
+
34
+ On any step failure: identify the failing step, the active persona, and offer to escalate to `@openlife-maestro` (read `.openlife/method/agents/maestro.md`).
35
+
36
+ ### Why host-native, not shell?
37
+
38
+ Running the workflow this way uses your reasoning (the host LLM) instead of the external Brain chain. Zero API key needed for orchestration. If the user wants the external Brain to drive (headless / batch / cron), they can run `openlife flow run brownfield-service "$ARGUMENTS"` in a terminal.
@@ -0,0 +1,38 @@
1
+ ---
2
+ description: Brownfield UI: refactor or enhance an existing UI
3
+ argument-hint: "[--dry-run] [--vars key=value]"
4
+ allowed-tools:
5
+ - Read
6
+ - Bash(openlife:*)
7
+ - Grep
8
+ - Glob
9
+ - Agent
10
+ - AskUserQuestion
11
+ ---
12
+
13
+ **Mode:** host-native — you (the host LLM) orchestrate the `brownfield-ui` workflow yourself, playing the personas as needed.
14
+
15
+ ### Step 1 — Load the workflow definition
16
+
17
+ Read `dist-templates/workflows/brownfield-ui.yaml` (project local override at `.openlife/method/workflows/brownfield-ui.yaml` or `.catalog/workflows/brownfield-ui.yaml` takes precedence if present).
18
+
19
+ If `$ARGUMENTS` contains `--dry-run`, ALSO shell out to `openlife flow run brownfield-ui --dry-run` to print the phase plan, then STOP.
20
+
21
+ ### Step 2 — Walk the phases
22
+
23
+ For each phase in the workflow's `sequence`:
24
+
25
+ 1. Announce which phase you're entering and which persona owns this phase (the `agent:` field on the step)
26
+ 2. Read `.openlife/method/agents/<persona-id>.md` for the active persona — adopt that persona for this phase
27
+ 3. Execute the step's `action` using the persona's discipline (commands, hand-off rules, anti-patterns)
28
+ 4. Produce the artifacts listed in `creates:` — write them to the paths declared in the YAML
29
+ 5. If `elicit: true`, ask the user via AskUserQuestion before proceeding
30
+ 6. Hand off to the next phase's persona; announce the handoff
31
+
32
+ ### Step 3 — Surface failures explicitly
33
+
34
+ On any step failure: identify the failing step, the active persona, and offer to escalate to `@openlife-maestro` (read `.openlife/method/agents/maestro.md`).
35
+
36
+ ### Why host-native, not shell?
37
+
38
+ Running the workflow this way uses your reasoning (the host LLM) instead of the external Brain chain. Zero API key needed for orchestration. If the user wants the external Brain to drive (headless / batch / cron), they can run `openlife flow run brownfield-ui "$ARGUMENTS"` in a terminal.
@@ -0,0 +1,38 @@
1
+ ---
2
+ description: Epic Orchestration: coordinate multiple dependent stories within an epic
3
+ argument-hint: "[--dry-run] [--vars key=value]"
4
+ allowed-tools:
5
+ - Read
6
+ - Bash(openlife:*)
7
+ - Grep
8
+ - Glob
9
+ - Agent
10
+ - AskUserQuestion
11
+ ---
12
+
13
+ **Mode:** host-native — you (the host LLM) orchestrate the `epic-orchestration` workflow yourself, playing the personas as needed.
14
+
15
+ ### Step 1 — Load the workflow definition
16
+
17
+ Read `dist-templates/workflows/epic-orchestration.yaml` (project local override at `.openlife/method/workflows/epic-orchestration.yaml` or `.catalog/workflows/epic-orchestration.yaml` takes precedence if present).
18
+
19
+ If `$ARGUMENTS` contains `--dry-run`, ALSO shell out to `openlife flow run epic-orchestration --dry-run` to print the phase plan, then STOP.
20
+
21
+ ### Step 2 — Walk the phases
22
+
23
+ For each phase in the workflow's `sequence`:
24
+
25
+ 1. Announce which phase you're entering and which persona owns this phase (the `agent:` field on the step)
26
+ 2. Read `.openlife/method/agents/<persona-id>.md` for the active persona — adopt that persona for this phase
27
+ 3. Execute the step's `action` using the persona's discipline (commands, hand-off rules, anti-patterns)
28
+ 4. Produce the artifacts listed in `creates:` — write them to the paths declared in the YAML
29
+ 5. If `elicit: true`, ask the user via AskUserQuestion before proceeding
30
+ 6. Hand off to the next phase's persona; announce the handoff
31
+
32
+ ### Step 3 — Surface failures explicitly
33
+
34
+ On any step failure: identify the failing step, the active persona, and offer to escalate to `@openlife-maestro` (read `.openlife/method/agents/maestro.md`).
35
+
36
+ ### Why host-native, not shell?
37
+
38
+ Running the workflow this way uses your reasoning (the host LLM) instead of the external Brain chain. Zero API key needed for orchestration. If the user wants the external Brain to drive (headless / batch / cron), they can run `openlife flow run epic-orchestration "$ARGUMENTS"` in a terminal.
@@ -0,0 +1,38 @@
1
+ ---
2
+ description: Greenfield Full-Stack: end-to-end new app from concept to shippable stories
3
+ argument-hint: "[--dry-run] [--vars key=value]"
4
+ allowed-tools:
5
+ - Read
6
+ - Bash(openlife:*)
7
+ - Grep
8
+ - Glob
9
+ - Agent
10
+ - AskUserQuestion
11
+ ---
12
+
13
+ **Mode:** host-native — you (the host LLM) orchestrate the `greenfield-fullstack` workflow yourself, playing the personas as needed.
14
+
15
+ ### Step 1 — Load the workflow definition
16
+
17
+ Read `dist-templates/workflows/greenfield-fullstack.yaml` (project local override at `.openlife/method/workflows/greenfield-fullstack.yaml` or `.catalog/workflows/greenfield-fullstack.yaml` takes precedence if present).
18
+
19
+ If `$ARGUMENTS` contains `--dry-run`, ALSO shell out to `openlife flow run greenfield-fullstack --dry-run` to print the phase plan, then STOP.
20
+
21
+ ### Step 2 — Walk the phases
22
+
23
+ For each phase in the workflow's `sequence`:
24
+
25
+ 1. Announce which phase you're entering and which persona owns this phase (the `agent:` field on the step)
26
+ 2. Read `.openlife/method/agents/<persona-id>.md` for the active persona — adopt that persona for this phase
27
+ 3. Execute the step's `action` using the persona's discipline (commands, hand-off rules, anti-patterns)
28
+ 4. Produce the artifacts listed in `creates:` — write them to the paths declared in the YAML
29
+ 5. If `elicit: true`, ask the user via AskUserQuestion before proceeding
30
+ 6. Hand off to the next phase's persona; announce the handoff
31
+
32
+ ### Step 3 — Surface failures explicitly
33
+
34
+ On any step failure: identify the failing step, the active persona, and offer to escalate to `@openlife-maestro` (read `.openlife/method/agents/maestro.md`).
35
+
36
+ ### Why host-native, not shell?
37
+
38
+ Running the workflow this way uses your reasoning (the host LLM) instead of the external Brain chain. Zero API key needed for orchestration. If the user wants the external Brain to drive (headless / batch / cron), they can run `openlife flow run greenfield-fullstack "$ARGUMENTS"` in a terminal.
@@ -0,0 +1,38 @@
1
+ ---
2
+ description: Greenfield Service: backend-only / API-only / CLI / worker / MCP server
3
+ argument-hint: "[--dry-run] [--vars key=value]"
4
+ allowed-tools:
5
+ - Read
6
+ - Bash(openlife:*)
7
+ - Grep
8
+ - Glob
9
+ - Agent
10
+ - AskUserQuestion
11
+ ---
12
+
13
+ **Mode:** host-native — you (the host LLM) orchestrate the `greenfield-service` workflow yourself, playing the personas as needed.
14
+
15
+ ### Step 1 — Load the workflow definition
16
+
17
+ Read `dist-templates/workflows/greenfield-service.yaml` (project local override at `.openlife/method/workflows/greenfield-service.yaml` or `.catalog/workflows/greenfield-service.yaml` takes precedence if present).
18
+
19
+ If `$ARGUMENTS` contains `--dry-run`, ALSO shell out to `openlife flow run greenfield-service --dry-run` to print the phase plan, then STOP.
20
+
21
+ ### Step 2 — Walk the phases
22
+
23
+ For each phase in the workflow's `sequence`:
24
+
25
+ 1. Announce which phase you're entering and which persona owns this phase (the `agent:` field on the step)
26
+ 2. Read `.openlife/method/agents/<persona-id>.md` for the active persona — adopt that persona for this phase
27
+ 3. Execute the step's `action` using the persona's discipline (commands, hand-off rules, anti-patterns)
28
+ 4. Produce the artifacts listed in `creates:` — write them to the paths declared in the YAML
29
+ 5. If `elicit: true`, ask the user via AskUserQuestion before proceeding
30
+ 6. Hand off to the next phase's persona; announce the handoff
31
+
32
+ ### Step 3 — Surface failures explicitly
33
+
34
+ On any step failure: identify the failing step, the active persona, and offer to escalate to `@openlife-maestro` (read `.openlife/method/agents/maestro.md`).
35
+
36
+ ### Why host-native, not shell?
37
+
38
+ Running the workflow this way uses your reasoning (the host LLM) instead of the external Brain chain. Zero API key needed for orchestration. If the user wants the external Brain to drive (headless / batch / cron), they can run `openlife flow run greenfield-service "$ARGUMENTS"` in a terminal.
@@ -0,0 +1,38 @@
1
+ ---
2
+ description: Greenfield UI: frontend-only / SPA / landing / admin panel / docs site
3
+ argument-hint: "[--dry-run] [--vars key=value]"
4
+ allowed-tools:
5
+ - Read
6
+ - Bash(openlife:*)
7
+ - Grep
8
+ - Glob
9
+ - Agent
10
+ - AskUserQuestion
11
+ ---
12
+
13
+ **Mode:** host-native — you (the host LLM) orchestrate the `greenfield-ui` workflow yourself, playing the personas as needed.
14
+
15
+ ### Step 1 — Load the workflow definition
16
+
17
+ Read `dist-templates/workflows/greenfield-ui.yaml` (project local override at `.openlife/method/workflows/greenfield-ui.yaml` or `.catalog/workflows/greenfield-ui.yaml` takes precedence if present).
18
+
19
+ If `$ARGUMENTS` contains `--dry-run`, ALSO shell out to `openlife flow run greenfield-ui --dry-run` to print the phase plan, then STOP.
20
+
21
+ ### Step 2 — Walk the phases
22
+
23
+ For each phase in the workflow's `sequence`:
24
+
25
+ 1. Announce which phase you're entering and which persona owns this phase (the `agent:` field on the step)
26
+ 2. Read `.openlife/method/agents/<persona-id>.md` for the active persona — adopt that persona for this phase
27
+ 3. Execute the step's `action` using the persona's discipline (commands, hand-off rules, anti-patterns)
28
+ 4. Produce the artifacts listed in `creates:` — write them to the paths declared in the YAML
29
+ 5. If `elicit: true`, ask the user via AskUserQuestion before proceeding
30
+ 6. Hand off to the next phase's persona; announce the handoff
31
+
32
+ ### Step 3 — Surface failures explicitly
33
+
34
+ On any step failure: identify the failing step, the active persona, and offer to escalate to `@openlife-maestro` (read `.openlife/method/agents/maestro.md`).
35
+
36
+ ### Why host-native, not shell?
37
+
38
+ Running the workflow this way uses your reasoning (the host LLM) instead of the external Brain chain. Zero API key needed for orchestration. If the user wants the external Brain to drive (headless / batch / cron), they can run `openlife flow run greenfield-ui "$ARGUMENTS"` in a terminal.
@@ -0,0 +1,38 @@
1
+ ---
2
+ description: QA Loop: iterative review-fix cycle (max 5 iterations) between Sentinel and Builder
3
+ argument-hint: "[--dry-run] [--vars key=value]"
4
+ allowed-tools:
5
+ - Read
6
+ - Bash(openlife:*)
7
+ - Grep
8
+ - Glob
9
+ - Agent
10
+ - AskUserQuestion
11
+ ---
12
+
13
+ **Mode:** host-native — you (the host LLM) orchestrate the `qa-loop` workflow yourself, playing the personas as needed.
14
+
15
+ ### Step 1 — Load the workflow definition
16
+
17
+ Read `dist-templates/workflows/qa-loop.yaml` (project local override at `.openlife/method/workflows/qa-loop.yaml` or `.catalog/workflows/qa-loop.yaml` takes precedence if present).
18
+
19
+ If `$ARGUMENTS` contains `--dry-run`, ALSO shell out to `openlife flow run qa-loop --dry-run` to print the phase plan, then STOP.
20
+
21
+ ### Step 2 — Walk the phases
22
+
23
+ For each phase in the workflow's `sequence`:
24
+
25
+ 1. Announce which phase you're entering and which persona owns this phase (the `agent:` field on the step)
26
+ 2. Read `.openlife/method/agents/<persona-id>.md` for the active persona — adopt that persona for this phase
27
+ 3. Execute the step's `action` using the persona's discipline (commands, hand-off rules, anti-patterns)
28
+ 4. Produce the artifacts listed in `creates:` — write them to the paths declared in the YAML
29
+ 5. If `elicit: true`, ask the user via AskUserQuestion before proceeding
30
+ 6. Hand off to the next phase's persona; announce the handoff
31
+
32
+ ### Step 3 — Surface failures explicitly
33
+
34
+ On any step failure: identify the failing step, the active persona, and offer to escalate to `@openlife-maestro` (read `.openlife/method/agents/maestro.md`).
35
+
36
+ ### Why host-native, not shell?
37
+
38
+ Running the workflow this way uses your reasoning (the host LLM) instead of the external Brain chain. Zero API key needed for orchestration. If the user wants the external Brain to drive (headless / batch / cron), they can run `openlife flow run qa-loop "$ARGUMENTS"` in a terminal.
@@ -0,0 +1,38 @@
1
+ ---
2
+ description: Continuous Deployment: release pipeline driven by Vortex (PR → merge → tag → publish)
3
+ argument-hint: "[--dry-run] [--vars key=value]"
4
+ allowed-tools:
5
+ - Read
6
+ - Bash(openlife:*)
7
+ - Grep
8
+ - Glob
9
+ - Agent
10
+ - AskUserQuestion
11
+ ---
12
+
13
+ **Mode:** host-native — you (the host LLM) orchestrate the `continuous-deployment` workflow yourself, playing the personas as needed.
14
+
15
+ ### Step 1 — Load the workflow definition
16
+
17
+ Read `dist-templates/workflows/continuous-deployment.yaml` (project local override at `.openlife/method/workflows/continuous-deployment.yaml` or `.catalog/workflows/continuous-deployment.yaml` takes precedence if present).
18
+
19
+ If `$ARGUMENTS` contains `--dry-run`, ALSO shell out to `openlife flow run continuous-deployment --dry-run` to print the phase plan, then STOP.
20
+
21
+ ### Step 2 — Walk the phases
22
+
23
+ For each phase in the workflow's `sequence`:
24
+
25
+ 1. Announce which phase you're entering and which persona owns this phase (the `agent:` field on the step)
26
+ 2. Read `.openlife/method/agents/<persona-id>.md` for the active persona — adopt that persona for this phase
27
+ 3. Execute the step's `action` using the persona's discipline (commands, hand-off rules, anti-patterns)
28
+ 4. Produce the artifacts listed in `creates:` — write them to the paths declared in the YAML
29
+ 5. If `elicit: true`, ask the user via AskUserQuestion before proceeding
30
+ 6. Hand off to the next phase's persona; announce the handoff
31
+
32
+ ### Step 3 — Surface failures explicitly
33
+
34
+ On any step failure: identify the failing step, the active persona, and offer to escalate to `@openlife-maestro` (read `.openlife/method/agents/maestro.md`).
35
+
36
+ ### Why host-native, not shell?
37
+
38
+ Running the workflow this way uses your reasoning (the host LLM) instead of the external Brain chain. Zero API key needed for orchestration. If the user wants the external Brain to drive (headless / batch / cron), they can run `openlife flow run continuous-deployment "$ARGUMENTS"` in a terminal.
@@ -0,0 +1,38 @@
1
+ ---
2
+ description: Spec Pipeline: 6-phase gather → assess → research → write → critique → plan
3
+ argument-hint: "[--dry-run] [--vars key=value]"
4
+ allowed-tools:
5
+ - Read
6
+ - Bash(openlife:*)
7
+ - Grep
8
+ - Glob
9
+ - Agent
10
+ - AskUserQuestion
11
+ ---
12
+
13
+ **Mode:** host-native — you (the host LLM) orchestrate the `spec-pipeline` workflow yourself, playing the personas as needed.
14
+
15
+ ### Step 1 — Load the workflow definition
16
+
17
+ Read `dist-templates/workflows/spec-pipeline.yaml` (project local override at `.openlife/method/workflows/spec-pipeline.yaml` or `.catalog/workflows/spec-pipeline.yaml` takes precedence if present).
18
+
19
+ If `$ARGUMENTS` contains `--dry-run`, ALSO shell out to `openlife flow run spec-pipeline --dry-run` to print the phase plan, then STOP.
20
+
21
+ ### Step 2 — Walk the phases
22
+
23
+ For each phase in the workflow's `sequence`:
24
+
25
+ 1. Announce which phase you're entering and which persona owns this phase (the `agent:` field on the step)
26
+ 2. Read `.openlife/method/agents/<persona-id>.md` for the active persona — adopt that persona for this phase
27
+ 3. Execute the step's `action` using the persona's discipline (commands, hand-off rules, anti-patterns)
28
+ 4. Produce the artifacts listed in `creates:` — write them to the paths declared in the YAML
29
+ 5. If `elicit: true`, ask the user via AskUserQuestion before proceeding
30
+ 6. Hand off to the next phase's persona; announce the handoff
31
+
32
+ ### Step 3 — Surface failures explicitly
33
+
34
+ On any step failure: identify the failing step, the active persona, and offer to escalate to `@openlife-maestro` (read `.openlife/method/agents/maestro.md`).
35
+
36
+ ### Why host-native, not shell?
37
+
38
+ Running the workflow this way uses your reasoning (the host LLM) instead of the external Brain chain. Zero API key needed for orchestration. If the user wants the external Brain to drive (headless / batch / cron), they can run `openlife flow run spec-pipeline "$ARGUMENTS"` in a terminal.
@@ -0,0 +1,38 @@
1
+ ---
2
+ description: Story Development Cycle: 4-phase Create → Validate → Implement → QA
3
+ argument-hint: "[--dry-run] [--vars key=value]"
4
+ allowed-tools:
5
+ - Read
6
+ - Bash(openlife:*)
7
+ - Grep
8
+ - Glob
9
+ - Agent
10
+ - AskUserQuestion
11
+ ---
12
+
13
+ **Mode:** host-native — you (the host LLM) orchestrate the `story-development-cycle` workflow yourself, playing the personas as needed.
14
+
15
+ ### Step 1 — Load the workflow definition
16
+
17
+ Read `dist-templates/workflows/story-development-cycle.yaml` (project local override at `.openlife/method/workflows/story-development-cycle.yaml` or `.catalog/workflows/story-development-cycle.yaml` takes precedence if present).
18
+
19
+ If `$ARGUMENTS` contains `--dry-run`, ALSO shell out to `openlife flow run story-development-cycle --dry-run` to print the phase plan, then STOP.
20
+
21
+ ### Step 2 — Walk the phases
22
+
23
+ For each phase in the workflow's `sequence`:
24
+
25
+ 1. Announce which phase you're entering and which persona owns this phase (the `agent:` field on the step)
26
+ 2. Read `.openlife/method/agents/<persona-id>.md` for the active persona — adopt that persona for this phase
27
+ 3. Execute the step's `action` using the persona's discipline (commands, hand-off rules, anti-patterns)
28
+ 4. Produce the artifacts listed in `creates:` — write them to the paths declared in the YAML
29
+ 5. If `elicit: true`, ask the user via AskUserQuestion before proceeding
30
+ 6. Hand off to the next phase's persona; announce the handoff
31
+
32
+ ### Step 3 — Surface failures explicitly
33
+
34
+ On any step failure: identify the failing step, the active persona, and offer to escalate to `@openlife-maestro` (read `.openlife/method/agents/maestro.md`).
35
+
36
+ ### Why host-native, not shell?
37
+
38
+ Running the workflow this way uses your reasoning (the host LLM) instead of the external Brain chain. Zero API key needed for orchestration. If the user wants the external Brain to drive (headless / batch / cron), they can run `openlife flow run story-development-cycle "$ARGUMENTS"` in a terminal.
@@ -0,0 +1,37 @@
1
+ ---
2
+ description: Extended health check — combines `doctor` runtime check with Maestro's framework integrity review
3
+ allowed-tools:
4
+ - Read
5
+ - Write
6
+ - Edit
7
+ - Bash(openlife:*)
8
+ - Grep
9
+ - Glob
10
+ - Agent
11
+ - AskUserQuestion
12
+ ---
13
+
14
+ **Mode:** host-native (the host LLM running this conversation answers directly — no external API key required).
15
+
16
+ Two-step health check:
17
+
18
+ 1. Run `openlife system doctor` (real shell command) to capture API keys, model chain, catalog state, daemon state
19
+ 2. Read `.openlife/method/agents/maestro.md`, become Maestro, and check cross-agent integrity:
20
+ - Catalog completeness (314 agents / 46 squads / 55 skills present?)
21
+ - Missing handoff artifacts in `.openlife/handoffs/`
22
+ - Draft components pending promotion in `.catalog/{agents,squads,skills}/<id>/` with `status: draft`
23
+ - Any contradictions between `.openlife/project.json` mode and active workflow
24
+
25
+ Present both diagnostics in one consolidated report.
26
+
27
+ ---
28
+
29
+ ### Want the external model chain instead?
30
+
31
+ If you specifically need the configured `models.json` chain (for cost-tracking, batch, or non-host contexts), run the command in a terminal:
32
+
33
+ ```bash
34
+ openlife health "$ARGUMENTS"
35
+ ```
36
+
37
+ That path uses the Brain dispatcher and requires the appropriate API key in `.env`. The slash command (this one) intentionally bypasses external APIs to keep host-CLI usage zero-config.
@@ -0,0 +1,38 @@
1
+ ---
2
+ description: Run the spec pipeline (gather → assess → research → write → critique → plan) — host LLM orchestrates the 6 phases
3
+ allowed-tools:
4
+ - Read
5
+ - Write
6
+ - Edit
7
+ - Bash(openlife:*)
8
+ - Grep
9
+ - Glob
10
+ - Agent
11
+ - AskUserQuestion
12
+ ---
13
+
14
+ **Mode:** host-native (the host LLM running this conversation answers directly — no external API key required).
15
+
16
+ Orchestrate the spec-pipeline workflow YOURSELF, phase by phase. You play multiple personas inline.
17
+
18
+ 1. Read `dist-templates/workflows/spec-pipeline.yaml` to understand the phases
19
+ 2. Phase 1 — Gather: become @openlife-genesis (read `.openlife/method/agents/genesis.md`) and elicit requirements from the user via AskUserQuestion
20
+ 3. Phase 2 — Assess: become @openlife-atlas, score the 5 complexity dimensions
21
+ 4. Phase 3 — Research (skip if SIMPLE complexity): become @openlife-lyra, surface unknowns
22
+ 5. Phase 4 — Write: become @openlife-genesis again, draft spec.md
23
+ 6. Phase 5 — Critique: become @openlife-sentinel, return verdict (APPROVED / NEEDS_REVISION / BLOCKED)
24
+ 7. Phase 6 — Plan: become @openlife-atlas, generate implementation.yaml
25
+
26
+ Each phase ends with the user explicitly OK'ing before the next.
27
+
28
+ ---
29
+
30
+ ### Want the external model chain instead?
31
+
32
+ If you specifically need the configured `models.json` chain (for cost-tracking, batch, or non-host contexts), run the command in a terminal:
33
+
34
+ ```bash
35
+ openlife plan "$ARGUMENTS"
36
+ ```
37
+
38
+ That path uses the Brain dispatcher and requires the appropriate API key in `.env`. The slash command (this one) intentionally bypasses external APIs to keep host-CLI usage zero-config.