# Slash Commands (/cli/guides/slash-commands)



For the full list of slash commands, see [Commands](/cli/commands). This guide walks the workflows that actually use them.

## Start a run [#start-a-run]

```text
/run review the staged diff for regressions
```

The Agents panel populates as core spawns workers. The Timeline streams events. Watch the Header for `transport: nominal` and a non-empty `model`.

## Pause and resume [#pause-and-resume]

```text
/pause
/resume
```

`/pause` lets agents stop at the next safe point. Use it before you switch models or change permissions.

## Switch the model mid-run [#switch-the-model-mid-run]

```text
/model
```

Opens the **Model Picker** drawer. Pick a model and confirm. If the active permission mode gates `change_model` as `ask`, the change surfaces in the Approval drawer first.

## Inspect a diff [#inspect-a-diff]

```text
/diff
```

Opens the **Diff** drawer with the most recent patch. Step through hunks; approve or reject if the run is gated.

## Approve or reject pending tool calls [#approve-or-reject-pending-tool-calls]

The Approval drawer surfaces gated requests automatically. From the composer, you can also use the Command Palette:

```text
/help
```

Then search "Approval" to focus the drawer.

See [Concepts → Approvals](/cli/concepts/approvals).

## Switch permission modes [#switch-permission-modes]

```text
/permissions auto
/permissions approval
```

`auto` runs everything without asking; `approval` (the default) gates anything that touches the workspace. The change applies on the next `/run` — no restart required.

See [Concepts → Permissions](/cli/concepts/permissions).

## Check cost and usage [#check-cost-and-usage]

```text
/cost
```

Per-agent and per-run breakdown. Crossed thresholds also appear in the Priority alerts strip.

## Export the run [#export-the-run]

```text
/export
```

Opens the **Run Export** drawer. Pick a format (JSON, JSONL, Markdown) and scope.

See [Reference → Export](/cli/reference/export).

## Kill the run [#kill-the-run]

```text
/kill
```

Cancels the active run immediately. Agents are stopped; in-flight tool calls are interrupted.

## Quit the cockpit [#quit-the-cockpit]

```text
/quit
```

Or `/exit`, or double-tap `Ctrl+C` (single press is a soft-interrupt — see [Reference → Keybindings](/cli/reference/keybindings)).

## Common pitfalls [#common-pitfalls]

* **Typing `/run` with no arguments** — sends an empty task; you'll get an inline composer error.
* **Forgetting that `/permissions` is per-spawn** — you set the mode now; it applies to the next `/run`.
* **Using `q` with a drawer open** — `q` only quits when no drawer is open. While a drawer is open it's reserved for the drawer.
* **Pressing Ctrl+C once and walking away** — that's a soft-interrupt, not a quit. Press it twice within 1500ms to exit.

## Add your own commands [#add-your-own-commands]

Custom commands are markdown prompt templates from project or user scope. The
authoring format exists in the CLI runtime, but the running cockpit's active
registry is still whatever `/help` shows.

Use project commands for repo workflows:

```text
.agents/commands/review-staged.md
.agents/commands/release/notes.md
```

Use user commands for personal workflow shortcuts:

```text
$MOGPLEX_HOME/commands/debug-failing-test.md
```

See [Custom Slash Commands](/configure-and-extend/custom-slash-commands) for
frontmatter, arguments, aliases, template variables, precedence rules, and the
current registry limitation.

## See also [#see-also]

* [Commands](/cli/commands) — full slash command reference
* [Custom Slash Commands](/configure-and-extend/custom-slash-commands)
* [Reference → Keybindings](/cli/reference/keybindings)
* [Reference → Drawers](/cli/reference/drawers)
