
Changelog Temp File【免费下载链接】ant-designAn enterprise-class UI design language and React UI library项目地址: https://gitcode.com/GitHub_Trending/an/ant-designVersion: 6.4.0Generated: 2026-03-09T...之所以要求先写头部、后追加条目是因为后续收集是逐条追加写入的——只要头部存在任意时刻 ~changelog.md 都是完整可用的中间产物中途失败也能续跑。 ### 2.4 获取 commit 列表并提取 PR 编号 bash git log from-tag..to-branch --oneline解析每个 commit提取 PR 编号匹配#12345格式。2.5 并行获取 PR 详情Skill 明确要求使用并行 subagent 同时获取所有 PR 详情而不是顺序逐个请求将所有 PR 编号分批每批最多 10 个为每批 dispatch 一个 subagent 并行执行[主流程] ├── subagent-1: gh pr view 56001 56002 56003 ... 56010 ├── subagent-2: gh pr view 56011 56012 56013 ... 56020 └── subagent-3: gh pr view 56021 56022 ...每个 subagent 执行的命令gh pr view pr-number --json title,body,author,number返回字段titlePR 标题、bodyPR 描述可能包含中英文 changelog、author提交者、numberPR 编号。所有 subagent 返回后汇总结果统一进行描述提取和写入。每处理完一个 PR 后立即追加写入~changelog.md追加内容格式如下## abc1234 - PR: 56976 - Committer: zombieJ - Commit: fix: Select height issue - Category: Select - English: Fix Select incorrect height when value is empty - Chinese: 修复 Select value 为空时高度不正确的问题2.6 从 PR body 提取并校验中英文描述原则是PR body 中的 changelog 作为参考以实际改动为准。PR 作者的描述可能不准确需结合实际改动判断必要时重新撰写。PR body 中提取 changelog 有两种常见标记模式 English - Fix Select incorrect height when value is empty Chinese - 修复 Select value 为空时高度不正确的问题或者English: - Fix Select incorrect height when value is empty Chinese: - 修复 Select value 为空时高度不正确的问题提取规则识别 English或English:标记后的-行作为英文描述识别 Chinese或Chinese:标记后的-行作为中文描述。提取后必须按 antd changelog 规范逐条校验不合规则改写见 2.7 节校验表。2.7 Changelog 合规校验表对从 PR body 提取的描述逐条检查以下规范不符合的必须改写规则正确示例错误示例Emoji 必须在行首 Fix Select heightFix Select height 必须以动作动词开头Emoji 之后 修复 Select .../ 新增 Button ...Select 修复...正文必须包含组件名 Fix Select height issue Fix height issue组件名不加反引号Fix Select heightFix Select height属性名/API 用反引号Fix Select value propFix Select value prop组件名后不加冒号 Fix Select height Fix Select: height中文与英文/数字之间保留空格修复 Select 在暗色主题的问题修复Select在暗色主题的问题每条只选一个 Emoji不叠加 Fix Select ... Fix Select ...描述开发者影响不描述实现细节Fix Select height when emptyRemove minHeight CSS property新组件必须描述功能用途 Add BorderBeam component for animated border beam effect along container edges. Add BorderBeam component.新属性必须说明用途或效果 Add Input allowClear.disabled prop to disable the clear button while keeping it visible. Add Input allowClear.disabled support.从用户/开发者视角描述效果 Improve AI agent support for ant.design. Add .well-known metadata.Token 改动列出具体 token Add Collapse headerPaddingSM and contentPaddingSM tokens. Add Collapse size tokens.文案校验时逐条追问用户或开发者看到的变化是什么如果答案只是传递某配置、修改某 runtime、增加某 metadata、调整内部结构说明文案仍是实现视角必须改写为可感知效果。2.8 Emoji 规范完整版 Emoji 语义表与 AGENTS.md 保持同步Emoji用途修复 Bug样式更新或 token 更新新增特性 / 新增属性极其值得关注的新增特性国际化改动 文档或网站改进✅新增或更新测试用例更新警告/提示信息⌨️ ♿可访问性增强废弃或移除重构或工具链优化⚡️性能提升2.9 commit 类型到 Emoji / 动词的映射commit 前缀中文动词英文动词Emojifix:/bug:修复Fixfeat:/feature:新增Addstyle:/ui:优化Improverefactor:重构Refactorperf:提升性能Improve performance⚡️docs:更新文档Update docsi18n:/locale:更新国际化Update i18ndeprecate:废弃Deprecatechore:/test:/ci:——跳过不写入2.10 无 changelog 时自动生成当 PR body 中没有 changelog 内容无 English/Chinese 标记时按优先级使用以下信息生成优先使用PR title经过格式标准化不能原文照抄参考PR body 的描述内容提取关键改动点描述对开发者的影响如有必要查看git show hash的 diff 内容辅助理解改动。生成规则根据 PR title 前缀或内容判断动作类型fix/feat/style 等Emoji 置于行首选择对应的 Emoji 和动词格式为Emoji 动词 组件名 改动描述中英文各一条描述对开发者的影响而非具体的实现细节。示例PR title: fix(Select): fix height issue when value is empty ↓ 自动生成 English: Fix Select incorrect height when value is empty Chinese: 修复 Select value 为空时高度不正确的问题2.11 过滤规则哪些 PR 不写入 changelog以下改动不应出现在 changelog 中用户无感知纯内部重构不影响 API 和行为纯测试更新新增/修改测试用例无功能变更CI/工具链/依赖升级与组件无关文档/站点样式微调不影响组件本身chore、build、ci 类型的 commit。依赖升级默认跳过但不能机械地按chore跳过。遇到rc-component、ant-design/icons或其他运行时依赖升级时必须额外核查是否带来以下用户可感知影响如果有必须保留并解释影响组件新增能力、行为变化或可访问性变化TypeScript 定义外露变化例如 antd props 继承到的新属性、回调参数或语义化类型包体积收益或运行时代码减少默认图标、样式或交互变化。遇到应跳过的类型在~changelog.md中标记Skip: true最终写入时过滤掉。2.12 识别组件 Category从 PR title 和 body 中识别组件名Skill 内置了如下组件名列表匹配规则大小写不敏感包含匹配const componentNames [ Button, Checkbox, Radio, Switch, Input, Select, TreeSelect, Cascader, DatePicker, TimePicker, Calendar, Upload, Modal, Drawer, Message, Notification, Popconfirm, Tooltip, Popover, Table, List, Tree, Tabs, Steps, Progress, Spin, Avatar, Badge, Tag, Card, Collapse, Carousel, Breadcrumb, Pagination, Menu, Dropdown, Form, Descriptions, Skeleton, Empty, Result, Alert, Typography, Layout, Grid, Space, Flex, ConfigProvider, App, Watermark, ColorPicker, QRCode, Segmented, ];这个列表与仓库components/目录下的组件一一对应如 components/select/index.tsx、components/border-beam/index.tsx。值得注意的细节是lint 侧 scripts/generate-component-changelog.ts 是从components/*/index.zh-CN.md动态扫描出组件名的并做了若干归并映射如TextArea归入 Input、Row/Col归入 Grid、Wave归入 ConfigProvider而components/version、icon、col、row、overview被排除在外——这与 Skill 中文档/站点改动不写入组件分组的过滤思路一致。三、阶段二处理临时文件读取~changelog.md后头部 若干## commit-hash条目块按规范进行过滤、分组、格式检查必要时交互确认和修改。该阶段引用 AGENTS.md 中的 Changelog 规范核心原则、格式规范、Emoji 规范、句式规范。3.1 过滤规则汇总跳过chore:、test:、ci:、build:类型的 commit跳过纯文档/站点改动不影响组件 API 和行为的跳过纯测试更新和工具链升级依赖升级默认跳过但rc-component、ant-design/icons或其他运行时依赖升级如果带来组件能力、运行时行为、可访问性、TypeScript 外露类型或包体积收益必须保留并写清用户/开发者影响。3.2 发布重点提炼正式发布版本的 changelog 不只是 PR 列表必须先提炼跨版本亮点并放在普通组件条目前面。优先寻找并置顶这些类型影响产品定位或使用方式的跨版本能力例如DESIGN.md、AI 设计工具支持、agent discovery、LLMs/MCP/CLI 能力用户能直接感知的重要视觉资产或内置能力例如新增 Icon 集合并列出具体新增图标明确的包体积、性能或运行时收益多个 PR 共同构成的一项能力合并成一条重点说明并列出相关 PR。重点条目可以使用但每条仍只能选择一个 Emoji。3.3 体积分析流程当发布版本出现明显 size-limit 变化或依赖升级可能影响体积时必须先分析再写 changelog拉取当前 release PR 和上一个 release PR 的 size-limit 评论记录最终antd.min.js、antd-with-locales.min.js等关键包体积数值计算相对上个版本的最终差值不只记录单个 PR 的增减扫描本版本区间内各 PR 的 size-limit 评论定位主要增减来源检查package.json运行时依赖升级尤其是rc-component、ant-design/icons、picker/select/upload/icon 相关包必要时对比 npm 包或构建产物避免把全部收益错误归因给某个单独 PR例如只写 Icon而忽略 picker 精简运行时代码Changelog 里写最终用户/开发者能理解的收益和主要来源例如完整包体积下降主要来自 DatePicker/TimePicker runtime 精简与 Icon/Upload 默认图标优化。3.4 分组逻辑与排序分组必须以最终有效 changelog 条目数量为准同一组件最终有 2 条及以上时才使用- 组件名分组最终只有 1 条时必须输出为顶层单行条目即使组件名已出现在条目正文中也不单独写- 组件名分组行。完成过滤、合并、移动条目后必须重新统计每个分组移动到 Icon、跨组件、TypeScript、文档/网站等分类后的原组件也要重新统计拆平所有只剩 1 条的组件分组。组件分组排序按有效条目数降序排列条目数相同再按重要性和现有 changelog 风格排序。发布版本整体排序按影响优先跨版本重点变化最前其次是条目较多或影响较大的组件分组再是普通单行条目。多条分组的输出示例链接处为示意真实 CHANGELOG 中 PR 与作者均为指向 PR 页和 GitHub 用户页的完整链接可对照 CHANGELOG.zh-CN.md 中 6.6.2 版本的实际条目格式- Select - Fix Select incorrect height when value is empty. [#56976] [zombieJ] - Improve Select dropdown animation. [#56980] [afc163] - Fix Button style in Safari. [#56901] [li]这个禁止单条分组规则并非 Skill 的独创AGENTS.md 格式规范一节同样规定严格禁止只有 1 条有效 changelog 的组件单独分组。3.5 描述与署名补充规则Emoji 在行首动词紧跟其后组件名不加反引号属性名、API 名用反引号描述对开发者的影响而非具体实现细节每条 changelog 统一补充PR 链接和PR 作者链接顺序为先 PR 后作者如#56976 username不区分是否团队成员。四、阶段三写入文件并校验4.1 插入位置在---front matter 之后、第一个版本标题之前插入新内容。以 CHANGELOG.zh-CN.md 为例文件头部是 dumi 的 front matterorder、title、timeline等加发布周期说明第一个版本标题如## 6.6.2之前就是插入点。具体步骤读取 CHANGELOG.zh-CN.md找到---之后的位置插入生成的中文 changelog写入文件同样流程处理 CHANGELOG.en-US.md。每个版本块的固定结构为## 版本号 一行反引号包裹的日期如2026-08-28 条目列表这一格式可以从 CHANGELOG.zh-CN.md 直接确认。4.2 写入后必须运行 lint 校验npm run lint:changelog如果 lint 报错根据错误信息修正对应的 changelog 条目重新写入直到 lint 通过。该脚本在 package.json 中定义为lint:changelog: tsx scripts/generate-component-changelog.ts并被完整的npm run lint链和prestart钩子package.json引用——也就是说 changelog 格式不只是发布前检查本地起站之前也会跑一遍。从 scripts/generate-component-changelog.ts 的源码看这条 lint 的实际行为可以推断为它逐行解析 CHANGELOG追踪当前版本号##开头与发布日期匹配YYYY-MM-DD格式这与写入步骤中版本格式或日期格式不对会报错的提示相吻合每行尝试用动态扫描出的组件名正则匹配componentNameMapL30-L40匹配上的条目归入对应组件未命中组件但命中miscKeysIcon、MISC:、Design Token、国旗 Emoji 等L43-L89的归入杂项两者都不命中的行会打印 Miss Component:并在结尾抛出Component changelog miss match!L228-L249即整个 lint 非零退出——这正是组件名必须写对、条目必须可被解析这条软规范背后的硬约束匹配成功的条目连同版本号、PR/Issue 链接从...中提取L182-L193与贡献者usernameL143-L152写入.dumi/preset下的 JSON供站点按组件维度展示 changelog。这解释了为什么每条必须含组件名、PR 链接与作者链接它们不只是规范也是下游数据管道的输入字段。常见 lint 错误类型对应 Skill 中的说明Emoji 格式不符、中英文空格缺失、组件名使用了反引号、版本格式或日期格式不对。4.3 版本确认可选版本号已在阶段一确定。如需更新package.json在写入 changelog 前询问是否需要同步更新 package.json 中的版本号 当前版本: 6.3.1 → changelog 版本: 6.4.0 选项: - [更新] 执行 npm version minor/patch - [跳过] 保持 package.json 不变4.4 写入确认交互式预览写入前必须预览确认请确认以下内容即将写入 CHANGELOG.zh-CN.md 和 CHANGELOG.en-US.md 版本: 6.4.0 日期: 2026-03-09 条目数: 12 [预览完整内容] [直接写入] [取消]五、完整交互流程22 步Skill 将整个工作流串成如下 22 步闭环1. 获取可用 tags选择起始版本 ↓ 2. 选择目标分支master/feature/自定义 ↓ 3. 立即确定版本号minor/patch/自定义 ↓ 4. 初始化 ~changelog.md 头部写入版本信息 ↓ 5. git log 获取两个版本间的 commits提取所有 PR 编号 ↓ 6. 并行 dispatch subagents 批量获取 PR 详情每批最多 10 个 ↓ 7. 汇总所有 PR 结果逐条处理 ├── 有 changelog → 提取 → 校验合规性 → 不合规则改写 └── 无 changelog → 根据 PR title/body/diff 自动生成符合规范的描述 ↓ 8. 核查运行时依赖升级尤其 rc-component / icons是否带来能力、类型或体积收益 ↓ 9. 识别组件 category ↓ 10. 追加写入 ~changelog.md ↓ 11. 过滤无效 commit交互确认 ↓ 12. 提炼发布重点DESIGN.md、Icon、包体积、AI agent 支持等跨版本亮点 ↓ 13. 如存在明显体积变化按体积分析流程归因并补充说明 ↓ 14. 分组处理并排序按最终有效条目数重算单条组件拆平 ↓ 15. 检查描述规范性交互确认 ↓ 16. 重新生成不符合规范的描述如需要 ↓ 17. 预览确认交互确认 ↓ 18. 可选更新 package.json 版本npm version ↓ 19. 写入 CHANGELOG.zh-CN.md 和 CHANGELOG.en-US.md ↓ 20. 运行 npm run lint:changelog 校验有报错则修正并重新写入 ↓ 21. 清理临时文件 ~changelog.md ↓ 22. 可选创建发布 PRPR body 中直接包含完整的中英文 changelog 内容【免费下载链接】ant-designAn enterprise-class UI design language and React UI library项目地址: https://gitcode.com/GitHub_Trending/an/ant-design创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考