@hanzlaa/rcode 3.2.1 → 3.3.1

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 (278) hide show
  1. package/CONTRIBUTING.md +9 -9
  2. package/README.md +50 -50
  3. package/cli/context.js +4 -4
  4. package/cli/doctor.js +1 -1
  5. package/cli/generate-command-skills.cjs +203 -0
  6. package/cli/install.js +29 -12
  7. package/cli/lib/memory-bank.cjs +5 -5
  8. package/cli/set-mode.js +2 -2
  9. package/cli/uninstall.js +5 -5
  10. package/dist/rcode.js +27 -16
  11. package/package.json +1 -1
  12. package/rihal/DOCS-AUDIT.md +1 -1
  13. package/rihal/agents/rihal-ahmed.md +1 -1
  14. package/rihal/agents/rihal-codebase-mapper.md +3 -3
  15. package/rihal/agents/rihal-debugger.md +2 -2
  16. package/rihal/agents/rihal-fatima.md +2 -2
  17. package/rihal/agents/rihal-haitham.md +2 -2
  18. package/rihal/agents/rihal-khalid.md +1 -1
  19. package/rihal/agents/rihal-layla.md +1 -1
  20. package/rihal/agents/rihal-nasser.md +1 -1
  21. package/rihal/agents/rihal-noor.md +1 -1
  22. package/rihal/agents/rihal-nyquist-auditor.md +1 -1
  23. package/rihal/agents/rihal-omar.md +1 -1
  24. package/rihal/agents/rihal-phase-researcher.md +3 -3
  25. package/rihal/agents/rihal-planner.md +1 -1
  26. package/rihal/agents/rihal-project-researcher.md +2 -2
  27. package/rihal/agents/rihal-research-synthesizer.md +3 -3
  28. package/rihal/agents/rihal-roadmapper.md +3 -3
  29. package/rihal/agents/rihal-sadiq.md +1 -1
  30. package/rihal/agents/rihal-sprint-checker.md +3 -3
  31. package/rihal/agents/rihal-verifier.md +2 -2
  32. package/rihal/agents/rihal-waleed.md +1 -1
  33. package/rihal/agents/rihal-yousef.md +2 -2
  34. package/rihal/agents/rihal-zahra.md +1 -1
  35. package/rihal/agents/rihal-zayd.md +1 -1
  36. package/rihal/agents/rules/phase-researcher/detailed-guide.md +1 -1
  37. package/rihal/agents/rules/roadmapper/detailed-guide.md +1 -1
  38. package/rihal/agents/rules/sprint-checker/dimensions.md +3 -3
  39. package/rihal/agents/rules/sprint-checker/process.md +2 -2
  40. package/rihal/agents/rules/verifier/gap-output.md +1 -1
  41. package/rihal/agents/rules/verifier/verification-report.md +1 -1
  42. package/rihal/bin/rihal-hooks.cjs +6 -6
  43. package/rihal/bin/rihal-tools.cjs +60 -23
  44. package/rihal/brain/README.md +2 -2
  45. package/rihal/brain/best-practices/no-autonomous-bypass.md +2 -2
  46. package/rihal/brain/best-practices/research-citation-rule.md +1 -1
  47. package/rihal/brain/best-practices/state-sync-rule.md +4 -4
  48. package/rihal/commands/add-phase.md +1 -1
  49. package/rihal/commands/add-tests.md +1 -1
  50. package/rihal/commands/add-todo.md +1 -1
  51. package/rihal/commands/analyze-dependencies.md +1 -1
  52. package/rihal/commands/audit-fix.md +1 -1
  53. package/rihal/commands/audit-milestone.md +1 -1
  54. package/rihal/commands/audit-uat.md +1 -1
  55. package/rihal/commands/audit.md +1 -1
  56. package/rihal/commands/autonomous.md +1 -1
  57. package/rihal/commands/brainstorm.md +1 -1
  58. package/rihal/commands/chain.md +1 -1
  59. package/rihal/commands/check-todos.md +1 -1
  60. package/rihal/commands/checkpoint-preview.md +1 -1
  61. package/rihal/commands/cleanup.md +2 -2
  62. package/rihal/commands/code-review-fix.md +1 -1
  63. package/rihal/commands/code-review.md +1 -1
  64. package/rihal/commands/complete-milestone.md +1 -1
  65. package/rihal/commands/config.md +2 -2
  66. package/rihal/commands/correct-course.md +1 -1
  67. package/rihal/commands/council.md +1 -1
  68. package/rihal/commands/create-epics-and-stories.md +1 -1
  69. package/rihal/commands/create-story.md +2 -2
  70. package/rihal/commands/dashboard.md +1 -1
  71. package/rihal/commands/debug.md +1 -1
  72. package/rihal/commands/decisions.md +1 -1
  73. package/rihal/commands/dev-story.md +1 -1
  74. package/rihal/commands/diff.md +1 -1
  75. package/rihal/commands/discuss-phase.md +1 -1
  76. package/rihal/commands/discuss.md +2 -2
  77. package/rihal/commands/do.md +2 -2
  78. package/rihal/commands/docs-update.md +1 -1
  79. package/rihal/commands/document-project.md +1 -1
  80. package/rihal/commands/enable-hooks.md +1 -1
  81. package/rihal/commands/execute-sprint.md +2 -2
  82. package/rihal/commands/execute.md +1 -1
  83. package/rihal/commands/explore.md +1 -1
  84. package/rihal/commands/export-to-github.md +1 -1
  85. package/rihal/commands/forensics.md +1 -1
  86. package/rihal/commands/from-template.md +1 -1
  87. package/rihal/commands/health.md +1 -1
  88. package/rihal/commands/help.md +1 -1
  89. package/rihal/commands/import.md +1 -1
  90. package/rihal/commands/inbox.md +1 -1
  91. package/rihal/commands/init.md +1 -1
  92. package/rihal/commands/insert-phase.md +1 -1
  93. package/rihal/commands/install.md +1 -1
  94. package/rihal/commands/list-plans.md +1 -1
  95. package/rihal/commands/list-workspaces.md +1 -1
  96. package/rihal/commands/map-codebase.md +1 -1
  97. package/rihal/commands/milestone-summary.md +1 -1
  98. package/rihal/commands/new-milestone.md +1 -1
  99. package/rihal/commands/new-project.md +1 -1
  100. package/rihal/commands/new-workspace.md +1 -1
  101. package/rihal/commands/next.md +1 -1
  102. package/rihal/commands/note.md +1 -1
  103. package/rihal/commands/notify-test.md +1 -1
  104. package/rihal/commands/pause-work.md +1 -1
  105. package/rihal/commands/plan-milestone-gaps.md +3 -3
  106. package/rihal/commands/plan.md +2 -2
  107. package/rihal/commands/plant-seed.md +1 -1
  108. package/rihal/commands/pr-branch.md +2 -2
  109. package/rihal/commands/prfaq.md +1 -1
  110. package/rihal/commands/profile-user.md +1 -1
  111. package/rihal/commands/progress.md +3 -3
  112. package/rihal/commands/quick.md +1 -1
  113. package/rihal/commands/remove-phase.md +1 -1
  114. package/rihal/commands/remove-workspace.md +1 -1
  115. package/rihal/commands/replay.md +1 -1
  116. package/rihal/commands/rerun.md +1 -1
  117. package/rihal/commands/research-phase.md +2 -2
  118. package/rihal/commands/resume-work.md +1 -1
  119. package/rihal/commands/review.md +1 -1
  120. package/rihal/commands/scan.md +1 -1
  121. package/rihal/commands/secure-phase.md +1 -1
  122. package/rihal/commands/session-report.md +1 -1
  123. package/rihal/commands/settings.md +1 -1
  124. package/rihal/commands/ship.md +2 -2
  125. package/rihal/commands/show.md +1 -1
  126. package/rihal/commands/sprint-planning.md +1 -1
  127. package/rihal/commands/sprint-status.md +1 -1
  128. package/rihal/commands/stats.md +1 -1
  129. package/rihal/commands/status.md +1 -1
  130. package/rihal/commands/ui-phase.md +1 -1
  131. package/rihal/commands/ui-review.md +1 -1
  132. package/rihal/commands/undo.md +1 -1
  133. package/rihal/commands/update.md +1 -1
  134. package/rihal/commands/validate-phase.md +1 -1
  135. package/rihal/commands/verify-phase.md +2 -2
  136. package/rihal/commands/verify-work.md +1 -1
  137. package/rihal/commands/why.md +1 -1
  138. package/rihal/commands/workstream.md +1 -1
  139. package/rihal/references/agent-shared-rules.md +1 -1
  140. package/rihal/references/command-redirect-format.md +7 -7
  141. package/rihal/references/context-budget.md +2 -2
  142. package/rihal/references/continuation-format.md +16 -16
  143. package/rihal/references/dispatch-banner.md +1 -1
  144. package/rihal/references/execution-protocol.md +2 -2
  145. package/rihal/references/gates.md +3 -3
  146. package/rihal/references/git-integration.md +1 -1
  147. package/rihal/references/output-format.md +4 -4
  148. package/rihal/references/output-realism.md +1 -1
  149. package/rihal/references/revision-loop.md +1 -1
  150. package/rihal/references/state-schema.md +15 -15
  151. package/rihal/references/ui-brand.md +1 -1
  152. package/rihal/references/verb-dictionary.md +15 -15
  153. package/rihal/references/workstream-flag.md +28 -28
  154. package/rihal/skills/_shared/no-autonomous-bypass.md +2 -2
  155. package/rihal/skills/_shared/research-citation-rule.md +1 -1
  156. package/rihal/skills/_shared/state-sync-rule.md +4 -4
  157. package/rihal/skills/actions/1-analysis/rihal-prfaq/SKILL.md +1 -1
  158. package/rihal/skills/actions/2-plan/rihal-create-epics-and-stories/workflow.md +1 -1
  159. package/rihal/skills/actions/2-plan/rihal-create-milestone/SKILL.md +2 -2
  160. package/rihal/skills/actions/2-plan/rihal-create-milestone/steps/step-06-phase-stubs.md +2 -2
  161. package/rihal/skills/actions/2-plan/rihal-create-milestone/steps/step-07-backlog.md +2 -2
  162. package/rihal/skills/actions/2-plan/rihal-create-milestone/steps/step-09-state-sync.md +2 -2
  163. package/rihal/skills/actions/2-plan/rihal-create-milestone/steps/step-10-complete.md +4 -4
  164. package/rihal/skills/actions/2-plan/rihal-create-milestone/workflow.md +5 -5
  165. package/rihal/skills/actions/2-plan/rihal-create-prd/SKILL.md +1 -1
  166. package/rihal/skills/actions/2-plan/rihal-create-prd/workflow.md +1 -1
  167. package/rihal/skills/actions/2-plan/rihal-create-story/workflow.md +1 -1
  168. package/rihal/skills/actions/4-implementation/rihal-checkpoint-preview/SKILL.md +3 -3
  169. package/rihal/skills/actions/4-implementation/rihal-dev-story/workflow.md +1 -1
  170. package/rihal/skills/actions/4-implementation/rihal-sprint-planning/SKILL.md +1 -1
  171. package/rihal/skills/actions/4-implementation/rihal-sprint-planning/checklist.md +1 -1
  172. package/rihal/skills/actions/4-implementation/rihal-sprint-planning/workflow.md +1 -1
  173. package/rihal/skills/actions/4-implementation/rihal-sprint-status/workflow.md +5 -5
  174. package/rihal/skills/agents/dalil-scout/SKILL.md +7 -7
  175. package/rihal/skills/core/rihal-brainstorming/SKILL.md +1 -1
  176. package/rihal/skills/core/rihal-init/SKILL.md +1 -1
  177. package/rihal/skills/core/rihal-party-mode/SKILL.md +1 -1
  178. package/rihal/templates/milestone.md +1 -1
  179. package/rihal/templates/projects/api-backend/PROJECT.md +1 -1
  180. package/rihal/templates/projects/mobile-app/PROJECT.md +1 -1
  181. package/rihal/templates/projects/saas-b2b/PROJECT.md +1 -1
  182. package/rihal/workflows/add-phase.md +10 -10
  183. package/rihal/workflows/add-tests.md +9 -9
  184. package/rihal/workflows/add-todo.md +5 -5
  185. package/rihal/workflows/analyze-dependencies.md +7 -7
  186. package/rihal/workflows/audit-fix.md +4 -4
  187. package/rihal/workflows/audit-milestone.md +8 -8
  188. package/rihal/workflows/audit-uat.md +2 -2
  189. package/rihal/workflows/audit.md +28 -28
  190. package/rihal/workflows/autonomous.md +128 -44
  191. package/rihal/workflows/brainstorm.md +7 -7
  192. package/rihal/workflows/chain.md +16 -16
  193. package/rihal/workflows/check-implementation-readiness.md +4 -4
  194. package/rihal/workflows/check-todos.md +8 -8
  195. package/rihal/workflows/checkpoint-preview.md +1 -1
  196. package/rihal/workflows/code-review-fix.md +10 -10
  197. package/rihal/workflows/code-review.md +10 -10
  198. package/rihal/workflows/complete-milestone.md +5 -5
  199. package/rihal/workflows/correct-course.md +7 -7
  200. package/rihal/workflows/council.md +15 -15
  201. package/rihal/workflows/create-epics-and-stories.md +9 -9
  202. package/rihal/workflows/create-story.md +11 -11
  203. package/rihal/workflows/dashboard.md +8 -8
  204. package/rihal/workflows/debug.md +6 -6
  205. package/rihal/workflows/decisions.md +5 -5
  206. package/rihal/workflows/dev-story.md +12 -12
  207. package/rihal/workflows/diagnose-issues.md +2 -2
  208. package/rihal/workflows/diff.md +3 -3
  209. package/rihal/workflows/discuss-phase-power.md +7 -7
  210. package/rihal/workflows/discuss-phase.md +14 -14
  211. package/rihal/workflows/discuss.md +9 -9
  212. package/rihal/workflows/do.md +79 -79
  213. package/rihal/workflows/docs-update.md +6 -6
  214. package/rihal/workflows/document-project.md +5 -5
  215. package/rihal/workflows/enable-hooks.md +5 -5
  216. package/rihal/workflows/execute-sprint.md +3 -3
  217. package/rihal/workflows/execute.md +28 -28
  218. package/rihal/workflows/explore.md +5 -5
  219. package/rihal/workflows/export-to-github.md +5 -5
  220. package/rihal/workflows/forensics.md +8 -8
  221. package/rihal/workflows/from-template.md +8 -8
  222. package/rihal/workflows/health.md +11 -11
  223. package/rihal/workflows/help.md +117 -117
  224. package/rihal/workflows/import.md +4 -4
  225. package/rihal/workflows/inbox.md +8 -8
  226. package/rihal/workflows/init.md +23 -23
  227. package/rihal/workflows/insert-phase.md +9 -9
  228. package/rihal/workflows/install.md +3 -3
  229. package/rihal/workflows/karpathy-audit.md +11 -11
  230. package/rihal/workflows/list-plans.md +8 -8
  231. package/rihal/workflows/list-workspaces.md +7 -7
  232. package/rihal/workflows/map-codebase.md +5 -5
  233. package/rihal/workflows/milestone-summary.md +7 -7
  234. package/rihal/workflows/new-milestone.md +11 -11
  235. package/rihal/workflows/new-project-research.md +1 -1
  236. package/rihal/workflows/new-project-roadmap.md +8 -8
  237. package/rihal/workflows/new-project.md +32 -32
  238. package/rihal/workflows/new-workspace.md +7 -7
  239. package/rihal/workflows/next.md +13 -13
  240. package/rihal/workflows/note.md +7 -7
  241. package/rihal/workflows/notify-test.md +6 -6
  242. package/rihal/workflows/pause-work.md +6 -6
  243. package/rihal/workflows/plan-milestone-gaps.md +7 -7
  244. package/rihal/workflows/plan.md +28 -28
  245. package/rihal/workflows/plant-seed.md +3 -3
  246. package/rihal/workflows/pr-branch.md +1 -1
  247. package/rihal/workflows/prfaq.md +1 -1
  248. package/rihal/workflows/profile-user.md +5 -5
  249. package/rihal/workflows/progress.md +6 -6
  250. package/rihal/workflows/quick.md +12 -12
  251. package/rihal/workflows/remove-phase.md +6 -6
  252. package/rihal/workflows/remove-workspace.md +8 -8
  253. package/rihal/workflows/replay.md +8 -8
  254. package/rihal/workflows/rerun.md +5 -5
  255. package/rihal/workflows/research-phase.md +2 -2
  256. package/rihal/workflows/resume-work.md +10 -10
  257. package/rihal/workflows/review-adversarial.md +4 -4
  258. package/rihal/workflows/review-edge-case-hunter.md +5 -5
  259. package/rihal/workflows/review.md +11 -11
  260. package/rihal/workflows/scan.md +9 -9
  261. package/rihal/workflows/secure-phase.md +8 -8
  262. package/rihal/workflows/session-report.md +6 -6
  263. package/rihal/workflows/settings.md +15 -15
  264. package/rihal/workflows/ship.md +11 -11
  265. package/rihal/workflows/show.md +2 -2
  266. package/rihal/workflows/sprint-planning.md +13 -13
  267. package/rihal/workflows/sprint-status.md +10 -10
  268. package/rihal/workflows/stats.md +6 -6
  269. package/rihal/workflows/status.md +15 -7
  270. package/rihal/workflows/ui-phase.md +8 -8
  271. package/rihal/workflows/ui-review.md +5 -5
  272. package/rihal/workflows/undo.md +17 -17
  273. package/rihal/workflows/update.md +12 -12
  274. package/rihal/workflows/validate-phase.md +5 -5
  275. package/rihal/workflows/verify-work.md +18 -18
  276. package/rihal/workflows/why.md +9 -9
  277. package/rihal/workflows/workstream.md +11 -11
  278. package/server/lib/html/client.js +45 -45
