Autopilot
1:1 WorkBuddy port of oh-my-codex — 46 catalog-driven skills (30 active + 16 deprecated), bilingual docs.
npx -y skills add mrzhangguoguo/oh-my-workbuddy --skill autopilotAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- 29 days oldThe repository was created 29 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Strict autonomous delivery loop that runs deep-interview, ralplan, ultragoal, code-review, and ultraqa in order with automatic re-planning when gates are not clean. Use on "autopilot", "autonomous", "build me", "create me", "make me", "full auto", "handle it all", or "I want a/an…".
SKILL.md
20.8 KB, as published. Nobody here has run it
Ported from oh-my-codex
autopilot. OMX runtime conventions ($macroinvocation,omxCLI,.omx/state directory) are replaced with WorkBuddy idioms (Skill tool, Agent tool, task list,.omw/autopilot/<slug>/sidecar).
Autopilot
Autopilot is the strict autonomous delivery loop for non-trivial work. Its recommended/default contract is exactly:
deep-interview -> ralplan -> ultragoal (+ team if needed) -> code-review -> ultraqa
If code-review or ultraqa is not clean, Autopilot returns to ralplan with the findings as the next planning input, then continues again through ultragoal, code-review, and ultraqa until the gates are clean or a hard blocker is reported. Ralph is a legacy/explicit alternate execution loop only; do not advertise any legacy alternate loop as the default Autopilot path.
Use when
- User wants hands-off execution from a concrete idea, issue, PRD, or requirements artifact to reviewed and QA-checked code.
- User says "autopilot", "auto pilot", "autonomous", "build me", "create me", "make me", "full auto", "handle it all", or "I want a/an…".
- Task needs clarification, planning, durable execution, verification, code review, and QA with automatic follow-up when gates are not clean.
Do not use when
- User wants to explore options or brainstorm — invoke the
plan/ralplanskill. - User says "just explain", "draft only", or "what would you suggest" — respond conversationally.
- User wants a single focused code change — invoke
ultragoaldirectly, or do focused executor work. - User wants only review/critique of existing code — invoke
code-review.
Strict loop contract
Autopilot must not run a separate broad expansion/planning/execution/QA/validation lifecycle as its primary behavior. It delegates those concerns to the canonical workflow phases below. Represent progress with the task list (TaskCreate/TaskUpdate/TaskList), and persist durable artifacts under .omw/autopilot/<slug>/. Do not invent a separate execution framework.
-
Phase
deep-interview— Socratic requirements clarification gate- Invoke the
deep-interviewskill (skill: deep-interview) to clarify intent, scope, non-goals, constraints, and decision boundaries. - Deep-interview is a structured question chain, not a one-question gate; treat the round cap as a ceiling, not a target.
- After the user answers, re-score ambiguity against the active profile threshold. Ask another question only when a readiness gate is still unresolved and the answer would materially change execution; otherwise crystallize the spec and hand off.
- Required handoff artifact: a clarified spec or concise requirements summary suitable for
ralplan, including an explicit interview-complete rationale when leaving deep-interview.
- Invoke the
-
Phase
ralplan— consensus planning gate- Ground the task with pre-context intake and the deep-interview artifact.
- Current ownership rule: Autopilot records
planning_routingin state before heavy planning. When the main session resolves to a cheap/mini model lane (for example a*-mini,*spark*, or explicitly cheap/economy/lite model name), the initial planning/decomposition owner is a dedicated[planner]role (spawn a planner Agent); otherwise[main]may keep ownership for backward compatibility. A configuredagentModels.planneris an explicit opt-in that forces dedicated[planner]ownership even when[main]is not cheap/mini. - Invoke the
ralplanskill (skill: ralplan) to produce/update PRD and test-spec artifacts. Ifplanning_routing.ownerisplanner, use a dedicated[planner]Agent for the initial Planner draft/decomposition before the Architect→Critic consensus gates. - PRD/test-spec files alone are not completion evidence. Ralplan may hand off only after durable consensus evidence records a subsequent
architectapproval first and a subsequentcriticapproval second. - When returning from a non-clean review or QA pass, include
return_to_ralplan_reasonand the findings as first-class planning input. - If either review is missing, blocked, out of order, or non-approving, remain in
ralplanor report an explicit blocker/max-iteration outcome; do not progress toultragoal,team, or implementation. - Required handoff artifact: an approved plan/test spec plus
ralplan_consensus_gateevidence suitable forultragoal.
-
Phase
ultragoal— durable implementation + verification loop- Invoke the
ultragoalskill (skill: ultragoal) from the approved ralplan artifacts. - Ultragoal owns implementation, tests, build/lint/typecheck evidence, cleanup, and final review gate discipline. Persist progress in
.omw/autopilot/<slug>/ledger.jsonl. - Use
teamonly inside an active Ultragoal story when the story clearly benefits from coordinated parallel execution (for example independent file/module lanes, broad test matrix work, or multi-domain implementation). Team remains explicit and leader-owned; Ultragoal keeps the goal/ledger state. - Required handoff artifact: implementation evidence, changed-file summary, verification evidence, and ledger/checkpoint references suitable for
code-review.
- Invoke the
-
Phase
code-review— merge-readiness gate- Invoke the
code-reviewskill (skill: code-review) on the diff/artifacts produced byultragoal. - A clean review means final recommendation
APPROVEwith architectural statusCLEAR. COMMENT,REQUEST CHANGES, any architecturalWATCH/BLOCK, or any unresolved finding is not clean.- If not clean because the implementation must be repaired, increment the review cycle, set
current_phase:"rework", and carry the findings as the sanctioned execution-fix input. Return to Phaseralplanonly when the review shows the plan/requirements are wrong or incomplete.
- Invoke the
-
Phase
ultraqa— adversarial QA gate- Invoke the
ultraqaskill (skill: ultraqa) after a clean code review when user-facing behavior, workflows, CLI/runtime behavior, integration surfaces, or regression risk warrant adversarial QA. - For docs-only or trivially non-runtime changes, record
ultraqaas skipped with an explicit condition and evidence. - If UltraQA finds issues, set
return_to_ralplan_reason, and transition back to Phaseralplan.
- Invoke the
The only normal terminal state is complete after clean code review and a passed or explicitly skipped UltraQA gate. Cancellation, blocked credentials, unrecoverable repeated failures, or explicit user stop may terminate earlier with preserved state.
Pre-context intake
Before Phase deep-interview or ralplan starts or resumes:
- Derive a task slug from the request.
- Reuse the latest relevant
.omw/autopilot/<slug>/context.mdsnapshot when available. - If none exists, create
.omw/autopilot/<slug>/context.md(UTCYYYYMMDDTHHMMSSZ) with:- activation prompt / task seed
- original task status (
activation-prompt,legacy-unverified, orunavailable) - desired outcome
- known facts/evidence
- constraints
- unknowns/open questions
- likely codebase touchpoints
- a scope note that the seed is the Autopilot activation prompt, not guaranteed prior conversation context
- If brownfield facts are missing, run normal repo inspection (Read, Grep, Glob, read-only Bash) before or during
deep-interview; do not skip the clarification gate merely because the task sounds actionable. - Carry the snapshot path in the task list and all handoff artifacts.
Execution policy
- Always execute the recommended phases in order:
deep-interview, thenralplan, thenultragoal, thencode-review, thenultraqa. teamis conditional and explicit: use it only within an Ultragoal story when parallel execution materially improves throughput, quality, or safety.- Never skip directly from vague/freeform expansion to implementation; unclear input must be clarified and planned through
deep-interviewandralplan. - A non-clean
code-reviewthat requires implementation repair enters Phaserework; a non-clean review that changes the plan/requirements, or failedultraqa, returns toralplan. - Each phase must write/update Autopilot state (task list + sidecar) before handing off.
- Use existing skills and Workflow tools (
deep-interview,ralplan,ultragoal, optionalteam,code-review,ultraqa); do not invent a separate execution framework. - Preserve legacy compatibility: if a user explicitly requests the old Ralph execution lane, use the
ralphskill as an intentional alternate execution phase, but do not present it as Autopilot's default recommended loop. - Continue automatically through safe reversible phase transitions. Ask only for destructive, credential-gated, or materially preference-dependent branches.
- Apply the shared workflow guidance pattern: outcome-first framing, concise visible updates for multi-step execution, local overrides for the active workflow branch, validation proportional to risk, explicit stop rules, and automatic continuation for safe reversible steps. Ask only for material, destructive, credentialed, external-production, or preference-dependent branches.
State management (task list + sidecar, not omx)
There is no omx binary in WorkBuddy. Represent Autopilot lifecycle state with the task list and a small JSON sidecar at .omw/autopilot/<slug>/state.json. State must be session-aware when a session id exists. If a richer MCP state surface becomes available later, equivalent tool calls remain acceptable but are not required.
Inside active Autopilot, named child phases such as ralplan are supervised phases, not peer workflow activations: keep mode:"autopilot" active and update current_phase:"ralplan" rather than starting a standalone mode:"ralplan" over Autopilot.
Required fields:
{
"mode": "autopilot",
"active": true,
"current_phase": "deep-interview",
"iteration": 1,
"review_cycle": 0,
"max_iterations": 10,
"phase_cycle": ["deep-interview", "ralplan", "ultragoal", "code-review", "ultraqa"],
"handoff_artifacts": {
"context_snapshot_path": ".omw/autopilot/<slug>/context.md",
"deep_interview": null,
"ralplan": null,
"ralplan_consensus_gate": {
"required": true,
"sequence": ["architect-review", "critic-review"],
"planning_artifacts_are_not_consensus": true,
"required_review_roles": ["architect", "critic"],
"ralplan_architect_review": null,
"ralplan_critic_review": null,
"complete": false
},
"ultragoal": null,
"code_review": null,
"ultraqa": null
},
"review_verdict": null,
"qa_verdict": null,
"return_to_ralplan_reason": null
}
- On start: create tasks for each phase; write
state.jsonwithmode:"autopilot",active:true,current_phase:"deep-interview",iteration:1,review_cycle:0,phase_cycle:[...], and empty handoff slots. - On deep-interview -> ralplan: only after a gate proves the interview chain is explicitly complete or the user authorized a skip. Persist
deep_interview_gate:{status:"complete", rationale:"<why requirements are complete>", handoff_summary:"<summary>"}(or equivalent non-empty rationale/summary) plus the clarified spec underhandoff_artifacts.deep_interview. If a final question was involved, keep its same-session answered record linked byquestion_id/satisfied_at. For skip, persistdeep_interview_gate:{status:"skipped", skip_authorized_by_user:true, skip_reason:"<user-authorized reason>", skipped_at:"<timestamp>", source:"user"}. Do not leave deep-interview merely because the first question was answered or cleared.- Optional execution contract foundation: when a downstream handoff explicitly sets
execution_contract_required:true, persist a complete structuredexecution_contractunderhandoff_artifacts.deep_interviewbefore leaving deep-interview. The canonical schema isversion:1,execution_stride:"task"|"deliverable"|"milestone",source:"deep-interview",selected_by:"user"|"default",allow_task_shrink:<boolean>, non-emptycompletion_unit, non-emptystop_condition,acceptance_coverage_scope:"task"|"deliverable"|"milestone", andshrink_policy:"allowed"|"ask_before_shrink"|"deny_unless_blocked". - Stride semantics are binding only when
execution_contract_required:true:taskmeansallow_task_shrink:true,acceptance_coverage_scope:"task",shrink_policy:"allowed";deliverablemeansallow_task_shrink:false,acceptance_coverage_scope:"deliverable",shrink_policy:"ask_before_shrink";milestonemeansallow_task_shrink:false,acceptance_coverage_scope:"milestone",shrink_policy:"deny_unless_blocked". - Preserve legacy behavior when
execution_contract_requiredis absent or false. Do not infer stride from prose, broadness, phase names, snapshots, or task size; this foundation only validates an explicit structured contract and deliberately usesmilestonerather thanphase. New artifacts must write canonical snake_case keys underhandoff_artifacts.deep_interview; any runtime may read legacy camelCase field/marker aliases and direct/nestedexecution_contractlocations only as compatibility input.
- Optional execution contract foundation: when a downstream handoff explicitly sets
- On ralplan -> ultragoal: only after
ralplan_consensus_gate.complete:true, with a recordedralplan_architect_review.agent_role:"architect"andralplan_architect_review.verdict:"approve"recorded before aralplan_critic_review.agent_role:"critic"andralplan_critic_review.verdict:"approve". Setcurrent_phase:"ultragoal"and persist the plan/test-spec paths underhandoff_artifacts.ralplan. - On missing ralplan consensus evidence: keep
current_phase:"ralplan", persistralplan_consensus_gate.complete:falsewithblocked_reason, and report an explicit blocker or max-iteration outcome instead of handing off to execution. - On ultragoal -> code-review: set
current_phase:"code-review", persist implementation/test/ledger evidence underhandoff_artifacts.ultragoal. - On code-review -> ultraqa: set
current_phase:"ultraqa"only after a realcode-reviewpass produced durable evidence; persist the clean review underhandoff_artifacts.code_reviewwith its source thread/skill/stage reference. Do not authorreview_verdict:{clean:true}from the leader's own summary. - On non-clean code-review requiring implementation repair: increment
review_cycle, setcurrent_phase:"rework", persistreview_verdict, persist the phase handoff underhandoff_artifacts.code_review, and keep the fix scoped to the review findings before returning tocode-review. - On clean review + passed/skipped QA: set
active:false,current_phase:"complete", persistreview_verdict:{recommendation:"APPROVE", architectural_status:"CLEAR", clean:true},qa_verdict:{clean:true, skipped:<boolean>, reason:<string|null>}, andcompleted_atonly when both gates have durable source evidence. Required evidence is either (a) actualcode-review/ultraqaskill passes or agent/thread/tool records, or (b) for QA only, an explicit persisted skip reason for a documented docs-only/trivially non-runtime condition. If that evidence is missing, keep the active phase atcode-revieworultraqaand record a blocker instead of self-attesting a clean gate. - On non-clean review requiring plan changes or failed QA: increment
iterationandreview_cycle, setcurrent_phase:"ralplan", persistreview_verdictorqa_verdict, persist the phase handoff, and setreturn_to_ralplan_reasonto a concise findings-driven reason. - Legacy Ralph state: if a user explicitly selected the legacy Ralph execution lane, phase names and handoff keys may include
ralph; preserve and resume them rather than rewriting history to Ultragoal. - On cancellation: run the
cancelskill; preserve progress for resume rather than deleting handoff artifacts.
Continuation and resume
When the user says continue, resume, or keep going while Autopilot is active, read .omw/autopilot/<slug>/state.json and continue from current_phase:
deep-interview: clarify requirements and record the handoff artifact.ralplan: run/update consensus planning from current handoffs and anyreturn_to_ralplan_reason.ultragoal: execute the approved plan durably and record verification/ledger evidence.rework: perform only the implementation fixes required by the current code-review findings, record fresh implementation/verification evidence, and return tocode-review.team: continue explicit team work only when it is nested under the active Ultragoal story and report evidence back to the leader.code-review: review the current diff and decide clean vs return-to-ralplan.ultraqa: run or explicitly skip adversarial QA based on the documented condition, then finish if clean or transition toralplanwith findings if not clean.ralph: resume only for explicit legacy Ralph-path Autopilot state.complete: report completion evidence; do not restart.
Do not restart discovery or discard handoff artifacts on continuation.
Pipeline orchestrator
Autopilot may be represented by a configurable pipeline orchestrator when useful. The default Autopilot pipeline contract is:
deep-interview -> ralplan -> ultragoal -> code-review -> ultraqa
Pipeline state should use current_phase values that match the same phase names (deep-interview, ralplan, ultragoal, rework, code-review, ultraqa, complete, failed) and should carry iteration, review_cycle, handoff_artifacts, review_verdict, qa_verdict, and return_to_ralplan_reason alongside stage results. team is not a default pipeline stage; it is an explicit conditional execution engine inside an Ultragoal story.
Escalation and stop conditions
- Stop and report a blocker when required credentials/authority are missing.
- Stop and report when the same review or QA failure recurs across 3 review cycles with no meaningful new plan.
- Stop when the user says "stop", "cancel", or "abort" and run the
cancelskill. - Otherwise, continue the loop until
code-reviewis clean andultraqahas passed or been explicitly skipped with evidence.
Final checklist
- Phase
deep-interviewproduced/updated clarified requirements or a concise spec - Phase
ralplanproduced/updated approved planning artifacts and durable sequential evidence from a subsequentarchitectapproval followed by a subsequentcriticapproval - Phase
ultragoalimplemented and verified the plan with fresh evidence and durable ledger/checkpoint references - Phase
reworkwas used for implementation-only review fixes when applicable, with findings scoped to a fresh code-review cycle -
teamwas used only if the active Ultragoal story needed coordinated parallel work, or explicitly recorded as not needed - Phase
code-reviewreturned a clean verdict (APPROVE+CLEAR) - Phase
ultraqapassed, or was explicitly skipped because the change was docs-only/trivially non-runtime with evidence - Clean
review_verdictcites durable source evidence from a realcode-reviewpass;qa_verdictcites durableultraqaevidence or an explicit persisted low-risk skip reason; leader-authored summaries alone are not gate evidence -
review_verdict.cleanis true,qa_verdict.cleanis true, andreturn_to_ralplan_reasonis null - Tests/build/lint/typecheck evidence from Ultragoal is available in handoff artifacts
- Autopilot state is marked
completeor cancellation state is preserved coherently - User receives a concise summary with clarification, plan, implementation, verification, review, and QA evidence
Examples
Good: User: autopilot implement GitHub issue #42
Flow: create/load context snapshot -> deep-interview requirements check -> ralplan issue plan -> ultragoal durable implementation + tests (launch team only if a story needs parallel lanes) -> code-review -> ultraqa; if review or QA requests changes, return to ralplan with findings.
Good: User: continue, state says current_phase:"code-review".
Flow: run code-review on current diff, persist verdict, transition to ultraqa if clean or to ralplan with findings if not clean.
Good: User: autopilot --legacy-ralph finish the migration
Flow: preserve the explicit legacy Ralph execution choice and run the old Ralph execution lane as an alternate, without changing the documented default Autopilot recommendation.
Bad: Autopilot invents independent "Expansion", "QA", and "Validation" phases and treats them as the primary lifecycle.
Why bad: this bypasses the strict deep-interview -> ralplan -> ultragoal -> code-review -> ultraqa contract.