CONCEPTS — MODULE 03

Skills vs. commands

Both are tools you can give Claude. They work in fundamentally different ways — knowing when to use which matters.

What skills are

Skills are instruction files Claude reads when you invoke them. When you call /source-verification, Claude loads the skill's markdown file and applies its knowledge to your session.

How closely it follows those instructions, which parts it emphasizes, how it formats output — all of that involves Claude's judgment. A skill is reference material the model consults, not a script it executes.

What commands are

A slash command is a deterministic trigger. When you invoke it, the workflow it specifies runs exactly as written, every time. Claude executes the specified steps — it doesn't interpret them.

That's the core distinction: skills are probabilistic (Claude decides how to apply the knowledge); commands are deterministic (the workflow runs as defined, in the order defined, without Claude deciding whether each step is necessary).

A journalism analogy

Compare a style guide to a pre-publication checklist. A style guide is reference material — reporters consult it when something needs checking, and how strictly they apply it varies by context and experience.

A pre-publication checklist is a fixed sequence: every story goes through these exact steps before it publishes, in this order, no skips. Skills are style guides. Commands are checklists.

Skill + command = reliable domain expertise

The pattern that works: put domain knowledge in a skill — the SIFT verification method, AP Style enforcement, FOIA request guidelines — then wrap that skill in a command for tasks where you need guaranteed execution.

The skill holds the expertise. The command ensures it always runs when it should, not just when Claude decides it's relevant.

When to use each

If you need contextual judgment about when and how to apply expertise, write a skill. If you need a defined workflow to execute the same way every time — batch processing, pre-publish checks, report generation — build a command around it.

Many tasks start as skills and get promoted to commands when the process stabilizes. When you find yourself using a skill the same way every time, that's the signal to wrap it in a command.

SOURCE: These patterns are drawn from the "Commands as lightweight local apps" lesson in jamditis/stash, which extracts and organizes techniques from The Agentic Lab's advanced Claude Code guide.

NEXT: Head to Module 3 to write your first skill and understand when you'd convert it to a command.