# Goal: Drop superpowers as default — Spire 0.2.2 **Set**: 2026-10-15, Igor session [2026-10-15-11-superpowers-opus55-era](../journals/2026-10-15-11-superpowers-opus55-era.md) **Status**: agreed with the user 2026-10-15 **Order**: the next Spire release after 0.2.0. [lean-athanor-0.2.1](./lean-athanor-0.2.1.md) stays open; its delegation-row fix lands here. **Leads to**: 0.3.0 — Spire adopts the `grotto` plugin's design / plan / handoff procedure (see "Later") ## Why On modern models (Opus 5.5, Astra) superpowers overdoes it: token spend, too many gates and reviews, review+fix ≈ 2/3 of the work, scope beyond the plan — worst in Rust codebases. Its problems are hard to avoid even with the lean method. Modern models need lighter guardrails and harness-aware help, not generic ceremony. 0.2.2 removes superpowers as a default and bundles single-sentence fixes that pay off now. The full procedure is grotto / 0.3.0. Research: [alternatives](../research/2026-10-15-11-superpowers-alternatives.md), [Spire coupling](../research/2026-10-15-11-spire-superpowers-coupling.md), [plan anatomy](../research/2026-10-15-12-superpowers-plan-anatomy.md), [Claude Code tasks / pcvelz](../research/2026-10-15-14-claude-code-tasks-and-pcvelz.md). Opinion: [Fable](../reports/2026-10-15-13-fable-opinion-superpowers-direction.md). ## Success criteria ### Superpowers is no longer a default - [x] No Spire skill or agent presumes superpowers is installed or recommends it as part of the normal cycle. Current references: `implementation/SKILL.md:3,32,84`, `agents/athanor.md:60`, `workpad/SKILL.md:3,10`, `research-tree/SKILL.md:3`. - [x] The workpad keeps steering other skills' markdown into the workpad, without naming a specific plugin. - [x] A reference doc (`implementation/references/superpowers.md`) is where superpowers survives: when and how to use it with Spire — e.g. with older models (Opus 4.6) — and which of its rules the lean cycle overrides. ### Single-sentence fixes - [x] **Plan altitude** (`spire:implementation`): a plan holds decisions, contracts, invariants and the scope fence; code only where its exact form is the decision (schema, wire format, state machine). - [x] **Staleness in the attack** (`spire:implementation`): the attack checks the plan for staleness against the current code. Reading the previous phase's run log and review is only needed when something is off. - [x] **Unplanned work on record** (phase review): the reviewer lists what was built that the plan did not ask for — on record only, never an automatic revert. An unplanned addition may be a good one. - [x] **Journal times** (Igor journal, run log): timestamps come from `date`, not from memory. - [x] **Delegation row** (Igor skill and `model-tiers.md`): "Planned implementation" → attacked plan → Athanor (multi-block) or one general-purpose builder (one block). (From 0.2.1.) - [x] **Igor orients** (Igor skill): when the user is exploring, Igor lays out findings and options and asks; it does not present proposals as decisions. - [x] **Research briefs** (Igor skill): briefs ask for findings, not verdicts. - [x] **Light grilling** (Igor skill, brainstorm stage): if a grilling skill (e.g. Matt Pocock's `grill-me` / `grill-with-docs`) is installed, Igor may use it for a light brainstorm. Trial. ### Pulled in from the former 0.2.1 goal (user, 2026-10-15) - [x] **Build settings**: `## Build` section in the `spire:project` template (gate, tests, checkout, branches, staging, owner models, brief constraints, host rules, build plan review); unset = default, `none` = deliberately absent; gitignored `.claude/spire/project.local.md` wins over `project.md`. - [x] **Pinned role agents**: `planner`, `attacker`, `reviewer`, pinned to Opus 5.5; Igor keeps checking stamped model ids. ### Preps for grotto / 0.3.0 - [x] Superpowers' plan anatomy researched → [plan anatomy](../research/2026-10-15-12-superpowers-plan-anatomy.md). - [x] Claude Code native Tasks and the pcvelz `.tasks.json` mechanism researched → [tasks](../research/2026-10-15-14-claude-code-tasks-and-pcvelz.md). - [ ] Matt Pocock's skills installed and tried by the user; experience noted (grilling especially). - [ ] The user's brainstorm [implementation thoughts](../brainstorm/2026-11-15-implementation_thoughts.md) is an input to grotto. ## Decided (user, 2026-10-15) - Spire drops superpowers as a default; the reference doc is where it survives. - Switching superpowers off in existing installs is the user's job — not encoded in Spire. - Grill-me belongs to the brainstorm stage, not design. Light grilling: Igor does it. A full brainstorm may justify Pinky. - Try `grill-with-docs` including glossary and ADRs. Where ADRs live is a per-project decision, not Spire's. - Designs and plans are transitional; code is truth. A design is not a spec. - The design / plan / handoff procedure becomes its **own plugin**, so Spire doesn't get overblown. It works standalone too (storage location then defined by the user); most of the time it runs with Spire, and a project may have Spire without it. - Plugin name: **grotto** (a cave — the batcave without Batman: no superpowers; where Igor fetches the plans). "Batcave" dropped: likely DC trademark. - `.codex/config.toml` mirrors `.claude/settings.json` (spire + gitea). Done 2026-10-15. ## Later (grotto / 0.3.0, not 0.2.2) - Guidance for: writing a design, writing a plan, keeping handoffs and journals (general and harness-specific). - Drift (two-way, incl. positive drift) and audience per artifact as known forces — not fixed rules. - Retrospectives from the lean Athanor runs feed grotto's refinement. - May take several iterations. ## Out of scope - Workpad as personal space vs project docs as the durable home (graduation of specs, research, ADRs).