夜雨聆风学习资料网

ARTICLE · 1011096

Codex 插件:一键装齐 Skill、MCP 和 App

Codex 插件:一键装齐 Skill、MCP 和 App

Codex 插件:一键装齐 Skill、MCP 和 App

换一个仓库,之前配好的 Skill、MCP 和 App 集成又得重新核对。少复制一段 .mcp.json 里的环境变量,工具就可能连不上。Plugin 的作用,是把这套能力收进同一个包里。

01 为什么需要插件:散装 Skill、MCP、App 配一次就容易漏一次

Skill、MCP 配置和 App 集成原本都是独立文件或独立入口。在一个项目里配好后,换到另一个项目,常常还得逐个复制目录、补配置、确认环境变量。

麻烦不只在复制。跨项目复用时,Skill、MCP 配置和相关文件要一起到位;交给同事时,文件放在哪里、要改哪段配置,也很难靠口头交代清楚。后续有变动,散装文件更没有统一的版本入口。

Plugin 就是为这类场景准备的:把已有组件作为一个包安装、停用和分享。配置完整地跟着包走,新项目安装后不需要重新拼一遍。

插件带有 version 字段,能够按版本管理这套能力。装好之后,插件本身是否启用、它带的 MCP Server 是否开启、工具审批如何设置,都可以在个人的 Codex 配置中调整,不必直接改动插件包里的文件。

02 Plugin 和 Skill 怎么选:自己用写 Skill,要分发再打包

Skill 和 Plugin 分别解决两件事。Skill 适合在一个仓库中持续调整的个人工作流;Plugin 适合把稳定的一套能力交给更多项目或更多人使用。

对比项
散装 Skill
Plugin
适合场景
单仓库、自用、快速试验
跨团队共享、跨项目复用、版本化发布
包含内容
通常是一项 Skill
Skills、Apps、MCP,也可包含 Hook
共享方式
手动复制文件
通过市场或工作区分享,一键安装
后续管理
改动靠人工同步
可以按版本统一管理

一条还在打磨的工作流,先写成 Skill 就够了。需要把 Skill、MCP 和 App 一起交付,或者需要版本化管理时,再把它们打成 Plugin。

这个边界能避免两头的麻烦:为了一个一次性任务造插件,会让维护成本超过收益;已经被多个项目复用的流程还靠复制文件,又会回到漏配和版本不一致的问题。

03 插件能打包什么:Skill、App、MCP

一个插件可以按需包含三类组件:

组件
作用
安装后的使用方式
Skills
针对特定任务的可复用指令与流程
描述任务时按需使用,或用 @ 点名
Apps
连接 GitHub、Slack、Google Drive 等外部服务
安装或首次使用时按提示授权
MCP Servers
为 Codex 接入额外工具或外部系统信息
可能需要额外配置或认证

插件不要求三类组件同时出现。它用一份清单声明包中包含哪些能力,再把这些能力作为一个整体安装进 Codex。

图:一个插件包可以承载多种组件。Skills 装上后可用,Apps 可能要求授权,MCP Servers 可能要求认证,Hooks 需要审阅后信任。

04 去哪里找、怎么装、怎么调用

插件目录有三个来源:OpenAI 精选、工作区成员分享给你的插件、以及你自己创建或加入工作区的插件。

桌面 App 中,进入 Plugins 面板即可浏览、搜索和安装。CLI 中先启动 Codex,再输入:

/plugins

插件浏览器按市场分组。打开详情页可以安装或卸载;已安装的插件也能临时切换启用状态。

如果要从 CLI 增加一个市场,使用下面的命令:

codex plugin marketplace add owner/repo

市场来源可以是 Git、SSH、HTTP/HTTPS 地址或本地目录;--ref 用于固定 Git ref,--sparse 用于只检出指定路径。增加市场后,用 codex plugin marketplace list 确认即可。市场只是插件货架,添加市场本身不会安装任何插件。

