$npx -y skills add jmstar85/oh-my-githubcopilot --skill ralplanConsensus planning with Planner/Architect/Critic iterative loop. Activate when user says: ralplan, consensus plan, consensus planning.
| 1 | # Ralplan (Consensus Planning) |
| 2 | |
| 3 | Shorthand for `/plan --consensus`. Triggers iterative planning with Planner, Architect, and Critic agents until consensus is reached. |
| 4 | |
| 5 | ## Flags |
| 6 | - `--deliberate`: Forces deliberate mode for high-risk work. Adds pre-mortem (3 scenarios) and expanded test planning. |
| 7 | |
| 8 | ## Interactive Hook Protocol |
| 9 | |
| 10 | **MANDATORY**: Use `vscode_askQuestions` at every decision gate in this skill (when available). |
| 11 | If `vscode_askQuestions` is NOT available (e.g., Copilot CLI), present numbered options in markdown and ask the user to respond with a number or freeform text. |
| 12 | |
| 13 | ### When to Fire Hooks |
| 14 | | Trigger Point | Question Type | |
| 15 | |---------------|---------------| |
| 16 | | Options presentation | Present viable options with pros/cons for user selection | |
| 17 | | Architect concerns | Surface architectural trade-offs for user decision | |
| 18 | | Critic rejection | Show rejection reasons, ask user for direction | |
| 19 | | Consensus reached | Final plan approval before execution | |
| 20 | | `--deliberate` pre-mortem | Present risk scenarios for user prioritization | |
| 21 | |
| 22 | ## Workflow |
| 23 | 1. **@planner** creates initial plan with RALPLAN-DR summary: |
| 24 | - Principles (3-5) |
| 25 | - Decision Drivers (top 3) |
| 26 | - Viable Options (>=2) with pros/cons |
| 27 | 2. **HOOK: Present options** via `vscode_askQuestions` when options have significant trade-offs: |
| 28 | ``` |
| 29 | header: "ralplan-options" |
| 30 | question: "Planner identified [N] viable approaches. Select preferred direction:" |
| 31 | options: [ |
| 32 | { label: "Option A: [name]", description: "Pros: X, Y. Cons: Z" }, |
| 33 | { label: "Option B: [name]", description: "Pros: A, B. Cons: C" }, |
| 34 | { label: "Let agents decide based on technical merit", recommended: true } |
| 35 | ] |
| 36 | allowFreeformInput: true |
| 37 | ``` |
| 38 | 3. **@architect** reviews for architectural soundness |
| 39 | - If architect raises concerns: **HOOK** — present trade-offs for user decision |
| 40 | 4. **@critic** validates quality and testability |
| 41 | - If critic rejects: **HOOK** — show issues and ask for direction: |
| 42 | ``` |
| 43 | header: "ralplan-critic-feedback" |
| 44 | question: "Critic identified [N] issues: [summary]. How to proceed?" |
| 45 | options: [ |
| 46 | { label: "Address all issues", recommended: true }, |
| 47 | { label: "Address critical issues only, skip minor" }, |
| 48 | { label: "Override — I accept the trade-offs" }, |
| 49 | { label: "Restart with different constraints" } |
| 50 | ] |
| 51 | ``` |
| 52 | 5. **Loop** until critic approves (max 5 iterations) |
| 53 | 6. Final plan includes ADR (Decision, Drivers, Alternatives, Why chosen, Consequences) |
| 54 | 7. **HOOK: Final approval** via `vscode_askQuestions`: |
| 55 | ``` |
| 56 | header: "ralplan-approval" |
| 57 | question: "Consensus reached after [N] iterations. Execute?" |
| 58 | options: [ |
| 59 | { label: "Execute with team (parallel)", recommended: true }, |
| 60 | { label: "Execute with ralph (sequential + verification)" }, |
| 61 | { label: "Execute with omg-autopilot (full pipeline)" }, |
| 62 | { label: "Save plan — don't execute yet" } |
| 63 | ] |
| 64 | ``` |
| 65 | |
| 66 | ### Deliberate Mode Hooks |
| 67 | When `--deliberate` is active, add: |
| 68 | - **HOOK: Pre-mortem scenarios** — present 3 risk scenarios, ask user to rank priority |
| 69 | - **HOOK: Test strategy** — present expanded test plan for user approval |
| 70 | |
| 71 | ## Pre-Execution Gate |
| 72 | Vague execution requests (e.g., "ralph improve the app") are redirected through ralplan first to ensure explicit scope, testable criteria, and multi-agent consensus. |
| 73 | |
| 74 | **Passes gate** (specific enough): prompts with file paths, function names, issue numbers, numbered steps, or acceptance criteria. |
| 75 | |
| 76 | **Gated** (needs scoping): prompts with only vague descriptions and no concrete anchors. |
| 77 | |
| 78 | ## After Approval |
| 79 | - Execute via `/team` (parallel agents, recommended) or `/ralph` (sequential with verification) |