跳转到内容

取消任务 (Cancel)

OMC 框架的紧急停止器 - 你的安全网

Cancel 是 OMC 框架的安全保障机制,让你可以安全地停止正在运行的任务。

  • ❌ 任务跑偏了但停不下来
  • ❌ Ctrl+C 后丢失所有进度
  • ❌ 强制停止后环境混乱
  • ✅ 自动保存进度
  • ✅ 清理临时文件
  • ✅ 保留工作上下文
  • ✅ 可恢复状态

基本命令

Terminal window
/cancel # 取消当前任务

特点

  • 安全停止
  • 保存进度
  • 清理资源
Terminal window
/cancel --force # 强制取消

警告:可能丢失未保存的数据

Terminal window
/cancel --save # 保存进度后取消

建议:尽量使用这个选项

状态说明
Saving正在保存进度
Cleaning正在清理资源
Stopped已安全停止
Error取消过程中出错
正在: ralph 实现一个复杂功能
发现: 理解错了需求,方向完全不对
操作: /cancel
结果:
- 保存当前代码
- 记录已完成的步骤
- 停止执行
- 保留工作上下文
下一步: 重新规划,用 plan
正在: autopilot 执行大型重构
突发: 生产环境出现紧急问题
操作: /cancel --save
结果:
- 保存重构进度
- 记录已完成的部分
- 停止重构
下一步: 处理紧急问题 → 回来继续重构
正在: ultraqa 运行完整测试
发现: 某个测试一直失败,阻塞后续
操作: /cancel
结果:
- 停止测试
- 保存测试日志
- 保留进度
下一步: 修复测试问题 → 继续
正在: 做其他事情
误操作: 启动了 autopilot
发现: 不是想要的任务
操作: /cancel
结果: 安全停止,没有影响

Cancel 可以停止这些正在运行的任务:

技能可取消说明
Autopilot停止整个多任务流程
Ralph停止单个任务
Team停止团队协作
Plan停止规划
graph TD
  A[收到取消请求] --> B{检查状态}
  B -->|有进度| C[保存进度]
  B -->|无进度| D[直接清理]
  C --> E[清理临时文件]
  D --> E
  E --> F[停止任务]
  F --> G[报告完成]

Cancel 会检查:

  • 已修改的文件
  • 生成的输出
  • 执行的命令

保存内容:

  • 文件修改
  • 执行进度
  • 状态信息

清理内容:

  • 临时文件
  • 测试数据
  • 中间产物
  1. 优先使用 /cancel

    ❌ Ctrl+C (会丢失上下文)
    ✅ /cancel (安全停止)
  2. 使用 —save 选项

    /cancel --save (推荐)
  3. 确认状态

    /cancel 后检查状态
    confirm: Task stopped safely
  4. 记录原因

    /cancel
    reason: "需求理解错误,需要重新规划"
  1. 不要用 Ctrl+C

    ❌ 在终端 Ctrl+C
    ✅ 使用 /cancel 命令
  2. 不要轻易用 —force

    ❌ /cancel --force (危险)
    ✅ /cancel (正常)
    ✅ /cancel --save (推荐)
  3. 不要在关键步骤取消

    ❌ 正在写入数据库时取消
    ✅ 等待当前步骤完成
  4. 不要忽略错误状态

    ❌ cancel 报错后不管
    ✅ 检查错误原因

Q: 取消后进度会丢失吗? A: 不会,Cancel 会自动保存已修改的文件。

Q: 可以恢复取消的任务吗? A: 可以通过保存的进度恢复,但不是自动的。

Q: cancel 和 stop 有什么区别? A: cancel 是 OMC 框架的命令,会处理进度;stop 是底层行为。

Q: 任务取消后可以重新开始吗? A: 可以,用相同参数重新启动即可。


继续学习: 学习路径 | 自动驾驶 (Autopilot)