Claude Code glossary
disable-model-invocation
A SKILL.md frontmatter field that prevents Claude from automatically loading a skill; only you can invoke it.
Also called: disable model invocation, manual only skill, stop Claude auto-running a skill
disable-model-invocation is a SKILL.md frontmatter field that prevents plain Claude from automatically loading the skill. Its default value is false. When set to true, only you can invoke the skill by typing its /name slash-command. This is useful for workflows with side effects or where you need to control the timing, such as for commands like /commit, /deploy, or /send-slack-message. You do not want Claude deciding to deploy code simply because it appears ready. Setting this field to true also removes the skill's description from Claude's context, which can free up listing budget. Additionally, it prevents the skill from being preloaded into subagents and, in recent versions of Claude Code, stops it from running when a scheduled task triggers it. This contrasts with user-invocable: false, which hides the skill from the user-invoked menu but allows Claude to run it. While user-invocable controls user visibility, disable-model-invocation controls whether the model itself can initiate the skill's execution. For example, a skill like Skill Audit might benefit from this setting if you want to ensure it only runs when explicitly requested, not based on Claude's interpretation of code readiness. This field is distinct from the concept of model-invocation itself, which refers to the model's ability to call tools or skills.