掘金 人工智能 前天 18:57
Augment Code 深度评测:是下一个 Cursor,还是昙花一现的 SWE-BENCH 冠军?
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

Augment Code凭借其Agent模式在AI编程领域崭露头角,尤其在SWE-BENCH基准测试中表现出色。该工具专注于专业开发者和大型代码库,提供强大的长上下文处理能力和记忆机制。Augment Code以插件形式集成于主流IDE,包含聊天、预测编辑、指令编辑、代码补全和Agent等功能。经过实测,Agent模式在代码重构、问题排查、功能添加、逻辑修改和测试用例编写等方面表现出色。尽管仍有不足,但Augment Code凭借其强大的Agent模式,已成为Cursor等现有领先者的有力竞争对手,值得专业开发者体验。

🚀 Augment Code的核心在于其Agent模式,该模式在SWE-BENCH基准测试中取得优异成绩,表明其解决复杂工程问题的能力。

🧠 Augment Code 专注于专业软件工程师和大型代码库,提供高达20万Token的长上下文处理能力,能够理解和处理更大范围的代码。

💡 Augment Code 具备记忆机制,Agent能学习用户编程风格,适应代码库规范,提高交互效率。它以IDE插件形式提供服务,与VS Code、JetBrains等主流开发环境无缝集成。

🛠️ Augment Code 提供聊天、Next Edit、Instructions、Completions和Agent五个核心组件。Agent模式能端到端地完成复杂软件开发任务,保持过程透明,提高开发效率。

💰 Augment Code 采用订阅模式,目前提供14天免费试用期,定价约为每月30美元。Augment Code在代码重构、问题排查、功能添加、逻辑修改和测试用例编写等方面表现出色,但查找引用功能存在不足。

去年的 AI 编程赛道可谓风起云涌,在这场竞赛中,Cursor 凭借其惊人的迭代速度和精准切中开发者痛点的功能,迅速在一众竞品中脱颖而出。

然而,就在许多人都认为 Cursor 的领先地位将日益稳固之际,一位新的挑战者——Augment Code——带着其全新的 Agent 模式高调入场,首次公开亮相便交出了一份极其亮眼的成绩单:

在权威的 SWE-BENCH 基准测试中,Augment Agent 以 65.4% 的高分,一举登顶榜首。

需要强调的是,SWE-BENCH 并非考察那些脱离实际生产的算法题,而是直接取材于 GitHub 上的真实软件工程任务。能在这样贴近实战的测试中拔得头筹,足以证明 Augment Code 具备解决复杂工程问题的硬实力,绝非等闲之辈。

作为一名长期扎根于 AI 编程赛道的观察者,我自然不会错过这场可能改变赛道格局的对决。因此,我第一时间探索了 Augment Code 的官网,研读了其技术博客,并亲自上手体验了各项功能,力求为你带来关于这款工具的第一手信息和深度解读。

在深入了解之前,先分享一个背景信息:虽然 Augment Code 对许多人来说可能是个新面孔,以为是哪个刚崭露头角的新秀,但实际上,其团队早在 2022 年就已经低调开始了相关的研发工作。这次携 Agent 模式和 SWE-BENCH 高分的高调亮相,更像是“三年磨一剑”后,将长期积累的技术成果进行的一次集中展示。

打开 Augment 的产品官网,首先映入眼帘的,就是它那句醒目的 Slogan:

“最了解您和您的代码库的编码智能体。”
——首个为专业软件工程师和大型代码库构建的 AI 智能体

语言简洁,语气克制,但透露出一种专注于专业领域的底气。不难看出,Augment Code 并非面向那些没有编程基础的普通人,也不是那种主打“一句话生成简单应用”的无代码工具。

它的目标用户画像非常清晰:那些在真实软件工程项目中摸爬滚打多年、需要处理动辄数万甚至数十万行代码的专业开发者,以及他们所面对的庞大而复杂的代码库。

