很多人谈 AI 编程,谈到最后都会滑向两个方向:要么研究 prompt 话术,要么研究工具排行榜。可真正把项目做下来之后会发现,决定结果的往往不是模型有多强,而是任务有没有被稳定推进。

所以我越来越确信,AI 编程的本质不是写代码,而是 GSD: Get Shit Done

这不是一句鸡血口号,而是一种工作判断。AI 最擅长的是局部生成,人最不可替代的是定义目标、控制边界、校验结果、决定下一步。谁负责把事情做完,谁就掌握了 AI 编程的核心。

什么是 GSD

GSD 本来就不是 AI 圈专属概念,它说的是一种执行方法:少空转,少沉迷完美方案,尽快把任务拆开、落地、验证、收口。

它在 AI 编程里尤其重要,因为 AI 把“产出代码”这件事变得太便宜了。过去写错一段代码,要付出几十分钟;现在模型可以在错误方向上连续输出三轮,还都看起来像那么回事。于是,真正稀缺的能力不再是“产出更多”,而是“识别什么值得继续推进”。

从这个角度看,AI 时代没有削弱软件工程,反而把它最硬的那一面暴露出来了:任务拆分、上下文管理、验收标准、回滚意识、重构节奏,这些东西一个都没消失。

AI 编程真正的问题

AI 编程当然快,但快不等于高效。它最常见的问题有三个。

低效

表面上,模型替你写了很多代码;实际上,你只是把时间从“自己写”换成了“审它、修它、补上下文”。如果生成规模大于验证能力,效率往往是下降的。

反复试错

很多人以为自己在迭代,实际上只是陷入了“生成一版、修一版、再修一版”的循环。每一轮都像在前进,但系统并没有更接近完成状态,只是在不断清理上一轮制造的噪音。

上下文失真

模型对项目的理解不是稳定存在的,它只是在当前上下文里做局部推断。上下文一长、一脏、一旧,就会开始忘约定、乱覆盖、重复犯错。很多所谓“模型不靠谱”,本质上是上下文早就失控了。

所以 AI 编程的问题,从来不只是模型问题,更是工作流问题。

GSD 的核心原则

拆任务

不要让 AI 一次处理一个模糊的大目标。大任务一旦没有边界,生成结果几乎注定失真。AI 适合吃小而明确的问题,不适合替你发明完整项目。

快速验证

每走一步,都要尽快确认这一步到底有没有真的往前。能不能运行,输出对不对,页面能不能打开,接口是不是污染了别的模块。这些检查越便宜,闭环越短,任务越稳。

循环迭代

AI 编程最好的节奏不是一次性生成大而全,而是持续压缩闭环:

  • 给清晰目标

  • 生成最小结果

  • 立刻验证

  • 根据结果继续下一轮

GSD 的价值,就在于它把“生成”放回“推进”之内,而不是把生成本身误当成进展。

一个够用的标准流程

如果要把 GSD 落到 AI 编程里,我觉得最实用的流程就是五步:

需求

先把目标说清楚。不是“我想做个什么”,而是输入输出是什么、约束是什么、做到什么算完成。没有完成标准,后面的每一轮生成都会发飘。

Prompt

Prompt 的重点不是修辞,而是约束。你至少要说清背景、任务、涉及范围、禁止事项和输出形式。不给边界,模型就会自动脑补。

生成

不要追求“最终答案”,而要追求“可验证的下一步”。一轮生成如果已经大到你自己都不愿意审,那通常就已经超出合理规模了。

校验

至少检查三件事:它说的和它做的是不是一致,它生成的东西能不能跑,它有没有破坏原来的逻辑。AI 编程里,校验不是附属动作,而是主流程本身。

重构

先让功能成立,再让结构变好。把“先做出来”和“再整理干净”分成两轮,AI 的价值会稳定很多。它很适合做第二轮的清理、提取、收束,而不是在第一轮就替你发明完美架构。

工具不是答案,组合才是

GSD 不依赖某个神奇模型,也不依赖某个 IDE。工具的意义,只在于它被安排在什么位置。

  • Claude 适合理解长上下文、拆任务、看结构

  • GPT 适合快速生成和高频往返

  • Cursor 适合把读代码、改代码、跑结果串成一个闭环

  • Copilot 适合局部补全和碎片化提速

重点从来不是“谁最强”,而是谁负责哪一段链路。如果所有工具都在同时生成,而没人负责收口,那工作流照样会散。

常见误区

把 AI 当最终裁判

AI 生成的是候选方案,不是真理。它可以是搭档、草稿机、重构助手,但不能代替验收。

以为 prompt 越长越专业

没有结构的长 prompt 只会让上下文变脏。真正有效的不是信息越多越好,而是约束越清楚越好。

一次做太多

这是最常见的失控源头。AI 很容易制造一种“顺手把这个也做了”的冲动,但任务一旦过大,验证成本会指数上升。

不管理上下文

会话里堆满失败尝试、过时代码和旧约定,只会让模型越来越不稳定。该重开就重开,该重写摘要就重写摘要。

为什么 GSD 适合 AI 时代

因为 AI 让“生成”变便宜了,但没有让“完成”变自动。

真正决定项目成败的,仍然是这些老问题:目标清不清楚,任务拆得对不对,校验做得够不够,什么时候该继续,什么时候该回滚。AI 提高了局部产出的上限,也放大了流程混乱的代价。

所以说到底,AI 编程不是“让模型替你写代码”,而是让你用模型持续推进任务,直到真的交付结果。

这就是 GSD。