@hanzlaa/rcode 3.3.0 → 3.3.2
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.
- package/CONTRIBUTING.md +9 -9
- package/README.md +50 -50
- package/cli/context.js +4 -4
- package/cli/doctor.js +1 -1
- package/cli/generate-command-skills.cjs +10 -10
- package/cli/install.js +11 -11
- package/cli/lib/memory-bank.cjs +5 -5
- package/cli/set-mode.js +2 -2
- package/cli/uninstall.js +5 -5
- package/dist/rcode.js +15 -15
- package/package.json +1 -1
- package/rihal/DOCS-AUDIT.md +1 -1
- package/rihal/agents/rihal-ahmed.md +1 -1
- package/rihal/agents/rihal-codebase-mapper.md +3 -3
- package/rihal/agents/rihal-debugger.md +2 -2
- package/rihal/agents/rihal-fatima.md +2 -2
- package/rihal/agents/rihal-haitham.md +2 -2
- package/rihal/agents/rihal-khalid.md +1 -1
- package/rihal/agents/rihal-layla.md +1 -1
- package/rihal/agents/rihal-nasser.md +1 -1
- package/rihal/agents/rihal-noor.md +1 -1
- package/rihal/agents/rihal-nyquist-auditor.md +1 -1
- package/rihal/agents/rihal-omar.md +1 -1
- package/rihal/agents/rihal-phase-researcher.md +3 -3
- package/rihal/agents/rihal-planner.md +1 -1
- package/rihal/agents/rihal-project-researcher.md +2 -2
- package/rihal/agents/rihal-research-synthesizer.md +3 -3
- package/rihal/agents/rihal-roadmapper.md +3 -3
- package/rihal/agents/rihal-sadiq.md +1 -1
- package/rihal/agents/rihal-sprint-checker.md +3 -3
- package/rihal/agents/rihal-verifier.md +2 -2
- package/rihal/agents/rihal-waleed.md +1 -1
- package/rihal/agents/rihal-yousef.md +2 -2
- package/rihal/agents/rihal-zahra.md +1 -1
- package/rihal/agents/rihal-zayd.md +1 -1
- package/rihal/agents/rules/phase-researcher/detailed-guide.md +1 -1
- package/rihal/agents/rules/roadmapper/detailed-guide.md +1 -1
- package/rihal/agents/rules/sprint-checker/dimensions.md +3 -3
- package/rihal/agents/rules/sprint-checker/process.md +2 -2
- package/rihal/agents/rules/verifier/gap-output.md +1 -1
- package/rihal/agents/rules/verifier/verification-report.md +1 -1
- package/rihal/bin/rihal-hooks.cjs +6 -6
- package/rihal/bin/rihal-tools.cjs +60 -23
- package/rihal/brain/README.md +2 -2
- package/rihal/brain/best-practices/no-autonomous-bypass.md +2 -2
- package/rihal/brain/best-practices/research-citation-rule.md +1 -1
- package/rihal/brain/best-practices/state-sync-rule.md +4 -4
- package/rihal/commands/add-phase.md +1 -1
- package/rihal/commands/add-tests.md +1 -1
- package/rihal/commands/add-todo.md +1 -1
- package/rihal/commands/analyze-dependencies.md +1 -1
- package/rihal/commands/audit-fix.md +1 -1
- package/rihal/commands/audit-milestone.md +1 -1
- package/rihal/commands/audit-uat.md +1 -1
- package/rihal/commands/audit.md +1 -1
- package/rihal/commands/autonomous.md +1 -1
- package/rihal/commands/brainstorm.md +1 -1
- package/rihal/commands/chain.md +1 -1
- package/rihal/commands/check-todos.md +1 -1
- package/rihal/commands/checkpoint-preview.md +1 -1
- package/rihal/commands/cleanup.md +2 -2
- package/rihal/commands/code-review-fix.md +1 -1
- package/rihal/commands/code-review.md +1 -1
- package/rihal/commands/complete-milestone.md +1 -1
- package/rihal/commands/config.md +2 -2
- package/rihal/commands/correct-course.md +1 -1
- package/rihal/commands/council.md +1 -1
- package/rihal/commands/create-epics-and-stories.md +1 -1
- package/rihal/commands/create-story.md +2 -2
- package/rihal/commands/dashboard.md +1 -1
- package/rihal/commands/debug.md +1 -1
- package/rihal/commands/decisions.md +1 -1
- package/rihal/commands/dev-story.md +1 -1
- package/rihal/commands/diff.md +1 -1
- package/rihal/commands/discuss-phase.md +1 -1
- package/rihal/commands/discuss.md +2 -2
- package/rihal/commands/do.md +2 -2
- package/rihal/commands/docs-update.md +1 -1
- package/rihal/commands/document-project.md +1 -1
- package/rihal/commands/enable-hooks.md +1 -1
- package/rihal/commands/execute-sprint.md +2 -2
- package/rihal/commands/execute.md +1 -1
- package/rihal/commands/explore.md +1 -1
- package/rihal/commands/export-to-github.md +1 -1
- package/rihal/commands/forensics.md +1 -1
- package/rihal/commands/from-template.md +1 -1
- package/rihal/commands/health.md +1 -1
- package/rihal/commands/help.md +1 -1
- package/rihal/commands/import.md +1 -1
- package/rihal/commands/inbox.md +1 -1
- package/rihal/commands/init.md +1 -1
- package/rihal/commands/insert-phase.md +1 -1
- package/rihal/commands/install.md +1 -1
- package/rihal/commands/list-plans.md +1 -1
- package/rihal/commands/list-workspaces.md +1 -1
- package/rihal/commands/map-codebase.md +1 -1
- package/rihal/commands/milestone-summary.md +1 -1
- package/rihal/commands/new-milestone.md +1 -1
- package/rihal/commands/new-project.md +1 -1
- package/rihal/commands/new-workspace.md +1 -1
- package/rihal/commands/next.md +1 -1
- package/rihal/commands/note.md +1 -1
- package/rihal/commands/notify-test.md +1 -1
- package/rihal/commands/pause-work.md +1 -1
- package/rihal/commands/plan-milestone-gaps.md +3 -3
- package/rihal/commands/plan.md +2 -2
- package/rihal/commands/plant-seed.md +1 -1
- package/rihal/commands/pr-branch.md +2 -2
- package/rihal/commands/prfaq.md +1 -1
- package/rihal/commands/profile-user.md +1 -1
- package/rihal/commands/progress.md +3 -3
- package/rihal/commands/quick.md +1 -1
- package/rihal/commands/remove-phase.md +1 -1
- package/rihal/commands/remove-workspace.md +1 -1
- package/rihal/commands/replay.md +1 -1
- package/rihal/commands/rerun.md +1 -1
- package/rihal/commands/research-phase.md +2 -2
- package/rihal/commands/resume-work.md +1 -1
- package/rihal/commands/review.md +1 -1
- package/rihal/commands/scan.md +1 -1
- package/rihal/commands/secure-phase.md +1 -1
- package/rihal/commands/session-report.md +1 -1
- package/rihal/commands/settings.md +1 -1
- package/rihal/commands/ship.md +2 -2
- package/rihal/commands/show.md +1 -1
- package/rihal/commands/sprint-planning.md +1 -1
- package/rihal/commands/sprint-status.md +1 -1
- package/rihal/commands/stats.md +1 -1
- package/rihal/commands/status.md +1 -1
- package/rihal/commands/ui-phase.md +1 -1
- package/rihal/commands/ui-review.md +1 -1
- package/rihal/commands/undo.md +1 -1
- package/rihal/commands/update.md +1 -1
- package/rihal/commands/validate-phase.md +1 -1
- package/rihal/commands/verify-phase.md +2 -2
- package/rihal/commands/verify-work.md +1 -1
- package/rihal/commands/why.md +1 -1
- package/rihal/commands/workstream.md +1 -1
- package/rihal/references/agent-shared-rules.md +1 -1
- package/rihal/references/command-redirect-format.md +7 -7
- package/rihal/references/context-budget.md +2 -2
- package/rihal/references/continuation-format.md +16 -16
- package/rihal/references/dispatch-banner.md +1 -1
- package/rihal/references/execution-protocol.md +2 -2
- package/rihal/references/gates.md +3 -3
- package/rihal/references/git-integration.md +1 -1
- package/rihal/references/output-format.md +4 -4
- package/rihal/references/output-realism.md +1 -1
- package/rihal/references/revision-loop.md +1 -1
- package/rihal/references/state-schema.md +15 -15
- package/rihal/references/ui-brand.md +1 -1
- package/rihal/references/verb-dictionary.md +15 -15
- package/rihal/references/workstream-flag.md +28 -28
- package/rihal/skills/_shared/no-autonomous-bypass.md +2 -2
- package/rihal/skills/_shared/research-citation-rule.md +1 -1
- package/rihal/skills/_shared/state-sync-rule.md +4 -4
- package/rihal/skills/actions/1-analysis/rihal-prfaq/SKILL.md +1 -1
- package/rihal/skills/actions/2-plan/rihal-create-epics-and-stories/workflow.md +1 -1
- package/rihal/skills/actions/2-plan/rihal-create-milestone/SKILL.md +2 -2
- package/rihal/skills/actions/2-plan/rihal-create-milestone/steps/step-06-phase-stubs.md +2 -2
- package/rihal/skills/actions/2-plan/rihal-create-milestone/steps/step-07-backlog.md +2 -2
- package/rihal/skills/actions/2-plan/rihal-create-milestone/steps/step-09-state-sync.md +2 -2
- package/rihal/skills/actions/2-plan/rihal-create-milestone/steps/step-10-complete.md +4 -4
- package/rihal/skills/actions/2-plan/rihal-create-milestone/workflow.md +5 -5
- package/rihal/skills/actions/2-plan/rihal-create-prd/SKILL.md +1 -1
- package/rihal/skills/actions/2-plan/rihal-create-prd/workflow.md +1 -1
- package/rihal/skills/actions/2-plan/rihal-create-story/workflow.md +1 -1
- package/rihal/skills/actions/4-implementation/rihal-checkpoint-preview/SKILL.md +3 -3
- package/rihal/skills/actions/4-implementation/rihal-dev-story/workflow.md +1 -1
- package/rihal/skills/actions/4-implementation/rihal-sprint-planning/SKILL.md +1 -1
- package/rihal/skills/actions/4-implementation/rihal-sprint-planning/checklist.md +1 -1
- package/rihal/skills/actions/4-implementation/rihal-sprint-planning/workflow.md +1 -1
- package/rihal/skills/actions/4-implementation/rihal-sprint-status/workflow.md +5 -5
- package/rihal/skills/agents/dalil-scout/SKILL.md +7 -7
- package/rihal/skills/core/rihal-brainstorming/SKILL.md +1 -1
- package/rihal/skills/core/rihal-init/SKILL.md +1 -1
- package/rihal/skills/core/rihal-party-mode/SKILL.md +1 -1
- package/rihal/templates/milestone.md +1 -1
- package/rihal/templates/projects/api-backend/PROJECT.md +1 -1
- package/rihal/templates/projects/mobile-app/PROJECT.md +1 -1
- package/rihal/templates/projects/saas-b2b/PROJECT.md +1 -1
- package/rihal/workflows/add-phase.md +10 -10
- package/rihal/workflows/add-tests.md +9 -9
- package/rihal/workflows/add-todo.md +5 -5
- package/rihal/workflows/analyze-dependencies.md +7 -7
- package/rihal/workflows/audit-fix.md +4 -4
- package/rihal/workflows/audit-milestone.md +8 -8
- package/rihal/workflows/audit-uat.md +2 -2
- package/rihal/workflows/audit.md +28 -28
- package/rihal/workflows/autonomous.md +128 -44
- package/rihal/workflows/brainstorm.md +7 -7
- package/rihal/workflows/chain.md +16 -16
- package/rihal/workflows/check-implementation-readiness.md +4 -4
- package/rihal/workflows/check-todos.md +8 -8
- package/rihal/workflows/checkpoint-preview.md +1 -1
- package/rihal/workflows/code-review-fix.md +10 -10
- package/rihal/workflows/code-review.md +10 -10
- package/rihal/workflows/complete-milestone.md +5 -5
- package/rihal/workflows/correct-course.md +7 -7
- package/rihal/workflows/council.md +15 -15
- package/rihal/workflows/create-epics-and-stories.md +9 -9
- package/rihal/workflows/create-story.md +11 -11
- package/rihal/workflows/dashboard.md +8 -8
- package/rihal/workflows/debug.md +6 -6
- package/rihal/workflows/decisions.md +5 -5
- package/rihal/workflows/dev-story.md +12 -12
- package/rihal/workflows/diagnose-issues.md +2 -2
- package/rihal/workflows/diff.md +3 -3
- package/rihal/workflows/discuss-phase-power.md +7 -7
- package/rihal/workflows/discuss-phase.md +14 -14
- package/rihal/workflows/discuss.md +9 -9
- package/rihal/workflows/do.md +79 -79
- package/rihal/workflows/docs-update.md +6 -6
- package/rihal/workflows/document-project.md +5 -5
- package/rihal/workflows/enable-hooks.md +5 -5
- package/rihal/workflows/execute-sprint.md +3 -3
- package/rihal/workflows/execute.md +28 -28
- package/rihal/workflows/explore.md +5 -5
- package/rihal/workflows/export-to-github.md +5 -5
- package/rihal/workflows/forensics.md +8 -8
- package/rihal/workflows/from-template.md +8 -8
- package/rihal/workflows/health.md +11 -11
- package/rihal/workflows/help.md +117 -117
- package/rihal/workflows/import.md +4 -4
- package/rihal/workflows/inbox.md +8 -8
- package/rihal/workflows/init.md +23 -23
- package/rihal/workflows/insert-phase.md +9 -9
- package/rihal/workflows/install.md +3 -3
- package/rihal/workflows/karpathy-audit.md +11 -11
- package/rihal/workflows/list-plans.md +8 -8
- package/rihal/workflows/list-workspaces.md +7 -7
- package/rihal/workflows/map-codebase.md +5 -5
- package/rihal/workflows/milestone-summary.md +7 -7
- package/rihal/workflows/new-milestone.md +11 -11
- package/rihal/workflows/new-project-research.md +1 -1
- package/rihal/workflows/new-project-roadmap.md +8 -8
- package/rihal/workflows/new-project.md +32 -32
- package/rihal/workflows/new-workspace.md +7 -7
- package/rihal/workflows/next.md +13 -13
- package/rihal/workflows/note.md +7 -7
- package/rihal/workflows/notify-test.md +6 -6
- package/rihal/workflows/pause-work.md +6 -6
- package/rihal/workflows/plan-milestone-gaps.md +7 -7
- package/rihal/workflows/plan.md +28 -28
- package/rihal/workflows/plant-seed.md +3 -3
- package/rihal/workflows/pr-branch.md +1 -1
- package/rihal/workflows/prfaq.md +1 -1
- package/rihal/workflows/profile-user.md +5 -5
- package/rihal/workflows/progress.md +6 -6
- package/rihal/workflows/quick.md +12 -12
- package/rihal/workflows/remove-phase.md +6 -6
- package/rihal/workflows/remove-workspace.md +8 -8
- package/rihal/workflows/replay.md +8 -8
- package/rihal/workflows/rerun.md +5 -5
- package/rihal/workflows/research-phase.md +2 -2
- package/rihal/workflows/resume-work.md +10 -10
- package/rihal/workflows/review-adversarial.md +4 -4
- package/rihal/workflows/review-edge-case-hunter.md +5 -5
- package/rihal/workflows/review.md +11 -11
- package/rihal/workflows/scan.md +9 -9
- package/rihal/workflows/secure-phase.md +8 -8
- package/rihal/workflows/session-report.md +6 -6
- package/rihal/workflows/settings.md +15 -15
- package/rihal/workflows/ship.md +11 -11
- package/rihal/workflows/show.md +2 -2
- package/rihal/workflows/sprint-planning.md +13 -13
- package/rihal/workflows/sprint-status.md +10 -10
- package/rihal/workflows/stats.md +6 -6
- package/rihal/workflows/status.md +15 -7
- package/rihal/workflows/ui-phase.md +8 -8
- package/rihal/workflows/ui-review.md +5 -5
- package/rihal/workflows/undo.md +17 -17
- package/rihal/workflows/update.md +12 -12
- package/rihal/workflows/validate-phase.md +5 -5
- package/rihal/workflows/verify-work.md +18 -18
- package/rihal/workflows/why.md +9 -9
- package/rihal/workflows/workstream.md +11 -11
- package/server/lib/html/client.js +45 -45
|
@@ -44,7 +44,7 @@ Standard format for presenting next steps after completing a command or workflow
|
|
|
44
44
|
|
|
45
45
|
**02-03: Refresh Token Rotation** — Add /api/auth/refresh with sliding expiry
|
|
46
46
|
|
|
47
|
-
`/rihal
|
|
47
|
+
`/rihal-execute-phase 2`
|
|
48
48
|
|
|
49
49
|
<sub>`/clear` first → fresh context window</sub>
|
|
50
50
|
|
|
@@ -52,7 +52,7 @@ Standard format for presenting next steps after completing a command or workflow
|
|
|
52
52
|
|
|
53
53
|
**Also available:**
|
|
54
54
|
- Review plan before executing
|
|
55
|
-
- `/rihal
|
|
55
|
+
- `/rihal-list-phase-assumptions 2` — check assumptions
|
|
56
56
|
|
|
57
57
|
---
|
|
58
58
|
```
|
|
@@ -69,7 +69,7 @@ Add note that this is the last plan and what comes after:
|
|
|
69
69
|
**02-03: Refresh Token Rotation** — Add /api/auth/refresh with sliding expiry
|
|
70
70
|
<sub>Final plan in Phase 2</sub>
|
|
71
71
|
|
|
72
|
-
`/rihal
|
|
72
|
+
`/rihal-execute-phase 2`
|
|
73
73
|
|
|
74
74
|
<sub>`/clear` first → fresh context window</sub>
|
|
75
75
|
|
|
@@ -91,15 +91,15 @@ Add note that this is the last plan and what comes after:
|
|
|
91
91
|
|
|
92
92
|
**Phase 2: Authentication** — JWT login flow with refresh tokens
|
|
93
93
|
|
|
94
|
-
`/rihal
|
|
94
|
+
`/rihal-plan-phase 2`
|
|
95
95
|
|
|
96
96
|
<sub>`/clear` first → fresh context window</sub>
|
|
97
97
|
|
|
98
98
|
---
|
|
99
99
|
|
|
100
100
|
**Also available:**
|
|
101
|
-
- `/rihal
|
|
102
|
-
- `/rihal
|
|
101
|
+
- `/rihal-discuss-phase 2` — gather context first
|
|
102
|
+
- `/rihal-research-phase 2` — investigate unknowns
|
|
103
103
|
- Review roadmap
|
|
104
104
|
|
|
105
105
|
---
|
|
@@ -120,15 +120,15 @@ Show completion status before next action:
|
|
|
120
120
|
|
|
121
121
|
**Phase 3: Core Features** — User dashboard, settings, and data export
|
|
122
122
|
|
|
123
|
-
`/rihal
|
|
123
|
+
`/rihal-plan-phase 3`
|
|
124
124
|
|
|
125
125
|
<sub>`/clear` first → fresh context window</sub>
|
|
126
126
|
|
|
127
127
|
---
|
|
128
128
|
|
|
129
129
|
**Also available:**
|
|
130
|
-
- `/rihal
|
|
131
|
-
- `/rihal
|
|
130
|
+
- `/rihal-discuss-phase 3` — gather context first
|
|
131
|
+
- `/rihal-research-phase 3` — investigate unknowns
|
|
132
132
|
- Review what Phase 2 built
|
|
133
133
|
|
|
134
134
|
---
|
|
@@ -145,11 +145,11 @@ When there's no clear primary action:
|
|
|
145
145
|
|
|
146
146
|
**Phase 3: Core Features** — User dashboard, settings, and data export
|
|
147
147
|
|
|
148
|
-
**To plan directly:** `/rihal
|
|
148
|
+
**To plan directly:** `/rihal-plan-phase 3`
|
|
149
149
|
|
|
150
|
-
**To discuss context first:** `/rihal
|
|
150
|
+
**To discuss context first:** `/rihal-discuss-phase 3`
|
|
151
151
|
|
|
152
|
-
**To research unknowns:** `/rihal
|
|
152
|
+
**To research unknowns:** `/rihal-research-phase 3`
|
|
153
153
|
|
|
154
154
|
<sub>`/clear` first → fresh context window</sub>
|
|
155
155
|
|
|
@@ -169,7 +169,7 @@ All 4 phases shipped
|
|
|
169
169
|
|
|
170
170
|
**Start v1.1** — questioning → research → requirements → roadmap
|
|
171
171
|
|
|
172
|
-
`/rihal
|
|
172
|
+
`/rihal-new-milestone`
|
|
173
173
|
|
|
174
174
|
<sub>`/clear` first → fresh context window</sub>
|
|
175
175
|
|
|
@@ -214,7 +214,7 @@ Extract: `**02-03: Refresh Token Rotation** — Add /api/auth/refresh with slidi
|
|
|
214
214
|
## To Continue
|
|
215
215
|
|
|
216
216
|
Run `/clear`, then paste:
|
|
217
|
-
/rihal
|
|
217
|
+
/rihal-execute-phase 2
|
|
218
218
|
```
|
|
219
219
|
|
|
220
220
|
User has no idea what 02-03 is about.
|
|
@@ -222,7 +222,7 @@ User has no idea what 02-03 is about.
|
|
|
222
222
|
### Don't: Missing /clear explanation
|
|
223
223
|
|
|
224
224
|
```
|
|
225
|
-
`/rihal
|
|
225
|
+
`/rihal-plan-phase 3`
|
|
226
226
|
|
|
227
227
|
Run /clear first.
|
|
228
228
|
```
|
|
@@ -242,7 +242,7 @@ Sounds like an afterthought. Use "Also available:" instead.
|
|
|
242
242
|
|
|
243
243
|
```
|
|
244
244
|
```
|
|
245
|
-
/rihal
|
|
245
|
+
/rihal-plan-phase 3
|
|
246
246
|
```
|
|
247
247
|
```
|
|
248
248
|
|
|
@@ -130,7 +130,7 @@ Then print a fresh DISPATCH banner.
|
|
|
130
130
|
|
|
131
131
|
## Concurrency: parallel dispatches
|
|
132
132
|
|
|
133
|
-
If a workflow spawns multiple agents in parallel (e.g. `/rihal
|
|
133
|
+
If a workflow spawns multiple agents in parallel (e.g. `/rihal-council` summons 4 specialists), print ONE combined banner:
|
|
134
134
|
|
|
135
135
|
```
|
|
136
136
|
╭─────────────────────────────────────────────────────────╮
|
|
@@ -79,14 +79,14 @@ Type: {human-verify | decision}
|
|
|
79
79
|
{For human-verify:}
|
|
80
80
|
Please verify: {what to check}
|
|
81
81
|
URL/path: {where to look}
|
|
82
|
-
Resume with: /rihal
|
|
82
|
+
Resume with: /rihal-execute {plan} --continue
|
|
83
83
|
|
|
84
84
|
{For decision:}
|
|
85
85
|
Problem: {what the plan assumed that isn't true}
|
|
86
86
|
Option A: {approach} — {trade-off}
|
|
87
87
|
Option B: {approach} — {trade-off}
|
|
88
88
|
Recommendation: {which one and why}
|
|
89
|
-
Resume with: /rihal
|
|
89
|
+
Resume with: /rihal-execute {plan} --continue --option=A
|
|
90
90
|
---
|
|
91
91
|
```
|
|
92
92
|
|
|
@@ -18,7 +18,7 @@ Defines 4 gate types used in rihal workflows to control execution flow, validate
|
|
|
18
18
|
**Example:** Phase execution gate
|
|
19
19
|
```
|
|
20
20
|
Gate: Check phase.md exists and has required sections
|
|
21
|
-
Block: "Phase {N} has no SPRINT.md. Create with /rihal
|
|
21
|
+
Block: "Phase {N} has no SPRINT.md. Create with /rihal-help"
|
|
22
22
|
Warn: "Phase overdue by {days}. Review roadmap?"
|
|
23
23
|
```
|
|
24
24
|
|
|
@@ -77,14 +77,14 @@ Ask: "Pattern A is faster but less flexible. Pattern B is extensible but slower.
|
|
|
77
77
|
- Exit cleanly without recovery attempt
|
|
78
78
|
- Suggest manual recovery path
|
|
79
79
|
|
|
80
|
-
**Recovery:** Manual repair via `/rihal
|
|
80
|
+
**Recovery:** Manual repair via `/rihal-health` or `/rihal-forensics`
|
|
81
81
|
|
|
82
82
|
**Example:** Corrupted state gate
|
|
83
83
|
```
|
|
84
84
|
Gate: Validate state.json integrity
|
|
85
85
|
Fail: "state.json corrupted (invalid JSON at line 42).
|
|
86
86
|
Aborting to prevent further damage.
|
|
87
|
-
Recovery: /rihal
|
|
87
|
+
Recovery: /rihal-health --repair"
|
|
88
88
|
```
|
|
89
89
|
|
|
90
90
|
---
|
|
@@ -132,7 +132,7 @@ git commit -m "feat(...): description"
|
|
|
132
132
|
### Worktree-Isolation Strategy
|
|
133
133
|
```bash
|
|
134
134
|
# Workflow commands
|
|
135
|
-
/rihal
|
|
135
|
+
/rihal-do --worktree phase/2-auth
|
|
136
136
|
# Internally:
|
|
137
137
|
git worktree add .claude/worktrees/phase-2-auth phase/2-auth
|
|
138
138
|
cd .claude/worktrees/phase-2-auth
|
|
@@ -29,7 +29,7 @@ Use for major workflow transitions.
|
|
|
29
29
|
|
|
30
30
|
---
|
|
31
31
|
|
|
32
|
-
## Routing Output (for /rihal
|
|
32
|
+
## Routing Output (for /rihal-do, /rihal-next, /rihal-progress)
|
|
33
33
|
|
|
34
34
|
Use this when a router command dispatches to another command:
|
|
35
35
|
|
|
@@ -42,7 +42,7 @@ Input: {user's question or intent}
|
|
|
42
42
|
Scope: {one-line summary of detected scope}
|
|
43
43
|
{optional: Blocker: {any blockers detected}}
|
|
44
44
|
|
|
45
|
-
Routing to: /rihal
|
|
45
|
+
Routing to: /rihal-{target-command}
|
|
46
46
|
Reason: {one-line why this command fits}
|
|
47
47
|
|
|
48
48
|
Handing off to the workflow now.
|
|
@@ -253,8 +253,8 @@ Always at end of major completions.
|
|
|
253
253
|
───────────────────────────────────────────────────────────────
|
|
254
254
|
|
|
255
255
|
**Also available:**
|
|
256
|
-
- `/rihal
|
|
257
|
-
- `/rihal
|
|
256
|
+
- `/rihal-alternative-1` — description
|
|
257
|
+
- `/rihal-alternative-2` — description
|
|
258
258
|
|
|
259
259
|
───────────────────────────────────────────────────────────────
|
|
260
260
|
```
|
|
@@ -43,7 +43,7 @@ Keep the whole response under ~300 words. Tone: colleague-honest, not apologetic
|
|
|
43
43
|
- **rihal-planner:** If `## Scope` from orchestrator implies > 8 tasks of real work, return a PLANS.md with *multiple* SPRINT.md files (waves) instead of one overloaded plan.
|
|
44
44
|
- **rihal-executor:** If a SPRINT.md would require > 1500 lines of new/changed code to execute, stop at Step 2 (load plan) and return a "plan too large — suggest wave split" checkpoint instead of executing.
|
|
45
45
|
- **rihal-roadmapper:** Phase size cap: one phase = one coherent batch that a solo developer + AI can reasonably ship in 1-3 focused sessions.
|
|
46
|
-
- **/rihal
|
|
46
|
+
- **/rihal-autonomous** and **/rihal-do --auto:** Even in auto mode, pause at the first batch boundary that exceeds output budget. "Don't stop until done" authorizes local commits, not output-budget violations.
|
|
47
47
|
|
|
48
48
|
## The Core Philosophy
|
|
49
49
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Plan Revision Loop
|
|
2
2
|
|
|
3
|
-
When `workflow.plan_checker` is enabled (`/rihal
|
|
3
|
+
When `workflow.plan_checker` is enabled (`/rihal-settings`), `/rihal-plan`
|
|
4
4
|
runs the rihal-plan-checker after the planner. Findings drive a bounded
|
|
5
5
|
revision loop:
|
|
6
6
|
|
|
@@ -34,7 +34,7 @@ Documents every top-level field in `state.json`, used by rihal workflows for ses
|
|
|
34
34
|
### `version`
|
|
35
35
|
**Type:** string
|
|
36
36
|
**Example:** `"1"`
|
|
37
|
-
**Written by:** `/rihal
|
|
37
|
+
**Written by:** `/rihal-install` (initialization)
|
|
38
38
|
**Purpose:** Schema version for compatibility checks. Change if fields added/removed.
|
|
39
39
|
|
|
40
40
|
---
|
|
@@ -42,7 +42,7 @@ Documents every top-level field in `state.json`, used by rihal workflows for ses
|
|
|
42
42
|
### `project`
|
|
43
43
|
**Type:** string
|
|
44
44
|
**Example:** `"Rihal v2"`
|
|
45
|
-
**Written by:** `/rihal
|
|
45
|
+
**Written by:** `/rihal-install` (reads from config.yaml)
|
|
46
46
|
**Purpose:** Project name for context and reports.
|
|
47
47
|
|
|
48
48
|
---
|
|
@@ -50,7 +50,7 @@ Documents every top-level field in `state.json`, used by rihal workflows for ses
|
|
|
50
50
|
### `created`
|
|
51
51
|
**Type:** ISO date string
|
|
52
52
|
**Example:** `"2026-04-01T10:30:00Z"`
|
|
53
|
-
**Written by:** `/rihal
|
|
53
|
+
**Written by:** `/rihal-install` (first session)
|
|
54
54
|
**Purpose:** Timestamp of project creation, never changes.
|
|
55
55
|
|
|
56
56
|
---
|
|
@@ -66,7 +66,7 @@ Documents every top-level field in `state.json`, used by rihal workflows for ses
|
|
|
66
66
|
### `current_phase`
|
|
67
67
|
**Type:** string or null
|
|
68
68
|
**Example:** `"Phase 2: Authentication"` or `null`
|
|
69
|
-
**Written by:** `/rihal
|
|
69
|
+
**Written by:** `/rihal-do`, `/rihal-next`, `/rihal-resume-work`
|
|
70
70
|
**Purpose:** Name of active phase, null if no phase active.
|
|
71
71
|
|
|
72
72
|
---
|
|
@@ -74,7 +74,7 @@ Documents every top-level field in `state.json`, used by rihal workflows for ses
|
|
|
74
74
|
### `current_plan`
|
|
75
75
|
**Type:** number
|
|
76
76
|
**Example:** `2`
|
|
77
|
-
**Written by:** `/rihal
|
|
77
|
+
**Written by:** `/rihal-do --execute` (incremented after each phase completion)
|
|
78
78
|
**Purpose:** Counter for plan versions. Increments 1→2→3 as phases complete.
|
|
79
79
|
|
|
80
80
|
---
|
|
@@ -120,7 +120,7 @@ Documents every top-level field in `state.json`, used by rihal workflows for ses
|
|
|
120
120
|
}
|
|
121
121
|
]
|
|
122
122
|
```
|
|
123
|
-
**Written by:** `/rihal
|
|
123
|
+
**Written by:** `/rihal-do --execute`, `/rihal-next`, sprint/story state tools
|
|
124
124
|
**Purpose:** Tracks phases with nested sprints and stories.
|
|
125
125
|
|
|
126
126
|
**Sprint fields:**
|
|
@@ -176,7 +176,7 @@ Documents every top-level field in `state.json`, used by rihal workflows for ses
|
|
|
176
176
|
}
|
|
177
177
|
]
|
|
178
178
|
```
|
|
179
|
-
**Written by:** `/rihal
|
|
179
|
+
**Written by:** `/rihal-execute` (after each plan completes)
|
|
180
180
|
**Purpose:** Log of each plan execution. The `plan` field is the plan ID string (e.g., "01.02"), not a number.
|
|
181
181
|
|
|
182
182
|
---
|
|
@@ -194,7 +194,7 @@ Documents every top-level field in `state.json`, used by rihal workflows for ses
|
|
|
194
194
|
}
|
|
195
195
|
]
|
|
196
196
|
```
|
|
197
|
-
**Written by:** `/rihal
|
|
197
|
+
**Written by:** `/rihal-council`, `/rihal-discuss`
|
|
198
198
|
**Purpose:** Records architectural/strategic decisions for history.
|
|
199
199
|
|
|
200
200
|
---
|
|
@@ -213,7 +213,7 @@ Documents every top-level field in `state.json`, used by rihal workflows for ses
|
|
|
213
213
|
}
|
|
214
214
|
]
|
|
215
215
|
```
|
|
216
|
-
**Written by:** `/rihal
|
|
216
|
+
**Written by:** `/rihal-do`, `/rihal-health`
|
|
217
217
|
**Purpose:** Tracks blockers, when identified, which phase, and resolution time.
|
|
218
218
|
|
|
219
219
|
---
|
|
@@ -231,7 +231,7 @@ Documents every top-level field in `state.json`, used by rihal workflows for ses
|
|
|
231
231
|
}
|
|
232
232
|
]
|
|
233
233
|
```
|
|
234
|
-
**Written by:** `/rihal
|
|
234
|
+
**Written by:** `/rihal-council`
|
|
235
235
|
**Purpose:** History of council deliberations, panelists, output artifacts.
|
|
236
236
|
|
|
237
237
|
---
|
|
@@ -249,7 +249,7 @@ Documents every top-level field in `state.json`, used by rihal workflows for ses
|
|
|
249
249
|
}
|
|
250
250
|
]
|
|
251
251
|
```
|
|
252
|
-
**Written by:** `/rihal
|
|
252
|
+
**Written by:** `/rihal-chain`
|
|
253
253
|
**Purpose:** History of multi-agent chains, participants, work artifacts.
|
|
254
254
|
|
|
255
255
|
---
|
|
@@ -258,7 +258,7 @@ Documents every top-level field in `state.json`, used by rihal workflows for ses
|
|
|
258
258
|
**Type:** ISO date string
|
|
259
259
|
**Example:** `"2026-04-12T15:45:30Z"`
|
|
260
260
|
**Written by:** Every subcommand that runs (updates at session end)
|
|
261
|
-
**Purpose:** Enables `/rihal
|
|
261
|
+
**Purpose:** Enables `/rihal-resume-work` to find context from last session.
|
|
262
262
|
|
|
263
263
|
---
|
|
264
264
|
|
|
@@ -283,7 +283,7 @@ Documents every top-level field in `state.json`, used by rihal workflows for ses
|
|
|
283
283
|
}
|
|
284
284
|
]
|
|
285
285
|
```
|
|
286
|
-
**Written by:** `/rihal
|
|
286
|
+
**Written by:** `/rihal-workstream --create`, `/rihal-do --execute`
|
|
287
287
|
**Purpose:** Tracks parallel workstreams, which phases belong to each.
|
|
288
288
|
|
|
289
289
|
---
|
|
@@ -291,7 +291,7 @@ Documents every top-level field in `state.json`, used by rihal workflows for ses
|
|
|
291
291
|
### `active_workstream`
|
|
292
292
|
**Type:** string or null
|
|
293
293
|
**Example:** `"Frontend"` or `null`
|
|
294
|
-
**Written by:** `/rihal
|
|
294
|
+
**Written by:** `/rihal-workstream --activate`, `/rihal-do`
|
|
295
295
|
**Purpose:** Currently active workstream; null if no workstream focus.
|
|
296
296
|
|
|
297
297
|
---
|
|
@@ -299,7 +299,7 @@ Documents every top-level field in `state.json`, used by rihal workflows for ses
|
|
|
299
299
|
### `model_profile`
|
|
300
300
|
**Type:** string
|
|
301
301
|
**Example:** `"balanced"` (options: `quality`, `balanced`, `budget`, `inherit`)
|
|
302
|
-
**Written by:** `/rihal
|
|
302
|
+
**Written by:** `/rihal-set-profile`
|
|
303
303
|
**Purpose:** Model selection for council agents. Affects token spend and quality.
|
|
304
304
|
|
|
305
305
|
---
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# UI/Brand Questions
|
|
2
2
|
|
|
3
|
-
When exploring the UI design phase (/rihal
|
|
3
|
+
When exploring the UI design phase (/rihal-ui-phase), ask structured questions across these eight dimensions: **color palette**, **typography**, **voice/tone**, **accessibility**, **component inventory**, **responsive behavior**, **interaction patterns**, and **visual hierarchy**. These questions build the design contract.
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
@@ -76,19 +76,19 @@ These are matched alongside §Create / §Add / §Plan verbs to determine the dis
|
|
|
76
76
|
|
|
77
77
|
| Scope noun | Aliases (English + Urdu) | Maps to (workflow) |
|
|
78
78
|
|---|---|---|
|
|
79
|
-
| milestone | `milestone`, `milestones`, `release`, `version`, `cycle` | `/rihal
|
|
80
|
-
| phase | `phase`, `phases` (singular intent — "add a phase") | `/rihal
|
|
81
|
-
| story | `story`, `stories`, `user story`, `kahani` | `/rihal
|
|
82
|
-
| epic | `epic`, `epics`, `epics and stories` | `/rihal
|
|
83
|
-
| sprint | `sprint`, `iteration` | `/rihal
|
|
84
|
-
| PRD | `PRD`, `requirements doc`, `product requirements` | `/rihal
|
|
85
|
-
| roadmap | `roadmap`, `plan` (top-level) | `/rihal
|
|
86
|
-
| council | `council`, `majlis`, `panel`, `mashwara`, `salah` | `/rihal
|
|
87
|
-
| plan (verb form — "plan phase N") | `plan` | `/rihal
|
|
88
|
-
| story (impl) | `dev story`, `implement story`, `build story` | `/rihal
|
|
89
|
-
| brainstorm | `brainstorm`, `ideas`, `sochain`, `sochna` | `/rihal
|
|
90
|
-
| review (code) | `code review`, `karpathy`, `check my diff` | `/rihal
|
|
91
|
-
| debug | `debug`, `fix`, `bug`, `error`, `crash`, `kharab`, `theek` | `/rihal
|
|
79
|
+
| milestone | `milestone`, `milestones`, `release`, `version`, `cycle` | `/rihal-new-milestone` |
|
|
80
|
+
| phase | `phase`, `phases` (singular intent — "add a phase") | `/rihal-add-phase` |
|
|
81
|
+
| story | `story`, `stories`, `user story`, `kahani` | `/rihal-create-story` |
|
|
82
|
+
| epic | `epic`, `epics`, `epics and stories` | `/rihal-create-epics-and-stories` |
|
|
83
|
+
| sprint | `sprint`, `iteration` | `/rihal-sprint-planning` |
|
|
84
|
+
| PRD | `PRD`, `requirements doc`, `product requirements` | `/rihal-create-prd` |
|
|
85
|
+
| roadmap | `roadmap`, `plan` (top-level) | `/rihal-create-milestone` |
|
|
86
|
+
| council | `council`, `majlis`, `panel`, `mashwara`, `salah` | `/rihal-council` |
|
|
87
|
+
| plan (verb form — "plan phase N") | `plan` | `/rihal-plan` |
|
|
88
|
+
| story (impl) | `dev story`, `implement story`, `build story` | `/rihal-dev-story` |
|
|
89
|
+
| brainstorm | `brainstorm`, `ideas`, `sochain`, `sochna` | `/rihal-brainstorm` |
|
|
90
|
+
| review (code) | `code review`, `karpathy`, `check my diff` | `/rihal-code-review [--karpathy]` |
|
|
91
|
+
| debug | `debug`, `fix`, `bug`, `error`, `crash`, `kharab`, `theek` | `/rihal-debug` |
|
|
92
92
|
|
|
93
93
|
---
|
|
94
94
|
|
|
@@ -106,8 +106,8 @@ table above, dispatch directly to the mapped workflow without an
|
|
|
106
106
|
ambiguity prompt.
|
|
107
107
|
|
|
108
108
|
Example: "milestone bnao" → §Create matches "bnao", scope matches
|
|
109
|
-
"milestone" → /rihal
|
|
110
|
-
/rihal
|
|
109
|
+
"milestone" → /rihal-new-milestone (with state-aware redirect to
|
|
110
|
+
/rihal-add-phase if a milestone is already active).
|
|
111
111
|
```
|
|
112
112
|
|
|
113
113
|
**From an agent file (e.g. `rihal-codebase-mapper.md`) when interpreting the orchestrator prompt:**
|
|
@@ -13,9 +13,9 @@ Use the standard planning pipeline (`.planning/phases/`) for:
|
|
|
13
13
|
|
|
14
14
|
**Example:**
|
|
15
15
|
```
|
|
16
|
-
/rihal
|
|
17
|
-
/rihal
|
|
18
|
-
/rihal
|
|
16
|
+
/rihal-plan Build authentication system
|
|
17
|
+
/rihal-plan Add user profile pages (depends on auth from Phase 1)
|
|
18
|
+
/rihal-plan Write deployment guide (depends on both phases complete)
|
|
19
19
|
```
|
|
20
20
|
|
|
21
21
|
These run sequentially, each depending on the previous phase's completion.
|
|
@@ -34,15 +34,15 @@ Use workspaces (`--workspace` flag) for:
|
|
|
34
34
|
**Example:**
|
|
35
35
|
```
|
|
36
36
|
# Main workspace (Q2 roadmap)
|
|
37
|
-
/rihal
|
|
37
|
+
/rihal-plan Build search feature
|
|
38
38
|
|
|
39
39
|
# Parallel workspace (critical bug)
|
|
40
|
-
/rihal
|
|
41
|
-
/rihal
|
|
40
|
+
/rihal-new-workspace Critical Hotfix
|
|
41
|
+
/rihal-plan Fix data corruption --workspace=Critical Hotfix
|
|
42
42
|
|
|
43
43
|
# Both run independently
|
|
44
44
|
# Query progress:
|
|
45
|
-
/rihal
|
|
45
|
+
/rihal-list-workspaces
|
|
46
46
|
```
|
|
47
47
|
|
|
48
48
|
## Decision Matrix
|
|
@@ -78,29 +78,29 @@ Use workspaces (`--workspace` flag) for:
|
|
|
78
78
|
|
|
79
79
|
```bash
|
|
80
80
|
# View current phase
|
|
81
|
-
/rihal
|
|
81
|
+
/rihal-status
|
|
82
82
|
|
|
83
83
|
# Execute next phase
|
|
84
|
-
/rihal
|
|
84
|
+
/rihal-execute <phase>
|
|
85
85
|
|
|
86
86
|
# Switch to different task within same milestone
|
|
87
|
-
/rihal
|
|
87
|
+
/rihal-quick <small task>
|
|
88
88
|
```
|
|
89
89
|
|
|
90
90
|
### Workspaces
|
|
91
91
|
|
|
92
92
|
```bash
|
|
93
93
|
# List all workspaces
|
|
94
|
-
/rihal
|
|
94
|
+
/rihal-list-workspaces
|
|
95
95
|
|
|
96
96
|
# Work within a workspace
|
|
97
|
-
/rihal
|
|
97
|
+
/rihal-plan <task> --workspace=Hotfix
|
|
98
98
|
|
|
99
99
|
# Switch to another workspace's context
|
|
100
|
-
/rihal
|
|
100
|
+
/rihal-workspace <name>
|
|
101
101
|
|
|
102
102
|
# Return to main planning
|
|
103
|
-
/rihal
|
|
103
|
+
/rihal-workspace main
|
|
104
104
|
```
|
|
105
105
|
|
|
106
106
|
## Merging Workspaces Back
|
|
@@ -109,7 +109,7 @@ If you started a workspace but it should merge back into main planning:
|
|
|
109
109
|
|
|
110
110
|
1. Complete the work in the workspace
|
|
111
111
|
2. Create a phase in main planning that incorporates the workspace's findings
|
|
112
|
-
3. Archive the workspace: `/rihal
|
|
112
|
+
3. Archive the workspace: `/rihal-remove-workspace <name> --archive`
|
|
113
113
|
4. Continue in main planning with unified context
|
|
114
114
|
|
|
115
115
|
## Common Patterns
|
|
@@ -118,27 +118,27 @@ If you started a workspace but it should merge back into main planning:
|
|
|
118
118
|
|
|
119
119
|
```bash
|
|
120
120
|
# Main work (Q2 roadmap)
|
|
121
|
-
/rihal
|
|
121
|
+
/rihal-plan Implement real-time notifications
|
|
122
122
|
|
|
123
123
|
# Critical bug emerges
|
|
124
|
-
/rihal
|
|
125
|
-
/rihal
|
|
124
|
+
/rihal-new-workspace Critical
|
|
125
|
+
/rihal-plan Fix payment processing --workspace=Critical
|
|
126
126
|
|
|
127
127
|
# Two parallel tracks
|
|
128
|
-
/rihal
|
|
128
|
+
/rihal-list-workspaces
|
|
129
129
|
|
|
130
130
|
# When bug is fixed
|
|
131
|
-
/rihal
|
|
131
|
+
/rihal-complete-workspace Critical
|
|
132
132
|
# Resume main work
|
|
133
|
-
/rihal
|
|
133
|
+
/rihal-execute <Q2 phase>
|
|
134
134
|
```
|
|
135
135
|
|
|
136
136
|
### Pattern: Research + implementation
|
|
137
137
|
|
|
138
138
|
```bash
|
|
139
139
|
# Sequential phases (both parts of same feature)
|
|
140
|
-
/rihal
|
|
141
|
-
/rihal
|
|
140
|
+
/rihal-plan Research WebSocket libraries and trade-offs
|
|
141
|
+
/rihal-plan Implement chosen library with tests
|
|
142
142
|
# Phase 2 reads Phase 1 findings
|
|
143
143
|
```
|
|
144
144
|
|
|
@@ -146,16 +146,16 @@ If you started a workspace but it should merge back into main planning:
|
|
|
146
146
|
|
|
147
147
|
```bash
|
|
148
148
|
# Keep experiments separate
|
|
149
|
-
/rihal
|
|
150
|
-
/rihal
|
|
151
|
-
/rihal
|
|
149
|
+
/rihal-new-workspace Experiment: Dark Mode
|
|
150
|
+
/rihal-plan Build dark mode UI --workspace=Experiment
|
|
151
|
+
/rihal-plan Test across 10 browsers --workspace=Experiment
|
|
152
152
|
|
|
153
153
|
# Main work continues unaffected
|
|
154
|
-
/rihal
|
|
154
|
+
/rihal-plan Improve search relevance
|
|
155
155
|
|
|
156
156
|
# If experiment succeeds, merge into main
|
|
157
157
|
# If it fails, just archive and delete
|
|
158
|
-
/rihal
|
|
158
|
+
/rihal-remove-workspace --archive Experiment
|
|
159
159
|
```
|
|
160
160
|
|
|
161
161
|
## Summary
|
|
@@ -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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
41
|
+
- `/rihal-status` showed 1 phase; `/rihal-progress` showed 10.
|
|
42
42
|
|
|
43
43
|
That divergence is what this rule exists to prevent.
|
|
@@ -124,7 +124,7 @@ When the user gets stuck, offer concrete suggestions based on what they've share
|
|
|
124
124
|
**Expected:** Gauntlet mode questioning → press release → customer FAQ → internal FAQ → verdict + distillate. Saved to planning_artifacts/.
|
|
125
125
|
|
|
126
126
|
### Headless Mode
|
|
127
|
-
**Input:** `/rihal
|
|
127
|
+
**Input:** `/rihal-prfaq --headless --customer "{persona}" --problem "{problem}" --stakes "{why}" --solution "{concept}"`
|
|
128
128
|
**Expected:** First-draft PRFAQ generated autonomously via artifact-analyzer + web-researcher subagents.
|
|
129
129
|
|
|
130
130
|
### Negative Test
|
|
@@ -36,7 +36,7 @@ This uses **step-file architecture** for disciplined execution:
|
|
|
36
36
|
- 🎯 **ALWAYS** follow the exact instructions in the step file
|
|
37
37
|
- ⏸️ **ALWAYS** halt at menus and wait for user input
|
|
38
38
|
- 📋 **NEVER** create mental todo lists from future steps
|
|
39
|
-
- 🚷 **NEVER** invent an "autonomous mode", "research mode", or any self-declared bypass. The only sanctioned bypass paths are `.rihal/config.yaml` → `mode: yolo` or `/rihal
|
|
39
|
+
- 🚷 **NEVER** invent an "autonomous mode", "research mode", or any self-declared bypass. The only sanctioned bypass paths are `.rihal/config.yaml` → `mode: yolo` or `/rihal-do --auto`. See `../../_shared/no-autonomous-bypass.md` for the full rule and correct response pattern.
|
|
40
40
|
|
|
41
41
|
---
|
|
42
42
|
|
|
@@ -48,7 +48,7 @@ Follow the instructions in ./workflow.md.
|
|
|
48
48
|
|
|
49
49
|
### Edge Case: No PRD Exists
|
|
50
50
|
**Input:** "Create milestones for social-poster-x" (no prd.md)
|
|
51
|
-
**Expected behavior:** DO NOT invent milestones. Respond: "I need an approved PRD first. Run `/rihal
|
|
51
|
+
**Expected behavior:** DO NOT invent milestones. Respond: "I need an approved PRD first. Run `/rihal-create-prd` or point me at an existing brief."
|
|
52
52
|
|
|
53
53
|
### Edge Case: PRD Marked Draft
|
|
54
54
|
**Input:** PRD exists but frontmatter shows `status: draft`
|
|
@@ -56,4 +56,4 @@ Follow the instructions in ./workflow.md.
|
|
|
56
56
|
|
|
57
57
|
### Negative Example: Request to Bypass the Interview
|
|
58
58
|
**Input:** "just generate the full roadmap autonomously"
|
|
59
|
-
**Expected behavior:** DO NOT invent an "autonomous mode". Point the user to the two sanctioned bypass paths (`.rihal/config.yaml` → `mode: yolo` or `/rihal
|
|
59
|
+
**Expected behavior:** DO NOT invent an "autonomous mode". Point the user to the two sanctioned bypass paths (`.rihal/config.yaml` → `mode: yolo` or `/rihal-do --auto`) and present the step-01 menu. See `../../_shared/no-autonomous-bypass.md`.
|
|
@@ -4,12 +4,12 @@
|
|
|
4
4
|
|
|
5
5
|
## STEP GOAL
|
|
6
6
|
|
|
7
|
-
For each milestone, list the phases it contains as **stubs** (number + name + one-line goal). No plan detail — phases get full plans via `/rihal
|
|
7
|
+
For each milestone, list the phases it contains as **stubs** (number + name + one-line goal). No plan detail — phases get full plans via `/rihal-plan` later.
|
|
8
8
|
|
|
9
9
|
## MANDATORY RULES
|
|
10
10
|
|
|
11
11
|
- 🛑 Phase numbers follow Rihal's NN convention (01, 02, ..., 99, then 999.x for parking lot).
|
|
12
|
-
- 🛑 Do NOT generate plan content here. That's `/rihal
|
|
12
|
+
- 🛑 Do NOT generate plan content here. That's `/rihal-plan-phase`.
|
|
13
13
|
- 🛑 Each phase has one-sentence goal, max.
|
|
14
14
|
- ⏸️ HALT at menu.
|
|
15
15
|
|