@@ -49,7 +49,7 @@ Before verifying, discover project context:
49
49
  10. **Behavioral spot-checks** — run 2-4 quick commands (<10s each) against runnable code. Skip if no runnable entry points.
50
50
  11. **Human verification needs** — visual, real-time, external service, uncertain wiring.
51
51
  12. **Determine status** — passed | gaps_found | human_needed. Score = verified_truths / total_truths.
52
- 13. **Structure gap output** — YAML frontmatter for `/rihal:plan --gaps`.
52
+ 13. **Structure gap output** — YAML frontmatter for `/rihal-plan --gaps`.
53
53
  14. **Create VERIFICATION.md** — use Write tool (never heredoc). Return to orchestrator. DO NOT COMMIT.
54
54
 
55
55
  ## Final Status Tables
@@ -91,7 +91,7 @@ Read these ONLY when the current step needs them. Don't preemptively load.
91
91
  - **DO NOT trust SUMMARY claims** — verify the component actually renders messages, not a placeholder.
92
92
  - **DO NOT assume existence = implementation** — need level 2 (substantive), 3 (wired), and 4 (data flowing) for dynamic-data artifacts.
93
93
  - **DO NOT skip key link verification** — 80% of stubs hide in wiring.
94
- - **Structure gaps in YAML frontmatter** for `/rihal:plan --gaps`.
94
+ - **Structure gaps in YAML frontmatter** for `/rihal-plan --gaps`.
95
95
  - **DO flag for human verification when uncertain** (visual, real-time, external service).
