返回 Skills 目录
riekelt/technical-writer已通过检查

SKILL DETAIL

writing-changelogs

riekelt/technical-writer/writing-changelogs

此技能用于在完成有意义的工作后编写变更日志条目、发布说明或“已发布内容”摘要。它规定了条目的格式、交接模板以及诚实性约定。适用于功能、修复、移除等实质性变更,不适用于琐碎编辑,且不得重写或删除现有条目。 规则包括:每个变更一条条目,按版本分组,最新在前,使用ISO日期;使用标准分类(新增、变更、弃用、修复、移除、安全);破坏性变更必须置于条目顶部并说明迁移操作;强调用户可见影响而非实现细节;使用现在时和主动语态;记录移除项;发布说明与变更日志基于相同事实,但面向不同受众,且不得相互矛盾。条目格式要求以粗体开头说明结果,然后说明根本原因和修复方法。诚实性约定包括明确标注已知问题、延迟事项和有意省略,并区分已实现、已部署和已外部验证。交接摘要需按顺序涵盖:工作原因、已发布内容、审查重点、验证状态(含确切命令和结果)、诚实注意事项、残余风险、状态及待办事项。

安装量 · 332查看来源

Installation

npx skills add https://github.com/riekelt/technical-writer --skill writing-changelogs

技能文件

SKILL.md

最近同步 · 2026年10月21日

SKILL.md›
---
name: writing-changelogs
description: Use when writing a changelog entry, release notes, or a "what shipped" summary after completing work. Encodes the entry shape, the handover template, and the honesty conventions. Use after shipping meaningful work, even if the user just says "summarize what we did".
---

# Writing changelogs

**REQUIRED BACKGROUND:** the `technical-writing` skill (hard rules, truth rules, style).

## Overview

The changelog's subject is the change, not the current state; migration docs and release notes are the other document types with that subject. It is historical: entries are never rewritten, only appended.

## When to invoke, and not

Invoke after shipping a meaningful change (a feature, a fix of real size, a removal), when writing release notes, or when summarizing what shipped. Do NOT invoke for trivial edits (roughly three changed files, or three commits), and never rewrite or delete existing entries.

## Rules

- One entry per shipped change, newest first, ISO dates, grouped by version where versions exist.
- Standard categories where the file uses them: Added / Changed / Deprecated / Fixed / Removed / Security. A Deprecated entry carries the removal date and the replacement.
- **Breaking changes lead the entry**, above the categories, each with the required migration action stated (and the migration guide linked when one exists).
- User-visible impact over implementation detail.
- Present tense, active voice, and no jargon the reader would not know.
- Group related changes, and never duplicate an existing entry.
- Record removals, not just additions.
- Release notes are the audience-facing cut of the same facts: what changed, who it affects, what to do about it. The changelog speaks to engineers; release notes to users of the system. Both draw on the same sources and must never contradict each other.

## Entry shape

**Document-type exception:** the bold leads required below override the shared ban on bold-lead bullets. The exception covers changelog outcomes and the named known-issue, deferred-item, and omission categories only. Repeated label-value bullets remain banned elsewhere.

**Bold lead stating the outcome**, then root cause, then the fix, with exact names inline:

```markdown
- **Reference-to-video routing fixed.** The resolver only knew three operation
  kinds, so requests with reference media routed to image-to-video. A
  `hasReferenceMedia()` check now gives reference-to-video a higher-priority
  branch.
```

Fixed entries explain the failure mode, not the diff. The bold lead carries the user impact, which lets a reader triage a change list.

## Honesty conventions

Three entry types make a changelog citable:

- **Known issues** surfaced but not fixed in this change, named as such.
- **Deferred items** still owed ("one deploy needed to restore the webhook key").
- **Deliberate omissions**, described by category, so the same omission is not re-litigated or mistaken for an oversight.

Never mark anything implemented, deployed, or verified unless that exact action was completed and checked. Distinguish implemented (in the repo) from deployed (live) from externally verified.

## Handover / completion summary

For handing finished work to a reviewer or operator, cover these sections in order:

1. Why this work exists
2. What shipped
3. Where to point the review (the decisions a reviewer must understand before judging)
4. Verification status: exact commands and their results, never a bare checkmark
5. Honest caveats and things I got wrong
6. Residual risks and what NOT to do
7. State and what is owed (merged-not-pushed, migrations, ordered steps with the consequence of wrong ordering)