从 Prompt Engineering 到 Loop Engineering,我觉得 AI 开发这事儿终于开始变味了

一、AI 开发这事儿,终于开始从「会提问」变成「会运转」

这两天看到一个说法,叫 Loop Engineering。我一开始看到的时候,说实话,有点烦。

因为 AI 圈现在太爱造词了。今天一个 Context Engineering,明天一个 Agentic Workflow,后天又冒出来一个 Harness Engineering。每个词看起来都很高级,拆开一看,好像又是那点东西。

但 Loop Engineering 这个词,我看着看着,突然觉得不太一样。

它不是在讲怎么把一句 Prompt 写得更漂亮。也不是在讲怎么往模型窗口里塞更多上下文。它讲的是一件更底层的事,怎么让 AI 不再像一个你每次都要手动叫醒的实习生,而是变成一个可以持续运行、持续发现问题、持续推进任务的工作系统。

这个变化,其实挺大的。

过去三年,AI 工程师的工作重心一直在往外扩。最早大家研究 Prompt Engineering,核心问题是,我该怎么跟模型说话。

那时候非常像玄学。同样一个需求,你加一句「一步一步思考」,效果突然好了。你换个角色设定,让它「扮演资深工程师」,代码看起来又像那么回事了。当时大家疯狂收藏 Prompt 模板,像收藏武功秘籍。

后来大家发现,Prompt 写得再好也有天花板。

因为模型不是你肚子里的蛔虫。它不知道你的代码结构,不知道你的业务约定,不知道你们公司哪个接口有历史包袱,也不知道 README 里那句「不要随便改」背后埋过多少血泪。

于是 Context Engineering 开始变重要。你不能只问问题,你得把正确的信息给它。代码、文档、Issue、日志、数据库结构、历史决策、架构约束,这些东西都要被组织起来,变成模型能理解的上下文。

我自己搞 llm-wiki 的时候,对这点感受特别深。很多时候不是模型不聪明,是它看不见。它看不见你的项目过去发生了什么,看不见某个命名为什么这么奇怪,看不见你上个月为了兼容一个边缘客户做过什么妥协。

看不见,就只能瞎猜。

而瞎猜,是 AI 写代码最可怕的地方。

再往后,Agent 火了。Claude Code、Codex、Cursor、各种本地 Agent,全都开始不满足于只回答问题。它们要能读文件、改代码、跑测试、查日志、调用浏览器、访问数据库。

这时候问题又变了。不是怎么跟 AI 沟通,也不是给 AI 什么信息,而是怎么让 AI 行动。这就是很多人说的 Harness Engineering。

你得给它工具,给它权限,给它执行环境,给它一个能干活的外壳。

但到这里,其实还没完。因为你会发现,哪怕 Agent 已经能行动了,它大多数时候仍然是一次性的。

你说,帮我修这个 Bug。它修了。你说,补个测试。它补了。你说,这里不对,重新改。它重新改。看起来是自动化了,但整个节奏仍然靠人一下一下拨动。

像什么呢。像你面前有一个很强的机械臂,但每动一下都得你亲自按按钮。挺强。但还不够爽。

Loop Engineering 想解决的,就是这个按钮问题。

它关心的不是单次任务怎么完成,而是一个系统能不能自己跑起来。自己发现任务,自己拆分任务,自己分配工作空间,自己调用工具,自己跑验证,自己记录状态,自己判断下一步要干什么。

这玩意听起来很抽象。但你把它翻译成人话,其实就是,把 AI 从聊天窗口里拎出来,放进真实的软件生产流水线里。

二、真正的 Loop,不是让 AI 乱跑,而是让系统有入口、有边界、有刹车

比如 GitHub Issue 里来了一个 Bug。以前是人看到 Issue,打开 IDE,问 AI 怎么修,复制代码,跑测试,再提交。

Loop 的想法是,Issue 本身就是任务入口。系统自动创建一个独立分支或 worktree,拉起一个 Agent,让它读取相关代码和项目规范,尝试修复,跑测试,生成变更说明,再交给另一个审查 Agent 或人类 Review。