96
96
  - **Keep verification fast** — use grep/file checks, not running the app.
97
97
  - **DO NOT commit** — leave committing to the orchestrator.
@@ -3,7 +3,7 @@ name: rihal-waleed
3
3
  description: |
4
4
  CTO and Chief Architect — for architecture decisions, stack selection,
5
5
  technical feasibility, ADR writing, scalability ceilings, security posture,
6
- tech-debt prioritisation. Spawned by /rihal:council and technical dispatch.
6
+ tech-debt prioritisation. Spawned by /rihal-council and technical dispatch.
7
7
  Activates: "should we use X or Y", "can we scale to N", "is this feasible",
8
8
  "right architecture for", "ADR for", "talk to Waleed", "rewrite vs refactor",
9
9
  "monolith vs microservices", "which database / queue / cache".
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: rihal-yousef
3
3
  description: |
4
- Senior Backend Engineer — spawned by /rihal:council, /rihal:plan, and any
4
+ Senior Backend Engineer — spawned by /rihal-council, /rihal-plan, and any
5
5
  backend dispatch (API design, queries, services, queues, perf, integrations).
6
6
  Activates for: API design, schema design, query optimization, p50/p95/p99
7
7
  latency, throughput tuning, BullMQ / Celery / SQS / RabbitMQ, webhooks,