这一点,从他们介绍自家 Agent 模式的技术博客中可以得到进一步印证。Augment 团队着重强调了 Agent 在以下两个核心能力上的显著提升,这对于处理大型项目至关重要:

    强大的长上下文处理能力: Augment 宣称其上下文窗口已扩展至惊人的 20 万 Token。这一容量远超当前许多主流模型,理论上意味着 Agent 能够“阅读”和理解更大范围的代码,从而在分析复杂依赖关系、进行大规模重构或提供高度相关的代码建议时,表现得更加智能和准确。这对于深入理解大型代码库的结构和逻辑至关重要。
    引入了记忆(Memory)机制: Augment 的 Agent 不仅仅是单次交互的工具,它被设计为具备持续学习的能力。在使用过程中,Agent 会自动更新其“记忆” ,逐步学习和适应用户的编程风格、代码库的特定规范和常用模式。这种记忆机制使得 Agent 在连续的对话和编码任务中能够保持上下文连贯性,生成更符合开发者习惯和项目要求的代码,显著提升交互效率和体验。

不过,相比官方高调宣传的这两大特性,Augment Code 的另一个看似“保守”的路线选择反而引起了我的特别关注:

Augment Code 目前仍然坚持以 IDE 插件的形式提供服务,能够无缝集成到 VS Code、JetBrains 全家桶等主流开发环境中。

要知道,之前 Cursor 正是因为觉得插件形式限制太多(比如难以深度定制 UI、难以实现某些底层交互等),才毅然决然地选择了 Fork 自 VS Code 的开源版本进行二次开发的路线,从而打造自己专属的 AI IDE,而这几乎成为了后续的主流 AI 编程工具的标准做法。

Augment Code 如今“反其道而行”,坚持插件路线,这固然能让更广泛的、使用不同 IDE 的开发者群体受益,但 Cursor 当初遇到的那些插件限制,Augment Code 理论上也同样会面对。这是否会成为它未来发展的“天花板”?

或者,Augment Code 是否已经掌握了某种独特的技术或巧妙的设计,能够在插件架构内突破这些束缚,实现媲美甚至超越独立 IDE 的深度集成和功能体验?

要回答这个问题,恐怕还需要将 Augment Code 与 Cursor 等主要竞品,进行更细致的功能横向对比和实际体验评测之后,才能知晓了。

在此之前,让我们先快速检视一下 Augment Code 的核心武器库。它主要围绕以下五个组件构建:

    Chat: 聊天交互界面。Next Edit: 预测性编辑建议。Instructions: 指令驱动的代码编辑/生成。Completions: 上下文代码补全。Agent: 任务驱动的自动化工作流。

如果你对 AI 编程工具稍有了解,可能会觉得这些功能似曾相识。没错,这些功能如今几乎已经成为主流 AI 辅助编程工具的标准配置,其中:

    Chat 主要用于代码库的探索和理解,当你面对不熟悉的代码时,可以通过自然语言提问,快速获取解释和导航。Next Edit 就是那个曾让 Cursor 声名鹊起的功能。它能根据你最近的操作,智能预测你下一步可能要进行的编辑点,一键接受即可应用更改,有助于减少编码中的一些重复性劳动。Instructions 允许你更精确地操控代码。无论是选中一段现有代码进行重构,还是在特定位置插入新逻辑,你只需在输入框中给出指令,Augment 就能帮你完成编写或修改。Completions 是我们熟悉的实时代码补全。在你编写代码时,Augment 会根据上下文智能提供建议,按下 Tab 键即可采纳,加速日常编码流程。

然而,这次发布的重头戏,无疑还是 Agent 模式。Augment Agent 的目标是帮你端到端地完成更复杂的软件开发任务。无论是快速修复一个 Bug,还是从零开始实现一个完整的功能,Agent 都会尝试将你的高级请求分解成一个可执行的计划,然后逐步实施。重要的是,它会让你了解它正在做什么以及计划修改哪些代码,保持过程的透明度。

初步体验下来,我的结论是 Augment Agent 在核心能力上,确实展现出了与 Cursor 和 Windsurf 等工具的 Agent 模式旗鼓相当的实力,甚至在某些交互流程的体验感上,似乎更胜一筹。当然,这还需要更长时间和多样化场景的验证。

除此之外,还有几个值得注意的技术和商业细节:

    模型选择:Augment Code 目前没有提供让用户手动切换底层大模型的选项。官方解释是,他们认为输出质量更多取决于输入上下文的质量,而非单纯依赖某个特定模型。为此,Augment 构建了一个**「实时上下文引擎」** ,旨在更好地理解大型企业级代码库。该引擎负责在正确的时间获取正确的上下文信息,动态选择最适合当前任务的后台模型(可能包括 Claude 3.7 Sonnet、OpenAI o1 等),以确保响应的准确性、相关性和实用性。定价策略:关于大家最关心的价格,预期定价大约在每月 30 美元。不过,先别被这个数字劝退。目前 Augment Code 仍处于公开体验阶段,提供 14 天的免费试用期。开发团队表示,他们正积极收集早期用户的反馈,未来可能会根据反馈调整最终的定价方案。

