mcpField
C
changelog

changelog

github.com/pipecat-ai开发17.1k62 次安装今天更新
代码仓库

关于 changelog

用于为 PR 中的重要提交创建变更日志条目的技能。它会排除仅涉及文档等不纳入记录的改动,并按项目的文件命名和类型约定编写简洁、面向用户的条目。

主要功能

  1. 01筛选重要变更
  2. 02选择变更日志类型
  3. 03按 PR 命名文件
  4. 04撰写面向用户的说明
  5. 05标记破坏性变更

适用场景

  1. 01记录面向用户的新功能
  2. 02记录行为变更或缺陷修复
  3. 03为一个 PR 添加多条记录
  4. 04标记破坏性变更

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/pipecat-ai/pipecat --skill changelog

安装后在 Claude Code 中输入/changelog确认已加载。

详细介绍

为此 PR 中的重要提交创建变更日志文件。PR 编号作为参数提供。

说明

  1. 以下情况跳过变更日志:仅涉及文档、内部重构、仅涉及测试、CI 更改,以及修复尚未发布的更改(未发布更改的条目已涵盖这些内容;如果修复会改变条目的描述,则更新该条目)。

  2. 首先,检查当前分支相对于 main 包含哪些提交:

    git log main..HEAD --oneline
    
  3. 对每项重要更改,在 changelog/ 文件夹中按以下格式创建变更日志文件: 允许的类型:added、changed、deprecated、removed、fixed、security、performance、other

    • {PR_NUMBER}.added.md - 用于新功能
    • {PR_NUMBER}.added.2.md、{PR_NUMBER}.added.3.md - 用于同一类型的其他条目
    • {PR_NUMBER}.changed.md - 用于现有功能的更改
    • {PR_NUMBER}.fixed.md - 用于错误修复
    • {PR_NUMBER}.deprecated.md - 用于弃用内容
    • {PR_NUMBER}.removed.md - 用于移除的功能
    • {PR_NUMBER}.security.md - 用于安全修复
    • {PR_NUMBER}.performance.md - 用于性能改进
    • {PR_NUMBER}.other.md - 用于其他更改
  4. 每个变更日志文件至少应包含一行以 - 开头的主要描述,清楚说明更改内容。不要换行。

  5. 如果更改较复杂,可以在主要描述后添加缩进的补充说明或代码示例。

  6. 对于破坏性更改,使用 ⚠️ 表情符号作为前缀。

  7. 首先从面向用户的角度描述更改。 先说明框架用户会注意到的内容:新 API、行为变化、新参数、修复的用户可能遇到的错误等。实现细节(内部重构、底层接线方式)可以作为补充背景,但如果更改对用户可见,绝不能只写实现细节。

    好的示例(先描述用户可感知的变化,再补充实现细节):

    - Turn completion instructions now persist correctly across full context updates when using `system_instruction`. Previously they were injected as a context system message, which caused warning spam and didn't survive context updates.
    

    不好的示例(只描述实现细节,没有从用户角度说明):

    - Fixed turn completion instructions being injected as a context system message instead of using `system_instruction`.
    

    请自问:“如果我是基于 Pipecat 进行开发的开发者,会注意到哪些变化?” 从这里开始写。

  8. 写好条目后,运行 /prose-review changelog/,并修复它指出的问题。

示例

对于包含一项新功能和一项错误修复的 PR #3519:

changelog/3519.added.md:

- Added `SomeNewFeature` for doing something useful.

changelog/3519.fixed.md:

- Fixed an issue where something was not working correctly in some user-visible scenario. The root cause was an internal implementation detail.

评论

支持 Markdown