ClaudeCode插件开发技能Skill plugin-development

这个技能是 Claude Code 插件开发、管理、调试和故障排除的中央权威。它通过委托给 docs-management 技能来提供官方文档支持,涵盖插件创建、结构配置、市场管理、团队工作流等。关键词:插件开发、Claude Code、插件管理、插件市场、调试、DevOps。

DevOps 0 次安装 0 次浏览 更新于 3/11/2026

name: 插件开发 description: Claude Code 插件的中央权威。覆盖插件创建、插件结构(plugin.json、commands/、agents/、skills/、hooks/)、插件清单配置、插件安装和管理(/plugin 命令)、插件市场(marketplace.json、添加市场)、团队插件工作流、插件开发和测试、插件调试、插件分享和分发、插件中的 MCP 服务器以及插件设置。协助创建插件、从市场安装、配置团队插件和故障排除插件问题。100% 委托给 docs-management 技能以获取官方文档。 user-invocable: false allowed-tools: Read, Glob, Grep, Skill

插件元技能

🚨 强制要求:首先调用 docs-management

停止 - 在提供任何关于 Claude Code 插件的响应之前:

  1. 调用 docs-management 技能
  2. 查询 用户的具体主题
  3. 基础 所有响应完全基于加载的官方文档

跳过此步骤会导致过时或错误的信息。

验证检查点

在响应之前,验证:

  • [ ] 我是否调用了 docs-management 技能?
  • [ ] 官方文档是否已加载?
  • [ ] 我的响应是否完全基于官方文档?

如果任何复选框未勾选,停止并首先调用 docs-management。


概述

Claude Code 插件的中央权威。此技能使用 100% 委托给 docs-management - 它不包含任何重复的官方文档。

架构: 纯委托加关键词注册。所有官方文档通过 docs-management 技能查询访问。

何时使用此技能

关键词: 插件、插件创建、插件结构、plugin.json、插件清单、插件命令、插件代理、插件技能、插件钩子、插件市场、marketplace.json、/plugin 命令、插件安装、插件卸载、插件启用、插件禁用、插件浏览、团队插件、插件开发、插件测试、插件调试、插件分享、插件分发、MCP 服务器插件、插件设置、enabledPlugins、extraKnownMarketplaces、插件钩子配置、禁用插件钩子、CLAUDE_HOOK_ENABLED、钩子环境变量、可配置钩子、钩子强制执行模式

在以下情况下使用此技能:

  • 创建新插件
  • 理解插件结构和组件
  • 编写插件清单(plugin.json)
  • 向插件添加命令、代理、技能、钩子
  • 从市场安装插件
  • 管理插件市场
  • 设置团队插件工作流
  • 本地测试插件
  • 调试插件问题
  • 分享和分发插件
  • 配置插件中的 MCP 服务器
  • 管理插件设置
  • 在 marketplace.json 中注册插件(分发关键步骤)
  • 为消费者配置插件钩子以启用/禁用
  • 通过环境变量使插件钩子可配置

docs-management 查询的关键词注册表

查询 docs-management 技能获取官方文档时使用这些关键词:

插件基础

主题 关键词
概述 “插件”、“插件系统”、“扩展 Claude Code”
快速入门 “插件快速入门”、“第一个插件”、“创建插件”
结构 “插件结构”、“插件目录结构”
清单 “plugin.json”、“插件清单”、“插件元数据”

插件组件

主题 关键词
命令 “插件命令”、“命令目录插件”
代理 “插件代理”、“代理目录插件”
技能 “插件技能”、“技能目录插件”
钩子 “插件钩子”、“hooks.json 插件”
MCP 服务器 “MCP 服务器插件”、“.mcp.json 插件”

插件安装

主题 关键词
安装命令 “/plugin 命令”、“插件安装”、“插件管理”
启用/禁用 “插件启用”、“插件禁用”、“插件卸载”
交互菜单 “插件浏览”、“/plugin 交互”
验证 “验证插件安装”、“插件 /help”

插件市场

主题 关键词
概述 “插件市场”、“市场目录”
添加市场 “市场添加”、“添加市场”
市场清单 “marketplace.json”、“市场清单”
市场来源 “插件来源”、“市场来源”
模式字段 “metadata.pluginRoot”、“严格字段市场”、“插件入口模式”
保留名称 “保留市场名称”、“市场名称验证”

团队配置

主题 关键词
团队插件 “团队插件工作流”、“仓库级别插件”
自动安装 “自动插件安装”、“团队插件设置”
配置 “团队市场配置”、“.claude/settings.json 插件”

插件开发

