A plugin in Codex is an installable package that combines different kinds of customization into one distributable set. It can contain skills, connectors and MCP servers, hooks, assets and scheduled-task templates. The point of a plugin is to turn scattered configuration into a product with a version, installed and updated as a whole. ChatGPT and Codex use a shared public catalog, but the surfaces differ - and this difference matters to understand before installing.
The difference in surfaces means that "the plugin is in the catalog" is not equal to "the plugin works for me the same way". ChatGPT Work on the web gives a browser directory, install and use. The desktop app adds connector auth to that. The Codex CLI works through /plugins and marketplace commands. And the IDE extension does not support plugins at all right now. So the availability of a specific plugin is checked on your surface rather than assuming that presence in the catalog guarantees work everywhere.
It helps to see how plugins look from the CLI once. Below is the /plugins command that opens work with them. An important detail after install: for the bundled skills and tools to appear in discovery, you start a new session. A plugin does not blend into an already running conversation retroactively - its components are picked up on the next launch. This is the same logic as with the rest of the configuration: the new state applies on a new prefix, not instantly.
The sign-in method affects which plugins are available at all. API-key login supports some OpenAI-curated plugins, but OAuth-dependent connections may be absent: a connector needing interactive OAuth will not work where there is no ChatGPT sign-in. This is worth accounting for in advance, especially in automation: if a pipeline counts on a specific connector, you check that the chosen authorization method gives access to it at all.
It helps to gather plugin support by surface into a table once. Below is the map: ChatGPT Work web, desktop, CLI and IDE. You return to it when planning where a specific customization will work: what installs conveniently in the desktop with connector auth may be unavailable in the IDE and require a different approach in the CLI. Choosing the surface for a plugin is part of planning, not a detail found out already in production.
A plugin is executable code that will travel to others, and it is worth treating accordingly. Installing a plugin does not mean automatic trust in its contents: it can bring hooks and MCP with their own authority. Presence in the catalog is not a security check but merely the fact of publication. So the source is pinned and reviewed, what exactly the plugin brings is studied, and you start in a test environment rather than installing into an environment with real rights at random.
| Surface | Plugin support |
|---|---|
| ChatGPT Work web | Browser directory, install and use |
| Desktop app (Work/Codex) | Directory, install, connector auth |
| Codex CLI | /plugins and marketplace commands |
| IDE extension | Plugins currently unavailable |
The point of plugins is the portability of verified customization between projects and teams. When the same set of skills, hooks and MCP is needed in several places, a plugin lets you version and distribute it as a whole rather than copy it in parts. But portability also amplifies the cost of a mistake: a bad plugin multiplies the problem across everyone who installed it. So the discipline of review and version pinning matters here more than for the local setup of one repository.
The typical failures around plugins are predictable. Believing that presence in the catalog guarantees work on any surface - though the IDE does not support them right now. Expecting bundled skills to appear without a new session. Counting in CI on an OAuth-dependent connector with API-key login. And taking an installed plugin for trusted without reviewing its hooks and MCP. Check support on your surface, restart the session after install, account for the sign-in method and review the plugin as executable code.
codex
/plugins
# after install, start a new session so bundled skills and tools reach discovery
# API-key login supports some OpenAI-curated plugins; OAuth connections may be absent