教程

Claude Code Plugin 开发指南:创建可共享的扩展包

Claude Code Plugin 开发指南:插件将技能、Subagent、Hooks 和 MCP 服务器打包成可分享的扩展。本文涵盖独立配置 vs 插件的选择标准、四步创建第一个插件(清单/技能/测试)、完整目录结构、代码审查插件实战、发布到 npm/GitHub 的方法,以及插件开发最佳实践。

2026/2/275分钟 阅读ClaudeEagle

Plugin(插件)让你能够将自定义技能(Skills)、子 Agent、Hooks 和 MCP 服务器打包成可分享的扩展,供团队或社区使用。本文介绍如何从零开始创建 Claude Code 插件。

独立配置 vs 插件:如何选择?

方式技能命名格式适用场景
独立配置.claude/ 目录)/hello个人工作流、单项目定制、快速实验
插件.claude-plugin/plugin.json/plugin-name:hello团队共享、社区分发、版本管理、跨项目复用

使用独立配置

  • 为单个项目定制 Claude Code
  • 个人使用,无需共享
  • 在打包前快速实验新技能
  • 想要简短的技能名称

使用插件

  • 与团队或社区共享功能
  • 在多个项目中使用相同的技能/Agent
  • 需要版本控制和便捷更新
  • 通过市场分发

建议先用独立配置快速迭代,满意后再转换为插件分发。

快速上手:创建第一个插件

前置条件

  • Claude Code 已安装并认证
  • Claude Code 版本 1.0.33 或更高(运行 claude --version 检查)

Step 1:创建插件目录

bash
mkdir my-first-plugin

Step 2:创建插件清单

插件清单(.claude-plugin/plugin.json)定义插件的身份:

bash
mkdir my-first-plugin/.claude-plugin

创建 my-first-plugin/.claude-plugin/plugin.json

json
{
  "name": "my-first-plugin",
  "description": "一个学习基础知识的问候插件",
  "version": "1.0.0",
  "author": {
    "name": "你的名字"
  }
}
字段用途
name唯一标识符和技能命名空间(技能会带此前缀,如 /my-first-plugin:hello
description在插件管理器中显示
version使用语义化版本控制
author可选,用于署名

Step 3:添加技能

技能存放在 skills/ 目录中,每个技能是包含 SKILL.md 的文件夹:

bash
mkdir -p my-first-plugin/skills/hello

创建 my-first-plugin/skills/hello/SKILL.md

markdown
---
name: hello
description: 用友好的消息问候用户
---

用热情的方式问候用户,并询问今天如何帮助他们。

Step 4:本地测试

bash
# 使用 --plugin-dir 标志加载插件
claude --plugin-dir ./my-first-plugin

在 Claude Code 中测试:

text
/my-first-plugin:hello

插件目录结构

完整的插件结构示例:

text
my-plugin/
├── .claude-plugin/
│   └── plugin.json          # 插件清单(必需)
├── skills/
│   ├── code-review/
│   │   ├── SKILL.md          # 代码审查技能
│   │   └── checklist.md     # 辅助文件
│   └── doc-gen/
│       └── SKILL.md          # 文档生成技能
├── agents/
│   └── security-agent.md    # 安全审查 Agent
├── hooks/
│   └── settings.json        # Hook 配置
└── README.md

创建完整功能的代码审查插件

插件清单

json
{
  "name": "code-quality",
  "description": "代码质量工具套件:审查、安全检查和文档生成",
  "version": "1.0.0",
  "author": {
    "name": "Your Company",
    "email": "dev@yourcompany.com"
  },
  "homepage": "https://github.com/yourcompany/claude-code-quality",
  "license": "MIT"
}

代码审查技能

markdown
---
name: review
description: 对代码进行全面的质量审查,包括可读性、性能和安全性
---

审查提供的代码,检查以下方面:

1. **代码可读性**
   - 变量和函数命名是否清晰?
   - 是否需要添加注释?
   - 是否遵循项目编码规范?

2. **性能问题**
   - 是否有 N+1 查询问题?
   - 是否有不必要的计算或内存分配?

3. **安全风险**
   - 输入验证是否充分?
   - 是否有 SQL 注入、XSS 等常见漏洞?

4. **测试覆盖**
   - 关键逻辑是否有测试?
   - 边界条件是否覆盖?

对每个问题提供:当前代码、问题说明和改进建议。

自动提交检查 Hook

json
{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Bash(git commit *)",
        "hooks": [
          {
            "type": "command",
            "command": "hooks/pre-commit-check.sh"
          }
        ]
      }
    ]
  }
}

