| name | autonomous-loop-zh |
| description | 收到需要多轮 实现→验证→修正 的研究/编码/数据处理任务、且希望 AI 自主闭环不在每一步等确认时使用。触发信号——任务里写"跑完 + 分析 + 出报告"、"把 X 全部做掉"、"迭代直到完成";或者你不用这个 skill 时会在每个步骤之间停下来问"这是你要的吗"。 |
| argument-hint | ["任务描述"] |
| allowed-tools | Read, Grep, Glob, Bash, Edit, Write, Agent, TodoWrite |
| effort | high |
自主闭环迭代 Skill
收到任务后,AI 自主完成完整的闭环迭代,不在每个步骤等待人类确认。
执行流程
① 理解任务 → ② 核对现状 → ③ 制定方案 → ④ 实现
↓ ↓
⑧ 交付报告 ← ⑦ 更新文档 ← ⑥ 修正 ← ⑤ 自验证
↑ │
└── 不通过 ──┘
Step 1: 理解任务
- 明确用户目标和边界(做什么 + 不做什么)
- 用 TodoWrite 创建任务分解
Step 2: 核对现状(最重要,不可跳过)
在写代码或做结论之前:
- 读源码确认数据格式和接口——不猜测
- 检查实际文件(配置、checkpoint、输出)——不依赖记忆或压缩摘要
- 检查资源(GPU 可用性、磁盘空间、运行中的进程)
- 查看相关历史(Memory、Discussion 中的教训)
Step 3: 制定方案
- 优先参考现有代码——"代码库已有的做法"优于"自创方案"
- 对齐项目约定(目录结构、命名、配置格式)
- 标注风险点和验证方法
Step 4: 实现
- 只在指定工作区目录下写文件
- 每次代码修改后,列出所有改动的文件和行号
- 不执行
rm 等删除操作——用 mv 移到 trash/
- 所有非平凡命令必须落盘可复现:
- Python → 存到
claude_workspace/scripts/<snake_case>.py(不用长 python -c 内联)
- Shell 流水线 → 存到
claude_workspace/shell/<snake_case>.sh(#!/bin/bash、set -e)
- 在
claude_workspace/shell/RUN_LOG.md 追加简短一段:目标 / 命令 / 问题 / 解决 / 输出
- 豁免:只读一行命令(
ls、git status、grep、find、rtk meta)
Step 5: 自验证(关键差异点)
不等人类验证,AI 自行完成:
| # | 检查项 | 方法 |
|---|
| 1 | 维度一致性 | 打印 shape,对比源码预期 |
| 2 | 数值合理性 | 检查 NaN/Inf,对比 baseline 范围 |
| 3 | 文件完整性 | 确认输出文件数量、大小 |
| 4 | 指标合理性 | 与已有实验结果对比,偏差过大需分析 |
| 5 | 配置一致性 | 路径、参数是否指向正确目标 |
| 6 | 命名和位置 | 符合项目目录和命名约定 |
Step 6: 修正
- 自验证发现问题 → 自行诊断根因 → 修复 → 回到 Step 5
- 记录问题和修复过程
Step 7: 更新文档
- 追加 Discussion.md(新问题/发现)
- 更新实验总览等追踪文档
- 同步 Memory 备份
Step 8: 交付
- 报告保存到正确位置,命名符合规范
- TodoWrite 标记完成
- 向用户简要汇报:结论 + 关键数字 + 文件位置
常见失败模式(带修法)
整合自项目里反复踩过的协同失败。原则、应该做、不应该做、跑歪时的症状放一张表里:
| 原则 | 应该做 | 不应该做 | 跑歪时的症状 |
|---|
| 不猜测 | 读 dataloader/源码确认格式 | 从变量名推测数据布局 | 维度错、key error、全零输出 |
| 不用旧状态 | 写报告前 ls / cat 实际文件 | 信任压缩上下文摘要 | 报告与磁盘实际矛盾 |
| 照着现有代码来 | 分析代码库已有的类似方案 | 从零设计新方案 | 过度设计、与项目惯例脱节 |
| 处理数据边界 | 检查零值、NaN、缺失文件 | 假设数据干净 | NaN 静默传播、loss 爆炸、除零 |
| 验证路径 | ls 实际目录,检查嵌套 | 假设配置里的路径是扁平的 | 跑到一半 FileNotFoundError |
| 不删除 | mv 到 trash/ | rm 或 rm -rf | 工作丢失,不可逆 |
| 边做边记 | 每个重要步骤后更新文档 | 全部攒到最后再写 | 回看时缺关键上下文 |
| 同步持久化 | 写完 memory 立即 rsync | 想着"等会儿一起" | 备份过期,需要时缺失 |
| 命令落盘 | Python 存 scripts/、Shell 存 shell/,写 RUN_LOG(目标/命令/问题/解决/输出) | 长 python -c 内联或一次性 bash | 无法复现,教训丢失 |
| 检查资源占用 | 调试性能前先 nvidia-smi / ps aux --sort=-%cpu | 假设 GPU 是空的 | 流水线慢 100 倍但无报错 |
警示信号 — 立刻停下回到 loop
发现自己在做下面任何一件,说明已经偏离 loop 了。停下,修,再验证:
- "信 README/context 摘要就行,不用再核实" → 跳过了 Step 2
- "我凭印象把这个实验报告写了吧" → 跳过了 Step 5
- "随手
rm 清一下" → 违反不删除规则
- "顺手
python -c '...' 跑一下,不用存了" → 违反命令落盘规则
- "改动很小,跳过 smoke 测试" → 跳过了 Step 5
- "慢就慢吧,再等等"但没看
nvidia-smi → 跳过了资源占用检查
- "Discussion.md 最后再补"但任务已积累 5+ 处发现 → 跳过了边做边记
- "Memory 改了之后统一同步" → 跳过了同步持久化
- 连续 3 条 Bash 命令但没读过任何源码 → 违反"不猜测"
仍需请示人类的场景
- 方向决策 — 选择不同实验设计或消融变量
- 不可逆操作 — push 代码、修改工作区外的文件
- 大量资源 — 启动长时训练(需确认 GPU 分配)
- 模糊取舍 — 多个方案各有优劣,需人类判断
- 全新问题 — 没有历史教训可参考
使用示例
/autonomous-loop-zh 运行最新 checkpoint 测试,后处理,生成报告
/autonomous-loop-zh 对比两个版本的 per-joint 误差
/autonomous-loop-zh 清理过期 cache 和中间 checkpoint
/autonomous-loop-zh 为新实验变体准备数据集