你要给的
- 想要的结果。
- 不能变的行为。
- 怎么判断它成了。
- 需要你拿主意的地方。
学习指南
跑过 ait init 之后,照平常的话说你想要什么就行。
仓库里的说明会告诉懂 AIT 的编码 agent:这活怎么规划、怎么隔离、
怎么检查、怎么记录、怎么收尾。
分工
agent 执行
交互演示把密码开关这个例子整个跑了一遍: sprint 条目、Task 回执、diff、测试输出、Snapshot,还有收尾回执。
真实案例
$ ait task start … --intent '…' --local --json
{
"ok": true,
"task_id": "LT-0001",
"line_name": "feature/lt-0001",
"next_action": { "code": "enter_worktree", "command": "cd …/workspace/lt-0001" }
}
$ npm test
AssertionError [ERR_ASSERTION]: cooldown must block rapid fire
2 !== 1
# the agent edits src/game.js inside the worktree, then reruns the checks
$ npm test
{"contract":"ait-plane-shooter-self-test/v1","status":"pass"}
$ ait task finish LT-0001 --message 'Restore the 180 ms projectile cooldown
and add exact boundary regression coverage; npm test passes.' --local --json
{
"ok": true,
"command": "task.finish",
"task_id": "LT-0001",
"target_line": "main",
"closeout": { "task_status": "completed", "worktree_status": "removed", … }
}
节录但逐字:这些行来自已发布的
200 session 基准测试中被采计的
b001-gd-01(2026-08-26)。过长的运行路径有缩短、
省略的字段以 … 标记;显示的每一行都与记录相同。
Task 一直挂在提出它的那条 sprint 条目上。
Task 有自己的工作区,不会跟无关的改动混在一起。
Snapshot 钉住跟那次检查结果对应的确切代码。
Task、目标 Line、sprint 条目,最后说的是同一件事。
装上当前的稳定版,初始化一个仓库,让 agent 把你的第一次改动一路带到验证收尾。