用途:帮助团队为仓库选定生态原生的发布与变更日志工具,并建立“发布可读性契约”,使每次版本变更的意图以结构化文件形式留在 git 中,而不是只存在于维护者脑中或 GitHub Releases 文本框里。
主要能力:先约定契约(变更说明入 git、贡献者按固定格式提交意图、有文档化的机械发布命令、发布后 CHANGELOG 可被智能体读取、记录工具选型原因、安装说明与最新发布一致),再按仓库信号路由工具:pnpm/npm workspaces 用 @changesets/cli;单 Node 包高频发布用 release-please 或 Changesets;Dart monorepo 用 Melos version + changelog;单 Dart 包用 CHANGELOG.md + git tag + dart pub publish;Rust workspace 用 release-plz 或 cargo-release + git-cliff;带二进制的产品用 release-please + tag CI + install.sh。
使用方式:先按仓库原型分类,再选生成器(多选项时写 ADR),然后接入 DX_FAQ、CI、AGENTS.md、CONTRIBUTING 等表面。Changesets 最小形态为贡献者添加 .changeset/*.md,维护者执行 pnpm changeset、pnpm changeset version、pnpm install、git commit。私有包需在 .changeset/config.json 配置 privatePackages 的 version/tag。安装命令:npx skills add arenukvern/skill_steward --skill release-changelog-harness。
适用场景:发布流程不清、版本漂移、智能体无法判断已发布内容、新增发布 CI 或 monorepo 发布工作流、审计变更日志工具是否匹配仓库类型。
限制:这是元工具文化指南,不是各包管理器的完整教程;不提供具体项目的发布命令细节,需在 DX_FAQ 中自行记录;避免在 Rust 仓库强用 Changesets、只在 GitHub Releases 写变更日志、用 GITHUB_TOKEN 推 tag 后再依赖 tag 触发工作流等反模式。