name: gen-changelog description: Generate changelog entries for code changes.
Generate changelog entries for changes on the current branch relative to main, then sync to the docs site.
Steps
- Inspect:
git log main..HEAD --oneline+git diff main..HEAD --stat. - Edit root CHANGELOG: add bullets under
## UnreleasedinCHANGELOG.mdusing the prefix table below. For changes scoped to a subpackage underpackages/orsdks/, also update that subpackage'sCHANGELOG.md— subpackage CHANGELOGs follow their own prefix conventions (e.g.packages/kosong/CHANGELOG.mduses provider prefixes likeKimi:/Anthropic:); only the root CHANGELOG follows the table below. - Sync English docs:
node docs/scripts/sync-changelog.mjs. - Translate to Chinese: hand-write equivalents under
## 未发布indocs/zh/release-notes/changelog.md. Use the full-width colon:. Followdocs/AGENTS.mdterminology. - Breaking changes: if any, add a section under
## Unreleasedindocs/en/release-notes/breaking-changes.mdwith Affected + Migration subsections, and under## 未发布indocs/zh/release-notes/breaking-changes.mdwith 受影响 + 迁移 subsections.
Entry format
- <Prefix>: <verb-led sentence, readable standalone> — <optional rationale / before-after / migration>
- First sentence stands alone — readers should know after one sentence whether the bullet matters to them.
- One change per bullet. No
; also,; and, or nested em-dashes. Two changes = two bullets. - Verb-led:
Fix …/Add …/Switch …/Bump …. - User-meaningful only. No internal refactors, test churn, or CI tweaks — except
Lib:for SDK-facing changes.
Prefixes — pick from this list, do not invent new ones
| Prefix | Scope |
|---|---|
Shell |
Interactive TUI: keys, status bar, slash commands, terminal rendering |
Web |
kimi web |
Vis |
kimi vis tracing visualizer |
CLI |
Top-level flags, subcommands, --print / --yolo / --afk |
ACP |
Zed / JetBrains and other ACP integrations |
Core |
Agent runtime, step loop, approval, quota, turns, background tasks |
Tool |
Any built-in tool; name the specific tool in the body (ReadFile, Grep, Todo, Plan, …) |
Skill |
Skill discovery/loading, Flow, Loop (always singular — not Skills:) |
MCP |
MCP server integration |
Plugin |
Plugin system, kimi plugin subcommands |
LLM |
Provider-agnostic or cross-provider; name the provider in the body (Kimi / Anthropic / OpenAI / DeepSeek …). Do not create per-provider prefixes |
Kosong |
Changes to the kosong LLM abstraction layer surfaced in the root CHANGELOG (the subpackage's own CHANGELOG uses provider prefixes) |
Wire |
Wire protocol events, version |
Auth |
OAuth, token refresh, /login |
Config |
Config schema, env vars |
Lib |
SDK-facing API changes |
Build |
Nix / Rust / Python / packaging |
When unsure, match an existing entry of the same kind. Prefer this list; if you genuinely need a new prefix, raise it with maintainers and update this table in the same PR so the convention stays single-sourced.
Ordering: within each version, group bullets by prefix in the order of the table above. Order within a prefix is free — keep the development order.
Highlights
Starting from the next release, add **Highlights**: … under each version header (1–3 items most users will notice); mirror it as **亮点**:… in Chinese. Skip on releases that are only internal or Lib:. Highlights summarize — every highlighted item still needs its full bullet below. Do not backfill historical versions.