外观
插件使用可复用的技能和 MCP 服务器扩展 Deep Agents Code。市场(Marketplaces)提供目录,用于在项目或团队中查找和安装插件。Deep Agents Code 支持 Claude 和 Codex 风格的插件清单以及市场目录,如创建插件和创建市场中所述。
WARNING
只从你信任的来源安装插件和市场。已启用的插件可以添加指令,并以你的用户权限启动 MCP 服务器进程。
以交互方式管理插件
要在 dcode 会话中浏览市场并管理插件:
- 运行
/plugins打开插件管理器。 - 从其**市场(Marketplaces)**选项卡添加市场。支持的来源包括:
- 采用
owner/repo格式的 GitHub 仓库,可选后跟@branch-or-tag。 - HTTPS Git 仓库 URL,可选后跟
#branch-or-tag。 - 提供市场 JSON 文件的 HTTPS URL。
- 本地市场目录或 JSON 文件。
- 采用
- 从市场安装插件。
- 运行
/reload以激活新安装的插件技能和 MCP 服务器,而无需重启会话。
插件管理器还允许你启用、禁用和卸载已安装的插件。禁用插件会使其保持安装状态,但在你运行 /reload 或启动新会话后,其技能和 MCP 服务器会被排除在外。
移除市场会卸载其插件并删除受管理的缓存数据。当市场来自本地目录或文件时,Deep Agents Code 会保留原始来源。运行 /reload 或启动新会话,以将移除操作应用到活动会话中。
从命令行管理插件
对于脚本和终端管理,请使用 dcode plugin。插件 ID 使用 plugin-name@marketplace-name 格式。
bash
# 添加并检查市场
dcode plugin marketplace add acme/plugins
dcode plugin marketplace list
# 浏览并安装插件
dcode plugin list
dcode plugin install code-review@acme-tools
# 更改插件状态
dcode plugin disable code-review@acme-tools
dcode plugin enable code-review@acme-tools
# 移除插件或市场
dcode plugin uninstall code-review@acme-tools
dcode plugin marketplace remove acme-toolsplugin list 和 plugin marketplace list 接受 --json。安装插件后,请在活动交互式会话中运行 /reload,或启动新会话。
使用插件技能和 MCP 服务器
插件技能是带命名空间的,以防止与项目、用户以及其他插件技能发生冲突。使用插件 ID 和技能路径来调用技能:
txt
/skill:plugin-name@marketplace-name:skill-name optional arguments在交互式模式下,自动补全也匹配更短的 /plugin-name:skill-name 形式,并将其扩展为规范的 /skill: 命令。嵌套技能目录会将每个目录添加到命名空间。例如,来自 quality@acme-tools 的 skills/review/security/SKILL.md 会变成 /skill:quality@acme-tools:review:security。
已启用的插件也可以贡献 MCP 服务器。当插件加载时,Deep Agents Code 会将这些服务器与你的常规 MCP 配置合并。使用 /mcp 检查可用的服务器和工具。
创建插件
Deep Agents Code 插件是包含一个或两个受支持组件的目录:
txt
my-plugin/
├── .claude-plugin/
│ └── plugin.json
├── skills/
│ └── review/
│ └── SKILL.md
└── .mcp.jsonDeep Agents Code 也识别 .codex-plugin/plugin.json。当组件使用其默认位置时,清单是可选的。如果插件只包含一个技能,你可以将 SKILL.md 放在插件根目录,而不必创建 skills/。
定义插件清单
当存在时,.claude-plugin/plugin.json 或 .codex-plugin/plugin.json 必须包含 name。你还可以声明版本和自定义组件路径:
json
{
"name": "my-plugin",
"version": "1.0.0",
"skills": "./skills",
"mcpServers": "./.mcp.json"
}skills 和 mcpServers 字段接受路径字符串或路径数组。mcpServers 也可以包含内联的 MCP 配置对象。每个组件路径都必须以 ./ 开头、位于插件根目录之内,并且不包含 ..。
当未声明自定义路径时,Deep Agents Code 会发现:
skills/下的技能,或当不存在skills/目录时位于根目录的SKILL.md。- 根目录
.mcp.json文件中的 MCP 服务器。
添加技能
将每个技能组织为包含 SKILL.md 的目录:
txt
skills/
└── review/
├── SKILL.md
└── checklist.md使用与独立 Deep Agents Code 技能相同的技能格式。安装后的插件名称会成为技能命名空间。更多信息请参阅记忆与技能。
添加 MCP 服务器
将标准的 MCP 服务器定义放在 .mcp.json 中,或在插件清单中用 mcpServers 内联声明。插件配置支持以下路径变量:
${CLAUDE_PLUGIN_ROOT}或${PLUGIN_ROOT}:已安装的插件目录。${CLAUDE_PLUGIN_DATA}或${PLUGIN_DATA}:插件的可写数据目录。${CLAUDE_PROJECT_DIR}:当前活动项目目录。
例如:
json
{
"mcpServers": {
"review-tools": {
"command": "python",
"args": ["${CLAUDE_PLUGIN_ROOT}/server.py"],
"env": {
"CACHE_DIR": "${CLAUDE_PLUGIN_DATA}"
}
}
}
}受支持的 MCP 传输方式和字段请参阅 MCP 工具。
创建市场
市场是一个 JSON 目录,包含名称和 plugins 数组。将其存储在市场根目录下的以下路径之一:
.claude-plugin/marketplace.json.agents/plugins/marketplace.json.agents/plugins/api_marketplace.json
以下市场包含一个存储在同一个仓库中的插件:
json
{
"name": "acme-tools",
"plugins": [
{
"name": "code-review",
"source": "./plugins/code-review",
"description": "Review code for correctness and maintainability"
}
]
}每个插件条目都需要 name 和 source。它还可以包含 description 和 author。本地源路径必须以 ./ 开头,并保持在市场根目录之内。当所有本地插件共享不同的基础目录时,设置 metadata.pluginRoot。
市场条目也可以使用外部 Git 来源:
json
{
"name": "acme-tools",
"plugins": [
{
"name": "code-review",
"source": {
"source": "github",
"repo": "acme/code-review-plugin",
"ref": "v1.0.0"
}
},
{
"name": "release-tools",
"source": {
"source": "git-subdir",
"url": "https://github.com/acme/developer-tools.git",
"path": "./plugins/release-tools",
"ref": "main"
}
}
]
}受支持的外部插件来源类型为 github、url 和 git-subdir。远程 URL 必须使用 HTTPS。作为直接 JSON URL 添加的市场不能包含本地相对插件来源,因为只下载目录文件本身。当目录引用了同一源树中的插件目录时,请使用 Git 仓库或本地目录。
通过添加本地市场的目录、安装一个插件,并启动新会话或运行 /reload 来测试本地市场:
bash
dcode plugin marketplace add ./my-marketplace
dcode plugin install code-review@acme-tools