Skip to main content

phoenix-auto

Dynamic, state-sensing router for autonomous multi-step work — chooses the next Phoenix skill at runtime from the current objective state (what's green/red, what stage, is there a backlog) instead of following a fixed pipeline. This is Phoenix's autopilot. Use for open-ended autonomous execution where the next step depends on results, when the user says /phoenix-auto, "autopilot", "drive this", "orchestrate", or "figure out the steps as you go". For a fixed lifecycle just use the phoenix meta-router; for a persistent backlog loop use phoenix-ralph.

الانتقال إلى التثبيت

معلومات المصدر

المستودع
All-The-Vibes/ATV-Phoenix
آخر نشاط في المصدر
١٩ يونيو ٢٠٢٦ في ٢٣:١٩
لغة SKILL.md المكتشفة
الإنجليزية
النجوم
٦
التفرعات
٤

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
type
Phoenix Skill
name
phoenix-auto
description
Dynamic, state-sensing router for autonomous multi-step work — chooses the next Phoenix skill at runtime from the current objective state (what's green/red, what stage, is there a backlog) instead of following a fixed pipeline. This is Phoenix's autopilot. Use for open-ended autonomous execution where the next step depends on results, when the user says /phoenix-auto, "autopilot", "drive this", "orchestrate", or "figure out the steps as you go". For a fixed lifecycle just use the phoenix meta-router; for a persistent backlog loop use phoenix-ralph.
license
MIT
# phoenix-auto — the adaptive orchestrator The base `phoenix` skill is a **fixed routing tree** (think → plan → build → review → ship): great when the path is known. phoenix-auto is the **dynamic** counterpart — Anthropic's *routing* + *orchestrator-workers* patterns ([Building Effective Agents](https://www.anthropic.com/engineering/building-effective-agents)): at each step it **senses current state** and picks the next skill based on results, because in real work you can't predict the subtasks up front. > Fixed pipeline = a train on rails. phoenix-auto = a driver reading the road. Both are valid; pick by > how predictable the path is. ## The state-sensing loop ``` ┌───────────────────────────────────────────────┐ ▼ │ SENSE state ──▶ ROUTE to a skill ──▶ EXECUTE ──▶ phoenix_sense gate (green/red? (pick next by (run it) │ backlog? current reality) ├─ green ─▶ snapshot, re-SENSE ─┘ stage?) └─ red ──▶ phoenix_heal (≤3) ─▶ re-SENSE ``` ### Routing policy (what to pick, given state) | Current state | Route to | |---|---| | Goal is vague / no acceptance check exists | `phoenix-goal` (formalize) → or `phoenix-think` | | Have intent, no steps | `phoenix-plan` | | There's a backlog to grind to completion | `phoenix-ralph` (the persistence loop) | | Implementing a known step | `phoenix-build` (+ `phoenix-test` to set the gate) | | A check is red / something broke | `phoenix-debug` | | Need cheap structural context | `phoenix-context` (graph) | | Work looks complete | `phoenix-review` → `phoenix-ship` | ## Guardrails (dynamic routing fails in specific, known ways — design against them) - **Oscillation guard.** Keep a short route history. If you route to the same pair of skills back and forth, or pick the same skill 3× with no state change, **stop and escalate** — that's a planning problem, not a routing one. - **Confidence fallback.** If the right next skill isn't clear, route to `phoenix-think`, don't guess. - **Re-sense, don't cache.** Decide from a *fresh* read of state (the trace, the backlog, a real `phoenix_sense`), never a remembered summary — stale state causes wrong routes. - **Every executed step still ends in an objective gate.** Routing chooses *what*; `phoenix_sense` decides *whether it worked*. Dynamic routing never relaxes the verification law. - **Bounded.** A cap on total steps; on exhaustion, report state honestly rather than looping. ## Common Rationalizations | Rationalization | Reality | |---|---| | "I'll keep routing until it works out." | Unbounded routing is just an expensive infinite loop. Cap steps; escalate when stuck. | | "I routed here last step, I remember the state." | Re-sense. Acting on cached state is the #1 cause of wrong routes. | | "Confidence is low but I'll pick something." | Low confidence → `phoenix-think`. Guessing the route wastes a whole step. | | "This step's result looks right, route onward." | "Looks right" isn't a gate. `phoenix_sense` before you route on a result. | ## Red Flags — stop - You've bounced between two skills more than twice. → Escalate; it's a planning problem. - You're routing based on what you *think* the state is. → Re-sense from disk/trace first. - A step "succeeded" with no `phoenix_sense`. → No gate, no progress; verify before routing on. ## Relationship to the other skills phoenix-auto is opt-in: the base **phoenix** router stays a stable fixed tree and dispatches here only when you explicitly ask for autonomous mode or when `.phoenix-ralph/` state is present. For a known backlog it will usually route straight into **phoenix-ralph**; for a vague goal, into **phoenix-goal**.
عرض على GitHub