name: ralph-opencode-free-loop
description: 使用 OpenCode Zen 免费模型与自动回退机制,运行一个自主的 Open Ralph Wiggum 编码循环。
metadata:
{
"openclaw":
{
"emoji": "🔁",
"homepage": "https://github.com/Th0rgal/open-ralph-wiggum",
"requires": { "bins": ["opencode", "ralph", "git"] },
},
}
user-invocable: true
本技能使用 ralph CLI,以 OpenCode 作为智能体提供方,运行一个自主的 Ralph Wiggum 编码循环。
它会重复执行相同的编码提示,直到满足以下任一条件:
- 达到成功标准,或
- 打印出完成承诺,或
- 达到最大迭代次数
该循环针对 免费的 OpenCode Zen 模型 进行了优化,并包含一个回退链,以防模型被限速、禁用或移除。
当你需要进行自主编码执行时,可使用此技能,例如:
- 修复失败的测试
- 实现限定范围的功能
- 重构代码库
- 解决 lint/类型错误
- 运行构建修复循环
- 多轮迭代调试
注意:运行 Ralph 前,必须位于一个 git 仓库内。
始终按以下顺序尝试模型:
1. opencode/kimi-k2.5-free ← 最佳编码性能(限时免费)
2. opencode/minimax-m2.1-free
3. opencode/glm-4.7-free
4. opencode/big-pickle ← 免费备用模型
如果某个模型因可用性或配额问题失败,请立即使用下一个模型重试,无需更改提示或循环参数。
若遇到以下错误,则触发回退:
- 模型被禁用
- 模型未找到
- 配额不足
- 配额超限
- 需要付费
- 速率限制
- 服务提供商不可用
运行:
ralph "<任务提示>
成功标准:
- <列出可验证的检查项>
- 构建通过
- 测试通过
完成承诺:
<promise>COMPLETE</promise>" \
--agent opencode \
--model opencode/kimi-k2.5-free \
--completion-promise "COMPLETE" \
--max-iterations 20
如果尝试 #1 因模型问题失败,使用以下参数重新运行:
--model opencode/minimax-m2.1-free
如果尝试 #2 失败:
--model opencode/glm-4.7-free
如果尝试 #3 失败:
--model opencode/big-pickle
对于多步骤执行:
ralph "<大型任务提示>" \
--agent opencode \
--model opencode/kimi-k2.5-free \
--tasks \
--max-iterations 50
回退模型顺序依然适用。
如果 OpenCode 插件干扰循环执行,请使用以下参数重新运行:
--no-plugins
如果免费模型可用性发生变化,请查看:
https://opencode.ai/zen/v1/models
必要时更新回退顺序。
修复失败的 TypeScript 错误:
ralph "修复仓库中的所有 TypeScript 错误。
成功标准:
- tsc 通过
- 构建成功
完成承诺:
<promise>COMPLETE</promise>" \
--agent opencode \
--model opencode/kimi-k2.5-free \
--completion-promise "COMPLETE" \
--max-iterations 20