OpenAI の Plugin と Skill の違いを整理する
はじめに
OpenAI のドキュメントを読んでいると、次のような言葉が出てきます。
- Plugin
- Skill
- plugin-creator
- skill-creator
- GPT Actions
- Codex Plugins
どれも「AI を拡張する仕組み」に見えますが、同じ意味ではありません。
特に注意したいのは、Plugin という言葉が、文脈によって違う意味で使われることです。
この記事では、OpenAI 公式情報をもとに、Plugin と Skill の違いを整理します。
まず結論
ざっくり言うと、こうです。
Skill は「AI に作業手順を教えるもの」
Plugin は「Skill や外部連携をまとめて配布する箱」
もう少し分解すると、次のようになります。
| 用語 | 役割 |
|---|---|
| 旧 ChatGPT Plugins | ChatGPT から外部サービスや API を使うための仕組み。現在は deprecated |
| GPT Actions | Custom GPT から外部 API を呼ぶ現在の仕組み |
| Skill | 手順、ルール、参考資料、スクリプトをまとめた再利用可能なワークフロー |
| Codex Plugin | Skills、App 連携、MCP server などをまとめる配布単位 |
| skill-creator | Skill を作るための補助 Skill |
| plugin-creator | Codex Plugin を作るための補助 Skill |
旧 ChatGPT Plugins は現在 deprecated されています。OpenAI は当時の Plugins を、言語モデル向けに設計された tool として説明し、ChatGPT が最新情報へアクセスしたり、計算を実行したり、サードパーティサービスを使ったりするためのものとしていました。(OpenAI)
Skill とは
Skill は、AI に特定タスクのやり方を教えるための再利用可能なワークフローです。
OpenAI の Help Center では、Skills は「ChatGPT に特定タスクの実行方法を正確に伝える、再利用・共有可能な workflow」と説明されています。Skill には instructions、examples、code を含められ、インストール後は ChatGPT が役立つ場面で自動的に使えます。(OpenAI Help Center)
つまり Skill は、API そのものではありません。
イメージとしては、AI 用の手順書、参考資料、テンプレート、実行スクリプトをまとめたものです。
たとえば、次のような用途に向いています。
- 毎週のステータスレポートを書く
- 社内テンプレートに沿って文章を作る
- CSV を決まった観点で分析する
- コードレビューのチェックリストを適用する
- 特定プロジェクトの作業手順を守る
一言でいうと、Skill は 「どう作業するか」 を AI に教える仕組みです。
Skill のファイル構造
Codex の公式ドキュメントでは、Skill は SKILL.md を持つディレクトリで、必要に応じて scripts/、references/、assets/、agents/openai.yaml を含められる構造として説明されています。SKILL.md には name と description が必要です。(OpenAI 開発者)
my-skill/
├── SKILL.md
├── scripts/
├── references/
├── assets/
└── agents/
└── openai.yaml
それぞれの役割は、ざっくり次の通りです。
| ファイル / ディレクトリ | 役割 |
|---|---|
SKILL.md |
必須。Skill の名前、説明、AI が従う instructions を書く |
scripts/ |
任意。Python や Shell などの実行コード |
references/ |
任意。必要なときに参照する追加ドキュメント |
assets/ |
任意。テンプレート、画像、サンプルファイルなど |
agents/openai.yaml |
任意。UI 表示や依存関係などのメタデータ |
特に重要なのは SKILL.md です。
Codex はまず Skill の name、description、file path を見て、必要だと判断したときに full SKILL.md instructions を読み込みます。つまり、description は単なる説明文ではなく、Skill が呼び出されるかどうかに関わる重要な情報です。(OpenAI 開発者)
skill-creator をより深く理解するには
Skill の構造を理解したら、次に見るとよいのが skill-creator です。
この記事が分かりやすいのは、skill-creator を単なるテンプレート生成ツールとしてではなく、Skill 設計の実例として読んでいる点です。
たとえば、skill-creator 自身の構成は次のようになっています。
skill-creator/
├── SKILL.md
├── agents/
│ └── openai.yaml
├── assets/
├── references/
├── scripts/
└── license.txt
この構成を見ると、Skill の基本設計がかなり分かりやすくなります。
-
SKILL.mdは Skill の中核 -
agents/openai.yamlは UI 用メタデータ -
references/は必要なときだけ読む詳細資料 -
scripts/は初期化・生成・検証などの実行ロジック -
assets/はアイコンやテンプレートなどの補助ファイル
つまり、Skill を作るときは「何でも SKILL.md に詰め込む」のではなく、常に必要な指示は SKILL.md に置き、詳細資料や実行コードは references/ や scripts/ に分ける、という設計が重要になります。
また、Skill の作り方をさらに深く理解したい場合は、「Codex用 Skill を作るための skill-creator を徹底解説してみた」も参考になります。この記事では、Skill 名、SKILL.md、agents/openai.yaml、scripts/、references/、assets/、構造チェックなど、Skill を作るときに迷いやすい点が skill-creator の実装を読みながら整理されています。
Codex Plugin とは
次に、Codex Plugin です。
ここでいう Plugin は、旧 ChatGPT Plugins とは別物です。
OpenAI の Codex ドキュメントでは、Plugins は skills、app integrations、MCP servers を Codex の再利用可能な workflow としてまとめるものと説明されています。(OpenAI 開発者)
つまり、Codex Plugin は Skill そのものではなく、Skill や外部連携をまとめる箱です。
Codex Plugin のファイル構造
公式ドキュメントでは、Codex Plugin は .codex-plugin/plugin.json を必須の manifest として持ち、必要に応じて skills/、.app.json、.mcp.json、lifecycle config、assets/ などを含められる構造として説明されています。(OpenAI 開発者)
my-plugin/
├── .codex-plugin/
│ └── plugin.json
├── skills/
│ └── my-skill/
│ └── SKILL.md
├── .app.json
├── .mcp.json
├── hooks/
│ └── hooks.json
└── assets/
それぞれの役割は、ざっくり次の通りです。
| ファイル / ディレクトリ | 役割 |
|---|---|
.codex-plugin/plugin.json |
必須。Plugin の manifest |
skills/ |
任意。Plugin に含める Skill |
.app.json |
任意。App や connector の mapping |
.mcp.json |
任意。MCP server configuration |
hooks/hooks.json |
任意。lifecycle configuration |
assets/ |
任意。アイコン、ロゴ、スクリーンショットなど |
関係をシンプルに書くと、こうなります。
Skill = 作業手順を教える中身
Codex Plugin = Skill や外部連携をまとめる箱
Skill と Codex Plugin の違い
Skill と Codex Plugin は競合するものではありません。
Codex Plugin は Skill を含めることができます。公式ドキュメントでも、Plugin には reusable instructions としての Skills、外部 tool への接続としての Apps、追加 tool や共有情報を提供する MCP servers を含められると説明されています。(OpenAI 開発者)
| 観点 | Skill | Codex Plugin |
|---|---|---|
| 本質 | AI に作業手順を教えるもの | Skill や外部連携をまとめる箱 |
| 中心ファイル | SKILL.md |
.codex-plugin/plugin.json |
| 主な用途 | ワークフローの定義 | ワークフローの配布 |
| 含められるもの | instructions、references、scripts、assets | skills、apps、MCP servers、hooks、assets |
| 使う場面 | 1つの作業手順を安定化したいとき | 複数の Skill や連携設定をまとめたいとき |
つまり、次のように考えると分かりやすいです。
まず Skill として作業手順を定義する
↓
それを配布したい場合、Codex Plugin に含める
GPT Actions との関係
GPT Actions も関連しますが、この記事の主題ではありません。
GPT Actions は Custom GPT に保存され、ChatGPT が自然言語を使って外部アプリケーションと REST API 経由でやり取りするための仕組みです。自然言語を API call に必要な JSON schema に変換し、Function Calling を使って API call を実行します。(OpenAI Platform)
ただし、GPT Actions はあくまで Custom GPT から外部 API を呼ぶ仕組みです。
- GPT Actions: Custom GPT から外部 API を呼ぶ
- Skill: AI に作業手順を教える
- Codex Plugin: Skills、Apps、MCP などをまとめて配布する
このように、レイヤーが違います。
skill-creator と plugin-creator の違い
skill-creator は、Skill を作るための補助 Skill です。
OpenAI の Help Center では、Skills 対応アカウントにはデフォルトで skill-creator が含まれ、ChatGPT に Skill の作成や修正を依頼すると、自動的に使われると説明されています。(OpenAI Help Center)
一方、plugin-creator は Codex Plugin を作るための補助 Skill です。
Codex の公式ドキュメントでは、$plugin-creator は必須の .codex-plugin/plugin.json manifest を scaffold し、local marketplace entry の生成にも使えると説明されています。(OpenAI 開発者)
整理すると、こうです。
| 補助ツール | 作るもの |
|---|---|
| skill-creator | Skill |
| plugin-creator | Codex Plugin |
どう使い分けるか
Skill を使うケース
同じ作業を何度も安定して実行したい場合は Skill が向いています。
例:
PRレビュー時に、セキュリティ、テスト、可読性を必ず確認する
この場合に必要なのは、外部 API ではなく、AI に守らせたい手順や観点です。
Codex Plugin を使うケース
複数の Skill、MCP 設定、App 連携などをまとめて配布したい場合は Codex Plugin が向いています。
例:
UIレビュー用 Skill、Figma 連携、デザインルール、MCP 設定をまとめる
この場合、Skill は Plugin の中に入る部品の 1 つになります。
GPT Actions を使うケース
Custom GPT から外部 API を呼びたい場合は GPT Actions を使います。
例:
Custom GPT から Jira API を呼んでチケットを作成する
この場合に必要なのは、作業手順ではなく API 連携です。
まとめ
OpenAI の Plugin と Skill は似て見えますが、役割は違います。
- 旧 ChatGPT Plugins は deprecated
- Custom GPT から外部 API を呼ぶ場合は GPT Actions を見る
- Skill は AI に作業手順を教えるもの
- Codex Plugin は Skills、Apps、MCP などをまとめる箱
- skill-creator は Skill を作る
- plugin-creator は Codex Plugin を作る
一番大事なのは、この理解です。
Skill は「どう作業するか」
Plugin は「何をまとめて届けるか」
この区別ができると、ChatGPT や Codex の拡張設計がかなり分かりやすくなります。