plugin-forge

plugin-forge

热门

创建和管理Claude Code插件,确保正确的结构、清单和市场集成。在创建市场插件、添加插件组件(命令、代理、钩子)、升级插件版本或处理plugin.json/marketplace.json清单时使用。

2215Star
213Fork
更新于 2026/3/5
SKILL.md
只读
名称
plugin-forge
描述

创建和管理Claude Code插件,确保正确的结构、清单和市场集成。在创建市场插件、添加插件组件(命令、代理、钩子)、升级插件版本或处理plugin.json/marketplace.json清单时使用。

CC Plugin Forge

目的

构建和管理Claude Code插件,确保正确的结构、清单和市场集成。包含工作流、自动化脚本和参考文档。

使用场景

  • 为市场创建新插件
  • 添加/修改插件组件(命令、技能、代理、钩子)
  • 更新插件版本
  • 处理插件或市场清单
  • 设置本地插件测试
  • 发布插件

快速开始

创建新插件

使用 create_plugin.py 生成插件结构:

python scripts/create_plugin.py plugin-name \
  --marketplace-root /path/to/marketplace \
  --author-name "Your Name" \
  --author-email "your.email@example.com" \
  --description "Plugin description" \
  --keywords "keyword1,keyword2" \
  --category "productivity"

此命令自动:

  • 创建插件目录结构
  • 生成 plugin.json 清单
  • 创建 README 模板
  • 更新 marketplace.json

升级版本

使用 bump_version.py 更新两个清单中的版本:

python scripts/bump_version.py plugin-name major|minor|patch \
  --marketplace-root /path/to/marketplace

语义化版本:

  • major:破坏性变更(1.0.0 → 2.0.0)
  • minor:新功能、重构(1.0.0 → 1.1.0)
  • patch:Bug修复、文档(1.0.0 → 1.0.1)

开发工作流

1. 创建结构

手动方式(如果不使用脚本):

mkdir -p plugins/plugin-name/.claude-plugin
mkdir -p plugins/plugin-name/commands
mkdir -p plugins/plugin-name/skills

2. 插件清单

文件:plugins/plugin-name/.claude-plugin/plugin.json

{
  "name": "plugin-name",
  "version": "0.1.0",
  "description": "Plugin description",
  "author": {
    "name": "Your Name",
    "email": "your.email@example.com"
  },
  "keywords": ["keyword1", "keyword2"]
}

3. 注册到市场

更新 .claude-plugin/marketplace.json

{
  "name": "plugin-name",
  "source": "./plugins/plugin-name",
  "description": "Plugin description",
  "version": "0.1.0",
  "keywords": ["keyword1", "keyword2"],
  "category": "productivity"
}

4. 添加组件

在相应目录中创建:

组件 位置 格式
命令 commands/ 带前置元数据的Markdown
技能 skills/<name>/ 包含 SKILL.md 的目录
代理 agents/ Markdown定义
钩子 hooks/hooks.json 事件处理器
MCP服务器 .mcp.json 外部集成

5. 本地测试

# 添加市场
/plugin marketplace add /path/to/marketplace-root

# 安装插件
/plugin install plugin-name@marketplace-name

# 修改后:重新安装
/plugin uninstall plugin-name@marketplace-name
/plugin install plugin-name@marketplace-name

插件模式

框架插件

用于特定框架的指导(React、Vue等):

plugins/framework-name/
├── .claude-plugin/plugin.json
├── skills/
│   └── framework-name/
│       ├── SKILL.md
│       └── references/
├── commands/
│   └── prime/
│       ├── components.md
│       └── framework.md
└── README.md

工具插件

用于工具和命令:

plugins/utility-name/
├── .claude-plugin/plugin.json
├── commands/
│   ├── action1.md
│   └── action2.md
└── README.md

领域插件

用于特定领域知识:

plugins/domain-name/
├── .claude-plugin/plugin.json
├── skills/
│   └── domain-name/
│       ├── SKILL.md
│       ├── references/
│       └── scripts/
└── README.md

命令命名

基于子目录的命名空间,使用 : 分隔符:

  • commands/namespace/command.md/namespace:command
  • commands/simple.md/simple

示例:

  • commands/prime/vue.md/prime:vue
  • commands/docs/generate.md/docs:generate

版本管理

重要: 在两个位置都更新版本:

  1. plugins/<name>/.claude-plugin/plugin.json
  2. .claude-plugin/marketplace.json

使用 bump_version.py 自动化。

Git提交

使用约定式提交:

git commit -m "feat: add new plugin"
git commit -m "fix: correct plugin manifest"
git commit -m "docs: update plugin README"
git commit -m "feat!: breaking change"

参考文档

包含详细文档:

参考 内容
references/plugin-structure.md 目录结构、清单模式、组件
references/marketplace-schema.md 市场格式、插件条目、分发
references/workflows.md 逐步工作流、模式、发布

脚本

脚本 用途
scripts/create_plugin.py 脚手架新插件
scripts/bump_version.py 更新版本