Skip to main content

phoenix-think

The thinking-first stage of the Phoenix lifecycle. Before any code, deeply understand what is actually wanted through Socratic deep interview and evidence-grounded deep research, surface and resolve hidden assumptions, and converge on a crystal-clear intent whose deliverable is a runnable objective acceptance check. Use at the start of any non-trivial task, when an ask is vague or ambiguous, or when the user says /phoenix-think, "think first", "interview me", "don't assume", or "research this before building".

Zur Installation springen

Quellinformationen

Repository
All-The-Vibes/ATV-Phoenix
Letzte Quellaktivität
18. Juni 2026 um 02:25
Erkannte Sprache von SKILL.md
Englisch
Sterne
6
Forks
4

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
type
Phoenix Skill
name
phoenix-think
description
The thinking-first stage of the Phoenix lifecycle. Before any code, deeply understand what is actually wanted through Socratic deep interview and evidence-grounded deep research, surface and resolve hidden assumptions, and converge on a crystal-clear intent whose deliverable is a runnable objective acceptance check. Use at the start of any non-trivial task, when an ask is vague or ambiguous, or when the user says /phoenix-think, "think first", "interview me", "don't assume", or "research this before building".
license
MIT
# phoenix-think — understand deeply, then define "done" objectively > _The most expensive bug is building the wrong thing correctly._ Most agents skip straight to code on a half-understood ask and produce something plausible but wrong. `phoenix-think` is the antidote: it spends cheap thinking-tokens up front to (1) extract what the user *actually* wants, (2) ground it in real evidence from the codebase and the world, and (3) crystallize it into an intent whose finish line is a **runnable objective check** — the gate the rest of the Phoenix lifecycle (plan → build → review → ship) verifies against. No check, no proceed. This stage is deliberately rich. Rushing it is the false economy this whole harness exists to prevent. ## Three movements (do them in order; loop until clarity) ### 1. ELICIT — Socratic deep interview (extract intent, don't assume it) Ask **one focused question at a time**, each targeting the highest-uncertainty unknown. Prefer questions that expose *hidden assumptions* over questions that confirm what you already believe. Cover, as relevant: - **Outcome:** What does success look like *to you*? How will *you* know it worked? (push for an observable signal, not a feeling) - **Boundaries:** What is explicitly OUT of scope? What must NOT change or break? - **Constraints:** performance, privacy, budget (calls/$), reversibility, deadline, who else is affected. - **Context & priors:** Is there existing code, a convention, a past attempt, a preferred approach? - **Edge cases & failure:** What inputs/states worry you? What does "wrong" look like? - **Hidden assumptions:** State the assumptions you're making back to the user and ask them to confirm or correct each one. ("I'm assuming X — is that right?") Track an informal **ambiguity score**: how much could still go wrong if you executed now? Keep interviewing until that risk is low. Stop early if the user says "just do it" — respect their intent, but state the top 1–2 assumptions you're proceeding on. ### 2. GROUND — evidence-grounded deep research (replace guesses with facts) Do not theorize on assumptions. Investigate before deciding: - **Codebase:** read the relevant code, conventions, tests, and prior art. Use structural retrieval (the bundled TokenMasterX graph: who-calls / what-breaks-if-I-change) to find the real blast radius instead of grepping blind. Identify the existing pattern to follow, not a generic default. - **Project memory/conventions:** check for project-specific rules the model can't guess (naming, formats, idioms). A correct-looking default that violates a convention is a silent failure (see H3). - **External (when the task needs it):** verify SDK/framework/API behavior against primary docs, not recall. Cite what you find; flag anything you could not verify as *unverified*. - Record what you learned and — crucially — **what you still don't know.** Unknowns are honest and steer the next interview question. ### 3. CRYSTALLIZE — the Intent Contract + the acceptance gate (the Phoenix payload) Converge everything above into a short, explicit contract: ``` INTENT (raw): <the user's words, verbatim — never silently reinterpret> GOAL (world-state): <the observable end-state: "X is true", not "do X"> ACCEPTANCE CHECK: <a runnable phoenix_sense check that passes iff the goal is met> e.g. {"kind":"command_exit","target":["pytest","-q","tests/test_x.py"],"expect":0} CONSTRAINTS: privacy · budget · reversibility · scope-out ASSUMPTIONS: <confirmed-with-user list; the risks you're proceeding on> OPEN QUESTIONS: <what's still unknown, and how you'll resolve it> ``` The **acceptance check is the deliverable of this stage.** It is what `phoenix-ship` will re-run before anyone is allowed to say "done." If no test exists yet, the contract names "write that test" as the first build step — because the check *defines* done. ## The hard rule Do not hand off to `phoenix-plan` until you have an acceptance check you could **run today and watch fail** on the unbuilt work. A gate that cannot fail measures nothing. If success genuinely cannot be made objective (a pure judgment call), say so explicitly and name the strongest objective proxy you can — never pretend a vibe is a verified outcome. ## Calibrate the depth (don't over-interview a trivial ask) - **Trivial / precise ask** (file paths, exact behavior, existing acceptance criteria): skip the interview, do a quick codebase ground-check, write the one-line check, proceed. - **Standard ask:** a few sharp questions + a focused codebase read. - **Vague / high-stakes / "interview me":** the full three movements, multiple interview rounds, deep research, explicit assumption confirmation. ## Honesty Surface assumptions instead of burying them. Report "unknown" rather than guessing. The output of good thinking is not certainty — it is a *correctly-scoped* intent with an objective finish line and the risks named out loud. ## Next Hand the Intent Contract to **`phoenix-plan`**, which decomposes it into small, individually-verifiable steps that compose up to the acceptance check.
Auf GitHub ansehen