@@ -113,7 +113,7 @@ Always read on activation:
113
113
  **Negative routing** — Out of scope
114
114
  > *"What's the React component for the leads table?"*
115
115
  >
116
- > ⚙️ **Yousef:** Frontend — Haitham's lane. Hand off via `/rihal:discuss haitham`.
116
+ > ⚙️ **Yousef:** Frontend — Haitham's lane. Hand off via `/rihal-discuss haitham`.
117
117
 
118
118
  ## Redirects
119
119
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: rihal-zahra
3
- description: Branding & Creative Director — spawned by /rihal:council for brand identity, visual language, typography systems (Latin + Arabic), color systems, design tokens, and cross-touchpoint brand consistency. Defers to Layla on UX interaction design, Haitham on frontend implementation, Mariam on marketing copy.
3
+ description: Branding & Creative Director — spawned by /rihal-council for brand identity, visual language, typography systems (Latin + Arabic), color systems, design tokens, and cross-touchpoint brand consistency. Defers to Layla on UX interaction design, Haitham on frontend implementation, Mariam on marketing copy.
4
4
  tools: Read, Grep, Glob, WebFetch
5
5
  color: magenta
6
6
  ---
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: rihal-zayd
3
- description: Senior ML Engineer — spawned by /rihal:council for machine learning, OCR, LLM integration, RAG/retrieval, vector search, reranking, embeddings, prompt engineering, and eval questions. Defers to Waleed on architecture, Yousef on integration points (queues, APIs), Fatima on eval methodology.
3
+ description: Senior ML Engineer — spawned by /rihal-council for machine learning, OCR, LLM integration, RAG/retrieval, vector search, reranking, embeddings, prompt engineering, and eval questions. Defers to Waleed on architecture, Yousef on integration points (queues, APIs), Fatima on eval methodology.
4
4
  tools: Read, Grep, Glob, Bash, WebFetch
5
5
  color: purple
6
6
  ---
@@ -307,7 +307,7 @@ Verified patterns from official sources:
307
307
  ### Sampling Rate
308
308
  - **Per task commit:** `{quick run command}`
309
309
  - **Per wave merge:** `{full suite command}`
310
- - **Phase gate:** Full suite green before `/rihal:verify-work`
310
+ - **Phase gate:** Full suite green before `/rihal-verify-work`
311
311
 
312
312
  ### Wave 0 Gaps
313
313
  - [ ] `{tests/test_file.py}` — covers REQ-{XX}
@@ -522,7 +522,7 @@ After incorporating user feedback and updating files:
522
522
 
523
523
  ### Ready for Planning
524
524
 
525
- Next: `/rihal:plan 1`
525
+ Next: `/rihal-plan 1`
526
526
  ```
527
527
 
528
528
  ## Roadmap Blocked
@@ -189,7 +189,7 @@ issue:
189
189
 
190
190
  ## Dimension 7: Context Compliance (if CONTEXT.md exists)
191
191
 
192
- **Question:** Do plans honor user decisions from /rihal:discuss-phase?
192
+ **Question:** Do plans honor user decisions from /rihal-discuss-phase?
193
193
 
194
194
  **Only check if CONTEXT.md was provided in the verification context.**
195
195
 
@@ -244,7 +244,7 @@ Before running checks 8a-8d, verify VALIDATION.md exists:
244
244
  ls "${PHASE_DIR}"/*-VALIDATION.md 2>/dev/null
245
245
  ```
246
246
 
247
- **If missing:** **BLOCKING FAIL** — "VALIDATION.md not found for phase {N}. Re-run `/rihal:plan {N} --research` to regenerate."
247
+ **If missing:** **BLOCKING FAIL** — "VALIDATION.md not found for phase {N}. Re-run `/rihal-plan {N} --research` to regenerate."
248
248
  Skip checks 8a-8d entirely. Report Dimension 8 as FAIL with this single issue.
249
249
 
250
250
  **If exists:** Proceed to checks 8a-8d.
@@ -406,7 +406,7 @@ issue:
406
406
  missing_symbols:
407
407
  - "imaginary_function"
408
408
  verified_ratio: 0.2
409
- fix_hint: "Plan was built on hallucinated findings. Re-run /rihal:debug to verify actual code state before replanning."
409
+ fix_hint: "Plan was built on hallucinated findings. Re-run /rihal-debug to verify actual code state before replanning."
410
410
  ```
411
411
 
412
412
  </verification_dimensions>
@@ -162,7 +162,7 @@ console.log(JSON.stringify(result, null, 2));
162
162
 
163
163
  Check result:
164
164
  - If `summary.ratio < 0.5`: **BLOCKER** — "Plan references files/symbols that don't exist. Plan was built on hallucinated findings."
165
- - If `summary.ratio >= 0.5 AND < 0.8`: **WARNING** — List missing files/symbols, suggest re-planning with /rihal:debug
165
+ - If `summary.ratio >= 0.5 AND < 0.8`: **WARNING** — List missing files/symbols, suggest re-planning with /rihal-debug
166
166
  - If `summary.ratio >= 0.8`: **INFO** — Most references verified, proceed
167
167
 
168
168
  Append to verification output:
@@ -288,7 +288,7 @@ Return all issues as a structured `issues:` YAML list (see dimension examples fo
288
288
  | 01 | 3 | 5 | 1 | Valid |
289
289
  | 02 | 2 | 4 | 2 | Valid |
290
290
 
291
- Plans verified. Run `/rihal:execute {phase}` to proceed.
291
+ Plans verified. Run `/rihal-execute {phase}` to proceed.
292
292
  ```
293
293
 
294
294
  ## ISSUES FOUND
@@ -28,7 +28,7 @@
28
28
 
29
29
  ## Step 10: Structure Gap Output (If Gaps Found)
30
30
 
31
- Structure gaps in YAML frontmatter for `/rihal:plan --gaps`:
31
+ Structure gaps in YAML frontmatter for `/rihal-plan --gaps`:
32
32
 
