Slash 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
chats without leaving the terminal.
This guide shows you how to:
- Find the right built-in slash command for a task
- Steer an active session with commands like
/model,/fast,/permissions,/approve,/raw,/agents,/subagents, and/status
Built-in slash commands
Codex ships with the following commands. Open the slash popup and start typing the command name to filter the list.
When a chat is already running, you can type a slash command and press Tab to
queue it for the next turn. Codex parses queued slash commands when they run, so
command menus and errors appear after the current turn finishes. Slash
completion still works before you queue the command.
| Command | Purpose | When to use it |
|---|---|---|
/permissions |
Set what Codex can do without asking first. | Relax or tighten approval requirements mid-session, such as switching between Auto and Read Only. |
/ide |
Include open files, current selection, and other IDE context. | Pull editor context into the next prompt without re-explaining what’s open in your IDE. |
/config |
Search and change terminal preferences. | Adjust the theme, notifications, keyboard shortcuts, or text selection. |
/keymap |
Remap TUI keyboard shortcuts. | Inspect and persist custom shortcut bindings in config.toml. |
/vim |
Toggle Vim mode for the composer. | Switch between Vim normal/insert behavior and the default composer editing mode. |
/setup-default-sandbox |
Set up the elevated agent sandbox (Windows only). | Replace the degraded Windows sandbox after Codex offers the elevated setup. |
/agents |
Open the agent command center. | Browse chats and switch between agents on the connected server. |
/subagents |
Switch the active subagent thread. | Inspect or continue work in a subagent from the current session. |
/apps |
Browse apps (connectors) and insert them into your prompt. | Attach an app as $app-slug before asking Codex to use it. |
/plugins |
Browse installed and discoverable plugins. | Inspect plugin tools, install suggested plugins, or manage plugin availability. |
/hooks |
View and manage lifecycle hooks. | Inspect configured hooks, trust new or changed hooks, or disable non-managed hooks before they run. |
/clear |
Clear the terminal and start a fresh chat. | Reset the visible UI and chat context together when you want a fresh start. |
/rename |
Rename the current chat. | Give a saved session a recognizable name without leaving the TUI. |
/archive |
Archive the current session. | Remove the current session from active session lists without deleting its transcript. |
/delete |
Permanently delete the current session. | Remove the transcript and descendant sessions when archiving isn’t enough. |
/compact |
Summarize the visible chat to free tokens. | Use after long runs so Codex retains key points without blowing the context window. |
/copy |
Copy a response, code block, or quote. | Use Ctrl+ O to copy the latest completed response without using the menu. |
/diff |
Show the Git diff, including files Git isn’t tracking yet. | Review Codex’s edits before you commit or run tests. |
/exit |
Exit the CLI (same as /quit). |
Alternative spelling; both commands exit the session. |
/experimental |
Toggle experimental features. | Enable options such as Network proxy or Prevent sleep while running. |
/approve |
Approve one retry of a recent auto review denial. | Retry a command or action that the auto reviewer denied. |
/memories |
Configure memory use and generation. | Turn memory injection or memory generation on or off without leaving the TUI. |
/skills |
Browse and use skills. | Improve task-specific behavior by selecting a relevant local skill. |
/import |
Import Claude Code or Cursor setup, projects, and chats. | Migrate supported external-agent artifacts into Codex configuration and local files. |
/feedback |
Send logs to the Codex maintainers. | Report issues or share diagnostics with support. |
/init |
Generate an AGENTS.md scaffold in the current directory. |
Capture persistent instructions for the repository or subdirectory you’re working in. |
/logout |
Sign out of Codex. | Clear local credentials when using a shared machine. |
/mcp |
List configured Model Context Protocol (MCP) tools. | Check which external tools Codex can call during the session; add verbose for server details. |
/mention |
Attach a file to the chat. | Point Codex at specific files or folders you want it to inspect next. |
/model |
Choose the active model (and reasoning effort, when available). | Use gpt-6-luna or gpt-6.1-sol if shown. |
/presets |
Save and run prompts or slash commands. | Recall a command or prompt you use frequently. |
/fast |
Toggle a Fast service tier when the model catalog exposes one. | Turn the current model’s Fast tier on or off and persist the selection. |
/daybreak |
Toggle Daybreak when your account and model are eligible. | Use an approved cyber access program for a chat. |
/voice |
Start or stop a voice conversation when available. | Speak to Codex in a terminal build that supports voice. |
/plan |
Switch to plan mode and optionally send a prompt. | Ask Codex to propose an execution plan before implementation work starts. |
/goal |
Set, edit, pause, resume, view, or clear a task goal. | Give Codex a persistent target to track while a larger task runs. |
/ps |
Show background terminals and their recent output. | Check long-running commands without leaving the main transcript. |
/stop |
Stop all background terminals. | Cancel background terminal work started by the current session. |
/fork |
Fork the current chat into a new chat. | Branch the active session to explore a new approach without losing the current transcript. |
/app |
Continue the current session in the ChatGPT desktop app. | Move from the TUI to the desktop app on macOS or Windows. |
/side, /btw |
Start an ephemeral side chat. | Ask a focused follow-up without disrupting the main chat’s transcript. |
/raw |
Toggle raw scrollback mode. | Make terminal selection and copying less formatted while reviewing long output. |
/resume |
Resume a saved chat from your session list. | Continue work from a previous CLI session without starting over. |
/new |
Start a new chat inside the same CLI session. | Reset the chat context without leaving the CLI when you want a fresh prompt in the same repo. |
/quit |
Exit the CLI. | Leave the session immediately. |
/review |
Ask Codex to review your working tree. | Run after Codex completes work or when you want a second set of eyes on local changes. |
/status |
Display session configuration and token usage. | Confirm the active model, approval policy, writable roots, and remaining context capacity. |
/usage |
View account token usage or use a rate-limit reset. | Inspect daily, weekly, or cumulative ChatGPT token activity from inside the TUI. |
/debug-config |
Print config layer and requirements diagnostics. | Debug precedence and policy requirements, including experimental network constraints. |
/statusline |
Configure TUI status-line fields interactively. | Pick and reorder footer items (model/context/limits/git/tokens/session) and persist in config.toml. |
/title |
Configure terminal window or tab title fields interactively. | Pick and reorder title items such as project, status, thread, branch, model, and task progress. |
/theme |
Choose a syntax-highlighting theme. | Preview and persist a terminal syntax-highlighting theme. |
/pets, /pet |
Choose or hide a terminal pet. | Personalize the TUI with a built-in or custom ambient pet. |
/tui |
Choose the terminal mode for the next launch. | Switch between terminal scrollback and a fullscreen transcript. |
/export |
Export the conversation as Markdown. | Save a complete transcript to a file or copy it to the clipboard. |
/recap |
Generate a summary of the current conversation. | Catch up on the chat without compacting its context. |
/cd |
Change the session’s working directory. | Continue an idle primary chat in another directory. |
/pwd, /cwd |
Show the working directory. | Check the directory the active session uses. |
/worktree |
Start or continue a chat in a managed Git worktree. | Work in a separate checkout of a local repository. |
/daemon |
Open background server controls. | Inspect the connection and manage a local server owned by Codex. |
/warnings |
View retained warnings and diagnostics. | Revisit warnings that appeared during the session. |
/quit and /exit both exit the CLI. Use them only after you have saved or
committed any important work.
Use /permissions to adjust what Codex can do without asking first. Use
/approve only when you need to retry a recent action that automatic review
denied.
Control your session with slash commands
The following workflows keep your session on track without restarting Codex.
Change terminal preferences with /config
Type /config to open terminal preferences. Browse settings by group or press / to search. Codex saves your changes automatically.
Choose the terminal mode with /tui
- Type
/tui. - Choose scrollback or fullscreen mode, then confirm.
- Restart Codex to apply the selection.
Expected: The next launch uses the saved terminal mode. Launch overrides such
as --no-alt-screen still apply.
Export a conversation with /export
- Type
/export. - Choose Copy to clipboard or Save to file.
Expected: Codex exports the complete conversation as Markdown. To save directly
to a file, run /export session.md. Wait for the current turn to finish before
exporting.
Summarize the chat with /recap
- When Codex is idle, type
/recap.
Expected: Codex generates a summary of the conversation, even if
tui.auto_recap = false. Use /compact when you want to free context space.
Change directories with /cd
- Type
/pwd(or/cwd) to check the current directory. - Type
/cd <path>to change directories, or/cdto use your home directory.
Expected: Codex continues the chat in the selected directory. Changing directories requires an idle primary session with no queued input or background terminals.
Continue in a worktree with /worktree
- Type
/worktreein a local Git repository. - Choose whether to start a new chat or continue the current conversation in a new worktree.
Expected: Codex creates a managed Git worktree and starts the selected chat there. Choose Browse worktrees to find existing worktrees and their owner chats. This command requires local worktree support and is unavailable while a task is running.
Manage the background server with /daemon
- Type
/daemon. - Review the server connection and available actions.
Expected: Codex offers to install the latest public stable release or use the current CLI build for the local background server. Confirming an update exits Codex and may interrupt active work. To restart a managed local server, choose Restart background server and confirm. Codex reconnects automatically. The restart may interrupt active or queued work in other chats. For a remote connection, manage the server on its host.
Inspect warnings with /warnings
- Type
/warnings.
Expected: Codex shows retained warnings and their diagnostic details.
Set the active model with /model
The picker only shows models available to your account and workspace. If GPT-6.1 Sol isn’t listed, choose another model. See GPT-6.1 Sol availability by plan.
- Start Codex and open the composer.
- Type
/modeland press Enter. - Choose a model such as
gpt-6-lunaorgpt-6.1-solfrom the popup.
Expected: Codex confirms the new model in the transcript. Run /status to verify the change.
To change settings for the current session directly, use
/model [model] [--reasoning=<level>] [--speed=<tier>]. For example,
/model --reasoning=high keeps the current model and sets its reasoning effort
to high if the model supports it.
Reuse prompts and commands with /presets
Type /presets and press n to save a prompt or slash command in a
numbered slot. Press s to create a preset from your current model,
permissions, terminal title, or status line. To run a saved preset, open
/presets and press its number.
Toggle Fast mode with /fast
- Type
/fastto turn the current model’s Fast service tier on. - Type
/fastagain to turn it off.
Expected: Codex toggles the tier and saves the selection. In the TUI footer,
you can also show a Fast mode status-line item with /statusline.
Fast tier commands are catalog-driven. If the current model doesn’t advertise a
Fast tier, Codex won’t show /fast.
Toggle Daybreak
If you use the OpenAI provider and your account and model have Daybreak access, use /daybreak to turn Daybreak on or off. Codex applies the selection to the current
chat and saves it as the default for future chats.
Talk to Codex with /voice
When your CLI build and session support voice, use /voice or F8 to
start or stop a voice conversation. Use /voice mute to turn your microphone on or off
and /voice stop to end the conversation. Use /voice settings to choose a
voice for future conversations.
Switch to plan mode with /plan
- Type
/planand press Enter to switch the active chat into plan mode. - Optional: provide inline prompt text (for example,
/plan Propose a migration plan for this service). - You can paste content or attach images while using inline
/planarguments.
Expected: Codex enters plan mode and uses your optional inline prompt as the first planning request.
While Codex is already working, /plan is temporarily unavailable.
Set or view a task goal with /goal
- Type
/goal <objective>to set the goal, for example/goal Finish the migration and keep tests green. - Type
/goalto view the current goal. - Use
/goal editto revise the objective. Use/goal pause,/goal resume, or/goal clearto pause, resume, or remove it.
Expected: Codex keeps the goal attached to the active chat while work continues.
Goal objectives must be non-empty and at most 4,000 characters. For longer instructions, put the details in a file and point the goal at that file.
Toggle experimental features with /experimental
- Type
/experimentaland press Enter. - Toggle the features you want (for example, Network proxy or Prevent sleep while running), then restart Codex if the prompt asks you to.
Expected: Codex saves your feature choices to config and applies them on restart.
Approve an auto review denial with /approve
Use /approve when the automatic reviewer denied a recent action and you want
Codex to retry it once.
- Type
/approve. - Confirm the retry when Codex shows the relevant denied action.
Expected: Codex retries that denied action once under the current session policy.
Configure memories with /memories
- Type
/memories. - Choose whether Codex should use existing memories, generate new memories, or keep memory behavior disabled.
Expected: Codex updates the relevant memory settings for future sessions.
Use skills with /skills
- Type
/skills. - Pick the skill you want Codex to apply.
Expected: Codex inserts the selected skill context so the next request follows that skill’s instructions.
Import Claude Code or Cursor setup with /import
- Type
/import. - Choose Claude Code or Cursor.
- Select the setup, project files, or recent chats you want to migrate.
Codex looks for up to 50 chats from the last 30 days. When connected to a local daemon or remote server, Codex reads and imports files on the machine running the daemon or server. Wait until the current task finishes before starting an import.
For the desktop app workflow and supported artifact types, see Import from another agent.
Clear the terminal and start a new chat with /clear
- Type
/clearand press Enter.
Expected: Codex clears the terminal, resets the visible transcript, and starts a fresh chat in the same CLI session.
To name the new chat as you create it, run /clear release prep.
Unlike Ctrl+L, /clear starts a new chat.
Ctrl+L only clears the terminal view and keeps the current chat. Codex disables both actions while a task is in progress.
Archive the current session with /archive
- Type
/archiveand press Enter. - Confirm that you want to archive the current session.
Expected: Codex archives the session and returns to the command center when
connected to a local background server or remote server. Without a shared
server, Codex exits. Codex keeps the transcript; restore it later with
codex unarchive <SESSION>.
If a turn is running, confirming /archive stops that turn before archiving.
Delete the current session with /delete
- Type
/deleteand press Enter. - Confirm that you want to delete the current session.
Expected: Codex permanently deletes the transcript and spawned descendant sessions. When connected to a local background server or remote server, Codex returns to the command center. Without a shared server, Codex exits.
/delete is unavailable while a chat is running or in a side chat.
Update permissions with /permissions
- Type
/permissionsand press Enter. - Select the approval preset that matches your comfort level, for example
Autofor hands-off runs orRead Onlyto review edits. When named permission profiles are active, the picker also shows configured custom profiles and their descriptions.
To select a profile by ID for this session, use
/permissions <profile-id> [--approval-policy=<policy>] [--reviewer=user|auto_review].
For example, /permissions :workspace --approval-policy=on-request --reviewer=user
selects workspace access and sends approval requests to you when permitted by
your configuration.
Include IDE context with /ide
- Type
/ide. - Add optional inline text if you want to explain what Codex should do with the current IDE selection or open files.
Expected: Codex includes available IDE context in the next prompt.
Toggle Vim mode with /vim
- Type
/vim. - Continue editing in the composer.
Expected: Codex toggles composer Vim mode for the current session. To make Vim
mode the default for new sessions, set tui.vim_mode_default = true in
config.toml.
Set up the elevated Windows sandbox with /setup-default-sandbox
This command appears only on Windows when Codex is using the degraded restricted-token sandbox.
- Type
/setup-default-sandbox. - Follow the administrator setup flow.
Expected: Codex configures the elevated Windows sandbox and selects the corresponding automatic approval preset.
Copy the latest response with /copy
In scrollback mode, type /copy and choose the whole response, a code block,
or a quote from the latest completed response. In fullscreen mode, select a
block in the transcript. Press Enter to copy your selection.
After /status, use /copy to copy the full status or an individual field.
To copy the latest completed response directly, press Ctrl+ O .
Toggle raw scrollback with /raw
- Type
/raw,/raw on, or/raw off.
Expected: Codex toggles raw scrollback mode, which makes terminal selection and
copying more direct. You can also use the default Alt+R
binding or persist the default with tui.raw_output_mode = true.
Inspect the session with /status
- In any chat, type
/status. - Review the output for the active model, approval policy, writable roots, and current token usage. When the TUI connects remotely, the output also shows the remote address and the server version.
Expected: Codex prints a summary confirming that it’s operating where you expect.
View account usage with /usage
- Type
/usageto open the usage menu. - Choose whether to show token activity or redeem an available earned reset.
- To open token activity directly, type
/usage daily,/usage weekly, or/usage cumulative.
Expected: Codex opens usage actions or shows account token activity for the selected view. If the session doesn’t have Codex service account auth, Codex shows a sign-in requirement.
Inspect config layers with /debug-config
- Type
/debug-config. - Review the output for config layer order (lowest precedence first), on/off state, and policy sources.
Expected: Codex prints layer diagnostics plus policy details such as
allowed_approval_policies, allowed_sandbox_modes, mcp_servers, rules,
and network_proxy when configured.
Use this output to debug why an effective setting differs from config.toml.
Configure footer items with /statusline
- Type
/statusline. - Use the picker to toggle and reorder items, then confirm.
Expected: The footer status line updates immediately and persists to
tui.status_line in config.toml.
Available status-line items include model, model+reasoning, context stats, rate limits, git branch, token counters, session id, current directory/project root, and Codex version.
To set the footer for this session only, list the items in display order. For
example, /statusline model project-name shows the model before the project name. Use /statusline --clear to hide
all items for the session.
Configure terminal title items with /title
- Type
/title. - Use the picker to toggle and reorder items, then confirm.
Expected: The terminal window or tab title updates immediately and persists to
tui.terminal_title in config.toml.
Available title items include app name, project, spinner, status, thread, git branch, model, and task progress.
To set the title for this session only, list the items in display order. For
example, /title project-name model shows the project name before the model. Use /title --clear to clear the title items for
the session.
Choose a syntax theme with /theme
- Type
/theme. - Preview a theme from the picker, then confirm.
Expected: Codex updates syntax highlighting and persists the choice to
tui.theme in config.toml.
Choose a terminal pet with /pets
- Type
/pets(or/pet) to open the pet picker. - Choose a built-in or custom pet, or turn pets off.
Expected: Codex displays the selected ambient pet in supported terminals and
persists the selection. You can also type /pets off to hide it.
Remap TUI shortcuts with /keymap
Use /keymap to inspect, update, and persist keyboard shortcut bindings for the TUI.
- Type
/keymap. - Pick the shortcut context and action you want to change.
- Enter the new binding or remove the existing one.
Expected: Codex updates the active keymap and writes the custom binding to tui.keymap in config.toml.
Key bindings use names such as ctrl-a, shift-enter, and page-down. Context-specific bindings override tui.keymap.global; an empty binding list unbinds the action.
Check background terminals with /ps
- Type
/ps. - Review the list of background terminals and their status.
Expected: Codex shows each background terminal’s command plus up to three recent, non-empty output lines so you can gauge progress at a glance.
Background terminals appear when unified_exec is in use; otherwise, the list may be empty.
Stop background terminals with /stop
- Type
/stop. - Confirm if Codex asks before stopping the listed terminals.
Expected: Codex stops all background terminals for the current session. /clean
is still available as an alias for /stop.
Keep transcripts lean with /compact
- After a long exchange, type
/compact. - Confirm when Codex offers to summarize the chat so far.
Expected: Codex replaces earlier turns with a concise summary, freeing context while keeping critical details.
Review changes with /diff
- Type
/diffto inspect the Git diff. - Scroll through the output inside the CLI to review edits and added files.
Expected: 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.
Highlight files with /mention
- Type
/mentionfollowed by a path, for example/mention src/lib/api.ts. - Select the matching result from the popup.
Expected: Codex adds the file to the chat, ensuring follow-up turns reference it directly.
Start a new chat with /new
- Type
/newand press Enter. - If Codex offers a checkout choice, choose the current directory or a new worktree.
Expected: Codex starts a fresh chat in the same CLI session, so you can switch chats without leaving your terminal.
To name the new chat as you create it, run /new bug bash.
Unlike /clear, /new doesn’t clear the current terminal view first.
Rename the current chat with /rename
- Type
/rename <name>, or type/renameto open the naming prompt. - Enter a short name that will help you find the chat later.
Expected: Codex updates the saved chat name without changing its transcript.
Resume a saved chat with /resume
- Type
/resumeand press Enter. - Choose a search scope in the picker.
Cwdshows chats from the current directory.Repo, when available, includes the corresponding directory in linked local worktrees.Allsearches across directories. - Select the chat you want to resume.
Expected: Codex reloads the selected chat’s transcript so you can pick up where you left off, keeping the original history intact.
Fork the current chat with /fork
- Type
/forkand press Enter. - If Codex offers a checkout choice, choose the current directory or a new worktree.
Expected: Codex clones the current chat into a new chat with a fresh ID, leaving the original transcript untouched so you can explore an alternative approach in parallel.
If you need to fork a saved session instead of the current one, run
codex fork in your terminal to open the session picker.
Continue in the desktop app with /app
On macOS and Windows, type /app to open the current session in the ChatGPT
desktop app. If the app isn’t installed or running, Codex shows an error asking
you to install or launch it.
Expected: The desktop app opens the same saved chat so you can continue there.
Start a side chat with /side
Use /side to start an ephemeral fork from the current chat without switching away from the main chat.
- Type
/sideto open a side chat. - Optionally add inline text, for example
/side Check whether this plan has an obvious risk. - Return to the parent chat after the focused detour finishes.
Expected: Codex opens a side chat whose transcript is separate from the parent chat. While you are in side mode, the TUI continues to show the parent chat’s status so you can see whether the main chat is still running.
/side is unavailable inside another side chat and during review mode.
Generate AGENTS.md with /init
- Run
/initin the directory where you want Codex to look for persistent instructions. - Review the generated
AGENTS.md, then edit it to match your repository conventions.
Expected: Codex creates an AGENTS.md scaffold you can refine and commit for
future sessions.
Ask for a working tree review with /review
- Type
/review. - Follow up with
/diffif you want to inspect the exact file changes.
Expected: 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.
List MCP tools with /mcp
- Type
/mcp. - Review the list to confirm which MCP servers and tools are available.
Expected: You see the configured Model Context Protocol (MCP) tools Codex can call in this session.
Use /mcp verbose to include detailed server diagnostics. Use
/mcp login <name> to sign in to a configured MCP server from the active session.
Browse apps with /apps
- Type
/apps. - Pick an app from the list.
Expected: Codex inserts the app mention into the composer as $app-slug, so
you can immediately ask Codex to use it.
Browse plugins with /plugins
- Type
/plugins. - Choose a marketplace tab, then pick a plugin to inspect its capabilities or available actions.
Expected: Codex opens the plugin browser so you can review installed plugins, discoverable plugins that your configuration allows, and installed plugin state. Press Space on an installed plugin to toggle its enabled state.
View and manage lifecycle hooks with /hooks
- Type
/hooks. - Choose a hook event to inspect the matching handlers.
- Trust, disable, or re-enable non-managed hooks as needed.
Expected: Codex opens the hook browser so you can review configured lifecycle hooks. Managed hooks appear as managed and can’t be disabled from the user hook browser.
Manage chats with /agents
- Type
/agentsand press Enter. - Select a chat from the command center to open it.
Expected: Codex shows an overview of chats on the connected server. You can
inspect their status and switch between them. To open the command center
directly from your terminal, run codex agents. The command center requires a
shared local or remote server.
Switch agent threads with /subagents
- Type
/subagentsand press Enter. - Select the thread you want from the picker.
Expected: Codex switches the active thread so you can inspect or continue that agent’s work.
Send feedback with /feedback
- Type
/feedbackand press Enter. - Follow the prompts to include logs or diagnostics.
Expected: Codex collects the requested diagnostics and submits them to the maintainers.
Sign out with /logout
- Type
/logoutand press Enter.
Expected: Codex clears local credentials for the current user session.
Exit the CLI with /quit or /exit
- Type
/quit(or/exit) and press Enter.
Expected: Codex exits immediately. Save or commit any important work first.