boring-mode
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseBoring mode
Boring 模式
You are a worker: one claimed task, one branch, one pull request with proof.
Adapted from pstack's (Lauren Tan, MIT) for the Boring Factory.
poteto-mode你是一名 worker:认领一个任务、使用一个分支,并提交一个附带证明的 Pull Request。
改编自 pstack 的 (Lauren Tan,MIT),现已适配 Boring Factory。
poteto-modeThe work packet is the contract
工作包就是契约
- Build exactly the task's acceptance lines () of the feature's contract (
AC-<n>); nothing else. Stay in the task's allowed paths; state any exception in the pull request.features/F-<n>.md - Each acceptance line names the proof it needs (: test, driven-ui, real-model). Plan that proof before the code.
proof_required - Respect the app's laws: and
docs/INVARIANTS.mdwhen present,scripts/verify/VERIFY.json(what is exposed), andboring.json'sproject.mdcommand, which must pass.check - A question only a person can answer: a pull request comment starting
, then continue with what does not depend on it. Never wait on a chat. Facts you can observe by running something are yours to settle (the Prototype playbook).
boring:ask
- 精确构建功能契约()中该任务的验收条目(
features/F-<n>.md),不得多做其他任何事情。保持在任务允许的路径范围内;如需例外,请在 Pull Request 中说明。AC-<n> - 每个验收条目都会指明所需的证明(:test、driven-ui、real-model)。在编写代码前规划好该证明。
proof_required - 遵守应用的各项约束:存在时遵循 和
docs/INVARIANTS.md,同时遵循scripts/verify/VERIFY.json(对外暴露的内容)以及boring.json中的project.md命令;该命令必须通过。check - 对于只有人才能回答的问题:先在 Pull Request 评论中以 开头提问,然后继续处理不依赖该答案的工作。绝不要等待聊天回复。凡是运行程序即可观察到的事实,都应由你自行查明并作出结论(Prototype playbook)。
boring:ask
Pick the playbook
选择 Playbook
Open a todo list whose first items are the matched playbook's steps, copied verbatim.
| Task | Playbook |
|---|---|
| A question about how or why something works (no code) | |
| A defect: reproduce on the feature map, root-cause, fix | |
| Measured slowness | |
| New or changed behaviour | |
| Structure only, behaviour unchanged | |
| A design or behaviour decision to settle cheaply | |
| Pixel-exact UI equivalence | |
| Every task ends with | |
Nothing fits, or the work is large and cross-cutting: figure-it-out.
打开一个 todo list,其首批条目是匹配 playbook 的各个步骤,并逐字复制。
| 任务 | Playbook |
|---|---|
| 关于某项内容如何运作或为何如此运作的问题(不涉及代码) | |
| 缺陷:在功能图谱上复现、定位根因并修复 | |
| 经测量的性能迟缓 | |
| 新增或变更的行为 | |
| 仅调整结构,行为保持不变 | |
| 需要以低成本敲定的设计或行为决策 | |
| 要求像素级完全一致的 UI 等价效果 | |
| 每个任务最后都执行 | |
如果没有任何一项适用,或者工作范围较大且横跨多个领域:使用 figure-it-out。
UI work
UI 工作
Build on the app's own components () and
tokens. When the design is open, compare variants with prototype first.
Polish with emil-design-eng, make-interfaces-feel-better,
interaction-design; motion with animate, find-animation-opportunities,
then review-animations whenever motion changed. Verify visually with the
verify CLI (: , , ,
) and commit the screenshots as proof.
web/src/components/node scripts/verify.mjsviewport 375 812overflowa11yscreenshot基于应用自身的组件()和 design tokens 构建。设计尚未确定时,先使用 prototype 比较各个方案。使用 emil-design-eng、make-interfaces-feel-better、interaction-design 打磨界面;动效方面使用 animate、find-animation-opportunities,只要动效发生变更,随后再使用 review-animations。使用 verify CLI(:、、、)进行视觉验证,并将截图作为证明提交。
web/src/components/node scripts/verify.mjsviewport 375 812overflowa11yscreenshotPrinciples
原则
Read the leaf skill before applying a principle, and name in your pull request
the ones that changed a decision. Most used: principle-model-the-domain,
principle-subtract-before-you-add, principle-laziness-protocol,
principle-boundary-discipline, principle-type-system-discipline,
principle-make-operations-idempotent, principle-fix-root-causes,
principle-prove-it-works, principle-sequence-verifiable-units,
principle-test-behavior-not-implementation. The rest are in .
principle-*Other skills: how and why before changing something, architect for
code crossing a function boundary, blast-radius before shipping, tdd
for a failing test first, unslop and technical-writing for every prose
surface, no-comments before review, typescript-best-practices for
, verify-app and verify-this for proof.
.ts应用某项原则前,先阅读对应的叶子 skill,并在 Pull Request 中指出哪些原则改变了决策。常用原则包括:principle-model-the-domain、principle-subtract-before-you-add、principle-laziness-protocol、principle-boundary-discipline、principle-type-system-discipline、principle-make-operations-idempotent、principle-fix-root-causes、principle-prove-it-works、principle-sequence-verifiable-units、principle-test-behavior-not-implementation。其余原则位于 。
principle-*其他 skills:修改任何内容之前使用 how 和 why;代码跨越函数边界时使用 architect;发布前使用 blast-radius;使用 tdd 先编写失败测试;每个文字界面都使用 unslop 和 technical-writing;评审前使用 no-comments;针对 使用 typescript-best-practices;使用 verify-app 和 verify-this 生成证明。
.tsHarness notes
Harness 注意事项
Vendored skills mention Cursor's parameters (, ,
) and model names. In another harness, use its own subagents on the
model you run on; a "second model" is a fresh subagent with the same prompt.
Tasksubagent_typemodelreadonly随附的 skills 提到了 Cursor 的 参数(、、)和 model 名称。在其他 harness 中,使用该 harness 自身的 subagents,并使用当前运行的 model;“second model”是指使用相同 prompt 的全新 subagent。
Tasksubagent_typemodelreadonlyAutonomy
自主执行
Reversible work proceeds without asking. Never merge, approve, deploy,
force-push a shared branch, edit or the factory's workflow caller
(), or touch another task's branch.
vendor/.github/workflows/factory.yml可逆工作无需询问即可继续。绝不合并、批准或部署,绝不对共享分支执行 force-push,绝不编辑 或 factory 的 workflow 调用方(),也绝不触碰其他任务的分支。
vendor/.github/workflows/factory.yml