如果测试失败,它继续回到循环里。如果发现权限太高,它停下来请求审批。如果结论不确定,它把不确定性写进记录。

这个时候,AI 不再是一个对话框。它变成了一个工作回路。

我觉得这里面最有意思的,不是「AI 更自主了」这句废话。而是工程师的位置变了。

以前我们像是在操作模型。现在我们越来越像是在设计系统。

你要设计任务从哪里来。是 GitHub Issue,还是 CI 失败,还是监控告警,还是一个产品经理丢在飞书里的需求。

你要设计 Agent 在哪里工作。每个任务是不是有独立 branch,每个 Agent 是不是有自己的 sandbox,多个 Agent 会不会互相覆盖。

你要设计它启动时知道什么。哪些是项目规范,哪些是业务规则,哪些是历史坑位,哪些是永远不要碰的红线。

你还要设计它能调用什么。GitHub、Jira、Slack、数据库、浏览器、MCP、企业微信审批。这些工具接进去以后,Agent 才真的能干活。否则它只是一个很会写作文的东西。

这块我之前看 GoHumanLoop 那类人机协同方案时,也有类似感觉。

Agent 真正进入企业流程以后,最关键的往往不是让它一口气全自动,而是在哪里停下来,让人接管一下。比如删数据、发生产请求、审批 Offer、改关键配置。

这些事不是不能让 AI 参与。但你得有审批点。你得知道它为什么要这么做。你得知道谁确认过。你得能追溯。

所以 Loop 不是一味追求无人驾驶。

很多人一听自主 Agent,就开始想象一个系统半夜自己改代码、自己上线、自己发公告,然后你早上醒来发现世界已经变了。不是哥们,这个画面想想就有点吓人。。。

真正靠谱的 Loop,反而一定有刹车。它有自动部分,也有人类确认部分。它让 AI 多做重复劳动,但关键节点还得让人保留判断权。

这也是为什么我觉得 Loop Engineering 不是 Prompt Engineering 的替代品。Prompt 还是重要。Context 还是重要。Harness 还是重要。只是它们都变成了 Loop 里的零件。

Prompt 是一次行动的意图表达。Context 是行动前的视野。Harness 是行动时的手脚。Loop 是让这一切不断跑起来的节奏。

这件事如果放到个人开发者身上,其实也没那么遥远。

你不需要一上来就搞一个全自动 AI 公司。太离谱了,也没必要。

你可以先做一个很小的 Loop。比如给自己的项目建一个固定入口,把所有想法都写成 Issue 或 Markdown 任务。然后每个任务启动时,都让 Codex 或 Claude Code 自动读取 AGENTS.md、项目规范、最近变更、相关测试。再给它一个固定工作方式,先理解代码,再改动,再跑测试,再写总结。

最后把结果记录回任务文件里。

这就是一个小 Loop。

它不炫。但它能复用。

更关键的是,它会积累。

我一直觉得,AI 开发里最被低估的东西就是外部记忆。很多人每次打开一个新对话,都像失忆重开。上次踩过的坑,这次还踩。上次讲过的架构约束,这次还要重新讲。上次某个测试为什么不能跑,过两天又忘了。

这太浪费了。

所以我现在越来越喜欢把项目知识写进 Skill、AGENTS.md、wiki、memory 这种地方。不是为了仪式感。就是为了让下一次循环开始时,系统不是从零出发。

它知道过去发生了什么。

这件事很小,但时间长了,会产生复利。

三、Loop 越顺,人越不能认知投降

还有一个很重要的点,验证必须独立。

这话听着有点刺耳,但我觉得挺真实。你不能让一个 Agent 自己写代码,然后完全相信它自己说「我验证过了」。

人都会自欺欺人,AI 更会。它有时候不是故意骗你,它只是非常擅长给出一个看起来合理的完成叙事。

