中文
Primary navigation

Codex app commands

Reference for Codex app commands and keyboard shortcuts

Use these commands and keyboard shortcuts to navigate the Codex app.

Keyboard shortcuts

ActionmacOS shortcut
General
Command menuCmd + Shift + P or Cmd + K
SettingsCmd + ,
Keyboard shortcutsCmd + /
Open folderCmd + O
Navigate backCmd + [
Navigate forwardCmd + ]
Increase font sizeCmd + + or Cmd + =
Decrease font sizeCmd + - or Cmd + _
Toggle sidebarCmd + B
Toggle diff panelCmd + Option + B
Toggle terminalCmd + J
Clear the terminalCtrl + L
Thread
New threadCmd + N or Cmd + Shift + O
Find in threadCmd + F
Previous threadCmd + Shift + [
Next threadCmd + Shift + ]
DictationCtrl + M

To find, customize, or reset shortcuts, open Settings > Keyboard Shortcuts. You can search by command name or switch the search field into keystroke mode and press the shortcut you want to find.

Slash commands

Slash commands let you control Codex without leaving the thread composer. Available commands vary based on your environment and access.

Use a slash command

  1. In the thread composer, type /.
  2. Select a command from the list, or keep typing to filter (for example, /status).

You can also explicitly invoke skills by typing $ in the thread composer. See Skills.

Enabled skills also appear in the slash command list.

Available slash commands

Slash commandDescription
/feedbackOpen the feedback dialog to submit feedback and optionally include logs.
/goalSet a persistent goal for Codex to work toward; use /plan first to shape it.
/mcpOpen MCP status to view connected servers.
/planToggle plan mode for multi-step planning.
/reviewStart code review mode to review uncommitted changes or compare against a base branch.
/statusShow the thread ID, context usage, and rate limits.

Set or manage a goal with /goal

Use /goal in the app composer to start Goal mode. A goal is a persistent objective that Codex works toward until it finishes the task, pauses, or needs more input. To define the goal with Codex first, start with /plan, then set the refined goal with /goal.

If /goal doesn’t appear in the slash command list, enable features.goals in config.toml:

[features]
goals = true

You can also run codex features enable goals from the CLI or ask Codex to run it.

When a goal is active, the app shows its progress above the composer. Use the buttons in that progress row to pause or resume the goal, edit the goal text, or clear the goal instead of typing another slash command. You can keep steering Codex with follow-up messages while the goal runs.

For guidance on writing effective goals, see Goal mode.

The Codex app registers the codex:// URL scheme so links can open specific parts of the app directly.

Use these links when you just need to open a common app destination. The sections below list the full reference by link type.

Deep linkOpens
codex://threads/newA new local thread.
codex://threads/<thread-id>A local thread. <thread-id> must be the thread’s session UUID.
codex://settingsSettings.
codex://skillsSkills.
codex://automationsAutomations with the create flow open.

Threads

Use these links when you need to open an existing local thread or start a new one.

Deep linkOpens
codex://threads/<thread-id>A local thread. <thread-id> must be the thread’s session UUID.
codex://threads/newA new local thread.

For codex://threads/new, add any of these query parameters as needed; you can combine them in the same URL.

Query parameterRequiredWhat it does
prompt=<text>NoSets the initial composer text.
path=<absolute-path>NoOpens the new thread in a local workspace. path must be an absolute path to a local directory. When valid, Codex uses that directory as the active workspace.
originUrl=<git-remote-url>NoMatches one of your current workspace roots by Git remote URL. If path is also present, Codex resolves path first.

Example: Show me some fun stats about how I’ve been using Codex

Settings

Use these links when you need to open Settings or a specific settings page.

Deep linkOpens
codex://settingsSettings.
codex://settings/browser-useBrowser use settings.
codex://settings/computer-use/google-chromeGoogle Chrome settings for computer use.
codex://settings/connectionsRemote connections settings.

Skills

Use these links when you need to open Skills.

Deep linkOpens
codex://skillsSkills.

Automations

Use these links when you need to open Automations.

Deep linkOpens
codex://automationsAutomations with the create flow open.

Plugins

Plugin links use different forms depending on whether you are opening a plugin, installing from a marketplace, or working from a local marketplace.json. For plugin basics, see Plugins. For local or repo marketplace setup, see Build plugins.

Plugin detail

Deep linkOpens
codex://plugins/<plugin-id>A plugin detail page.

<plugin-id> must identify the plugin. For an OpenAI-curated plugin, use the form <plugin-name>@openai-curated.

Codex-generated plugin links can also include these query parameters. Omit both when you handwrite a link.

Query parameterRequiredWhat it does
hostId=<host-id>NoIdentifies the Codex host that owns the plugin context, such as local or one of your configured remote connections. Codex provides these IDs.
source=manageNoPreserves the app’s plugin-management entry point. It is not admin-only.

Example: Open the OpenAI Developers plugin

Local plugin

For local or repo marketplace setup, see Build plugins.

Deep linkOpens
codex://plugins/<plugin-name>?marketplacePath=<absolute-marketplace-path>A local plugin detail page from a local marketplace.
Query parameterRequiredWhat it does
marketplacePath=<absolute-marketplace-path>YesAbsolute path to the local marketplace.json, for example /Users/alex/.agents/plugins/marketplace.json.
mode=shareNoOpens the share flow for that local plugin.

Pets

Use these links to open the pet install flow when that feature is enabled.

Deep linkOpens
codex://pets/install?name=<pet-name>&imageUrl=<https-image-url>The pet install flow.
Query parameterRequiredWhat it does
name=<pet-name>YesSets the pet name.
imageUrl=<https-image-url>YesSets the pet image URL. imageUrl must be HTTPS.
description=<text>NoSets the optional pet description.

See also