发布文档Skill release-docs

发布文档技能是一个自动化工具,用于构建和更新插件文档站点,确保文档内容始终与最新的插件组件保持一致。它支持清点组件、更新HTML页面、验证元数据,并提供了干运行模式以预览更改。关键词:文档自动化,插件开发,文档生成,SEO优化,持续集成。

DevOps 0 次安装 0 次浏览 更新于 3/9/2026

名称: release-docs 描述: 构建和更新文档站点,以反映当前插件组件

参数

[可选: --dry-run 以预览更改而不写入]

发布文档命令

您是一个文档生成器,用于 compound-engineering 插件。您的工作是确保位于 plugins/compound-engineering/docs/ 的文档站点始终与实际的插件组件保持最新。

概述

文档站点是一个基于 Evil Martians LaunchKit 模板的静态 HTML/CSS/JS 站点。需要在以下情况下重新生成:

  • 代理被添加、删除或修改时
  • 命令被添加、删除或修改时
  • 技能被添加、删除或修改时
  • MCP 服务器被添加、删除或修改时

步骤 1: 清点当前组件

首先,计数并列出所有当前组件:

# 计数代理
ls plugins/compound-engineering/agents/*.md | wc -l

# 计数命令
ls plugins/compound-engineering/commands/*.md | wc -l

# 计数技能
ls -d plugins/compound-engineering/skills/*/ 2>/dev/null | wc -l

# 计数 MCP 服务器
ls -d plugins/compound-engineering/mcp-servers/*/ 2>/dev/null | wc -l

读取所有组件文件以获取其元数据:

代理

对于每个代理文件在 plugins/compound-engineering/agents/*.md 中:

  • 提取前置内容(名称、描述)
  • 注意类别(Review, Research, Workflow, Design, Docs)
  • 从内容中获取关键职责

命令

对于每个命令文件在 plugins/compound-engineering/commands/*.md 中:

  • 提取前置内容(名称、描述、argument-hint)
  • 分类为 Workflow 或 Utility 命令

技能

对于每个技能目录在 plugins/compound-engineering/skills/*/ 中:

  • 读取 SKILL.md 文件的前置内容(名称、描述)
  • 注意任何脚本或支持文件

MCP 服务器

对于每个 MCP 服务器在 plugins/compound-engineering/mcp-servers/*/ 中:

  • 读取配置和 README
  • 列出提供的工具

步骤 2: 更新文档页面

2a. 更新 docs/index.html

使用准确的计数更新统计部分:

<div class="stats-grid">
  <div class="stat-card">
    <span class="stat-number">[AGENT_COUNT]</span>
    <span class="stat-label">Specialized Agents</span>
  </div>
  <!-- 更新所有统计卡片 -->
</div>

确保组件摘要部分准确列出关键组件。

2b. 更新 docs/pages/agents.html

重新生成完整的代理参考页面:

  • 按类别分组代理(Review, Research, Workflow, Design, Docs)
  • 为每个代理包括:
    • 名称和描述
    • 关键职责(项目列表)
    • 使用示例:claude agent [agent-name] "your message"
    • 使用案例

2c. 更新 docs/pages/commands.html

重新生成完整的命令参考页面:

  • 按类型分组命令(Workflow, Utility)
  • 为每个命令包括:
    • 名称和描述
    • 参数(如果有)
    • 过程/工作流步骤
    • 使用示例

2d. 更新 docs/pages/skills.html

重新生成完整的技能参考页面:

  • 按类别分组技能(Development Tools, Content & Workflow, Image Generation)
  • 为每个技能包括:
    • 名称和描述
    • 使用:claude skill [skill-name]
    • 功能和能力

2e. 更新 docs/pages/mcp-servers.html

重新生成 MCP 服务器参考页面:

  • 对于每个服务器:
    • 名称和目的
    • 提供的工具
    • 配置详情
    • 支持的框架/服务

步骤 3: 更新元数据文件

确保计数在以下文件中一致:

  1. plugins/compound-engineering/.claude-plugin/plugin.json

    • 使用正确的计数更新 description
    • 使用计数更新 components 对象
    • 使用当前项更新 agents, commands 数组
  2. .claude-plugin/marketplace.json

    • 使用正确的计数更新插件 description
  3. plugins/compound-engineering/README.md

    • 使用计数更新介绍段落
    • 更新组件列表

步骤 4: 验证

运行验证检查:

# 验证 JSON 文件
cat .claude-plugin/marketplace.json | jq .
cat plugins/compound-engineering/.claude-plugin/plugin.json | jq .

# 验证计数匹配
echo "文件中的代理: $(ls plugins/compound-engineering/agents/*.md | wc -l)"
grep -o "[0-9]* specialized agents" plugins/compound-engineering/docs/index.html

echo "文件中的命令: $(ls plugins/compound-engineering/commands/*.md | wc -l)"
grep -o "[0-9]* slash commands" plugins/compound-engineering/docs/index.html

步骤 5: 报告更改

提供更新摘要:

## 文档发布摘要

### 组件计数
- 代理: X (之前 Y)
- 命令: X (之前 Y)
- 技能: X (之前 Y)
- MCP 服务器: X (之前 Y)

### 更新的文件
- docs/index.html - 更新统计和组件摘要
- docs/pages/agents.html - 重新生成,包含 X 个代理
- docs/pages/commands.html - 重新生成,包含 X 个命令
- docs/pages/skills.html - 重新生成,包含 X 个技能
- docs/pages/mcp-servers.html - 重新生成,包含 X 个服务器
- plugin.json - 更新计数和组件列表
- marketplace.json - 更新描述
- README.md - 更新组件列表

### 添加的新组件
- [列出任何新的代理/命令/技能]

### 移除的组件
- [列出任何移除的代理/命令/技能]

干运行模式

如果指定 --dry-run

  • 执行所有清点和验证步骤
  • 报告将会更新的内容
  • 不写入任何文件
  • 显示建议更改的差异预览

错误处理

  • 如果组件文件有无效的前置内容,报告错误并跳过
  • 如果 JSON 验证失败,报告并中止
  • 始终维护有效状态 - 不要部分更新

发布后

成功发布后:

  1. 建议使用文档更改更新 CHANGELOG.md
  2. 提醒提交消息:docs: Update documentation site to match plugin components
  3. 提醒推送更改

使用示例

# 完整文档发布
claude /release-docs

# 预览更改而不写入
claude /release-docs --dry-run

# 添加新代理后
claude /release-docs