#AI Agent#软件工程
会写代码的人,为什么不一定更会用 Agent
拆解 40 万次 Claude Code 会话中的规划、执行与成功信号,看领域知识怎样把一句指令放大成更长的有效行动链。
Anthropic 分析了约 40 万次 Claude Code 会话,想回答一个很实际的问题:没有正式编程训练的人,能不能带着 Agent 完成复杂工作?
结果没有把人简单分成“会写代码”和“不会写代码”。更明显的分界线是:他是否真正理解手里那个问题。
知道花该种在哪里,比亲手挥动每一下铲子更重要。
人决定做什么,Agent 决定怎么做
在典型会话里,人承担大约 70% 的规划决策,Claude 承担大约 80% 的执行决策。
规划包括目标是什么、采用哪条路径、什么才算完成;执行包括改哪些文件、写什么代码、运行哪些命令。这个分工不像结对编程里两个人轮流敲键盘,更像一个人画边界,另一个人在边界里连续行动。
问题也就从“我能不能写出这段代码”变成了“我能不能把目标和验收说清楚”。
一句“做个库存工具”没有多少可执行信息。熟悉仓储的人会说清楚批次、锁定库存、退货回滚、跨仓调拨和月末盘点。即使他不会写数据库事务,也知道哪些结果绝不能出现。
专业的人给出的不是更长提示词
研究里,新手会话的一次提示通常触发约 5 个 Agent 动作和 600 词输出;专家会话能触发约 12 个动作和 3200 词输出。
这并不说明提示写得越长越好。专家提供的是高密度约束:准确的对象、真正的边界、可以检查的结果,以及出错时该看哪里。
模型因此少花力气猜题,多花力气完成任务。它知道下一步动作仍在用户授权的方向上,就能把行动链拉长。
领域知识还体现在纠错上。律师未必熟悉 Python,但能发现合同脚本漏掉了续约条款;财务人员不会设计数据库,却知道月末对账不能把跨期退款吞掉。代码只是交付形式,错误是否致命由业务知识判断。
成功需要留下硬证据
研究没有把 Agent 自己说“完成了”当作成功。更严格的 verified success 需要测试通过、产生匹配的提交或 PR,或者用户明确确认结果。
这个口径很重要。Agent 的语言很顺,容易让一次没有落地的尝试看起来像完成。把成功绑定到可观察的状态变化,才有资格比较不同会话。
从新手到中等熟练,成功率提升最明显;从中等熟练到专家,差距反而变小。门槛不是成为行业顶尖,而是至少能识别关键约束、判断结果是否靠谱。
这也解释了为什么写给 Agent 阅读的代码会越来越重要。领域专家能定义目标,但仓库如果命名混乱、入口隐蔽、测试失真,Agent 仍然无法把那份判断落进系统。人的问题知识与代码库的可读性,需要在执行链两端同时对上。
原始材料:Agentic coding and persistent returns to expertise。
Agent 把实现门槛压低以后,问题本身重新变成了最贵的部分。