教程

Claude Code Plugins 开发完整指南:从创建 Manifest 到发布到官方市场

Claude Code Plugin 开发完整指南:从创建 plugin.json 清单、添加 Skills/Subagent/Hooks/MCP/LSP 服务器,到本地测试、团队分发和提交到 Anthropic 官方市场。附安全审查 Plugin 完整示例和现有配置迁移步骤。

2026/2/284分钟 阅读ClaudeEagle

Claude Code Plugins 是打包和分发 Claude Code 扩展的标准方式。一个 Plugin 可以包含自定义 Skills、Subagent、Hooks、MCP 服务器和 LSP 服务器,方便团队共享和社区发布。

快速创建第一个 Plugin

前置要求

  • Claude Code 已安装并认证
  • Claude Code 版本 1.0.33+(claude --version 确认)

目录结构

my-first-plugin/ ├── .claude-plugin/ │ └── plugin.json ← Plugin 清单(必须) ├── commands/ ← 自定义斜杠命令(Skills as Markdown) ├── agents/ ← 自定义 Subagent 定义 ├── skills/ ← Agent Skills(SKILL.md 文件) ├── hooks/ ← 事件处理器(hooks.json) ├── .mcp.json ← MCP 服务器配置 ├── .lsp.json ← LSP 服务器配置 ├── settings.json ← 插件启用时的默认设置 └── README.md ← 文档

Step 1:创建 Plugin 清单

