ratatouille
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseRatatouille
Ratatouille
Implement one task from per iteration using tracer-bullet methodology and a compounding engineering mindset. Maintain across iterations.
prd.jsonprogress.txt每次迭代采用追踪式开发(tracer-bullet)方法和复合工程思维完成中的一个任务。在迭代过程中维护文件。
prd.jsonprogress.txtTrigger Formats
触发格式
ratatouille: <short task hint>- (e.g.,
ratatouille: <file path>)ratatouille: prd.json
ratatouille: <简短任务提示>- (例如:
ratatouille: <文件路径>)ratatouille: prd.json
Required Files
必需文件
- (root)
prd.json - (root)
progress.txt
- (根目录)
prd.json - (根目录)
progress.txt
Workflow
工作流程
0) Bootstrap (Always First)
0) 初始化(始终第一步)
- Read (if missing, create it).
progress.txt - Read . If missing, stop and ask user to run mise-en-place.
prd.json - If this is the first iteration, ask what to do after each iteration and store in .
progress.txt
Post-iteration action options:
- (run tests/checks)
qa - (refactor for clarity)
simplify - (remove duplication, tighten docs)
deslop - (code-review + fix)
review - (atomic commit)
commit none
- 读取文件(若缺失则创建)。
progress.txt - 读取文件。若缺失,停止操作并要求用户运行mise-en-place(环境准备)。
prd.json - 如果是第一次迭代,询问用户每次迭代后要执行的操作,并将其存储到中。
progress.txt
迭代后操作选项:
- (运行测试/检查)
qa - (重构以提升清晰度)
simplify - (移除重复代码,优化文档)
deslop - (代码审查+修复问题)
review - (原子提交)
commit - (无操作)
none
1) Pick the Next Task
1) 选择下一个任务
- If the user provided a task hint, match it to a or
tasks[].id.tasks[].title - Otherwise, pick the first task.
status: "todo" - If multiple tasks are equally valid, ask the user to choose.
- 如果用户提供了任务提示,将其与或
tasks[].id匹配。tasks[].title - 否则,选择第一个状态为的任务。
status: "todo" - 如果有多个符合条件的任务,询问用户选择。
2) Tracer-Bullet Implementation
2) 追踪式开发实现
For the chosen task:
Use a tracer bullet to build the thinnest end-to-end vertical slice that touches every needed layer. This code is not a throwaway prototype—it becomes the foundation you expand after validating the path works. Aim for one happy path, minimal data, and fast feedback before adding depth.
- Identify layers involved (UI, API, DB, config, tests).
- Build the thinnest end-to-end slice that works.
- Validate it (minimal integration test or manual check).
- Expand only after the tracer bullet is working.
针对选定的任务:
采用追踪式开发构建最精简的端到端垂直切片,覆盖所有必要层级。此代码并非一次性原型——它将成为验证路径可行后进行扩展的基础。目标是先实现一个正常流程、最小化数据量,在增加深度前快速获取反馈。
- 确定涉及的层级(UI、API、数据库、配置、测试)。
- 构建可运行的最精简端到端切片。
- 验证其有效性(最小化集成测试或手动检查)。
- 仅在追踪式开发的基础路径可行后再进行扩展。
3) Compound Engineering Mindset
3) 复合工程思维
Apply compounding leverage:
- Prefer reusable abstractions only after the tracer works.
- Automate or document any non-obvious learnings.
- Make improvements that reduce future work (tests, scripts, patterns).
应用复合杠杆效应:
- 仅在追踪式开发的基础路径可行后,才优先考虑可复用的抽象。
- 将任何非显而易见的经验自动化或记录下来。
- 进行能减少未来工作量的改进(测试、脚本、模式)。
4) Update progress.txt
progress.txt4) 更新progress.txt
progress.txtAppend a new section:
Iteration: <N>
Task: <id + title>
Status: done|partial|blocked
Decisions:
- ...
Learnings:
- ...
Next:
- ...
Post-Iteration Actions:
- qa|simplify|deslop|review|commit|none追加新的章节:
Iteration: <N>
Task: <id + title>
Status: done|partial|blocked
Decisions:
- ...
Learnings:
- ...
Next:
- ...
Post-Iteration Actions:
- qa|simplify|deslop|review|commit|none5) Update prd.json
prd.json5) 更新prd.json
prd.json- Set task to
statusordone.partial - Add notes if blocked.
- Keep date fresh.
updated
- 将任务的设置为
status或done。partial - 若任务被阻塞,添加备注。
- 更新日期为最新。
updated
6) Run Post-Iteration Actions
6) 执行迭代后操作
Use the actions recorded in :
progress.txt- : run relevant tests/checks
qa - : simplify or refactor touched code
simplify - : remove duplication, tighten docs
deslop - : run a code review and fix issues
review - : create an atomic commit
commit
按照中记录的操作执行:
progress.txt- :运行相关测试/检查
qa - :简化或重构涉及的代码
simplify - :移除重复代码,优化文档
deslop - :进行代码审查并修复问题
review - :创建原子提交
commit
7) Recursive Handoff
7) 递归交接
If tasks remain, re-trigger ratatouille:
- If the harness supports or
/handoff, re-issue the same prompt with updated context./new - Otherwise, ask the user to re-run the same command.
ratatouille:
若仍有剩余任务,重新触发ratatouille:
- 如果工具支持或
/handoff指令,使用更新后的上下文重新发送相同的提示。/new - 否则,要求用户重新运行相同的命令。
ratatouille:
Notes
注意事项
- Always start by reading .
progress.txt - Implement one task per iteration.
- Keep changes scoped and verified.
- 始终先读取。
progress.txt - 每次迭代仅完成一个任务。
- 保持变更范围明确并经过验证。