Room 42, home

Claude Code commands and skills worth using

A tour of the Claude Code slash commands and skills worth knowing, what each one does, when to reach for it, and which ones you can safely ignore.

Codingintermediate5 min readUpdated 12 Jun 2026

In short

  1. 01Slash commands and skills are how you drive Claude Code without writing code, and knowing the right ones saves real time.
  2. 02Build two habits: run init once per repo so Claude knows your conventions, and clear between unrelated tasks.
  3. 03Drop a markdown file in your commands folder to turn anything you repeat into your own one-word slash command.
  4. 04A skill is a standing capability Claude loads on its own when a task matches, instead of you invoking it by name.
Contents · 6 sections
  1. 1Which Claude Code commands will I use every day?
  2. 2Commands for control and context
  3. 3Commands that save a session
  4. 4How do I create a custom slash command?
  5. 5What is a Claude Code skill?
  6. 6Which Claude Code commands should I start with?

Most of Claude Code's power is one keystroke away. Type / and you get a menu of slash commandscommands you run inside a Claude Code session by typing a forward slash, like /clear or /model, and you can teach it new tricks with skillsa reusable instruction file Claude loads on demand to perform a specific task the same way every time. Knowing which ones to reach for is the difference between fighting the tool and flying with it.

This is a tour of the ones that earn their place, what each does, and when to use it. You run all of these from the CLI; none of them need you to write code.

Type slash to browse commands, then run a review skill that surfaces issues in a diff. Illustrative session.

Which Claude Code commands will I use every day?

CommandWhat it doesWhen to reach for it
/helpLists every command and the docs.When you forget the exact name of one of these.
/initScans the repo and writes a CLAUDE.md memory file.First thing in a new project, so Claude knows your conventions.
/clearWipes the conversation and starts fresh.When you switch tasks. A clean context is a focused agent.
/compactSummarises the conversation so far and keeps going.A long session is filling the context window but you are not done.
/modelSwitches which model is answering.Drop to a faster model for easy work, jump up for hard problems.
/effortSets how hard the model thinks per turn.Up for a big refactor, down for quick edits. See effort levels.

The two habits worth building: run /init once per repo, and run /clear between unrelated tasks. The first gives Claude your context for free on every future session; the second stops old context from bleeding into new work.

Commands for control and context

These come up the moment you do anything serious: managing a long session, wiring up tools, or tightening what the agent is allowed to do.

CommandWhat it doesWhen to reach for it
/memoryOpens your CLAUDE.md to edit the project's standing rules.When Claude keeps making the same wrong call. Write the rule down once.
/agentsLists and manages the subagents available in the project.Setting up specialised workers. See subagents.
/mcpShows and manages connected MCP servers.Checking what tools and data sources the agent can reach.
/permissionsReviews and edits what the agent can do without asking.Locking down anything that can write or delete.
/hooksConfigures hooks that run around tool calls.Auto-formatting, linting, or blocking risky actions. See hooks & guardrails.
/reviewAsks Claude to review a diff or pull request.Before you merge, for a second set of eyes.

Commands that save a session

CommandWhat it doesWhen to reach for it
claude --continueResumes your most recent session where you left off.You closed the terminal and want the thread back.
claude --resumePicks an older session from a list to resume.You want a specific past conversation, not only the last one.
/costShows the token and dollar usage of the session.Keeping an eye on a long or expensive run. See token usage and cost.

Plan mode is the other one worth a mention. Press Shift+Tab to cycle into a read-only mode where Claude proposes a plan and waits for your approval before touching anything. It is the safest way to start a big change.

How do I create a custom slash command?

You are not limited to the built-ins. Drop a markdown file in .claude/commands/ and it becomes a slash command for the whole project. The file is just the instructions you would otherwise type every time.

Run the test suite, then summarise only the failures: the test name, the file,
and a one-line guess at the cause. Do not try to fix anything yet.

Save that as .claude/commands/triage.md and /triage runs it on demand. Anything you find yourself asking for repeatedly is a candidate for a custom command.Common gotchaThat folder is project-scoped, so the command only exists in this repo and is not committed unless you add it.For a command you want in every project, put the file in ~/.claude/commands/ instead.

What is a Claude Code skill?

A skill is a step up from a command. It lives under .claude/skills/ as a SKILL.md file with a short description, and Claude pulls it in automatically when a task matches, rather than you invoking it by name.Common gotchaThe description is the trigger, not a label. Claude only loads a skill when your task matches the words in its description, so a vague or thin line means the skill sits unused while you wonder why it never fires.Write the description as a list of the exact tasks and phrases that should pull it in.

---
name: pr-review
description: Review a diff for correctness, edge cases, and security before merge.
---
 
When asked to review changes, run the diff against the main branch. Check, in
order: correctness bugs, missing edge cases, error handling, and security. Quote
the exact line for each issue. Skip style nits. End with a one-line verdict.

The difference that matters:

Slash commandSkill
How it runsYou type it: /triageClaude loads it when the task fits
Best forA specific action you triggerA standing capability or checklist
Lives in.claude/commands/.claude/skills/

Use a command when you want to kick something off. Use a skill when you want Claude to always handle a kind of task the same way, without being reminded.

Which Claude Code commands should I start with?

If you only adopt three, make them /init (give Claude your context), /clear (keep that context clean between tasks), and one custom command for the thing you repeat most. Add /effort and a review skill once you are doing serious work, and the rest will come up naturally as you need them.

Try this prompt
I keep asking you to do the same release checklist by hand. Turn it into a custom command in .claude/commands so I can run it with one word. Ask me for the steps first.