用途:干净地终止一个自我修订循环(autoloop)。它会向 LOOP_CONTRACT.md 追加 ## DONE 段(含 ISO 8601 UTC 时间戳、当前迭代号、停止原因、用户备注与最终状态摘要),发送 PushNotification 汇总最终状态,并停止调度新的唤醒;下一次 /loop 触发看到 DONE 标记后直接退出。
主要能力与用法:可选位置参数为停止原因字符串,默认 "user-requested stop";可选 --keep-forensics 标志用于在停止后保留状态目录(默认会创建清理 tarball 并 rm -rf 状态目录)。流程包括:定位契约(CONTRACT_PATH 默认 ./LOOP_CONTRACT.md,若不存在则提示无需停止;多个契约时用 AskUserQuestion 选择);确认停止原因(研究饱和、目标达成、用户请求、外部依赖阻塞);追加 DONE 段;通过 ToolSearch 加载 PushNotification 并发送不超过 200 字符的通知;source launchd-lib.sh 与 state-lib.sh,派生 loop_id 与 state_dir,卸载 plist(幂等,非 macOS 为空操作);source registry-lib.sh 注销机器注册表条目;调用 cleanup_state_dir 归档并删除状态目录(拒绝操作 $HOME 之外路径,tarball 失败非致命);更新 frontmatter 的 exit_condition 加入 DONE;最后打印建议的 git add/commit 命令。
限制与注意:本技能不执行 kill -9 等进程终止,仅向循环发信号;Revision Log 只追加,不重写;用户最近 60 秒内活跃时不应发送 PushNotification。若 DONE 段已存在则视为已停止;若 DONE 后仍触发,需检查指针触发配置。PushNotification 未加载时先用 ToolSearch 查询 select:PushNotification。该技能为自我进化型,遇到可复现问题应直接修正本文件。