mcpField
R
ralph-loop

ralph-loop

github.com/potetoAgent 工作流12951 次安装21 周前更新
代码仓库

关于 ralph-loop

ralph-loop 是用于启动迭代开发循环的技能,每轮结束后 Agent 都会收到相同的任务提示词。它记录循环状态,并支持设置迭代上限和可选的完成承诺。

主要功能

  1. 01创建循环状态文件
  2. 02设置迭代上限
  3. 03设置可选的完成承诺
  4. 04每轮结束后重新发送任务提示词

适用场景

  1. 01让 Agent 多轮迭代处理任务
  2. 02为迭代工作设置安全上限

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/poteto/plugins --skill ralph-loop

安装后在 Claude Code 中输入/ralph-loop确认已加载。

详细介绍

Ralph Loop

触发条件

用户想要启动 Ralph loop。这是一种迭代开发循环,每轮结束后都会再次输入同一条提示词,且 Agent 每次迭代都能看到自己之前的工作。

工作流

  1. 收集用户的任务提示词和可选参数:

    • max_iterations(数字,默认值为 0,表示不限制)
    • completion_promise(文本;如果未设置,则为 "null")
  2. 如果目录 .cursor/ralph/ 不存在,则创建该目录,然后按照以下精确格式在 .cursor/ralph/scratchpad.md 写入状态文件:

    ---
    iteration: 1
    max_iterations: <N or 0>
    completion_promise: "<TEXT>" or null
    ---
    
    <the user's task prompt goes here>
    

    示例:

    ---
    iteration: 1
    max_iterations: 20
    completion_promise: "COMPLETE"
    ---
    
    Build a REST API for todos with CRUD operations, input validation, and tests.
    
  3. 向用户确认 Ralph loop 已启动,然后开始处理任务。

  4. 停止钩子会自动拦截每轮结束,并将同一条提示词作为后续消息再次发送。你会看到消息前缀为 [Ralph loop iteration N.]。

防护措施

  • 如果设置了完成承诺,只有当其陈述完全属实且确实如此时,才能输出 <promise>TEXT</promise>。
  • 不要输出虚假的承诺来逃避循环。
  • 始终建议将 max_iterations 设为安全上限。
  • 如果 completion_promise 值包含特殊字符,请在 YAML 前置内容中为其加上引号。

输出

确认循环已启动(包括提示词、迭代次数上限,以及设置了的话完成承诺),然后立即开始处理任务。

评论

支持 Markdown