Custom Slash Commands for Claude Code
Custom Slash Commands for Claude Code
Slash commands are one of Claude Code's most powerful features. They let you define reusable prompts that execute with a single /command.
Where Commands Live
Commands are markdown files in ~/.claude/commands/. Each file becomes a slash command:
~/.claude/commands/
├── fix.md → /fix
├── prime.md → /prime
├── commit-and-push.md → /commit-and-push
├── code-review.md → /code-review
├── coverage.md → /coverage
├── ultrathink.md → /ultrathink
└── build-planning.md → /build-planning
My Command Collection
/fix — Debug Loop
The simplest but most used command:
READ the output from the terminal command to understand the error.
THEN FIX the error. Use context7 and brave-search MCPs to understand it.
THEN re-run the command. If there's another error, repeat.
Usage: Run a command, see an error, type /fix. Claude reads the terminal, understands the error, fixes it, and re-runs. Repeat until it works.
/prime — Project Understanding
When starting a new session:
## 1. Project Overview
- READ the README.md file
- RUN `git ls-files` to understand structure
- EXAMINE directory patterns
## 2. Core Documentation
- READ PLANNING.md for architecture
- READ TASKS.md for current status
## 3. Testing & Quality
- EXAMINE test files for patterns
## 4. Development Workflow
- CHECK CI/CD pipelines
- CHECK dev environment setup
Usage: Start every session with /prime. Claude builds a mental model of the project before doing anything.
/commit-and-push — Smart Git Workflow
More than just git commit:
ADD all modified and new files to git.
- Review the diff for problems and bugs
- Check if completed tasks in TASKS.md are actually done
- Check if tests are proper (not placeholders)
- Report if functionality was removed
- Raise concerns/recommendations
THEN commit with conventional commit notation.
THEN push to origin.
Usage: When you're ready to commit, /commit-and-push does a mini code review first.
/code-review — Full Codebase Analysis
Comprehensive review with prioritized findings:
Analyze the codebase for:
- 🔴 Critical: Security vulnerabilities, breaking bugs
- 🟠 High: Code quality issues, architectural problems
- 🟡 Medium: Minor bugs, missing tests
- 🟢 Low: Documentation, minor optimizations
Update TASKS.md with actionable items.
Usage: Run /code-review periodically or before major releases.
/coverage — Test Gap Filler
UNDERSTAND code coverage percentages for each function.
THEN add unit tests to functions without 100% coverage.
Include negative and edge cases.
ALWAYS use mocks for external functionality.
THEN re-run coverage and repeat as necessary.
Usage: After implementing a feature, /coverage fills in missing tests.
/build-planning — Project Bootstrap
Creates structured documentation for new projects:
Build PLANNING.md with:
- Project Overview
- Architecture (Core components, Data Model)
- API endpoints
- Technology stack
- Testing strategy
- Development commands
- Security considerations
- Future considerations
Build TASKS.md with categorized tasks.
Usage: Start new projects with /build-planning to establish structure.
/ultrathink — Craftsman Mode
My favorite. Changes Claude's entire approach:
**ultrathink** - We're not here to write code.
We're here to make a dent in the universe.
1. **Think Different** - Question every assumption
2. **Obsess Over Details** - Read the codebase like a masterpiece
3. **Plan Like Da Vinci** - Sketch architecture before coding
4. **Craft, Don't Code** - Every function name should sing
5. **Iterate Relentlessly** - First version is never good enough
6. **Simplify Ruthlessly** - Remove complexity without losing power
Usage: When you need exceptional quality, not just working code.
/docs-consolidate — Documentation Cleanup
Consolidates all markdown files into a clean docs folder.
- Identify meaningful documentation vs temporary notes
- Move relevant files to docs/ structure
- Remove redundant files and completed status updates
- Protect README.md and schema files
Usage: After a sprint, clean up scattered documentation.
Creating Your Own Commands
Basic Structure
---
description: Short description shown in /help
---
Your prompt instructions here.
Use imperative verbs: READ, WRITE, ANALYZE, FIX.
Reference tools: context7, bash, git.
Tips for Good Commands
- Be specific - "READ the error" not "understand what happened"
- Chain actions - "THEN" connects sequential steps
- Loop when needed - "repeat this process" for iterative tasks
- Reference tools - Mention MCPs and capabilities explicitly
- Set expectations - Tell Claude what output you want
Example: Custom Deploy Command
---
description: Deploy to production with safety checks
---
1. RUN `make test` - all tests must pass
2. RUN `make build` - verify build succeeds
3. CHECK git status - no uncommitted changes
4. READ CHANGELOG.md - verify version bump
5. RUN `make deploy`
6. VERIFY deployment by checking health endpoint
7. Report success or rollback instructions
Project-Specific Commands
Commands can also live in .claude/commands/ within a project:
my-project/
└── .claude/
└── commands/
└── db-migrate.md → /db-migrate (project only)
These override global commands and can reference project-specific tools.
The Power of Commands
Commands transform Claude Code from a chatbot into a workflow automation tool. Instead of explaining what you want every time, you define it once and invoke it with a word.
The best commands encode your team's best practices. They ensure consistency, reduce errors, and let you focus on the actual problem instead of the process.
Start with /fix and /prime. Add more as patterns emerge.