[FEATURE] Support fallback model declaration in SKILL.md frontmatter
Problem
Skills support a model field in SKILL.md frontmatter to specify which model should handle the skill:
---
name: my-skill
model: sonnet
---
When the specified model becomes unavailable (e.g. during an outage), the skill fails entirely. There is currently no way to declare a fallback model at the skill level.
The existing --fallback-model CLI flag is:
- Global (applies to the entire session, not per-skill)
- Only triggers on overload, not on other failure scenarios like model unavailability (#8413)
- Only available in print mode
This means skill authors have no mechanism to ensure their skills remain functional during model outages.
Proposed Solution
Allow a fallback-model (or model-fallback) field in SKILL.md frontmatter:
---
name: my-skill
model: sonnet
fallback-model: opus
---
When the primary model is unavailable (not just overloaded), the skill should automatically retry with the fallback model.
Alternatively, the model field could accept a list to express preference order:
---
name: my-skill
model: [sonnet, opus]
---
Use Case
We maintain a plugin with 10+ skills that all declare model: sonnet for cost efficiency. During a recent Sonnet outage, every skill broke simultaneously — even though the user's session was running on Opus and could handle the work just fine.
We had no workaround other than manually removing the model field from every SKILL.md or waiting for the outage to resolve. A per-skill fallback would make plugins resilient to single-model outages without forcing all skills to always use the most expensive model.
If anyone has found other workarounds for this, I'd love to hear about them in the comments.
Related Issues
- #8413 — Fallback model only triggers on overload, not on other failure scenarios
- #38537 — Safety classifier inherits unavailable model, breaking Bash commands
- #11653 — Feature request for automatic model fallback when quota is exhausted
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