-
-
Notifications
You must be signed in to change notification settings - Fork 79.1k
anthropic (api_key) provider: Claude Haiku 4.5 missing from static model catalog → "Unknown model" (model_not_found) #90088
Copy link
Copy link
Open
Labels
P2Normal backlog priority with limited blast radius.Normal backlog priority with limited blast radius.clawsweeper:fix-shape-clearClawSweeper found a clear likely implementation shape for this issue.ClawSweeper found a clear likely implementation shape for this issue.clawsweeper:queueable-fixClawSweeper marked this issue as an existing queue_fix_pr work candidate.ClawSweeper marked this issue as an existing queue_fix_pr work candidate.clawsweeper:source-reproClawSweeper found a high-confidence source-level issue reproduction.ClawSweeper found a high-confidence source-level issue reproduction.impact:auth-providerAuth, provider routing, model choice, or SecretRef resolution may break.Auth, provider routing, model choice, or SecretRef resolution may break.issue-rating: 🦞 diamond lobsterVery strong issue quality with high-confidence source-level or clear reproduction.Very strong issue quality with high-confidence source-level or clear reproduction.
Metadata
Metadata
Assignees
Labels
P2Normal backlog priority with limited blast radius.Normal backlog priority with limited blast radius.clawsweeper:fix-shape-clearClawSweeper found a clear likely implementation shape for this issue.ClawSweeper found a clear likely implementation shape for this issue.clawsweeper:queueable-fixClawSweeper marked this issue as an existing queue_fix_pr work candidate.ClawSweeper marked this issue as an existing queue_fix_pr work candidate.clawsweeper:source-reproClawSweeper found a high-confidence source-level issue reproduction.ClawSweeper found a high-confidence source-level issue reproduction.impact:auth-providerAuth, provider routing, model choice, or SecretRef resolution may break.Auth, provider routing, model choice, or SecretRef resolution may break.issue-rating: 🦞 diamond lobsterVery strong issue quality with high-confidence source-level or clear reproduction.Very strong issue quality with high-confidence source-level or clear reproduction.
Type
Fields
Give feedbackNo fields configured for issues without a type.
Summary
On the
anthropic(api_key) provider, no Claude Haiku 4.5 model id resolves. Both the rolling aliasanthropic/claude-haiku-4-5and the datedanthropic/claude-haiku-4-5-20251001fail at model resolution withUnknown model ... (model_not_found). Opus 4.6/4.7/4.8 and Sonnet 4.6 resolve fine on the same provider/auth.Environment
anthropic:default, modeapi_keyRepro
Same failure when a cron job's
payload.modelis set to either id (openclaw cron run <id>→lastErrorReason: model_not_found). A job with a fallback chain shows:All models failed (2): anthropic/claude-haiku-4-5-20251001: Unknown model ... | anthropic/claude-haiku-4-5: Unknown model ....Root cause
dist/extensions/anthropic/openclaw.plugin.json→modelCatalog.providers.anthropic.modelslists onlyclaude-opus-4-8,claude-opus-4-7,claude-opus-4-6,claude-sonnet-4-6. There is no Haiku entry. AndmodelCatalog.discovery.anthropic = "static", so there's no runtime discovery to fill the gap.DEFAULT_CLAUDE_MODEL_BY_FAMILY.haiku = "claude-haiku-4-5"exists inclaude-model-refs, and #78000 addedclaude-haiku-4-5to the api_key allowlist defaults — but neither makes the model resolvable, because the resolver requires the id to be present in the provider's static catalog.Expected
anthropic/claude-haiku-4-5(and/or the datedclaude-haiku-4-5-20251001) resolves on the api_key provider, the same way Sonnet/Opus do.Suggested fix
Add a Haiku 4.5 entry to
modelCatalog.providers.anthropic.models, mirroring theclaude-sonnet-4-6entry:{ "id": "claude-haiku-4-5-20251001", "name": "Claude Haiku 4.5", "reasoning": true, "input": ["text", "image"], "contextWindow": 200000, "maxTokens": 64000 }(The dated Anthropic model id is
claude-haiku-4-5-20251001;claude-haiku-4-5is the rolling alias.)Impact
Anyone wanting Haiku 4.5 on the api_key provider — e.g. as a cheaper tier for cron/heartbeat jobs — can't select it; those jobs fail with
model_not_founduntil switched to Sonnet (~3x the per-token cost).Non-working workaround
Declaring a custom Haiku entry under
providers.anthropic.modelsinagents/<id>/agent/models.jsonis stripped on gateway restart, so that isn't a viable workaround. Current workaround is to useanthropic/claude-sonnet-4-6.