bash
mkdir my-first-plugin
mkdir my-first-plugin/.claude-plugin
json
// my-first-plugin/.claude-plugin/plugin.json
{
  "name": "my-first-plugin",
  "description": "一个入门示例 Plugin",
  "version": "1.0.0",
  "author": {
    "name": "你的名字"
  }
}
字段说明
name唯一标识符,Skills 以此为前缀(如 /my-first-plugin:hello
description在 Plugin 管理器中展示
version语义化版本号(SemVer)
author可选,用于署名

额外可选字段:homepagerepositorylicense

Step 2:添加 Skills

bash
mkdir -p my-first-plugin/skills/code-review
markdown
---
name: code-review
description: 审查代码的最佳实践和潜在问题。适用于审查代码、检查 PR 或分析代码质量。
---

审查代码时,检查以下方面:
1. 代码组织和结构
2. 错误处理
3. 安全问题
4. 测试覆盖率
5. 可读性和可维护性

对每个问题提供具体的文件和行号引用,以及改进建议。

Step 3:本地测试

bash
# 使用 --plugin-dir 标志本地测试,无需安装
claude --plugin-dir ./my-first-plugin

# 测试 Skills
/my-first-plugin:code-review

# 检查 Subagent
/agents

# 验证 Hooks
# (触发相关操作,查看是否执行)

更复杂的 Plugin 功能

添加 LSP 服务器(代码智能)

为不支持的语言添加 LSP 代码智能:

json
// .lsp.json
{
  "go": {
    "command": "gopls",
    "args": ["serve"],
    "extensionToLanguage": {
      ".go": "go"
    }
  },
  "rust": {
    "command": "rust-analyzer",
    "extensionToLanguage": {
      ".rs": "rust"
    }
  }
}

注意:安装 Plugin 的用户需要自行安装对应的语言服务器二进制文件。

设置默认 Subagent

json
// settings.json
{
  "agent": "security-reviewer"
}

启用 Plugin 时,自动激活 agents/security-reviewer.md 定义的 Subagent 作为默认 Agent,修改 Claude Code 的默认行为。

添加 Hooks

json
// hooks/hooks.json
{
  "PostToolUse": [
    {
      "matcher": "Edit|Write",
      "hooks": [
        {
          "type": "command",
          "command": "./hooks/format-code.sh"
        }
      ]
    }
  ]
}

完整的安全审查 Plugin 示例

security-plugin/ ├── .claude-plugin/ │ └── plugin.json ├── agents/ │ └── security-reviewer.md ├── skills/ │ └── vulnerability-scan/ │ └── SKILL.md ├── hooks/ │ └── hooks.json └── settings.json
json
// .claude-plugin/plugin.json
{
  "name": "security-plugin",
  "description": "专注安全的代码审查和漏洞扫描",
  "version": "1.0.0",
  "homepage": "https://github.com/yourname/security-plugin",
  "license": "MIT"
}
markdown
<!-- agents/security-reviewer.md -->
---
name: security-reviewer
description: 专注安全漏洞的代码审查 Agent
tools: Read, Grep, Glob, Bash
model: opus
---

你是一名高级安全工程师,专门识别代码中的安全漏洞。
审查代码时关注:注入攻击(SQL、XSS、命令注入)、认证和授权缺陷、硬编码凭证、不安全的数据处理。

提供具体的行号引用和修复建议。

将现有配置迁移到 Plugin

如果你已经在 .claude/ 目录中有 Skills 或 Hooks,可以将它们迁移到 Plugin 便于共享:

  1. 创建 Plugin 目录结构
  2. .claude/skills/ 中的内容移到 skills/
  3. .claude/settings.json 中的 Hooks 移到 hooks/hooks.json
  4. 创建 plugin.json 清单
  5. 使用 --plugin-dir 测试

调试 Plugin

常见问题排查

  1. 结构检查:确保目录在 Plugin 根目录,不是在 .claude-plugin/ 内部
  2. 逐一测试:分别测试每个命令、Subagent 和 Hook
  3. 查看日志claude --plugin-dir ./my-plugin 模式下查看详细输出
bash
# 重新加载 Plugin 的更改
# 修改后重启 Claude Code

# 列出已安装的 Plugin
/plugins

# 检查 Plugin 中的 Skills
/skills

发布和分发

团队内部分发

  1. 将 Plugin 目录推送到 Git 仓库
  2. 团队成员使用以下命令安装:
    bash
    /plugin install /path/to/plugin  # 本地路径
    /plugin install https://github.com/yourname/plugin  # Git URL

创建自己的 Plugin 市场

bash
# 管理员创建市场
openclaw plugins create-marketplace --name "MyCompany Plugins"

# 用户发现和安装
/plugin marketplace browse
/plugin marketplace install plugin-name

提交到官方 Anthropic 市场

版本管理建议

使用语义化版本(SemVer):

  • 1.0.01.0.1:Bug 修复
  • 1.0.01.1.0:新功能(向后兼容)
  • 1.0.02.0.0:破坏性变更

原文:Create Claude Code plugins | 来源:Claude Code 官方文档

相关文章推荐

教程Claude Code Skills 自定义命令:打造你的团队专属 AI 工作流Claude Code Skills 自定义命令完整教程:Skills vs CLAUDE.md 使用场景对比、内置 Skills 速览(/batch/simplify/loop)、SKILL.md 文件格式与 Frontmatter 配置、四大实用 Skills 示例(代码审查/部署检查/功能开发/团队 OnBoarding)、传参方式、子代理执行与 Git 团队共享。2026/3/14教程Claude Code 插件开发指南:plugin.json 结构、Skills/Hooks/MCP 集成与官方市场提交Claude Code 插件开发完整指南:独立配置 vs 插件对比(命名空间/适用场景)、5 步快速创建(目录/plugin.json 清单字段/Skill/本地 --plugin-dir 测试/分享)、完整插件目录结构(.claude-plugin/commands/skills/agents/hooks/mcp/.lsp.json/settings.json)、各组件配置示例(Skills SKILL.md/LSP 服务器.lsp.json/默认 settings.json agent 键)、从独立配置迁移步骤对比表、三步调试方法,以及通过 claude.ai 和 Console 提交官方市场的方式。2026/3/8教程Claude Code Skills 完全指南:创建自定义技能、Bundled Skills 与高级模式Claude Code Skills 完全指南:5 个内置 Bundled Skills(/simplify 并行 3 Agent/\batch Git Worktree 并行/\debug 会话日志/\loop 定时执行/\claude-api 自动激活)、3 步创建自定义 Skill(目录/SKILL.md/测试)、存储位置与优先级(Enterprise/Personal/Project/Plugin 命名空间)、Frontmatter 完整配置(name/description/disable-model-invocation/tools)、两种内容类型(参考型内联/任务型手动)、高级模式($ARGUMENTS 字符串替换/支持文件目录/动态注入上下文/子 Agent 执行),以及三种共享方式和故障排查。2026/3/8教程Claude Code 插件市场创建与分发:marketplace.json 完整 Schema、私有仓库与企业限制Claude Code 插件市场创建与分发完整指南:四步创建流程(插件/marketplace.json/Git 托管/分享用户)、快速上手本地市场示例(/review 代码审查技能)、marketplace.json 完整 Schema(必填/Owner/可选元数据/插件条目)、五种插件来源类型(相对路径/GitHub/Git/子目录/npm)、托管分发(GitHub 推荐/私有仓库认证)、版本与发布频道配置(stable/beta/nightly)、企业 Managed 限制(strictKnownMarketplaces 白名单/blockedMarketplaces 黑名单/pluginTrustMessage),以及七大常见故障排查。2026/3/7教程Claude Code Skills 进阶指南:四大内置技能、动态上下文注入、Subagent 运行与参数传递Claude Code Skills 进阶完整指南:四大内置 Skill(/simplify 三 Agent 并行优化/batch 5-30 单元并行大规模变更//debug 会话调试//claude-api 自动加载 API 参考)、目录结构和四级存储位置(优先级规则)、完整 Frontmatter 字段(disable-model-invocation/context/tools.allow/deny)、参考型 vs 任务型内容对比、动态上下文注入($GIT_STATUS/$CURRENT_SCHEMA)、context:fork 在 Subagent 运行、$ARGUMENTS 参数传递。2026/3/6教程Claude Code 插件开发指南:从 plugin.json 到 Skills/Agents/Hooks 打包发布全流程Claude Code Plugin 开发完整指南:独立配置 vs Plugin 选型(短名称 vs 命名空间)、5 分钟创建第一个 Plugin(plugin.json Manifest + SKILL.md)、Plugin 目录结构(skills/agents/hooks/settings/lsp)、LSP 服务器集成、随 Plugin 发布默认 Hooks 设置、--plugin-dir 本地测试、从独立配置迁移(名称变化说明)、Git/npm 发布方式,以及 /plugin install/list/enable/disable/remove 用户命令。2026/3/6