A Pi extension that allows you to specify models for specific skills via the model: frontmatter, Claude-Code style.
Pi does not support a model: field in skill frontmatter by default. With this extension, it does, allowing you to specify what model should be used by any skill.
It also checks if all configured models are available at Pi startup or /reload.
Skills have no fallback. This is by design, so skills never fall back to less intelligent or more expensive models.
If you are using subagents: these are not affected by this extension.
pi install git:github.com/MitchelliJ/pi-skill-modelTo pin a tag/commit:
pi install git:github.com/MitchelliJ/pi-skill-model@v1.0.0This writes to user settings (~/.pi/agent/settings.json) so the extension is available in every project. Add -l to install to project settings (.pi/settings.json) instead.
After installing any way above, restart Pi or run /reload.
Add a model: field to any skill's SKILL.md frontmatter:
---
name: prd
description: Generate a Product Requirements Document for a feature.
model: anthropic/claude-opus-4-8
---
# PRD skill instructions...Now /skill:prd runs on Opus regardless of the session's current model.
provider/id— exact match, the recommended form. Example:anthropic/claude-opus-4-8,zai/glm-5.2.id/ pattern — case-insensitive substring match against modelidorname. Example:opus,claude-sonnet-4-5. Loose patterns are convenient but can break across model version bumps; preferprovider/idfor skills you share.- Optional
:thinkingsuffix — e.g.anthropic/claude-opus-4-8:high. This is parsed but not applied (reserved for future thinking-level support). Skills always run at the session's current thinking level.
MIT — see LICENSE.