@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,351 @@
|
|
|
1
|
+
<purpose>
|
|
2
|
+
Generate unit and E2E tests for a completed phase based on its SUMMARY.md, CONTEXT.md, and implementation. Classifies each changed file into TDD (unit), E2E (browser), or Skip categories, presents a test plan for user approval, then generates tests following RED-GREEN conventions.
|
|
3
|
+
|
|
4
|
+
Users currently hand-craft `/rihal:quick` prompts for test generation after each phase. This workflow standardizes the process with proper classification, quality gates, and gap reporting.
|
|
5
|
+
</purpose>
|
|
6
|
+
|
|
7
|
+
<required_reading>
|
|
8
|
+
Read all files referenced by the invoking prompt's execution_context before starting.
|
|
9
|
+
</required_reading>
|
|
10
|
+
|
|
11
|
+
<process>
|
|
12
|
+
|
|
13
|
+
<step name="parse_arguments">
|
|
14
|
+
Parse `$ARGUMENTS` for:
|
|
15
|
+
- Phase number (integer, decimal, or letter-suffix) → store as `$PHASE_ARG`
|
|
16
|
+
- Remaining text after phase number → store as `$EXTRA_INSTRUCTIONS` (optional)
|
|
17
|
+
|
|
18
|
+
Example: `/rihal:add-tests 12 focus on edge cases` → `$PHASE_ARG=12`, `$EXTRA_INSTRUCTIONS="focus on edge cases"`
|
|
19
|
+
|
|
20
|
+
If no phase argument provided:
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
ERROR: Phase number required
|
|
24
|
+
Usage: /rihal:add-tests <phase> [additional instructions]
|
|
25
|
+
Example: /rihal:add-tests 12
|
|
26
|
+
Example: /rihal:add-tests 12 focus on edge cases in the pricing module
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
Exit.
|
|
30
|
+
</step>
|
|
31
|
+
|
|
32
|
+
<step name="init_context">
|
|
33
|
+
Load phase operation context:
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
INIT=$(node ".rihal/bin/rihal-tools.cjs" init phase-op "${PHASE_ARG}")
|
|
37
|
+
if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
Extract from init JSON: `phase_dir`, `phase_number`, `phase_name`.
|
|
41
|
+
|
|
42
|
+
Verify the phase directory exists. If not:
|
|
43
|
+
```
|
|
44
|
+
ERROR: Phase directory not found for phase ${PHASE_ARG}
|
|
45
|
+
Ensure the phase exists in .planning/phases/
|
|
46
|
+
```
|
|
47
|
+
Exit.
|
|
48
|
+
|
|
49
|
+
Read the phase artifacts (in order of priority):
|
|
50
|
+
1. `${phase_dir}/*-SUMMARY.md` — what was implemented, files changed
|
|
51
|
+
2. `${phase_dir}/CONTEXT.md` — acceptance criteria, decisions
|
|
52
|
+
3. `${phase_dir}/*-VERIFICATION.md` — user-verified scenarios (if UAT was done)
|
|
53
|
+
|
|
54
|
+
If no SUMMARY.md exists:
|
|
55
|
+
```
|
|
56
|
+
ERROR: No SUMMARY.md found for phase ${PHASE_ARG}
|
|
57
|
+
This command works on completed phases. Run /rihal:execute-phase first.
|
|
58
|
+
```
|
|
59
|
+
Exit.
|
|
60
|
+
|
|
61
|
+
Present banner:
|
|
62
|
+
```
|
|
63
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
64
|
+
Rihal ► ADD TESTS — Phase ${phase_number}: ${phase_name}
|
|
65
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
66
|
+
```
|
|
67
|
+
</step>
|
|
68
|
+
|
|
69
|
+
<step name="analyze_implementation">
|
|
70
|
+
Extract the list of files modified by the phase from SUMMARY.md ("Files Changed" or equivalent section).
|
|
71
|
+
|
|
72
|
+
For each file, classify into one of three categories:
|
|
73
|
+
|
|
74
|
+
| Category | Criteria | Test Type |
|
|
75
|
+
|----------|----------|-----------|
|
|
76
|
+
| **TDD** | Pure functions where `expect(fn(input)).toBe(output)` is writable | Unit tests |
|
|
77
|
+
| **E2E** | UI behavior verifiable by browser automation | Playwright/E2E tests |
|
|
78
|
+
| **Skip** | Not meaningfully testable or already covered | None |
|
|
79
|
+
|
|
80
|
+
**TDD classification — apply when:**
|
|
81
|
+
- Business logic: calculations, pricing, tax rules, validation
|
|
82
|
+
- Data transformations: mapping, filtering, aggregation, formatting
|
|
83
|
+
- Parsers: CSV, JSON, XML, custom format parsing
|
|
84
|
+
- Validators: input validation, schema validation, business rules
|
|
85
|
+
- State machines: status transitions, workflow steps
|
|
86
|
+
- Utilities: string manipulation, date handling, number formatting
|
|
87
|
+
|
|
88
|
+
**E2E classification — apply when:**
|
|
89
|
+
- Keyboard shortcuts: key bindings, modifier keys, chord sequences
|
|
90
|
+
- Navigation: page transitions, routing, breadcrumbs, back/forward
|
|
91
|
+
- Form interactions: submit, validation errors, field focus, autocomplete
|
|
92
|
+
- Selection: row selection, multi-select, shift-click ranges
|
|
93
|
+
- Drag and drop: reordering, moving between containers
|
|
94
|
+
- Modal dialogs: open, close, confirm, cancel
|
|
95
|
+
- Data grids: sorting, filtering, inline editing, column resize
|
|
96
|
+
|
|
97
|
+
**Skip classification — apply when:**
|
|
98
|
+
- UI layout/styling: CSS classes, visual appearance, responsive breakpoints
|
|
99
|
+
- Configuration: config files, environment variables, feature flags
|
|
100
|
+
- Glue code: dependency injection setup, middleware registration, routing tables
|
|
101
|
+
- Migrations: database migrations, schema changes
|
|
102
|
+
- Simple CRUD: basic create/read/update/delete with no business logic
|
|
103
|
+
- Type definitions: records, DTOs, interfaces with no logic
|
|
104
|
+
|
|
105
|
+
Read each file to verify classification. Don't classify based on filename alone.
|
|
106
|
+
</step>
|
|
107
|
+
|
|
108
|
+
<step name="present_classification">
|
|
109
|
+
Present the classification to the user for confirmation before proceeding:
|
|
110
|
+
|
|
111
|
+
```
|
|
112
|
+
AskUserQuestion(
|
|
113
|
+
header: "Test Classification",
|
|
114
|
+
question: |
|
|
115
|
+
## Files classified for testing
|
|
116
|
+
|
|
117
|
+
### TDD (Unit Tests) — {N} files
|
|
118
|
+
{list of files with brief reason}
|
|
119
|
+
|
|
120
|
+
### E2E (Browser Tests) — {M} files
|
|
121
|
+
{list of files with brief reason}
|
|
122
|
+
|
|
123
|
+
### Skip — {K} files
|
|
124
|
+
{list of files with brief reason}
|
|
125
|
+
|
|
126
|
+
{if $EXTRA_INSTRUCTIONS: "Additional instructions: ${EXTRA_INSTRUCTIONS}"}
|
|
127
|
+
|
|
128
|
+
How would you like to proceed?
|
|
129
|
+
options:
|
|
130
|
+
- "Approve and generate test plan"
|
|
131
|
+
- "Adjust classification (I'll specify changes)"
|
|
132
|
+
- "Cancel"
|
|
133
|
+
)
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
If user selects "Adjust classification": apply their changes and re-present.
|
|
137
|
+
If user selects "Cancel": exit gracefully.
|
|
138
|
+
</step>
|
|
139
|
+
|
|
140
|
+
<step name="discover_test_structure">
|
|
141
|
+
Before generating the test plan, discover the project's existing test structure:
|
|
142
|
+
|
|
143
|
+
```bash
|
|
144
|
+
# Find existing test directories
|
|
145
|
+
find . -type d -name "*test*" -o -name "*spec*" -o -name "*__tests__*" 2>/dev/null | head -20
|
|
146
|
+
# Find existing test files for convention matching
|
|
147
|
+
find . -type f \( -name "*.test.*" -o -name "*.spec.*" -o -name "*Tests.fs" -o -name "*Test.fs" \) 2>/dev/null | head -20
|
|
148
|
+
# Check for test runners
|
|
149
|
+
ls package.json *.sln 2>/dev/null || true
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
Identify:
|
|
153
|
+
- Test directory structure (where unit tests live, where E2E tests live)
|
|
154
|
+
- Naming conventions (`.test.ts`, `.spec.ts`, `*Tests.fs`, etc.)
|
|
155
|
+
- Test runner commands (how to execute unit tests, how to execute E2E tests)
|
|
156
|
+
- Test framework (xUnit, NUnit, Jest, Playwright, etc.)
|
|
157
|
+
|
|
158
|
+
If test structure is ambiguous, ask the user:
|
|
159
|
+
```
|
|
160
|
+
AskUserQuestion(
|
|
161
|
+
header: "Test Structure",
|
|
162
|
+
question: "I found multiple test locations. Where should I create tests?",
|
|
163
|
+
options: [list discovered locations]
|
|
164
|
+
)
|
|
165
|
+
```
|
|
166
|
+
</step>
|
|
167
|
+
|
|
168
|
+
<step name="generate_test_plan">
|
|
169
|
+
For each approved file, create a detailed test plan.
|
|
170
|
+
|
|
171
|
+
**For TDD files**, plan tests following RED-GREEN-REFACTOR:
|
|
172
|
+
1. Identify testable functions/methods in the file
|
|
173
|
+
2. For each function: list input scenarios, expected outputs, edge cases
|
|
174
|
+
3. Note: since code already exists, tests may pass immediately — that's OK, but verify they test the RIGHT behavior
|
|
175
|
+
|
|
176
|
+
**For E2E files**, plan tests following RED-GREEN gates:
|
|
177
|
+
1. Identify user scenarios from CONTEXT.md/VERIFICATION.md
|
|
178
|
+
2. For each scenario: describe the user action, expected outcome, assertions
|
|
179
|
+
3. Note: RED gate means confirming the test would fail if the feature were broken
|
|
180
|
+
|
|
181
|
+
Present the complete test plan:
|
|
182
|
+
|
|
183
|
+
```
|
|
184
|
+
AskUserQuestion(
|
|
185
|
+
header: "Test Plan",
|
|
186
|
+
question: |
|
|
187
|
+
## Test Generation Plan
|
|
188
|
+
|
|
189
|
+
### Unit Tests ({N} tests across {M} files)
|
|
190
|
+
{for each file: test file path, list of test cases}
|
|
191
|
+
|
|
192
|
+
### E2E Tests ({P} tests across {Q} files)
|
|
193
|
+
{for each file: test file path, list of test scenarios}
|
|
194
|
+
|
|
195
|
+
### Test Commands
|
|
196
|
+
- Unit: {discovered test command}
|
|
197
|
+
- E2E: {discovered e2e command}
|
|
198
|
+
|
|
199
|
+
Ready to generate?
|
|
200
|
+
options:
|
|
201
|
+
- "Generate all"
|
|
202
|
+
- "Cherry-pick (I'll specify which)"
|
|
203
|
+
- "Adjust plan"
|
|
204
|
+
)
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
If "Cherry-pick": ask user which tests to include.
|
|
208
|
+
If "Adjust plan": apply changes and re-present.
|
|
209
|
+
</step>
|
|
210
|
+
|
|
211
|
+
<step name="execute_tdd_generation">
|
|
212
|
+
For each approved TDD test:
|
|
213
|
+
|
|
214
|
+
1. **Create test file** following discovered project conventions (directory, naming, imports)
|
|
215
|
+
|
|
216
|
+
2. **Write test** with clear arrange/act/assert structure:
|
|
217
|
+
```
|
|
218
|
+
// Arrange — set up inputs and expected outputs
|
|
219
|
+
// Act — call the function under test
|
|
220
|
+
// Assert — verify the output matches expectations
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
3. **Run the test**:
|
|
224
|
+
```bash
|
|
225
|
+
{discovered test command}
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
4. **Evaluate result:**
|
|
229
|
+
- **Test passes**: Good — the implementation satisfies the test. Verify the test checks meaningful behavior (not just that it compiles).
|
|
230
|
+
- **Test fails with assertion error**: This may be a genuine bug discovered by the test. Flag it:
|
|
231
|
+
```
|
|
232
|
+
⚠️ Potential bug found: {test name}
|
|
233
|
+
Expected: {expected}
|
|
234
|
+
Actual: {actual}
|
|
235
|
+
File: {implementation file}
|
|
236
|
+
```
|
|
237
|
+
Do NOT fix the implementation — this is a test-generation command, not a fix command. Record the finding.
|
|
238
|
+
- **Test fails with error (import, syntax, etc.)**: This is a test error. Fix the test and re-run.
|
|
239
|
+
</step>
|
|
240
|
+
|
|
241
|
+
<step name="execute_e2e_generation">
|
|
242
|
+
For each approved E2E test:
|
|
243
|
+
|
|
244
|
+
1. **Check for existing tests** covering the same scenario:
|
|
245
|
+
```bash
|
|
246
|
+
grep -r "{scenario keyword}" {e2e test directory} 2>/dev/null || true
|
|
247
|
+
```
|
|
248
|
+
If found, extend rather than duplicate.
|
|
249
|
+
|
|
250
|
+
2. **Create test file** targeting the user scenario from CONTEXT.md/VERIFICATION.md
|
|
251
|
+
|
|
252
|
+
3. **Run the E2E test**:
|
|
253
|
+
```bash
|
|
254
|
+
{discovered e2e command}
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
4. **Evaluate result:**
|
|
258
|
+
- **GREEN (passes)**: Record success
|
|
259
|
+
- **RED (fails)**: Determine if it's a test issue or a genuine application bug. Flag bugs:
|
|
260
|
+
```
|
|
261
|
+
⚠️ E2E failure: {test name}
|
|
262
|
+
Scenario: {description}
|
|
263
|
+
Error: {error message}
|
|
264
|
+
```
|
|
265
|
+
- **Cannot run**: Report blocker. Do NOT mark as complete.
|
|
266
|
+
```
|
|
267
|
+
🛑 E2E blocker: {reason tests cannot run}
|
|
268
|
+
```
|
|
269
|
+
|
|
270
|
+
**No-skip rule:** If E2E tests cannot execute (missing dependencies, environment issues), report the blocker and mark the test as incomplete. Never mark success without actually running the test.
|
|
271
|
+
</step>
|
|
272
|
+
|
|
273
|
+
<step name="summary_and_commit">
|
|
274
|
+
Create a test coverage report and present to user:
|
|
275
|
+
|
|
276
|
+
```
|
|
277
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
278
|
+
Rihal ► TEST GENERATION COMPLETE
|
|
279
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
280
|
+
|
|
281
|
+
## Results
|
|
282
|
+
|
|
283
|
+
| Category | Generated | Passing | Failing | Blocked |
|
|
284
|
+
|----------|-----------|---------|---------|---------|
|
|
285
|
+
| Unit | {N} | {n1} | {n2} | {n3} |
|
|
286
|
+
| E2E | {M} | {m1} | {m2} | {m3} |
|
|
287
|
+
|
|
288
|
+
## Files Created/Modified
|
|
289
|
+
{list of test files with paths}
|
|
290
|
+
|
|
291
|
+
## Coverage Gaps
|
|
292
|
+
{areas that couldn't be tested and why}
|
|
293
|
+
|
|
294
|
+
## Bugs Discovered
|
|
295
|
+
{any assertion failures that indicate implementation bugs}
|
|
296
|
+
```
|
|
297
|
+
|
|
298
|
+
Record test generation in project state:
|
|
299
|
+
```bash
|
|
300
|
+
node ".rihal/bin/rihal-tools.cjs" state-snapshot
|
|
301
|
+
```
|
|
302
|
+
|
|
303
|
+
If there are passing tests to commit:
|
|
304
|
+
|
|
305
|
+
```bash
|
|
306
|
+
git add {test files}
|
|
307
|
+
git commit -m "test(phase-${phase_number}): add unit and E2E tests from add-tests command"
|
|
308
|
+
```
|
|
309
|
+
|
|
310
|
+
Present next steps:
|
|
311
|
+
|
|
312
|
+
```
|
|
313
|
+
---
|
|
314
|
+
|
|
315
|
+
## ▶ Next Up
|
|
316
|
+
|
|
317
|
+
{if bugs discovered:}
|
|
318
|
+
**Fix discovered bugs:** `/rihal:quick fix the {N} test failures discovered in phase ${phase_number}`
|
|
319
|
+
|
|
320
|
+
{if blocked tests:}
|
|
321
|
+
**Resolve test blockers:** {description of what's needed}
|
|
322
|
+
|
|
323
|
+
{otherwise:}
|
|
324
|
+
**All tests passing!** Phase ${phase_number} is fully tested.
|
|
325
|
+
|
|
326
|
+
---
|
|
327
|
+
|
|
328
|
+
**Also available:**
|
|
329
|
+
- `/rihal:add-tests {next_phase}` — test another phase
|
|
330
|
+
- `/rihal:verify-work {phase_number}` — run UAT verification
|
|
331
|
+
|
|
332
|
+
---
|
|
333
|
+
```
|
|
334
|
+
</step>
|
|
335
|
+
|
|
336
|
+
</process>
|
|
337
|
+
|
|
338
|
+
<success_criteria>
|
|
339
|
+
- [ ] Phase artifacts loaded (SUMMARY.md, CONTEXT.md, optionally VERIFICATION.md)
|
|
340
|
+
- [ ] All changed files classified into TDD/E2E/Skip categories
|
|
341
|
+
- [ ] Classification presented to user and approved
|
|
342
|
+
- [ ] Project test structure discovered (directories, conventions, runners)
|
|
343
|
+
- [ ] Test plan presented to user and approved
|
|
344
|
+
- [ ] TDD tests generated with arrange/act/assert structure
|
|
345
|
+
- [ ] E2E tests generated targeting user scenarios
|
|
346
|
+
- [ ] All tests executed — no untested tests marked as passing
|
|
347
|
+
- [ ] Bugs discovered by tests flagged (not fixed)
|
|
348
|
+
- [ ] Test files committed with proper message
|
|
349
|
+
- [ ] Coverage gaps documented
|
|
350
|
+
- [ ] Next steps presented to user
|
|
351
|
+
</success_criteria>
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
<purpose>
|
|
2
|
+
Capture an idea, task, or issue that surfaces during a Rihal session as a structured note for later work. Enables "thought → capture → continue" flow without losing context.
|
|
3
|
+
</purpose>
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
## Step 0 — Usage check
|
|
7
|
+
|
|
8
|
+
If `$ARGUMENTS` is empty or contains only `--help` or `-h`:
|
|
9
|
+
|
|
10
|
+
```
|
|
11
|
+
/rihal:add-todo <argument-here>
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
**Examples:**
|
|
15
|
+
```
|
|
16
|
+
/rihal:add-todo example 1
|
|
17
|
+
/rihal:add-todo example 2
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
STOP — do not proceed.
|
|
21
|
+
|
|
22
|
+
<required_reading>
|
|
23
|
+
Read all files referenced by the invoking prompt's execution_context before starting.
|
|
24
|
+
</required_reading>
|
|
25
|
+
|
|
26
|
+
<process>
|
|
27
|
+
|
|
28
|
+
<step name="init_context">
|
|
29
|
+
Load todo context:
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
[ -d .rihal/todos ] || mkdir -p .rihal/todos/pending .rihal/todos/done
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
Ensure directories exist for organized todo capture.
|
|
36
|
+
</step>
|
|
37
|
+
|
|
38
|
+
<step name="extract_content">
|
|
39
|
+
**With arguments:** Use as the title/focus.
|
|
40
|
+
- `/rihal:add-todo Add auth token refresh` → title = "Add auth token refresh"
|
|
41
|
+
|
|
42
|
+
**Without arguments:** Analyze recent conversation to extract:
|
|
43
|
+
- The specific problem, idea, or task discussed
|
|
44
|
+
- Relevant file paths mentioned
|
|
45
|
+
- Technical details (error messages, line numbers, constraints)
|
|
46
|
+
|
|
47
|
+
Formulate:
|
|
48
|
+
- `title`: 3-10 word descriptive title (action verb preferred)
|
|
49
|
+
- `problem`: What's wrong or why this is needed
|
|
50
|
+
- `solution`: Approach hints or "TBD" if just an idea
|
|
51
|
+
- `files`: Relevant paths with line numbers from conversation
|
|
52
|
+
</step>
|
|
53
|
+
|
|
54
|
+
<step name="infer_area">
|
|
55
|
+
Infer area from file paths:
|
|
56
|
+
|
|
57
|
+
| Path pattern | Area |
|
|
58
|
+
|--------------|------|
|
|
59
|
+
| `src/api/*`, `api/*` | `api` |
|
|
60
|
+
| `src/components/*`, `src/ui/*` | `ui` |
|
|
61
|
+
| `src/auth/*`, `auth/*` | `auth` |
|
|
62
|
+
| `src/db/*`, `database/*` | `database` |
|
|
63
|
+
| `tests/*`, `__tests__/*` | `testing` |
|
|
64
|
+
| `docs/*` | `docs` |
|
|
65
|
+
| `.rihal/*` | `planning` |
|
|
66
|
+
| `scripts/*`, `bin/*` | `tooling` |
|
|
67
|
+
| No files or unclear | `general` |
|
|
68
|
+
|
|
69
|
+
Use existing area if similar match exists.
|
|
70
|
+
</step>
|
|
71
|
+
|
|
72
|
+
<step name="check_duplicates">
|
|
73
|
+
```bash
|
|
74
|
+
# Search for key words from title in existing todos
|
|
75
|
+
grep -l -i "[key words from title]" .rihal/todos/pending/*.md 2>/dev/null || true
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
If potential duplicate found:
|
|
79
|
+
1. Read the existing todo
|
|
80
|
+
2. Compare scope
|
|
81
|
+
|
|
82
|
+
If overlapping, ask user:
|
|
83
|
+
- "Similar todo exists: [title]. What would you like to do?"
|
|
84
|
+
- Options:
|
|
85
|
+
- "Skip" — keep existing todo
|
|
86
|
+
- "Replace" — update existing with new context
|
|
87
|
+
- "Add anyway" — create as separate todo
|
|
88
|
+
</step>
|
|
89
|
+
|
|
90
|
+
<step name="create_file">
|
|
91
|
+
Generate slug for the title and write to `.rihal/todos/pending/{date}-{slug}.md`:
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
slug=$(echo "$title" | tr ' ' '-' | tr '[:upper:]' '[:lower:]')
|
|
95
|
+
date=$(date +%Y-%m-%d)
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
Write file with:
|
|
99
|
+
|
|
100
|
+
```markdown
|
|
101
|
+
---
|
|
102
|
+
created: [ISO timestamp]
|
|
103
|
+
title: [title]
|
|
104
|
+
area: [area]
|
|
105
|
+
files:
|
|
106
|
+
- [file:lines]
|
|
107
|
+
---
|
|
108
|
+
|
|
109
|
+
## Problem
|
|
110
|
+
|
|
111
|
+
[problem description - enough context for future agent to understand weeks later]
|
|
112
|
+
|
|
113
|
+
## Solution
|
|
114
|
+
|
|
115
|
+
[approach hints or "TBD"]
|
|
116
|
+
```
|
|
117
|
+
</step>
|
|
118
|
+
|
|
119
|
+
<step name="update_state">
|
|
120
|
+
If `.rihal/STATE.md` exists:
|
|
121
|
+
|
|
122
|
+
1. Count pending todos in .rihal/todos/pending/
|
|
123
|
+
2. Update "## Pending Todos" section (if exists)
|
|
124
|
+
</step>
|
|
125
|
+
|
|
126
|
+
<step name="git_commit">
|
|
127
|
+
Commit the todo and any updated state:
|
|
128
|
+
|
|
129
|
+
```bash
|
|
130
|
+
git add .rihal/todos/pending/ .rihal/STATE.md 2>/dev/null || true
|
|
131
|
+
git commit -m "docs: capture todo - $title" 2>/dev/null || true
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
Confirm: "Committed: docs: capture todo - [title]"
|
|
135
|
+
</step>
|
|
136
|
+
|
|
137
|
+
<step name="confirm">
|
|
138
|
+
```
|
|
139
|
+
Todo saved: .rihal/todos/pending/[filename]
|
|
140
|
+
|
|
141
|
+
[title]
|
|
142
|
+
Area: [area]
|
|
143
|
+
Files: [count] referenced
|
|
144
|
+
|
|
145
|
+
---
|
|
146
|
+
|
|
147
|
+
Would you like to:
|
|
148
|
+
|
|
149
|
+
1. Continue with current work
|
|
150
|
+
2. Add another todo
|
|
151
|
+
3. View all todos (/rihal:add-todo --list)
|
|
152
|
+
```
|
|
153
|
+
</step>
|
|
154
|
+
|
|
155
|
+
</process>
|
|
156
|
+
|
|
157
|
+
<success_criteria>
|
|
158
|
+
- [ ] Directory structure exists
|
|
159
|
+
- [ ] Todo file created with valid frontmatter
|
|
160
|
+
- [ ] Problem section has enough context for future agent
|
|
161
|
+
- [ ] No duplicates (checked and resolved)
|
|
162
|
+
- [ ] Area consistent with existing todos
|
|
163
|
+
- [ ] STATE.md updated if exists
|
|
164
|
+
- [ ] Todo committed to git
|
|
165
|
+
</success_criteria>
|
|
166
|
+
</process>
|
|
167
|
+
|
|
168
|
+
## Success Criteria
|
|
169
|
+
|
|
170
|
+
- [ ] Task completed as requested
|
|
171
|
+
- [ ] Output saved or reported
|
|
172
|
+
- [ ] State updated if necessary
|
|
173
|
+
- [ ] No errors encountered
|
|
174
|
+
|
|
175
|
+
## On Error
|
|
176
|
+
|
|
177
|
+
If arguments are invalid, missing files, or subagent fails:
|
|
178
|
+
- Validate inputs match expected format
|
|
179
|
+
- Check that required files exist
|
|
180
|
+
- Retry with clearer arguments or report the specific error to the user
|
|
181
|
+
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
# Workflow: rihal:analyze-dependencies
|
|
2
|
+
|
|
3
|
+
<purpose>
|
|
4
|
+
Analyze ROADMAP.md phases for dependency relationships before execution. Detect file overlap between phases, semantic API/data-flow dependencies, and suggest `Depends on` entries to prevent merge conflicts during parallel execution by `/rihal:manager`.
|
|
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:analyze-dependencies <argument-here>
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
**Examples:**
|
|
17
|
+
```
|
|
18
|
+
/rihal:analyze-dependencies example 1
|
|
19
|
+
/rihal:analyze-dependencies example 2
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
STOP — do not proceed.
|
|
23
|
+
|
|
24
|
+
## Step 0 — Load ROADMAP.md
|
|
25
|
+
|
|
26
|
+
**Action:** Read `.planning/ROADMAP.md` and extract all phases.
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
test -f .planning/ROADMAP.md || echo "No ROADMAP.md found — run /rihal:new-project first."
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
For each phase, capture:
|
|
33
|
+
- Phase number and name
|
|
34
|
+
- Scope/Goal description
|
|
35
|
+
- Files listed in `Files` or `files_modified` fields (if present)
|
|
36
|
+
- Existing `Depends on` field value
|
|
37
|
+
|
|
38
|
+
If file missing: exit with instructions to create project.
|
|
39
|
+
|
|
40
|
+
## Step 1 — Infer likely file modifications
|
|
41
|
+
|
|
42
|
+
**Action:** For each phase without explicit `files_modified`, analyze scope/goal and infer file domains.
|
|
43
|
+
|
|
44
|
+
Use heuristics to classify phases:
|
|
45
|
+
- **Database/schema phases** → migration files, schema definitions, model files
|
|
46
|
+
- **API/backend phases** → route files, controller files, service files, handler files
|
|
47
|
+
- **Frontend/UI phases** → component files, page files, style files
|
|
48
|
+
- **Auth phases** → middleware files, auth route files, session/token files
|
|
49
|
+
- **Config/infra phases** → config files, environment files, CI/CD files
|
|
50
|
+
- **Test phases** → test files, spec files, fixture files
|
|
51
|
+
- **Shared utility phases** → lib/utils files, shared type definitions
|
|
52
|
+
|
|
53
|
+
Group phases by inferred file domain (database, API, frontend, auth, config, shared).
|
|
54
|
+
|
|
55
|
+
## Step 2 — Detect dependency relationships
|
|
56
|
+
|
|
57
|
+
**Action:** For each pair of phases (A, B), check for three types of dependencies.
|
|
58
|
+
|
|
59
|
+
### File Overlap Detection
|
|
60
|
+
If phases A and B both modify files in same domain or same specific file, one must run before the other. The foundational phase runs first.
|
|
61
|
+
|
|
62
|
+
### Semantic Dependency Detection
|
|
63
|
+
Read each phase's scope/goal for patterns:
|
|
64
|
+
- Phase B mentions consuming/using something Phase A creates/implements
|
|
65
|
+
- Phase B references "API", "schema", "model", "endpoint", "interface" that Phase A builds
|
|
66
|
+
- Phase B says "after X complete", "once X built", "using the X from Phase N"
|
|
67
|
+
- Phase B extends code that Phase A establishes
|
|
68
|
+
|
|
69
|
+
### Data Flow Detection
|
|
70
|
+
- Phase A creates data structures/schemas → Phase B consumes/transforms them
|
|
71
|
+
- Phase A seeds/migrates database → Phase B reads from it
|
|
72
|
+
- Phase A exposes API contract → Phase B implements client for it
|
|
73
|
+
|
|
74
|
+
## Step 3 — Build dependency table
|
|
75
|
+
|
|
76
|
+
**Action:** Output dependency suggestions for each phase.
|
|
77
|
+
|
|
78
|
+
For each phase, print:
|
|
79
|
+
|
|
80
|
+
```
|
|
81
|
+
Phase N: <name>
|
|
82
|
+
Scope: <brief scope>
|
|
83
|
+
Likely touches: <inferred file domains>
|
|
84
|
+
|
|
85
|
+
Suggested dependencies:
|
|
86
|
+
→ Depends on: <Phase M> — reason: <overlap/semantic/data-flow explanation>
|
|
87
|
+
|
|
88
|
+
Current "Depends on": <existing value or "(none)">
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
For phase pairs with no detected dependency: "No dependency detected between Phase X and Phase Y."
|
|
92
|
+
|
|
93
|
+
## Step 4 — Summarize suggested changes
|
|
94
|
+
|
|
95
|
+
**Action:** Show consolidated diff of proposed ROADMAP.md `Depends on` changes.
|
|
96
|
+
|
|
97
|
+
```
|
|
98
|
+
Suggested ROADMAP.md updates:
|
|
99
|
+
Phase 3: add "Depends on: 1, 2" (file overlap: database schema)
|
|
100
|
+
Phase 5: add "Depends on: 3" (semantic: uses auth API from Phase 3)
|
|
101
|
+
Phase 4: no change needed (independent scope)
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
## Step 5 — Confirm and apply changes
|
|
105
|
+
|
|
106
|
+
**Action:** Ask user for confirmation and apply changes if approved.
|
|
107
|
+
|
|
108
|
+
```
|
|
109
|
+
Apply these Depends on suggestions to ROADMAP.md? (yes / no / edit)
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
Handle responses:
|
|
113
|
+
- **yes** — Write all suggested entries to ROADMAP.md. Confirm each write.
|
|
114
|
+
- **no** — Print suggestions as text only. User updates manually.
|
|
115
|
+
- **edit** — Present each suggestion individually with yes/no/skip per suggestion.
|
|
116
|
+
|
|
117
|
+
When writing:
|
|
118
|
+
- Locate phase entry and add or update `Depends on:` field
|
|
119
|
+
- Preserve all other phase content unchanged
|
|
120
|
+
- Do not reorder phases
|
|
121
|
+
|
|
122
|
+
After applying: "ROADMAP.md updated. Run `/rihal:manager` to execute phases in the correct order."
|
|
123
|
+
|
|
124
|
+
## Success Criteria
|
|
125
|
+
|
|
126
|
+
- [ ] All phases analyzed for dependencies
|
|
127
|
+
- [ ] File overlap detected correctly
|
|
128
|
+
- [ ] Semantic dependencies identified
|
|
129
|
+
- [ ] Data flow dependencies recognized
|
|
130
|
+
- [ ] Suggestions clear and justified
|
|
131
|
+
- [ ] User approval obtained before changes
|
|
132
|
+
- [ ] ROADMAP.md updated atomically
|
|
133
|
+
|
|
134
|
+
## On Error
|
|
135
|
+
|
|
136
|
+
- **ROADMAP.md missing:** Print error and suggest creating project first
|
|
137
|
+
- **Phase parsing fails:** Print which phase and why parsing failed
|
|
138
|
+
- **File write fails:** Print error and suggest manual update
|