该技能用于把基于 blogic-cz/blogic-template-ts 生成的项目与上游模板同步。以上游模板为唯一事实来源,优先使用本地路径 opensrc/repos/github.com/blogic-cz/blogic-template-ts/ 并记为 $TPL。前提是 gh CLI 已认证,可选加载 debugging-with-opensrc 技能,或直接使用等价 opensrc/git 命令;可用 agent-tools 的 gh-tool release 命令,否则用原生 gh。
流程分阶段。Phase 0 发现变更:用 bun run opensrc:use blogic-cz/blogic-template-ts 拉取模板,从 package.json 的 templateVersion、.template-version、Git 历史或 CHANGELOG 检测当前版本;无基线需向用户询问;再用 release list/view 与 gh pr list 枚举变更,按基础设施、依赖、模式、功能、修复分类并输出汇总表,其中依赖交由 update-packages 技能处理。
Phase 1 强制先更新包:对比项目与模板版本形成差距表,新建分支 chore/sync-template-packages-$(date +%y%m%d-%H%M),只更新已使用包到模板版本或更新,保留包组协调,不新增项目未用包,提交后再继续。Phase 2 逐文件深扫差异,加载 references/template-files.md 与 substitution-rules.md,用 git diff --no-index $TPL/<file> <file> 比对,标记缺失文件,构建名称替换矩阵,并把项目特有的 routes、services、schema 及环境配置保留下来。Phase 3 在 .sisyphus/plans/ 生成计划文件(YYMMDDHHMM-sync-template-vX.Y.Z.md),按 Wave 0 包更新、Wave 1 基础设施并行、Wave 2 代码与文档、Wave 3 清理、Wave FINAL 验证组织,须用户明确批准后执行。Phase 4 按波次执行,可用子代理则委托,否则顺序执行;每波后运行 bun run check 与 bun run test。Phase 5 按 references/verification-recipes.md 验证并更新 .template-version。
限制:绝不覆盖项目特有问题;同步文件不得残留 @blogic-template/ 或 blogic-template-ts 字符串(references/substitution-rules.md 中批准例外除外);必须先更新包再改基础设施;必须对每个复制文件应用替换矩阵;不得添加模板专属依赖或应用项目未启用的功能;不得使用硬编码绝对路径。完成标准为 check 无错误、test 通过、版本文件更新、计划任务全部完成。