What slash commands are
A slash command is a shortcut. You type a forward slash and a name, and Claude runs a ready-made procedure. You type /init, for example, and Claude walks through your whole project and writes down rules for itself about how to work with it. You only typed one word.
I'll be honest: I don't use them much. Most of the time I just tell Claude in plain language what I want — “write me tests,” “review this,” “deploy it” — and he knows what to do. But if you like working in a structured way and running the same procedure over and over, commands are handy. They're there when you need them.
Which commands exist
There are several, and /help shows you the full list. Some of the most useful: /init at the start of a project — Claude takes your code and writes down rules for himself. /model if you want to switch which model is running. /clear if you want a fresh start.
Then there are commands around memory. /compact collapses a long conversation so the context doesn't overflow. /context shows how much space you have left. /memory opens the notes Claude keeps about what we've been working on.
And there are commands for bigger, parallel work — running multiple tasks at once or checking what's currently running. I barely use those. For someone who wants to organize their work properly, though, they make sense.
When they're worth using
/init is useful at the start of a project. It saves you writing a manual for Claude — he takes your code and writes the rules himself. And if you notice you're repeating the same procedure over and over, you can save it as your own command and just call it.
I keep Claude set to the strongest model all the time, so I rarely need to switch. Commands are more for people who want to lock in a procedure. I rely on telling Claude something clearly and him understanding it on his own. You don't have to use them. You can. Try them and see which ones fit your style.
For a detailed list of all commands, see the official Claude Code docs. Each one is explained there with examples.