Skill frontmatter `model:` field is ignored at runtime
Bug Report
Description
The model: field in a skill's SKILL.md frontmatter has no effect at runtime. Setting model: sonnet does not change the model used to execute the skill — it always runs under the main session's model (e.g., Opus).
Steps to Reproduce
- Create a skill with the following frontmatter in
SKILL.md:
``yaml``
---
model: sonnet
effort: medium
---
- Invoke the skill from a main session running Opus.
- Observe that the skill executes under Opus, not Sonnet.
Expected Behavior
The skill should execute using the model specified in the frontmatter, or the documentation should clearly state that model: is informational only and does not control execution.
Actual Behavior
The model: frontmatter field is silently ignored. All skills run under the main session's model regardless of the specified value.
Impact
Users who set model: sonnet to route cheaper tasks to smaller models end up consuming Opus tokens unintentionally. The only workaround is to explicitly spawn Agent(model="sonnet") inside the skill, which adds boilerplate and is easy to miss.
Request
Either:
- Honor the
model:frontmatter field when executing the skill, or - Document clearly that
model:does not control execution, so users are not misled.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