Plugin

2026-09-21 01:18 Monday4641min
CC BY 4.0(除特别声明和转载)

Plugin 是分发和安装的单元,它将 Skill 和/或 MCP 服务器打包在一起,方便共享。

  • 组合形式:一个插件可以只包含 Skills,只包含 MCP 服务器,或两者兼有。此外,还可以包含生命周期钩子(Lifecycle hooks),在 Codex 运行时的特定阶段执行命令。

目录结构

一个典型的插件目录结构如下

my-plugin/
├── .codex-plugin/
│   └── plugin.json       # 唯一必须文件
├── .mcp.json             # MCP 服务器配置(可选,位于插件根目录)
├── .app.json             # 应用注册(可选)
├── skills/               # 技能目录
│   └── my-skill/
│       └── SKILL.md
├── hooks/                # 生命周期钩子(可选)
├── scripts/              # 脚本(可选)
└── assets/               # 资源(可选)

plugin.json 实例


{
  "name": "vue-workflow",
  "version": "1.0.0",
  "description": "Vue 3 组件开发工作流:组件生成 + API 文档查询",
  "skills": "./skills/",
  "mcpServers": "./.mcp.json",
  "hooks": "./hooks/hooks.json"
}

skills 字段指向技能目录,mcpServers 指向 MCP 配置文件路径(相对于插件根目录解析)。

mcp.json 实例(插件内)


{  
  "mcpServers": {  
    "docs-search": {  
      "command": "npx",  
      "args": ["-y", "@my-org/docs-mcp-server"],  
      "env": {  
        "DOCS_API_KEY": "${DOCS_API_KEY}"  
      }  
    }  
  }  
}

打包与分发

使用内置的 @plugin-creator 技能可以快速脚手架化一个插件目录。插件可以通过本地 marketplace 或公共插件目录分发:

  • 本地 marketplace:~/.agents/plugins/marketplace.json
  • 公共插件:发布到 ChatGPT 和 Codex 共享的通用插件目录
BuyMeACola