0Pricing
Claude Architect · Lesson

Custom Commands vs Skills

Project vs user scope; commands and the newer skills.

Why Commands and Skills Exist

Once a Claude Code workflow stabilizes, you stop typing the same multi-step prompt over and over. You capture it once and invoke it by name. That is what custom commands and skills are for: reusable, named units of behavior that live in your project or your home directory.

Two axes define everything in this lesson. First, the mechanism: .claude/commands/ is the legacy approach, .claude/skills/ is the current one. Second, the scope: project (shared via VCS) versus user (personal, in ~/.claude/). Get both axes right and your team gets consistent, portable workflows.

Custom Commands: The Legacy Mechanism

A custom command is a markdown file in .claude/commands/. The filename becomes the command name, and the body is the prompt that runs when you invoke it. It is essentially a saved prompt template you trigger by name instead of retyping.

Commands are simple and still work, but they are the legacy approach. They carry no structured metadata for isolating output or restricting tools. For new work, prefer skills, which add exactly those controls.

# .claude/commands/review-pr.md
Review the current diff for correctness bugs only.
Flag a comment ONLY when it contradicts the code it describes.
Report findings as a markdown list grouped by file.

All lessons in this course

  1. Custom Commands vs Skills
  2. Skill Frontmatter
  3. Plan Mode vs Direct Execution
  4. Iterative Refinement with Examples
← Back to Claude Architect