Custom Skills & Slash Commands
CoreCreate and configure custom slash commands and skills · Difficulty 2/5
Skills are reusable, on-demand instructions invoked via slash commands in Claude Code.
File Locations
.claude/skills/ (version-controlled, team-wide)~/.claude/skills/ (per-developer).claude/commands/ (version-controlled)~/.claude/commands/ (per-developer)Skills vs Commands vs CLAUDE.md
| Configuration | Loaded When | Best For |
|---|
|---|---|---|
| CLAUDE.md | Every conversation | Universal standards |
|---|---|---|
| .claude/rules/ | File path matches glob | Path-specific conventions |
| Skills/Commands | On-demand via slash command | Task-specific workflows |
Personal Customization
Create personal variants in ~/.claude/skills/ with different names to avoid affecting teammates. Project skills with the same name take precedence over personal skills, so use distinct names for personal overrides.
Common Pattern: Exploration Skill
Use `context: fork` for brainstorming/analysis skills to prevent abandoned approaches from influencing subsequent implementation work.
Key Takeaways
- ✓Project commands in .claude/commands/ are shared via version control
- ✓Skills are on-demand; CLAUDE.md is always loaded
- ✓Project skills override personal skills with the same name
- ✓Use different names for personal skill variants to avoid conflicts
Related Concepts
Test Yourself1 of 3
Your team created an /analyze-codebase skill that performs comprehensive code analysis. After running this command, team members report that Claude becomes less responsive and loses track of their original task. What's the most effective way to address this?