用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/UitbreidenOS/UitKit --skill changelog-writer命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
Guidelines and instructions for Agent execution state rollback rules
Guidelines and instructions for Agent execution step counters limits
Guidelines and instructions for Agent execution timeout limits setups
基于 SOC 职业分类
| name | changelog-writer |
| description | User-facing changelog from git history or PRs: group by impact, plain language, links to docs |
/api-doc-writer for the migration guide; the changelog entry should link to it, not replace itConvert this git history / PR list into a user-facing changelog entry.
## Release context
Product: [name]
Version: [v2.4.0 / "June 2026 release" / weekly digest]
Release date: [date]
Audience: [end users / developers / admins / mixed]
## Raw input
[Paste one of: git log output / list of merged PRs / Jira release / Linear milestone / free-form list of changes]
Example git log format:
abc1234 feat: add bulk invite flow for workspace admins (#1203)
def5678 fix: pagination breaks when filter is active (#1188)
ghi9012 chore: upgrade React to 18.3 (#1201) ← skip this
jkl3456 feat(api): add cursor-based pagination to /v1/events (#1195)
mno7890 fix: email notifications sent twice on plan upgrade (#1179)
pqr2345 perf: reduce dashboard initial load time by 40% (#1197)
stu6789 BREAKING: remove deprecated /v1/users/bulk endpoint (#1200)
## Instructions
1. FILTER: Skip internal-only changes:
- Dependency upgrades without user-visible impact (`chore: upgrade X`)
- Refactors with no user-visible change (`refactor:`)
- Test-only changes (`test:`)
- CI/CD changes (`ci:`, `build:`)
- Internal tooling
2. CLASSIFY each remaining change:
- New feature: new capability the user didn't have before
- Improvement: existing feature now works better (faster, simpler, extended)
- Fix: something that was broken now works
- Breaking change: something that requires user action to continue working
- Security: security-relevant fix
3. REWRITE in plain language:
- Write for [audience] — not for engineers reading the code
- No commit hashes, branch names, or internal ticket numbers in the output
- Active voice: "You can now..." / "We fixed..." / "We improved..."
- One sentence per entry for fixes and improvements; 2-3 sentences for new features
- Link to docs where relevant: "(See [documentation link])"
4. SORT by impact:
- Breaking changes first (so users see them immediately)
- New features
- Improvements
- Fixes
## Output format
---
## [Version / Release name] — [Date]
### Breaking changes
> Action required before upgrading
- **[Change title]:** [Plain-language description of what changed and what the user must do.] [Migration guide →](#)
### New features
- **[Feature name]:** [What it does and who it's for. What problem it solves.]
- **[Feature name]:** [...]
### Improvements
- [Plain-language description of the improvement and its benefit to the user]
- [...]
### Fixes
- Fixed [description of what was broken and what the correct behaviour now is]
- [...]
---
Write a [weekly / monthly] product update from this list of shipped changes.
Period: [date range]
Audience: [customers in a product newsletter / developers / enterprise admins]
Tone: [conversational / formal / technical]
Changes shipped this period:
[list or paste git log / PRs]
Format:
- Lead with the most impactful change (1-2 sentences — the hook)
- Group by product area or theme, not by date shipped
- Use "we" language for changes ("We've made X faster..."), "you" for benefits ("You can now...")
- End with a "coming up" section if you have committed roadmap items to tease
Output: a changelog digest ready to paste into an email, in-app notification, or blog post.
Length: [brief (under 200 words) / standard (200-400 words) / detailed (400+ words for major releases)]
Write a breaking change entry for the changelog.
Change: [describe the breaking change in technical terms]
What used to work: [the old behaviour]
What happens now: [the new behaviour]
Why we changed it: [the reason — be honest if it's for technical debt, not just "improvements"]
Affected users: [who is impacted — everyone / only users of X feature / only on X plan]
What they must do: [specific action steps numbered 1, 2, 3]
Deadline: [date the old behaviour is removed / when they must migrate by]
Migration guide: [link to docs]
Support: [where to get help]
Output: a changelog entry that is alarming enough for users to read, but not panic-inducing.
Include: a clearly marked "Action required" header.
Do not: bury the required action in paragraph text.
Review this changelog for quality and completeness.
[Paste existing changelog entry]
Check against these quality criteria:
COMPLETENESS:
- [ ] All breaking changes listed and marked clearly?
- [ ] Every entry has a plain-language description (no jargon, no commit hashes)?
- [ ] Links to documentation for major new features?
- [ ] Fixes explain what was broken, not just "fixed a bug"?
LANGUAGE:
- [ ] Written for [end users / developers] — not for the internal team?
- [ ] Active voice throughout?
- [ ] Entries sorted by user impact (breaking → new → improvement → fix)?
- [ ] No internal ticket numbers (JIRA-1234) visible to external readers?
BREAKING CHANGES:
- [ ] Clearly separated from other changes?
- [ ] Include specific action the user must take?
- [ ] Include deadline and migration docs link?
For each gap: rewrite the entry correctly.
Given these changes, recommend the correct semantic version bump.
Current version: [vX.Y.Z]
Changes in this release:
[list the changes]
Semantic versioning rules:
- MAJOR (X): breaking changes — incompatible API change, removed feature, changed behaviour that breaks existing usage
- MINOR (Y): new features — backwards-compatible additions
- PATCH (Z): bug fixes — backwards-compatible fixes only
Recommendation: bump to v[X.Y.Z]
Reason: [which change triggered the bump level]
If MAJOR bump: reminder to update the migration guide and communicate the timeline clearly.
User: Here's our git log for the past sprint. Write the changelog for v3.2.0.
a1b2c3d feat: workspace members can now export their own data (#445)
d4e5f6a feat(api): add filtering by date range to GET /v1/reports (#441)
g7h8i9j fix: CSV export includes duplicate rows when >1000 records (#438)
k1l2m3n fix: notifications not sent when user is on legacy plan (#436)
o4p5q6r perf: report generation 3x faster for large datasets (#440)
s7t8u9v chore: upgrade lodash to 4.17.21 (#443)
w1x2y3z docs: update API authentication guide (#444)
a4b5c6d BREAKING: /v1/exports now returns 202 Accepted instead of 200 OK for async exports (#439)
Output:
## v3.2.0 — June 2, 2026
### Breaking changes
> Action required: update your integration if you use the Exports API
- **Exports API now returns 202 for async exports:** `POST /v1/exports` previously returned `200 OK` with the export URL. It now returns `202 Accepted` immediately, and you poll `GET /v1/exports/{id}` for status. This allows exports to run asynchronously without blocking your request. Update any code that checks for a `200` status code on export creation. [Migration guide →](https://docs.example.com/guides/exports-migration)
### New features
- **Self-serve data export:** Workspace members can now export their own data from their account settings, without needing an admin to do it on their behalf.
- **Date range filtering in Reports API:** `GET /v1/reports` now accepts `start_date` and `end_date` query parameters to filter results by a custom date range. [See reference →](https://docs.example.com/api/reports)
### Improvements
- Report generation is now 3x faster for large datasets. Reports that previously took 30+ seconds now complete in under 10.
### Fixes
- Fixed a bug where CSV exports included duplicate rows when the export contained more than 1,000 records.
- Fixed an issue where email notifications were not sent to users on legacy plans.