33
33
  ```yaml
34
34
  gaps:
@@ -119,7 +119,7 @@ All must-haves verified. Phase goal achieved. Ready to proceed.
119
119
  1. **{Truth 1}** — {reason}
120
120
  - Missing: {what needs to be added}
121
121
 
122
- Structured gaps in VERIFICATION.md frontmatter for `/rihal:plan --gaps`.
122
+ Structured gaps in VERIFICATION.md frontmatter for `/rihal-plan --gaps`.
123
123
 
124
124
  {If human_needed:}
125
125
  ### Human Verification Required
@@ -4,7 +4,7 @@
4
4
  *
5
5
  * Subcommands:
6
6
  * pre-edit — verify file was Read before Edit/Write (exit 2 if not)
7
- * pre-workflow — soft warning for rihal:* commands with suspicious args
7
+ * pre-workflow — soft warning for rihal-* commands with suspicious args
8
8
  * post-commit — verify commit format and no forbidden patterns
9
9
  *
10
10
  * All subcommands read stdin JSON from the hook execution context.
@@ -61,7 +61,7 @@ async function preEdit() {
61
61
  }
62
62
 
63
63
  /**
64
- * pre-workflow: Soft warning for rihal:* commands with suspicious args.
64
+ * pre-workflow: Soft warning for rihal-* commands with suspicious args.
65
65
  * Does not block (exit 0), but prints warning.
66
66
  */
67
67
  async function preWorkflow() {
@@ -70,8 +70,8 @@ async function preWorkflow() {
70
70
  const command = input.command || '';
71
71
  const args = input.args || '';
72
72
 
73
- // Only check rihal:* commands
74
- if (!command.startsWith('rihal:')) {
73
+ // Only check rihal-* commands
74
+ if (!command.startsWith('rihal-')) {
75
75
  process.exit(0);
76
76
  }
77
77
 
@@ -94,8 +94,8 @@ async function preWorkflow() {
94
94
  }
95
95
  }
96
96
 
97
- if (hasSuspiciousPattern && (command === 'rihal:plan' || command === 'rihal:discuss')) {
98
- console.warn(`⚠ "${command}" with args: "${args}". Did you mean /rihal:do or /rihal:council?`);
97
+ if (hasSuspiciousPattern && (command === 'rihal-plan' || command === 'rihal-discuss')) {
98
+ console.warn(`⚠ "${command}" with args: "${args}". Did you mean /rihal-do or /rihal-council?`);
99
99
  }
100
100
 
101
101
  process.exit(0);
@@ -505,7 +505,7 @@ function cmdClassifyQuestion(raw) {
505
505
  }
506
506
 
507
507
  /**
508
- * init execute — returns context blob for the /rihal:execute workflow.
508
+ * init execute — returns context blob for the /rihal-execute workflow.
509
509
  * Resolves plan_path (single file or phase directory), reads the plan
510
510
  * frontmatter, and returns dependency wave groupings.
511
511
  */
@@ -738,7 +738,7 @@ function cmdState(subArgs) {
738
738
  if (sub === 'read' || sub === 'get') {
739
739
  if (!fs.existsSync(statePath)) {
740
740
  // Auto-init with defaults if config.yaml exists (install happened).
741
- // Removes the "run /rihal:init first" friction — any workflow can
741
+ // Removes the "run /rihal-init first" friction — any workflow can
742
742
  // call `state read` and get a usable state back.
743
743
  const configPath = path.join(RIHAL_DIR, 'config.yaml');
744
744
  if (fs.existsSync(configPath)) {
@@ -754,7 +754,7 @@ function cmdState(subArgs) {
754
754
  }
755
755
  return {
756
756
  ok: false,
757
- error: 'No state.json yet. Run /rihal:install to set up this project, or `state init --project <name>` directly.'
757
+ error: 'No state.json yet. Run /rihal-install to set up this project, or `state init --project <name>` directly.'
758
758
  };
759
759
  }
760
760
  const state = readState();
@@ -2229,7 +2229,7 @@ function classifyScope(input) {
2229
2229
  return 'feature';
2230
2230
  }
2231
2231
 
2232
- /** init plan — context blob for /rihal:plan workflow. */
2232
+ /** init plan — context blob for /rihal-plan workflow. */
2233
2233
  function cmdInitPlan(rawArgs) {
2234
2234
  const config = readConfig();
2235
2235
  const tokens = (rawArgs || '').trim().split(/\s+/).filter(Boolean);
@@ -2322,7 +2322,7 @@ function cmdInitPlan(rawArgs) {
2322
2322
  workflow: 'plan',
2323
2323
  input_type: 'executable_plan',
2324
2324
  resolved_path: resolvedPath,
2325
- suggestion: `This file is already an executable plan. Run: /rihal:execute ${path.relative(PROJECT_ROOT, resolvedPath)}`,
2325
+ suggestion: `This file is already an executable plan. Run: /rihal-execute ${path.relative(PROJECT_ROOT, resolvedPath)}`,
2326
2326
  config,
2327
2327
  paths: { project_root: PROJECT_ROOT, rihal: RIHAL_DIR, planning_root: PLANNING_DIR, state: path.join(RIHAL_DIR, 'state.json') },
2328
2328
  };
@@ -2355,7 +2355,7 @@ function cmdPlanList() {
2355
2355
  };
2356
2356
  }
2357
2357
 
2358
- /** init chain — context blob for /rihal:chain workflow. */
2358
+ /** init chain — context blob for /rihal-chain workflow. */
2359
2359
  function cmdInitChain(rawArgs) {
2360
2360
  const config = readConfig();
2361
2361
  const installedAgents = listInstalledAgents();
@@ -2427,7 +2427,7 @@ function cmdInitChain(rawArgs) {
2427
2427
  };
2428
2428
  }
2429
2429
 
2430
- /** init discuss — context blob for /rihal:discuss workflow. */
2430
+ /** init discuss — context blob for /rihal-discuss workflow. */
2431
2431
  function cmdInitDiscuss(rawArgs) {
2432
2432
  const config = readConfig();
2433
2433
  const installedAgents = listInstalledAgents();
@@ -2460,9 +2460,9 @@ function cmdModule(subArgs) {
2460
2460
  // Hardcoded available modules (known at build time)
2461
2461
  return {
2462
2462
  modules: [
2463
- { name: 'core', description: 'Council agents, /rihal:council, /rihal:discuss, /rihal:status, /rihal:do router, /rihal:help, and state management' },
2464
- { name: 'execution', description: 'Plan execution — /rihal:execute, /rihal:plan, /rihal:quick, /rihal:debug, /rihal:audit-fix, /rihal:undo' },
2465
- { name: 'discovery', description: 'Project discovery — /rihal:new-project, /rihal:map-codebase, /rihal:scan, /rihal:explore, /rihal:code-review, /rihal:docs-update' },
2463
+ { name: 'core', description: 'Council agents, /rihal-council, /rihal-discuss, /rihal-status, /rihal-do router, /rihal-help, and state management' },
2464
+ { name: 'execution', description: 'Plan execution — /rihal-execute, /rihal-plan, /rihal-quick, /rihal-debug, /rihal-audit-fix, /rihal-undo' },
2465
+ { name: 'discovery', description: 'Project discovery — /rihal-new-project, /rihal-map-codebase, /rihal-scan, /rihal-explore, /rihal-code-review, /rihal-docs-update' },
2466
2466
  ]
2467
2467
  };
2468
2468
  }
@@ -2609,7 +2609,7 @@ function cmdConfigSet(subArgs) {
2609
2609
  * --title <t> required headline
2610
2610
  * --body <b> optional detail text
2611
2611
  * --event <e> optional short event tag (e.g. "execute-done", "council-done")
2612
- * --only slack|discord|teams restrict to one platform (for /rihal:notify-test)
2612
+ * --only slack|discord|teams restrict to one platform (for /rihal-notify-test)
2613
2613
  *
2614
2614
  * Returns: { sent: [...], skipped: [...], failed: [...] }
2615
2615
  * Never throws on webhook failure — this runs at the tail of workflows and
@@ -3016,7 +3016,7 @@ function cmdBrain(args) {
3016
3016
  * cmdProgress — single pre-computed progress blob (issue #159).
3017
3017
  *
3018
3018
  * Subcommands:
3019
- * progress init Full snapshot — everything /rihal:progress needs.
3019
+ * progress init Full snapshot — everything /rihal-progress needs.
3020
3020
  * progress bar --raw ASCII bar only (e.g. "[████░░░░] 50%").
3021
3021
  * progress insights insights[] array (drift warnings, between-milestone detection).
3022
3022
  * progress routes intent-tree routes[] for Next Up menu.
@@ -3162,7 +3162,7 @@ function cmdProgress(args) {
3162
3162
  insights.push({
3163
3163
  kind: 'between-milestones',
3164
3164
  severity: 'info',
3165
- message: 'All registered phases complete — effectively between milestones. Consider /rihal:audit-milestone or /rihal:new-milestone.',
3165
+ message: 'All registered phases complete — effectively between milestones. Consider /rihal-audit-milestone or /rihal-new-milestone.',
3166
3166
  });
3167
3167
  }
3168
3168
  }
@@ -3184,7 +3184,7 @@ function cmdProgress(args) {
3184
3184
  routes.push({
3185
3185
  letter: 'A',
3186
3186
  label: `Execute phase ${k} — unfinished plans`,
3187
- command: `/rihal:execute-phase ${k}`,
3187
+ command: `/rihal-execute-phase ${k}`,
3188
3188
  });
3189
3189
  }
3190
3190
 
@@ -3196,7 +3196,7 @@ function cmdProgress(args) {
3196
3196
  routes.push({
3197
3197
  letter: 'B',
3198
3198
  label: `Plan phase ${num} — researched, awaiting plan`,
3199
- command: `/rihal:plan-phase ${num}`,
3199
+ command: `/rihal-plan-phase ${num}`,
3200
3200
  });
3201
3201
  }
3202
3202
 
@@ -3213,21 +3213,21 @@ function cmdProgress(args) {
3213
3213
  routes.push({
3214
3214
  letter: 'B',
3215
3215
  label: `Plan phase ${k} — in progress without SPRINT.md`,
3216
- command: `/rihal:plan ${k}`,
3216
+ command: `/rihal-plan ${k}`,
3217
3217
  });
3218
3218
  }
3219
3219
 
3220
3220
  // Route C — close out milestone if everything seems done
3221
3221
  const allDone = statePhases.length > 0 && statePhases.every(p => p.status === 'complete' || p.completed);
3222
3222
  if (allDone) {
3223
- routes.push({ letter: 'C', label: 'Audit current milestone', command: '/rihal:audit-milestone' });
3224
- routes.push({ letter: 'C', label: 'Complete current milestone', command: '/rihal:complete-milestone' });
3223
+ routes.push({ letter: 'C', label: 'Audit current milestone', command: '/rihal-audit-milestone' });
3224
+ routes.push({ letter: 'C', label: 'Complete current milestone', command: '/rihal-complete-milestone' });
3225
3225
  }
3226
3226
 
3227
3227
  // Fallback — nothing obvious: offer status
3228
3228
  if (routes.length === 0) {
3229
- routes.push({ letter: 'A', label: 'Check progress detail', command: '/rihal:progress' });
3230
- routes.push({ letter: 'B', label: 'Start a council on what to do next', command: '/rihal:council' });
3229
+ routes.push({ letter: 'A', label: 'Check progress detail', command: '/rihal-progress' });
3230
+ routes.push({ letter: 'B', label: 'Start a council on what to do next', command: '/rihal-council' });
3231
3231
  }
3232
3232
 
3233
3233
  return routes;
@@ -3242,6 +3242,40 @@ function cmdProgress(args) {
3242
3242
  return `[${bar}] ${completed}/${total} (${pct}%)`;
3243
3243
  }
3244
3244
 
3245
+ /**
3246
+ * Compute weighted progress that recognizes intermediate phase states.
3247
+ * Weights: has_context only = 0.15, has_research = 0.25, has plan = 0.5,
3248
+ * has verification or summary = 1.0.
3249
+ * Returns { weighted: number (0..total), pct: number (0..100) }.
3250
+ */
3251
+ function computeWeightedProgress(stPhases, diskMap) {
3252
+ if (!stPhases.length) return { weighted: 0, pct: 0 };
3253
+ const norm = (k) => String(k ?? '').replace(/^0+(\d)/, '$1');
3254
+ let sum = 0;
3255
+ for (const p of stPhases) {
3256
+ const k = norm(phaseKey(p));
3257
+ if (p.status === 'complete' || p.completed) { sum += 1; continue; }
3258
+ const disk = diskMap[k] || diskMap[phaseKey(p)];
3259
+ if (!disk) continue;
3260
+ if (disk.summary_count > 0) { sum += 1; continue; }
3261
+ if (disk.has_verification) { sum += 0.85; continue; }
3262
+ if (disk.plan_count > 0) { sum += 0.5; continue; }
3263
+ if (disk.has_research) { sum += 0.25; continue; }
3264
+ if (disk.has_context) { sum += 0.15; continue; }
3265
+ }
3266
+ const total = Math.max(stPhases.length, 1);
3267
+ return { weighted: Math.round(sum * 100) / 100, pct: Math.round((sum / total) * 100) };
3268
+ }
3269
+
3270
+ function buildWeightedBar(stPhases, diskMap, total) {
3271
+ const { weighted, pct } = computeWeightedProgress(stPhases, diskMap);
3272
+ if (!total) return '[░░░░░░░░░░░░░░░░░░░░] 0/0 (0%)';
3273
+ const width = 20;
3274
+ const filled = Math.min(width, Math.round((weighted / total) * width));
3275
+ const bar = '█'.repeat(filled) + '░'.repeat(width - filled);
3276
+ return `[${bar}] ~${pct}% weighted`;
3277
+ }
3278
+
3245
3279
  // Build the core snapshot once — all subcommands derive from it.
3246
3280
  const state = readState();
3247
3281
  const roadmapPhases = parseRoadmapPhases();
@@ -3268,6 +3302,7 @@ function cmdProgress(args) {
3268
3302
  const currentPhase = state && state.current_phase;
3269
3303
  const insights = detectInsights(state, roadmapPhases, diskByNum);
3270
3304
  const routes = deriveRoutes(state, roadmapPhases, diskByNum);
3305
+ const { weighted: weightedCompleted, pct: weightedPct } = computeWeightedProgress(statePhases, diskByNum);
3271
3306
 
3272
3307
  return {
3273
3308
  ok: true,
@@ -3276,7 +3311,9 @@ function cmdProgress(args) {
3276
3311
  current_phase: currentPhase,
3277
3312
  phase_count: phaseCount,
3278
3313
  completed_count: completedCount,
3314
+ weighted_progress: weightedPct,
3279
3315
  bar: buildBar(completedCount, phaseCount),
3316
+ weighted_bar: buildWeightedBar(statePhases, diskByNum, phaseCount),
3280
3317
  phases: (() => {
3281
3318
  // Prefer ROADMAP-parsed phases when available; fall back to state.phases
3282
3319
  // when the roadmap doesn't use a parseable format. Normalize "07" / "7" / 7.
@@ -3472,8 +3509,8 @@ function cmdGitignore(args) {
3472
3509
  let sliceStart = start;
3473
3510
  if (sliceStart > 0 && existing[sliceStart - 1] === '\n') sliceStart -= 1;
3474
3511
  let sliceEnd = endIdx + END.length;
3475
- if (existing[sliceEnd] === '\n') sliceEnd += 1;
3476
- return existing.slice(0, sliceStart) + newBlock + existing.slice(sliceEnd);
3512
+ if (existing[slice_end] === '\n') slice_end += 1;
3513
+ return existing.slice(0, sliceStart) + newBlock + existing.slice(slice_end);
3477
3514
  }
3478
3515
 
3479
3516
  if (!fs.existsSync(gitignorePath)) {
@@ -3688,7 +3725,7 @@ async function main() {
3688
3725
  console.log(' state read → print full state.json');
3689
3726
  console.log(' state get → alias for state read');
3690
3727
  console.log(' state init --project <name> → create state.json if missing');
3691
- console.log(' state set-phase <name> → set current phase, reset plan counter');
3728
+ console.log(' state set-phase <name> → set current_phase, reset current_plan, append to phases[]');
3692
3729
  console.log(' state advance-plan → increment current_plan counter');
3693
3730
  console.log(' state record-execution --plan <p> --tasks <n> --duration <ms> --hash <h>');
3694
3731
  console.log(' state add-decision "<summary>" → append to decisions[] + ~/.rihal/decisions.jsonl');
@@ -1,6 +1,6 @@
1
1
  # rihal/brain — The Rihal Context Layer
2
2
 
3
- This directory is populated on install (and on every `/rihal:update`) by `rihal-tools brain pull`. Its job is simple: pull Rihal's institutional knowledge — PR/commit/issue standards, architecture decisions, internal guides — into every Rihalian's project so their AI assistant already knows how Rihal builds.
3
+ This directory is populated on install (and on every `/rihal-update`) by `rihal-tools brain pull`. Its job is simple: pull Rihal's institutional knowledge — PR/commit/issue standards, architecture decisions, internal guides — into every Rihalian's project so their AI assistant already knows how Rihal builds.
4
4
 
5
5
  ## Structure
6
6
 
@@ -22,7 +22,7 @@ Content is pulled from three kinds of source:
22
22
 
23
23
  ## Update policy
24
24
 
25
- - Local edits to any file under `rihal/brain/` are **overwritten** on every `/rihal:update`. Rihal Code treats the upstream sources as the single source of truth. If the Rihal standard needs to change, the change happens upstream — then every Rihalian benefits.
25
+ - Local edits to any file under `rihal/brain/` are **overwritten** on every `/rihal-update`. Rihal Code treats the upstream sources as the single source of truth. If the Rihal standard needs to change, the change happens upstream — then every Rihalian benefits.
26
26
  - Per-invocation: `node .rihal/bin/rihal-tools.cjs brain pull`.
27
27
  - Per project: runs automatically as part of `npx rihal-code install`.
28
28
 
@@ -13,7 +13,7 @@ Phrases like *"just write it autonomously"*, *"create the full thing ready to ex
13
13
  There are exactly two ways to legitimately run a skill without halting at menus:
14
14
 
15
15
  1. **Project-wide:** `.rihal/config.yaml` → `mode: yolo`. The config loader flags `yoloMode=true` in the runtime context; step files check this flag and may auto-advance.
16
- 2. **Per-invocation:** `/rihal:do --auto <question>` on the router. The router sets `autoMode=true` and passes it to the dispatched skill.
16
+ 2. **Per-invocation:** `/rihal-do --auto <question>` on the router. The router sets `autoMode=true` and passes it to the dispatched skill.
17
17
 
18
18
  If **neither** flag is set, halt is mandatory regardless of what the user's prompt text says.
19
19
 
@@ -34,4 +34,4 @@ That response invents a mode that does not exist and violates the halt invariant
34
34
 
35
35
  ## Correct Response
36
36
 
37
- > ✅ Agent: *"I hear you want the PRD written end-to-end. The halt rule applies unless you set `mode: yolo` in `.rihal/config.yaml` or re-invoke via `/rihal:do --auto`. Here is the step-01 menu — pick Continue and I will drive each step concisely."*
37
+ > ✅ Agent: *"I hear you want the PRD written end-to-end. The halt rule applies unless you set `mode: yolo` in `.rihal/config.yaml` or re-invoke via `/rihal-do --auto`. Here is the step-01 menu — pick Continue and I will drive each step concisely."*
@@ -28,7 +28,7 @@ This pattern is forbidden. A citation block without `WebFetch` evidence is a lie
28
28
 
29
29
  ## If the User Is Running Autonomously
30
30
 
31
- `mode: yolo` and `/rihal:do --auto` bypass halt-at-menu, but they do **not** bypass this rule. A fully-autonomous run still has to fetch every cited URL before writing the claim.
31
+ `mode: yolo` and `/rihal-do --auto` bypass halt-at-menu, but they do **not** bypass this rule. A fully-autonomous run still has to fetch every cited URL before writing the claim.
32
32
 
33
33
  ## Checklist Before Writing a Citation
34
34
 
@@ -1,6 +1,6 @@
1
1
  # State Sync Rule
2
2
 
3
- Referenced by skills that write `ROADMAP.md`, `epics.md`, or sprint artifacts. These artifacts are not authoritative on their own — downstream workflows (`/rihal:status`, `/rihal:progress`, `/rihal:execute`) read `.rihal/state.json`. If you write a planning artifact and skip state sync, the project ends up with two divergent pictures.
3
+ Referenced by skills that write `ROADMAP.md`, `epics.md`, or sprint artifacts. These artifacts are not authoritative on their own — downstream workflows (`/rihal-status`, `/rihal-progress`, `/rihal-execute`) read `.rihal/state.json`. If you write a planning artifact and skip state sync, the project ends up with two divergent pictures.
4
4
 
5
5
  ## The Rule
6
6
 
@@ -29,15 +29,15 @@ If `rihal-tools.cjs` does not yet expose the needed subcommand, fall back to `st
29
29
  ## Verification After Sync
