# Claude Code cheat sheet

Checked October 31, 2026. Claude Code `2.1.316`. Sources: the commands page and the skills page at code.claude.com.

Custom commands are skills now. These two files both create `/deploy`, and they work the same way:

- `.claude/commands/deploy.md`
- `.claude/skills/deploy/SKILL.md`

If a skill and a command file share a name, the skill runs. Old files in `.claude/commands/` still work. A command file does not take `name` or `paths` in the frontmatter. A skill does.

## Where the file goes

| File | Command you type | Who gets it |
|---|---|---|
| `.claude/skills/name/SKILL.md` | `/name` | This repository |
| `~/.claude/skills/name/SKILL.md` | `/name` | Every project on this machine |
| `.claude/commands/name.md` | `/name` | This repository, older layout |
| `.claude/commands/frontend/component.md` | `/frontend:component` | Subfolder, colon instead of a slash |
| `<plugin>/skills/name/SKILL.md` | `/plugin-name:name` | Wherever that plugin is enabled |

The directory name is the command, unless the skill sets `name`. A personal skill wins over a project skill of the same name. An enterprise skill wins over both.

## Files in this pack

Copy the `.claude` folder next to these notes into a project.

| File | Command |
|---|---|
| `.claude/commands/standup.md` | `/standup` |
| `.claude/skills/ship-check/SKILL.md` | `/ship-check` |
| `.claude/skills/write-test/SKILL.md` | `/write-test` |

`/standup` is the older command layout. It injects `git log --since=yesterday` with a shell line. `/ship-check` sets `disable-model-invocation: true`, `argument-hint`, `allowed-tools`, and `$ARGUMENTS`. `/write-test` uses `$0` and `$1`.

On October 31, 2026, `claude plugin validate` and `claude plugin validate --strict` both passed on `.claude/skills` and on `.claude/commands`. The files were not run inside a Claude session.

## Built-in commands worth typing

The All commands table that day had 121 rows. 20 rows are marked Skill. 1 row, `/deep-research`, is marked Workflow. The other 100 rows are not marked either way. Three of those 100 say Removed: `/pr-comments`, `/ultraplan`, and `/vim`. This list is 21 built-in rows from that table, not a third-party list.

| Command | What it does |
|---|---|
| `/help` | Help, and the commands available here |
| `/init` | Draft a starter CLAUDE.md |
| `/memory` | Edit CLAUDE.md and auto memory |
| `/skills` | List skills |
| `/reload-skills` | Re-scan skill and command folders |
| `/config` | Open settings, or set one key |
| `/status` | Version, model, account, connectivity |
| `/model` | Switch the model |
| `/effort` | Set how much reasoning to apply |
| `/context` | Show what is filling the window |
| `/compact` | Summarize the chat to free space |
| `/clear` | Start a new conversation |
| `/plan` | Enter plan mode |
| `/diff` | Show the working tree |
| `/permissions` | Allow, ask, and deny rules |
| `/mcp` | MCP server connections |
| `/agents` | Reminder to edit the agent folders |
| `/tasks` | Background work in this session |
| `/btw` | A side question, not added to the chat |
| `/rewind` | Roll conversation or code back |
| `/resume` | Open an earlier conversation |

## Bundled skills the docs name

The skills page names `/doctor`, `/code-review`, `/batch`, `/debug`, `/loop`, and `/claude-api` as bundled skills. The commands table marks each of those rows Skill. They are prompts handed to Claude, not fixed CLI logic. `/review` is an alias of `/code-review`. `/checkup` is an alias of `/doctor`.
