用途
Ralph Loop 是一个技能,用于引导 OpenClaw 智能体执行 Ralph Wiggum 循环。它让智能体使用 exec 和 process 工具来编排 AI 编程智能体的会话,遵循 Ralph playbook 的流程。该技能生成的是供 OpenClaw 智能体执行的指令,用户不直接运行这些脚本,而是由智能体利用其工具能力执行。
主要能力
技能覆盖的流程包括:
- 定义需求 → JTBD → 聚焦主题 → 生成 specs/*.md
- PLANNING 循环:创建或更新 IMPLEMENTATION_PLAN.md,不进行代码实现
- BUILDING 循环:实现任务、运行测试(backpressure)、更新计划、提交
- 通过 PROMPT.md 与 AGENTS.md(每轮迭代加载)以及磁盘上的计划与规格文件持久化上下文
智能体可编排的编程智能体 CLI 包括 OpenCode、Codex、Claude Code、Pi、Goose,以及文件型的 aider 和自定义脚本。其中交互式 CLI 需要真实终端(TTY),否则可能挂起。
使用方式
技能说明智能体使用 exec 工具启动编程智能体,关键参数包括:command、workdir、background: true、pty: true、yieldMs、timeout。随后从响应中捕获 session ID,再使用 process 工具进行监控(action: "poll" 轮询、action: "log" 查看最近输出、action: "kill" 终止会话)。完成检测通过读取 IMPLEMENTATION_PLAN.md 中的哨兵文本实现,可用正则匹配多种变体,例如 grep -Eq "STATUS:?\s*(PLANNING_)?COMPLETE" IMPLEMENTATION_PLAN.md。
智能体工作流包括:收集输入(目标/JTBD、CLI、模式、最大迭代次数等,以及可选哨兵、工作目录、超时、沙箱、自动批准标志);需求转规格(可选);编写 PROMPT.md 与 AGENTS.md;使用 PLANNING 与 BUILDING 提示模板;根据 CLI 命令参考构造命令字符串。默认最大迭代次数 PLANNING=5、BUILDING=10,默认完成哨兵为 IMPLEMENTATION_PLAN.md 中的 STATUS: COMPLETE。
命令字符串模式示例:
- OpenCode:opencode run --model <MODEL> "$(cat PROMPT.md)"
- Codex:codex exec <FLAGS> "$(cat PROMPT.md)"(需要 git)
- Claude Code:claude <FLAGS> "$(cat PROMPT.md)"
- Pi:pi --provider <PROVIDER> --model <MODEL> -p "$(cat PROMPT.md)"
- Goose:goose run "$(cat PROMPT.md)"
常见标志:Codex 的 --full-auto、--yolo、--model <model>;Claude 的 --dangerously-skip-permissions。
PLANNING 提示要求只更新 IMPLEMENTATION_PLAN.md,不实现、不提交,创建优先级任务列表,不明确时写出问题,完成时添加 STATUS: PLANNING_COMPLETE。BUILDING 提示要求选取最重要任务、调查代码、实现、运行 AGENTS.md 中的 backpressure 命令、更新计划、更新 AGENTS.md 记录经验、提交,完成时添加 STATUS: COMPLETE。
适用场景
适用于希望让 AI 编程智能体按照结构化计划循环推进开发任务的场景,覆盖规划与构建两个阶段,可支持交互式 CLI 与文件型工具。
限制与安全
- 交互式 CLI 必须使用 exec 工具配合 pty: true,否则可能挂起。
- 自动批准标志具有风险:Codex 的 --full-auto 与 --yolo,Claude 的 --dangerously-skip-permissions。建议使用沙箱(docker/e2b/fly)并限制凭据。
- 逃生手段包括停止(Ctrl+C)、终止会话(process 工具的 kill)、回滚(git reset --hard HEAD~N)。
- 当 CLI 在交互式列表内时,应使用 pty: true;需从 CLI 要求中提取 model 标志。
- 常见问题:OpenCode 挂起(确保使用 pty: true)、会话无法启动(检查 CLI 路径、git 仓库、命令语法)、完成未检测到(验证哨兵格式)、进程超时(增加超时或简化任务)、并行冲突(使用 git worktrees 隔离)、看不到进度(使用 process 工具的 log 动作)。
- 本技能基于 @jordyvandomselaar 的原始 Ralph Loop 概念与工作流设计,以及 @steipete 的编程智能体模式与带 pty 支持的 exec/process 工具用法。许可证为 MIT。
暂未提供
关于该技能的具体收费、价格、平台支持细节未在资料中提供。