30
30
 
31
31
  - `node .rihal/bin/rihal-tools.cjs state read` returns a phase count that matches the phase table in `ROADMAP.md`.
32
- - `/rihal:status` and `/rihal:progress`, run back-to-back, agree on the current milestone name and phase count.
32
+ - `/rihal-status` and `/rihal-progress`, run back-to-back, agree on the current milestone name and phase count.
33
33
 
34
34
  ## Why This Matters
35
35
 
36
36
  Observed failure (rihal-code, social-poster-x install, Apr 2026):
37
37
 
38
- - User ran `/rihal:create-epics-and-stories`.
38
+ - User ran `/rihal-create-epics-and-stories`.
39
39
  - `ROADMAP.md` gained 10 phases; `epics.md` gained 62 stories.
40
40
  - `.rihal/state.json` remained at the initial bootstrap with 1 phase.
41
- - `/rihal:status` showed 1 phase; `/rihal:progress` showed 10.
41
+ - `/rihal-status` showed 1 phase; `/rihal-progress` showed 10.
42
42
 
43
43
  That divergence is what this rule exists to prevent.
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: rihal:add-phase
2
+ name: rihal-add-phase
3
3
  description: "Add a new integer phase to the end of the current milestone. Auto-calculates the next phase number, creates the phase directory, and updates ROADMAP.md. Use when scope expands mid-milestone."
