5.7 KiB
Goal: Drop superpowers as default — Spire 0.2.2
Set: 2026-10-15, Igor session 2026-10-15-11-superpowers-opus55-era
Status: agreed with the user 2026-10-15
Order: the next Spire release after 0.2.0. lean-athanor-0.2.1 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, Spire coupling, plan anatomy, Claude Code tasks / pcvelz. Opinion: Fable.
Success criteria
Superpowers is no longer a default
- 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. - The workpad keeps steering other skills' markdown into the workpad, without naming a specific plugin.
- 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
- 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). - 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. - 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.
- Journal times (Igor journal, run log): timestamps come from
date, not from memory. - 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.) - Igor orients (Igor skill): when the user is exploring, Igor lays out findings and options and asks; it does not present proposals as decisions.
- Research briefs (Igor skill): briefs ask for findings, not verdicts.
- 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)
- Build settings:
## Buildsection in thespire:projecttemplate (gate, tests, checkout, branches, staging, owner models, brief constraints, host rules, build plan review); unset = default,none= deliberately absent; gitignored.claude/spire/project.local.mdwins overproject.md. - Pinned role agents:
planner,attacker,reviewer, pinned to Opus 5.5; Igor keeps checking stamped model ids.
Preps for grotto / 0.3.0
- Superpowers' plan anatomy researched → plan anatomy.
- Claude Code native Tasks and the pcvelz
.tasks.jsonmechanism researched → tasks. - Matt Pocock's skills installed and tried by the user; experience noted (grilling especially).
- The user's brainstorm implementation thoughts 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-docsincluding 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.tomlmirrors.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).