乐于分享
好东西不私藏

AI编程下一步,不是换IDE,是把TODO写成工单

AI编程下一步,不是换IDE,是把TODO写成工单

AI编程下一步,不是换IDE,是把TODO写成工单

我最近看到一个很典型的场景。

一个开发把需求丢给 Coding Agent:

“把这个列表页优化一下,顺便修一下搜索。”

Agent 很勤奋,改了 8 个文件,补了两段测试,还开了一个 PR。问题是,点进去一看,搜索确实能搜了,但原来那个“只搜当前项目”的业务边界被它顺手抹掉了。

这不是模型笨。

这是我们还在用“跟人聊天”的方式,给一个会直接动仓库的系统派活。

以前 TODO 写在代码里,更多是提醒自己:“这里以后再处理”。现在不一样了。GitHub Copilot cloud agent 这类异步 Coding Agent 已经可以从 Issue、VS Code Chat、TODO code action 里接任务,在自己的隔离环境里改代码、跑检查、开 draft PR,再等人审。

也就是说,TODO 不再只是便签。

它正在变成一个入口。

入口变了,写法就得变。

你以为在写备注,其实是在写派工单

很多团队第一次用异步 Coding Agent,最容易踩的坑不是“它写不出代码”,而是“它太愿意替你补脑”。

你写:

“TODO:优化查询性能。”

它可能理解成加缓存、改索引、换查询条件、甚至调整接口返回结构。每一条路都可能合理,但只有你知道哪条路不能走。

人类同事看到这种 TODO,通常会回头问一句:

“优化到什么程度?能不能动表结构?影响哪些接口?”

Agent 不一定会问。

它更可能先干。

这就是 AI 编程工作流里一个很反常识的变化:任务越小,越不能写得随便。因为小任务最容易被丢给 Agent,而 Agent 又最容易在“小修小补”里顺手改穿边界。

所以我现在看一个团队有没有进入 Agent 工作流,不看他们用 Cursor、Claude Code、Copilot 还是 Codex。

我先看他们的 Issue 和 TODO。

如果里面全是“优化一下”“修一下”“支持一下”,这个团队就算买了最贵的工具,也只是把许愿池搬进了代码库。

一张合格的 TODO 工单,至少要挡住三种误伤

我自己更愿意把 Agent 能接的任务写成“小工单”,不是写成长篇说明书。

太长,没人愿意写,也没人愿意审。

但它至少要包含三件事。

第一,改动范围。

不是“修搜索”,而是“只修改 project-search 相关逻辑,不改权限过滤、不改接口字段、不改排序规则”。

第二,完成标准。

不是“性能变好”,而是“在现有测试数据下,输入 3 个关键词时查询次数不超过 N 次;保留当前项目隔离逻辑;新增一个回归测试”。

第三,禁止事项。

这是很多人漏掉的。

给人派活时,我们默认对方懂公司的暗规则。给 Agent 派活时,默认暗规则不存在。

“不要引入新依赖。”

“不要改数据库 schema。”

“不要调整公共 API。”

“不要把失败吞掉。”

这些话看起来像废话,但它们就是 Agent 的刹车线。

我见过不少团队把提示词模板写得很漂亮:角色、语气、上下文、输出格式,一应俱全。

但一到真实仓库里,派给 Agent 的任务还是一句“帮我看看”。

这就像给外包团队发一条微信:“把系统弄快点。”

对方真弄了,你反而害怕。

PR 不是终点,是第二次派活入口

异步 Coding Agent 最有价值的地方,不是第一次就把活干对。

而是它能把“反馈—修改—再验证”这条链路接起来。

GitHub 的 Copilot coding agent 会把工作推到 draft PR,开发者可以看 session logs、看它跑了什么检查、在 PR 评论里继续要求修改。VS Code 里也能把本地对话委托给 cloud agent,让它在后台完成。

这意味着 PR 评论也开始变成一种“二次工单”。

以前我们写 PR 评论,经常是:

“这里不太对。”

“再处理下边界。”

“这个逻辑有点怪。”

给人看,可能够了。给 Agent 看,太虚。

更好的写法是:

“这里不要把 archived 项目纳入搜索结果。请保留原有过滤条件,并补一个 archived 项目不可见的测试。”

这句话里有对象、有禁止项、有验收标准。

Agent 就有机会继续干,而不是继续猜。

很多人说 Agent 让程序员变成 reviewer,我觉得只说对了一半。

更准确地说,程序员正在变成“任务切片的人”和“验收口径的人”。

不会切任务的人,用 Agent 会越来越累。

因为 Agent 每次都能交付一点东西,但每次都需要你花更大力气把方向拉回来。

哪些活适合丢给 Agent?看它能不能被验收

我现在判断一个任务能不能给 Coding Agent,不看它难不难。

我看它能不能被快速验收。

适合的任务通常长这样:

  • 改动边界明确:只碰某个模块、某类文件、某条调用链。
  • 成功标准可测试:能跑单测、快照、lint、接口用例或简单人工检查。
  • 失败代价可控:错了最多退 PR,不会污染生产数据,不会改掉关键权限。
  • 背景知识可写出来:不依赖“老员工都知道”的隐性规则。

不适合的任务也很明显:

“你帮我重新设计一下这个产品的权限体系。”

“你看看这坨代码怎么改比较好。”

“你顺便把体验优化一下。”

这些不是不能用 AI,而是不该直接丢给异步 Agent。它们应该先被人拆成更小的工单,再让 Agent 处理其中可验证的一段。

这里的分水岭,不是工具价格,也不是模型榜单。

是团队有没有能力把“模糊意图”翻译成“可执行、可回滚、可验收”的任务单元。

真正省时间的是少返工,不是少打字

很多人对 AI 编程的误会,是把它理解成“少写代码”。

但在真实项目里,代码本身往往不是最贵的部分。

最贵的是返工。

一个 Agent 花 20 分钟写出 500 行代码,不代表你赚了。你如果再花 2 个小时查它到底改了什么、为什么改、有没有穿透边界,那这 20 分钟就是幻觉收益。

所以我更建议团队从一个很土的动作开始:把常见 TODO 和 Issue 改成固定的派单格式。

比如:

任务:修复项目搜索在空关键词时返回异常的问题
范围:只修改 project-search 相关逻辑,不改权限过滤和接口字段
背景:当前接口需要保留项目隔离, archived 项目不可见
完成标准:新增空关键词测试;现有搜索测试通过;lint 通过
禁止:不引入新依赖;不改数据库 schema;不扩大返回字段

这段文字不性感。

但它比“帮我修一下搜索”值钱得多。

因为它让 Agent 少猜,也让 reviewer 少救火。

以后会写代码的人很多,会派活的人更少

我的判断是,2026 年 AI 编程真正拉开差距的,不是“谁会用哪个 Agent”。

工具会越来越像:都能读仓库,都能改文件,都能跑测试,都能开 PR。

差距会出现在更上游:

谁能把需求拆成 Agent 接得住的小任务?

谁能把隐性规则写成仓库说明、Issue 模板、PR 评论?

谁能让 Agent 的每一次输出都有验收口径?

这才是团队生产力的分水岭。

如果你还在把 TODO 当便签,Agent 进来之后,它就会把便签当命令。

如果你把 TODO 写成工单,它才可能真的变成一个能在后台干活的队友。

你们团队现在的 Issue / TODO,已经能直接派给 Coding Agent 了吗?还是说,只有人类老员工才看得懂?