4
4
  argument-hint: "<phase-name>"
5
5
  allowed-tools: Read, Write, Bash, Glob, Grep, AskUserQuestion
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: rihal:add-tests
2
+ name: rihal-add-tests
3
3
  description: Generate unit and E2E tests for a completed phase based on its SUMMARY.md, CONTEXT.md, and implementation. Classifies ea
4
4
  argument-hint: ""
5
5
  allowed-tools: Read, Write, Bash, Glob, Grep, AskUserQuestion, Agent
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: rihal:add-todo
2
+ name: rihal-add-todo
3
3
  description: Capture an idea or task for later work
4
4
  argument-hint: "<todo-title>"
5
5
  allowed-tools: bash, read, write
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: rihal:analyze-dependencies
2
+ name: rihal-analyze-dependencies
3
3
  description: Analyze phase dependencies, suggest "Depends on" entries for ROADMAP.md
4
4
  argument-hint: ""
5
5
  allowed-tools:
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: rihal:audit-fix
2
+ name: rihal-audit-fix
3
3
  description: Autonomous audit-to-fix pipeline — find issues, classify, fix, test, commit.
4
4
  argument-hint: "[--max N] [--severity high|medium|all] [--dry-run] [--source <audit>]"
5
5
  allowed-tools:
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: rihal:audit-milestone
2
+ name: rihal-audit-milestone
3
3
  description: Cross-phase audit — verify milestone completion against original goals
