Skip to main content

execute

Execute approved plan with hygiene — phased, verify-before-claim, granular commits, worktree subagents, inline tooling. /critique close at end. After /decide or plan file. NOT exploration (/decide).

Source facts

Repository
markusstrasser/skills
Last source activity
October 18, 2026 at 15:02
Detected SKILL.md language
English
Stars
0
Forks
0

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

File Explorer
2 files

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
execute
disable-model-invocation
true
description
Execute approved plan with hygiene — phased, verify-before-claim, granular commits, worktree subagents, inline tooling. /critique close at end. After /decide or plan file. NOT exploration (/decide).
argument-hint
[--slice P0-P2] [--from PHASE] <plan path>
allowed-tools
["Bash","Read","Glob","Grep","Write","Edit","Task","Skill"]
# Execute (with hygiene) You are executing an approved plan to a verified-done state. The deliverable is **working, committed, verified code that matches the plan's per-phase end-states** — not a report that says it's done. This is the convergent implementation twin of `/decide`; the pipeline is `/decide → /execute → /observe`. The point of this skill over an ad-hoc "execute the plan, use subagents, /critique at the end" prompt is the **hygiene that otherwise burns sessions**: phase gates, probe-before-build, verify-before-claim, commit discipline, subagent isolation, and — the centerpiece — **building tooling inline while you fix, not in a session-end retro.** ## When to use / NOT - USE: a plan exists and is approved (from `/decide`, `.claude/plans/`, or the user). The work is implementation, not deciding what to do. - NOT: the approach isn't settled (use `/decide`) · a single obvious edit (just do it) · pure research (`/research`). ## 0. Resolve the plan (this is what makes the handoff one line) Read the plan file AND its linked context (ADR / architecture doc / deferred-and-open tracker). Extract: - the **first vertical slice** (or honor `--slice` / `--from`); default to the plan's named first slice. - the **hard-gates + per-phase end-states** (a phase that says "gated on P2 live" does NOT start early). - the **invariants / non-negotiables** the plan + project constitution declare. - the **probes** the plan already wrote (its `read-before-plan` / `probe-the-join` commands). Confirm the slice + first phase with the user only if anything is ambiguous; otherwise begin. ## The execution loop (per phase — do NOT telescope phases) For each phase in the slice, in order: 1. **Probe-before-build.** Re-run the plan's probes for THIS phase. The codebase may have shifted since the plan was written; verify the assumptions (joins exist, deps present, schema shape) before building consumers against them. If a probe fails, that's a divergence → step 5. **Repo premise probe (default at every phase boundary):** before building, dispatch a read-only falsification pass on the phase's load-bearing premises — GPT-6 Astra at low effort in a read-only codex sandbox rooted at the repo (Composer 2.5, the old lane, was retired 2026-10-07; on a Codex plan-limit error rerun with `-m gpt-6.1-sol -c model_reasoning_effort=high`). Pattern: ```bash # /tmp/phase-premises.md: the numbered premises from the plan phase (callers exist? join keys on # both sides? helper already exists?) followed by: "For each numbered premise: PASS|FAIL|UNKNOWN + # file:line evidence or MISSING. Commit — no hedge-only lists. FAIL on any load-bearing premise # blocks the phase." codex exec -s read-only -C "$REPO" -m gpt-6-astra -c model_reasoning_effort=low \ -o /tmp/phase-premises-verdict.md - < /tmp/phase-premises.md ``` Any `FAIL` on a load-bearing premise → divergence (step 5) before writing code. This replaces ad-hoc greps for plan reviews; still verify the scout's claims with Read/Grep (it can hedge). 2. **Build.** Independent work → parallel subagents, **`isolation: "worktree"`** for anything that touches files (hard isolation beats soft; soft hurts on open-ended tasks). Each code subagent returns a **manifest of files-touched + files-skipped-with-reason**; diff it against intent before accepting. Any subagent prompt that names an output file must instruct: "FIRST tool call = Write a PROBE-IN-PROGRESS stub at that path" — the dispatch gate blocks file-output prompts without it (one wasted retry each time). **Executor tier** — set by VERIFIER QUALITY in the brief, not by how hard the task feels (`model-guide` → Dispatch Economics is canonical; measured, anim-workbench evals 2026-06-12). **Re-run this routing decision at EVERY phase boundary** — inline-momentum is a measured failure mode: a phase where inline was right (judgment-dense one-off after dead dispatches) was followed by briefed-gated phases that stayed inline by default until the operator interrupted (anim-workbench deletion edges, 2026-06-13). When real work fits a licensed lane, dispatch it and preregister the arms — work-tokens double as routing measurements (evals/dispatch_deletion_edges pattern): - **search / read fan-out** → Explore agent (output is consumed, not shipped — no executor risk) - **mechanical, no gate to game** (rename sweeps, boilerplate) → sonnet/haiku tier - **full brief + mechanical gates** (tests/typecheck/deterministic verify), greenfield OR port/re-author against an existing oracle → Opus effort-low (headless `claude -p --model opus --effort low`) or the codex $0 lane (`codex exec --full-auto -C <out-of-repo-worktree> -c model_reasoning_effort="low"` — pre-install deps, commit from outside the worktree; see model-guide for the gotcha list) > **Fable repricing rider (2026-07-07):** Fable 5 is off subscription — metered usage credits at > $10/$50 per MTok (2× Opus 5, which stays $0 subscription-routable). The Fable lanes below are > suspended ON COST, not capability: route them to **opus-low** (gated/oracle/review) or **Opus > default/max** (synthesis) until Fable returns to subscription (Anthropic says temporary). > A fable dispatch now needs a named Fable-specific justification + a one-shot billing probe first > (bill-vs-fail unverified). Canonical status: model-guide OFF-SUBSCRIPTION note. - **judgment-loaded gated work** (declared design holes, oracle-gotcha mapping, adjudicated-fact dependencies) → Fable effort-low (headless `claude -p --model claude-fable-5-1 --effort low`, key-stripped) — licensed at 0.90× opus-low tokens; found unique design gaps opus missed *(suspended per rider above → opus-low)* - **survivor-edge re-point / gate-redesign-with-oracle** (rewrite a legacy gate or module against a new runtime where the OLD code is in-tree as the behavioral oracle) → Fable effort-low *(suspended per rider above → opus-low)* — eval #8 (dispatch_deletion_edges 2026-06-13): shipped phase6-gate redesign (4 proof obligations, explicit downgrade disclosure) at 0.65× opus tokens on larger scope, plus the workbench-entry diagnosis. Two standing rules from that eval: build-executing arms need `ARM_PERMISSION_MODE=bypassPermissions` (acceptEdits walls Bash in headless), and a brief whose rewrite changes a SIGNATURE must pre-assign the fate of every typed consumer (else ownership and the typecheck gate are jointly unsatisfiable). Grader keeps the adjudication layer: adaptation-vs-regression calls on disclosed deviations are structurally the grader's (an arm scoped away from scenes/ cannot make them). - **ungated design REVIEW** (verdict on EXISTING structure: cosign/critique an architecture, audit a schema, grade a memo) → Fable effort-low *(suspended per rider above → opus-low)* — measured ≈ effort-high on critique quality (4/4 cosigns, 0 false anchors, 2 novel proposals) at **0.34× tokens** (anim-workbench effort-architecture eval, n=1 screening). Corroborated cross-model 2026-06-12: **Opus-low** (`llmx chat --subscription -m claude-opus-5 -e low`, $0) matched Opus-default (Agent tool) on a code-promotion review and produced the sharpest finding — review→low holds for Opus, not just Fable. The savings buy a SECOND DIVERSE reviewer — but `evals/cross_lab_review` SETTLED the lab question: cross-lab-vs-same-lab margin is **≈0** (count-delta is the win — a second pass of EITHER lab finds what the first missed; this session's same-lab Opus-llmx pass also surfaced a unique finding). The lever is the second diverse LANE, not its being a different lab. What DOES matter is that lane's PRECISION + **fact-grounding**: a MiniMax-M3 cross-lab pass verified at ~25% with confident HIGH-severity fabrications. Weight any second reviewer's reasoning, never its asserted facts. - **ungated design SYNTHESIS** (novel structure, open design hole, no oracle) → frontier model, effort HIGH — the FIRST measured effort-quality separation (low missed the orthogonal factoring high shipped; folded the dimensions and lost a composition the design existed for) - **partial/noisy verifier or spec-judgment gaps** → don't downgrade; frontier model, normal effort Standing revocation trigger: first cheap-lane gate failure on a task classified fully-briefed → fall back to default effort for that class + record it. Note the measured trap: a cheaper executor (Sonnet) *reward-hacked the gate* under pressure, so "cheap + weak gate" is the worst quadrant — and "Opus is token-efficient so cheaper" was REJECTED (~2.4× the premium buys spec fidelity, not efficiency). A downgraded executor's brief MUST carry exact verification commands + cleanup directives — low effort skips only *self-initiated* checking, so the brief does the initiating. **Effort pinning, corrected 2026-06-13:** agent-definition frontmatter supports `effort:` (low/medium/high/xhigh/max — overrides session; code.claude.com/docs/en/sub-agents.md), so the Agent tool CAN run pinned-effort subagents via a custom agent type — global defs exist for every lane with a measured caller: `fable-low` (gated/oracle/review), `opus-low` (briefed-gated + integration-with- oracle), `fable-high` (ungated synthesis) in ~/.claude/agents/; session-native tools (web, MCP) work there. xhigh/max defs deliberately not created: unverified for Fable ("available levels depend on the model") and no measured lane wants them. Headless `claude -p --model <m> --effort low` (key-stripped) remains for rig-manifest/eval dispatch (~/Projects/evals/bin/dispatch-arm.sh) — but know its wall: `--permission-mode acceptEdits` blocks WebSearch/WebFetch/MCP too (measured 2026-06-13: a research arm came back fully DEGRADED), so web-needing work goes through the Agent-tool lane, not headless-acceptEdits. `llmx chat --subscription -m <m> -e low` is the third path ($0 claude-cli transport; verified 2026-06-12). **Every headless brief MUST include "DO NOT use the Agent tool — run everything yourself in the main loop":** subagent shells sandbox-block build tools (bun/node TTY-approval wall), and a headless arm that delegates to subagents enters a dispatch→blocked→redispatch doom-loop (measured: 146 subagents/40 min, zero progress, looks "stuck" from outside; anim-workbench parity scene 2026-06-12). 3. **Verify-before-claim.** Run it. The phase's **end-state must observably hold** — and "run it" means at the **surface the change reaches** (CLI → type the command; server → send the request; library → import through the package boundary; GUI → drive it). Tests/typecheck are CI's evidence, not verification; import-and-call is a unit test you wrote, not the app running. Include **≥1 off-happy-path probe** per end-state (malformed input, repeated flag, stale state) and report probes distinctly (🔍 vs ✅) — held probes still get reported; an all-✅-no-🔍 report is a happy-path replay. **No partial pass:** "3 of 4 passed" is FAIL until the 4th passes or is explained away. Tests fail → say so with the output; a step was skipped → say that. No success theater: "done" means verified, not "should work." 4. **Commit.** Granular semantic commits, one logical change each. **Never `git add -A`/`.`** — stage specific paths. Foreground commits only (a hook-blocked commit returns exit 0 from a backgrounded call). 5. **Gate.** Do not advance to the next phase until this phase's end-state holds and is committed. Then run **`/diff-review low`** (Skill tool — local scout, GPT-6 Astra via codex) on the phase's commits: a precision-only pass (≤4 findings) that catches the dropped-guard / inverted-condition class while the phase is hot and cheap to fix. Bugs compound across phases — this is the same logic as the multi-phase checkpoint rule. Pass the path-scoped `.claude/rules/` files covering the diff as review context (closest-rules-win). Fix real findings before advancing; `(none)` → advance. ## Interleaved improvement (the centerpiece — build tooling DURING, not after) When you hit **repeated friction** (the same manual step 3+ times), a **missing guard** (a bug class the plan didn't anticipate), or a **missing self-documenting artifact**, do NOT log it for a session-end retro. **Spin a subagent (worktree-isolated) to build the tool / hook / recipe NOW**, land it, then continue the phase. Recursive self-improvement belongs *in* the loop. Examples that qualify: a probe you keep re-typing → a `just` recipe; a bug class you keep hitting → a warn-only hook; a DB you keep re-inspecting → a catalog. Keep it scoped and strictly-better — no speculative abstractions (that's the over-engineering trap). ## Mid-execution divergence (the plan can be wrong on the ground) If execution reveals the plan contradicts reality (a file/assumption is gone, an approach doesn't work, the epistemology/teleology looks off with more context), run the **disagree-self-check** (`../decide/references/checklists.md`): is the plan wrong, or am I? Name the new fact. Then **adapt and state what changed**, or flag it to the user if it's a spine-level reversal — don't blindly follow a plan that contradicts what you see, and don't silently abandon it either. Research / cross-check (`/research`, `/llmx-guide` for long-context GPT/Gemini calls) when the divergence is a knowledge gap. ## Done 1. **Completeness check** (`../decide/references/checklists.md`): every phase in the slice landed AND its end-state was verified AND committed. Mechanically verify; don't assert. 2. **Two-layer slice review:** **`/diff-review high`** (local skill — GPT-6 Astra scout + optional `--both`) over the WHOLE slice — recall mode ("a missed bug ships"), where cross-cutting issues invisible to the per-phase low passes surface — then **`/critique close`** for the design/architecture layer (diff layer is the local `/diff-review` pass — don't run it twice). Dispatch WITHOUT auto-fix; this session owns commits. 3. Report: what shipped (verified), what diverged (and why), what tooling you built inline, what's next (the next slice / deferred items). ## Honest limitation Origin n=1 (this skill's authoring session). After 2-3 real runs, `/observe` the transcripts and tune — especially the "repeated-friction → build-a-tool" threshold, which is the part most likely mis-calibrated.
View on GitHub