用途:面向已有仓库,先判断其是否可直接进行 Copier 更新、需要旧工作流迁移,或属于可显式自采用的 dstack 模板源。常规更新会从 .copier-answers.yml 记录的 Git 源解析 stable 或 unstable 通道,再执行 Copier 三方更新,使项目自有改动保留在本地。
主要能力:非变更预检会检查 .copier-answers.yml、活动 tasks.md 与 Beads 初始化状态;stable 选取最新 PEP 440 兼容的 vX.Y.Z 发布,unstable 选取源默认分支 HEAD;默认排除预发布版本,可用 --prereleases 包含;每个选定标签、分支或修订都解析为可达提交并把精确 SHA 写入 _commit;支持 --pretend 预览、--vcs-ref 指定修订、--add-profile/--remove-profile 增删语言配置;支持 --repository-layout monorepo 与 --monorepo-package 显式包转换;自采用需显式批准且工作区干净。
使用方式:先运行预检命令 uv run <core-dir>/scripts/run-workflow.py <skill-dir>/scripts/update-project.py --preflight --json;预检建议 update-project 时再执行更新,例如 uv run <core-dir>/scripts/run-workflow.py <skill-dir>/scripts/update-project.py,或加 --stable、--unstable、--pretend、--vcs-ref <release-tag> 等。若推荐 migrate-workflow,则不得运行 Copier 更新,需先询问用户是否运行 /migrate-workflow。
适用场景:Copier 管理的 dstack 项目模板升级、旧 tasks.md 仓库迁移、dstack 模板源自采用、语言配置与仓库布局调整。
限制:调用仅授权预检与本地 Copier 更新及专用协调提交,不授权 push、merge、force-push、分支删除或无关改动;默认要求工作区干净;不自动应用语言配置建议;不推断包结构;不采用仅本地提交;冲突时跳过生成代码与工具链;bd doctor 不受支持故不使用;迁移未完成、存在冲突、工具链降级、候选未解决、锁文件过期或路径未分类时,不得视为可恢复功能开发。