好了,通过上面的介绍,我们对 Augment Code 的定位、核心功能、特别是其 Agent 模式以及一些关键信息有了比较全面的了解。理论讲了不少,接下来,让我们进入实战环节,看看它在实际编码场景中的表现究竟如何。

上手体验:安装与初步设置

将 Augment Code 集成到你的开发环境非常简单:

    在 VS Code 的侧边栏中找到「扩展」图标。打开应用商店面板,搜索「Augment」。找到 Augment Code 插件,点击安装。

安装完成后,侧边栏会出现 Augment 的图标。点击它,会打开 Augment 的扩展面板。初次使用时,你需要选择如何引入你的项目:

    创建新项目打开本地已有的文件夹克隆一个远程 Git 仓库

选择项目后,Augment 会请求对你的代码库进行索引 (Indexing) 。这个过程至关重要,因为它能帮助 Augment 理解你项目的结构、依赖、编码模式和潜在的最佳实践。索引完成后,Augment 就能提供更贴合你项目实际情况的定制化代码建议和答案。


注意:Augment 默认会索引工作区中的所有文件,但你可以通过项目根目录下的 .gitignore.augmentignore 文件来精确控制哪些文件或目录应该被排除在索引之外。

索引完成后,默认打开的聊天面板会显示 Augment 对你代码库的基本理解,并将其作为后续对话的上下文基础。

其下方还会提供一系列建议性问题,帮助你快速开始探索代码库。

个性化交互:使用指南 (Guidelines)

默认情况下,Augment 会以英文回答问题。如果你希望它使用中文或其他语言,可以通过指南 (Guidelines) 功能进行设置。

指南是用于引导 Augment 生成更符合你特定需求的回复,例如遵循特定的编码风格、考虑特定的库版本,或者指定回复语言。

在聊天输入框中输入 @ 符号,就可以选择或创建用户指南。

例如,你可以创建一个指南,要求 Augment 使用与用户提问相同的语言进行回答。

设置之后,当你用中文提问时,Augment 的回复也会相应地变成中文。

Agent 模式实战:自动化开发任务

现在,让我们切换到核心的 Agent 模式。在聊天输入框左下方的下拉菜单中,可以选择 Agent。Agent 模式有两种运行方式:

    默认 Agent 模式:当 Agent 需要执行终端命令或访问外部服务(如 API)时,它会暂停并请求你的确认。你需要审查它建议的操作,然后手动点击“继续”按钮,Agent 才会执行并继续工作。这种方式提供了更多的控制权。Agent Auto 模式:在此模式下,Agent 会更加自主地行动。它会自动编辑文件、执行它认为必要的终端命令(例如安装依赖)以及访问配置好的服务,以更快地完成任务。

一个有趣的小细节是,启动 Agent 模式时,Augment 会读取你 Git 配置中的用户名,并以此来称呼你,同时介绍 Agent 的记忆 (Memory) 功能。


记忆 功能旨在帮助 Agent 记住关于你工作区的重要细节以及你的编码偏好。这些记忆存储在本地 ,并应用于所有 Agent 请求。

Agent 可以通过多种方式自动或手动添加记忆:例如,你可以直接要求 Agent 记住某事,或者手动编辑记忆文件。

为了更好地完成任务,Agent 默认会利用以下信息作为上下文:

    当前工作区的索引信息。当前在编辑器中打开的文件。Agent 的记忆内容。已激活的用户指南。当前在编辑器中选中的代码片段。

此外,你还可以通过在输入框中输入 @ 并选择文件或文件夹来手动添加额外的上下文,或者通过点击回形针图标上传图像作为上下文。

当我们向 Agent 提出一个开发需求后(例如,实现某个功能),它会首先尝试理解需求的真正意图。如下例所示,它识别出用户可能想要实现的是一个“决策树”功能。

随后,Agent 会列出它计划执行的步骤。在这个过程中,你可以随时点击“停止”按钮来中断 Agent 的操作,以便在它偏离方向时进行纠正。

Agent Auto 模式下,如果任务需要安装新的依赖项,Agent 会自动执行相应的包管理器命令(如 npm install)。