主题 关键词
开发工作流 “插件开发”、“开发插件”
本地测试 “本地测试插件”、“本地市场”
迭代 “插件迭代”、“重新安装插件”
组织 “组织复杂插件”、“插件组织”
环境变量 “CLAUDE_PLUGIN_ROOT”、“插件环境变量”

调试和故障排除

主题 关键词
调试 “调试插件问题”、“插件调试”
调试模式 “claude --debug”、“插件加载调试”
验证 “插件验证”、“claude plugin validate”
常见问题 “插件不工作”、“插件故障排除”

分发

主题 关键词
分享 “分享插件”、“插件分发”
文档 “插件文档”、“插件 README”
版本控制 “插件版本控制”、“语义版本控制插件”
市场注册 “marketplace.json”、“注册插件”、“插件入口”、“市场插件数组”

设置和配置

主题 关键词
插件设置 “插件设置”、“enabledPlugins”
市场设置 “extraKnownMarketplaces”、“市场配置”

插件钩子配置

主题 关键词
钩子基础 “插件钩子”、“hooks.json 插件”
自动发现 “钩子自动发现”、“默认钩子位置”、“hooks.json 默认”
清单格式 “钩子字段格式”、“钩子路径”、“hooks.json 路径”
消费者控制 “禁用插件钩子”、“钩子环境变量”
强制执行模式 “钩子强制执行模式”、“CLAUDE_HOOK_ENFORCEMENT”
禁用钩子 “CLAUDE_HOOK_ENABLED”、“禁用特定钩子”

注意: 插件钩子配置使用环境变量(不像本地钩子使用 YAML 配置)。参见 插件钩子实用程序参考 以了解实现模式,以及 消费者配置参考 以获取最终用户指南。

组件发现与验证

主题 关键词
自动发现 “插件自动发现”、“默认位置”、“组件发现”
默认路径 “插件默认路径”、“默认目录”、“路径行为”
可选字段 “插件可选字段”、“必需与可选”、“清单可选”
路径格式 “组件路径字段”、“路径格式”、“钩子路径格式”
字段验证 “插件字段验证”、“清单验证”、“字段格式”

参考

主题 关键词
技术参考 “插件参考”、“插件规范”
组件参考 “插件组件参考”、“插件模式”
清单路径字段 “组件路径字段”、“自定义插件路径”、“路径行为规则”

快速决策树

你想做什么?

  1. 创建新插件 -> 查询 docs-management:“插件快速入门”、“创建插件”
  2. 理解插件结构 -> 查询 docs-management:“插件结构”、“插件目录结构”
  3. 编写插件清单 -> 查询 docs-management:“plugin.json”、“插件清单”
  4. 向插件添加命令 -> 查询 docs-management:“插件命令”、“命令目录插件”
  5. 向插件添加代理 -> 查询 docs-management:“插件代理”、“代理目录插件”
  6. 向插件添加技能 -> 查询 docs-management:“插件技能”、“技能目录插件”
  7. 向插件添加钩子 -> 查询 docs-management:“插件钩子”、“hooks.json 插件”
  8. 安装插件 -> 查询 docs-management:“/plugin 命令”、“插件安装”
  9. 添加市场 -> 查询 docs-management:“市场添加”、“插件市场”
  10. 设置团队插件 -> 查询 docs-management:“团队插件工作流”
  11. 本地测试插件 -> 查询 docs-management:“本地测试插件”
  12. 调试插件问题 -> 查询 docs-management:“调试插件问题”、“插件故障排除”
  13. 验证插件结构 -> 查询 docs-management:“claude plugin validate”、“插件验证”
  14. 调试插件加载 -> 查询 docs-management:“claude --debug”、“插件加载调试”
  15. 在市场注册插件 -> 查询 docs-management:“marketplace.json”、“注册插件”
  16. 使钩子可配置 -> 参见 插件钩子实用程序参考
  17. 禁用插件的钩子 -> 参见 消费者配置参考
  18. 完整插件重置 -> 运行 /user-config:reset-plugins(清除缓存 + 注册表 + 设置)

主题覆盖

插件结构

  • .claude-plugin/ 目录
  • plugin.json 清单文件
  • agents/ 目录用于子代理
  • skills/ 目录用于技能
  • hooks/ 目录包含 hooks.json
  • .mcp.json 用于 MCP 服务器

组件自动发现与默认位置

插件组件可能从默认位置自动发现。查询 docs-management 以了解当前行为:

查询关键词:

  • “插件自动发现”、“默认位置”、“组件发现”
  • “插件默认路径”、“路径行为规则”
  • “钩子默认位置”、“命令默认位置”
  • “插件可选字段”、“必需与可选”

