Claude Code: Skills Frontmatter Reference
Quick-reference tables for defining skills in .claude/skills/<name>/SKILL.md.
Frontmatter Fields
All fields are optional. Only description is recommended so Claude knows when to use the skill.
| Field |
Type |
Required |
Description |
name |
string |
No |
Display name and /slash-command. Lowercase letters, numbers, hyphens only (max 64 chars). Defaults to directory name if omitted |
description |
string |
Recommended |
What the skill does and when to use it. Claude uses this for auto-discovery. Falls back to first paragraph of content if omitted |
argument-hint |
string |
No |
Hint shown during autocomplete (e.g., [issue-number], [filename] [format]) |
disable-model-invocation |
boolean |
No |
Set true to prevent Claude from auto-loading this skill. User can still invoke via /name. Default: false |
user-invocable |
boolean |
No |
Set false to hide from the / menu. Use for background knowledge Claude should load automatically but users shouldn't invoke directly. Default: true |
allowed-tools |
string |
No |
Tools Claude can use without permission prompts when this skill is active (e.g., Bash(agent-browser:*)) |
model |
string |
No |
Model to use when this skill is active |
context |
string |
No |
Set to "fork" to run in an isolated subagent context |
agent |
string |
No |
Which subagent type to use when context: fork is set (e.g., Explore, Plan, or a custom agent name). Default: general-purpose |
hooks |
object |
No |
Lifecycle hooks scoped to this skill (same format as agent hooks) |
Invocation Methods
| Method |
Trigger |
Example |
| Slash command |
User types /skill-name |
/weather-fetcher |
| Agent preload |
Listed in agent's skills: frontmatter |
skills: [weather-fetcher] |
| Auto-discovery |
Claude matches user intent to description |
Automatic |
| Direct mention |
User references the skill by name |
"Use the weather-fetcher skill" |
Invocation Control
| Frontmatter |
User can invoke |
Claude can invoke |
Context loading |
| (default) |
Yes |
Yes |
Description always in context, full skill loads when invoked |
disable-model-invocation: true |
Yes |
No |
Description not in context, full skill loads when user invokes |
user-invocable: false |
No |
Yes |
Description always in context, full skill loads when invoked |
Skill vs Agent vs Command
| Aspect |
Skill |
Agent |
Command |
| File location |
.claude/skills/<name>/SKILL.md |
.claude/agents/<name>.md |
.claude/commands/<name>.md |
| Has own tools |
No (restricts via allowed-tools) |
Yes (tools: field) |
No |
| Has memory |
No |
Yes (memory: field) |
No |
| Has hooks |
Yes (hooks: field) |
Yes (hooks: field) |
No |
| Can preload skills |
No |
Yes (skills: field) |
No |
| User-invocable |
Yes (/skill-name) |
No (invoked via Task tool) |
Yes (/command-name) |
| Runs in isolation |
Optional (context: fork) |
Always isolated subprocess |
Runs in main context |
| Supporting files |
Yes (same directory) |
No |
No |
String Substitutions
Available inside skill markdown for dynamic values:
| Variable |
Description |
$ARGUMENTS |
All arguments passed when invoking the skill |
$ARGUMENTS[N] |
Access a specific argument by 0-based index (e.g., $ARGUMENTS[0]) |
$N |
Shorthand for $ARGUMENTS[N] (e.g., $0, $1) |
${CLAUDE_SESSION_ID} |
Current session identifier |
!`command` |
Dynamic context injection — shell command output replaces the placeholder before Claude sees it |
Example: Minimal Skill
Example: Restricted Skill
Example: Fork Context Skill
Example: Full-Featured Skill (All Fields)
Scope and Priority
When skills share the same name, the higher-priority location wins:
| Location |
Scope |
Priority |
| Enterprise (managed settings) |
All users in organization |
1 (highest) |
Personal (~/.claude/skills/) |
All your projects |
2 |
Project (.claude/skills/) |
This project only |
3 |
Plugin (<plugin>/skills/) |
Where plugin is enabled |
Namespaced (no conflict) |
Skills from .claude/commands/ still work. If a skill and a command share the same name, the skill takes precedence.
Skills in This Repository
| Skill |
Description |
Used By |
weather-fetcher |
Fetch temperature from wttr.in API |
weather agent |
weather-transformer |
Apply transformations to temperature data |
weather agent |
agent-browser |
Browser automation CLI commands |
standalone (auto-discovery) |
presentation/vibe-to-agentic-framework |
Conceptual framework for the presentation |
presentation-curator agent |
presentation/presentation-structure |
Slide format, weight system, navigation |
presentation-curator agent |
presentation/presentation-styling |
CSS classes and component patterns |
presentation-curator agent |
Sources