Files
Gabor Körber 7c1ed39474 🤖 Spire 0.2.2: drop superpowers default, build settings, pinned role agents
- Superpowers is no longer part of the cycle; it survives only in
  implementation/references/superpowers.md (older models, override table).
- implementation: plan altitude, staleness check in the attack, phase
  review records unplanned work (never auto-reverts).
- Igor: orienting is not deciding, light grilling trial in brainstorm,
  research briefs ask for findings, journal times from `date`.
- project/init: `## Build` settings section, gitignored project.local.md
  override.
- New pinned agents planner, attacker, reviewer (Opus 5.5).
- .codex/config.toml mirrors .claude/settings.json (spire + gitea).
2026-10-15 13:48:42 +02:00

4.6 KiB

Model Tiers for Delegation

Prefer a project-pinned agent from .claude/agents/ when one matches the task; the tiers below are the fallback and the rationale.

Task type Tier subagent_type Rationale
Domain knowledge, repeated consultation adept agent (Opus, long-lived) "adept" Accumulated priors, informed search, journal continuity; domain-scoped
Deep research, bug investigation Opus-tier research agent "researcher" Depth, reasoning; writes reports, never modifies code
Quick fact extraction, version/config lookup Haiku lookup "scout" Fast, cheap, read-only; at most 2 web pages
Code/file lookups, symbol tracing Sonnet search "search" Read-only; targeted "where is X" lookups
Writing a plan planner (pinned to Opus 5.5) "planner", omit model Reads the code; plan at decision/contract altitude; never builds or attacks it
Attacking a plan, reshaping into a build plan attacker (pinned to Opus 5.5) "attacker", omit model Never the planner; writes the build plan
Phase review, re-check reviewer (pinned to Opus 5.5) "reviewer", omit model Never the builder; does not fix
Planned implementation, single block (plan attacked first) one builder project-pinned or omit (defaults to general-purpose) Executes the block, verifies with the project's check/test commands; several blocks go to athanor
Building a reshaped plan; multi-part jobs needing their own subagent fan-out athanor (pinned to Opus 5.5, may use Agent/Task tool) "athanor", omit model Builds one phase per turn; also takes non-build fan-out briefs
Complex summaries, git fixes, small code changes Sonnet subagent omit (defaults to general-purpose) Capability/speed balance; needs write access
Test runs, compiles, commits, linear-data summaries Haiku subagent omit (defaults to general-purpose) Fast, cheap, mechanical; needs Bash and possibly write access

Rules of thumb:

  • One task -> one subagent with an explicit output file path in the workpad.
  • Implementation goes through the cycle (plan → attack the plan → build): the athanor gets a reshaped build plan, never an unplanned build brief. A non-build job with 3+ independent subtasks (research cascade, audit) may go to athanor as a single brief (scope, output paths, completion criteria).
  • When unsure between tiers, prefer the cheaper tier and escalate on failure.

Write-capability guard:

  • Explore and Plan are READ-ONLY. They cannot use Edit, Write, or NotebookEdit. Never dispatch them for tasks that must produce a file artifact (report, design, plan, research note). Use them only for pure lookups (Explore) or pure planning conversations (Plan) where the answer comes back in the agent's reply text, not as a written file.
  • Prefer Spire's pinned read-only agents over Explore. scout (Haiku), search (Sonnet), and researcher (Opus, can write) are purpose-built and tool-restricted. Use scout or search for lookups instead of Explore.
  • For tasks that produce file output, use write-capable agent types. Omit subagent_type (defaults to general-purpose) or use a project-pinned agent that has Edit/Write (researcher, adept, athanor). The researcher agent is the correct choice for research that must produce a written report.

Sub-delegation guard:

  • Sub-delegation guard. Agent types without the Agent tool cannot spawn children: scout, search, Explore, and Plan are safe leaves. general-purpose and researcher/implementer agents may have the Agent tool and can sub-delegate — give them explicit "do not delegate" instructions, or route fan-out work to athanor on purpose. Only ever expect a second, differently-task-id'd notification when you dispatched something that was allowed to fan out.

Model selection rules:

  • Never dispatch a Fable-tier subagent unless the user explicitly asks. Subagents are Opus or lower.
  • Unpinned agents get an explicit model ("opus", "sonnet", "haiku") — omitting it inherits the coordinator's model, which may be Fable.
  • Pinned agents get no model unless you deliberately override the pin. The per-call alias overrides the frontmatter pin. Note the choice and have the agent stamp the model id it ran on.
  • Model traits (which model is good at what, context guesstimates) live in the implementation skill's references/models.md, as dated observations. Defaults as of 2026-10-05: Opus 5.5 for the Athanor, planning, attacking plans and review.

This table can grow — add new agents and heuristics here as they prove out.