# Types of Marketplace Entries for OpenAI Plugins: A Complete Guide to the Catalog Hierarchy

> Explore the six marketplace entry types for OpenAI plugins: Plugin, Skill, Command, Agent, Reviewer Agent, and Connector. Understand the catalog hierarchy for seamless integration.

- Repository: [OpenAI/plugins](https://github.com/openai/plugins)
- Tags: tutorial
- Published: 2026-09-10

---

**The OpenAI Plugins repository defines six distinct marketplace entry types—Plugin, Skill, Command, Agent, Reviewer Agent, and Connector—that form a hierarchical catalog structure for the OpenAI Plugin Marketplace.**

Each integration in the `openai/plugins` repository is packaged as a **Codex plugin** that surfaces in the marketplace through a tiered classification system. These entry types allow the marketplace to display granular capabilities—from top-level catalog items to specific slash commands—while maintaining clear organizational boundaries in the source code.

## The Six Types of Marketplace Entries for Plugins

The repository distinguishes between six specific entry types, each serving a unique role in the marketplace taxonomy. Understanding these distinctions is essential for developers building integrations and users navigating the catalog.

### Plugin (Top-Level Catalog Entry)

A **Plugin** represents the highest-level marketplace entry: a self-contained package bundling a manifest, assets, and capabilities. Each plugin resides in its own directory (e.g., `plugins/zoom/`) and includes a [`.codex-plugin/plugin.json`](https://github.com/openai/plugins/blob/main/.codex-plugin/plugin.json) file that establishes its marketplace identity.

The manifest in [`plugins/zoom/.codex-plugin/plugin.json`](https://github.com/openai/plugins/blob/main/plugins/zoom/.codex-plugin/plugin.json) declares the plugin's metadata and constituent components:

```json
{
  "id": "zoom",
  "name": "Zoom",
  "description": "Zoom app connector for Codex",
  "version": "1.0.0",
  "skills": ["video-sdk/web", "meeting-sdk/web"],
  "commands": ["start", "join"],
  "agents": ["zoom-oauth-scope-auditor", "zoom-integration-reviewer"]
}

```

This JSON structure positions the Plugin entry as the parent container for all subsidiary marketplace items.

### Skill (Reusable Functional Components)

A **Skill** is a reusable piece of functionality inside a plugin—such as API wrappers, command sets, or UI components. The marketplace discovers skills automatically via YAML front-matter in [`SKILL.md`](https://github.com/openai/plugins/blob/main/SKILL.md) files distributed throughout the plugin's `skills/` directory.

For example, [`plugins/zoom/skills/video-sdk/web/SKILL.md`](https://github.com/openai/plugins/blob/main/plugins/zoom/skills/video-sdk/web/SKILL.md) defines a skill entry using front-matter:

```yaml
---
aliases:
  - zoom video
intents:
  - start video call
pathPatterns:
  - /video/sdk/** 
---

```

Skills appear under a plugin's "Skills" section in the marketplace UI, allowing users to discover specific functional capabilities independent of the broader plugin context.

### Command (Slash-Command Actions)

**Commands** are actionable slash-commands that users invoke directly from the Chat UI. These entries are enumerated in the plugin manifest and defined according to conventions specified in [`plugins/zoom/commands/_conventions.md`](https://github.com/openai/plugins/blob/main/plugins/zoom/commands/_conventions.md).

A command definition in the commands directory follows this structured format:

```markdown

# Start Command

## Description

Launch a Zoom meeting from chat.

## Parameters

- meeting_id: string
- topic: string

```

Each command represents a discrete marketplace entry point that translates natural language chat input into specific plugin operations.

### Agent (Autonomous Background Assistants)

An **Agent** is an autonomous AI assistant capable of running background tasks, audits, or reviews for a plugin. Agents are exposed in the marketplace as background processing units and are documented in the plugin's [`AGENTS.md`](https://github.com/openai/plugins/blob/main/AGENTS.md) file and individual `agents/*.md` files.

Defined in files like [`plugins/zoom/agents/zoom-oauth-scope-auditor.md`](https://github.com/openai/plugins/blob/main/plugins/zoom/agents/zoom-oauth-scope-auditor.md), agents handle asynchronous operations:

```markdown
Audit OAuth scopes for Zoom integration compliance.

```

Agents operate without direct user invocation, monitoring plugin health and security continuously.

### Reviewer Agent (Quality Assurance Specialists)

A **Reviewer Agent** is a specialized subtype of agent that provides marketplace-ready metadata, branding, and verification. Unlike general agents, reviewer agents specifically assure quality compliance and appear on the marketplace entry page as trust indicators.

In [`plugins/zoom/agents/zoom-integration-reviewer.md`](https://github.com/openai/plugins/blob/main/plugins/zoom/agents/zoom-integration-reviewer.md), the agent defines its verification scope:

```markdown
You are the Zoom Integration Reviewer for this plugin.

```

These specialized agents validate that plugins meet OpenAI's marketplace standards prior to and during publication.

### Connector / Integration (External Service Mappings)

**Connectors** (or Integrations) represent concrete mappings to external services such as Zoom, Vercel, or Stripe. While technically housed within a plugin directory, the marketplace treats connectors as separate entries when they maintain independent manifests and branding.

The Vercel connector in [`plugins/vercel/README.md`](https://github.com/openai/plugins/blob/main/plugins/vercel/README.md) exemplifies this pattern, packaging upstream runtime content specifically for marketplace catalog presentation. This entry type allows complex plugins to expose individual service integrations as distinct marketplace discoverable items while maintaining unified source control.

## Repository Structure for Marketplace Entries

The hierarchical relationship between entry types manifests concretely in the repository's file organization. Each plugin directory contains:

1. **README.md** - High-level plugin description and marketplace packaging documentation
2. **.codex-plugin/plugin.json** - Machine-readable manifest defining the plugin entry and its children
3. **skills/** - Subdirectories containing [`SKILL.md`](https://github.com/openai/plugins/blob/main/SKILL.md) files for each skill entry
4. **commands/** - Markdown files defining command entries per [`_conventions.md`](https://github.com/openai/plugins/blob/main/_conventions.md)
5. **agents/** - Markdown files defining agent and reviewer agent capabilities
6. **AGENTS.md** - Registry documenting all agents associated with the plugin

This structure ensures the marketplace parser can index each entry type with appropriate metadata, searchability, and actionability.

## Summary

- **Plugin** entries serve as top-level catalog items, defined by [`.codex-plugin/plugin.json`](https://github.com/openai/plugins/blob/main/.codex-plugin/plugin.json) manifests that declare all child components including skills, commands, and agents.
- **Skill** entries provide reusable functionality discovered automatically via [`SKILL.md`](https://github.com/openai/plugins/blob/main/SKILL.md) front-matter within the skills directory hierarchy.
- **Command** entries expose slash-command actions enumerated in the plugin manifest and documented in the commands directory according to convention specifications.
- **Agent** entries enable autonomous background processing for operational tasks like auditing and security monitoring.
- **Reviewer Agent** entries specialize in quality assurance and marketplace compliance verification, appearing as trust indicators on entry pages.
- **Connector** entries allow external service integrations to appear as distinct marketplace items when separately branded, despite residing within parent plugin directories.

## Frequently Asked Questions

### What is the difference between an Agent and a Reviewer Agent in the OpenAI Plugin Marketplace?

While both are autonomous AI assistants defined in the `agents/` directory and documented in [`AGENTS.md`](https://github.com/openai/plugins/blob/main/AGENTS.md), a Reviewer Agent specifically handles marketplace compliance, branding verification, and quality assurance. General Agents perform broader background tasks like OAuth scope auditing or integration monitoring. Reviewer Agents appear prominently on the marketplace entry page as trust indicators, whereas standard Agents operate silently behind the scenes without direct user visibility.

### How does the marketplace discover Skills within a plugin?

The marketplace automatically discovers Skills by parsing YAML front-matter in [`SKILL.md`](https://github.com/openai/plugins/blob/main/SKILL.md) files located throughout the plugin's `skills/` directory tree. Each [`SKILL.md`](https://github.com/openai/plugins/blob/main/SKILL.md) file declares intents, path patterns, and aliases that the marketplace indexes for searchability. This discovery mechanism allows plugins to expose granular capabilities without requiring explicit registration of every skill in the main [`plugin.json`](https://github.com/openai/plugins/blob/main/plugin.json) manifest, keeping the manifest concise while enabling deep capability exposure.

### Can a Connector exist independently from a Plugin?

According to the repository structure, Connectors are technically components within a plugin directory (e.g., `plugins/vercel/`). However, the marketplace treats them as separate entries when they possess distinct manifests and branding. This architectural pattern means that while the source code resides within a parent plugin folder for organizational consistency, users may encounter Connector entries as standalone marketplace items representing specific external services like Vercel or Stripe.

### How are Commands different from Skills in the marketplace hierarchy?

Commands represent actionable endpoints that users invoke through slash-commands in the Chat UI, requiring explicit enumeration in the [`plugin.json`](https://github.com/openai/plugins/blob/main/plugin.json) manifest's `commands` array. Skills, conversely, are discoverable functional components that provide capabilities without direct invocation interfaces—instead offering reusable logic that Commands or other systems can leverage. While both appear in the marketplace catalog, Commands are user-facing actions whereas Skills are developer-facing capabilities.