4
4
  argument-hint: "[--strict] [--report]"
5
5
  allowed-tools:
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: rihal:audit-uat
2
+ name: rihal-audit-uat
3
3
  description: Cross-phase audit of all UAT and verification files. Finds every outstanding item (pending, skipped, blocked, human_need
4
4
  argument-hint: ""
5
5
  allowed-tools: Read, Write, Bash, Glob, Grep, AskUserQuestion, Agent
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: rihal:audit
2
+ name: rihal-audit
3
3
  description: Single audit entry point — asks what to audit (phase, milestone, UAT, code, fix, work) and dispatches to the right subroute. Honours .rihal/config.yaml mode.
4
4
  argument-hint: "[phase | milestone | uat | code | fix | work] [...subroute args]"
5
5
  allowed-tools: Read, Write, Bash, AskUserQuestion
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: rihal:autonomous
2
+ name: rihal-autonomous
3
3
  description: Execute remaining phases autonomously with minimal human intervention. Runs plan → execute → verify cycles for unfinished work, pausing at checkpoints and failures.
4
4
  argument-hint: "[--from N] [--to M] [--only N] [--interactive]"
5
5
  allowed-tools: Read, Bash, Agent, AskUserQuestion
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: rihal:brainstorm
2
+ name: rihal-brainstorm
3
3
  description: Guided brainstorming session — select a method, apply it to your challenge, generate ideas systematically
4
4
  argument-hint: "<challenge> [--method=METHOD] [--people=N] [--personas=LIST]"
5
5
  allowed-tools:
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: rihal:chain
2
+ name: rihal-chain
3
3
  description: Run a sequential agent pipeline (research → scope → build). Each stage reads the previous stage's artifact.
4
4
  argument-hint: "<preset|agent-list> <topic>"
5
5
  allowed-tools: Read, Write, Bash, Agent
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: rihal:check-todos
2
+ name: rihal-check-todos
3
3
  description: List all pending todos, allow selection, load full context for the selected todo, and route to appropriate action.
4
4
  argument-hint: ""
5
5
  allowed-tools: Read, Write, Bash, Glob, Grep, AskUserQuestion, Agent
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: rihal:checkpoint-preview
2
+ name: rihal-checkpoint-preview
3
3
  description: Human-in-the-loop change review — makes sense of a diff, focuses attention where it matters, and walks through testing. Use when you say "checkpoint", "walk me through this", or "human review".
4
4
  argument-hint: "[<branch-or-diff>]"
5
5
  allowed-tools:
@@ -1,6 +1,6 @@
1
1
  ---
2
- name: rihal:cleanup
3
- description: "Archive completed milestone phase directories into .planning/milestones/. Run after /rihal:complete-milestone to keep .planning/ tidy. Shows a dry-run summary before moving anything."
2
+ name: rihal-cleanup
3
+ description: "Archive completed milestone phase directories into .planning/milestones/. Run after /rihal-complete-milestone to keep .planning/ tidy. Shows a dry-run summary before moving anything."
4
4
  argument-hint: "[--dry-run]"
5
5
  allowed-tools: Read, Write, Bash, Glob, Grep, AskUserQuestion, Agent
6
6
  ---
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: rihal:code-review-fix
2
+ name: rihal-code-review-fix
3
3
  description: Auto-fix issues found by code review.
4
4
  argument-hint: "<phase> [--all] [--auto]"
5
5
  allowed-tools:
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: rihal:code-review
2
+ name: rihal-code-review
3
3
  description: Review source files for bugs, security issues, and code quality problems.
4
4
  argument-hint: "<phase> [--depth=quick|standard|deep] [--files=file1,file2,...] [--karpathy] [--attack] [--edge-cases]"
5
5
  allowed-tools:
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: rihal:complete-milestone
2
+ name: rihal-complete-milestone
3
3
  description: Archive and reset — move completed milestone to archive and prepare for next cycle
4
4
  argument-hint: "[--archive-path=PATH]"
5
5
  allowed-tools: