大家好,我是何三,独立开发者

近 2 万 Star 的一个项目,GitHub 上最近炸了。叫 Ralph,一个让你写完需求文档就去睡觉、AI 自己写到天亮的东西。

你可能会说,这不就是 Cursor 吗?不就是 Copilot 吗?不不不,完全不是一回事。

Cursor 和 Copilot 是"你敲键盘,它帮你补"。Ralph 是你下班了,它替你加班

ralph_cover

Ralph 到底干了什么

Ralph 的核心思路特别简单粗暴:写一份 PRD(产品需求文档),然后跑一个脚本,AI 就会自动循环执行——读需求、写代码、跑测试、提交,一直循环到所有需求全部完成。

你可以这么理解:Claude Code 和 Amp 这些 AI 编程工具,本质上是单次对话。你问一句,它写一段。你要写一个完整功能,得来回对话十几次。

Ralph 把这个过程自动化了。

一个 shell 脚本,不断启动全新的 AI 实例,每次只做一件事。做完就提交,然后读下一个任务,继续做。中间不需要你参与任何事。

说人话就是:你给它一份待办清单,它自己一条一条地干活,干完一条划掉一条,直到全部干完才停。

说实话,这个东西刚出来的时候我也觉得有点离谱——但想想看,这不就是每一个产品经理梦寐以求的吗?需求写好,第二天早上起来代码就写完了。

不过别高兴太早,也有坑。后面聊。

核心原理:每次都是"全新大脑"

Ralph 最聪明的地方,是它每次迭代都用一个全新的 AI 实例

这个设计,怎么说呢,就是那种——你乍一看觉得"这不是浪费吗",细想才发现"卧槽这才是正确的"。

传统 AI 编程助手的问题是上下文越聊越长,到后面就开始"忘事"、胡编乱造。Ralph 直接把这个痛点干掉了:每次都是一个全新的上下文窗口,干干净净,没有历史包袱。

那记忆怎么办?三个东西接力:

  • Git 历史:每次提交的代码就是"记忆",下一个 AI 实例会看到完整的项目代码
  • progress.txt:一个追加写入的学习笔记,记录了前面迭代踩过的坑
  • prd.json:任务清单,哪个完成了、哪个没完成,一目了然

跟人类团队协作其实是一个逻辑——你入职一个项目,不需要知道前面每个程序员每天吃了什么,你只需要看代码、看文档、看 Jira 上的任务状态就行了。Ralph 把这三个东西做好了,AI 的"入职"就足够高效。

ralph_flowchart

这里要插一句题外话——去年看到 Devin 发布的时候我就觉得"AI 独立程序员"的概念迟早会落地,但 Devin 的问题是你得租它的服务,封闭生态。Ralph 这个方案开源、免费,你用自己的 Claude Code 或 Amp 就能跑,这才是真正能大规模普及的路径。Devin 像是给大公司做的外包 AI,Ralph 才是给独立开发者的"深夜加班替身"。

怎么用

前置条件很简单:装一个 AI 编程工具(Amp 或 Claude Code),然后有 jq 命令行工具。

安装就一行命令拷贝文件:

# 从你的项目根目录执行
mkdir -p scripts/ralph
cp /path/to/ralph/ralph.sh scripts/ralph/
cp /path/to/ralph/prompt.md scripts/ralph/prompt.md
chmod +x scripts/ralph/ralph.sh

然后三步走:

第一步,写 PRD。用自带的 skill 生成需求文档:

Load the prd skill and create a PRD for [你的功能描述]

第二步,把 PRD 转成 JSON 格式:

Load the ralph skill and convert tasks/prd-xxx.md to prd.json

第三步,跑:

# 用 Amp(默认)
./scripts/ralph/ralph.sh

# 用 Claude Code
./scripts/ralph/ralph.sh --tool claude

# 指定最大迭代次数
./scripts/ralph/ralph.sh 20

然后就等着吧。你可以去睡觉了。

不过有个坑我得说清楚:PRD 里每个任务不能太大

比如"搭建整个用户认证系统"这种——太大了,AI 在一个上下文窗口里根本写不完,写到一半就崩了。正确做法是拆成小任务:建个数据库表、写个注册接口、加个登录页面,一个一个来。

说白了,AI 程序员现在就像一个很聪明但健忘的新人。你不能给他派一个大活儿让他自己搞定,得给他拆成一个个明确的小任务,每完成一个就验收一个。

这点我在自己的项目上试过。拆得够细的话,效果确实惊人;拆得太粗的话,写出来的代码基本上是半成品。

关键文件一览

文件 干啥的
ralph.sh 主循环脚本,启动 AI 实例
prompt.md / CLAUDE.md 给 AI 的提示词模板
prd.json 任务清单,带完成状态
progress.txt 迭代间共享的学习笔记
AGENTS.md 代码规范和踩坑记录,自动更新

AGENTS.md 这个东西挺有意思的。每次迭代结束,Ralph 会把学到的东西写进去——比如"这个项目用 X 库做 Y"、"改 Z 的时候别忘了同步更新 W"。下一个 AI 实例启动时自动读取,等于把前人经验传承下去了。

为什么这么设计?别问我,问作者去。但我觉得这个思路确实聪明——它把"团队知识积累"这个人类协作中最难自动化的部分,用一个简单的文本文件解决了。

同类工具链与延伸阅读

如果你对 AI 编程这个方向感兴趣,我还写过几篇相关的:

  • Claude Code 是 Ralph 底层依赖的 AI 编程工具,Anthropic 出的,命令行里的 AI 程序员,如果你还没用过,强烈建议先装一个试试
  • Amp(ampcode.com)是另一个选择,Ralph 默认用它,支持自动上下文交接,适合大任务
  • Cursor 是目前最火的 AI IDE,但它是"辅助编程"思路,跟 Ralph 的"自主编程"思路不一样

总结

Ralph 不是什么魔法,它本质上是把 AI 编程的"手动循环"变成了"自动循环"。

核心价值就两个:一是不用人盯着,写完需求就下班;二是上下文隔离,每次迭代都是全新大脑,不容易出乱码。

但前提是:你的 PRD 得写得够细、任务拆得够小。要是连需求都写不清楚,AI 也没法替你变魔术。

独立开发者可以拿它来做一些重复性的 CRUD 开发,把时间省出来做更重要的产品决策。大团队的话,拿来跑一些内部工具的开发也挺合适。

反正闲着也是闲着,装一个跑跑看又不会亏。


本文使用 MGO 编辑并发布

关注"何三笔记",回复"mgo" 免费下载使用