@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,329 @@
|
|
|
1
|
+
# /// script
|
|
2
|
+
# requires-python = ">=3.10"
|
|
3
|
+
# dependencies = ["pyyaml"]
|
|
4
|
+
# ///
|
|
5
|
+
|
|
6
|
+
#!/usr/bin/env python3
|
|
7
|
+
"""Unit tests for rihal_init.py"""
|
|
8
|
+
|
|
9
|
+
import json
|
|
10
|
+
import os
|
|
11
|
+
import shutil
|
|
12
|
+
import sys
|
|
13
|
+
import tempfile
|
|
14
|
+
import unittest
|
|
15
|
+
from pathlib import Path
|
|
16
|
+
|
|
17
|
+
sys.path.insert(0, str(Path(__file__).parent.parent))
|
|
18
|
+
|
|
19
|
+
from rihal_init import (
|
|
20
|
+
find_project_root,
|
|
21
|
+
parse_var_specs,
|
|
22
|
+
resolve_project_root_placeholder,
|
|
23
|
+
expand_template,
|
|
24
|
+
apply_result_template,
|
|
25
|
+
load_module_yaml,
|
|
26
|
+
find_core_module_yaml,
|
|
27
|
+
find_target_module_yaml,
|
|
28
|
+
load_config_file,
|
|
29
|
+
load_module_config,
|
|
30
|
+
)
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
class TestFindProjectRoot(unittest.TestCase):
|
|
34
|
+
|
|
35
|
+
def test_finds_rihal_folder(self):
|
|
36
|
+
temp_dir = tempfile.mkdtemp()
|
|
37
|
+
try:
|
|
38
|
+
(Path(temp_dir) / '_rihal').mkdir()
|
|
39
|
+
original_cwd = os.getcwd()
|
|
40
|
+
try:
|
|
41
|
+
os.chdir(temp_dir)
|
|
42
|
+
result = find_project_root()
|
|
43
|
+
self.assertEqual(result.resolve(), Path(temp_dir).resolve())
|
|
44
|
+
finally:
|
|
45
|
+
os.chdir(original_cwd)
|
|
46
|
+
finally:
|
|
47
|
+
shutil.rmtree(temp_dir)
|
|
48
|
+
|
|
49
|
+
def test_llm_provided_with_rihal(self):
|
|
50
|
+
temp_dir = tempfile.mkdtemp()
|
|
51
|
+
try:
|
|
52
|
+
(Path(temp_dir) / '_rihal').mkdir()
|
|
53
|
+
result = find_project_root(llm_provided=temp_dir)
|
|
54
|
+
self.assertEqual(result.resolve(), Path(temp_dir).resolve())
|
|
55
|
+
finally:
|
|
56
|
+
shutil.rmtree(temp_dir)
|
|
57
|
+
|
|
58
|
+
def test_llm_provided_without_rihal_still_returns_dir(self):
|
|
59
|
+
"""First-run case: LLM provides path but _rihal doesn't exist yet."""
|
|
60
|
+
temp_dir = tempfile.mkdtemp()
|
|
61
|
+
try:
|
|
62
|
+
result = find_project_root(llm_provided=temp_dir)
|
|
63
|
+
self.assertEqual(result.resolve(), Path(temp_dir).resolve())
|
|
64
|
+
finally:
|
|
65
|
+
shutil.rmtree(temp_dir)
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
class TestParseVarSpecs(unittest.TestCase):
|
|
69
|
+
|
|
70
|
+
def test_vars_with_defaults(self):
|
|
71
|
+
specs = parse_var_specs('var1:value1,var2:value2')
|
|
72
|
+
self.assertEqual(len(specs), 2)
|
|
73
|
+
self.assertEqual(specs[0]['name'], 'var1')
|
|
74
|
+
self.assertEqual(specs[0]['default'], 'value1')
|
|
75
|
+
|
|
76
|
+
def test_vars_without_defaults(self):
|
|
77
|
+
specs = parse_var_specs('var1,var2')
|
|
78
|
+
self.assertEqual(len(specs), 2)
|
|
79
|
+
self.assertIsNone(specs[0]['default'])
|
|
80
|
+
|
|
81
|
+
def test_mixed_vars(self):
|
|
82
|
+
specs = parse_var_specs('required_var,var2:default2')
|
|
83
|
+
self.assertIsNone(specs[0]['default'])
|
|
84
|
+
self.assertEqual(specs[1]['default'], 'default2')
|
|
85
|
+
|
|
86
|
+
def test_colon_in_default(self):
|
|
87
|
+
specs = parse_var_specs('path:{project-root}/some/path')
|
|
88
|
+
self.assertEqual(specs[0]['default'], '{project-root}/some/path')
|
|
89
|
+
|
|
90
|
+
def test_empty_string(self):
|
|
91
|
+
self.assertEqual(parse_var_specs(''), [])
|
|
92
|
+
|
|
93
|
+
def test_none(self):
|
|
94
|
+
self.assertEqual(parse_var_specs(None), [])
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
class TestResolveProjectRootPlaceholder(unittest.TestCase):
|
|
98
|
+
|
|
99
|
+
def test_resolve_placeholder(self):
|
|
100
|
+
result = resolve_project_root_placeholder('{project-root}/output', Path('/test'))
|
|
101
|
+
self.assertEqual(result, '/test/output')
|
|
102
|
+
|
|
103
|
+
def test_no_placeholder(self):
|
|
104
|
+
result = resolve_project_root_placeholder('/absolute/path', Path('/test'))
|
|
105
|
+
self.assertEqual(result, '/absolute/path')
|
|
106
|
+
|
|
107
|
+
def test_none(self):
|
|
108
|
+
self.assertIsNone(resolve_project_root_placeholder(None, Path('/test')))
|
|
109
|
+
|
|
110
|
+
def test_non_string(self):
|
|
111
|
+
self.assertEqual(resolve_project_root_placeholder(42, Path('/test')), 42)
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
class TestExpandTemplate(unittest.TestCase):
|
|
115
|
+
|
|
116
|
+
def test_basic_expansion(self):
|
|
117
|
+
result = expand_template('{project-root}/output', {'project-root': '/test'})
|
|
118
|
+
self.assertEqual(result, '/test/output')
|
|
119
|
+
|
|
120
|
+
def test_multiple_placeholders(self):
|
|
121
|
+
result = expand_template(
|
|
122
|
+
'{output_folder}/planning',
|
|
123
|
+
{'output_folder': '_rihal-output', 'project-root': '/test'}
|
|
124
|
+
)
|
|
125
|
+
self.assertEqual(result, '_rihal-output/planning')
|
|
126
|
+
|
|
127
|
+
def test_none_value(self):
|
|
128
|
+
self.assertIsNone(expand_template(None, {}))
|
|
129
|
+
|
|
130
|
+
def test_non_string(self):
|
|
131
|
+
self.assertEqual(expand_template(42, {}), 42)
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
class TestApplyResultTemplate(unittest.TestCase):
|
|
135
|
+
|
|
136
|
+
def test_with_result_template(self):
|
|
137
|
+
var_def = {'result': '{project-root}/{value}'}
|
|
138
|
+
result = apply_result_template(var_def, '_rihal-output', {'project-root': '/test'})
|
|
139
|
+
self.assertEqual(result, '/test/_rihal-output')
|
|
140
|
+
|
|
141
|
+
def test_without_result_template(self):
|
|
142
|
+
result = apply_result_template({}, 'raw_value', {})
|
|
143
|
+
self.assertEqual(result, 'raw_value')
|
|
144
|
+
|
|
145
|
+
def test_value_only_template(self):
|
|
146
|
+
var_def = {'result': '{value}'}
|
|
147
|
+
result = apply_result_template(var_def, 'English', {})
|
|
148
|
+
self.assertEqual(result, 'English')
|
|
149
|
+
|
|
150
|
+
|
|
151
|
+
class TestLoadModuleYaml(unittest.TestCase):
|
|
152
|
+
|
|
153
|
+
def setUp(self):
|
|
154
|
+
self.temp_dir = tempfile.mkdtemp()
|
|
155
|
+
|
|
156
|
+
def tearDown(self):
|
|
157
|
+
shutil.rmtree(self.temp_dir)
|
|
158
|
+
|
|
159
|
+
def test_loads_core_module_yaml(self):
|
|
160
|
+
path = Path(self.temp_dir) / 'module.yaml'
|
|
161
|
+
path.write_text(
|
|
162
|
+
'code: core\n'
|
|
163
|
+
'name: "Rihal Core Module"\n'
|
|
164
|
+
'header: "Core Config"\n'
|
|
165
|
+
'user_name:\n'
|
|
166
|
+
' prompt: "What should agents call you?"\n'
|
|
167
|
+
' default: "Rihal"\n'
|
|
168
|
+
' result: "{value}"\n'
|
|
169
|
+
)
|
|
170
|
+
result = load_module_yaml(path)
|
|
171
|
+
self.assertIsNotNone(result)
|
|
172
|
+
self.assertEqual(result['meta']['code'], 'core')
|
|
173
|
+
self.assertEqual(result['meta']['name'], 'Rihal Core Module')
|
|
174
|
+
self.assertIn('user_name', result['variables'])
|
|
175
|
+
self.assertEqual(result['variables']['user_name']['prompt'], 'What should agents call you?')
|
|
176
|
+
|
|
177
|
+
def test_loads_module_with_directories(self):
|
|
178
|
+
path = Path(self.temp_dir) / 'module.yaml'
|
|
179
|
+
path.write_text(
|
|
180
|
+
'code: bmm\n'
|
|
181
|
+
'name: "Rihal Method"\n'
|
|
182
|
+
'project_name:\n'
|
|
183
|
+
' prompt: "Project name?"\n'
|
|
184
|
+
' default: "{directory_name}"\n'
|
|
185
|
+
' result: "{value}"\n'
|
|
186
|
+
'directories:\n'
|
|
187
|
+
' - "{planning_artifacts}"\n'
|
|
188
|
+
)
|
|
189
|
+
result = load_module_yaml(path)
|
|
190
|
+
self.assertEqual(result['directories'], ['{planning_artifacts}'])
|
|
191
|
+
|
|
192
|
+
def test_returns_none_for_missing(self):
|
|
193
|
+
result = load_module_yaml(Path(self.temp_dir) / 'nonexistent.yaml')
|
|
194
|
+
self.assertIsNone(result)
|
|
195
|
+
|
|
196
|
+
def test_returns_none_for_empty(self):
|
|
197
|
+
path = Path(self.temp_dir) / 'empty.yaml'
|
|
198
|
+
path.write_text('')
|
|
199
|
+
result = load_module_yaml(path)
|
|
200
|
+
self.assertIsNone(result)
|
|
201
|
+
|
|
202
|
+
|
|
203
|
+
class TestFindCoreModuleYaml(unittest.TestCase):
|
|
204
|
+
|
|
205
|
+
def test_returns_path_to_resources(self):
|
|
206
|
+
path = find_core_module_yaml()
|
|
207
|
+
self.assertTrue(str(path).endswith('resources/core-module.yaml'))
|
|
208
|
+
|
|
209
|
+
|
|
210
|
+
class TestFindTargetModuleYaml(unittest.TestCase):
|
|
211
|
+
|
|
212
|
+
def setUp(self):
|
|
213
|
+
self.temp_dir = tempfile.mkdtemp()
|
|
214
|
+
self.project_root = Path(self.temp_dir)
|
|
215
|
+
|
|
216
|
+
def tearDown(self):
|
|
217
|
+
shutil.rmtree(self.temp_dir)
|
|
218
|
+
|
|
219
|
+
def test_finds_in_skill_assets(self):
|
|
220
|
+
skill_path = self.project_root / 'skills' / 'test-skill'
|
|
221
|
+
assets = skill_path / 'assets'
|
|
222
|
+
assets.mkdir(parents=True)
|
|
223
|
+
(assets / 'module.yaml').write_text('code: test\n')
|
|
224
|
+
|
|
225
|
+
result = find_target_module_yaml('test', self.project_root, str(skill_path))
|
|
226
|
+
self.assertIsNotNone(result)
|
|
227
|
+
self.assertTrue(str(result).endswith('assets/module.yaml'))
|
|
228
|
+
|
|
229
|
+
def test_finds_in_skill_root(self):
|
|
230
|
+
skill_path = self.project_root / 'skills' / 'test-skill'
|
|
231
|
+
skill_path.mkdir(parents=True)
|
|
232
|
+
(skill_path / 'module.yaml').write_text('code: test\n')
|
|
233
|
+
|
|
234
|
+
result = find_target_module_yaml('test', self.project_root, str(skill_path))
|
|
235
|
+
self.assertIsNotNone(result)
|
|
236
|
+
|
|
237
|
+
def test_finds_in_rihal_module_dir(self):
|
|
238
|
+
module_dir = self.project_root / '_rihal' / 'mymod'
|
|
239
|
+
module_dir.mkdir(parents=True)
|
|
240
|
+
(module_dir / 'module.yaml').write_text('code: mymod\n')
|
|
241
|
+
|
|
242
|
+
result = find_target_module_yaml('mymod', self.project_root)
|
|
243
|
+
self.assertIsNotNone(result)
|
|
244
|
+
|
|
245
|
+
def test_returns_none_when_not_found(self):
|
|
246
|
+
result = find_target_module_yaml('missing', self.project_root)
|
|
247
|
+
self.assertIsNone(result)
|
|
248
|
+
|
|
249
|
+
def test_skill_path_takes_priority(self):
|
|
250
|
+
"""Skill assets module.yaml takes priority over _rihal/{module}/."""
|
|
251
|
+
skill_path = self.project_root / 'skills' / 'test-skill'
|
|
252
|
+
assets = skill_path / 'assets'
|
|
253
|
+
assets.mkdir(parents=True)
|
|
254
|
+
(assets / 'module.yaml').write_text('code: test\nname: from-skill\n')
|
|
255
|
+
|
|
256
|
+
module_dir = self.project_root / '_rihal' / 'test'
|
|
257
|
+
module_dir.mkdir(parents=True)
|
|
258
|
+
(module_dir / 'module.yaml').write_text('code: test\nname: from-rihal\n')
|
|
259
|
+
|
|
260
|
+
result = find_target_module_yaml('test', self.project_root, str(skill_path))
|
|
261
|
+
self.assertTrue('assets' in str(result))
|
|
262
|
+
|
|
263
|
+
|
|
264
|
+
class TestLoadConfigFile(unittest.TestCase):
|
|
265
|
+
|
|
266
|
+
def setUp(self):
|
|
267
|
+
self.temp_dir = tempfile.mkdtemp()
|
|
268
|
+
|
|
269
|
+
def tearDown(self):
|
|
270
|
+
shutil.rmtree(self.temp_dir)
|
|
271
|
+
|
|
272
|
+
def test_loads_flat_yaml(self):
|
|
273
|
+
path = Path(self.temp_dir) / 'config.yaml'
|
|
274
|
+
path.write_text('user_name: Test\ncommunication_language: English\n')
|
|
275
|
+
result = load_config_file(path)
|
|
276
|
+
self.assertEqual(result['user_name'], 'Test')
|
|
277
|
+
|
|
278
|
+
def test_returns_none_for_missing(self):
|
|
279
|
+
result = load_config_file(Path(self.temp_dir) / 'missing.yaml')
|
|
280
|
+
self.assertIsNone(result)
|
|
281
|
+
|
|
282
|
+
|
|
283
|
+
class TestLoadModuleConfig(unittest.TestCase):
|
|
284
|
+
|
|
285
|
+
def setUp(self):
|
|
286
|
+
self.temp_dir = tempfile.mkdtemp()
|
|
287
|
+
self.project_root = Path(self.temp_dir)
|
|
288
|
+
rihal_core = self.project_root / '_rihal' / 'core'
|
|
289
|
+
rihal_core.mkdir(parents=True)
|
|
290
|
+
(rihal_core / 'config.yaml').write_text(
|
|
291
|
+
'user_name: TestUser\n'
|
|
292
|
+
'communication_language: English\n'
|
|
293
|
+
'document_output_language: English\n'
|
|
294
|
+
'output_folder: "{project-root}/_rihal-output"\n'
|
|
295
|
+
)
|
|
296
|
+
rihal_bmb = self.project_root / '_rihal' / 'bmb'
|
|
297
|
+
rihal_bmb.mkdir(parents=True)
|
|
298
|
+
(rihal_bmb / 'config.yaml').write_text(
|
|
299
|
+
'user_name: TestUser\n'
|
|
300
|
+
'communication_language: English\n'
|
|
301
|
+
'document_output_language: English\n'
|
|
302
|
+
'output_folder: "{project-root}/_rihal-output"\n'
|
|
303
|
+
'rihal_builder_output_folder: "{project-root}/_rihal-output/skills"\n'
|
|
304
|
+
'rihal_builder_reports: "{project-root}/_rihal-output/reports"\n'
|
|
305
|
+
)
|
|
306
|
+
|
|
307
|
+
def tearDown(self):
|
|
308
|
+
shutil.rmtree(self.temp_dir)
|
|
309
|
+
|
|
310
|
+
def test_load_core(self):
|
|
311
|
+
result = load_module_config('core', self.project_root)
|
|
312
|
+
self.assertIsNotNone(result)
|
|
313
|
+
self.assertEqual(result['user_name'], 'TestUser')
|
|
314
|
+
|
|
315
|
+
def test_load_module_includes_core_vars(self):
|
|
316
|
+
result = load_module_config('bmb', self.project_root)
|
|
317
|
+
self.assertIsNotNone(result)
|
|
318
|
+
# Module-specific var
|
|
319
|
+
self.assertIn('rihal_builder_output_folder', result)
|
|
320
|
+
# Core vars also present
|
|
321
|
+
self.assertEqual(result['user_name'], 'TestUser')
|
|
322
|
+
|
|
323
|
+
def test_missing_module(self):
|
|
324
|
+
result = load_module_config('nonexistent', self.project_root)
|
|
325
|
+
self.assertIsNone(result)
|
|
326
|
+
|
|
327
|
+
|
|
328
|
+
if __name__ == '__main__':
|
|
329
|
+
unittest.main()
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: rihal-party-mode
|
|
3
|
+
description: >
|
|
4
|
+
Orchestrates group discussions between all installed Rihal agents, enabling
|
|
5
|
+
natural multi-agent conversations with maintained personalities. Activates
|
|
6
|
+
when the user says "party mode", "activate party mode", "start party mode",
|
|
7
|
+
"group discussion", "team discussion", "talk to everyone", "bring all agents",
|
|
8
|
+
"multi-agent chat", or "let's have a party". Do NOT use for: formal council
|
|
9
|
+
decisions (use rihal-majlis-council), single-agent questions where one
|
|
10
|
+
specialist is clearly the right owner (invoke that agent directly), or
|
|
11
|
+
sprint ceremonies (use rihal-hussain-sm).
|
|
12
|
+
user-invocable: true
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# Party Mode
|
|
16
|
+
|
|
17
|
+
Brings together the full Rihal agent team for natural multi-agent conversations. Each agent maintains their unique personality and expertise while a facilitator manages flow, relevance-based agent selection, and cross-talk.
|
|
18
|
+
|
|
19
|
+
## Workflow
|
|
20
|
+
|
|
21
|
+
Follow the instructions in ./workflow.md.
|
|
22
|
+
|
|
23
|
+
## Output Format
|
|
24
|
+
|
|
25
|
+
Interactive conversation where each agent speaks in character with their emoji prefix. The facilitator selects 3-5 relevant agents per round based on the topic. Conversation continues until the user exits party mode.
|
|
26
|
+
|
|
27
|
+
```
|
|
28
|
+
🎯 Sadiq: [strategic perspective]
|
|
29
|
+
🏗️ Waleed: [technical perspective]
|
|
30
|
+
📋 Ahmed: [delivery perspective]
|
|
31
|
+
...
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Examples
|
|
35
|
+
|
|
36
|
+
### Happy path
|
|
37
|
+
**User:** "party mode — should we build a mobile app?"
|
|
38
|
+
**Result:** Facilitator loads team.yaml → selects Sadiq, Waleed, Hussain, Mariam → each speaks in character → user steers discussion
|
|
39
|
+
|
|
40
|
+
### Edge case
|
|
41
|
+
**User:** "party mode" (no topic)
|
|
42
|
+
**Result:** Facilitator asks what topic to discuss, then selects relevant agents
|
|
43
|
+
|
|
44
|
+
### Negative boundary
|
|
45
|
+
**User:** "convene the majlis for a formal decision"
|
|
46
|
+
**Result:** Not party mode → route to `rihal-majlis-council` for structured consensus with voting
|
|
47
|
+
|
|
48
|
+
## Output Format
|
|
49
|
+
|
|
50
|
+
Each party mode turn follows this pattern:
|
|
51
|
+
|
|
52
|
+
```
|
|
53
|
+
🎉 PARTY MODE — {topic}
|
|
54
|
+
|
|
55
|
+
**{Agent Emoji} {Agent Name} ({Role}):**
|
|
56
|
+
{Agent's response in their documented communication style}
|
|
57
|
+
|
|
58
|
+
**{Agent Emoji} {Agent Name} ({Role}):**
|
|
59
|
+
{Response, may reference previous agent's point}
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
💬 What would you like to discuss next? (say "exit" to end party mode)
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## Examples
|
|
66
|
+
|
|
67
|
+
### Happy path
|
|
68
|
+
**User:** "party mode — should we build a mobile app?"
|
|
69
|
+
**Result:** Facilitator activates party mode, selects Sadiq (strategy), Waleed (CTO), Hussain (PM), and Mariam (marketing). Each gives perspective in-character. User can steer the conversation, address specific agents, or ask follow-ups.
|
|
70
|
+
|
|
71
|
+
### Edge case
|
|
72
|
+
**User:** "party mode" (no topic)
|
|
73
|
+
**Result:** Facilitator introduces the agent roster and asks "What would you like to discuss with the team today?"
|
|
74
|
+
|
|
75
|
+
### Negative boundary
|
|
76
|
+
**User:** "party mode — approve this PR"
|
|
77
|
+
**Result:** Redirects to `/rihal:code-review` — code review needs structured evaluation, not open discussion.
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
# Step 1: Agent Loading and Party Mode Initialization
|
|
2
|
+
|
|
3
|
+
## MANDATORY EXECUTION RULES (READ FIRST):
|
|
4
|
+
|
|
5
|
+
- ✅ YOU ARE A PARTY MODE FACILITATOR, not just a workflow executor
|
|
6
|
+
- 🎯 CREATE ENGAGING ATMOSPHERE for multi-agent collaboration
|
|
7
|
+
- 📋 LOAD COMPLETE AGENT ROSTER from manifest with merged personalities
|
|
8
|
+
- 🔍 PARSE AGENT DATA for conversation orchestration
|
|
9
|
+
- 💬 INTRODUCE DIVERSE AGENT SAMPLE to kick off discussion
|
|
10
|
+
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
|
11
|
+
|
|
12
|
+
## EXECUTION PROTOCOLS:
|
|
13
|
+
|
|
14
|
+
- 🎯 Show agent loading process before presenting party activation
|
|
15
|
+
- ⚠️ Present [C] continue option after agent roster is loaded
|
|
16
|
+
- 💾 ONLY save when user chooses C (Continue)
|
|
17
|
+
- 📖 Update frontmatter `stepsCompleted: [1]` before loading next step
|
|
18
|
+
- 🚫 FORBIDDEN to start conversation until C is selected
|
|
19
|
+
|
|
20
|
+
## CONTEXT BOUNDARIES:
|
|
21
|
+
|
|
22
|
+
- Agent manifest CSV is available at `{project-root}/.rihal/team.yaml`
|
|
23
|
+
- User configuration from config.yaml is loaded and resolved
|
|
24
|
+
- Party mode is standalone interactive workflow
|
|
25
|
+
- All agent data is available for conversation orchestration
|
|
26
|
+
|
|
27
|
+
## YOUR TASK:
|
|
28
|
+
|
|
29
|
+
Load the complete agent roster from manifest and initialize party mode with engaging introduction.
|
|
30
|
+
|
|
31
|
+
## AGENT LOADING SEQUENCE:
|
|
32
|
+
|
|
33
|
+
### 1. Load Agent Manifest
|
|
34
|
+
|
|
35
|
+
Begin agent loading process:
|
|
36
|
+
|
|
37
|
+
"Now initializing **Party Mode** with our complete Rihal agent roster! Let me load up all our talented agents and get them ready for an amazing collaborative discussion.
|
|
38
|
+
|
|
39
|
+
**Agent Manifest Loading:**"
|
|
40
|
+
|
|
41
|
+
Load and parse the agent manifest CSV from `{project-root}/.rihal/team.yaml`
|
|
42
|
+
|
|
43
|
+
### 2. Extract Agent Data
|
|
44
|
+
|
|
45
|
+
Parse CSV to extract complete agent information for each entry:
|
|
46
|
+
|
|
47
|
+
**Agent Data Points:**
|
|
48
|
+
|
|
49
|
+
- **name** (agent identifier for system calls)
|
|
50
|
+
- **displayName** (agent's persona name for conversations)
|
|
51
|
+
- **title** (formal position and role description)
|
|
52
|
+
- **icon** (visual identifier emoji)
|
|
53
|
+
- **role** (capabilities and expertise summary)
|
|
54
|
+
- **identity** (background and specialization details)
|
|
55
|
+
- **communicationStyle** (how they communicate and express themselves)
|
|
56
|
+
- **principles** (decision-making philosophy and values)
|
|
57
|
+
- **module** (source module organization)
|
|
58
|
+
- **path** (file location reference)
|
|
59
|
+
|
|
60
|
+
### 3. Build Agent Roster
|
|
61
|
+
|
|
62
|
+
Create complete agent roster with merged personalities:
|
|
63
|
+
|
|
64
|
+
**Roster Building Process:**
|
|
65
|
+
|
|
66
|
+
- Combine manifest data with agent file configurations
|
|
67
|
+
- Merge personality traits, capabilities, and communication styles
|
|
68
|
+
- Validate agent availability and configuration completeness
|
|
69
|
+
- Organize agents by expertise domains for intelligent selection
|
|
70
|
+
|
|
71
|
+
### 4. Party Mode Activation
|
|
72
|
+
|
|
73
|
+
Generate enthusiastic party mode introduction:
|
|
74
|
+
|
|
75
|
+
"🎉 PARTY MODE ACTIVATED! 🎉
|
|
76
|
+
|
|
77
|
+
Welcome {{user_name}}! I'm excited to facilitate an incredible multi-agent discussion with our complete Rihal team. All our specialized agents are online and ready to collaborate, bringing their unique expertise and perspectives to whatever you'd like to explore.
|
|
78
|
+
|
|
79
|
+
**Our Collaborating Agents Include:**
|
|
80
|
+
|
|
81
|
+
[Display 3-4 diverse agents to showcase variety]:
|
|
82
|
+
|
|
83
|
+
- [Icon Emoji] **[Agent Name]** ([Title]): [Brief role description]
|
|
84
|
+
- [Icon Emoji] **[Agent Name]** ([Title]): [Brief role description]
|
|
85
|
+
- [Icon Emoji] **[Agent Name]** ([Title]): [Brief role description]
|
|
86
|
+
|
|
87
|
+
**[Total Count] agents** are ready to contribute their expertise!
|
|
88
|
+
|
|
89
|
+
**What would you like to discuss with the team today?**"
|
|
90
|
+
|
|
91
|
+
### 5. Present Continue Option
|
|
92
|
+
|
|
93
|
+
After agent loading and introduction:
|
|
94
|
+
|
|
95
|
+
"**Agent roster loaded successfully!** All our Rihal experts are excited to collaborate with you.
|
|
96
|
+
|
|
97
|
+
**Ready to start the discussion?**
|
|
98
|
+
[C] Continue - Begin multi-agent conversation
|
|
99
|
+
|
|
100
|
+
### 6. Handle Continue Selection
|
|
101
|
+
|
|
102
|
+
#### If 'C' (Continue):
|
|
103
|
+
|
|
104
|
+
- Update frontmatter: `stepsCompleted: [1]`
|
|
105
|
+
- Set `agents_loaded: true` and `party_active: true`
|
|
106
|
+
- Load: `./step-02-discussion-orchestration.md`
|
|
107
|
+
|
|
108
|
+
## SUCCESS METRICS:
|
|
109
|
+
|
|
110
|
+
✅ Agent manifest successfully loaded and parsed
|
|
111
|
+
✅ Complete agent roster built with merged personalities
|
|
112
|
+
✅ Engaging party mode introduction created
|
|
113
|
+
✅ Diverse agent sample showcased for user
|
|
114
|
+
✅ [C] continue option presented and handled correctly
|
|
115
|
+
✅ Frontmatter updated with agent loading status
|
|
116
|
+
✅ Proper routing to discussion orchestration step
|
|
117
|
+
|
|
118
|
+
## FAILURE MODES:
|
|
119
|
+
|
|
120
|
+
❌ Failed to load or parse agent manifest CSV
|
|
121
|
+
❌ Incomplete agent data extraction or roster building
|
|
122
|
+
❌ Generic or unengaging party mode introduction
|
|
123
|
+
❌ Not showcasing diverse agent capabilities
|
|
124
|
+
❌ Not presenting [C] continue option after loading
|
|
125
|
+
❌ Starting conversation without user selection
|
|
126
|
+
|
|
127
|
+
## AGENT LOADING PROTOCOLS:
|
|
128
|
+
|
|
129
|
+
- Validate CSV format and required columns
|
|
130
|
+
- Handle missing or incomplete agent entries gracefully
|
|
131
|
+
- Cross-reference manifest with actual agent files
|
|
132
|
+
- Prepare agent selection logic for intelligent conversation routing
|
|
133
|
+
|
|
134
|
+
## NEXT STEP:
|
|
135
|
+
|
|
136
|
+
After user selects 'C', load `./step-02-discussion-orchestration.md` to begin the interactive multi-agent conversation with intelligent agent selection and natural conversation flow.
|
|
137
|
+
|
|
138
|
+
Remember: Create an engaging, party-like atmosphere while maintaining professional expertise and intelligent conversation orchestration!
|