关键原则: 在标记缺失清单字段之前,查询 docs-management 以验证组件是否从默认位置使用自动发现。当组件存在于其默认路径时,许多清单字段是可选的。

插件清单 (plugin.json)

  • 名称字段(必需)
  • 描述字段
  • 版本字段(语义版本控制)
  • 作者对象
  • 额外元数据字段

插件组件类型

  • 代理(agents/ 中的 markdown 文件)
  • 技能(skills/ 中的 SKILL.md 文件)
  • 钩子(hooks.json 配置)
  • MCP 服务器(.mcp.json 配置)

插件安装命令

  • /plugin(交互菜单)
  • /plugin install plugin-name@marketplace
  • /plugin uninstall plugin-name@marketplace
  • /plugin enable plugin-name@marketplace
  • /plugin disable plugin-name@marketplace
  • /plugin marketplace add

市场配置

  • marketplace.json 结构
  • 名称和所有者字段
  • 插件数组包含来源引用
  • 本地与远程市场来源
  • Git 仓库市场

团队插件工作流

  • 仓库级别配置(.claude/settings.json)
  • 信任时自动安装
  • 团队范围内插件一致性
  • 推出最佳实践

开发工作流

  • 本地市场设置
  • 开发目录结构
  • 插件迭代周期(卸载/重新安装)
  • 单独测试组件

调试技术

  • 结构验证
  • 组件隔离测试
  • 验证工具
  • 常见问题解决

分发策略

  • README 文档
  • 语义版本控制
  • 市场提交
  • 团队发布前测试
  • 市场注册(见下文)

市场注册(关键)

⚠️ 始终在 marketplace.json 中注册新插件 - 插件在注册前不可发现。

创建新插件时,必须:

  1. 创建插件结构(.claude-plugin/plugin.json,组件)
  2. marketplace.json 中以正确入口格式注册插件
  3. 通过检查 /plugin 命令是否列出新插件来验证注册

查询 docs-management 以获取当前 marketplace.json 模式:

  • 关键词:“marketplace.json”、“市场插件数组”、“插件入口模式”
  • 这确保你使用当前格式(模式可能演变)

常见疏忽: 创建插件但忘记将其添加到 marketplace.json - 插件将存在但对用户不可见。

组件在 plugin.json 中的注册(关键)

⚠️ 添加新代理、命令或技能时,始终检查 plugin.json - 清单可能使用显式数组而不是目录自动发现。

两种注册模式:

模式 plugin.json 语法 行为
目录(自动发现) "agents": "./agents" 目录中所有 .md 文件自动加载
显式数组 "agents": ["./agents/foo.md", "./agents/bar.md"] 仅列出的文件被加载 - 新文件被忽略

何时手动注册:

  1. 检查 plugin.json 以查找你添加的组件类型
  2. 如果是 显式数组 → 将新文件添加到数组
  3. 如果是 目录路径 → 无需操作(自动发现)

常见疏忽: 创建新代理文件但忘记将其添加到 plugin.json 中的 agents 数组 - 文件将存在但代理不会加载(静默失败,无错误消息)。

示例(显式数组):

{
  "agents": [
    "./agents/existing-agent.md",
    "./agents/new-agent.md"  // <-- 添加此行
  ]
}

为何重要: Claude Code v2.1.x 在代理未注册时不提供错误消息 - 它们根本不出现在可用代理列表中。

插件数据位置(两位置架构)

文档验证: 查询 docs-management: "插件缓存插件存储位置" 以获取当前 Claude Code 插件数据位置。以下路径在编写时准确但可能在发布之间变化。

重要: 插件数据存储在两个位置。两者都必须清除以进行完整重置:

位置 包含 清除方式
~/.claude/plugins/ 插件缓存、注册表、市场缓存 /clear-plugin-cache(部分)、/user-config:reset-plugins(完整)
~/.claude/settings.jsonenabledPlugins 插件启用/禁用状态 /user-config:reset-plugins

常见混淆: /clear-plugin-cache 仅清除缓存目录,保留注册表。如果在清除缓存后看到“市场未找到插件”错误,settings.json 中的 enabledPlugins 仍引用旧插件。

解决方案: 使用 /user-config:reset-plugins 进行完整插件重置。

设置集成

  • enabledPlugins 配置
  • extraKnownMarketplaces 配置
  • settings.json 中的插件相关设置

插件钩子配置(仓库特定)

插件钩子在插件启用时自动合并。与本地钩子(.claude/hooks/)不同,插件钩子使用 环境变量 进行消费者控制:

