Claude Code

Mastering Claude Code slash commands

Every built-in slash command, when to use it, and how to write your own, with real Australian small-business examples you can copy.

In short

Slash commands are typed shortcuts inside a Claude Code session. Built-ins like /clear, /model and /compact handle session management. Custom ones (Markdown files in .claude/commands/) let you turn repeat workflows into one-line invocations. The 5 we share below, /daily, /standup, /quote, /changelog, /audit-leads, each save us 10-30 minutes a week.

Slash commands are the difference between Claude Code as a chat window and Claude Code as a workflow tool. Once you stop typing the same instructions out longhand and start firing them as commands, the tool gets dramatically more useful.

The built-in commands worth knowing

These ship with Claude Code. Type / in any session to see the full list; here are the ones I use most weeks, in priority order.

Session management

  • /clear, wipe the conversation history and start fresh. Use it when you switch tasks or when the model is getting confused by stale context.
  • /compact, summarise the conversation so far into a shorter version. Use it when you want to keep context but free up tokens before a big task.
  • /resume, pick up a previous session. Indispensable when your terminal crashes mid-refactor.

Model + budget control

  • /model, switch model (e.g. /model opus for tricky bits, /model haiku for cheap text edits). Switching mid-session is fine; it picks up the current context.
  • /cost, show how much you’ve spent this session. Sobering after a long Opus run.

Project setup

  • /init, generate a starter CLAUDE.md for your project. Run this once in any new repo and let Claude analyse your codebase, then edit the result. Saves writing the file from scratch.
  • /memory, open the memory file for editing (Claude’s persistent notes about your project + preferences).
  • /add-dir, add another directory to the session’s working set. Useful when your work spans multiple repos.

Workflows

  • /agents, list and run defined sub-agents.
  • /review, review a file or recent diff with structured feedback.
  • /help, list every available command, including your custom ones.

Writing your first custom slash command

Custom commands live in .claude/commands/ in your repo (project-scoped) or ~/.claude/commands/ (user-scoped, available across all your projects). They’re plain Markdown files. The filename becomes the command name.

A minimal example. Save this as ~/.claude/commands/aud.md:

---
description: "Australianise text: en-AU spelling, $AUD, DD/MM/YYYY dates."
---

Rewrite the following text in Australian English. Use organised not organized, colour not color, centre not center. Convert all currency to AUD with explicit AUD label. Convert all dates to DD/MM/YYYY format. Use en dashes not em dashes. Preserve tone.

Now in any Claude Code session, type /aud and paste your text. Claude rewrites it to Australian conventions.

Five custom commands we actually use

These are the slash commands we use weekly across DotVA and the Lead Gen Empire network. Copy them, adapt them.

/standup, generate a Slack-ready daily standup

---
description: "Generate today's Slack standup from yesterday's git activity."
---

Run `git log --since='24 hours ago' --author="$(git config user.email)" --pretty=format:'%h %s'` and summarise into three sections:

**Yesterday:** What I shipped (bullet list, plain English, no commit hashes)
**Today:** What I'm doing (read the GitHub issues assigned to me)
**Blockers:** Anything in #blocked label

Format for Slack. Keep it under 200 words.

/changelog, append the latest release to a CHANGELOG

---
description: "Add today's changes to CHANGELOG.md grouped by type."
---

Read the git log since the last entry in CHANGELOG.md. Group commits into Added / Changed / Fixed / Removed. Write the new section at the top of CHANGELOG.md with today's date in DD/MM/YYYY format. Keep entries to one line each.

/quote, generate a client quote PDF brief

---
description: "Generate a DotVA-format client quote from a scope description."
---

I'll paste a scope of work. Generate a one-page quote in this format:

- Header: client name, project name, date (DD/MM/YYYY)
- Scope (3-5 bullet points, plain English)
- Deliverables (numbered list)
- Investment: amount in AUD ex-GST
- Timeline: weeks from go-ahead
- Next step: book a kickoff call

Save the result to `docs/quotes/[client-slug]-[YYYY-MM-DD].md`.

/audit-leads, review the Formspree leads inbox

---
description: "Pull and summarise recent audit-form leads."
---

Read the file ops/leads-export.csv (export from Formspree). For each lead in the last 14 days, score it 1-5 on fit (look for: business size, urgency, budget signals, Australian location). Output a ranked list with one-sentence rationale per lead. Flag the top 3 for follow-up today.

/aud-blogpost, draft a new On Autopilot post

---
description: "Draft a new On Autopilot blog post in our voice and frontmatter shape."
---

Start a new MDX article in src/content/blog/ with our standard frontmatter:

- title (under 70 chars)
- description (under 160 chars)
- publishDate (today in YYYY-MM-DD)
- author: jenn-yang
- type: opinion | briefing | news
- eyebrow
- tags: array

Voice rules: Australian English, no em dashes (use en dashes), conversational, lead with the answer, AUD pricing, DD/MM/YYYY dates, no AI-isms ("get into", "elevate", "let's dive in" → cut all). Aim for 800-1200 words.

I'll give you the topic in my next message.

Pro tips after a year of slash commands

  1. Name commands after verbs. /audit-leads not /leads; /standup not /morning. Verbs make muscle memory.

  2. Add $ARGUMENTS for parameters. You can include $ARGUMENTS in the markdown body and Claude substitutes whatever you type after the command. Useful for /find <term> style commands.

  3. Reference files explicitly. Use @file://path/to/thing.md syntax inside command bodies to pull in templates or context. The file content gets included at command time.

  4. Don’t over-engineer. A command that’s used once a week beats a command that’s “more general” but used once a month. Build for the workflow you actually have.

  5. Share team commands via git. .claude/commands/ lives in your repo. Commit it. The team gets the same shortcuts.

What to build next

If you want to go deeper than slash commands:

Or start saving your own commands as you notice repeat work. The fastest test: if you’ve typed roughly the same prompt three times this week, it should be a slash command.

Common questions

Where do custom slash commands live?
Project-scoped: .claude/commands/ in your repo. User-scoped (across all projects): ~/.claude/commands/ on macOS/Linux, C:\Users\<you>\.claude\commands\ on Windows.
Can a slash command run shell commands?
Indirectly. The command file gives Claude instructions, and Claude can choose to run Bash. For deterministic execution, build a hook (Bash run on a tool event) instead, see our hooks guide.
Do slash commands count against my token budget?
Yes. They're just shortcuts that expand to a prompt. The expansion itself is short but the work Claude does is billed normally.

Want this built for your business?

Book a free 30-minute AI audit. We'll map your business and show you exactly which systems we'd build first. No pitch deck, no scoping fee.

Book my free AI audit