Skill frontmatter `model:` field is ignored at runtime

Resolved 💬 2 comments Opened Apr 8, 2026 by workpodsjun Closed May 22, 2026

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

  1. Create a skill with the following frontmatter in SKILL.md:

``yaml
---
model: sonnet
effort: medium
---
``

  1. Invoke the skill from a main session running Opus.
  2. 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:

  1. Honor the model: frontmatter field when executing the skill, or
  2. Document clearly that model: does not control execution, so users are not misled.

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