Openai

关注公众号 jb51net

关闭
AI > Openai >

Codex插件实战教学:如何把Skill变成可安装、可分发的Plugin

AI砖家

Codex插件教学

本文以我现有的 super-frontend-design Skill 为例,完整演示如何把一个已经能工作的 Skill 封装成 Codex Plugin,再通过 Marketplace 安装和分发。重点不是讲概念,而是给出一条可以照着复现的路径。

一、为什么要把 Skill 做成 Plugin?

我之前做过一个 super-frontend-design Skill。

它解决的问题很直接:

AI 能生成前端代码,但“能跑”不等于“像专业产品”。

所以我给它加入了一套比较硬的设计约束,例如:

原来的使用方式大概是:

下载 Skill
↓
复制到指定目录
↓
让 Claude Code / Codex 读取
↓
开始执行

能用,但当 Skill 越来越多以后,会出现几个问题:

这就是 Plugin 开始有价值的地方。

Codex插件教学

可以先用一句话理解:

二、当前 Codex Plugin 的基本结构

以 Codex 官方仓库当前提供的 $plugin-creator 为准,一个 Plugin 的核心 Manifest 位于:

.codex-plugin/plugin.json

官方的 Plugin Creator 还支持创建:

skills/
hooks/
scripts/
assets/
.mcp.json
.app.json

也就是说,一个 Plugin 不只是一个 Prompt 文件,它可以把 Agent 工作所需的多类资源放在同一个安装单元里。

这次我们的目标不是重写 super-frontend-design,而是:

保留已有 Skill,只增加 Plugin 封装层。

最终目录可以整理成:

super-frontend-design/
├── .codex-plugin/
│   └── plugin.json
├── skills/
│   └── super-frontend-design/
│       ├── SKILL.md
│       ├── templates/
│       ├── examples/
│       └── .env.example
├── assets/
└── README.md

这里职责非常清楚:

Plugin:负责安装、管理和分发

Skill:负责真正的工作流和规则

三、最快的方法:直接用$plugin-creator

如果你当前 Codex 环境里已经有官方 Plugin Creator,可以直接调用:

$plugin-creator

然后给它一个明确任务,例如:

Create a plugin named super-frontend-design.

Package my existing super-frontend-design skill.

Requirements:

- Keep the existing SKILL.md
- Keep templates and examples
- Never use emoji as UI icons
- Prefer Lucide or Tabler SVG icons
- Generate responsive production-ready frontend code
- Add the plugin to a personal marketplace

官方 Plugin Creator 当前会创建一个基础 Plugin 骨架,并要求核心 Manifest 保持在:

<plugin-path>/.codex-plugin/plugin.json

如果要同时创建 Skill 目录,可以使用官方脚本的:

python3 scripts/create_basic_plugin.py super-frontend-design \
  --with-skills \
  --with-assets \
  --with-marketplace

实际路径要根据你的 Plugin Creator 所在位置调整。

创建完以后,建议先检查目录,再运行官方校验脚本:

python3 scripts/validate_plugin.py <plugin-path>

不要跳过校验。

因为 Manifest 字段错误、残留 TODO、版本号不合法等问题,都会导致后续安装体验很差。

四、plugin.json要放什么?

一个最小可用思路是:

{
  "name": "super-frontend-design",
  "version": "0.1.0",
  "description": "Create production-grade frontend interfaces.",
  "author": {
    "name": "adu666"
  },
  "skills": "./skills/",
  "interface": {
    "displayName": "Super Frontend Design",
    "shortDescription": "Create professional frontend interfaces.",
    "longDescription": "Generate distinctive, responsive and production-grade frontend interfaces.",
    "developerName": "adu666",
    "category": "Productivity",
    "capabilities": [],
    "defaultPrompt": "Create a professional production-grade frontend interface."
  }
}

实际字段请以你当前安装的 Plugin Creator 校验规则为准。

最关键的是这一类关系:

"skills": "./skills/"

它把 Plugin 和内部 Skills 关联起来。

也就是说,我们不需要把原来的 Skill 全部改写。

五、把原来的 Skill 迁进来

我原来的 super-frontend-design 仓库已经有:

SKILL.md
templates/
examples/
.env.example

因此迁移其实很简单:

skills/
└── super-frontend-design/
    ├── SKILL.md
    ├── templates/
    ├── examples/
    └── .env.example

Plugin 负责“装进去”。

Skill 继续负责:

这也是我认为 Plugin 很适合已有 Skill 作者的原因:

以前的工作没有白做。

六、接下来做 Marketplace

单独有 Plugin 还不够。

真正改变分发体验的是 Marketplace。

Codex插件教学

Codex 当前 Plugin Creator 的 Marketplace 结构使用:

.agents/plugins/marketplace.json

一个简单的 Marketplace 可以是:

{
  "name": "personal",
  "interface": {
    "displayName": "Personal"
  },
  "plugins": [
    {
      "name": "super-frontend-design",
      "source": {
        "source": "local",
        "path": "./plugins/super-frontend-design"
      },
      "policy": {
        "installation": "AVAILABLE",
        "authentication": "ON_INSTALL"
      },
      "category": "Productivity"
    }
  ]
}

官方当前对 policy.installation 支持的值包括:

NOT_AVAILABLE
AVAILABLE
INSTALLED_BY_DEFAULT

