← ClaudeAtlas

night-looplisted

Unattended overnight research iteration - runs bounded experiment/tuning loops with objective machine-checkable stop conditions, safety rules, per-iteration logging, and a morning report, while explicitly excluding verdict-bearing decisions from automation. Use when the user asks to run experiments overnight, keep iterating unattended, sweep parameters while away, or set up an autonomous research loop.
wookat/ai-research-skills · ★ 2 · AI & Automation · score 58
Install: claude install-skill wookat/ai-research-skills
# Night Loop(无人值守夜跑循环) 完整红线见 `shared-references/research-integrity.md`。 "睡觉时做科研"的安全实现:**只自动化有客观停止条件的工作**,裁决类决策留给 早晨的人。提炼自 ARIS 的 auto-review-loop / dse-loop 机制与其安全教训。 ## 允许 / 禁止自动循环的边界 **允许(Type-A,机器可判停止条件)**: - 实验队列执行:baseline 复现、消融矩阵、种子重复、超参 sweep - 目标导向调优:指标达到阈值 / 收敛 / 预算耗尽即停 - 论文编译修错、图表批量重绘、引用格式统一 **禁止(Type-B,裁决类——夜跑只准备材料,不做决定)**: - 立项/放弃/pivot 判断、投稿决定(决策卡是人的) - 评审打分循环(见 cross-model-review:按时钟重评 = 自我开脱) - 因结果不好而改指标、换数据集、换切分(实验纪律红线,夜里也不例外) ## 循环参数(启动前写入 night_plan.md,人确认后开跑) | 参数 | 默认 | 说明 | |---|---|---| | TIMEOUT | 8h | 总时钟预算 | | MAX_ITERATIONS | 30 | 评估的配置/实验数上限 | | PATIENCE | 8 | 连续无改进即早停 | | OBJECTIVE | 领域模块指标 | 必须机器可判(如 val MSE) | ## 启动前 preflight(硬性检查,任一不过即不开跑) 1. `night_plan.md` 存在且含全部循环参数(TIMEOUT/MAX_ITERATIONS/PATIENCE/OBJECTIVE) 与人类确认记录(谁、何时确认)。 2. git 工作树干净(`git status --porcelain` 为空),或脏文件已列入 night_plan 的 已知例外清单——夜跑绝不能在未提交的手工改动上叠加自动改动。 3. 写入目录白名单已在 night_plan 中列出(如 `night_runs/`、`checkpoints/`、 实验输出目录);循环内一切写操作只落白名单内。 4. 磁盘/显存余量满足预算;不足则缩减计划并在 night_plan 标注。 ## 安全铁律 - 禁止:`sudo`、递归删除、删除非本会话创建的文件、覆盖未读过的源文件、 任何 git push/reset、杀死非本会话启动的进程。需要其中任何一项 → 停止并留言。 - **明示边界**:以上禁令是对 agent 的行为约定,不是操作系统级 sandbox——本 skill 不提供技术性隔离。若需要硬隔离(容器、只读挂载、受限用户),由人类在启动前 自行配置,并把配置记入 night_plan.md;不要向用户暗示禁令具有技术强制力。 - 每次迭代前检查磁盘/显存余量;资源不足优雅收尾而不是崩掉半夜的队列。 - 崩溃可恢复:迭代状态落盘(`night_runs/<日期>/state.json`),重启后从断点续跑。 ## 每迭代日志(night_runs/<日期>/iteration_log.md) `迭代号 | 改动的唯一变量 | 预期 | 实际指标 | 判定(改进/退化/持平)| 下一步依据`。 一次只改一个变量的纪律在无人值守时同样生效。 ## 晨报(morning_report.md,人醒来后 5 分钟能读完) 1.