Self loads Eureka; Hands, Eyes and Life default to Sonnet; handoffs are pointers

- Agent frontmatter: hands, eyes and life default to model: sonnet, so an
  omitted model can no longer spend the root's strong model. Soul and
  Imagination keep inherit (operator 2026-10-03: "Soul and Imagination get the
  smarter model, not Hands").
- Self output style: invoke the Eureka skill at session start and after every
  /clear. A skill loads only when invoked; a session that never loaded it
  dispatched every Hands on Opus.
- Rotation: the handoff carries only what the mind does not hold, and Self
  rehydrates from the mind before briefing. A handoff that restated campaign
  status hid that scenarios Cuts 2-4 had not landed.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Eureka 2026-10-03 22:15:15 +02:00
commit e3f202f72d
5 changed files with 16 additions and 7 deletions

View file

@ -536,8 +536,14 @@ and reconciles the target doc with the Body.
- **Never claim an agent's result before its notification arrives.**
- **Self's own context is the most expensive in the pipeline.** Every
notification re-reads all of it. Rotate at about 300k context or at a phase
boundary: write a short handoff (campaign slug, session label, next action)
to the scratchpad and ask the operator to `/clear`. A clear ends the
boundary: write a short handoff to the scratchpad and ask the operator to
`/clear`. The handoff carries only what the mind does not hold: the session
label, the next action by id, each agent in flight, and drafts not yet
admitted. It never lists what landed or what is open; that is a second copy
of the mind (see "Never restate typed state in prose"). On re-entry, Self
rehydrates before briefing anyone: `whoami`, the campaigns recipe, then for
every campaign in force the open questions and follow-ups and the specs with
no report. The handoff is a pointer into that state, not the ledger. A clear ends the
session's background agents: their commits survive on branches, their
unadmitted reports and verdicts do not. Rotate when no agent is in flight; if
one must be, the handoff lists its branch, worktree and owed admission, and

View file

@ -1,7 +1,7 @@
---
name: eyes
description: Reads history, transcripts, logs, docs and sources and returns facts with evidence pointers. Does not conclude or recommend. Dispatch when the question is what exists or what happened, before anyone touches the world.
model: inherit
model: sonnet
color: green
---

View file

@ -1,7 +1,7 @@
---
name: hands
description: Executes one cut by making small commits that realize a given cut_spec, with proof, then one cut_report. Does not redesign the spec or work around a fork; a real fork is reported, not decided. Dispatch for Eureka Hands cuts and for any bounded implementation with a written target shape.
model: inherit
model: sonnet
color: orange
---

View file

@ -2,7 +2,7 @@
name: life
description: Maintains the agent's Mind — memory files, memory indexes, doctrine, Persona state, project maps and checkpoints. Dispatch on every nontrivial task with persistent Mind surfaces, before the first consequential action or conclusion, and again at real phase boundaries and after re-entry; the Self output style's Dedicated-worker contract requires this, because a task-focused agent lets memory rot. Its sole job is Mind maintenance, so give it no feature work, code review, research, or summarization.
tools: [Read, Write, Edit, Grep, Glob, Bash]
model: inherit
model: sonnet
color: purple
---

View file

@ -124,8 +124,11 @@ Only after that scratch file exists should you read files, run project-specific
### Self
If you are a root interactive agent, you are by default the coordinator, the
Self. On nontrivial work with persistent state, dispatch the dedicated Life
worker required above; route further workers only to the faculties the task
Self. Invoke the Eureka skill at session start and after every `/clear`,
before briefing the operator or dispatching: its dispatch rules and its
re-entry step are Self's working method, and a skill loads only when invoked.
On nontrivial work with persistent state, dispatch the dedicated Life worker
required above; route further workers only to the faculties the task
actually needs. Do not make an implementation worker
impersonate a completed maintenance pass.