安装完成后,可以直接描述任务,让 Codex 选择可用能力;也可以用 @ 点名插件或其中的 Skill。安装后需要新开线程再调用。插件带有 App 或 MCP 时,首次使用仍可能要求授权或认证。

如果装完后 @ 调不起来,先确认是不是在新线程中调用;再检查 App 的登录授权和 MCP 的认证、配置是否已经完成。安装成功只说明插件本体进入了 Codex,不代表每个外部组件都已经具备访问条件。

05 装上不等于授权:权限、认证与禁用

安装插件后,Codex 能发现其中的工作流;原有审批设置不会因此失效,外部服务也不会自动完成授权。

组件
装上之后
Skills
立即可用,不需要额外授权
Apps
可能在安装或首次使用时要求在 ChatGPT 中登录、授权
MCP Servers
可能需要补充配置或完成认证

当 Codex 通过插件中的 App 向外发送数据时,数据处理适用该 App 自己的条款和隐私政策。安装前要确认插件接入了哪些外部服务,以及这些服务会读写哪些信息。

卸载插件只移除插件本体,不会替你删除已经在 ChatGPT 中安装或授权的 App。因此,移除外部服务访问时,还需要到对应的 App 管理入口单独处理。

不再使用某个插件,可以直接卸载;但它对应的 App 仍需要在 ChatGPT 中单独管理。只是暂时不用时,在 ~/.codex/config.toml 中禁用它并重启 Codex 即可。CLI 插件浏览器中按 Space 切换启用状态,也属于保留安装、暂时关闭的方式。

[plugins."gmail6a9955">#c586c0">@openai-curated"]enabled = false

06 自己打包前要懂的目录规则与第三方信任关

目录规则

插件的核心是 .codex-plugin/plugin.json 和根目录下的组件文件。最小清单可包含 name、version、description 与 skills。其中 name 是插件标识符和组件命名空间,使用 kebab-case;skills、mcpServers、apps、hooks 通过相对插件根目录的路径声明组件。

Skill 放在 skills/<名称>/SKILL.md,MCP 配置放根目录 .mcp.json,App 集成放根目录 .app.json,Hook 放 hooks/hooks.json,图标和截图等素材放 assets/。如果 Hook 使用默认位置 ./hooks/hooks.json,清单里可以不显式声明 hooks。@plugin-creator Skill 可以生成 plugin.json 骨架和本地市场测试条目。

my-first-plugin/├── .codex-plugin/│   └── plugin.json├── skills/│   └── hello/SKILL.md├── .mcp.json├── .app.json└── hooks/hooks.json

记住一条目录规则:.codex-plugin/ 中只放 plugin.json。skills/、hooks/、.mcp.json、.app.json 和素材都与它同级。把 Skill 或 Hook 塞进 .codex-plugin/,插件即使被加载,组件也可能不会按预期出现。

真正用于发布的清单还可能包含 author、homepage、license 和 interface。这些字段用来补充作者、许可证、展示名称、图标和品牌信息;先本地试用时,最小清单已经足够。

第三方信任关

插件可能带 App、MCP 或 Hook,这些组件会进入你的权限边界。Hook 不会因为插件被安装或启用就自动运行;审阅并确认前,Codex 会跳过它。

安装第三方插件前,确认来源是否可信,再查看其中包含哪些组件;出现 Hook 信任提示时,逐条看清定义后再决定是否信任。OpenAI 精选和工作区内可信成员分享的插件更容易核对来源;陌生仓库的插件,应先看 README 和组件内容。

Codex 和 Claude Code 的完整文档,从入门到高级,已经整理好放进公众号菜单栏了。

关注后点菜单里的「codex」或「claude-code」,可以直接下载,也能在线查看。

一套能力还在单个仓库里打磨时,先写成 Skill;需要跨项目、跨团队复用时,再把它和 MCP、App 一起装进 Plugin。这样能减少后续反复核对配置、补齐遗漏项的时间。

相关学习资料