How to Find Available OpenAI Plugins: Navigating the Codex Marketplace
All available OpenAI plugins are cataloged in the marketplace.json manifest located at .agents/plugins/marketplace.json in the openai/plugins repository.
The openai/plugins repository serves as the official registry for Codex-compatible plugins. Whether you are building an automation workflow or integrating third-party tools, learning how to find available OpenAI plugins starts with understanding the repository's manifest structure and individual plugin configurations.
Understanding the OpenAI Plugins Repository Structure
The openai/plugins repository organizes plugin code and metadata through a specific directory hierarchy. The root README.md provides a high-level overview of the repository's purpose and highlights notable implementations like figma, notion, and build-web-apps.
Each plugin resides in its own subdirectory under plugins/, containing source code, assets, and mandatory configuration files that define its capabilities.
Locating the Master Plugin Catalog
The definitive source for discovering what plugins are available lies in the default marketplace manifest.
The marketplace.json File
Located at .agents/plugins/marketplace.json, this JSON file contains an array of plugin descriptors. Each entry functions as a discovery record, mapping a plugin's identity to its installation requirements.
A typical entry follows this structure:
{
"name": "slack",
"source": {
"source": "local",
"path": "./plugins/slack"
},
"policy": {
"installation": "AVAILABLE",
"authentication": "ON_INSTALL"
},
"category": "Communication"
}
Plugin Metadata Fields
Each descriptor contains four critical fields:
- name: The unique identifier for the plugin (e.g.,
slack,linear,figma). - source.path: The relative path to the plugin's directory under
plugins/. - policy: Installation and authentication requirements, including
installationstatus andauthenticationmode. - category: The functional grouping (e.g., Communication, Productivity, Creativity).
Inspecting Individual Plugin Capabilities
To understand what a specific plugin does, examine its individual manifest.
The .codex-plugin/plugin.json File
Every plugin includes a mandatory manifest at plugins/<name>/.codex-plugin/plugin.json. This file describes the plugin's capabilities, API specifications, and skill definitions. For example, the Slack plugin's detailed configuration resides at plugins/slack/.codex-plugin/plugin.json.
Additional optional files in the plugin directory include:
SKILL.md: Human-readable documentation of the plugin's functionality.agents/openai.yaml: Configuration for OpenAI agent invocation.assets/: Icons and other visual resources.
Programmatically Discovering OpenAI Plugins
You can automate the discovery process by fetching and parsing the marketplace manifest.
Python Implementation
Use the following Python script to retrieve all plugin names and categories:
import json
import urllib.request
MANIFEST_URL = (
"https://raw.githubusercontent.com/openai/plugins/main/.agents/plugins/marketplace.json"
)
def fetch_manifest(url: str) -> dict:
with urllib.request.urlopen(url) as resp:
return json.loads(resp.read().decode())
def list_plugins(manifest: dict):
for plugin in manifest["plugins"]:
name = plugin["name"]
category = plugin.get("category", "Uncategorized")
print(f"{name:20} – {category}")
if __name__ == "__main__":
data = fetch_manifest(MANIFEST_URL)
list_plugins(data)
This script outputs the plugin catalog with aligned columns showing each tool's functional category.
Bash and jq Alternative
For shell environments, use jq to extract plugin names and authentication requirements:
#!/usr/bin/env bash
set -euo pipefail
MANIFEST="https://raw.githubusercontent.com/openai/plugins/main/.agents/plugins/marketplace.json"
curl -s "$MANIFEST" |
jq -r '.plugins[] | "\(.name) \t \(.policy.authentication)"' |
column -t
This command lists each plugin alongside its authentication policy (typically ON_INSTALL), allowing you to filter for tools that match your security requirements.
Summary
- The master list of available OpenAI plugins lives in
.agents/plugins/marketplace.jsonwithin the openai/plugins repository. - Each plugin entry includes name, source path, category, and policy fields that define installation requirements.
- Individual plugin capabilities are documented in
plugins/<name>/.codex-plugin/plugin.json. - You can programmatically enumerate plugins using Python's
urllibandjsonmodules or command-line tools likecurlandjq. - The repository categorizes plugins by function (Communication, Productivity, Creativity) and specifies authentication modes for security planning.
Frequently Asked Questions
Where is the complete list of OpenAI plugins stored?
The complete catalog is stored in the marketplace.json file at .agents/plugins/marketplace.json in the openai/plugins repository. This file serves as the default marketplace manifest and contains an array of all discoverable plugins shipped with the repository.
What information does each plugin entry contain?
Each entry in marketplace.json includes the plugin's name, the local source path pointing to its directory under plugins/, a category for grouping similar tools, and a policy object detailing installation availability and authentication requirements.
How do I check if a plugin requires authentication?
Inspect the policy.authentication field in the plugin's marketplace entry. Most plugins in the repository use ON_INSTALL authentication, meaning credentials are required during the installation process rather than at runtime.
Can I install these plugins in my own Codex environment?
Yes, plugins marked with "installation": "AVAILABLE" in their policy configuration are ready for installation. The source.path field indicates where the plugin source code resides within the repository, typically under plugins/<name>/.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →