halo 的技术博客

返回

AI编程进化论:从Copilot到AI Agent的6年亲历

2018年的某个深夜,我在写一个复杂的排序算法。反复调试,总有几个边界 case 过不了。这时候产品经理走过来问我:“你有没有试过Kite?“我说没有。他说:“AI补全代码的,挺神的。”

这是我第一次接触AI编程工具。那时的Kite只能给出非常基础的补全建议,准确率大概在40%左右。但即便是这样,也让我觉得像是打开了新世界的大门——原来代码可以这样被”提示”出来。

从2018到2026,AI编程工具的进化路径

第一阶段:代码补全时代(2018-2020)#

那个时期的AI编程辅助工具主要解决的是一个很具体的问题:减少打字量。Kite、TabNine这些工具会根据你输入的上下文,预测你接下来可能要写什么。它们的工作方式类似于 Gmail 的智能回复——不是理解代码,而是统计意义上的模式匹配。

我记得有一次用TabNine写Python,它居然能预测出我要用 pandas.DataFrame.groupby() 这个链式调用。那一刻确实有被惊艳到。但大部分时候,它给出的补全要么是错的,要么是完全不相关的。这就像你有一个热情但不太懂行的助手——有时候能帮上忙,但更多时候你得花时间纠正它。

这个阶段的局限在于:AI对代码的理解是碎片化的。它能看懂的只是当前文件和光标附近的几行代码,无法理解整个项目的架构、依赖关系,更别说业务逻辑了。

GitHub Copilot早期版本的操作界面

第二阶段:Copilot时代(2020-2023)#

2021年GitHub Copilot的发布是一个真正的转折点。与之前的补全工具不同,Copilot背后的技术是GPT-3——一个真正具有语言理解能力的模型。这意味着它不再只是匹配模式,而是能理解代码的语义。

我记得第一次用Copilot的时候,正在写一个REST API。它不仅补全了函数签名,还根据上下文推断出了我想要的参数类型、返回值结构,甚至连注释都帮我写好了。那一刻我意识到:编程的范式要变了。

但Copilot时代也有它的痛苦。我总结了几个典型的” Copilot陷阱 ”:

**第一,过于自信的补全。**Copilot有时候会补全一大段代码,看起来非常专业,但运行起来全是bug。更糟糕的是,因为它”看起来对”,你可能会在没有仔细审查的情况下直接接受,然后花大量时间debug。这比自己写还累。

**第二,业务逻辑错位。**Copilot对业务逻辑的理解几乎为零。它能写出语法正确的代码,但它不知道你的业务规则是什么。我曾经让它帮我写一个订单处理的函数,它给出了一个看起来很标准的实现,但完全忽略了我们的优惠叠加规则——这是我们产品的核心差异点。

**第三,安全漏洞。**有研究显示,Copilot生成的代码中有相当比例存在安全风险——SQL注入、XSS、未处理的异常。它学的是开源代码,而开源代码的质量参差不齐。

第三阶段:AI Agent时代(2024-2026)#

2024年开始,AI编程工具进入了下一个阶段:Agent化。以Cursor的Agent模式、Cline、GitHub Copilot Workspace为代表,这些工具不再只是给你补全代码,而是能理解任务、制定计划、执行代码、修复错误——形成了一个完整的闭环。

我最近用Claude Code完成了一个中等复杂度的功能:从零开始实现一个基于规则的消息队列系统。过程中我没有写一行代码——我只是描述需求,Claude Code自己创建了目录结构、写好了核心逻辑、配置好了CI/CD,还提交了PR。整个过程大概用了两个小时,如果是我自己写,大概需要两到三天。

现代AI Agent编程系统的基本架构

我的工作流现在是什么样的#

经过六年的演进,我现在的编程工作流是这样的:

需求确认阶段:我自己完成。产品经理给的需求,我先在脑子里过一遍,确保理解正确。这个阶段AI帮不上太多忙,因为需求往往是非结构化的,需要人来解读。

架构设计阶段:人主导,AI辅助。我会先设计系统的基本结构,然后让AI帮我review,看有没有遗漏的边界情况或者可能的性能问题。AI在这个阶段的价值不是替代我思考,而是”第二双眼睛”。

代码实现阶段:AI主力,人监督。复杂业务逻辑我自己写,重复性的代码让AI生成。但我会在AI生成后立即审查,不会直接接受。我现在形成了一个习惯:每次接受AI的补全前,快速在脑子里过一遍逻辑链——“这段代码做了什么?它的输入是什么?输出是什么?边界情况处理了吗?”

测试阶段:AI和人一起来。单元测试、集成测试的代码我会让AI帮忙写,但我会确保测试覆盖率达标,而且关键的业务路径一定有测试。

未来的预测#

我认为在接下来的两到三年里,AI编程工具会继续沿着几个方向进化:

**第一,理解能力更深。**现在的AI已经能理解代码了,但还做不到”懂业务”。未来的模型可能会加入更多业务层面的知识——比如理解财务报表、理解电商的SKU概念、理解金融的交易规则。这样AI生成的代码就不再需要那么多人工修正。

**第二,协作模式更自然。**现在的AI编程工具基本上是”你说我做”的模式。未来可能会出现更多”结对编程”式的协作——AI不只是执行指令,而是会主动提出建议、质疑你的决策、甚至预测你接下来要做什么。

**第三,多模态整合。**设计稿、流程图、架构图这些视觉信息,以后可能会直接被AI”读懂”,然后转化成代码。这意味着产品经理画个图,AI就能生成可用的页面——这个未来可能并不遥远。

给同行的一些建议#

如果你现在还没有开始用AI编程工具,我的建议是:现在开始。不要担心AI会替代你——AI替代的不是程序员,而是不会用AI的程序员。真正危险的从来不是工具本身,而是会用工具的人比你更高效。

如果你已经在用AI编程工具,我的建议是:保持主动思考。AI给你的代码,一定要过一遍脑子。Copilot时代我踩过最大的坑就是”看起来对就接受”——结果浪费了大量时间在debug上。现在我会先理解AI给的代码,再决定接受还是修改。

六年前我第一次用Kite的时候,完全没想到AI编程会进化到现在这个程度。站在2026年回望,我依然觉得我们正处在一个巨大变革的早期。未来的编程会是什么样子?老实说我也不知道。但有一点我很确定:会写代码这件事本身,已经不再是最重要的技能了。理解问题、定义问题、设计解决方案——这些能力在AI时代反而会更加珍贵。

工具在变,但编程的本质没变。代码只是手段,解决问题才是目的。希望我们都能在这个变革的时代里,找到自己的位置。

AI编程进化论:从Copilot到AI Agent的6年亲历
https://blog.halo26812.eu.org/blog/ai-coding-evolution-2026
Author halo
Published at 2026年5月23日
版权声明 CC BY-NC-SA 4.0
Comment seems to stuck. Try to refresh?✨