安装插件

从本地路径安装

bash
# 使用 --plugin-dir 临时加载
claude --plugin-dir /path/to/my-plugin

# 或使用插件安装命令永久安装
/plugin install /path/to/my-plugin

从 Git 仓库安装

bash
/plugin install https://github.com/yourcompany/claude-code-quality

从插件市场安装

bash
# 搜索插件
/plugin search code-review

# 安装插件
/plugin install code-quality

发布插件

准备发布

  1. 编写清晰的 README.md 说明
  2. 更新 plugin.json 版本号(语义化版本)
  3. 添加 CHANGELOG.md 记录变更
  4. 编写 LICENSE 文件

发布到 npm(推荐)

bash
# 发布前确保 plugin.json 的 name 与 npm 包名匹配
npm publish

# 用户可通过 npm 安装
npx -y your-plugin-name

发布到 GitHub

bash
# 创建 Release
git tag v1.0.0
git push origin v1.0.0

# 用户通过 Git URL 安装
/plugin install https://github.com/yourname/your-plugin

最佳实践

  1. 技能描述要精确:Claude 根据 description 决定何时使用技能
  2. 版本控制:遵循语义化版本,破坏性变更升主版本号
  3. 文档完整:README 包含安装说明、配置选项和使用示例
  4. 测试充分:发布前在多个项目中测试
  5. 安全审查:插件 Hook 和 MCP 服务器的代码要经过安全审查

总结

Claude Code 插件系统提供了强大的扩展和共享机制。从简单的技能集合到包含 Hook、Agent 和 MCP 的完整工作流套件,插件让团队能够将最佳实践封装并复用。从独立配置开始,验证价值后再转换为插件分发。


来源Claude Code 官方文档 - Create Plugins 原文作者:Anthropic Team

相关文章推荐

教程Claude Code 企业进程审计实战:corporate launcher 与 processWrapper 配置指南详解 Claude Code 新增的 corporate launcher 企业启动器支持,通过 processWrapper 配置项统一审计和管控所有子进程,适合有严格 IT 合规要求的企业部署场景。2026/8/10教程Claude Code /fork 与 /subtask 命令实战:后台会话与临时子任务怎么选Claude Code Week 29 更新将 /fork 拆分为 /fork(后台独立会话)和 /subtask(会话内临时子任务),详解两者的区别、适用场景和升级注意事项。2026/8/10教程Claude Code Archive 插件源实战教程:不用 Git 和 npm,用一个 zip 就能装插件Claude Code v2.1.224 新增 archive 插件来源类型,详解如何用 HTTPS 托管的 zip 压缩包分发和安装插件,完全跳过 Git/npm,配合 SHA-256 哈希锁定保证完整性。2026/8/10教程Claude Code v2.1.221 深度解读:VS Code Focus View 与沙箱凭据脱敏新玩法Claude Code v2.1.221 新增 VS Code Focus View 折叠工具活动噪音,以及沙箱凭据文件 mask 脱敏模式,详解设计原理与多项 Shell 权限检查修复。2026/8/7教程Claude Code 屏幕阅读器模式完全教程:让 VoiceOver 和 NVDA 用户流畅使用命令行 AIClaude Code 屏幕阅读器模式完全指南:三种开启方式、确认提示时序、表格朗读优化等细节,帮助视障用户顺畅使用命令行 AI 工具。2026/8/6教程Claude Code Artifacts 实战教程:让会话产出变成可分享的实时页面详解 Claude Code Artifacts 功能的创建、更新与分享流程,以及最新的 MCP 连接器实时数据拉取能力,教你把会话输出变成可交互网页。2026/8/6