环境变量约定:

变量 目的
CLAUDE_HOOK_{NAME}_ENABLED 1/true(启用),0/false(禁用) 启用/禁用钩子
CLAUDE_HOOK_ENFORCEMENT_{NAME} blockwarnlog 控制强制执行行为
CLAUDE_HOOK_LOG_LEVEL debuginfowarnerror 日志详细程度

通过 settings.json 进行消费者配置:

{
  "env": {
    "CLAUDE_HOOK_MARKDOWN_LINT_ENABLED": "1",
    "CLAUDE_HOOK_ENFORCEMENT_SECRET_SCAN": "warn"
  }
}

对于插件作者: 参见 插件钩子实用程序参考 对于插件消费者: 参见 消费者配置参考

委托模式

标准查询模式

用户问:"如何创建插件?"

1. 调用 docs-management 技能
2. 使用关键词:"插件快速入门"、"创建插件"
3. 加载官方文档
4. 完全基于官方文档提供指导

多主题查询模式

用户问:"我想创建一个带有命令、钩子和 MCP 服务器的插件"

1. 使用多个查询调用 docs-management 技能:
   - "插件结构"、"plugin.json"
   - "插件命令"、"命令目录插件"
   - "插件钩子"、"hooks.json 插件"
   - "MCP 服务器插件"、".mcp.json 插件"
2. 从官方文档中合成指导

故障排除模式

用户报告:"我的插件命令没有显示"

1. 调用 docs-management 技能
2. 使用关键词:"调试插件问题"、"验证插件安装"
3. 检查官方文档中的插件结构要求
4. 基于官方文档指导用户进行调试

故障排除快速参考

问题 docs-management 的关键词
插件未安装 “/plugin 命令”、“插件安装”
命令未出现 “插件命令”、“验证插件安装”
代理不可用 “插件代理”、“代理目录插件”
钩子未触发 “插件钩子”、“hooks.json 插件”
市场未找到 “市场添加”、“插件市场”
团队插件不同步 “团队插件工作流”、“自动插件安装”
插件结构无效 “插件结构”、“调试插件问题”
MCP 服务器未启动 “MCP 服务器插件”、“CLAUDE_PLUGIN_ROOT”
自定义路径未加载 “组件路径字段”、“路径行为规则”
插件验证错误 “claude plugin validate”、“插件验证”
钩子未运行 检查 settings.json 中的 CLAUDE_HOOK_{NAME}_ENABLED 环境变量
钩子强制执行错误 检查 settings.json 中的 CLAUDE_HOOK_ENFORCEMENT_{NAME} 环境变量
“钩子:必须以 .json 结尾” 钩子字段必须是文件路径(例如,“./hooks.json”),而不是目录
“名称已保留” 错误 参见 保留市场名称参考
插件未显示在 /plugin 中 检查是否在 marketplace.json 中注册 - 参见 市场注册
清除缓存后插件错误 插件数据在两个位置:~/.claude/plugins/~/.claude/settings.json 中的 enabledPlugins - 使用 /user-config:reset-plugins 进行完整重置

仓库特定说明

此仓库当前未使用插件。插件文档相关于:

  • 理解插件如何扩展 Claude Code 功能
  • 此仓库未来可能的插件开发
  • 理解基于插件的命令、代理、技能和钩子分发

处理插件主题时,始终使用 docs-management 技能访问官方文档。

保留市场名称

参见 保留市场名称参考 以了解:

  • 已知导致“名称已保留”错误的保留名称
  • 遇到此错误时如何修复 marketplace.json
  • 现有安装的迁移指南

审核插件

此技能提供 plugin-component-auditor 代理进行正式审核时使用的验证标准。

审核资源

资源 位置 目的
审核框架 references/audit-framework.md 查询指南和评分标准

评分类别

类别 分数 关键标准
清单结构 25 有效的 plugin.json,必需字段
组件组织 25 所有组件的适当目录
命名空间合规 20 一致的命名,无冲突
文档 15 README,描述,示例
分发准备 15 版本,市场要求

阈值: 85+ = 通过,70-84 = 通过但有警告,<70 = 失败

相关代理

plugin-component-auditor 代理(Haiku 模型)使用此技能执行正式审核:

  • 通过 skills: plugin-development 自动加载此技能
  • 使用审核框架和 docs-management 获取规则
  • 生成结构化审核报告
  • /audit-plugins 命令调用

外部技术验证

审核使用外部技术(脚本、包、运行时)的插件时,审核员必须使用 MCP 服务器验证声明,然后再标记发现。

