cli/slash-commands.md +136 −36
1# Slash commands in Codex CLI1# Slash commands in Codex CLI
2 2
33Control Codex during interactive sessionsSlash commands give you fast, keyboard-first control over Codex. Type `/` in
44 the composer to open the slash popup, choose a command, and Codex will perform
55Slash commands give you fast, keyboard-first control over Codex. Type `/` in the composer to open the slash popup, choose a command, and Codex will perform actions such as switching models, adjusting permissions, or summarizing long conversations without leaving the terminal.actions such as switching models, adjusting permissions, or summarizing long
6conversations without leaving the terminal.
6 7
7This guide shows you how to:8This guide shows you how to:
8 9
9- Find the right built-in slash command for a task10- Find the right built-in slash command for a task
1011- Steer an active session with commands like `/model`, `/personality`, `/permissions`, `/experimental`, `/agent`, and `/status`- Steer an active session with commands like `/model`, `/fast`,
12 `/personality`, `/permissions`, `/agent`, and `/status`
11 13
12## Built-in slash commands14## Built-in slash commands
13 15
1416Codex ships with the following commands. Open the slash popup and start typing the command name to filter the list.Codex ships with the following commands. Open the slash popup and start typing
17the command name to filter the list.
18
19When a task is already running, you can type a slash command and press `Tab` to
20queue it for the next turn. Codex parses queued slash commands when they run, so
21command menus and errors appear after the current turn finishes. Slash
22completion still works before you queue the command.
15 23
16| Command | Purpose | When to use it |24| Command | Purpose | When to use it |
17| ------------------------------------------------------------------------------- | --------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- |25| ------------------------------------------------------------------------------- | --------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
18| [`/permissions`](#update-permissions-with-permissions) | Set what Codex can do without asking first. | Relax or tighten approval requirements mid-session, such as switching between Auto and Read Only. |26| [`/permissions`](#update-permissions-with-permissions) | Set what Codex can do without asking first. | Relax or tighten approval requirements mid-session, such as switching between Auto and Read Only. |
19| [`/sandbox-add-read-dir`](#grant-sandbox-read-access-with-sandbox-add-read-dir) | Grant sandbox read access to an extra directory (Windows only). | Unblock commands that need to read an absolute directory path outside the current readable roots. |27| [`/sandbox-add-read-dir`](#grant-sandbox-read-access-with-sandbox-add-read-dir) | Grant sandbox read access to an extra directory (Windows only). | Unblock commands that need to read an absolute directory path outside the current readable roots. |
2028| [`/agent`](#switch-agent-threads-with-agent) | Switch the active agent thread. | Inspect or continue work in a spawned sub-agent thread. || [`/agent`](#switch-agent-threads-with-agent) | Switch the active agent thread. | Inspect or continue work in a spawned subagent thread. |
21| [`/apps`](#browse-apps-with-apps) | Browse apps (connectors) and insert them into your prompt. | Attach an app as `$app-slug` before asking Codex to use it. |29| [`/apps`](#browse-apps-with-apps) | Browse apps (connectors) and insert them into your prompt. | Attach an app as `$app-slug` before asking Codex to use it. |
30| [`/plugins`](#browse-plugins-with-plugins) | Browse installed and discoverable plugins. | Inspect plugin tools, install suggested plugins, or manage plugin availability. |
31| [`/clear`](#clear-the-terminal-and-start-a-new-chat-with-clear) | Clear the terminal and start a fresh chat. | Reset the visible UI and conversation together when you want a fresh start. |
22| [`/compact`](#keep-transcripts-lean-with-compact) | Summarize the visible conversation to free tokens. | Use after long runs so Codex retains key points without blowing the context window. |32| [`/compact`](#keep-transcripts-lean-with-compact) | Summarize the visible conversation to free tokens. | Use after long runs so Codex retains key points without blowing the context window. |
33| [`/copy`](#copy-the-latest-response-with-copy) | Copy the latest completed Codex output. | Grab the latest finished response or plan text without manually selecting it. You can also press `Ctrl+O`. |
23| [`/diff`](#review-changes-with-diff) | Show the Git diff, including files Git isn't tracking yet. | Review Codex's edits before you commit or run tests. |34| [`/diff`](#review-changes-with-diff) | Show the Git diff, including files Git isn't tracking yet. | Review Codex's edits before you commit or run tests. |
24| [`/exit`](#exit-the-cli-with-quit-or-exit) | Exit the CLI (same as `/quit`). | Alternative spelling; both commands exit the session. |35| [`/exit`](#exit-the-cli-with-quit-or-exit) | Exit the CLI (same as `/quit`). | Alternative spelling; both commands exit the session. |
2536| [`/experimental`](#toggle-experimental-features-with-experimental) | Toggle experimental features. | Enable optional features such as sub-agents from the CLI. || [`/experimental`](#toggle-experimental-features-with-experimental) | Toggle experimental features. | Enable optional features such as subagents from the CLI. |
26| [`/feedback`](#send-feedback-with-feedback) | Send logs to the Codex maintainers. | Report issues or share diagnostics with support. |37| [`/feedback`](#send-feedback-with-feedback) | Send logs to the Codex maintainers. | Report issues or share diagnostics with support. |
27| [`/init`](#generate-agentsmd-with-init) | Generate an `AGENTS.md` scaffold in the current directory. | Capture persistent instructions for the repository or subdirectory you're working in. |38| [`/init`](#generate-agentsmd-with-init) | Generate an `AGENTS.md` scaffold in the current directory. | Capture persistent instructions for the repository or subdirectory you're working in. |
28| [`/logout`](#sign-out-with-logout) | Sign out of Codex. | Clear local credentials when using a shared machine. |39| [`/logout`](#sign-out-with-logout) | Sign out of Codex. | Clear local credentials when using a shared machine. |
29| [`/mcp`](#list-mcp-tools-with-mcp) | List configured Model Context Protocol (MCP) tools. | Check which external tools Codex can call during the session. |40| [`/mcp`](#list-mcp-tools-with-mcp) | List configured Model Context Protocol (MCP) tools. | Check which external tools Codex can call during the session. |
30| [`/mention`](#highlight-files-with-mention) | Attach a file to the conversation. | Point Codex at specific files or folders you want it to inspect next. |41| [`/mention`](#highlight-files-with-mention) | Attach a file to the conversation. | Point Codex at specific files or folders you want it to inspect next. |
31| [`/model`](#set-the-active-model-with-model) | Choose the active model (and reasoning effort, when available). | Switch between general-purpose models (`gpt-4.1-mini`) and deeper reasoning models before running a task. |42| [`/model`](#set-the-active-model-with-model) | Choose the active model (and reasoning effort, when available). | Switch between general-purpose models (`gpt-4.1-mini`) and deeper reasoning models before running a task. |
43| [`/fast`](#toggle-fast-mode-with-fast) | Toggle Fast mode for GPT-5.4. | Turn Fast mode on or off, or check whether the current thread is using it. |
32| [`/plan`](#switch-to-plan-mode-with-plan) | Switch to plan mode and optionally send a prompt. | Ask Codex to propose an execution plan before implementation work starts. |44| [`/plan`](#switch-to-plan-mode-with-plan) | Switch to plan mode and optionally send a prompt. | Ask Codex to propose an execution plan before implementation work starts. |
33| [`/personality`](#set-a-communication-style-with-personality) | Choose a communication style for responses. | Make Codex more concise, more explanatory, or more collaborative without changing your instructions. |45| [`/personality`](#set-a-communication-style-with-personality) | Choose a communication style for responses. | Make Codex more concise, more explanatory, or more collaborative without changing your instructions. |
34| [`/ps`](#check-background-terminals-with-ps) | Show experimental background terminals and their recent output. | Check long-running commands without leaving the main transcript. |46| [`/ps`](#check-background-terminals-with-ps) | Show experimental background terminals and their recent output. | Check long-running commands without leaving the main transcript. |
47| [`/stop`](#stop-background-terminals-with-stop) | Stop all background terminals. | Cancel background terminal work started by the current session. |
35| [`/fork`](#fork-the-current-conversation-with-fork) | Fork the current conversation into a new thread. | Branch the active session to explore a new approach without losing the current transcript. |48| [`/fork`](#fork-the-current-conversation-with-fork) | Fork the current conversation into a new thread. | Branch the active session to explore a new approach without losing the current transcript. |
36| [`/resume`](#resume-a-saved-conversation-with-resume) | Resume a saved conversation from your session list. | Continue work from a previous CLI session without starting over. |49| [`/resume`](#resume-a-saved-conversation-with-resume) | Resume a saved conversation from your session list. | Continue work from a previous CLI session without starting over. |
37| [`/new`](#start-a-new-conversation-with-new) | Start a new conversation inside the same CLI session. | Reset the chat context without leaving the CLI when you want a fresh prompt in the same repo. |50| [`/new`](#start-a-new-conversation-with-new) | Start a new conversation inside the same CLI session. | Reset the chat context without leaving the CLI when you want a fresh prompt in the same repo. |
40| [`/status`](#inspect-the-session-with-status) | Display session configuration and token usage. | Confirm the active model, approval policy, writable roots, and remaining context capacity. |53| [`/status`](#inspect-the-session-with-status) | Display session configuration and token usage. | Confirm the active model, approval policy, writable roots, and remaining context capacity. |
41| [`/debug-config`](#inspect-config-layers-with-debug-config) | Print config layer and requirements diagnostics. | Debug precedence and policy requirements, including experimental network constraints. |54| [`/debug-config`](#inspect-config-layers-with-debug-config) | Print config layer and requirements diagnostics. | Debug precedence and policy requirements, including experimental network constraints. |
42| [`/statusline`](#configure-footer-items-with-statusline) | Configure TUI status-line fields interactively. | Pick and reorder footer items (model/context/limits/git/tokens/session) and persist in config.toml. |55| [`/statusline`](#configure-footer-items-with-statusline) | Configure TUI status-line fields interactively. | Pick and reorder footer items (model/context/limits/git/tokens/session) and persist in config.toml. |
56| [`/title`](#configure-terminal-title-items-with-title) | Configure terminal window or tab title fields interactively. | Pick and reorder title items such as project, status, thread, branch, model, and task progress. |
43 57
4458`/quit` and `/exit` both exit the CLI. Use them only after you have saved or committed any important work.`/quit` and `/exit` both exit the CLI. Use them only after you have saved or
59committed any important work.
45 60
46The `/approvals` command still works as an alias, but it no longer appears in the slash popup list.61The `/approvals` command still works as an alias, but it no longer appears in the slash popup list.
47 62
57 72
58Expected: Codex confirms the new model in the transcript. Run `/status` to verify the change.73Expected: Codex confirms the new model in the transcript. Run `/status` to verify the change.
59 74
75### Toggle Fast mode with `/fast`
76
771. Type `/fast on`, `/fast off`, or `/fast status`.
782. If you want the setting to persist, confirm the update when Codex offers to save it.
79
80Expected: Codex reports whether Fast mode is on or off for the current thread. In the TUI footer, you can also show a Fast mode status-line item with `/statusline`.
81
60### Set a communication style with `/personality`82### Set a communication style with `/personality`
61 83
62Use `/personality` to change how Codex communicates without rewriting your prompt.84Use `/personality` to change how Codex communicates without rewriting your prompt.
641. In an active conversation, type `/personality` and press Enter.861. In an active conversation, type `/personality` and press Enter.
652. Choose a style from the popup.872. Choose a style from the popup.
66 88
6789Expected: Codex confirms the new style in the transcript and uses it for later responses in the thread.Expected: Codex confirms the new style in the transcript and uses it for later
90responses in the thread.
68 91
6992Codex supports `friendly`, `pragmatic`, and `none` personalities. Use `none` to disable personality instructions.Codex supports `friendly`, `pragmatic`, and `none` personalities. Use `none`
93to disable personality instructions.
70 94
71If the active model doesn't support personality-specific instructions, Codex hides this command.95If the active model doesn't support personality-specific instructions, Codex hides this command.
72 96
73### Switch to plan mode with `/plan`97### Switch to plan mode with `/plan`
74 98
75991. Type `/plan` and press Enter to switch the active conversation into plan mode.1. Type `/plan` and press Enter to switch the active conversation into plan
100 mode.
762. Optional: provide inline prompt text (for example, `/plan Propose a migration plan for this service`).1012. Optional: provide inline prompt text (for example, `/plan Propose a migration plan for this service`).
773. You can paste content or attach images while using inline `/plan` arguments.1023. You can paste content or attach images while using inline `/plan` arguments.
78 103
83### Toggle experimental features with `/experimental`108### Toggle experimental features with `/experimental`
84 109
851. Type `/experimental` and press Enter.1101. Type `/experimental` and press Enter.
861112. Toggle the features you want (for example, **Multi-agents**), then restart Codex.2. Toggle the features you want (for example, Apps or Smart Approvals), then restart Codex if the prompt asks you to.
87 112
88Expected: Codex saves your feature choices to config and applies them on restart.113Expected: Codex saves your feature choices to config and applies them on restart.
89 114
115### Clear the terminal and start a new chat with `/clear`
116
1171. Type `/clear` and press Enter.
118
119Expected: Codex clears the terminal, resets the visible transcript, and starts
120a fresh chat in the same CLI session.
121
122Unlike <kbd>Ctrl</kbd>+<kbd>L</kbd>, `/clear` starts a new conversation.
123
124<kbd>Ctrl</kbd>+<kbd>L</kbd> only clears the terminal view and keeps the current
125chat. Codex disables both actions while a task is in progress.
126
90### Update permissions with `/permissions`127### Update permissions with `/permissions`
91 128
921. Type `/permissions` and press Enter.1291. Type `/permissions` and press Enter.
931302. Select the approval preset that matches your comfort level, for example `Auto` for hands-off runs or `Read Only` to review edits.2. Select the approval preset that matches your comfort level, for example
131 `Auto` for hands-off runs or `Read Only` to review edits.
132
133Expected: Codex announces the updated policy. Future actions respect the
134updated approval mode until you change it again.
135
136### Copy the latest response with `/copy`
137
1381. Type `/copy` and press Enter.
139
140Expected: Codex copies the latest completed Codex output to your clipboard.
141
142If a turn is still running, `/copy` uses the latest completed output instead of
143the in-progress response. The command is unavailable before the first completed
144Codex output and immediately after a rollback.
94 145
95146Expected: Codex announces the updated policy. Future actions respect the new approval mode until you change it again.You can also press <kbd>Ctrl</kbd>+<kbd>O</kbd> from the main TUI to copy the
147latest completed response without opening the slash command menu.
96 148
97### Grant sandbox read access with `/sandbox-add-read-dir`149### Grant sandbox read access with `/sandbox-add-read-dir`
98 150
1011. Type `/sandbox-add-read-dir C:\absolute\directory\path` and press Enter.1531. Type `/sandbox-add-read-dir C:\absolute\directory\path` and press Enter.
1022. Confirm the path is an existing absolute directory.1542. Confirm the path is an existing absolute directory.
103 155
104156Expected: Codex refreshes the Windows sandbox policy and grants read access to that directory for later commands that run in the sandbox.Expected: Codex refreshes the Windows sandbox policy and grants read access to
157that directory for later commands that run in the sandbox.
105 158
106### Inspect the session with `/status`159### Inspect the session with `/status`
107 160
1081. In any conversation, type `/status`.1611. In any conversation, type `/status`.
1092. Review the output for the active model, approval policy, writable roots, and current token usage.1622. Review the output for the active model, approval policy, writable roots, and current token usage.
110 163
111164Expected: You see a summary like what `codex status` prints in the shell, confirming Codex is operating where you expect.Expected: You see a summary like what `codex status` prints in the shell,
165confirming Codex is operating where you expect.
112 166
113### Inspect config layers with `/debug-config`167### Inspect config layers with `/debug-config`
114 168
1151. Type `/debug-config`.1691. Type `/debug-config`.
1161702. Review the output for config layer order (lowest precedence first), on/off state, and policy sources.2. Review the output for config layer order (lowest precedence first), on/off
171 state, and policy sources.
117 172
118173Expected: Codex prints layer diagnostics plus policy details such as `allowed_approval_policies`, `allowed_sandbox_modes`, `mcp_servers`, `rules`, `enforce_residency`, and `experimental_network` when configured.Expected: Codex prints layer diagnostics plus policy details such as
174`allowed_approval_policies`, `allowed_sandbox_modes`, `mcp_servers`, `rules`,
175`enforce_residency`, and `experimental_network` when configured.
119 176
120Use this output to debug why an effective setting differs from `config.toml`.177Use this output to debug why an effective setting differs from `config.toml`.
121 178
1241. Type `/statusline`.1811. Type `/statusline`.
1252. Use the picker to toggle and reorder items, then confirm.1822. Use the picker to toggle and reorder items, then confirm.
126 183
127184Expected: The footer status line updates immediately and persists to `tui.status_line` in `config.toml`.Expected: The footer status line updates immediately and persists to
185`tui.status_line` in `config.toml`.
128 186
129187Available status-line items include model, model+reasoning, context stats, rate limits, git branch, token counters, session id, current directory/project root, and Codex version.Available status-line items include model, model+reasoning, context stats, rate
188limits, git branch, token counters, session id, current directory/project root,
189and Codex version.
190
191### Configure terminal title items with `/title`
192
1931. Type `/title`.
1942. Use the picker to toggle and reorder items, then confirm.
195
196Expected: The terminal window or tab title updates immediately and persists to
197`tui.terminal_title` in `config.toml`.
198
199Available title items include app name, project, spinner, status, thread, git
200branch, model, and task progress.
130 201
131### Check background terminals with `/ps`202### Check background terminals with `/ps`
132 203
1331. Type `/ps`.2041. Type `/ps`.
1342. Review the list of background terminals and their status.2052. Review the list of background terminals and their status.
135 206
136207Expected: Codex shows each background terminal’s command plus up to three recent, non-empty output lines so you can gauge progress at a glance.Expected: Codex shows each background terminal's command plus up to three
208recent, non-empty output lines so you can gauge progress at a glance.
137 209
138Background terminals appear when `unified_exec` is in use; otherwise, the list may be empty.210Background terminals appear when `unified_exec` is in use; otherwise, the list may be empty.
139 211
212### Stop background terminals with `/stop`
213
2141. Type `/stop`.
2152. Confirm if Codex asks before stopping the listed terminals.
216
217Expected: Codex stops all background terminals for the current session. `/clean`
218is still available as an alias for `/stop`.
219
140### Keep transcripts lean with `/compact`220### Keep transcripts lean with `/compact`
141 221
1421. After a long exchange, type `/compact`.2221. After a long exchange, type `/compact`.
1432. Confirm when Codex offers to summarize the conversation so far.2232. Confirm when Codex offers to summarize the conversation so far.
144 224
145225Expected: Codex replaces earlier turns with a concise summary, freeing context while keeping critical details.Expected: Codex replaces earlier turns with a concise summary, freeing context
226while keeping critical details.
146 227
147### Review changes with `/diff`228### Review changes with `/diff`
148 229
1491. Type `/diff` to inspect the Git diff.2301. Type `/diff` to inspect the Git diff.
1502. Scroll through the output inside the CLI to review edits and added files.2312. Scroll through the output inside the CLI to review edits and added files.
151 232
152233Expected: Codex shows changes you’ve staged, changes you haven’t staged yet, and files Git hasn’t started tracking, so you can decide what to keep.Expected: Codex shows changes you've staged, changes you haven't staged yet,
234and files Git hasn't started tracking, so you can decide what to keep.
153 235
154### Highlight files with `/mention`236### Highlight files with `/mention`
155 237
162 244
1631. Type `/new` and press Enter.2451. Type `/new` and press Enter.
164 246
165247Expected: Codex starts a fresh conversation in the same CLI session, so you can switch tasks without leaving your terminal.Expected: Codex starts a fresh conversation in the same CLI session, so you
248can switch tasks without leaving your terminal.
249
250Unlike `/clear`, `/new` doesn't clear the current terminal view first.
166 251
167### Resume a saved conversation with `/resume`252### Resume a saved conversation with `/resume`
168 253
1691. Type `/resume` and press Enter.2541. Type `/resume` and press Enter.
1702. Choose the session you want from the saved-session picker.2552. Choose the session you want from the saved-session picker.
171 256
172257Expected: Codex reloads the selected conversation’s transcript so you can pick up where you left off, keeping the original history intact.Expected: Codex reloads the selected conversation's transcript so you can pick
258up where you left off, keeping the original history intact.
173 259
174### Fork the current conversation with `/fork`260### Fork the current conversation with `/fork`
175 261
1761. Type `/fork` and press Enter.2621. Type `/fork` and press Enter.
177 263
178264Expected: Codex clones the current conversation into a new thread with a fresh ID, leaving the original transcript untouched so you can explore an alternative approach in parallel.Expected: Codex clones the current conversation into a new thread with a fresh
265ID, leaving the original transcript untouched so you can explore an alternative
266approach in parallel.
179 267
180268If you need to fork a saved session instead of the current one, run `codex fork` in your terminal to open the session picker.If you need to fork a saved session instead of the current one, run
269`codex fork` in your terminal to open the session picker.
181 270
182### Generate `AGENTS.md` with `/init`271### Generate `AGENTS.md` with `/init`
183 272
1841. Run `/init` in the directory where you want Codex to look for persistent instructions.2731. Run `/init` in the directory where you want Codex to look for persistent instructions.
1852. Review the generated `AGENTS.md`, then edit it to match your repository conventions.2742. Review the generated `AGENTS.md`, then edit it to match your repository conventions.
186 275
187276Expected: Codex creates an `AGENTS.md` scaffold you can refine and commit for future sessions.Expected: Codex creates an `AGENTS.md` scaffold you can refine and commit for
277future sessions.
188 278
189### Ask for a working tree review with `/review`279### Ask for a working tree review with `/review`
190 280
1911. Type `/review`.2811. Type `/review`.
1922. Follow up with `/diff` if you want to inspect the exact file changes.2822. Follow up with `/diff` if you want to inspect the exact file changes.
193 283
194284Expected: Codex summarizes issues it finds in your working tree, focusing on behavior changes and missing tests. It uses the current session model unless you set `review_model` in `config.toml`.Expected: Codex summarizes issues it finds in your working tree, focusing on
285behavior changes and missing tests. It uses the current session model unless
286you set `review_model` in `config.toml`.
195 287
196### List MCP tools with `/mcp`288### List MCP tools with `/mcp`
197 289
2051. Type `/apps`.2971. Type `/apps`.
2062. Pick an app from the list.2982. Pick an app from the list.
207 299
208300Expected: Codex inserts the app mention into the composer as `$app-slug`, so you can immediately ask Codex to use it.Expected: Codex inserts the app mention into the composer as `$app-slug`, so
301you can immediately ask Codex to use it.
302
303### Browse plugins with `/plugins`
304
3051. Type `/plugins`.
3062. Choose a marketplace tab, then pick a plugin to inspect its capabilities or available actions.
307
308Expected: Codex opens the plugin browser so you can review installed plugins,
309discoverable plugins that your configuration allows, and installed plugin state.
310Press <kbd>Space</kbd> on an installed plugin to toggle its enabled state.
209 311
210### Switch agent threads with `/agent`312### Switch agent threads with `/agent`
211 313
2121. Type `/agent` and press Enter.3141. Type `/agent` and press Enter.
2132. Select the thread you want from the picker.3152. Select the thread you want from the picker.
214 316
215317Expected: Codex switches the active thread so you can inspect or continue that agent’s work.Expected: Codex switches the active thread so you can inspect or continue that
318agent's work.
216 319
217### Send feedback with `/feedback`320### Send feedback with `/feedback`
218 321
2191. Type `/feedback` and press Enter.3221. Type `/feedback` and press Enter.
2202. Follow the prompts to include logs or diagnostics.3232. Follow the prompts to include logs or diagnostics.
221 324
222325Expected: Codex collects the requested diagnostics and submits them to the maintainers.Expected: Codex collects the requested diagnostics and submits them to the
326maintainers.
223 327
224### Sign out with `/logout`328### Sign out with `/logout`
225 329
2321. Type `/quit` (or `/exit`) and press Enter.3361. Type `/quit` (or `/exit`) and press Enter.
233 337
234Expected: Codex exits immediately. Save or commit any important work first.338Expected: Codex exits immediately. Save or commit any important work first.
235
236[Previous
237
238Command Line Options](https://developers.openai.com/codex/cli/reference)