mcpField
R
ralph-wiggum

ralph-wiggum

github.com/fstandhartingerAgent 工作流3111.4k 次安装24 周前更新
代码仓库

关于 ralph-wiggum

ralph-wiggum 是面向多项可测试任务的规格驱动自主编码 Skill。每轮都会启动全新的 Agent 进程,并通过测试和验收标准推动任务完成。

主要功能

  1. 01每轮使用全新 Agent 上下文
  2. 02按规格选择任务
  3. 03通过测试和 Lint 施加约束
  4. 04构建与规划模式
  5. 05记录会话及迭代日志

适用场景

  1. 01实现多项功能规格
  2. 02执行长时间自主编码
  3. 03验证验收标准和测试

安装

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

$npx skills add https://github.com/fstandhartinger/ralph-wiggum --skill ralph-wiggum

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

详细介绍

Ralph Wiggum

通过规范驱动开发实现自主 AI 编码

什么是 Ralph Wiggum?

Ralph Wiggum 将 Geoffrey Huntley 的迭代式 bash 循环与规范驱动开发相结合,实现完全自主的 AI 辅助软件开发。

关键在于:每次迭代都使用全新上下文。每次循环都会启动新的 Agent 进程,并使用干净的上下文窗口,从而避免上下文溢出和性能下降。

何时使用此技能

符合以下情况时,请使用 Ralph Wiggum:

  • 你需要实现多个规范或功能
  • 你希望 AI 自主完成各项任务
  • 你需要一致、可验证地完成验收标准
  • 你希望避免长时间会话中的上下文窗口问题

工作原理

┌─────────────────────────────────────────────────────────────┐
│                     RALPH LOOP                              │
├─────────────────────────────────────────────────────────────┤
│  Loop 1: Pick spec A → Implement → Test → Commit → DONE    │
│  Loop 2: Pick spec B → Implement → Test → Commit → DONE    │
│  Loop 3: Pick spec C → Implement → Test → Commit → DONE    │
│  ...                                                        │
│                                                             │
│  Each iteration = Fresh context window                      │
│  Shared state = Files on disk (specs, plan, history)        │
└─────────────────────────────────────────────────────────────┘

安装

快速安装(通过技能安装器)
# Using Vercel's add-skill
npx add-skill fstandhartinger/ralph-wiggum

# Using OpenSkills
openskills install fstandhartinger/ralph-wiggum
完整设置(推荐)

如需完整设置 Ralph Wiggum,包括章程和访谈:

# Tell your AI agent:
"Set up Ralph Wiggum using https://github.com/fstandhartinger/ralph-wiggum"

Agent 会引导你完成一套轻松愉快的简易设置:

  1. 快速设置(约 1 分钟)——创建目录、下载脚本
  2. 项目访谈——聚焦于你的愿景和目标(而非技术细节)
  3. 章程——创建一份适用于所有会话的指导文档
  4. 后续步骤——清晰指导你创建规范并启动 Ralph

对于现有项目,Agent 会自动检测技术栈。访谈会优先了解你正在构建什么,以及为什么要构建。

核心概念

1. 每次循环都使用全新上下文

Ralph 循环的每次迭代都会启动一个新的 AI Agent 进程。这意味着:

  • 不会发生上下文窗口溢出
  • 不会随着时间推移而性能下降
  • 每项任务都从干净的状态开始
2. 在磁盘上共享状态

状态通过文件在循环之间持久保存:

  • specs/ — 包含验收标准的功能规范
  • ralph_history.txt — 记录突破、阻碍和经验
  • IMPLEMENTATION_PLAN.md — 可选的详细任务拆分
3. 完成信号

只有在以下条件均满足时,Agent 才会输出 <promise>DONE</promise>:

  • 已验证所有验收标准
  • 测试通过
  • 更改已提交并推送

bash 循环会检查此短语。如果未找到,则会重试。

4. 通过测试施加反向压力

测试、代码检查和构建充当护栏。Agent 必须先修复问题,然后才能输出完成信号。

使用方法

创建规范

成功的关键:每份规范都需要有清晰、可测试的验收标准。Ralph 会依据这些标准判断任务是否真正“完成”。

# Feature: User Authentication

## Requirements
- OAuth login with Google
- Session management
- Logout functionality

## Acceptance Criteria
- [ ] User can log in with Google
- [ ] Session persists across page reloads
- [ ] User can log out
- [ ] Tests pass

**Output when complete:** `<promise>DONE</promise>`

好的标准:“用户可以使用 Google 登录,且会话可以持久保存” 不好的标准:“身份验证可以正常工作”

验收标准越具体,Ralph 的表现就越好。

运行循环
# Start building (Claude Code)
./scripts/ralph-loop.sh

# With max iterations
./scripts/ralph-loop.sh 20

# Using Codex CLI
./scripts/ralph-loop-codex.sh
日志(捕获所有输出)

每次循环运行都会将所有输出写入 logs/ 中的日志文件:

  • 会话日志:logs/ralph_*_session_YYYYMMDD_HHMMSS.log(完整运行记录,包括 CLI 输出)
  • 迭代日志:logs/ralph_*_iter_N_YYYYMMDD_HHMMSS.log(每次迭代的 CLI 输出)
  • Codex 最后一条消息:logs/ralph_codex_output_iter_N_*.txt

两种模式

模式用途命令
build(默认)选择规范、实现、测试、提交./scripts/ralph-loop.sh
plan(可选)创建详细的任务拆分./scripts/ralph-loop.sh plan

核心原则

放手让 Ralph 自主发挥

相信 AI 能够自我识别、自我纠正和自我改进。观察模式并调整提示词。

YOLO 模式

要让 Ralph 有效运行,请启用完全自主模式:

  • Claude Code:--dangerously-skip-permissions
  • Codex:--dangerously-bypass-approvals-and-sandbox

⚠️ **使用风险自负。**仅限在沙盒环境中使用。

链接

评论

支持 Markdown