A recurring workflow becomes a single word. You're no longer using AI — you're configuring it.
The Slash Command
After this drill, you have created a slash command that compresses a recurring workflow into a single word — and felt the muscle memory of a personalized AI.
Why this matters
In Drill 5.3, you taught Claude Code about your project. It already knows your context. In this drill, you go further: you teach it your workflows. A slash command is a reusable instruction file — a recipe you write once and invoke with a single word. /review. /deploy-check. /daily-standup. /write-tests. When you type /review in a Claude Code session, it runs the full review procedure you defined: check for bugs, verify the logic, look for security issues, format the output as a report. You did not type all of that. You typed one word. The moment you write your first slash command, something shifts. You are no longer a user who adapts to the tool. You are a commander who configured the tool to your exact needs. That is the muscle. That is The Crossover, second stage.
How to do it
- 1
Identify one workflow you repeat regularly in your project
Examples: "Review a component for bugs and accessibility issues", "Check if a new feature follows the project conventions", "Write a commit message that follows the project style", "Generate test cases for a function."
- 2
Create the .claude/commands/ directory
mkdir -p .claude/commands — this is where Claude Code looks for custom commands.
- 3
Write your slash command file
Create .claude/commands/review.md (or whatever name fits your workflow). Write it as a detailed prompt that Claude Code will execute when you type /review.
- 4
Test it: type /review in a Claude Code session
Pass it a file or context as needed. Verify it does exactly what you intended.
The prompt
# /review — Code Review Review the code I provide for the following issues, in order of priority: 1. **Bugs**: Logic errors, edge cases that aren't handled, potential crashes 2. **Accessibility**: Missing alt text, keyboard navigation issues, contrast problems 3. **Convention compliance**: Does this match the patterns in CLAUDE.md? 4. **Performance**: Any obvious inefficiencies or unnecessary re-renders 5. **Security**: Any inputs that aren't validated, any sensitive data exposure Format your response as: - Critical issues (block merge): numbered list - Minor issues (should fix): numbered list - Suggestions (optional): numbered list - Overall verdict: one sentence Be direct. Do not praise the code. Only report issues.
# /commit — Commit Message Generator Look at the staged changes in this repository (git diff --staged). Write a commit message that: 1. Follows the convention: type: description (feat, fix, chore, docs, refactor, test) 2. Is specific about what changed (not "update component" but "add loading state to submit button") 3. Is under 72 characters for the subject line 4. Adds a body paragraph if the change is complex enough to warrant explanation Output only the commit message — nothing else.
Success criteria
- ✓You created at least one slash command file in .claude/commands/
- ✓The command executes correctly when called with /command-name
- ✓The command produces consistent, useful output without additional prompting
- ✓You can articulate the difference between operating AI and configuring AI
Common mistakes
Writing commands that ask for clarification before executing
→ A command that asks "what file do you want to review?" defeats the purpose. The command should be opinionated: assume sensible defaults, execute, report. If you need to pass a file, use it as an argument: /review [file].
Writing commands too broad ("improve everything")
→ A command that does everything does nothing well. One command per workflow. /review reviews. /commit writes commit messages. /explain explains.