00:00:00目前市面上有很多可供选择的智能体工程工具,也就是通过 AI
00:00:06来辅助编写代码。现如今最热门的工具当然要数 Claude Code、Aider、Cursor,
00:00:13以及集成了 GitHub Copilot 的 VS Code。当然还有 Google 的 Anti-Gravity、
00:00:18Codex、Gemini CLI 等等。实话告诉你,在过去的
00:00:24几个月里,我频繁地使用这些工具,因为我一直想测试
00:00:29现有工具的水平以及它们的实际表现。我用它们开发了像 buildmygraphic.com 这样的实战项目,
00:00:35还有一些即将发布的项目以及许多内部项目。我还制作了完整的课程,
00:00:41比如我最近更新的这门课,深入探讨了 Cursor 和 GitHub Copilot;或者是这门
00:00:46昨天发布的课程,专门讲解 Claude Code。但在本视频中,我想为你
00:00:53概述这些工具、它们各自的功能以及我的个人评价。首先,
00:00:59一个重要的区别是,我们可以根据使用方式将它们大致分为两派。
00:01:05一类是 CLI 或 TUI,即命令行界面或终端用户界面,
00:01:12另一类则是 IDE。公平地说,Aider 其实也提供网页模式,你可以
00:01:23在系统上启动本地服务器,然后通过网页界面来操作。但
00:01:31它的默认模式(也是我唯一使用的模式)是 TUI 模式,这和 Claude Code 的
00:01:37交互方式是一样的。也就是说,你在项目中安装并运行 Aider 后,
00:01:44直接在命令行或终端里与它交互。这正是
00:01:49Claude Code 默认的操作方式。值得注意的是,Aider 和 Claude Code 都提供
00:01:57IDE 集成,因此它们可以连接到这些 IDE,例如在 IDE 中显示代码更改或
00:02:04预览预期的代码变更,或者让你在 IDE 中进行交互。虽然
00:02:12存在这些集成,但我认为它们真正优化和设计的初衷,还是为了
00:02:19在命令行(终端)中使用。这就是为什么我称它们为 CLI 或 TUI(终端用户界面)。
00:02:25Claude Code 和 Aider 主要面向终端开发,或者作为现有 IDE 的扩展,
00:02:32而不是像 Cursor 或 Windsurf 那样做成 VS Code 的分支版本。一个重要的原因是,
00:02:40这给开发者带来了更大的灵活性。他们
00:02:49不需要操心 IDE 该有的所有琐碎功能,而是可以
00:02:55专注于构建优秀的智能体和工具,帮助你利用 AI 生成和编辑代码。当然,
00:03:04如果你非要说有什么缺点的话,那就是这些 IDE 型工具提供的功能
00:03:10不仅仅是 AI 智能体或聊天界面。例如,Cursor 拥有惊人的智能补全功能,
00:03:18你只需疯狂按 TAB 键,就能飞速在整个文件甚至跨文件
00:03:26应用代码编辑。我认为 GitHub Copilot 的自动补全也相当不错,
00:03:34虽然在我看来比 Cursor 稍逊一筹,但也很好用。而且最重要的是,
00:03:39这类功能是内置的;而对于 Claude Code 和 Aider 这种 CLI 工具,你的编辑器里
00:03:46是没有自动补全的(至少不是由这些工具驱动的)。它们本质上是智能体或代理化工具,
00:03:55意味着你是通过聊天界面来触发 AI 操作。这就是
00:04:02这些工具的定位。当然,Cursor 和集成了 GitHub Copilot 的 VS Code 除了
00:04:08自动补全外,也提供类似功能。VS Code 有侧边栏可以与 GitHub Copilot 交互,
00:04:14Cursor 也是如此。但对于 Aider 和 Claude Code 来说,这是你最终
00:04:21主要且唯一的交互方式。既然它们本质上都是 AI 智能体,
00:04:28或者说是为了智能体工程而生,那么最核心的问题之一就是:这些工具支持哪些 AI 模型?
00:04:34对于 Claude Code,它主要支持 Anthropic 的模型,
00:04:42也就是 Haiku、Sonnet 以及最强大的 Opus。因为 Claude Code 和
00:04:51这些模型都出自 Anthropic 这一家公司,所以集成效果非常出色,
00:04:57根据我的经验,这些模型在 Claude Code 中的表现往往非常顺滑。我这么说是因为,
00:05:02同样的这些模型在其他工具中也可以使用。用 GitHub Copilot 时,我当然也能
00:05:10选择 Anthropic 的模型,但它们是在不同的框架下运行的。它们运行在 GitHub Copilot、
00:05:17Cursor 或 Aider 的框架中。虽然这些框架也都很优秀,
00:05:23但在我看来,Claude Code 与 Anthropic 原生模型的组合表现尤为卓越。
00:05:29不过值得一提的是,最近有消息宣布
00:05:35Claude Code 也集成了 Ollama。如果你还不了解,Ollama 是一个可以
00:05:41在本地运行开源 AI 模型的工具,前提是你的硬件性能足够强大。所以,
00:05:49理论上你可以配合开源模型使用 Claude Code,这相当于免费使用,
00:05:54因为模型跑在你自己的机器上,你只需要付电费。缺点是,这些开源模型
00:06:01至少在目前,能力通常还赶不上 Anthropic 的模型(尤其是像 Opus 这种)。
00:06:08即使它们能追平,我们也需要大量的显存(GPU RAM)
00:06:16和相当强悍的硬件资源才能运行。简单来说,它们
00:06:22无法在普通的笔记本电脑或 Mac Mini 上流畅运行。这一点需要注意。但
00:06:29支持已经在那里了,随着你硬件的升级和未来开源模型的发展,
00:06:35这可能会成为一个可行的选择。所以我们也提到了 Ollama 的支持。
00:06:42同样,你也可以在 Aider、Cursor 和 VS Code 中使用 Ollama,这些工具
00:06:51也支持大量其他模型。在 Aider 中,如果你输入 models 命令,你会发现
00:06:59可选模型列表非常长,涵盖了不同的供应商,最重要的是,还支持你已有的各种订阅。
00:07:05曾经有一段时间,你可以通过 Claude Code Max 订阅来使用 Aider,
00:07:12也就是说,你可以在 Aider 中调用那个订阅名下的 Anthropic 模型。
00:07:17这在当时非常棒,因为我个人其实更喜欢 Aider 的界面,
00:07:24在很多方面也更倾向于 Aider 的交互逻辑。我认为 Aider 是一款非常了不起的软件,
00:07:30而且它是开源的(我待会再细说)。但后来 Anthropic 封堵了这个漏洞,
00:07:36你现在不能在 Aider 中使用 Claude Code Max 订阅了。不过,你还是可以
00:07:43在 Aider 中使用 GitHub Copilot 订阅。所以,如果你已经买了订阅,
00:07:50这就会非常方便,因为你可以直接在 Aider 中尝试那些模型,
00:07:54而不必局限于在 VS Code 的 GitHub Copilot 插件里使用。这真的很不错。
00:08:00但无论你采用哪种付费模式,这三款工具都能让你访问海量模型,
00:08:06相比之下,Claude Code 的选择就比较有限。我刚才提到了,
00:08:13Aider 是开源的。开源的优势显而易见:开发过程非常透明,
00:08:20由社区驱动,创新速度极快。尽管我觉得这些工具目前
00:08:25其实都在快速迭代。也许 GitHub Copilot 动作稍慢一点点,但他们追赶的速度也很快,
00:08:32能迅速实现在其他工具中出现的各种功能。尽管如此,
00:08:38Aider 作为一个社区驱动的开源替代方案,依然非常有吸引力。不过,
00:08:43Aider 也提供付费订阅。它有 Aider Black 计划,提供不同的层级,
00:08:50就像 Anthropic、GitHub Copilot 或 Cursor 的订阅一样,
00:08:55包含一定的额度,这样你就不用按实际用量逐笔付费,
00:09:02而是支付固定月费来换取一定的使用量。所以即使是开源工具,也提供了订阅选项。
00:09:07目前 Claude Code、Aider、Cursor 和 GitHub Copilot 都有付费订阅方案。
00:09:14对于 Claude Code,你必须付费订阅才能使用;而对于 Aider,订阅是可选的,
00:09:20正如前面提到的,你也可以选择在 Aider 中绑定你的 GitHub Copilot 订阅。
00:09:26这里值得注意的一点是,我觉得 Aider 几乎是这些工具中唯一需要
00:09:31靠自己盈利的,因为它背后不是那种拥有巨额风险投资的大公司,
00:09:39也不像 GitHub Copilot 那样背后站着微软。所以他们必须
00:09:46通过订阅模式来赚钱。而 Claude Code、Cursor,以及我猜也包括 GitHub Copilot,
00:09:52其实都受到了母公司或风投的大量补贴。因此,
00:09:58你在 Claude Code、Cursor 和 GitHub Copilot 的套餐中获得的实际用量,
00:10:05可能比 Aider 稍微划算一点。但这取决于你使用的模型等各种因素,
00:10:11可能实际上差别并不大。现在我们来谈谈功能。它们都支持哪些功能?
00:10:17简而言之,只要某个模型出了一个好功能,其他工具都会迅速跟进。
00:10:22目前看来,Claude Code 似乎是许多新功能的引领者,
00:10:29Cursor 在某种程度上也是如此。GitHub Copilot 往往会稍微滞后一些,
00:10:38但如果我们观察这些功能(这些在我最近发布的 Claude Code 课程
00:10:45和之前提到的 AI 开发者课程中都有涵盖),
00:10:50比如“子智能体”(Sub-agents)或“智能体技能”(Agent skills),它们现在都被这些工具支持了。
00:10:57你可以在 Aider 的文档以及其他供应商的文档中
00:11:04找到相应的说明,所以这些功能大家都有。唯一值得注意的是,
00:11:12在 Aider 中,“智能体”这个词实际上包含了两个概念:一是可以运行 Aider 的
00:11:19不同模式,二是那些可以外包任务的智能体。而在 Claude Code 中,
00:11:26智能体指的就是为了执行特定任务(比如查阅文档)而调用的子智能体。
00:11:34在 Aider 中,你可以通过 Tab 键在不同的智能体之间循环切换,
00:11:42例如在“规划模式”和“编辑模式”之间切换,即对应规划智能体和编辑智能体。
00:11:47而在 Claude Code 中,这些被称为“模式”。虽然叫法不同,
00:11:53但本质上,你在所有这些工具里都能找到智能体和技能等功能。
00:12:01如果某个工具暂时缺失,你可以确信它很快就会支持。内存(Memory)
00:12:05或规则文件(Rules files)也是如此,所有工具都支持它们。你可以设置这些文件
00:12:13来规定一些必须遵守的通用准则,或者分享一些在所有聊天会话中都应考虑的经验。
00:12:18在 Claude Code 中,这是 CLAUDE.md 文件,你也可以在
00:12:24规则目录中设置规则。而在 Aider 中,它支持 CONVENTIONS.md
00:12:31和 CLAUDE.md。CONVENTIONS.md 理论上是一个开放标准,
00:12:40Cursor 也确实支持它;此外,GitHub Copilot 同样支持。除此之外,
00:12:50Cursor 有自己的 .cursorrules,GitHub Copilot 也有自己的规则文件。
00:12:57在 Claude 这里则是我的 Claude 规则。如你所见,这些文件并不完全通用,
00:13:06这正是让人烦恼的地方。理论上 CONVENTIONS.md 应该是通用的,
00:13:12但 Claude Code 像苹果公司一样搞封闭,不支持 CONVENTIONS.md,
00:13:18而是用了 CLAUDE.md。Aider 虽然支持它,但据我所知其他工具并不支持。
00:13:24这种互不兼容确实挺烦人的。总的来说,关于智能体技能(Agent skills)这类功能,
00:13:29虽然不同模型都支持,但它们必须存储在完全不同的
00:13:34文件夹里。例如,用 Aider 时,你会把技能存在 aider_skills 文件夹,
00:13:41或者是为了兼容而存在 claude_skills 文件夹。如果你用 Claude Code,
00:13:48它只支持 claude_skills。Cursor 则支持 cursor_skills、claude_skills 或
00:13:58codex_skills 以实现兼容,但不包含 Aider 的。至于 VS Code 和 GitHub Copilot,
00:14:05则是 .github_skills 或 claude_skills。看来 claude_skills 是最通用的,
00:14:13但你也看得出来,我们正处于技术进化的初期,每个供应商
00:14:20都想推行自己的配置和设置,并强加给用户。这种局面在未来
00:14:28肯定会改变。我相信一两年后,一切都会变得更加标准化。但目前,
00:14:34你需要处理各种文件夹并查阅大量文档。而且,
00:14:39功能变化非常频繁,等到这个视频发布时,有些情况可能已经变了。
00:14:45这些工具现在也都支持 MCP 服务器。比如你可以安装
00:14:51Playwright 服务器来赋予它们访问浏览器的能力;它们也有 Web Fetch 功能,可以发送
00:14:57网络请求,这样你就能让它们去某个文档页面抓取
00:15:02并阅读内容。这非常实用。因此归根结底,从核心
00:15:08功能层面来看,根据我的经验,它们之间并没有巨大的差异。当然,配置项
00:15:14可能不同,某些小众功能可能只存在于特定工具中。但对于那些公认的
00:15:18核心好功能,所有工具基本上都会提供。而且我刚才说了,
00:15:24如果某个工具出了个杀手锏功能,其他的很快也会跟上。
00:15:28那么这些工具的质量如何呢?我的最终评价是什么?你应该选哪一个?
00:15:34哪一个生成的代码质量最高?抱歉,
00:15:40答案可能很无聊:它们其实都相当出色。我知道这很平淡,但事实就是如此。
00:15:48这些我都用过,没有哪一个是让我觉得“糟糕透顶”的。正如我开篇所言,
00:15:54Claude Code 的表现非常稳健,尤其是搭配 Opus 模型时。
00:16:00因为工具和模型出自同一家公司,你能感觉到 Claude Code 能够
00:16:07完美榨取 Anthropic 模型的能力。不过我也要说,
00:16:13有一段时间我觉得 GitHub Copilot 配合 Anthropic 模型的表现甚至
00:16:18在某些方面更好。但这种感觉非常主观,也取决于你具体在做什么项目。
00:16:24我非常喜欢 Aider、Cursor 和 GitHub Copilot 的一点是,我可以
00:16:30切换使用其他模型。比如有一个 GPT-5.2 Codex 模型(我记得是这个名字),
00:16:39它在编程方面简直是神器。Claude Code 用不了这个模型,但
00:16:46其他工具可以。我非常喜欢这个模型。处理复杂任务时,
00:16:53我就会换到 Aider。因为我有 GitHub Copilot 订阅,所以可以直接调用;
00:16:58或者你有 Cursor 订阅也行。总之,当我需要使用
00:17:04Claude Code 并不支持的模型时,我就会切换工具。另外,说实话,
00:17:09有时候或处理某些任务时,我更倾向于使用 IDE 界面。因为我知道
00:17:15我需要自己动手做更多微调。我想要一个清晰的 Diff(差异)视图。
00:17:22Cursor 和 GitHub Copilot 在完成修改后,会给你一个非常直观的变更对比,
00:17:28你可以逐条决定接受还是拒绝。在这些场景下,我更喜欢用 IDE。
00:17:34如果单论代码质量,再次重申,我没法说哪个工具更差。
00:17:41毕竟这是 AI,我用每个工具都遇到过很离谱的错误,也都得到过惊艳的结果。
00:17:49最关键的因素永远是你的 Prompt(提示词)、你提供的上下文,以及你是否善用
00:17:55智能体和技能等功能。特别是技能功能,对于提供额外知识储备非常有效。
00:18:02但这些其实取决于你作为开发者的发挥,因为
00:18:08我们现在讨论的不再是那种不动脑筋的“拿来主义”编程,
00:18:13而是“智能体工程”。你需要发挥作为开发者的专业判断力,
00:18:18尽可能为 AI 提供高质量的信息,并仔细审查
00:18:23它给出的方案。在这一点上,所有这些工具都能成为你的得力助手。