Animate pipeline + subagent Fable Mindset

Session 2026-09-12 21:30 → 2026-09-14 01:45 PT · M2, Fable 5.1 orchestrating 15 Opus/Sonnet subagents · pack written 2026-09-14

Goal met: Sonnet +76%, Opus +122%skills/animate promotedCodex: REVISE (1 blocker, no spend possible)Mini unreachable

The ask, the answer

Subagents now get the Fable mindset automatically, and with the v2 block both Opus and Sonnet close more than the 60–70% target on the reasoning habits that define the gap.

Your /goal: spin up subagents with the Fable mindset so they close 60–70%+ of the Opus/Sonnet gap to Fable, by building Nick Saraev’s animated-video workflow (video 2026-09-11) with Opus, Codex where useful, and a clean carryover into computer-use.

Why it was broken: SessionStart hooks never run inside subagents, so the mindset gate installed on 09-11 reached none of them (marker test: PREAMBLE=no). The fix is the Agent PreToolUse hook, which rewrites the prompt and sees the per-call model. The first block pointed at the full manual and 0 of 8 Sonnet agents followed the pointer; v2 inlines the loop and names the two measured habits. v2 is now the default for every non-Fable family.

Measured gap closure

Model, blocknreason / plan first / re-evaluategap closed
Sonnet, v1 pointer4 tr, 83 beats67 / 70 / 67%−18%
Sonnet, v2 inlined3 tr, 68 beats91 / 91 / 91%+76%
Opus, v1 builders3 tr, 96 beats93 / 94 / 95%+135%
Opus, v1 one 108-call fix pass1 tr, 54 beats74 / 75 / 75%−75%
Opus, v24 tr, 107 beats95 / 96 / 98%+122%
Untreated controlSonnet 205, Opus 102 trS 70/75/69 · O 85/86/88%baseline
Fable 5.1 ceiling51 sessions91 / 96 / 93%100%

gap closed = (treated − control) / (Fable − control), rows from extract-mindset’s analyzer. Observational: treated and control differ in task; small n on the treated side. The one Opus run that went past its context window fell below control, so re-injecting after compaction is the next lever for long runs.

Needs you

1Codex blocker on the money gate (first item next session)

Codex’s overnight read-only review (02:37) returned REVISE: a saved quote of 0 bypasses --go even on a paid provider, a malformed spends_credits value reads as free, and the style-still API call is ungated. No credentials exist on any box, so nothing can spend today. Three small edits plus negative controls; then Codex re-review.

comms/outputs/2026-09-12-animate-pipeline/review/codex-review.log

2Mini sync deferred

Mini timed out on the tailnet and refused the key via Nano. Tarball waits at /tmp/claude-502/animate-sync.tgz on M2; re-run the tar-over-ssh when Mini is back.

3Nano hook wiring

Files are on Nano by hash. The hook itself needs Nano’s claude-file-guard to whitelist ops/reference/mindset-toggle.conf, then copy ~/.claude/hooks/pre-tool-use-agent.py.

4First real Higgsfield run

Needs an account and a credits GO. The public API (50 paths) has no Genjutsu or Wan-animate endpoint, so the transfer step is the web UI (computer-use profile, unverified) or the Codex desktop plugin the video uses.

5Optional: promote the compaction re-injection

If long subagent runs matter, add a PostCompact re-injection of the block. Not built; flagged from the 108-call data point.

What was built

The video’s workflow: recording → face still → style still (image model) → 20 s chunks → per-chunk video style transfer (Genjutsu / Wan 3.0 / self-hosted Wan 2.2 Animate) → inspect joins, retry failed gens → stitch with the original audio → silence cut (0.5 s) → frame-rate stall → export. The agent is the production manager: one batch of questions, credits quoted before spending.

Reviews and what they caught

PassResult
Probe (Sonnet) mechanical sweep7/7 clean: syntax, fresh suites, manifest handoff, no secrets, no undocumented endpoints
Sol (Opus) adversarial reviewREVISE: 2 blockers (unpolled jobs on the web/Codex rails; handshake schema mismatch) + 10 more. All 13 fixed and re-proven in one Opus pass.
Three treated Sonnet test agentsFound 2 real defects: chunk.sh dropped 300 of 900 frames on a VFR source with exit 0; stitch.sh shipped two resolutions in one file. Both fixed; 5-minute scaling run 15 chunks, zero drift, 62 s (46 s after the fix).
Post-fix Opus v2 verificationConfirmed fixes; found 2 residuals (re-encode stitch lost 1 frame, then 478 after a filter re-init at the resolution change; chunk guard tautological). Fixed by the orchestrator: 960/960 frames verified, guard now compares against true source frames.
Codex (GPT) read-only review, 02:37REVISE: 1 blocker (money gate, above), risks on retrieval-failure resubmission, replanning reusing stale media, VFR guard overclaiming, clip-limit wording, quote rounding, join heuristic, manual-rail fixtures. 5 of Sol’s items confirmed FIXED, 5 PARTIAL.
Evals gatePASS 11/12 (sean-time 1: the open items above)

Files

comms/outputs/2026-09-12-animate-pipeline/README.md (index) comms/outputs/2026-09-12-animate-pipeline/measure/GAP-CLOSURE-final.md comms/outputs/2026-09-12-animate-pipeline/hooks/README.md (mechanism + how to change it) comms/outputs/2026-09-12-animate-pipeline/review/{SOL-REVIEW.md, codex-review.log} comms/active-tasks/20260913T053801Z__animate-pipeline-mindset-subagents.md memory: project_subagent_mindset_injection.md

Nothing spent, no network calls to any provider, no sends. Synced to Nano by hash; Mini pending.