随着代码的变更,Augment 会在后台不定期地重新索引代码库,以确保其对工作区的理解保持最新。

为了保持透明度,你可以随时展开 Agent 执行的每个操作步骤,查看详细信息:包括文件更改的具体 diff、完整的终端命令及其输出,以及任何外部集成调用的结果。

当任务完成(例如,实现了一个 Web 应用功能)后,Agent 甚至可以直接帮助你在浏览器中打开应用预览。

在这个初步的示例中,Agent 输出的代码一次性通过,没有出现明显的报错。

以上是对 Augment Agent 使用流程的初体验。但这仅仅是“开胃小菜”。为了更全面地评估它在真实工作环境中的表现,我进行了一系列实际的编码任务测试。

注:由于涉及具体代码不便展示,以下测试结果以流程和关键点形式呈现,力求直观。

多场景能力验证

代码重构 (成功 )

      自动识别到方法 a 与类 B 的关联,并同步进行了修改。自动查找并更新了项目中所有调用方法 a 的地方。一次性完成修改,代码编译通过且运行正常,效果理想。

问题排查 ① (单文件 Bug - 成功 ✅)

    任务:排查界面上输入文本后确认按钮仍不可点击的问题。表现:
      准确诊断出问题在于文本变更后未及时更新按钮状态。给出了解决方案:添加文本监听器,在文本变更时刷新状态。考虑周全,还自动在页面销毁时注销监听器,避免内存泄漏。

问题排查 ② (多文件 Bug - 成功 ✅)

    任务:排查多处监听同一数据变化但表现不一致的原因。表现:
      信息收集:有效查找并关联了多个相关文件,分析了不同地方的具体实现逻辑。问题分析:清晰解释了导致表现不一致的根本原因。解决方案:提出了多种可行的解决方案,并分析了各自的优缺点,供开发者选择。

添加功能 (成功 ✅)

    任务:要求参考项目中其他模块的实现,在当前模块添加类似功能(故意未提供具体文件,考验其检索能力)。表现:
      准确地定位到了参考模块中对应的功能实现代码。基于参考代码和当前模块上下文,准确生成了新功能的 UI 和逻辑代码。代码一次生成完成,没有明显错误。

修改逻辑 (成功 ✅)

    任务:要求更改代码中某个复杂的判断逻辑(故意未提供具体代码行、文件或字段名)。表现:
      首先检查了当前打开文件的代码。智能地查找并定位到了可能包含相关逻辑的文件。在相关文件中准确找到了满足需求的判断条件和字段。按照要求成功修改了判断逻辑。额外提供了针对不同场景的测试建议,考虑周到。

编写测试用例 (成功 ✅)

    任务:要求根据某个类的定义编写单元测试用例。表现:
      准确识别了类中每个字段可能存在的类型和边界情况。生成的测试用例覆盖了所有关键的有效和无效输入情况,覆盖率较高。

查找引用 (失败 ❎)

    任务:要求查找项目中所有引用某个特定方法的地方。表现:
      未能完全覆盖所有引用点,仅找到了部分引用(实际 11 处,仅找到 4 处)。当被要求继续查找时,出现了“幻觉”,输出了项目中并不存在的代码引用。****

梳理流程 (成功 ✅)

    任务:要求梳理某个核心业务模块从初始化到执行成功/失败回调的完整处理流程。表现:
      能够跨多个模块和文件,精准定位到散落在各处的关键代码逻辑。清晰地列出了核心流程上涉及的关键类和方法,并支持一键跳转到对应代码。在关键方法处以注释形式补充了说明。甚至能够生成 Mermaid 格式的流程图,可视化数据流转,非常有助于理解复杂逻辑。

总结与展望

Augment Agent 在多个真实场景中展现出的解决复杂工程任务的强大能力,有力地印证了其登顶 SWE-BENCH 基准测试并非虚名。同时也足以证明,Augment Code 已具备充分实力,成为 Cursor 等现有领先者的有力竞争对手。

考虑到目前仍提供 14 天的免费试用期,对于那些正在处理大型复杂项目,或是对当前 AI 编程工具的 Agent 能力感到不甚满意的专业开发者而言,Augment Code 绝对值得投入时间,亲自上手体验一番。

毫无疑问,这场 AI 编程工具的竞赛,精彩才刚刚开始,远未到达终局。

引用

www.augmentcode.com/blog/ai-mod…

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

Augment Code AI编程 Agent模式 SWE-BENCH
相关文章