Day 81 of 86 · Tuesday · Learning

Opus 5.5 vs Fable - what the model pin in your three wrappers actually buysCapability

Claude Opus 5.5 arrived 9-22 at $4/$20 per million tokens against Fable 5.1's $10/$50, with Anthropic claiming Fable-level output on most work. Your three headless wrappers still pin Fable. Today: what a model pin is, and how to trial the cheaper model on one morning without touching code.

Catch-up progress
81/86
Why this matters to you

The 9-11 Fable usage limit killed plan-day (three retries) and the nightly briefing. The 9-13 ink answered with a pin plus fallback chain, which stops the crash but keeps the most expensive model on jobs that run every day unattended. This week's weekly review carries D2, the adopt decision; this lesson is the background so the checkbox is informed.

A model pin is the --model flag a script passes to claude -p. Without it the run silently inherits whatever the CLI's default is that week, which is how the nightly briefing changed models under you before 9-11 (the comment at nightly_wrapper.sh:43 records this). With it, the model is a decision you made once and can read back.

Your pins are written as ${PDB_MODEL:-fable}. That shell idiom means: use the PDB_MODEL environment variable if set, else the word fable. So the default lives in the script, but any single run can override it from the command line without an edit. That is the trial mechanism: one morning on a different model, nothing committed.

Opus 5.5 differs from Fable in two ways that matter for your jobs. Price: $4 in / $20 out versus $10 / $50, and cache reads at $0.20. Behaviour: its default effort is medium, one notch below Fable's, and thinking cannot be switched off. Claude Code 2.1.280 made it the default Opus, so the alias opus now resolves to Opus 5.5. The fallback chain (sonnet,haiku) stays the same either way.

Worked example

Read the three pins, then run one plan-day on Opus 5.5 by hand.

grep -n 'PDB_MODEL\|NIGHTLY_MODEL' \
  /Users/tom/Claude/PDB/scripts/run_plan_day.sh \
  /Users/tom/Claude/PDB/scripts/run_weekly_review.sh \
  /Users/tom/Claude/JobHunt/scripts/nightly_wrapper.sh

PDB_MODEL=opus /Users/tom/Claude/PDB/scripts/run_plan_day.sh

tail -5 /Users/tom/Claude/PDB/logs/plan-day.log
▶ Do it now
  1. Run the grep above and confirm all three wrappers pin fable.
  2. Run one plan-day with PDB_MODEL=opus (about 4 minutes) and read the brief it publishes to PDB.zorc.app.
  3. Note on the 9-27 weekly paper (D2) whether the Opus brief read as well as the Fable one. That mark decides whether the defaults flip.

Gotchas

Go deeper: Claude Code changelog 2.1.280 (Opus 5.5 default) · 9-13 decision: pin both wrappers
One-card takeaway

A pin with a default is a decision you can override for one run; that is how you trial a model without a commit.