对 policy.authentication 支持:

ON_INSTALL
ON_USE

对于普通个人 Plugin,先用:

{
  "installation": "AVAILABLE",
  "authentication": "ON_INSTALL"
}

已经够了。

七、个人 Marketplace 和团队 Marketplace 不一样

这里非常容易写错。

个人 Marketplace

官方 Plugin Creator 当前默认的个人 Marketplace 路径是:

~/.agents/plugins/marketplace.json

这个默认个人 Marketplace 会被 Codex 自动发现。

因此:

默认个人 Marketplace 不需要额外执行 codex plugin marketplace add。

安装 Plugin 时使用:

codex plugin add super-frontend-design@<marketplace-name>

如果顶层 Marketplace 名称就是:

"name": "personal"

那么就是:

codex plugin add super-frontend-design@personal

非默认 / 团队 Marketplace

如果你做的是一个仓库级 Marketplace,例如:

codex-plugins/
├── .agents/
│   └── plugins/
│       └── marketplace.json
└── plugins/
    └── super-frontend-design/

这种非默认 Marketplace 才需要先把 Marketplace 加入 Codex:

codex plugin marketplace add <path-to-marketplace-root>

这一点建议严格以你本机 codex plugin --help 输出和当前版本官方仓库为准。

八、安装完成后,一定要新开 Session

Plugin 安装成功以后,不建议直接在旧 Session 里测试。

官方当前的安装更新说明建议:

重新安装或更新以后,新开一个 Thread / Session。

因为新的 Skills、MCP Tools 等能力需要在新的上下文边界重新加载。

所以正确流程是:

安装 Plugin
↓
关闭当前 Session
↓
新建 Session
↓
再测试 Plugin

很多“Plugin 装了但是没效果”的问题,其实不是 Skill 写坏了,而是仍然在用旧 Session。

九、真实测试:别用 Hello World

这篇文章如果只测试:

hello world

价值很低。

我的测试方式会直接让 Codex 做一个真实页面。

例如:

Use super-frontend-design.

Create a landing page for an AI coding product.

Tech stack:
- Next.js
- Tailwind CSS

Requirements:
- Dark technical visual style
- Hero section
- Product features
- Workflow
- Pricing
- FAQ
- CTA
- Fully responsive
- Production-ready code

Do not use emoji as icons.
Use professional SVG icons.
Use real visual assets where appropriate.

然后完整观察:

理解需求
↓
读取 Skill
↓
确定视觉方案
↓
创建项目
↓
生成页面
↓
运行项目
↓
检查问题
↓
继续修改
↓
最终页面

文章里建议至少保留三类真实截图:

  1. Codex 识别 Plugin / Skill
  2. Codex 实际执行过程
  3. 浏览器中的最终页面

这样才能真正证明:

Plugin 不只是“安装成功”,而是真的改变了 Codex 的工作方式。

十、Skill、MCP、Plugin 到底怎么选?

Skill

适合:

解决的是:Agent 应该怎么做?

MCP

适合:

解决的是:Agent 可以使用什么外部能力?

Plugin

适合把:

组合到一起,并提供统一的:

一句话:

十一、Plugin 真正改变的是什么?

如果只理解成:Plugin 就是给 Skill 加一个壳。

其实低估它了。

我认为 Plugin 真正重要的变化是:

Agent 能力开始“软件化”。

以前给 AI 增加能力:

复制 Prompt
↓
复制 Markdown
↓
复制 Skill
↓
手动修改配置

现在开始变成:

找到 Plugin
↓
安装
↓
授权
↓
新开 Session
↓
直接使用

进一步,一个团队完全可以维护自己的 Agent 能力仓库:

company-agent-plugins/
├── frontend-design
├── code-review
├── database-design
├── testing
├── deploy
└── documentation

新人加入以后,不一定要先知道:团队的 30 个 Prompt 到底放在哪?

而可能只需要:安装团队 Plugin。

从这个角度看,Plugin 已经很接近:

Agent 时代的能力包管理机制。

十二、下一步我准备怎么做

这次只是把:

super-frontend-design Skill

升级为:

Codex Plugin

下一步我准备继续做两个方向。

1. 把常用 Skill 全部 Plugin 化

例如:

前端设计
代码 Review
文档生成
项目初始化
UI 检查
发布流程

2. 做自己的 Codex Plugin Marketplace

以后分享的可能不只是:一段 Prompt

而是:一个可以直接安装到 Codex 里的能力

这件事,我觉得比“再写 100 条 Prompt”更值得开发者关注。

最后

如果你已经有:

CLAUDE.md
AGENTS.md
SKILL.md
MCP Server
Agent 工作流

现在可以开始想一个问题:

这些能力,能不能进一步变成 Plugin?

Prompt 解决的是:这一次怎么让 AI 做好。

Skill 解决的是:怎么让 AI 重复做好。

Plugin 开始解决的是:怎么把这套能力真正交付给别人。

这三个阶段,已经完全不一样了。

注:Codex Plugin 仍处于快速迭代阶段。命令、Manifest 字段和 Marketplace 行为可能随版本变化。实际操作前建议执行 codex plugin --help,并以当前版本官方仓库与文档为准。

以上就是Codex插件实战教学:如何把Skill变成可安装、可分发的Plugin的详细内容,更多关于Codex插件教学的资料请关注脚本之家其它相关文章!