
Encode Any Multi-Step Workflow as a Slash Command: Claude Code Skills
Chris Harper
2 min read
Jun 30, 2026 · 04:13 UTC
TL;DR: Drop a Markdown file into .claude/skills/name/SKILL.md and /name becomes a reusable team command — $ARGUMENTS passes text from the call, frontmatter restricts tools, and disable-model-invocation: true gates side-effect workflows.
Claude Code ships with /code-review, /debug, and a handful of built-ins. Every file you add to .claude/skills/ creates your own /command — committed to git so your whole team gets it, loaded only when called (no CLAUDE.md bloat).
File structure
.claude/
skills/
pr-review/
SKILL.md → /pr-review
changelog/
SKILL.md → /changelog
commands/ # legacy flat .md files still work
commit.md → /commit
User-level skills go in ~/.claude/skills/ and are available across all your projects.
A complete example
Save this as .claude/skills/review/SKILL.md:
---
description: "Review a specific file or module for correctness and security"
tools: Read, Grep, Glob
disable-model-invocation: true
---
Review the code at $ARGUMENTS for:
1. Logic errors and off-by-one edge cases
2. Security issues (injection, auth bypass, exposed secrets)
3. Missing error handling
For each finding: file path, line number, severity (high/medium/low), one-line description.
Invoke it with:
/review src/auth/login.ts
$ARGUMENTS receives everything after the command name — a file path, a task description, a ticket number, whatever fits the workflow.
Frontmatter options that matter
| Field | Effect |
|---|---|
description: "..." | Shown in /help and used for Claude's auto-invocation decisions |
tools: Read, Bash | Restrict which tools Claude can call inside this skill |
disable-model-invocation: true | Only you can trigger it — Claude won't auto-run it |
disable-model-invocation: true is the one to know for side-effect workflows like /deploy or /push — you want to be the one pulling that trigger, not Claude deciding the moment is right.
Commit and share
Skills in .claude/ are just files. Commit a useful /pr-review skill with your codebase and every contributor gets the same workflow on clone. No configuration, no onboarding step.
Claude Code skills follow the Agent Skills open standard, so well-formed SKILL.md files work across other compatible AI dev tools too.
Sources: