@hanzlaa/rcode 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +120 -0
- package/CLAUDE.md +120 -0
- package/CONTRIBUTING.md +298 -0
- package/README.md +436 -0
- package/cli/config.js +142 -0
- package/cli/context.js +213 -0
- package/cli/dashboard.js +38 -0
- package/cli/digest.js +66 -0
- package/cli/doctor.js +283 -0
- package/cli/github-sync.js +1016 -0
- package/cli/index.js +113 -0
- package/cli/install.js +946 -0
- package/cli/lib/config.cjs +334 -0
- package/cli/lib/fsutil.cjs +76 -0
- package/cli/lib/github.cjs +365 -0
- package/cli/lib/manifest.cjs +240 -0
- package/cli/lib/memory-bank.cjs +348 -0
- package/cli/lib/model-profiles.cjs +169 -0
- package/cli/lib/prompts.cjs +355 -0
- package/cli/postinstall.js +32 -0
- package/cli/set-mode.js +94 -0
- package/cli/set-profile.js +80 -0
- package/cli/show-model.js +82 -0
- package/cli/team.js +35 -0
- package/cli/tiers.js +49 -0
- package/cli/uninstall.js +600 -0
- package/cli/update.js +373 -0
- package/package.json +60 -0
- package/rihal/agents/rihal-advisor-researcher.md +116 -0
- package/rihal/agents/rihal-ahmed.md +66 -0
- package/rihal/agents/rihal-architect.md +79 -0
- package/rihal/agents/rihal-assumptions-analyzer.md +117 -0
- package/rihal/agents/rihal-code-fixer.md +74 -0
- package/rihal/agents/rihal-code-reviewer.md +75 -0
- package/rihal/agents/rihal-codebase-mapper.md +170 -0
- package/rihal/agents/rihal-debugger.md +140 -0
- package/rihal/agents/rihal-deviation-analyzer.md +74 -0
- package/rihal/agents/rihal-docs-auditor.md +77 -0
- package/rihal/agents/rihal-edge-case-hunter.md +75 -0
- package/rihal/agents/rihal-executor.md +113 -0
- package/rihal/agents/rihal-fatima.md +68 -0
- package/rihal/agents/rihal-haitham.md +75 -0
- package/rihal/agents/rihal-hanzla.md +59 -0
- package/rihal/agents/rihal-hussain-pm.md +82 -0
- package/rihal/agents/rihal-integration-checker.md +455 -0
- package/rihal/agents/rihal-khalid.md +59 -0
- package/rihal/agents/rihal-layla.md +57 -0
- package/rihal/agents/rihal-mariam.md +58 -0
- package/rihal/agents/rihal-nasser.md +57 -0
- package/rihal/agents/rihal-noor.md +60 -0
- package/rihal/agents/rihal-nyquist-auditor.md +182 -0
- package/rihal/agents/rihal-omar.md +57 -0
- package/rihal/agents/rihal-phase-researcher.md +84 -0
- package/rihal/agents/rihal-planner.md +176 -0
- package/rihal/agents/rihal-profiler.md +74 -0
- package/rihal/agents/rihal-project-researcher.md +80 -0
- package/rihal/agents/rihal-remediation-planner.md +78 -0
- package/rihal/agents/rihal-research-synthesizer.md +253 -0
- package/rihal/agents/rihal-roadmapper.md +73 -0
- package/rihal/agents/rihal-sadiq.md +72 -0
- package/rihal/agents/rihal-security-adversary.md +82 -0
- package/rihal/agents/rihal-security-auditor.md +78 -0
- package/rihal/agents/rihal-sprint-checker.md +124 -0
- package/rihal/agents/rihal-tech-writer.md +80 -0
- package/rihal/agents/rihal-ui-auditor.md +81 -0
- package/rihal/agents/rihal-ui-designer.md +6 -0
- package/rihal/agents/rihal-ux-designer.md +83 -0
- package/rihal/agents/rihal-verifier.md +124 -0
- package/rihal/agents/rihal-waleed.md +60 -0
- package/rihal/agents/rihal-yousef.md +78 -0
- package/rihal/agents/rihal-zahra.md +62 -0
- package/rihal/agents/rihal-zayd.md +78 -0
- package/rihal/agents/rules/codebase-mapper/detailed-guide.md +615 -0
- package/rihal/agents/rules/debugger/checkpoint-recovery.md +272 -0
- package/rihal/agents/rules/debugger/debug-session-state.md +261 -0
- package/rihal/agents/rules/debugger/hypothesis-templates.md +330 -0
- package/rihal/agents/rules/debugger/investigation-protocol.md +298 -0
- package/rihal/agents/rules/debugger/scientific-method.md +317 -0
- package/rihal/agents/rules/executor/authentication-gates.md +202 -0
- package/rihal/agents/rules/executor/deviation-rules.md +191 -0
- package/rihal/agents/rules/executor/execution-flow.md +116 -0
- package/rihal/agents/rules/executor/self-check.md +241 -0
- package/rihal/agents/rules/executor/stub-detection.md +267 -0
- package/rihal/agents/rules/executor/summary-creation.md +76 -0
- package/rihal/agents/rules/executor/task-commit-protocol.md +283 -0
- package/rihal/agents/rules/executor/tdd-flow.md +294 -0
- package/rihal/agents/rules/phase-researcher/detailed-guide.md +628 -0
- package/rihal/agents/rules/planner/common-patterns.md +373 -0
- package/rihal/agents/rules/planner/dependency-analysis.md +195 -0
- package/rihal/agents/rules/planner/goal-backward-thinking.md +220 -0
- package/rihal/agents/rules/planner/sprint-verification.md +202 -0
- package/rihal/agents/rules/planner/task-templates.md +296 -0
- package/rihal/agents/rules/project-researcher/detailed-guide.md +589 -0
- package/rihal/agents/rules/roadmapper/detailed-guide.md +620 -0
- package/rihal/agents/rules/sprint-checker/dimensions.md +414 -0
- package/rihal/agents/rules/sprint-checker/process.md +377 -0
- package/rihal/agents/rules/verifier/anti-patterns.md +94 -0
- package/rihal/agents/rules/verifier/artifact-verification.md +69 -0
- package/rihal/agents/rules/verifier/behavioral-spot-checks.md +49 -0
- package/rihal/agents/rules/verifier/context-loading.md +84 -0
- package/rihal/agents/rules/verifier/data-flow-trace.md +65 -0
- package/rihal/agents/rules/verifier/gap-output.md +51 -0
- package/rihal/agents/rules/verifier/key-links.md +56 -0
- package/rihal/agents/rules/verifier/requirements-coverage.md +28 -0
- package/rihal/agents/rules/verifier/verification-report.md +131 -0
- package/rihal/bin/lib/code-references.cjs +196 -0
- package/rihal/bin/lib/config.cjs +146 -0
- package/rihal/bin/lib/council-panel.cjs +501 -0
- package/rihal/bin/lib/roadmap.cjs +256 -0
- package/rihal/bin/lib/verify.cjs +118 -0
- package/rihal/bin/rihal-hooks.cjs +204 -0
- package/rihal/bin/rihal-tools.cjs +3554 -0
- package/rihal/brain/README.md +38 -0
- package/rihal/brain/best-practices/no-autonomous-bypass.md +37 -0
- package/rihal/brain/best-practices/research-citation-rule.md +39 -0
- package/rihal/brain/best-practices/state-sync-rule.md +43 -0
- package/rihal/brain/sources.yaml +59 -0
- package/rihal/commands/add-phase.md +18 -0
- package/rihal/commands/add-tests.md +18 -0
- package/rihal/commands/add-todo.md +8 -0
- package/rihal/commands/analyze-dependencies.md +11 -0
- package/rihal/commands/audit-fix.md +14 -0
- package/rihal/commands/audit-milestone.md +12 -0
- package/rihal/commands/audit-uat.md +18 -0
- package/rihal/commands/autonomous.md +19 -0
- package/rihal/commands/brainstorm.md +11 -0
- package/rihal/commands/chain.md +8 -0
- package/rihal/commands/check-implementation-readiness.md +8 -0
- package/rihal/commands/check-todos.md +18 -0
- package/rihal/commands/cleanup.md +18 -0
- package/rihal/commands/code-review-fix.md +14 -0
- package/rihal/commands/code-review.md +14 -0
- package/rihal/commands/complete-milestone.md +12 -0
- package/rihal/commands/config.md +8 -0
- package/rihal/commands/correct-course.md +8 -0
- package/rihal/commands/council.md +25 -0
- package/rihal/commands/create-epics-and-stories.md +8 -0
- package/rihal/commands/create-story.md +8 -0
- package/rihal/commands/dashboard.md +10 -0
- package/rihal/commands/debug.md +8 -0
- package/rihal/commands/decisions.md +10 -0
- package/rihal/commands/dev-story.md +8 -0
- package/rihal/commands/diff.md +10 -0
- package/rihal/commands/discuss-phase-power.md +11 -0
- package/rihal/commands/discuss-phase.md +19 -0
- package/rihal/commands/discuss.md +23 -0
- package/rihal/commands/do.md +22 -0
- package/rihal/commands/docs-update.md +14 -0
- package/rihal/commands/document-project.md +8 -0
- package/rihal/commands/enable-hooks.md +11 -0
- package/rihal/commands/execute-sprint.md +13 -0
- package/rihal/commands/execute.md +19 -0
- package/rihal/commands/explore.md +14 -0
- package/rihal/commands/export-to-github.md +11 -0
- package/rihal/commands/forensics.md +11 -0
- package/rihal/commands/from-template.md +11 -0
- package/rihal/commands/health.md +10 -0
- package/rihal/commands/help.md +8 -0
- package/rihal/commands/import.md +12 -0
- package/rihal/commands/inbox.md +12 -0
- package/rihal/commands/init.md +14 -0
- package/rihal/commands/insert-phase.md +11 -0
- package/rihal/commands/install.md +10 -0
- package/rihal/commands/karpathy-audit.md +12 -0
- package/rihal/commands/list-plans.md +11 -0
- package/rihal/commands/list-workspaces.md +10 -0
- package/rihal/commands/map-codebase.md +14 -0
- package/rihal/commands/milestone-summary.md +11 -0
- package/rihal/commands/new-milestone.md +12 -0
- package/rihal/commands/new-project-research.md +11 -0
- package/rihal/commands/new-project-roadmap.md +11 -0
- package/rihal/commands/new-project.md +13 -0
- package/rihal/commands/new-workspace.md +12 -0
- package/rihal/commands/next.md +19 -0
- package/rihal/commands/note.md +12 -0
- package/rihal/commands/notify-test.md +10 -0
- package/rihal/commands/pause-work.md +8 -0
- package/rihal/commands/plan-milestone-gaps.md +18 -0
- package/rihal/commands/plan.md +19 -0
- package/rihal/commands/plant-seed.md +18 -0
- package/rihal/commands/pr-branch.md +18 -0
- package/rihal/commands/profile-user.md +8 -0
- package/rihal/commands/progress.md +19 -0
- package/rihal/commands/quick.md +14 -0
- package/rihal/commands/remove-phase.md +18 -0
- package/rihal/commands/remove-workspace.md +11 -0
- package/rihal/commands/replay.md +11 -0
- package/rihal/commands/report.md +10 -0
- package/rihal/commands/rerun.md +11 -0
- package/rihal/commands/research-phase.md +18 -0
- package/rihal/commands/resume-work.md +8 -0
- package/rihal/commands/review-adversarial.md +8 -0
- package/rihal/commands/review-edge-case-hunter.md +8 -0
- package/rihal/commands/review.md +18 -0
- package/rihal/commands/scan.md +14 -0
- package/rihal/commands/secure-phase.md +14 -0
- package/rihal/commands/session-report.md +10 -0
- package/rihal/commands/settings.md +8 -0
- package/rihal/commands/ship.md +18 -0
- package/rihal/commands/show.md +10 -0
- package/rihal/commands/sprint-planning.md +20 -0
- package/rihal/commands/sprint-status.md +21 -0
- package/rihal/commands/stats.md +10 -0
- package/rihal/commands/status.md +21 -0
- package/rihal/commands/ui-phase.md +8 -0
- package/rihal/commands/ui-review.md +8 -0
- package/rihal/commands/undo.md +14 -0
- package/rihal/commands/update.md +11 -0
- package/rihal/commands/validate-phase.md +18 -0
- package/rihal/commands/verify-phase.md +18 -0
- package/rihal/commands/verify-work.md +19 -0
- package/rihal/commands/why.md +10 -0
- package/rihal/commands/workstream.md +11 -0
- package/rihal/config/model-profiles.json +226 -0
- package/rihal/config/model-profiles.schema.json +36 -0
- package/rihal/config.yaml +39 -0
- package/rihal/digests/README.md +50 -0
- package/rihal/digests/fatima.md +24 -0
- package/rihal/digests/hussain-pm.md +24 -0
- package/rihal/digests/mariam.md +24 -0
- package/rihal/digests/sadiq.md +24 -0
- package/rihal/digests/waleed.md +24 -0
- package/rihal/modules/core.yaml +101 -0
- package/rihal/modules/discovery.yaml +50 -0
- package/rihal/modules/execution.yaml +66 -0
- package/rihal/references/brain-methods.csv +9 -0
- package/rihal/references/checklist-architect.md +146 -0
- package/rihal/references/checklist-change.md +136 -0
- package/rihal/references/checklist-pm.md +154 -0
- package/rihal/references/checklist-po-master.md +100 -0
- package/rihal/references/checklist-story-dod.md +75 -0
- package/rihal/references/checklist-story-draft.md +53 -0
- package/rihal/references/checkpoints-index.md +53 -0
- package/rihal/references/checkpoints.md +778 -0
- package/rihal/references/codebase-grounding.md +76 -0
- package/rihal/references/command-redirect-format.md +62 -0
- package/rihal/references/commit-conventions.md +125 -0
- package/rihal/references/common-bug-patterns-index.md +44 -0
- package/rihal/references/common-bug-patterns.md +621 -0
- package/rihal/references/context-budget.md +104 -0
- package/rihal/references/continuation-format.md +249 -0
- package/rihal/references/council-protocol.md +91 -0
- package/rihal/references/domain-probes.md +213 -0
- package/rihal/references/elicitation-methods.csv +16 -0
- package/rihal/references/execution-protocol.md +155 -0
- package/rihal/references/gate-prompts.md +212 -0
- package/rihal/references/gates.md +127 -0
- package/rihal/references/git-integration.md +159 -0
- package/rihal/references/git-planning-commit.md +185 -0
- package/rihal/references/karpathy-guidelines.md +79 -0
- package/rihal/references/model-profiles.md +90 -0
- package/rihal/references/no-unauthorized-git-ops.md +73 -0
- package/rihal/references/output-format.md +319 -0
- package/rihal/references/output-realism.md +52 -0
- package/rihal/references/project-types.yaml +270 -0
- package/rihal/references/questioning.md +163 -0
- package/rihal/references/response-style.md +81 -0
- package/rihal/references/state-schema.md +366 -0
- package/rihal/references/tdd.md +263 -0
- package/rihal/references/thinking-models-debug.md +126 -0
- package/rihal/references/thinking-models-planning.md +127 -0
- package/rihal/references/ui-brand.md +254 -0
- package/rihal/references/verification-patterns-index.md +76 -0
- package/rihal/references/verification-patterns.md +612 -0
- package/rihal/references/workstream-flag.md +166 -0
- package/rihal/skills/SKILLS_INDEX.md +114 -0
- package/rihal/skills/_shared/no-autonomous-bypass.md +37 -0
- package/rihal/skills/_shared/research-citation-rule.md +39 -0
- package/rihal/skills/_shared/state-sync-rule.md +43 -0
- package/rihal/skills/actions/1-analysis/research/rihal-domain-research/SKILL.md +31 -0
- package/rihal/skills/actions/1-analysis/research/rihal-domain-research/domain-steps/step-01-init.md +137 -0
- package/rihal/skills/actions/1-analysis/research/rihal-domain-research/domain-steps/step-02-domain-analysis.md +229 -0
- package/rihal/skills/actions/1-analysis/research/rihal-domain-research/domain-steps/step-03-competitive-landscape.md +238 -0
- package/rihal/skills/actions/1-analysis/research/rihal-domain-research/domain-steps/step-04-regulatory-focus.md +206 -0
- package/rihal/skills/actions/1-analysis/research/rihal-domain-research/domain-steps/step-05-technical-trends.md +234 -0
- package/rihal/skills/actions/1-analysis/research/rihal-domain-research/domain-steps/step-06-research-synthesis.md +444 -0
- package/rihal/skills/actions/1-analysis/research/rihal-domain-research/research.template.md +29 -0
- package/rihal/skills/actions/1-analysis/research/rihal-domain-research/workflow.md +49 -0
- package/rihal/skills/actions/1-analysis/research/rihal-market-research/SKILL.md +30 -0
- package/rihal/skills/actions/1-analysis/research/rihal-market-research/research.template.md +29 -0
- package/rihal/skills/actions/1-analysis/research/rihal-market-research/steps/step-01-init.md +184 -0
- package/rihal/skills/actions/1-analysis/research/rihal-market-research/steps/step-02-customer-behavior.md +239 -0
- package/rihal/skills/actions/1-analysis/research/rihal-market-research/steps/step-03-customer-pain-points.md +251 -0
- package/rihal/skills/actions/1-analysis/research/rihal-market-research/steps/step-04-customer-decisions.md +261 -0
- package/rihal/skills/actions/1-analysis/research/rihal-market-research/steps/step-05-competitive-analysis.md +173 -0
- package/rihal/skills/actions/1-analysis/research/rihal-market-research/steps/step-06-research-completion.md +478 -0
- package/rihal/skills/actions/1-analysis/research/rihal-market-research/workflow.md +49 -0
- package/rihal/skills/actions/1-analysis/research/rihal-technical-research/SKILL.md +31 -0
- package/rihal/skills/actions/1-analysis/research/rihal-technical-research/research.template.md +29 -0
- package/rihal/skills/actions/1-analysis/research/rihal-technical-research/technical-steps/step-01-init.md +137 -0
- package/rihal/skills/actions/1-analysis/research/rihal-technical-research/technical-steps/step-02-technical-overview.md +239 -0
- package/rihal/skills/actions/1-analysis/research/rihal-technical-research/technical-steps/step-03-integration-patterns.md +248 -0
- package/rihal/skills/actions/1-analysis/research/rihal-technical-research/technical-steps/step-04-architectural-patterns.md +202 -0
- package/rihal/skills/actions/1-analysis/research/rihal-technical-research/technical-steps/step-05-implementation-research.md +233 -0
- package/rihal/skills/actions/1-analysis/research/rihal-technical-research/technical-steps/step-06-research-synthesis.md +487 -0
- package/rihal/skills/actions/1-analysis/research/rihal-technical-research/workflow.md +50 -0
- package/rihal/skills/actions/1-analysis/rihal-document-project/SKILL.md +30 -0
- package/rihal/skills/actions/1-analysis/rihal-document-project/checklist.md +245 -0
- package/rihal/skills/actions/1-analysis/rihal-document-project/documentation-requirements.csv +12 -0
- package/rihal/skills/actions/1-analysis/rihal-document-project/instructions.md +128 -0
- package/rihal/skills/actions/1-analysis/rihal-document-project/templates/deep-dive-template.md +345 -0
- package/rihal/skills/actions/1-analysis/rihal-document-project/templates/index-template.md +169 -0
- package/rihal/skills/actions/1-analysis/rihal-document-project/templates/project-overview-template.md +103 -0
- package/rihal/skills/actions/1-analysis/rihal-document-project/templates/project-scan-report-schema.json +160 -0
- package/rihal/skills/actions/1-analysis/rihal-document-project/templates/source-tree-template.md +135 -0
- package/rihal/skills/actions/1-analysis/rihal-document-project/workflow.md +27 -0
- package/rihal/skills/actions/1-analysis/rihal-document-project/workflows/deep-dive-instructions.md +299 -0
- package/rihal/skills/actions/1-analysis/rihal-document-project/workflows/deep-dive-workflow.md +34 -0
- package/rihal/skills/actions/1-analysis/rihal-document-project/workflows/full-scan-instructions.md +1107 -0
- package/rihal/skills/actions/1-analysis/rihal-document-project/workflows/full-scan-workflow.md +34 -0
- package/rihal/skills/actions/1-analysis/rihal-prfaq/SKILL.md +120 -0
- package/rihal/skills/actions/1-analysis/rihal-prfaq/agents/artifact-analyzer.md +60 -0
- package/rihal/skills/actions/1-analysis/rihal-prfaq/agents/web-researcher.md +49 -0
- package/rihal/skills/actions/1-analysis/rihal-prfaq/assets/prfaq-template.md +62 -0
- package/rihal/skills/actions/1-analysis/rihal-prfaq/references/customer-faq.md +55 -0
- package/rihal/skills/actions/1-analysis/rihal-prfaq/references/internal-faq.md +51 -0
- package/rihal/skills/actions/1-analysis/rihal-prfaq/references/press-release.md +60 -0
- package/rihal/skills/actions/1-analysis/rihal-prfaq/references/verdict.md +79 -0
- package/rihal/skills/actions/1-analysis/rihal-prfaq/rihal-manifest.json +16 -0
- package/rihal/skills/actions/1-analysis/rihal-product-brief/SKILL.md +112 -0
- package/rihal/skills/actions/1-analysis/rihal-product-brief/agents/artifact-analyzer.md +60 -0
- package/rihal/skills/actions/1-analysis/rihal-product-brief/agents/opportunity-reviewer.md +44 -0
- package/rihal/skills/actions/1-analysis/rihal-product-brief/agents/skeptic-reviewer.md +44 -0
- package/rihal/skills/actions/1-analysis/rihal-product-brief/agents/web-researcher.md +49 -0
- package/rihal/skills/actions/1-analysis/rihal-product-brief/prompts/contextual-discovery.md +57 -0
- package/rihal/skills/actions/1-analysis/rihal-product-brief/prompts/draft-and-review.md +86 -0
- package/rihal/skills/actions/1-analysis/rihal-product-brief/prompts/finalize.md +75 -0
- package/rihal/skills/actions/1-analysis/rihal-product-brief/prompts/guided-elicitation.md +70 -0
- package/rihal/skills/actions/1-analysis/rihal-product-brief/resources/brief-template.md +60 -0
- package/rihal/skills/actions/1-analysis/rihal-product-brief/rihal-manifest.json +17 -0
- package/rihal/skills/actions/2-plan/rihal-create-epics-and-stories/SKILL.md +30 -0
- package/rihal/skills/actions/2-plan/rihal-create-epics-and-stories/steps/step-01-validate-prerequisites.md +255 -0
- package/rihal/skills/actions/2-plan/rihal-create-epics-and-stories/steps/step-02-design-epics.md +212 -0
- package/rihal/skills/actions/2-plan/rihal-create-epics-and-stories/steps/step-03-create-stories.md +255 -0
- package/rihal/skills/actions/2-plan/rihal-create-epics-and-stories/steps/step-04-final-validation.md +131 -0
- package/rihal/skills/actions/2-plan/rihal-create-epics-and-stories/templates/epics-template.md +61 -0
- package/rihal/skills/actions/2-plan/rihal-create-epics-and-stories/workflow.md +54 -0
- package/rihal/skills/actions/2-plan/rihal-create-milestone/SKILL.md +39 -0
- package/rihal/skills/actions/2-plan/rihal-create-milestone/steps/README.md +30 -0
- package/rihal/skills/actions/2-plan/rihal-create-milestone/steps/step-01-init.md +62 -0
- package/rihal/skills/actions/2-plan/rihal-create-milestone/steps/step-02-outcomes.md +64 -0
- package/rihal/skills/actions/2-plan/rihal-create-milestone/steps/step-03-sequencing.md +65 -0
- package/rihal/skills/actions/2-plan/rihal-create-milestone/steps/step-04-windows.md +60 -0
- package/rihal/skills/actions/2-plan/rihal-create-milestone/steps/step-05-kill-criteria.md +59 -0
- package/rihal/skills/actions/2-plan/rihal-create-milestone/steps/step-06-phase-stubs.md +56 -0
- package/rihal/skills/actions/2-plan/rihal-create-milestone/steps/step-07-backlog.md +44 -0
- package/rihal/skills/actions/2-plan/rihal-create-milestone/steps/step-08-write-roadmap.md +58 -0
- package/rihal/skills/actions/2-plan/rihal-create-milestone/steps/step-09-state-sync.md +62 -0
- package/rihal/skills/actions/2-plan/rihal-create-milestone/steps/step-10-complete.md +56 -0
- package/rihal/skills/actions/2-plan/rihal-create-milestone/workflow.md +93 -0
- package/rihal/skills/actions/2-plan/rihal-create-prd/SKILL.md +40 -0
- package/rihal/skills/actions/2-plan/rihal-create-prd/data/domain-complexity.csv +15 -0
- package/rihal/skills/actions/2-plan/rihal-create-prd/data/prd-purpose.md +197 -0
- package/rihal/skills/actions/2-plan/rihal-create-prd/data/project-types.csv +11 -0
- package/rihal/skills/actions/2-plan/rihal-create-prd/steps-c/step-01-init.md +178 -0
- package/rihal/skills/actions/2-plan/rihal-create-prd/steps-c/step-01b-continue.md +161 -0
- package/rihal/skills/actions/2-plan/rihal-create-prd/steps-c/step-02-discovery.md +208 -0
- package/rihal/skills/actions/2-plan/rihal-create-prd/steps-c/step-02b-vision.md +142 -0
- package/rihal/skills/actions/2-plan/rihal-create-prd/steps-c/step-02c-executive-summary.md +158 -0
- package/rihal/skills/actions/2-plan/rihal-create-prd/steps-c/step-03-success.md +214 -0
- package/rihal/skills/actions/2-plan/rihal-create-prd/steps-c/step-04-journeys.md +201 -0
- package/rihal/skills/actions/2-plan/rihal-create-prd/steps-c/step-05-domain.md +194 -0
- package/rihal/skills/actions/2-plan/rihal-create-prd/steps-c/step-06-innovation.md +211 -0
- package/rihal/skills/actions/2-plan/rihal-create-prd/steps-c/step-07-project-type.md +222 -0
- package/rihal/skills/actions/2-plan/rihal-create-prd/steps-c/step-08-scoping.md +216 -0
- package/rihal/skills/actions/2-plan/rihal-create-prd/steps-c/step-09-functional.md +219 -0
- package/rihal/skills/actions/2-plan/rihal-create-prd/steps-c/step-10-nonfunctional.md +230 -0
- package/rihal/skills/actions/2-plan/rihal-create-prd/steps-c/step-11-polish.md +221 -0
- package/rihal/skills/actions/2-plan/rihal-create-prd/steps-c/step-12-complete.md +115 -0
- package/rihal/skills/actions/2-plan/rihal-create-prd/templates/prd-template.md +10 -0
- package/rihal/skills/actions/2-plan/rihal-create-prd/workflow.md +64 -0
- package/rihal/skills/actions/2-plan/rihal-create-story/SKILL.md +31 -0
- package/rihal/skills/actions/2-plan/rihal-create-story/checklist.md +357 -0
- package/rihal/skills/actions/2-plan/rihal-create-story/discover-inputs.md +88 -0
- package/rihal/skills/actions/2-plan/rihal-create-story/template.md +49 -0
- package/rihal/skills/actions/2-plan/rihal-create-story/workflow.md +380 -0
- package/rihal/skills/actions/2-plan/rihal-create-ux-design/SKILL.md +31 -0
- package/rihal/skills/actions/2-plan/rihal-create-ux-design/steps/step-01-init.md +135 -0
- package/rihal/skills/actions/2-plan/rihal-create-ux-design/steps/step-01b-continue.md +127 -0
- package/rihal/skills/actions/2-plan/rihal-create-ux-design/steps/step-02-discovery.md +190 -0
- package/rihal/skills/actions/2-plan/rihal-create-ux-design/steps/step-03-core-experience.md +217 -0
- package/rihal/skills/actions/2-plan/rihal-create-ux-design/steps/step-04-emotional-response.md +220 -0
- package/rihal/skills/actions/2-plan/rihal-create-ux-design/steps/step-05-inspiration.md +235 -0
- package/rihal/skills/actions/2-plan/rihal-create-ux-design/steps/step-06-design-system.md +253 -0
- package/rihal/skills/actions/2-plan/rihal-create-ux-design/steps/step-07-defining-experience.md +255 -0
- package/rihal/skills/actions/2-plan/rihal-create-ux-design/steps/step-08-visual-foundation.md +225 -0
- package/rihal/skills/actions/2-plan/rihal-create-ux-design/steps/step-09-design-directions.md +225 -0
- package/rihal/skills/actions/2-plan/rihal-create-ux-design/steps/step-10-user-journeys.md +242 -0
- package/rihal/skills/actions/2-plan/rihal-create-ux-design/steps/step-11-component-strategy.md +249 -0
- package/rihal/skills/actions/2-plan/rihal-create-ux-design/steps/step-12-ux-patterns.md +238 -0
- package/rihal/skills/actions/2-plan/rihal-create-ux-design/steps/step-13-responsive-accessibility.md +265 -0
- package/rihal/skills/actions/2-plan/rihal-create-ux-design/steps/step-14-complete.md +171 -0
- package/rihal/skills/actions/2-plan/rihal-create-ux-design/ux-design-template.md +13 -0
- package/rihal/skills/actions/2-plan/rihal-create-ux-design/workflow.md +36 -0
- package/rihal/skills/actions/2-plan/rihal-edit-prd/SKILL.md +30 -0
- package/rihal/skills/actions/2-plan/rihal-edit-prd/steps-e/step-e-01-discovery.md +242 -0
- package/rihal/skills/actions/2-plan/rihal-edit-prd/steps-e/step-e-01b-legacy-conversion.md +204 -0
- package/rihal/skills/actions/2-plan/rihal-edit-prd/steps-e/step-e-02-review.md +245 -0
- package/rihal/skills/actions/2-plan/rihal-edit-prd/steps-e/step-e-03-edit.md +250 -0
- package/rihal/skills/actions/2-plan/rihal-edit-prd/steps-e/step-e-04-complete.md +165 -0
- package/rihal/skills/actions/2-plan/rihal-edit-prd/workflow.md +63 -0
- package/rihal/skills/actions/2-plan/rihal-frontend-design/SKILL.md +169 -0
- package/rihal/skills/actions/2-plan/rihal-validate-prd/SKILL.md +29 -0
- package/rihal/skills/actions/2-plan/rihal-validate-prd/data/domain-complexity.csv +15 -0
- package/rihal/skills/actions/2-plan/rihal-validate-prd/data/prd-purpose.md +197 -0
- package/rihal/skills/actions/2-plan/rihal-validate-prd/data/project-types.csv +11 -0
- package/rihal/skills/actions/2-plan/rihal-validate-prd/steps-v/step-v-01-discovery.md +221 -0
- package/rihal/skills/actions/2-plan/rihal-validate-prd/steps-v/step-v-02-format-detection.md +188 -0
- package/rihal/skills/actions/2-plan/rihal-validate-prd/steps-v/step-v-02b-parity-check.md +206 -0
- package/rihal/skills/actions/2-plan/rihal-validate-prd/steps-v/step-v-03-density-validation.md +171 -0
- package/rihal/skills/actions/2-plan/rihal-validate-prd/steps-v/step-v-04-brief-coverage-validation.md +211 -0
- package/rihal/skills/actions/2-plan/rihal-validate-prd/steps-v/step-v-05-measurability-validation.md +225 -0
- package/rihal/skills/actions/2-plan/rihal-validate-prd/steps-v/step-v-06-traceability-validation.md +214 -0
- package/rihal/skills/actions/2-plan/rihal-validate-prd/steps-v/step-v-07-implementation-leakage-validation.md +202 -0
- package/rihal/skills/actions/2-plan/rihal-validate-prd/steps-v/step-v-08-domain-compliance-validation.md +240 -0
- package/rihal/skills/actions/2-plan/rihal-validate-prd/steps-v/step-v-09-project-type-validation.md +260 -0
- package/rihal/skills/actions/2-plan/rihal-validate-prd/steps-v/step-v-10-smart-validation.md +206 -0
- package/rihal/skills/actions/2-plan/rihal-validate-prd/steps-v/step-v-11-holistic-quality-validation.md +261 -0
- package/rihal/skills/actions/2-plan/rihal-validate-prd/steps-v/step-v-12-completeness-validation.md +239 -0
- package/rihal/skills/actions/2-plan/rihal-validate-prd/steps-v/step-v-13-report-complete.md +229 -0
- package/rihal/skills/actions/2-plan/rihal-validate-prd/workflow.md +62 -0
- package/rihal/skills/actions/3-solutioning/rihal-check-implementation-readiness/SKILL.md +30 -0
- package/rihal/skills/actions/3-solutioning/rihal-check-implementation-readiness/steps/step-01-document-discovery.md +179 -0
- package/rihal/skills/actions/3-solutioning/rihal-check-implementation-readiness/steps/step-02-prd-analysis.md +168 -0
- package/rihal/skills/actions/3-solutioning/rihal-check-implementation-readiness/steps/step-03-epic-coverage-validation.md +169 -0
- package/rihal/skills/actions/3-solutioning/rihal-check-implementation-readiness/steps/step-04-ux-alignment.md +129 -0
- package/rihal/skills/actions/3-solutioning/rihal-check-implementation-readiness/steps/step-05-epic-quality-review.md +241 -0
- package/rihal/skills/actions/3-solutioning/rihal-check-implementation-readiness/steps/step-06-final-assessment.md +126 -0
- package/rihal/skills/actions/3-solutioning/rihal-check-implementation-readiness/templates/readiness-report-template.md +4 -0
- package/rihal/skills/actions/3-solutioning/rihal-check-implementation-readiness/workflow.md +49 -0
- package/rihal/skills/actions/3-solutioning/rihal-create-architecture/SKILL.md +32 -0
- package/rihal/skills/actions/3-solutioning/rihal-create-architecture/architecture-decision-template.md +12 -0
- package/rihal/skills/actions/3-solutioning/rihal-create-architecture/data/domain-complexity.csv +13 -0
- package/rihal/skills/actions/3-solutioning/rihal-create-architecture/data/project-types.csv +7 -0
- package/rihal/skills/actions/3-solutioning/rihal-create-architecture/steps/step-01-init.md +153 -0
- package/rihal/skills/actions/3-solutioning/rihal-create-architecture/steps/step-01b-continue.md +173 -0
- package/rihal/skills/actions/3-solutioning/rihal-create-architecture/steps/step-02-context.md +224 -0
- package/rihal/skills/actions/3-solutioning/rihal-create-architecture/steps/step-03-starter.md +329 -0
- package/rihal/skills/actions/3-solutioning/rihal-create-architecture/steps/step-04-decisions.md +318 -0
- package/rihal/skills/actions/3-solutioning/rihal-create-architecture/steps/step-05-patterns.md +359 -0
- package/rihal/skills/actions/3-solutioning/rihal-create-architecture/steps/step-06-structure.md +379 -0
- package/rihal/skills/actions/3-solutioning/rihal-create-architecture/steps/step-07-validation.md +359 -0
- package/rihal/skills/actions/3-solutioning/rihal-create-architecture/steps/step-08-complete.md +76 -0
- package/rihal/skills/actions/3-solutioning/rihal-create-architecture/workflow.md +38 -0
- package/rihal/skills/actions/3-solutioning/rihal-generate-project-context/SKILL.md +31 -0
- package/rihal/skills/actions/3-solutioning/rihal-generate-project-context/project-context-template.md +21 -0
- package/rihal/skills/actions/3-solutioning/rihal-generate-project-context/steps/step-01-discover.md +186 -0
- package/rihal/skills/actions/3-solutioning/rihal-generate-project-context/steps/step-02-generate.md +321 -0
- package/rihal/skills/actions/3-solutioning/rihal-generate-project-context/steps/step-03-complete.md +278 -0
- package/rihal/skills/actions/3-solutioning/rihal-generate-project-context/workflow.md +43 -0
- package/rihal/skills/actions/4-implementation/rihal-checkpoint-preview/SKILL.md +48 -0
- package/rihal/skills/actions/4-implementation/rihal-checkpoint-preview/generate-trail.md +38 -0
- package/rihal/skills/actions/4-implementation/rihal-checkpoint-preview/step-01-orientation.md +105 -0
- package/rihal/skills/actions/4-implementation/rihal-checkpoint-preview/step-02-walkthrough.md +89 -0
- package/rihal/skills/actions/4-implementation/rihal-checkpoint-preview/step-03-detail-pass.md +106 -0
- package/rihal/skills/actions/4-implementation/rihal-checkpoint-preview/step-04-testing.md +74 -0
- package/rihal/skills/actions/4-implementation/rihal-checkpoint-preview/step-05-wrapup.md +24 -0
- package/rihal/skills/actions/4-implementation/rihal-code-review/SKILL.md +31 -0
- package/rihal/skills/actions/4-implementation/rihal-code-review/steps/step-01-gather-context.md +62 -0
- package/rihal/skills/actions/4-implementation/rihal-code-review/steps/step-02-review.md +34 -0
- package/rihal/skills/actions/4-implementation/rihal-code-review/steps/step-03-triage.md +49 -0
- package/rihal/skills/actions/4-implementation/rihal-code-review/steps/step-04-present.md +129 -0
- package/rihal/skills/actions/4-implementation/rihal-code-review/workflow.md +55 -0
- package/rihal/skills/actions/4-implementation/rihal-correct-course/SKILL.md +29 -0
- package/rihal/skills/actions/4-implementation/rihal-correct-course/checklist.md +288 -0
- package/rihal/skills/actions/4-implementation/rihal-correct-course/workflow.md +267 -0
- package/rihal/skills/actions/4-implementation/rihal-dev-story/SKILL.md +36 -0
- package/rihal/skills/actions/4-implementation/rihal-dev-story/checklist.md +80 -0
- package/rihal/skills/actions/4-implementation/rihal-dev-story/workflow.md +450 -0
- package/rihal/skills/actions/4-implementation/rihal-qa-generate-e2e-tests/SKILL.md +31 -0
- package/rihal/skills/actions/4-implementation/rihal-qa-generate-e2e-tests/checklist.md +33 -0
- package/rihal/skills/actions/4-implementation/rihal-qa-generate-e2e-tests/workflow.md +136 -0
- package/rihal/skills/actions/4-implementation/rihal-retrospective/SKILL.md +30 -0
- package/rihal/skills/actions/4-implementation/rihal-retrospective/workflow.md +1479 -0
- package/rihal/skills/actions/4-implementation/rihal-scaffold-project/SKILL.md +77 -0
- package/rihal/skills/actions/4-implementation/rihal-scaffold-project/steps/step-01-target.md +17 -0
- package/rihal/skills/actions/4-implementation/rihal-scaffold-project/steps/step-02-safety.md +35 -0
- package/rihal/skills/actions/4-implementation/rihal-scaffold-project/steps/step-03-clone.md +50 -0
- package/rihal/skills/actions/4-implementation/rihal-scaffold-project/steps/step-04-post-setup.md +44 -0
- package/rihal/skills/actions/4-implementation/rihal-sprint-planning/SKILL.md +35 -0
- package/rihal/skills/actions/4-implementation/rihal-sprint-planning/checklist.md +43 -0
- package/rihal/skills/actions/4-implementation/rihal-sprint-planning/sprint-status-template.yaml +56 -0
- package/rihal/skills/actions/4-implementation/rihal-sprint-planning/workflow.md +284 -0
- package/rihal/skills/actions/4-implementation/rihal-sprint-status/SKILL.md +30 -0
- package/rihal/skills/actions/4-implementation/rihal-sprint-status/workflow.md +261 -0
- package/rihal/skills/agents/ahmed-hassani-director/SKILL.md +121 -0
- package/rihal/skills/agents/fatima-qa/SKILL.md +106 -0
- package/rihal/skills/agents/fatima-qa/skill-manifest.yaml +11 -0
- package/rihal/skills/agents/haitham-frontend/SKILL.md +120 -0
- package/rihal/skills/agents/hanzla-engineer/SKILL.md +109 -0
- package/rihal/skills/agents/hanzla-engineer/skill-manifest.yaml +11 -0
- package/rihal/skills/agents/hussain-pm/SKILL.md +107 -0
- package/rihal/skills/agents/hussain-pm/skill-manifest.yaml +11 -0
- package/rihal/skills/agents/hussain-sm/SKILL.md +104 -0
- package/rihal/skills/agents/hussain-sm/skill-manifest.yaml +11 -0
- package/rihal/skills/agents/layla-designer/SKILL.md +96 -0
- package/rihal/skills/agents/layla-designer/skill-manifest.yaml +11 -0
- package/rihal/skills/agents/majlis-council/SKILL.md +179 -0
- package/rihal/skills/agents/mariam-marketing/SKILL.md +133 -0
- package/rihal/skills/agents/nasser-eng-manager/SKILL.md +125 -0
- package/rihal/skills/agents/noor-writer/SKILL.md +104 -0
- package/rihal/skills/agents/noor-writer/explain-concept.md +20 -0
- package/rihal/skills/agents/noor-writer/mermaid-gen.md +20 -0
- package/rihal/skills/agents/noor-writer/skill-manifest.yaml +11 -0
- package/rihal/skills/agents/noor-writer/validate-doc.md +19 -0
- package/rihal/skills/agents/noor-writer/write-document.md +20 -0
- package/rihal/skills/agents/raees-orchestrator/SKILL.md +154 -0
- package/rihal/skills/agents/sadiq-analyst/SKILL.md +106 -0
- package/rihal/skills/agents/sadiq-analyst/skill-manifest.yaml +11 -0
- package/rihal/skills/agents/waleed-architect/SKILL.md +106 -0
- package/rihal/skills/agents/waleed-architect/skill-manifest.yaml +11 -0
- package/rihal/skills/agents/yousef-backend/SKILL.md +136 -0
- package/rihal/skills/agents/zahra-branding/SKILL.md +141 -0
- package/rihal/skills/agents/zayd-ml/SKILL.md +124 -0
- package/rihal/skills/core/module-help.csv +11 -0
- package/rihal/skills/core/module.yaml +25 -0
- package/rihal/skills/core/rihal-advanced-elicitation/SKILL.md +155 -0
- package/rihal/skills/core/rihal-advanced-elicitation/methods.csv +51 -0
- package/rihal/skills/core/rihal-advanced-elicitation/rihal-advanced-elicitation/SKILL.md +148 -0
- package/rihal/skills/core/rihal-advanced-elicitation/rihal-advanced-elicitation/methods.csv +51 -0
- package/rihal/skills/core/rihal-brainstorming/SKILL.md +82 -0
- package/rihal/skills/core/rihal-brainstorming/brain-methods.csv +62 -0
- package/rihal/skills/core/rihal-brainstorming/steps/step-01-session-setup.md +214 -0
- package/rihal/skills/core/rihal-brainstorming/steps/step-01b-continue.md +124 -0
- package/rihal/skills/core/rihal-brainstorming/steps/step-02a-user-selected.md +229 -0
- package/rihal/skills/core/rihal-brainstorming/steps/step-02b-ai-recommended.md +239 -0
- package/rihal/skills/core/rihal-brainstorming/steps/step-02c-random-selection.md +211 -0
- package/rihal/skills/core/rihal-brainstorming/steps/step-02d-progressive-flow.md +266 -0
- package/rihal/skills/core/rihal-brainstorming/steps/step-03-technique-execution.md +401 -0
- package/rihal/skills/core/rihal-brainstorming/steps/step-04-idea-organization.md +305 -0
- package/rihal/skills/core/rihal-brainstorming/template.md +15 -0
- package/rihal/skills/core/rihal-brainstorming/workflow.md +53 -0
- package/rihal/skills/core/rihal-clone-website/SKILL.md +395 -0
- package/rihal/skills/core/rihal-distillator/SKILL.md +205 -0
- package/rihal/skills/core/rihal-distillator/agents/distillate-compressor.md +116 -0
- package/rihal/skills/core/rihal-distillator/agents/round-trip-reconstructor.md +68 -0
- package/rihal/skills/core/rihal-distillator/resources/compression-rules.md +51 -0
- package/rihal/skills/core/rihal-distillator/resources/distillate-format-reference.md +227 -0
- package/rihal/skills/core/rihal-distillator/resources/splitting-strategy.md +78 -0
- package/rihal/skills/core/rihal-distillator/scripts/analyze_sources.py +300 -0
- package/rihal/skills/core/rihal-distillator/scripts/tests/test_analyze_sources.py +204 -0
- package/rihal/skills/core/rihal-editorial-review-prose/SKILL.md +108 -0
- package/rihal/skills/core/rihal-editorial-review-structure/SKILL.md +193 -0
- package/rihal/skills/core/rihal-help/SKILL.md +91 -0
- package/rihal/skills/core/rihal-index-docs/SKILL.md +80 -0
- package/rihal/skills/core/rihal-init/SKILL.md +119 -0
- package/rihal/skills/core/rihal-init/resources/core-module.yaml +25 -0
- package/rihal/skills/core/rihal-init/scripts/rihal_init.py +593 -0
- package/rihal/skills/core/rihal-init/scripts/tests/test_rihal_init.py +329 -0
- package/rihal/skills/core/rihal-party-mode/SKILL.md +77 -0
- package/rihal/skills/core/rihal-party-mode/steps/step-01-agent-loading.md +138 -0
- package/rihal/skills/core/rihal-party-mode/steps/step-02-discussion-orchestration.md +187 -0
- package/rihal/skills/core/rihal-party-mode/steps/step-03-graceful-exit.md +167 -0
- package/rihal/skills/core/rihal-party-mode/workflow.md +190 -0
- package/rihal/skills/core/rihal-review-adversarial-general/SKILL.md +55 -0
- package/rihal/skills/core/rihal-review-edge-case-hunter/SKILL.md +81 -0
- package/rihal/skills/core/rihal-shard-doc/SKILL.md +119 -0
- package/rihal/skills/core/rihal-shard-doc/rihal-shard-doc/SKILL.md +122 -0
- package/rihal/team.yaml +343 -0
- package/rihal/templates/UI-SPEC.md +127 -0
- package/rihal/templates/documentation-requirements.csv +11 -0
- package/rihal/templates/github/bug-template.md +53 -0
- package/rihal/templates/github/epic-template.md +57 -0
- package/rihal/templates/github/feature-template.md +55 -0
- package/rihal/templates/github/task-template.md +52 -0
- package/rihal/templates/milestone.md +147 -0
- package/rihal/templates/projects/api-backend/PROJECT.md +37 -0
- package/rihal/templates/projects/api-backend/REQUIREMENTS.md +38 -0
- package/rihal/templates/projects/api-backend/ROADMAP.md +92 -0
- package/rihal/templates/projects/api-backend/template.yaml +17 -0
- package/rihal/templates/projects/mobile-app/PROJECT.md +37 -0
- package/rihal/templates/projects/mobile-app/REQUIREMENTS.md +32 -0
- package/rihal/templates/projects/mobile-app/ROADMAP.md +93 -0
- package/rihal/templates/projects/mobile-app/template.yaml +17 -0
- package/rihal/templates/projects/saas-b2b/PROJECT.md +40 -0
- package/rihal/templates/projects/saas-b2b/REQUIREMENTS.md +38 -0
- package/rihal/templates/projects/saas-b2b/ROADMAP.md +95 -0
- package/rihal/templates/projects/saas-b2b/template.yaml +18 -0
- package/rihal/templates/settings-hooks.json +36 -0
- package/rihal/templates/sprint.md +70 -0
- package/rihal/workflows/add-phase.md +112 -0
- package/rihal/workflows/add-tests.md +351 -0
- package/rihal/workflows/add-todo.md +181 -0
- package/rihal/workflows/analyze-dependencies.md +138 -0
- package/rihal/workflows/audit-fix.md +190 -0
- package/rihal/workflows/audit-milestone.md +155 -0
- package/rihal/workflows/audit-uat.md +109 -0
- package/rihal/workflows/autonomous.md +992 -0
- package/rihal/workflows/brainstorm.md +203 -0
- package/rihal/workflows/chain.md +188 -0
- package/rihal/workflows/check-implementation-readiness.md +193 -0
- package/rihal/workflows/check-todos.md +177 -0
- package/rihal/workflows/cleanup.md +152 -0
- package/rihal/workflows/code-review-fix.md +529 -0
- package/rihal/workflows/code-review.md +566 -0
- package/rihal/workflows/complete-milestone.md +836 -0
- package/rihal/workflows/config.md +105 -0
- package/rihal/workflows/correct-course.md +190 -0
- package/rihal/workflows/council.md +565 -0
- package/rihal/workflows/create-epics-and-stories.md +373 -0
- package/rihal/workflows/create-story.md +297 -0
- package/rihal/workflows/dashboard.md +102 -0
- package/rihal/workflows/debug.md +256 -0
- package/rihal/workflows/decisions.md +107 -0
- package/rihal/workflows/dev-story.md +432 -0
- package/rihal/workflows/diff.md +74 -0
- package/rihal/workflows/discuss-phase-power.md +325 -0
- package/rihal/workflows/discuss-phase.md +1201 -0
- package/rihal/workflows/discuss.md +227 -0
- package/rihal/workflows/do.md +175 -0
- package/rihal/workflows/docs-update.md +261 -0
- package/rihal/workflows/document-project.md +180 -0
- package/rihal/workflows/enable-hooks.md +102 -0
- package/rihal/workflows/execute-sprint.md +514 -0
- package/rihal/workflows/execute.md +1478 -0
- package/rihal/workflows/explore.md +171 -0
- package/rihal/workflows/export-to-github.md +174 -0
- package/rihal/workflows/forensics.md +201 -0
- package/rihal/workflows/from-template.md +173 -0
- package/rihal/workflows/health.md +194 -0
- package/rihal/workflows/help.md +318 -0
- package/rihal/workflows/import.md +306 -0
- package/rihal/workflows/inbox.md +418 -0
- package/rihal/workflows/init.md +245 -0
- package/rihal/workflows/insert-phase.md +116 -0
- package/rihal/workflows/install.md +85 -0
- package/rihal/workflows/karpathy-audit.md +409 -0
- package/rihal/workflows/list-plans.md +146 -0
- package/rihal/workflows/list-workspaces.md +115 -0
- package/rihal/workflows/map-codebase.md +449 -0
- package/rihal/workflows/milestone-summary.md +206 -0
- package/rihal/workflows/new-milestone.md +616 -0
- package/rihal/workflows/new-project-research.md +262 -0
- package/rihal/workflows/new-project-roadmap.md +446 -0
- package/rihal/workflows/new-project.md +1503 -0
- package/rihal/workflows/new-workspace.md +167 -0
- package/rihal/workflows/next.md +162 -0
- package/rihal/workflows/note.md +156 -0
- package/rihal/workflows/notify-test.md +113 -0
- package/rihal/workflows/pause-work.md +243 -0
- package/rihal/workflows/plan-milestone-gaps.md +273 -0
- package/rihal/workflows/plan.md +1262 -0
- package/rihal/workflows/plant-seed.md +169 -0
- package/rihal/workflows/pr-branch.md +129 -0
- package/rihal/workflows/profile-user.md +162 -0
- package/rihal/workflows/progress.md +184 -0
- package/rihal/workflows/quick.md +105 -0
- package/rihal/workflows/remove-phase.md +155 -0
- package/rihal/workflows/remove-workspace.md +158 -0
- package/rihal/workflows/replay.md +160 -0
- package/rihal/workflows/rerun.md +77 -0
- package/rihal/workflows/research-phase.md +82 -0
- package/rihal/workflows/resume-work.md +326 -0
- package/rihal/workflows/review-adversarial.md +180 -0
- package/rihal/workflows/review-edge-case-hunter.md +214 -0
- package/rihal/workflows/review.md +281 -0
- package/rihal/workflows/scan.md +135 -0
- package/rihal/workflows/secure-phase.md +196 -0
- package/rihal/workflows/session-report.md +187 -0
- package/rihal/workflows/settings.md +185 -0
- package/rihal/workflows/ship.md +237 -0
- package/rihal/workflows/show.md +63 -0
- package/rihal/workflows/sprint-planning.md +166 -0
- package/rihal/workflows/sprint-status.md +124 -0
- package/rihal/workflows/stats.md +141 -0
- package/rihal/workflows/status.md +116 -0
- package/rihal/workflows/ui-phase.md +148 -0
- package/rihal/workflows/ui-review.md +130 -0
- package/rihal/workflows/undo.md +426 -0
- package/rihal/workflows/update.md +185 -0
- package/rihal/workflows/validate-phase.md +174 -0
- package/rihal/workflows/verify-phase.md +375 -0
- package/rihal/workflows/verify-work.md +717 -0
- package/rihal/workflows/why.md +130 -0
- package/rihal/workflows/workstream.md +197 -0
- package/server/dashboard.js +632 -0
|
@@ -0,0 +1,373 @@
|
|
|
1
|
+
# Workflow: rihal:create-epics-and-stories
|
|
2
|
+
|
|
3
|
+
<purpose>
|
|
4
|
+
Parse a PRD, PROJECT.md, or project document to generate numbered epic files in `.planning/epics/`. Each epic file contains user stories with acceptance criteria, development notes, and effort estimates. Output is ready for `/rihal:sprint-planning`.
|
|
5
|
+
</purpose>
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
<available_agent_types>
|
|
9
|
+
- `rihal-roadmapper` — reads PRD/context and generates epic structure
|
|
10
|
+
</available_agent_types>
|
|
11
|
+
|
|
12
|
+
## Step 0 — Parse Arguments & Detect Context Mode
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
INPUT_FILE=""
|
|
16
|
+
PREFIX=""
|
|
17
|
+
CONTEXT_MODE="file" # file | interactive | codebase
|
|
18
|
+
|
|
19
|
+
for arg in $ARGUMENTS; do
|
|
20
|
+
if [[ "$arg" == "--prefix" ]]; then PREFIX_NEXT=true
|
|
21
|
+
elif [[ "$PREFIX_NEXT" == true ]]; then PREFIX="$arg"; PREFIX_NEXT=false
|
|
22
|
+
elif [[ "$arg" != --* ]]; then INPUT_FILE="$arg"
|
|
23
|
+
fi
|
|
24
|
+
done
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
**Route based on what was provided:**
|
|
28
|
+
|
|
29
|
+
| Situation | Action |
|
|
30
|
+
|-----------|--------|
|
|
31
|
+
| `INPUT_FILE` given and file exists | Use it — `CONTEXT_MODE=file` |
|
|
32
|
+
| `INPUT_FILE` given but file missing | Error — "File not found: {path}" — STOP |
|
|
33
|
+
| No `INPUT_FILE` given, `.planning/PROJECT.md` exists | Use PROJECT.md — `CONTEXT_MODE=file` |
|
|
34
|
+
| No `INPUT_FILE` given, no PROJECT.md | Ask user (see below) |
|
|
35
|
+
|
|
36
|
+
**When no context file exists — ask via AskUserQuestion:**
|
|
37
|
+
|
|
38
|
+
```
|
|
39
|
+
No PRD or PROJECT.md found. How should we proceed?
|
|
40
|
+
|
|
41
|
+
1. Initialize the project first — run /rihal:new-project to capture goals, stack,
|
|
42
|
+
milestones, and generate PROJECT.md. Recommended if this is a new project.
|
|
43
|
+
|
|
44
|
+
2. Gather context from codebase + GitHub issues — I'll scan the repo, read open
|
|
45
|
+
issues, and use that as the foundation. Good for existing projects.
|
|
46
|
+
|
|
47
|
+
3. Tell me what you want to build — describe the feature/epic scope and I'll
|
|
48
|
+
generate stories from that description directly.
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
- If **1**: invoke `/rihal:new-project` and stop.
|
|
52
|
+
- If **2**: set `CONTEXT_MODE=codebase`
|
|
53
|
+
- If **3**: capture description → set `CONTEXT_MODE=interactive`, `DESCRIPTION=$response`
|
|
54
|
+
|
|
55
|
+
## Step 1 — Load References & Gather Deep Context
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
@.rihal/references/checklist-story-draft.md
|
|
59
|
+
@.rihal/references/commit-conventions.md
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
**Context gathering varies by mode:**
|
|
63
|
+
|
|
64
|
+
### Mode: `file`
|
|
65
|
+
|
|
66
|
+
Read `INPUT_FILE`. Also run supplemental scan:
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
STACK=$(cat .planning/STACK.md 2>/dev/null || cat README.md 2>/dev/null | head -60)
|
|
70
|
+
OPEN_ISSUES=$(gh issue list --state open --limit 50 --json number,title,labels,assignees 2>/dev/null)
|
|
71
|
+
RECENT_COMMITS=$(git log --oneline -20 2>/dev/null)
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
### Mode: `codebase`
|
|
75
|
+
|
|
76
|
+
Do NOT proceed with thin analysis. Run deep parallel scan:
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
# 1. Codebase structure
|
|
80
|
+
CODEBASE=$(gemini -p "@./ Summarize: tech stack, main modules, key entry points,
|
|
81
|
+
any existing feature flags or TODOs. Under 400 words.")
|
|
82
|
+
|
|
83
|
+
# 2. Open GitHub issues (grouped by label/theme)
|
|
84
|
+
OPEN_ISSUES=$(gh issue list --state open --limit 100 \
|
|
85
|
+
--json number,title,labels,assignees,body 2>/dev/null)
|
|
86
|
+
|
|
87
|
+
# 3. Recent git activity (last 30 commits = what changed recently)
|
|
88
|
+
RECENT_WORK=$(git log --oneline -30 2>/dev/null)
|
|
89
|
+
|
|
90
|
+
# 4. Existing planning files
|
|
91
|
+
EXISTING_EPICS=$(ls .planning/epics/*.md 2>/dev/null | xargs grep '^# Epic' 2>/dev/null)
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
After gathering, synthesize into a brief context document:
|
|
95
|
+
|
|
96
|
+
```
|
|
97
|
+
Project context:
|
|
98
|
+
- Stack: {from codebase scan}
|
|
99
|
+
- Recent work: {from git log}
|
|
100
|
+
- Open issues: {grouped themes from GitHub}
|
|
101
|
+
- Existing epics: {if any}
|
|
102
|
+
- User's scope description: {from ARGUMENTS or interactive input}
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
### Mode: `interactive`
|
|
106
|
+
|
|
107
|
+
Use the user's description + quick codebase scan:
|
|
108
|
+
|
|
109
|
+
```bash
|
|
110
|
+
CODEBASE_QUICK=$(gemini -p "@./ In 200 words: tech stack and main modules only.")
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
## Step 2 — Generate Epic Structure
|
|
114
|
+
|
|
115
|
+
Call `rihal-roadmapper` with full context. The prompt MUST enforce proper epic decomposition:
|
|
116
|
+
|
|
117
|
+
```
|
|
118
|
+
You are a senior product manager breaking down a feature area into epics and stories.
|
|
119
|
+
|
|
120
|
+
## Context
|
|
121
|
+
|
|
122
|
+
{Full context document from Step 1 — PRD/PROJECT.md content, codebase summary,
|
|
123
|
+
open issues, recent git activity}
|
|
124
|
+
|
|
125
|
+
## Your task
|
|
126
|
+
|
|
127
|
+
Generate a structured set of epics. Each epic covers ONE coherent concern or phase.
|
|
128
|
+
|
|
129
|
+
## Epic decomposition rules (MANDATORY)
|
|
130
|
+
|
|
131
|
+
1. One epic = one coherent theme. Examples of correct splits:
|
|
132
|
+
- ✅ "Web Search Investigation" + "Toggle Bug Fixes" + "Provider Improvements" = 3 epics
|
|
133
|
+
- ❌ "Web Search (everything)" with 10 stories = 1 bloated epic (WRONG)
|
|
134
|
+
|
|
135
|
+
2. Each epic has 3–5 stories MAX. If you have 8+ stories for one theme, split into 2 epics.
|
|
136
|
+
|
|
137
|
+
3. Epics are ordered by dependency: investigation before implementation,
|
|
138
|
+
infrastructure before features, blockers before dependent work.
|
|
139
|
+
|
|
140
|
+
4. Story IDs use plain numbers: 1.1, 1.2 — NOT "EPIC-1.1". The epic number is
|
|
141
|
+
implied by the file. Story IDs must never repeat across epics.
|
|
142
|
+
|
|
143
|
+
5. A story must be completable in 1–5 days (S or M effort). L effort stories
|
|
144
|
+
must be split into smaller stories.
|
|
145
|
+
|
|
146
|
+
6. Investigation/spike stories are valid and should be their own epic when
|
|
147
|
+
there are 3+ unknowns to resolve.
|
|
148
|
+
|
|
149
|
+
## Output format (strict JSON)
|
|
150
|
+
|
|
151
|
+
{
|
|
152
|
+
"epics": [
|
|
153
|
+
{
|
|
154
|
+
"number": 1,
|
|
155
|
+
"title": "Short epic title (max 6 words)",
|
|
156
|
+
"description": "2-3 sentences: what this epic covers, why it exists, what done looks like",
|
|
157
|
+
"phase": "investigation | design | implementation | testing | release",
|
|
158
|
+
"depends_on": [],
|
|
159
|
+
"stories": [
|
|
160
|
+
{
|
|
161
|
+
"number": 1,
|
|
162
|
+
"title": "Story title (max 8 words)",
|
|
163
|
+
"persona": "Full name + role (e.g. 'Hanzla (Backend Engineer)')",
|
|
164
|
+
"action": "I want to {specific action}",
|
|
165
|
+
"outcome": "so that {specific measurable outcome}",
|
|
166
|
+
"acceptance_criteria": [
|
|
167
|
+
"Specific, testable criterion 1",
|
|
168
|
+
"Specific, testable criterion 2",
|
|
169
|
+
"Specific, testable criterion 3"
|
|
170
|
+
],
|
|
171
|
+
"out_of_scope": ["What this story explicitly does NOT cover"],
|
|
172
|
+
"effort": "S|M|L",
|
|
173
|
+
"effort_rationale": "why this size — name the files/systems involved",
|
|
174
|
+
"dev_notes": "Exact file paths, function names, line-level hints. Be specific.",
|
|
175
|
+
"linked_issues": ["#123", "#456"]
|
|
176
|
+
}
|
|
177
|
+
]
|
|
178
|
+
}
|
|
179
|
+
]
|
|
180
|
+
}
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
## Quality checks
|
|
184
|
+
|
|
185
|
+
- Reject epics with >5 stories — split them
|
|
186
|
+
- Reject stories with vague acceptance criteria ("it works", "it is fast")
|
|
187
|
+
- Reject stories missing dev_notes (every story needs at least 2 file paths)
|
|
188
|
+
- Reject L-effort stories — split into 2 M stories
|
|
189
|
+
- linked_issues must reference real issue numbers from the context above
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
Wait for the roadmapper response (JSON).
|
|
193
|
+
|
|
194
|
+
**Validate response before continuing:**
|
|
195
|
+
|
|
196
|
+
```bash
|
|
197
|
+
EPIC_COUNT=$(echo "$EPIC_JSON" | jq '.epics | length')
|
|
198
|
+
MAX_STORIES=$(echo "$EPIC_JSON" | jq '[.epics[].stories | length] | max')
|
|
199
|
+
|
|
200
|
+
if [[ $MAX_STORIES -gt 5 ]]; then
|
|
201
|
+
echo "⚠ Epic has >5 stories — asking roadmapper to split..."
|
|
202
|
+
# Re-prompt: "Epic {N} has {count} stories. Split into 2 epics by grouping
|
|
203
|
+
# closely related stories. Return updated JSON."
|
|
204
|
+
fi
|
|
205
|
+
|
|
206
|
+
if [[ $EPIC_COUNT -lt 2 && $MAX_STORIES -gt 4 ]]; then
|
|
207
|
+
echo "⚠ Only 1 epic generated — likely under-split. Asking roadmapper to separate concerns..."
|
|
208
|
+
fi
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
## Step 3 — Validate Epic Structure
|
|
212
|
+
|
|
213
|
+
Validate each story passes draft checklist before writing any files:
|
|
214
|
+
- Persona named ✓
|
|
215
|
+
- Action/outcome specified ✓
|
|
216
|
+
- 3+ acceptance criteria ✓
|
|
217
|
+
- Out-of-scope listed ✓
|
|
218
|
+
- Effort is S or M (never L) ✓
|
|
219
|
+
- dev_notes contains at least 2 file paths ✓
|
|
220
|
+
|
|
221
|
+
If any story fails, ask roadmapper to fix before continuing.
|
|
222
|
+
|
|
223
|
+
## Step 4 — Write Split Files
|
|
224
|
+
|
|
225
|
+
**Layout:**
|
|
226
|
+
```
|
|
227
|
+
.planning/epics/
|
|
228
|
+
EPIC-01.md ← lean summary only (~25 lines)
|
|
229
|
+
EPIC-02.md
|
|
230
|
+
INDEX.md ← master table of all epics + stories
|
|
231
|
+
stories/
|
|
232
|
+
1.1.md ← one file per story (~35 lines)
|
|
233
|
+
1.2.md
|
|
234
|
+
2.1.md
|
|
235
|
+
```
|
|
236
|
+
|
|
237
|
+
**Why split:** Epic files are kept lean so GitHub API updates only rewrite one small story file instead of the full epic. Token cost per `/rihal:dev-story` is proportional to one story, not the whole epic.
|
|
238
|
+
|
|
239
|
+
```bash
|
|
240
|
+
mkdir -p .planning/epics/stories
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
**For each epic — write lean `EPIC-{NN}.md`:**
|
|
244
|
+
|
|
245
|
+
```markdown
|
|
246
|
+
# Epic {N}: {Title}
|
|
247
|
+
|
|
248
|
+
**Phase:** {phase}
|
|
249
|
+
**Scope:** {2-3 sentence description}
|
|
250
|
+
**Depends on:** {epic numbers or "none"}
|
|
251
|
+
|
|
252
|
+
## Stories
|
|
253
|
+
|
|
254
|
+
| Story | Title | Effort | Status |
|
|
255
|
+
|-------|-------|--------|--------|
|
|
256
|
+
| {N}.1 | {title} | S | — |
|
|
257
|
+
| {N}.2 | {title} | M | — |
|
|
258
|
+
|
|
259
|
+
**Total:** {sum effort}
|
|
260
|
+
|
|
261
|
+
---
|
|
262
|
+
*Stories: `.planning/epics/stories/{N}.1.md` … `{N}.{last}.md`*
|
|
263
|
+
```
|
|
264
|
+
|
|
265
|
+
**For each story — write `.planning/epics/stories/{N}.{M}.md`:**
|
|
266
|
+
|
|
267
|
+
```markdown
|
|
268
|
+
# Story {N}.{M}: {Title}
|
|
269
|
+
|
|
270
|
+
**Epic:** EPIC-{N} — {Epic title}
|
|
271
|
+
**Persona:** {Full name + role}
|
|
272
|
+
**Effort:** {S | M}
|
|
273
|
+
**Status:** todo
|
|
274
|
+
**Linked issues:** {#123, #456 or none}
|
|
275
|
+
|
|
276
|
+
---
|
|
277
|
+
|
|
278
|
+
## User Story
|
|
279
|
+
|
|
280
|
+
As a {persona}, I want to {action} so that {outcome}.
|
|
281
|
+
|
|
282
|
+
## Acceptance Criteria
|
|
283
|
+
|
|
284
|
+
- [ ] {Criterion 1}
|
|
285
|
+
- [ ] {Criterion 2}
|
|
286
|
+
- [ ] {Criterion 3}
|
|
287
|
+
|
|
288
|
+
## Out of Scope
|
|
289
|
+
|
|
290
|
+
- {Exclusion} — {why}
|
|
291
|
+
|
|
292
|
+
## Dev Notes
|
|
293
|
+
|
|
294
|
+
{Exact file paths, function names, line-level hints}
|
|
295
|
+
|
|
296
|
+
---
|
|
297
|
+
*Start: `/rihal:dev-story {N}.{M}`*
|
|
298
|
+
```
|
|
299
|
+
|
|
300
|
+
## Step 5 — Write INDEX.md
|
|
301
|
+
|
|
302
|
+
`.planning/epics/INDEX.md` — master overview, kept under 60 lines:
|
|
303
|
+
|
|
304
|
+
```markdown
|
|
305
|
+
# Epic Index
|
|
306
|
+
|
|
307
|
+
Generated: {ISO date} | Source: {input filename}
|
|
308
|
+
|
|
309
|
+
## Epics
|
|
310
|
+
|
|
311
|
+
| Epic | Title | Phase | Stories | Effort | Depends on |
|
|
312
|
+
|------|-------|-------|---------|--------|------------|
|
|
313
|
+
| EPIC-01 | {title} | investigation | 4 | ~1.5w | — |
|
|
314
|
+
| EPIC-02 | {title} | implementation | 3 | ~2w | EPIC-01 |
|
|
315
|
+
|
|
316
|
+
**Total effort:** {sum}
|
|
317
|
+
|
|
318
|
+
## All Stories
|
|
319
|
+
|
|
320
|
+
| Story | Title | Effort | Status | Issues |
|
|
321
|
+
|-------|-------|--------|--------|--------|
|
|
322
|
+
| 1.1 | {title} | S | todo | #1959 |
|
|
323
|
+
| 1.2 | {title} | M | todo | #1909 |
|
|
324
|
+
| 2.1 | {title} | M | todo | — |
|
|
325
|
+
|
|
326
|
+
---
|
|
327
|
+
*Update story status: edit `.planning/epics/stories/{N}.{M}.md` → change `Status:` line*
|
|
328
|
+
*Next: `/rihal:sprint-planning` or `/rihal:dev-story {N}.{M}`*
|
|
329
|
+
```
|
|
330
|
+
|
|
331
|
+
## Step 6 — Commit
|
|
332
|
+
|
|
333
|
+
```bash
|
|
334
|
+
git add .planning/epics/
|
|
335
|
+
git commit -m "feat(epics): generate epic structure from $(basename $INPUT_FILE)"
|
|
336
|
+
```
|
|
337
|
+
|
|
338
|
+
Print summary:
|
|
339
|
+
|
|
340
|
+
```
|
|
341
|
+
Epic structure generated
|
|
342
|
+
|
|
343
|
+
Epics: {count} files in .planning/epics/
|
|
344
|
+
Stories: {count} files in .planning/epics/stories/
|
|
345
|
+
Index: .planning/epics/INDEX.md
|
|
346
|
+
Effort: ~{weeks} total
|
|
347
|
+
|
|
348
|
+
Next:
|
|
349
|
+
/rihal:sprint-planning organise into sprints
|
|
350
|
+
/rihal:dev-story {N}.{M} start working on a story
|
|
351
|
+
```
|
|
352
|
+
|
|
353
|
+
## Errors
|
|
354
|
+
|
|
355
|
+
- **Input file not found:** print error and exit
|
|
356
|
+
- **Roadmapper returns invalid JSON:** ask roadmapper to fix and re-run
|
|
357
|
+
- **Fewer than 3 epics:** warn and ask roadmapper to expand
|
|
358
|
+
- **Story missing acceptance criteria:** mark with ⚠️ and ask roadmapper to add
|
|
359
|
+
|
|
360
|
+
## Success Criteria
|
|
361
|
+
|
|
362
|
+
- [ ] Task completed as requested
|
|
363
|
+
- [ ] Output saved or reported
|
|
364
|
+
- [ ] State updated if necessary
|
|
365
|
+
- [ ] No errors encountered
|
|
366
|
+
|
|
367
|
+
## On Error
|
|
368
|
+
|
|
369
|
+
If arguments are invalid, missing files, or subagent fails:
|
|
370
|
+
- Validate inputs match expected format
|
|
371
|
+
- Check that required files exist
|
|
372
|
+
- Retry with clearer arguments or report the specific error to the user
|
|
373
|
+
|
|
@@ -0,0 +1,297 @@
|
|
|
1
|
+
# Workflow: rihal:create-story
|
|
2
|
+
|
|
3
|
+
<purpose>
|
|
4
|
+
Convert a single story from an EPIC file into a self-contained STORY.md file. This story is ready for `/rihal:dev-story` to be wrapped for AI-coder execution. Entry is gated by checklist-story-draft.md.
|
|
5
|
+
</purpose>
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
## Step 0 — Usage check
|
|
9
|
+
|
|
10
|
+
If `$ARGUMENTS` is empty or contains only `--help` or `-h`:
|
|
11
|
+
|
|
12
|
+
```
|
|
13
|
+
/rihal:create-story <argument-here>
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
**Examples:**
|
|
17
|
+
```
|
|
18
|
+
/rihal:create-story example 1
|
|
19
|
+
/rihal:create-story example 2
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
STOP — do not proceed.
|
|
23
|
+
|
|
24
|
+
## Step 0 — Validation
|
|
25
|
+
|
|
26
|
+
**If no arguments:**
|
|
27
|
+
|
|
28
|
+
```
|
|
29
|
+
Usage: /rihal:create-story <EPIC-file.md> [--story <id>]
|
|
30
|
+
|
|
31
|
+
Examples:
|
|
32
|
+
/rihal:create-story .planning/epics/EPIC-01.md
|
|
33
|
+
/rihal:create-story .planning/epics/EPIC-01.md --story EPIC-01.1
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Stop and wait for arguments.
|
|
37
|
+
|
|
38
|
+
**Validate input file exists:**
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
if [[ ! -f "$EPIC_FILE" ]]; then
|
|
42
|
+
echo "Error: File not found: $EPIC_FILE"
|
|
43
|
+
exit 1
|
|
44
|
+
fi
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
**Parse flags:**
|
|
48
|
+
|
|
49
|
+
- `--story` (optional): specific story ID to extract (e.g., `EPIC-01.1`). If omitted, list stories and ask user to pick one.
|
|
50
|
+
|
|
51
|
+
## Step 1 — List Stories & Pick One
|
|
52
|
+
|
|
53
|
+
Read the EPIC file and extract all story IDs and titles:
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
STORIES=$(grep -E "^## Story" "$EPIC_FILE" | sed 's/^## Story //' | head -1 -c 20)
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
If `--story` flag not provided, ask the user to pick:
|
|
60
|
+
|
|
61
|
+
```
|
|
62
|
+
Which story from this epic?
|
|
63
|
+
|
|
64
|
+
- EPIC-01.1: {Title}
|
|
65
|
+
- EPIC-01.2: {Title}
|
|
66
|
+
- EPIC-01.3: {Title}
|
|
67
|
+
|
|
68
|
+
Select by ID:
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Parse the selected story ID.
|
|
72
|
+
|
|
73
|
+
## Step 2 — Extract Story Content
|
|
74
|
+
|
|
75
|
+
Read the EPIC file and extract the chosen story:
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
STORY_ID="EPIC-01.1"
|
|
79
|
+
STORY_SECTION=$(sed -n "/^## Story $STORY_ID/,/^## Story /p" "$EPIC_FILE" | head -n -1)
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
Extract fields from the story markdown:
|
|
83
|
+
|
|
84
|
+
```bash
|
|
85
|
+
STORY_TITLE=$(echo "$STORY_SECTION" | grep "^## Story" | sed "s/^## Story [^ ]* //")
|
|
86
|
+
PERSONA=$(echo "$STORY_SECTION" | grep "^**Persona:**" | sed "s/^**Persona:** //")
|
|
87
|
+
ACTION=$(echo "$STORY_SECTION" | grep "^**Action:**" | sed "s/^**Action:** //")
|
|
88
|
+
CRITERIA=$(echo "$STORY_SECTION" | sed -n '/^### Acceptance Criteria/,/^### /p' | grep "^- " | sed 's/^- \[ \] //')
|
|
89
|
+
OUT_OF_SCOPE=$(echo "$STORY_SECTION" | sed -n '/^### Out of Scope/,/^### /p' | grep "^- " | sed 's/^- //')
|
|
90
|
+
EFFORT=$(echo "$STORY_SECTION" | grep "^**Estimate:**" | sed "s/^**Estimate:** //")
|
|
91
|
+
RATIONALE=$(echo "$STORY_SECTION" | grep -A1 "^**Rationale:**" | tail -1)
|
|
92
|
+
DEV_NOTES=$(echo "$STORY_SECTION" | sed -n '/^### Dev Notes/,/^---$/p' | sed '1d;$d')
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
## Step 3 — Load References
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
@.rihal/references/checklist-story-draft.md
|
|
99
|
+
@.rihal/references/checklist-story-dod.md
|
|
100
|
+
@.rihal/references/commit-conventions.md
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
## Step 4 — Check Entry Gate
|
|
104
|
+
|
|
105
|
+
Run story through checklist-story-draft.md validation:
|
|
106
|
+
|
|
107
|
+
- ✓ Persona named
|
|
108
|
+
- ✓ Action/outcome specified
|
|
109
|
+
- ✓ 3+ acceptance criteria
|
|
110
|
+
- ✓ Out-of-scope listed
|
|
111
|
+
- ✓ Effort estimated
|
|
112
|
+
|
|
113
|
+
If any check fails, print error and stop:
|
|
114
|
+
|
|
115
|
+
```
|
|
116
|
+
⚠️ Story does not pass draft checklist:
|
|
117
|
+
|
|
118
|
+
Missing: {failed checks}
|
|
119
|
+
|
|
120
|
+
Return to the EPIC file and fix before creating STORY.md.
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
Only proceed if ALL checks pass.
|
|
124
|
+
|
|
125
|
+
## Step 5 — Create STORY.md
|
|
126
|
+
|
|
127
|
+
Create `.planning/stories/{story-id}.md`:
|
|
128
|
+
|
|
129
|
+
```bash
|
|
130
|
+
mkdir -p .planning/stories
|
|
131
|
+
STORY_FILE=".planning/stories/${STORY_ID}.md"
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
Generate file with template:
|
|
135
|
+
|
|
136
|
+
```markdown
|
|
137
|
+
# Story: {Title}
|
|
138
|
+
|
|
139
|
+
**Epic:** {EPIC-XX} — {Epic title}
|
|
140
|
+
|
|
141
|
+
**ID:** {STORY_ID}
|
|
142
|
+
|
|
143
|
+
**Status:** Draft
|
|
144
|
+
|
|
145
|
+
---
|
|
146
|
+
|
|
147
|
+
## User Story
|
|
148
|
+
|
|
149
|
+
**Persona:** {Named persona with role}
|
|
150
|
+
|
|
151
|
+
**Action:** {As a X, I want to Y so that Z}
|
|
152
|
+
|
|
153
|
+
**Value:** {Expected business impact}
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
157
|
+
## Acceptance Criteria
|
|
158
|
+
|
|
159
|
+
- [ ] {Criterion 1 — testable condition}
|
|
160
|
+
- [ ] {Criterion 2 — testable condition}
|
|
161
|
+
- [ ] {Criterion 3 — testable condition}
|
|
162
|
+
|
|
163
|
+
Each criterion can be verified without implementation ambiguity.
|
|
164
|
+
|
|
165
|
+
---
|
|
166
|
+
|
|
167
|
+
## Out of Scope
|
|
168
|
+
|
|
169
|
+
- {What this story does NOT do}
|
|
170
|
+
- {What's in a future story}
|
|
171
|
+
|
|
172
|
+
Prevents scope creep during development.
|
|
173
|
+
|
|
174
|
+
---
|
|
175
|
+
|
|
176
|
+
## Effort Estimate
|
|
177
|
+
|
|
178
|
+
**Size:** {S | M | L}
|
|
179
|
+
|
|
180
|
+
**Why:** {Rationale from epic}
|
|
181
|
+
|
|
182
|
+
**Confidence:** {High | Medium | Low}
|
|
183
|
+
|
|
184
|
+
---
|
|
185
|
+
|
|
186
|
+
## Dev Notes
|
|
187
|
+
|
|
188
|
+
### Technical Approach
|
|
189
|
+
|
|
190
|
+
{Implementation hints from epic}
|
|
191
|
+
|
|
192
|
+
### Known Risks
|
|
193
|
+
|
|
194
|
+
- {Risk 1 and mitigation}
|
|
195
|
+
- {Risk 2 and mitigation}
|
|
196
|
+
|
|
197
|
+
### Dependencies
|
|
198
|
+
|
|
199
|
+
- {What must be done first}
|
|
200
|
+
- {External blockers}
|
|
201
|
+
|
|
202
|
+
### Testing Strategy
|
|
203
|
+
|
|
204
|
+
From **Definition of Done**:
|
|
205
|
+
- [ ] All acceptance criteria tested and passing
|
|
206
|
+
- [ ] Edge cases: {list specific edge cases relevant to this story}
|
|
207
|
+
- [ ] Tests written: {unit tests for X, integration tests for Y}
|
|
208
|
+
- [ ] Coverage: {target coverage %}
|
|
209
|
+
|
|
210
|
+
---
|
|
211
|
+
|
|
212
|
+
## Definition of Done
|
|
213
|
+
|
|
214
|
+
Use checklist-story-dod.md. A story is "Done" when:
|
|
215
|
+
|
|
216
|
+
### Acceptance Criteria Verification
|
|
217
|
+
- [ ] All {count} acceptance criteria met
|
|
218
|
+
- [ ] Edge cases handled
|
|
219
|
+
- [ ] No known stubs or TODOs left
|
|
220
|
+
|
|
221
|
+
### Testing
|
|
222
|
+
- [ ] Tests written for all new logic
|
|
223
|
+
- [ ] All tests passing
|
|
224
|
+
- [ ] Coverage adequate (80%+ on modified code)
|
|
225
|
+
|
|
226
|
+
### Code Quality
|
|
227
|
+
- [ ] No lint errors
|
|
228
|
+
- [ ] Follows project patterns
|
|
229
|
+
- [ ] Imports all correct
|
|
230
|
+
|
|
231
|
+
### Commits
|
|
232
|
+
- [ ] Conventional Commits format
|
|
233
|
+
- [ ] No AI attribution
|
|
234
|
+
- [ ] Meaningful messages
|
|
235
|
+
|
|
236
|
+
### Handoff
|
|
237
|
+
- [ ] Story summary written
|
|
238
|
+
- [ ] No blockers remain
|
|
239
|
+
|
|
240
|
+
---
|
|
241
|
+
|
|
242
|
+
## Workflow
|
|
243
|
+
|
|
244
|
+
**Before you start:** Review this story, dev notes, and dependencies.
|
|
245
|
+
|
|
246
|
+
**During development:** See `/rihal:dev-story` to wrap this STORY.md for AI-coder execution.
|
|
247
|
+
|
|
248
|
+
**After complete:** Run checklist-story-dod.md to verify done.
|
|
249
|
+
|
|
250
|
+
---
|
|
251
|
+
|
|
252
|
+
**Created:** {ISO date}
|
|
253
|
+
|
|
254
|
+
**Ready for:** /rihal:dev-story → /rihal:code → Definition of Done verification
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
## Step 6 — Commit Story File
|
|
258
|
+
|
|
259
|
+
```bash
|
|
260
|
+
git add "$STORY_FILE"
|
|
261
|
+
git commit -m "docs(story): create story $STORY_ID from epic"
|
|
262
|
+
```
|
|
263
|
+
|
|
264
|
+
Print:
|
|
265
|
+
|
|
266
|
+
```
|
|
267
|
+
📖 Story file created
|
|
268
|
+
|
|
269
|
+
Location: {path to STORY.md}
|
|
270
|
+
ID: {STORY_ID}
|
|
271
|
+
Title: {Story title}
|
|
272
|
+
Effort: {Estimate}
|
|
273
|
+
Persona: {Persona}
|
|
274
|
+
|
|
275
|
+
Next step: /rihal:dev-story .planning/stories/{story-id}.md
|
|
276
|
+
```
|
|
277
|
+
|
|
278
|
+
## Errors
|
|
279
|
+
|
|
280
|
+
- **Epic file not found:** print error and exit
|
|
281
|
+
- **Story ID not found in epic:** print available IDs and ask user to pick again
|
|
282
|
+
- **Story fails draft checklist:** print failures and ask user to return to epic
|
|
283
|
+
|
|
284
|
+
## Success Criteria
|
|
285
|
+
|
|
286
|
+
- [ ] Task completed as requested
|
|
287
|
+
- [ ] Output saved or reported
|
|
288
|
+
- [ ] State updated if necessary
|
|
289
|
+
- [ ] No errors encountered
|
|
290
|
+
|
|
291
|
+
## On Error
|
|
292
|
+
|
|
293
|
+
If arguments are invalid, missing files, or subagent fails:
|
|
294
|
+
- Validate inputs match expected format
|
|
295
|
+
- Check that required files exist
|
|
296
|
+
- Retry with clearer arguments or report the specific error to the user
|
|
297
|
+
|