Files
monisuo/.agents/skills/ralph-loop/SKILL.md
2026-03-23 00:08:19 +08:00

161 lines
3.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
name: ralph-loop
description: Ralph Loop 自动化编码循环 - 让 AI 代理持续工作直到完成任务。支持 PLANNING规划和 BUILDING构建两种模式使用 exec + process 工具监控进度。
allowed-tools: Read, Write, Edit, Exec, Process
---
# Ralph Loop (Agent Mode)
自动化 AI 编码代理循环工作流。
## 工作流程
```
需求定义 → PLANNING Loop → BUILDING Loop → 完成
```
1. **PLANNING Loop** - 创建/更新 IMPLEMENTATION_PLAN.md不实现
2. **BUILDING Loop** - 实现任务、运行测试、更新计划、提交
## 支持的 CLI
| CLI | 命令模式 | TTY 需求 |
|-----|---------|---------|
| OpenCode | `opencode run --model <MODEL> "$(cat PROMPT.md)"` | ✅ |
| Codex | `codex exec --full-auto "$(cat PROMPT.md)"` | ✅ |
| Claude Code | `claude --dangerously-skip-permissions "$(cat PROMPT.md)"` | ✅ |
| Pi | `pi --provider <PROVIDER> -p "$(cat PROMPT.md)"` | ✅ |
| Goose | `goose run "$(cat PROMPT.md)"` | ✅ |
## 使用方法
### 1. 准备项目文件
创建 `PROMPT.md`:
```markdown
# 目标
<你的任务描述>
## 参考文件
- specs/*.md
- IMPLEMENTATION_PLAN.md
```
创建 `AGENTS.md`:
```markdown
# 项目说明
## 测试命令
npm test
## 构建命令
npm run build
```
### 2. 启动循环
**PLANNING 模式**:
```bash
# 我会执行
exec(
command: 'opencode run --model claude-opus-4 "$(cat PROMPT.md)"',
workdir: "/path/to/project",
background: true,
pty: true,
timeout: 3600
)
```
**BUILDING 模式**:
```bash
# 同上,但 PROMPT.md 内容不同
```
### 3. 监控进度
```bash
# 轮询状态
process(action: "poll", sessionId: "xxx")
# 查看日志
process(action: "log", sessionId: "xxx", offset: -30)
```
### 4. 检测完成
检查 `IMPLEMENTATION_PLAN.md`:
- `STATUS: PLANNING_COMPLETE` - 规划完成
- `STATUS: COMPLETE` - 构建完成
## 提示词模板
### PLANNING 模式
```markdown
You are running a Ralph PLANNING loop for this goal: <goal>.
Read specs/* and the current codebase. Only update IMPLEMENTATION_PLAN.md.
Rules:
- Do not implement
- Do not commit
- Create a prioritized task list
- Write down questions if unclear
Completion:
When plan is ready, add: STATUS: PLANNING_COMPLETE
```
### BUILDING 模式
```markdown
You are running a Ralph BUILDING loop for this goal: <goal>.
Context: specs/*, IMPLEMENTATION_PLAN.md, AGENTS.md
Tasks:
1) Pick the most important task
2) Investigate code
3) Implement
4) Run backpressure commands from AGENTS.md
5) Update IMPLEMENTATION_PLAN.md
6) Update AGENTS.md with learnings
7) Commit with clear message
Completion:
When all done, add: STATUS: COMPLETE
```
## 安全注意事项
- 使用沙盒环境
- 设置合理超时
- 重要项目先备份
- 监控进度,不要过早终止
## 故障排除
| 问题 | 解决方案 |
|------|---------|
| CLI 卡住 | 确保 pty: true |
| 无法启动 | 检查 CLI 路径和 git 仓库 |
| 未检测到完成 | 验证 IMPLEMENTATION_PLAN.md 中的格式 |
| 超时 | 增加 timeout 参数 |
## 示例
### 完整工作流
1. 用户: "帮我实现用户认证模块"
2. 我创建 specs/auth.md, PROMPT.md, AGENTS.md
3. 我启动 PLANNING 循环
4. AI 生成 IMPLEMENTATION_PLAN.md
5. 我启动 BUILDING 循环
6. AI 逐个实现任务
7. 检测到 STATUS: COMPLETE
8. 完成!
## License
MIT