<p>Some releases add a shiny new model. This one adds something quieter and, honestly, more important: it changes <em>how Elyra knows things about models</em>. Version 0.9.7 is a small number with a good story — a bug, a band-aid we refused to keep, and a fix that means the next model launch just works. Plus Claude Fable 5, now available from a lot more places, including ones that keep your data in Europe.</p><h2>Why: the two ways Claude thinks</h2><p>To understand this release, you need one piece of background. Claude models do their extended "thinking" in one of two modes:</p><ul><li><p><strong>Budget thinking</strong> (the older way): you hand the model a token budget — "think for up to this many tokens" — and it does.</p></li><li><p><strong>Adaptive thinking</strong> (the newer way, Opus 4.6 onward and all Mythos-class models like Fable 5): the model <em>decides for itself</em> when and how hard to think, and you steer it with an effort dial instead.</p></li></ul><p>Here's the catch: a model that speaks one dialect rejects the other. Send a budget to an adaptive-only model and the API simply refuses. So an agent like Elyra has to know, for every Claude variant on every provider, which mode to use. Get it wrong and thinking doesn't degrade gracefully — it breaks.</p><h2>The bug we found</h2><p>While wiring up Claude Fable 5 last release, we went looking at how Elyra makes that adaptive-or-budget decision. The answer was a regex: a pattern match on the model's ID string. <code>opus-4-6</code>? Adaptive. <code>sonnet-4-6</code>? Adaptive. And so on.</p><p>It mostly worked. But on the Amazon Bedrock provider, the pattern had quietly fallen behind: it recognized Opus 4.6 and 4.7 — and <strong>missed Opus 4.8 and the entire Mythos class</strong>. Which means a Bedrock user switching to Opus 4.8 with thinking enabled was being routed down the budget path that those models don't accept. Not a degraded experience. A broken one.</p><p>That's the trouble with regexes as a source of truth: every new model family is a silent opportunity to be wrong, and you only find out when someone hits it.</p><h2>How we actually fixed it</h2><p>The band-aid would have been adding <code>opus-4-8|fable</code> to the pattern and moving on. We did extend the pattern — but as a <em>fallback</em>, not the fix. The real fix is that Elyra's model registry now carries the answer as data.</p><p>Every Anthropic-family model in the registry now has a <code>thinkingType</code> field — <code>"adaptive"</code> or <code>"budget"</code> — generated automatically from upstream model metadata (the same <code>reasoning_options</code> data that describes each model's capabilities). The providers check that field first; the regex only kicks in for custom models that have no metadata at all.</p><pre><code class="language-ts">// before: stringly-typed guesswork, per provider
/(?:opus-4-[6-7]|sonnet-4-6)/.test(model.id)

// after: the registry simply knows
model.thinkingType === "adaptive"
</code></pre><p>We verified the generated classifications against the live Anthropic API across the whole model family — adaptive models marked adaptive, budget models marked budget, sixty models in total, both the direct API and Bedrock.</p><p>Why this matters to you: <strong>the next time Anthropic ships a model generation, Elyra gets the thinking mode right on the day the model data lands — no code change, no release, no regex archaeology.</strong> Agents are only as good as what they know, and now this particular knowledge is data, not pattern-matching folklore.</p><h2>Fable 5, now from many doors</h2><p>The second half of 0.9.7: Claude Fable 5 is no longer only on the direct Anthropic API. The refreshed registry adds it on <strong>Amazon Bedrock</strong> (with EU, AU, JP, and global regional variants), <strong>OpenRouter</strong>, and <strong>Vercel AI Gateway</strong>.</p><p>The regional Bedrock variants are the quietly important ones. If you're in a European organization with data-residency requirements, this is the difference between "we can't use the new model" and:</p><pre><code class="language-bash"># Fable 5 through Bedrock's EU region — inference stays in eu-central-1
export AWS_ACCESS_KEY_ID=...
export AWS_SECRET_ACCESS_KEY=...
elyra
</code></pre><pre><code class="language-text">/model
</code></pre><p>Search for <code>Fable 5 (EU)</code>, select, done. Same model, same 1M-token context, same adaptive thinking — served from Frankfurt instead of Virginia. The AU and JP variants do the same for their corners of the world.</p><p>Already on OpenRouter for everything else? Fable 5 is there too — one key, no new account:</p><pre><code class="language-bash">export OPENROUTER_API_KEY=sk-or-...
elyra -p "Review src/auth for security issues" --model anthropic/claude-fable-5
</code></pre><p>And because of the thinking fix above, all of these route thinking correctly out of the box — including the Bedrock paths that would have failed before this release.</p><h2>How to upgrade</h2><pre><code class="language-bash">npm install -g @elyracode/coding-agent
</code></pre><p>Or from inside a session, the lazy way (our favorite):</p><pre><code class="language-text">/update
</code></pre><h2>The short version</h2><ul><li><p><strong>Added:</strong> <code>thinkingType</code> metadata on every Anthropic-family model, generated from upstream data — model-id regexes demoted to fallback duty.</p></li><li><p><strong>Added:</strong> Claude Fable 5 on Amazon Bedrock (EU/AU/JP/global), OpenRouter, and Vercel AI Gateway.</p></li><li><p><strong>Fixed:</strong> Bedrock was routing Opus 4.8 and Mythos-class models to budget-based thinking they don't support.</p></li></ul><p>No fireworks in this one — just an agent that knows its tools a little more deeply, breaks a little less often, and meets you wherever your infrastructure happens to live. That's the kind of release that doesn't trend, but it's the kind you feel six months from now.</p><p>Happy building.</p>