skill-gate / gate (pull_request) Waiting to run
- scripts/scheduled-task.sh:daily/weekly/monthly 只做确定性动作,需模型判断的部分生成 queue 文件 - scripts/install-schedulers.sh:装成用户级 launchd(daily 07:20 / weekly 周一 10:00 / monthly 1 日 10:00) - .gitea issue/PR 模板:新技能提案走同一套 SCOPE 门槛问题 - README 一键部署 2 步 → 4 步;MAINTENANCE 增加定时任务一节与边界说明
4.3 KiB
4.3 KiB
技能维护节奏
配套
SCOPE.md(收不收)、skill-creator(怎么建)、docs/skill-routing.md(用哪个)。 本文件管「多久做一次什么」。
每次改动(任何分支)
批量提交前先建分支:
git checkout -b <branch>,再提交、推分支、开 PR。不要直接 commit 到 main(2026-11-01 阶段 2 漏建分支直接进 main,少了 PR 记录)。
- 过
SCOPE.md收录门槛(真实失败 + 组合不出来),新技能默认先beta。 - 跑四道门禁:
validate-skills.py --strict、scan-skill.sh、generate-catalog.py --check、tests/install-skills.test.sh。- 本机已用
./scripts/install-git-hooks.sh装好 pre-commit / pre-push,commit/push 时自动执行;Gitea Actions 暂无 runner,不能依赖 CI。 - 跳过单次:
SKILL_GATE_SKIP=1 git commit ...,提交信息里写原因。
- 本机已用
- 技能有增删改 → 同步回改
docs/skill-routing.md与catalog.json。 - 更新
plugin.json版本号与CHANGELOG.md。
每日(随 7:30 项目日报)
- 两台机器跑
install-skills.sh --audit:drift > 0 就要报,并注明是「未安装 / 版本落后 / 本地改动」。 - 门禁失败或扫描出高危:立即处理,不等到日报。
- 例外:
beta与deprecated不计入 drift。
每周一 10:00 — evals 抽样回归
- 范围:上周改过的技能 + 3 个高风险技能(
dev-coding、dev-review、req-design)。 - 每技能取 1 条关键用例,做「有技能 / 无技能」对比,按 rubric 打分。
- 结果记录到
reports/evals/YYYY-Www.md(模板reports/evals/TEMPLATE.md),进周报。 - 用
python3 scripts/evals-status.py看哪些技能已有 evals、哪些已有回归报告。 - 连续两次无增量的技能 → 按
SCOPE.md评估降级。 - 不做全量(61 技能 × 3 用例成本过高);全量只在治理大改时做。
每月 1 日 10:00 — 漂移与目录审阅
- 两台机器
--audit漂移必须为 0(beta/deprecated 除外)。 - 审
catalog.json:description长度 <80 或 >600 的标黄;含「各种 / 等等 / 相关」这类泛化词的标出。 - 第三方技能(arkcli 等)有变动时,评估是否影响团队技能;跑一次
./scripts/scan-installed.sh。 - 跑
./scripts/monthly-review.sh一次出齐:覆盖率、本仓库扫描、第三方扫描、catalog 一致性、description 异常项。
每季度首月 1 日 10:30 — 治理复核
- 人工过一遍
docs/skill-routing.md:删掉不再用的引用、补上新技能。 - 清理
deprecated:满 3 个月且无回滚需求 → 删除插件目录。 - 复核分桶与调用模式:还有没有命令型技能占着
model-invoked。 - 复核覆盖率:
--coverage的两项缺口是否按路线图收敛。 - 更新本文件与
CHANGELOG.md。
定时任务(launchd,2026-11-01 起)
节拍不再挂在「会话提醒」上(会话一断就失效),改成宿主级 launchd:
./scripts/install-schedulers.sh # 安装(幂等;换机器重跑一次即可复现)
./scripts/install-schedulers.sh --status # 看状态与最近产出
./scripts/install-schedulers.sh --run daily # 立刻跑一次(调试)
./scripts/install-schedulers.sh --uninstall
| 任务 | 时间 | 脚本做什么 | 产出 |
|---|---|---|---|
daily |
每天 07:20 | 漂移 audit + 入库安全扫描 + 覆盖率 | reports/skill-health/daily-YYYY-MM-DD.md(latest.md 供 7:30 日报直接读) |
weekly |
每周一 10:00 | 算上周改动技能 + 3 个高风险项,生成 evals 抽样队列 | reports/evals/queue-YYYY-MM-DD.md |
monthly |
每月 1 日 10:00 | 一条命令跑完月度审阅;1/4/7/10 月附季度治理清单 | reports/monthly/review-YYYY-MM.md、quarterly-YYYY-Qn.md |
边界:脚本只做确定性动作。真跑 evals、审阅 routing 这类需要模型判断的部分,脚本只生成队列文件,由项目经理 Bot 在 7:30 日报里接手执行——分工不写在脚本里就会漏。
日志:reports/_scheduler/<job>.log。
责任分工
- 项目经理 Bot:执行节奏、出周/月报、盯漂移与门禁。
- 改技能的 agent:负责门禁四件套与路由回改。
- 人工拍板项:废弃技能、路由变更、
promoted晋升。