用途
create-plugin 用于从零开始搭建一个新的 Claude Code 插件脚手架。当你希望创建一个通过技能(skills)、命令(commands)和智能体(agents)来扩展 Claude Code 的新插件时使用它。该技能会生成正确的目录结构并接线 MCP 工具。
主要能力
- 从用户处获取插件名称和描述。
- 检查命名冲突:调用 mcp__plugin_ruflo-core_ruflo__transfer_plugin-search 确保名称未被占用。
- 创建目录结构(遵循同级插件 ADR-0001 中的规范插件契约):
plugins/<name>/
├── .claude-plugin/
│ └── plugin.json
├── skills/
│ └── <skill-name>/
│ └── SKILL.md
├── commands/
│ └── <command-name>.md
├── agents/
│ └── <agent-name>.md
├── docs/
│ └── adrs/
│ └── 0001-<name>-contract.md # Plugin-level ADR (Proposed)
├── scripts/
│ └── smoke.sh # Structural contract (≥8 checks)
└── README.md # Compatibility + Namespace coordination + Verification + ADR sections
- 生成 plugin.json,包含 name、description、version、author(不要包含 skills、commands 或 agents 数组——Claude Code 会从目录结构自动发现这些内容)。
- 生成带正确 frontmatter 的 SKILL.md 文件:
---
name: skill-name
description: What this skill does
allowed-tools: mcp__plugin_ruflo-core_ruflo__tool1 mcp__plugin_ruflo-core_ruflo__tool2 Bash
---
- 生成带 name 和 description frontmatter 的命令文件。
- 生成带 name、description 和 model: sonnet 的智能体文件。
- 生成 README.md,包含安装说明、功能、命令、技能,以及规范插件契约章节:
- Compatibility — 固定到 @claude-flow/cli v3.6 major+minor
- Namespace coordination — 声明一个 kebab-case 的 <plugin-stem>-<intent> 命名空间;遵循 ruflo-agentdb ADR-0001 §"Namespace convention"
- Verification — bash plugins/<name>/scripts/smoke.sh
- Architecture Decisions — 链接到 ADR-0001
- 在 docs/adrs/0001-<name>-contract.md 生成 ADR-0001(Proposed),记录:固定版本、命名空间协调、MCP 工具面数量(如适用)、smoke 契约范围。状态:Proposed。
- 生成 scripts/smoke.sh — 至少 8 项结构检查:version + keywords;skills/agents/commands 存在且 frontmatter 有效;README 中的 v3.6 固定;README 中的命名空间协调块;ADR 存在且状态为 Proposed;技能中无通配符工具。
- 如果添加到 ruflo marketplace,则更新 marketplace.json。
使用方式
该技能按步骤执行:先获取插件名称与描述,再检查冲突,随后创建目录结构并生成各类文件(plugin.json、SKILL.md、命令文件、智能体文件、README、ADR、smoke.sh),最后按需更新 marketplace.json。
需要避免的 MCP 工具漂移
根据同级 ADR 的经验教训,若干插件曾带有细微的 MCP 缺陷,不要重复它们:
- embeddings_embed 不存在。真实工具是 embeddings_generate。不要在任何 allowed-tools 行中引用 embeddings_embed。
- agentdb_hierarchical-* 不按 namespace 路由。它按 tier(working|episodic|semantic)路由。传入 tier,而不是 namespace。对于带命名空间的读/写,改用 memory_*。
- agentdb_pattern-* 不按 namespace 路由。它通过 ReasoningBank 路由。不要传入 namespace 参数——回退写入通过 memory-store-fallback 写入保留的 pattern 命名空间。
- pattern(单数)和 patterns(复数)是不同的命名空间。ReasoningBank 回退写入 pattern;hooks_pretrain 写入 patterns。不要混淆它们。
plugin.json 模式
必填字段:
- name — 插件标识符(kebab-case)
- description — 插件做什么
- version — semver
推荐字段:
- author — { "name": "...", "url": "..." }
- homepage、license、keywords
可选字段:
- graph_adapter — ADR-130 图智能契约(生成输出中默认注释掉):
// "graph_adapter": {
// "edgeRelations": ["my-relation-type"],
// "nodeTypes": ["entity"],
// "autoRegister": true
// }
当 autoRegister: true 时,插件的边会自动包含在核心图层写入的 graph_edges 中。声明 edgeRelations——该插件产生的关系类型。
不要在 plugin.json 中包含 skills、commands 或 agents 数组——这些由 Claude Code 从目录结构自动发现,如果存在会导致验证错误。
可接线的 MCP 工具
浏览可用工具:mcp__plugin_ruflo-core_ruflo__transfer_plugin-info
常见工具类别:
- memory_* — 存储、搜索、检索
- agentdb_* — 15 个 controller-bridge 工具(不要传入 namespace 参数——它们按 tier 或 ReasoningBank 路由);运行时调用 agentdb_controllers 获取规范列表
- neural_* — 神经训练与预测
- hooks_* — 生命周期钩子与智能
- browser_* — 浏览器自动化
- workflow_* — 工作流管理
- aidefence_* — 安全扫描
- embeddings_* — 10 个向量嵌入工具(使用 embeddings_generate,而不是不存在的 embeddings_embed)
适用场景
当你需要创建新的 Claude Code 插件、扩展 Claude Code 的技能/命令/智能体能力,或需要遵循规范插件契约(目录结构、ADR、smoke 检查、命名空间协调)来搭建插件时适用。
限制
资料未提供该技能的收费、价格、平台支持范围或具体效果信息。