所以测试、静态扫描、代码审查、人工审批,最好都从 Loop 里独立出来。写代码的是一个环节。验证是另一个环节。审查又是另一个环节。这才像工程系统。

否则就是自己出题,自己判卷,自己给自己鼓掌。

听起来很热闹,但不一定可靠。

我现在看 Loop Engineering,最大的感受是,它把 AI 协作从「技巧问题」推进到了「组织问题」。

你会不会写 Prompt,当然还有用。但更大的差异会出现在,你能不能设计一套让 AI 稳定工作的环境。

有入口,有上下文,有工具,有权限边界,有验证,有记忆,有人类接管点。这些东西连起来以后,模型能力才真的能进入生产。

否则再强的模型,也会被困在聊天框里。

当然,这里也有一个很危险的东西。Loop 跑得越顺,人越容易认知投降。

以前 AI 写一段代码,你还会逐行看。后来它一次修五个文件,你开始扫一眼。再后来它自动开 PR、自动补测试、自动生成说明,你可能就只看绿灯。

绿灯很诱人。

但绿灯不等于理解。

我自己一直很警惕这个事。

AI 可以帮我们省掉很多重复劳动,但不能帮我们承担最终判断。尤其是架构设计、业务取舍、安全边界、用户体验这些东西,最后还是人的责任。

你可以不亲手写每一行代码。但你最好知道系统为什么变成现在这样。

否则积累下来的就不只是技术债。还有理解力债。

这个词我挺喜欢的,理解力债。

代码库越来越大,自动化越来越强,PR 越来越多,但你对系统的理解越来越少。短期看效率很高。长期看,可能某一天你会突然发现,自己已经不敢动这个系统了。

因为它不是你设计出来的,它只是你一次次点确认长出来的。

这就很可怕。

所以我觉得,Loop Engineering 最好的状态,不是让人离开开发过程。而是把人从低价值的反复操作里解放出来,回到更重要的位置。

你去设计循环。你去定义边界。你去判断什么可以自动,什么必须审批。你去决定系统应该记住什么,忘掉什么。你去做那些真的需要人类经验、审美、责任感的判断。

AI 负责跑。

人负责看方向。

这可能才是未来几年工程师最值得练的能力。不是写出最骚的 Prompt。而是搭出一个能持续工作的 AI 协作系统。

它不一定一开始就很完美。甚至一开始会有点笨。会跑错测试,会读错上下文,会在奇怪的地方卡住,会让你怀疑自己是不是在给自己找麻烦。

但很多基础设施一开始都是这样的。CI 刚接入的时候也烦。代码 Review 流程刚建立的时候也慢。类型系统刚加上的时候也痛。

但等它们真的融进工作流,你就很难再回去了。

Loop Engineering 大概也是这样。

一开始像玩具。

后来像工具。

再后来,它会变成工作方式本身。

大时代啊,朋友们。

我们可能正在从「怎么问 AI」走向「怎么和一群 AI 一起工作」。

而这件事,想想就觉得挺兴奋的。

也挺需要清醒的。

相关推荐
一条泥憨鱼1 小时前
【Redis】数据类型和常用命令
java·数据库·redis·后端·缓存
Oneslide2 小时前
初始化微信小程序
后端
aosky3 小时前
一台电脑配置多个 SSH Key 对应不同的 GitHub 账号
运维·ssh·github
hboot3 小时前
AI工程师第一课 - Python
前端·后端·python
阿正的梦工坊3 小时前
【Rust】12-借用检查器与非词法生命周期
开发语言·后端·rust
飞天狗1114 小时前
零基础JavaWeb入门——第2课:让网页“活”起来 —— JSP是什么?
java·开发语言·前端·后端·web
梦@_@境5 小时前
面向 Spring Boot 的可观测业务流程编排引擎
java·spring boot·后端
JAVA面经实录9175 小时前
Netty 全套系统化学习文档(零基础到高阶面试完整版)
java·后端
GetcharZp6 小时前
C++ 程序员的终极减负:仅需一个头文件,优雅搞定 HTTP 客户端与服务端
后端