用途:把一次会话、事故、diff、错误或提示中的可复用经验,沉淀到用户的私有技能仓库,默认产出是私有仓库 .github/skills/<skill>/ 下的聚焦改动。不把这些经验转成个人指令、提示词、记忆、agents、工作区文件或公开同步产物。触发语包括:private skill retro、private skill repo、skill repo authoring、private skill fix、retro private skills、/retro-private-skills。
输入:至少提供以下之一:错误日志、Git diff、会话摘要、终端历史、目标技能名、私有仓库路径或模式(safe-auto、review-only、dry-run、プレビュー);都没有则以“入力不足”停止并索要缺失输入。
范围硬门:只允许写 <private-repo>/.github/skills/<skill>/ 下的 SKILL.md、references/、scripts/、assets/*。除非用户明确要求改某个具体资产,否则不写 ~/.copilot/instructions/、~/.copilot/copilot-instructions.md、~/.copilot/skills/、~/.copilot/m-skills/、VS Code 用户数据提示或指令、工作区 .github/、AGENTS.md、仓库专有指令、memories、公开同步产物或经 safe-auto 校验的私有 origin 之外的远程目标。若最佳落点看起来是指令、提示、记忆或 agent,则以 scope 不一致停止。回写内容须自包含可移植,不依赖工作区文件、记忆、本地绝对路径或环境台账,也不得引用或委托给其他技能。
私有仓库定位顺序:用户显式路径;环境变量 SYNC_PUBLIC_SKILLS_PRIVATE_REPO($env: 为空时再查 Process/User/Machine 作用域);由 SYNC_PUBLIC_SKILLS_SCRIPT 推断的父仓库;仅当当前工作区含 .github/skills/ 且明显是该私有仓库时采用。之后验证 .github/skills/ 存在,否则以 private repo 未解決 停止。
模式:默认 safe-auto;review-only、dry-run 或 プレビュー 只提出目标改动、编辑前停止。safe-auto 下范围清晰、安全门通过且改动小到中等时直接编辑;范围不清、新增权限/目的地/可见性/默认值、破坏性删除或敏感数据不确定时先确认。safe-auto 下同一轮创建聚焦的本地提交并推送,无 ahead 阈值,调用本技能即视为推送批准;想留本地草稿请用 review-only 或 dry-run。Git 门:fetch 一次、分类 dirty/ahead、隔离无关脏改动、确认只推送私有技能提交、两次 HEAD.lock 失败后停止;未经明确指示永不 reset --hard、force push、做 public/internal/EMU 同步、release 或 tag。本技能不执行公开/内部/EMU 同步。
路由:逐条抽取 Learning / Evidence / Impact,按 Impact×Recurrence 排 P1/P2/P3;先查现有私有技能再新建,有明显归属就路由到最具体的现有技能。一位学习若是多个技能各自必须独立持有的横切原则,可给每个受影响技能加 1 行门;一次事故产生多个独立学习时,同一轮分别更新各自归属技能。无技能归属且可复用为工作流时新建私有技能文件夹;工作区/客户/项目专属的先抽象,无法安全抽象则以 scope 不一致停止。
编辑规则:优先改进现有文本而非追加重复指引;SKILL.md 保持精简入口,详细流程与命令示例移入 references/*;不存密钥、客户数据、租户 ID、本地绝对路径、token 或 /memories/** 内容,必要时用占位符替换本地绝对路径。
流程:解析并检查(定位仓库、验证 .github/skills/、Git 预检、列出候选技能并读最可能的 SKILL.md,大仓库可委派子代理盘点,遵循仓库自有编写指南)→ 决定唯一目标(更新现有技能 / 给现有技能加 reference / 新建私有技能 / 停止)→ 仅在 .github/skills/<skill>/ 下编辑且保持小而聚焦 → 膨胀检查(去重、压缩、移入 references/)→ 验证(改动路径合规、未改禁写目标、解析每个改动 SKILL.md 的 YAML frontmatter、检查 name 与目录、description 触发词与 argument-hint 是否与当前用途一致、不新增密钥/客户数据/租户 ID/本地绝对路径)→ safe-auto 下范围清晰且远程与范围检查通过才提交推送,完成标准是执行检出干净、ahead/behind 为 0/0;原有无关脏改动保留并报告,不算完成阻碍。可列出至多三个只读候选:dirty→Retro、待推送私有提交→ahead 范围审查、已提交的公开安全缺口→另行请求同步。
输出:使用 Authoring Rules 中的紧凑报告。停止原因:入力不足 / private repo 未解決 / scope 不一致 / Safety Gate 失敗 / actionable な知見なし / 新規 skill 候補 / review-only。