Skip to content
Documentation
Skill

/my-skill

What this skill does and when to use it. Claude reads this to decide relevance. Include keywords users would naturally say.

From plugin
explore-claude-code
3295 skills8 agents12 commands

Claude Code

$ npx -y skills add LukeRenton/explore-claude-code --skill my-skill --agent claude-code

SKILL.md

my-skill.SKILL.md
name: my-skill
description: What this skill does and when to use it. Claude reads this to decide relevance. Include keywords users would naturally say.

These two fields are the only ones required. `name` must be lowercase with hyphens, max 64 characters, and match the parent directory name. `description` is what Claude reads at startup to decide when the skill is relevant (max 1024 characters).

Optional Frontmatter Fields

Add any of these to the `---` block above to customise behaviour:

| Field | Example | Purpose | |---|---|---| | `argument-hint` | `[issue-number]` | Hint shown during autocomplete to indicate expected arguments | | `disable-model-invocation` | `true` | Prevent Claude from auto-loading. User must type `/name` explicitly. Use for deploys, sends, destructive ops | | `user-invocable` | `false` | Hide from the `/` menu. Claude can still load it automatically. Use for background knowledge | | `allowed-tools` | `Read, Grep, Bash(npm *)` | Tools Claude can use without asking permission. Space-delimited, supports patterns | | `model` | `claude-sonnet-4-6` | Override the model when this skill is active. Useful for cost control | | `context` | `fork` | Run in an [isolated subagent](^A separate Claude instance with its own context. The skill content becomes the subagent's system prompt). Skill content becomes the subagent's prompt | | `agent` | `Explore` | Which subagent runs when `context: fork`. Built-in: `Explore`, `Plan`, `general-purpose`, or custom from `.claude/agents/` | | `license` | `Apache-2.0` | License name or reference to a bundled LICENSE file | | `compatibility` | `Requires git, docker` | Environment requirements (max 500 chars) | | `metadata` | key-value pairs | Arbitrary metadata (author, version, etc.) |

---

Body Content

Everything below the frontmatter is the instruction body. Claude reads this when the skill is activated. Write whatever helps Claude perform the task. There are no format restrictions.

Good body content includes:

  • Step-by-step instructions for the task
  • Examples of inputs and expected outputs
  • Common edge cases and how to handle them
  • References to supporting files in this skill folder

String Substitutions

[Placeholders](^Variables in your SKILL.md that get replaced with real values before Claude sees the content) are replaced with real values before Claude sees the content:

| Placeholder | Resolves To | |---|---| | `$ARGUMENTS` | Everything the user typed after the skill name | | `$ARGUMENTS[N]` or `$N` | A specific argument by index (0-based) | | `${CLAUDE_SESSION_ID}` | The current session ID | | `${CLAUDE_SKILL_DIR}` | Path to this skill's directory |

Example: `/my-skill SearchBar React Vue` gives `$0` = "SearchBar", `$1` = "React", `$2` = "Vue".

If `$ARGUMENTS` is not present in the content, arguments are appended as `ARGUMENTS: <value>`.

Dynamic Context Injection

The `!` backtick syntax runs shell commands before the content reaches Claude. Output replaces the placeholder:

  • PR diff: `` !`gh pr diff` ``
  • Dependencies: `` !`cat package.json | jq .dependencies` ``
  • Changed files: `` !`git diff --name-only` ``

This is [preprocessing](^The commands run at skill load time, not during conversation. Claude only sees the final output, not the commands themselves). Claude only sees the final output, not the commands.

---

Supporting Files

Keep SKILL.md under 500 lines. Move detailed material to separate files and reference them from the body:

  • [references/REFERENCE.md](references/REFERENCE.md): Detailed documentation loaded on demand
  • [assets/template.md](assets/template.md): Templates and static resources
  • [scripts/helper.sh](scripts/helper.sh): Executable code Claude can run

Use relative paths from SKILL.md. Keep references one level deep. Navigate into these folders to learn more about each.

Read more
@lukerenton
Ships withexplore-claude-code

Learn Claude Code by exploring it as it was designed - interactive IDE-style docs for commands, MCP, skills, CLAUDE.md and more.

3295 skills8 agents
Get the whole plugin

Stars on GitHub

Momentum

stars in total
329
Star history of LukeRenton/explore-claude-code on GitHub, a chart by star-history.com

Other skills on explore-claude-code.

More skills from other plugins.

context7-cli

context7-cli

Use the ctx7 CLI to fetch library documentation and configure Context7 MCP. Activate when the user mentions "ctx7" or "context7",…

context711d64k
@upstash@upstashInstall Skill
docs-components

docs-components

Comprehensive MDX component patterns (Note, Pitfall, DeepDive, Recipes, etc.) for all documentation types. Authoritative source…

@reactjs@reactjsInstall Skill
codebase-wiki

codebase-wiki

How to work in a Codebase Wiki project (the `codebase-wiki` starter pack): an agent-authored, source-grounded wiki of the…

@inkeep@inkeepInstall Skill

Questions about my-skill.

Which coding agents can use my-skill?
my-skill installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.