用途:执行 Kimi Code CLI 各包的发布工作流,确保版本检测、元数据更新、文档同步、PR 与标签推送按流程完成。
主要能力与规则:标签不带 v 前缀,模式由 .github/workflows/release-*.yml 匹配:纯数字(如 1.42.0)同时发布根包 kimi-cli 与 kimi-code wrapper,两者版本必须保持一致;kosong-0.53.0 对应 packages/kosong;pykaos-0.9.0 对应 packages/kaos(PyPI 名为 pykaos);kimi-sdk-0.3.0 对应 sdks/kimi-sdk。Rust 实现 kagent 在另一个仓库,不在此发布。
使用方式:先读 AGENTS.md 与 release 工作流了解自动化预期;用路径限定 diff 检测各发布单元变化,例如 git diff kosong-0.53.0..HEAD -- packages/kosong;若无任何变化则停止并报告无可发布内容。注意 packages/kimi-code 是薄封装,根包变化时视为同步变化。为每个变化包提议新版本并等待用户确认(补丁位始终为 0,任何改动提升次版本,主版本仅由用户明确手动决定)。创建 bump-<package>-<new-version> 分支;更新 pyproject.toml、CHANGELOG.md(保留空的 ## Unreleased 头,在其下新增带日期的版本段)、必要时更新双语 breaking-changes.md;若提升 kosong 或 kaos,还要更新根 pyproject.toml 的固定依赖(kosong[contrib]==<version> 或 pykaos==<version>);根版本变化时同步 packages/kimi-code/pyproject.toml 版本,它是无依赖的遗留桩,不要加回 kimi-cli 固定。运行 uv sync 更新锁文件,按 gen-docs 技能更新文档。开 PR 前向用户总结版本号、依赖固定与文档,等待明确批准。PR 描述需含 Summary 与 Validation 结构,验证命令包括 uv run python scripts/check_version_tag.py --pyproject <pyproject> --expected-version <version>、根发布时对 packages/kimi-code/pyproject.toml 的同一脚本、uv run python scripts/check_kimi_dependency_versions.py --root-pyproject pyproject.toml --kosong-pyproject packages/kosong/pyproject.toml --pykaos-pyproject packages/kaos/pyproject.toml 以及 make check。合并后切到 main 拉取最新,把最终标签命令交给用户,由其自行执行 git tag <tag> 与 git push origin <tag>。
限制与停止条件:快速失败,不掩盖错误。无变化、uv sync 失败或锁文件异常变更、gen-docs 报无法解决的文档不一致、推送后 PR 检查变红、标签推送后工作流失败时,均停止并报告;不得使用 --no-verify 或强制合并,不静默重打标签。