with one click
with one click
| name | ralplan |
| description | Alias for $plan --consensus |
Ralplan is a shorthand alias for $plan --consensus. It triggers iterative planning with Planner, Architect, and Critic agents until consensus is reached, with RALPLAN-DR structured deliberation (short mode by default, deliberate mode for high-risk work).
$ralplan "task description"
--interactive: Enables user prompts at key decision points (draft review in step 2 and final approval in step 6). Without this flag the workflow runs fully automated — Planner → Architect → Critic loop — and outputs the final plan without asking for confirmation.--deliberate: Forces deliberate mode for high-risk work. Adds pre-mortem (3 scenarios) and expanded test planning (unit/integration/e2e/observability). Without this flag, deliberate mode can still auto-enable when the request explicitly signals high risk (auth/security, migrations, destructive changes, production incidents, compliance/PII, public API breakage).$ralplan --interactive "task description"
Use the shared workflow guidance pattern: outcome-first framing, concise visible updates for multi-step planning, local overrides for the active workflow branch, evidence-backed planning and validation expectations, explicit stop rules, right-sized implementation/PRD shape, and automatic continuation for safe reversible steps. Ask only for material, destructive, credentialed, external-production, or preference-dependent branches.
This skill invokes the Plan skill in consensus mode:
$plan --consensus <arguments>
$plan --consensus --interactive <arguments>
The consensus workflow:
--interactive is set, use the structured question UI (omx question in attached tmux; native structured input outside tmux when available) to present the draft plan plus the Principles / Drivers / Options summary before review (Proceed to review / Request changes / Skip review). Otherwise, automatically proceed to review.APPROVE Critic verdict (ITERATE or REJECT) MUST run the same full closed loop:
a. Collect Architect + Critic feedback
b. Revise the plan with Planner
c. Return to Architect review
d. Return to Critic evaluation
e. Repeat this loop until Critic returns APPROVE or 5 iterations are reached
f. If 5 iterations are reached without APPROVE, present the best version to the user--interactive is set, use the structured question UI to present the plan with approval options (Approve durable goal execution via ultragoal / Approve and implement via team / Explicit Ralph fallback / Start specialized goal-mode follow-up / Request changes / Reject). Final plan must include ADR (Decision, Drivers, Alternatives considered, Why chosen, Consequences, Follow-ups), an explicit available-agent-types roster, concrete follow-up staffing guidance for $ultragoal and $team, plus an explicit $ralph fallback note when persistent single-owner verification is intentionally selected, suggested reasoning levels by lane, explicit omx team / $team launch hints, a concrete team verification path, and a product-facing Goal-Mode Follow-up Suggestions section. Recommend $ultragoal by default for goal-mode follow-up, use $autoresearch-goal instead when the context is a research project, and use $performance-goal instead when the context is an optimization or performance project. Otherwise, output the final plan and stop.$ultragoal durable goal execution, $team, explicit $ralph fallback, or a specialized goal-mode follow-up), Request changes, or Reject$ultragoal for default durable sequential execution, $team for parallel team execution, the selected specialized goal-mode follow-up ($autoresearch-goal or $performance-goal), or $ralph only when the user explicitly selects that fallback with the approved plan and matching success/evaluator context -- never implement directly. Preserve the explicit available-agent-types roster, reasoning-by-lane guidance, role/staffing allocation guidance, launch hints, and verification-path guidance from the approved plan for Ultragoal/team paths and any explicit Ralph fallback.Important: Steps 3 and 4 MUST run sequentially. Do NOT issue both agent calls in the same parallel batch. Always await the Architect result before invoking Critic.
Ralplan is not complete, skippable, or ready for execution merely because .omx/plans/prd-*.md and .omx/plans/test-spec-*.md exist. Those files are planning artifacts, not consensus evidence.
Before any Autopilot, Pipeline, Ultragoal, Team, Ralph, or implementation handoff, persist a durable handoff record that distinguishes:
planning_artifacts: PRD/test-spec paths.ralplan_architect_review: the completed Architect review with an approving verdict.ralplan_critic_review: the completed Critic review with an approving verdict, recorded only after the Architect review.ralplan_consensus_gate.complete:true only when both reviews are present, approving, and in the required Architect→Critic order.If Architect is missing/blocked, keep the workflow in Architect review or report that blocker. If Critic is missing/blocked/non-approving, keep the workflow in Critic/re-review or report the max-iteration outcome. Do not treat existing plan/test-spec files as permission to skip ralplan or start execution.
Follow the Plan skill's full documentation for consensus mode details.
When ralplan outputs a final handoff or asks the user to choose a next lane, include product-facing goal-mode suggestions alongside the existing Ralph and team options:
$ultragoal — default goal-mode follow-up for implementation or general goal-oriented follow-up plans that should become durable Codex/OMX goals with sequential completion tracking.$autoresearch-goal — research-project follow-up when the plan centers on a question, literature/reference gathering, evaluator-backed research, or a professor/critic-style research deliverable.$performance-goal — optimization/performance follow-up when the plan centers on speed, latency, throughput, memory, benchmark, or other measurable performance work.Keep $team as a first-class execution option and keep $ralph available only as an explicit fallback where appropriate: use Ultragoal as the default durable goal-mode follow-up, Team for coordinated parallel implementation, and Ralph only for intentionally selected persistent single-owner completion/verification pressure. For parallelizable durable-goal delivery, recommend $ultragoal + $team together: Ultragoal remains the leader-owned .omx/ultragoal ledger/Codex-goal wrapper while Team runs parallel lanes and returns checkpoint-ready evidence. Do not present Ralph as the recommended follow-up when durable goal tracking is needed; present Ultragoal as the superseding default, with Team for parallel delivery and Ralph only as an explicit fallback when its narrow persistence loop is specifically desired.
Before consensus planning or execution handoff, ensure a grounded context snapshot exists:
.omx/context/{slug}-*.md when available..omx/context/{slug}-{timestamp}.md (UTC YYYYMMDDTHHMMSSZ) with:
USE_OMX_EXPLORE_CMD, prefer omx explore for simple read-only repository lookups with narrow, concrete prompts; otherwise use the richer normal explore path. Then run $deep-interview --quick <task> before continuing.$best-practice-research as the bounded evidence wrapper and auto-delegate researcher for the official/upstream lookup before finalizing the planning handoff so execution does not start from repo-local recall alone.$autoresearch or $autoresearch-goal run exists, treat its approved artifact as evidence for the plan. Do not include Autoresearch as a final architecture or runtime component unless the user explicitly requested ongoing research automation; otherwise synthesize the evidence into the $ralplan ADR, risks, and verification steps.Do not hand off to execution modes until this intake is complete; if urgency forces progress, explicitly document the risk tradeoffs.
Execution modes (ralph, autopilot, team, ultrawork) spin up heavy multi-agent orchestration. When launched on a vague request like "ralph improve the app", agents have no clear target — they waste cycles on scope discovery that should happen during planning, often delivering partial or misaligned work that requires rework.
The ralplan-first gate intercepts underspecified execution requests and redirects them through the ralplan consensus planning workflow. This ensures:
Passes the gate (specific enough for direct execution):
ralph fix the null check in src/hooks/bridge.ts:326autopilot implement issue #42team add validation to function processKeywordDetectorralph do:\n1. Add input validation\n2. Write tests\n3. Update READMEultrawork add the user model in src/models/user.tsGated — redirected to ralplan (needs scoping first):
ralph fix thisautopilot build the appteam improve performanceralph add authenticationultrawork make it betterBypass the gate (when you know what you want):
force: ralph refactor the auth module! autopilot optimize everythingThe gate auto-passes when it detects any concrete signal. You do not need all of them — one is enough:
| Signal Type | Example prompt | Why it passes |
|---|---|---|
| File path | ralph fix src/hooks/bridge.ts | References a specific file |
| Issue/PR number | ralph implement #42 | Has a concrete work item |
| camelCase symbol | ralph fix processKeywordDetector | Names a specific function |
| PascalCase symbol | ralph update UserModel | Names a specific class |
| snake_case symbol | team fix user_model | Names a specific identifier |
| Test runner | ralph npm test && fix failures | Has an explicit test target |
| Numbered steps | ralph do:\n1. Add X\n2. Test Y | Structured deliverables |
| Acceptance criteria | ralph add login - acceptance criteria: ... | Explicit success definition |
| Error reference | ralph fix TypeError in auth | Specific error to address |
| Code block | ralph add: \``ts ... ```` | Concrete code provided |
| Escape prefix | force: ralph do it or ! ralph do it | Explicit user override |
ralph add user authenticationralph) + underspecified prompt (no files, functions, or test spec)| Issue | Solution |
|---|---|
| Gate fires on a well-specified prompt | Add a file reference, function name, or issue number to anchor the request |
| Want to bypass the gate | Prefix with force: or ! (e.g., force: ralph fix it) |
| Gate does not fire on a vague prompt | The gate only catches prompts with <=15 effective words and no concrete anchors; add more detail or use $ralplan explicitly |
| Redirected to ralplan but want to skip planning | In the ralplan workflow, say "just do it" or "skip planning" to transition directly to execution |
Good: The user says continue after the workflow already has a clear next step. Continue the current branch of work instead of restarting or re-asking the same question.
Good: The user changes only the output shape or downstream delivery step (for example make a PR). Preserve earlier non-conflicting workflow constraints and apply the update locally.
Bad: The user says continue, and the workflow restarts discovery or stops before the missing verification/evidence is gathered.