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-pluginjson
// 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 | 可选,用于署名 |
额外可选字段:homepage、repository、license。
Step 2:添加 Skills
bash
mkdir -p my-first-plugin/skills/code-reviewmarkdown
---
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 便于共享:
- 创建 Plugin 目录结构
- 将
.claude/skills/中的内容移到skills/ - 将
.claude/settings.json中的 Hooks 移到hooks/hooks.json - 创建
plugin.json清单 - 使用
--plugin-dir测试
调试 Plugin
常见问题排查:
- 结构检查:确保目录在 Plugin 根目录,不是在
.claude-plugin/内部 - 逐一测试:分别测试每个命令、Subagent 和 Hook
- 查看日志:
claude --plugin-dir ./my-plugin模式下查看详细输出
bash
# 重新加载 Plugin 的更改
# 修改后重启 Claude Code
# 列出已安装的 Plugin
/plugins
# 检查 Plugin 中的 Skills
/skills发布和分发
团队内部分发
- 将 Plugin 目录推送到 Git 仓库
- 团队成员使用以下命令安装:
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 市场
- Claude.ai:claude.ai/settings/plugins/submit
- Console:platform.claude.com/plugins/submit
版本管理建议
使用语义化版本(SemVer):
1.0.0→1.0.1:Bug 修复1.0.0→1.1.0:新功能(向后兼容)1.0.0→2.0.0:破坏性变更
原文:Create Claude Code plugins | 来源:Claude Code 官方文档