Skills
Skills
.claude/skills/*/SKILL.md
Vendor docs
frontmatter
| name | type | required | meaning | concept | |
|---|---|---|---|---|---|
| agent | string |
Which subagent type to use when `context: fork` is set.
|
docs ↗ | ||
| allowed-tools | string |
Tools Claude can use without asking permission during the turn that invokes this skill. The grant clears when you send your next message. Accepts a space- or comma-separated string, or a YAML list. See Pre-approve tools for a skill.
|
docs ↗ | ||
| argument-hint | string |
Hint shown during autocomplete to indicate expected arguments. Example: `[issue-number]` or `[filename] [format]`.
|
docs ↗ | ||
| arguments | string |
Named positional arguments for `$name` substitution in the skill content. Accepts a space-separated string or a YAML list. Names map to argument positions in order.
|
docs ↗ | ||
| context | string |
Set to `fork` to run in a forked subagent context. See Run skills in a subagent.
|
docs ↗ | ||
| description | string |
What the skill does and when to use it. Claude uses this to decide when to apply the skill. If omitted, uses the first paragraph of markdown content. Put the key use case first: the combined `description` and `when_to_use` text is truncated at 1,536 characters in the skill listing to reduce context usage.
|
docs ↗ | ||
| disable-model-invocation | string |
Set to `true` to prevent Claude from automatically loading this skill. Use for workflows you want to trigger manually with `/name`. Also prevents the skill from being preloaded into subagents. As of v2.1.196, also prevents the skill from running when a scheduled task fires with the skill as its prompt. Default: `false`.
|
docs ↗ | ||
| disallowed-tools | string |
Tools removed from Claude's available pool while this skill is active. Use for autonomous skills that should never call certain tools, such as `AskUserQuestion` for a background loop. Accepts a space- or comma-separated string, or a YAML list. The restriction clears when you send your next message.
|
docs ↗ | ||
| effort | string |
Effort level when this skill is active. Overrides the session effort level. Default: inherits from session. Options: `low`, `medium`, `high`, `xhigh`, `max`; available levels depend on the model.
|
docs ↗ | ||
| hooks | string |
Hooks scoped to this skill's lifecycle. See Hooks in skills and agents for configuration format.
|
docs ↗ | ||
| model | string |
Model to use when this skill is active. The override applies for the rest of the current turn and is not saved to settings; the session model resumes on your next prompt. Accepts the same values as `/model`, or `inherit` to keep the active model. A value excluded by your organization's `availableModels` allowlist is not used and the session keeps its current model.
|
docs ↗ | ||
| name | string |
Display name shown in skill listings. Defaults to the directory name. See How a skill gets its command name for how this differs from the name you type to invoke the skill.
|
docs ↗ | ||
| paths | string |
Glob patterns that limit when this skill is activated. Accepts a comma-separated string or a YAML list. When set, Claude loads the skill automatically only when working with files matching the patterns. Uses the same format as path-specific rules.
|
docs ↗ | ||
| shell | string |
Shell to use for `` !`command` `` and ` ```! ` blocks in this skill. Accepts `bash` (default) or `powershell`. Setting `powershell` runs inline shell commands via PowerShell when the PowerShell tool is enabled: it's on by default on Windows without Git Bash, and `CLAUDE_CODE_USE_POWERSHELL_TOOL=1` enables it elsewhere.
|
docs ↗ | ||
| user-invocable | string |
Set to `false` to hide from the `/` menu. Use for background knowledge users shouldn't invoke directly. Default: `true`.
|
docs ↗ | ||
| when_to_use | string |
Additional context for when Claude should invoke the skill, such as trigger phrases or example requests. Appended to `description` in the skill listing and counts toward the 1,536-character cap.
|
docs ↗ |