SuperAPI AI 工具集

release-notes

写作与研究

查看项目

更新于 10-29 11:59

技能介绍

用途

该技能为 Docus 的新版本生成完整的 GitHub Release 正文,输出为仓库根目录下的 v<version>.md 文件。使用者编辑该文件后,将内容粘贴到 GitHub Release 中。生成脚本负责机械性工作,撰写者负责需要判断和核实的两部分:Highlights 与 New documentation 列表。

运行时机

pnpm release 会写入 CHANGELOG.md 区块、打标签、推送,并在浏览器中打开预填的 GitHub Release。应在此时运行该技能,用生成的正文替换预填内容。

补丁版本(x.y.z 中 z > 0)没有 Highlights 分区。生成脚本会根据版本号判断这一点,因此补丁版本跳过第 2 步。

使用步骤

1. 生成脚手架

运行以下命令生成脚手架:

node .claude/skills/release-notes/scripts/generate.mjs        # CHANGELOG.md 中最新的版本
node .claude/skills/release-notes/scripts/generate.mjs 5.16.0 # 指定版本

脚本读取 CHANGELOG.md 中对应版本的区块,写出 v<version>.md,其中包含:

  • ## ✨ Highlights 占位(由撰写者填写,仅次要版本与主要版本);
  • 从 changelog 复制而来、带 emoji 标题的 Breaking Changes / Features / Bug Fixes / Performance / Reverts 分区;
  • ## 💚 Contributors:通过一次 gh api graphql 调用获取 PR 作者与提交共同作者,@larbish 排在首位,其余按贡献数量排序;
  • 当 docs/content/en 有变更时,生成 ## 📚 New documentation 占位;
  • Full Changelog 对比链接。

脚本会打印 Highlight 候选(Features、Performance 和 Breaking Changes 的条目)以及新文档候选(新页面与新增的 ##/### 标题)。gh 必须已完成认证(gh auth status)。

2. 撰写 Highlights(仅次要版本与主要版本)

补丁版本跳过此步,即使某个修复值得注意。

挑选 2 到 4 项变更,按影响力从高到低排列。候选可以来自 Performance:次要版本可以没有新功能(v5.15.0 全部是性能工作)。

适合写入 Highlight 的内容:

  • 用户可以开启或配置的新能力(app.config.ts 键、nuxt.config.ts 选项、新组件、插槽或组合式函数);
  • 广泛或横切性的变更(assistant、MCP、llms.txt 与 agents、搜索、SEO、i18n、主题、性能);
  • 解决长期存在或广受欢迎需求的变更。

跳过范围窄的修复、文档修复和内部重构。每个 Highlight 按以下格式撰写:

### 🤖 简短标题

用一两句话说明它做什么、为什么重要,并链接[指南](https://docus.dev/en/ai/assistant#custom-provider)。

```ts [app.config.ts]
// 最小化的真实示例

[!TIP] 可选的提示框,用于说明注意事项或有趣的细节。


规则:

- 写之前先核实。对照已合并的 PR(gh pr view <n> --repo nuxt-content/docus)、docs/content/en/**、layer/index.d.ts(nuxt.config 选项)、layer/app/types/index.d.ts 与 layer/nuxt.schema.ts(app.config)、layer/modules/** 和 layer/app/components/** 核对选项名、默认值与组件。绝不编造 API。
- 语气保持一致:简洁、直接,不用长破折号,读起来像 Baptiste 写的。可参考最近几次发布:先运行 gh release list --repo nuxt-content/docus --limit 5,再运行 gh release view <tag> --repo nuxt-content/docus。
- 描述实际发布的内容,而不是它带来的可能性。标题必须与真实变更相符。不要把一个小选项夸大成大功能(例如 markdown 协商上的 vary 头属于缓存修复,不是“agent-ready docs”)。
- 不确定时,宁可少写几条准确的 Highlight,也不要写满四条。

Emoji 用法:🤖 assistant/MCP/agents,🏎️ 性能,🔍 搜索/SEO,🎨 主题/自定义,🌐 i18n,🧩 组件,♿ 无障碍。

### 3. 破坏性变更与升级说明

如果存在 ⚠️ Breaking Changes 分区,或某个功能/修复要求用户升级时修改项目(查看 PR 描述确认),在相关分区下方添加提示框,写明迁移步骤和文档链接:

```markdown
> [!WARNING]
> 变更了什么、需要做什么,以及[文档链接](https://docus.dev/en/...)。

4. 填写 New documentation(有候选的发布)

只保留记录本次发布新内容的页面和章节。删掉被重命名、移动或改写的标题。逐个核对锚点与页面上的标题是否一致。以裸 URL 列表形式列出,每条一个:

## 📚 New documentation

* https://docus.dev/en/ai/assistant#custom-provider

如果没有符合条件的条目,删除整个分区。

5. 检查并汇报

  • 确认贡献者名单正确。邮箱未关联 GitHub 账号的共同作者会被漏掉,可运行:git log <prev>..<tag> --pretty=%b | grep -i co-authored-by。
  • 删除遗留的 <!-- TODO --> 注释。
  • 告知用户文件路径、选择了哪些 Highlight(仅次要/主要版本)以及保留了哪些文档链接。
  • 不要提交该文件。它是临时草稿文件(已被 .gitignore 忽略),由用户粘贴到 GitHub。

格式约定(与过去的发布保持一致)

  • 分区顺序:Highlights → Breaking Changes → Features → Bug Fixes → Performance → Reverts → Contributors → New documentation → Full Changelog。
  • 补丁版本跳过 Highlights,从第一个 changelog 分区开始。
  • 标题使用 unicode emoji(## 🚀 Features),不使用 :shortcodes:。
  • Performance Improvements 更名为 Performance。
  • 文档 URL 去掉数字前缀:docs/content/en/4.ai/1.assistant.md → https://docus.dev/en/ai/assistant。