市场发布工作流Skill marketplace-publishing

本技能详细说明了如何将 .NET 相关的技能和 AI 智能体发布到 Claude Code 插件市场的标准化流程。内容涵盖市场发布、版本管理、技能注册、智能体配置、自动化验证和 GitHub 发布流程,适用于 .NET 开发者、技能创作者和插件维护者。关键词:Claude 插件市场,技能发布,智能体配置,.NET 开发,GitHub Actions,版本控制,自动化验证,插件开发。

DevOps 0 次安装 0 次浏览 更新于 2/26/2026

name: marketplace-publishing description: 用于将技能和智能体发布到 dotnet-skills Claude Code 市场的流程。涵盖添加新内容、更新 plugin.json、验证和发布标签。 invocable: true

市场发布工作流

本技能文档说明了如何将技能和智能体发布到 dotnet-skills Claude Code 市场。

仓库结构

dotnet-skills/
├── .claude-plugin/
│   ├── marketplace.json      # 市场目录
│   └── plugin.json           # 插件元数据 + 技能/智能体注册表
├── .github/workflows/
│   └── release.yml           # 发布自动化
├── skills/
│   ├── akka/                 # Akka.NET 技能
│   │   ├── best-practices/SKILL.md
│   │   ├── testing-patterns/SKILL.md
│   │   └── ...
│   ├── aspire/               # .NET Aspire 技能
│   ├── csharp/               # C# 语言技能
│   ├── testing/              # 测试框架技能
│   └── meta/                 # 元技能
├── agents/
│   └── *.md                  # 智能体定义
└── scripts/
    └── validate-marketplace.sh

添加新技能

步骤 1:选择类别

技能按领域组织:

类别 目的
akka/ Akka.NET 参与者模式、测试、集群
aspire/ .NET Aspire 编排、测试、配置
csharp/ C# 语言特性、编码标准
testing/ 测试框架 (xUnit, Playwright, Testcontainers)
meta/ 关于此市场的元技能

如果没有合适的类别,请创建一个新的类别文件夹。

步骤 2:创建技能文件夹

创建一个包含 SKILL.md 的文件夹:

skills/<category>/<skill-name>/SKILL.md

示例:skills/akka/cluster-sharding/SKILL.md

步骤 3:编写 SKILL.md

---
name: my-new-skill
description: 关于此技能功能及使用场景的简要描述。
---

# 我的新技能

## 何时使用此技能

在以下场景中使用此技能:
- [列出具体场景]

---

## 内容

[包含示例、模式和反模式的综合指南]

要求:

  • name 必须为小写并用连字符连接(例如,cluster-sharding
  • description 应为 1-2 句话,解释 Claude 应在何时使用此技能
  • 内容应为 10-40KB,全面涵盖该主题
  • 包含使用现代 C# 模式的具体代码示例

步骤 4:在 plugin.json 中注册

将技能路径添加到 .claude-plugin/plugin.json 中的 skills 数组:

{
  "skills": [
    "./skills/akka/best-practices",
    "./skills/akka/cluster-sharding"  // 在此处添加新技能
  ]
}

步骤 5:验证

运行验证脚本:

./scripts/validate-marketplace.sh

步骤 6:一并提交

git add skills/akka/cluster-sharding/ .claude-plugin/plugin.json
git commit -m "为 Akka.NET 集群分片模式添加 cluster-sharding 技能"

添加新智能体

步骤 1:创建智能体文件

/agents/ 中创建一个 Markdown 文件:

---
name: my-agent-name
description: [领域] 专家。专长于 [特定领域]。适用于 [场景]。
model: sonnet
color: blue
---

您是 [领域] 专家,在 [领域] 方面拥有深厚的专业知识。

**参考资料:**
- [官方文档和资源]

**核心专业领域:**
[列出专业领域]

**诊断方法:**
[智能体如何分析问题]

要求:

  • name 必须为小写并用连字符连接
  • model 必须是以下之一:haiku, sonnet, opus
  • color 是可选的(用于 UI 显示)

步骤 2:在 plugin.json 中注册

添加到 agents 数组:

{
  "agents": [
    "./agents/akka-net-specialist",
    "./agents/my-agent-name"  // 在此处添加新智能体
  ]
}

步骤 3:一并提交

git add agents/my-agent-name.md .claude-plugin/plugin.json
git commit -m "为 [领域] 专业知识添加 my-agent-name 智能体"

发布版本

版本控制

更新 .claude-plugin/plugin.json 中的版本:

{
  "version": "1.1.0"
}

使用语义化版本控制 (主版本.次版本.修订号):

  • 主版本:破坏性变更(重命名/删除技能)
  • 次版本:添加新技能或智能体
  • 修订号:现有内容的修复或改进

发布流程

  1. 在 plugin.json 中更新版本

  2. 验证

    ./scripts/validate-marketplace.sh
    
  3. 提交版本更新

    git add .claude-plugin/plugin.json
    git commit -m "版本更新至 1.1.0"
    
  4. 创建并推送标签

    git tag v1.1.0
    git push origin master --tags
    
  5. GitHub Actions 将自动执行:

    • 验证市场结构
    • 创建带有自动生成说明的 GitHub 发布

用户安装

用户安装完整的插件(所有技能和智能体):

# 添加市场(一次性操作)
/plugin marketplace add Aaronontheweb/dotnet-skills

# 安装插件(获取所有内容)
/plugin install dotnet-skills

# 更新到最新版本
/plugin marketplace update

验证清单

提交前:

  • [ ] SKILL.md 具有包含 namedescription 的有效 YAML 前置元数据
  • [ ] 技能文件夹位于适当的类别下
  • [ ] 路径已添加到 plugin.json 的 skills 数组中
  • [ ] 对于智能体:已指定 model (haiku/sonnet/opus)
  • [ ] ./scripts/validate-marketplace.sh 通过

故障排除

安装后技能未出现

  • 验证 plugin.json 中的路径是否与文件夹结构匹配
  • 检查文件夹中是否存在 SKILL.md
  • 尝试重新安装:/plugin uninstall dotnet-skills && /plugin install dotnet-skills

验证错误

  • 确保 JSON 有效:jq . .claude-plugin/plugin.json
  • 检查数组中是否有尾随逗号
  • 验证所有引用的文件夹是否包含 SKILL.md

未创建发布

  • 确保标签遵循 semver 格式 (v1.0.0)
  • 检查 GitHub Actions 日志中的错误
  • 验证 plugin.json 版本是否与标签匹配