需要 MCP 验证的技术:

  • .NET/C# 脚本:使用 microsoft-learn + perplexity 验证
  • Node.js/npm 包:使用 context7 + perplexity 验证
  • Python 脚本/包:使用 context7 + perplexity 验证
  • Shell 脚本:使用 perplexity 验证
  • 任何版本特定声明:始终使用 perplexity 验证

验证规则:

在未首先执行以下操作的情况下,切勿将技术使用标记为不正确:

  1. 查询适当的 MCP 服务器(s) 以获取当前文档
  2. 使用 perplexity 验证最近变化(尤其是 .NET 10+)
  3. 在发现中记录 MCP 来源

过时数据警告:

  • microsoft-learn 可能返回缓存/过时文档
  • 始终将 microsoft-learn 与 perplexity 配对以进行版本验证
  • 信任 perplexity 获取版本号和最近发布的功能

参考

官方文档(通过 docs-management 技能):

  • 主要:“插件”、“插件参考”、“插件市场” 文档
  • 相关:“技能”、“子代理”、“钩子”、“mcp”、“设置”

仓库特定:

版本历史

  • v1.3.3 (2026-01-10):添加了组件注册文档
    • 添加“组件在 plugin.json 中的注册(关键)”部分
    • 记录显式数组与目录自动发现模式
    • 添加了缺失代理注册的检测和修复指导
    • 从子代理开发技能交叉引用
  • v1.3.2 (2025-12-30):添加了插件重置文档
    • 添加“插件数据位置(两位置架构)”部分
    • 添加了完整插件重置的快速决策树条目(条目 18)
    • 添加了清除缓存后插件错误的故障排除条目
    • 记录了两位置架构和 /user-config:reset-plugins 命令
  • v1.3.1 (2025-12-26):添加了市场注册提醒
    • 在主题覆盖中添加了“市场注册(关键)”部分
    • 在快速决策树中添加了市场注册(条目 15)
    • 在分发关键词注册表中添加了“市场注册”
    • 添加了“插件未显示在 /plugin 中”的故障排除条目
    • 更新了“何时使用此技能”以包括市场注册
    • 强调查询 docs-management 以获取当前 marketplace.json 模式
  • v1.3.0 (2025-12-25):扩展了组件发现的 docs-management 委托
    • 添加了“组件自动发现与默认位置”部分,包含查询关键词
    • 扩展了关键词注册表,包括自动发现、默认路径、可选字段、路径格式
    • 添加了“钩子:必须以 .json 结尾”错误的故障排除条目
    • 增强了 audit-framework.md,扩展了文档查询指南
    • 添加了“验证协议”部分,强制文档优先验证
    • 所有组件验证现在需要在标记问题之前进行 docs-management 验证
  • v1.2.1 (2025-12-16):保留市场名称文档
    • 添加了“保留市场名称(未记录)”部分,记录运行时验证
    • 添加了“名称已保留”错误的故障排除条目
    • 添加了保留名称主题的关键词条目
    • 记录 claude-code-plugins 名称对 anthropics 组织保留
  • v1.2.0 (2025-12-01):环境变量标准化
    • 更新为 CLAUDE_HOOK_{NAME}_ENABLED 模式(从已弃用的 CLAUDE_HOOK_DISABLED_*
    • 更新了所有文档、示例和参考到新模式
    • 更新了 plugin-hook-utilities.md,包含支持默认值的新的 is_hook_enabled() 函数
    • 更新了 plugin-hook-consumer-config.md,包含新的配置示例
    • 更新了故障排除条目以新模式
  • v1.1.0 (2025-11-30):插件钩子配置文档
    • 在关键词注册表中添加了插件钩子配置部分
    • 添加了钩子配置模式的主题覆盖(环境变量,强制执行模式)
    • 添加了决策树路径:使钩子可配置,禁用插件钩子
    • 添加了钩子配置问题的故障排除条目
    • 创建了参考目录,包含 plugin-hook-utilities.mdplugin-hook-consumer-config.md
  • v1.0.1 (2025-11-27):次要增强
    • 添加了关键词:CLAUDE_PLUGIN_ROOT、claude --debug、claude plugin validate、市场模式字段、路径行为规则
    • 扩展了决策树:+2 路径(验证插件结构,调试插件加载)
    • 扩展了故障排除:+3 条目(MCP 服务器,自定义路径,验证错误)
  • v1.0.0 (2025-11-26):初始发布
    • 纯委托架构
    • 全面的关键词注册表
    • 快速决策树
    • 所有插件功能的主题覆盖
    • 故障排除快速参考

最后更新

日期: 2026-01-10 模型: claude-opus-4-5-20251101