Primary navigation

Commands

Reference for commands and keyboard shortcuts in the ChatGPT desktop app

Use these commands and keyboard shortcuts to navigate the app.

Keyboard shortcuts

ActionShortcut
General
Command menuCmd/Ctrl + Shift + P or Cmd/Ctrl + K
SettingsCmd/Ctrl + ,
Keyboard shortcutsCmd/Ctrl + Shift + /
Open folderCmd/Ctrl + O
Navigate backCmd/Ctrl + [
Navigate forwardCmd/Ctrl + ]
Increase font sizeCmd/Ctrl + +
Decrease font sizeCmd/Ctrl + -
Toggle sidebarCmd/Ctrl + B
Open review tabCtrl + Shift + G
Toggle review panelCmd/Ctrl + Alt + B
Toggle bottom panelCmd/Ctrl + J
Toggle terminalCtrl + `
Clear the terminalCtrl + L
ChatQuick ChatCmd/Ctrl + Alt + N
TaskNew taskCmd/Ctrl + N or Cmd/Ctrl + Shift + O
Search tasksCmd/Ctrl + G
Find in taskCmd/Ctrl + F
Previous taskCmd/Ctrl + Shift + [
Next taskCmd/Ctrl + Shift + ]
InputDictationCtrl + Shift + D

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.

Search past tasks and find in a task

Use task search (Cmd/Ctrl + G) to reopen a past task. When expanded matching is available, it can also match task content and Git branch names, so you can search for a phrase from the task or a branch such as fix/login-redirect.

Use Find in task (Cmd/Ctrl + F) after opening a task to find text within it. It doesn’t search across other tasks.

For actions that start with /, see Slash commands.

The ChatGPT desktop app keeps the codex:// URL scheme for compatibility, so links can open specific parts of the app directly. Encode query string values before adding them to a URL.

Use these canonical forms when you create links. The sections below list the full reference by link type.

Deep linkOpens
codex://threads/newA new local task.
codex://new?<query>A new local task with at least one query parameter.
codex://threads/<thread-id>A local task. <thread-id> is its technical thread ID.
codex://settingsSettings.
codex://settings/connections/<connection-type>Computer, device, or SSH connection settings.
codex://settings/connections/ssh/add?name=<ssh-config-host>Adds a host from your SSH config to Codex.
codex://skillsSkills.
codex://automationsScheduled with the create flow open.
codex://plugins/install/<plugin-name>?marketplace=<marketplace-name>The install flow for a plugin from a known marketplace.
codex://plugins/<plugin-id>A plugin detail page.
codex://plugins/<plugin-name>?marketplacePath=<absolute-marketplace-path>A local plugin detail page from a local marketplace.
codex://pets/install?name=<pet-name>&imageUrl=<https-image-url>The pet install flow.

Tasks

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

Deep linkOpens
codex://threads/<thread-id>A local task. <thread-id> is its technical thread ID.
codex://threads/newA new local task.
codex://threads/new?<query>A new local task with optional query parameters.
codex://new?<query>A new local task. Include at least one of prompt, path, or originUrl; otherwise the link does nothing.

For codex://threads/new or codex://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 task 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 settings.
codex://settings/computer-use/google-chromeGoogle Chrome settings for computer use.
codex://settings/connectionsRemote connections settings.
codex://settings/connections/computerSettings for controlling this Mac or PC from another device.
codex://settings/connections/devicesSettings for controlling other devices.
codex://settings/connections/sshSSH connection settings.
codex://settings/connections/ssh/add?name=<ssh-config-host>Adds the named host alias as a Codex-managed connection, then opens SSH connection settings.

The name value must match a host alias in ~/.ssh/config. The link disables automatic connection for the added host. If Codex can’t find the named host, it opens SSH connection settings and shows an error.

Unsupported codex://settings/... paths open the main Settings page.

Skills

Use these links when you need to open Skills.

Deep linkOpens
codex://skillsSkills.

Scheduled

Use these links when you need to open Scheduled.

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

Plugins

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

Plugin install

Use this form to open the install flow for a plugin from a marketplace that Codex already knows about.

Deep linkOpens
codex://plugins/install/<plugin-name>?marketplace=<marketplace-name>The plugin detail or install flow for a plugin.
Query parameterRequiredWhat it does
marketplace=<marketplace-name>YesIdentifies the marketplace. For an OpenAI-curated plugin, use openai-curated.

The install link accepts only the marketplace query parameter. If Codex can’t find the requested marketplace or plugin, it opens the Plugins page instead.

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 write a link manually.

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’s 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. The value must contain at least one non-whitespace character.
imageUrl=<https-image-url>YesProvides an absolute HTTPS URL for the pet image or sprite sheet.
description=<text>NoAdds a description to the install flow.
spriteVersionNumber=<1-or-2>NoSelects the sprite-sheet format. The default is 1; the only other supported value is 2.

The install link accepts only these query parameters. Invalid names, non-HTTPS image URLs, unsupported sprite versions, or extra path segments cause the link to do nothing.

See also