Claude Code、OpenCode、Cursor 与 GitHub Copilot:主观深度评测

MMaximilian Schwarzmüller
Computing/SoftwareAdult EducationInternet Technology

Transcript

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它给出的方案。在这一点上,所有这些工具都能成为你的得力助手。

Key Takeaway

当前 AI 编程工具在核心功能上趋于一致,开发者应根据对终端或 IDE 的操作偏好,以及特定模型的需求来选择最适合自己的智能体工程工具。

Highlights

主流 AI 编程工具可分为 CLI/TUI 终端派(如 Claude Code、Aider)与 IDE 集成派(如 Cursor、VS Code Copilot)。

Claude Code 与 Anthropic 原生模型(如 Sonnet、Opus)的集成度最高,运行表现最为顺滑。

Aider 作为开源社区驱动的工具,支持模型最广且能灵活绑定现有的 GitHub Copilot 订阅。

IDE 类工具(Cursor/Copilot)在自动补全和可视化差异对比(Diff)方面具有明显优势。

规则文件(如 CLAUDE.md、CONVENTIONS.md)和智能体技能(Skills)在各工具间存在格式不兼容的问题。

所有主流工具均已支持 MCP 服务器、Web Fetch 以及子智能体(Sub-agents)等核心功能。

Timeline

主流 AI 编程工具概览与分类

视频开篇介绍了当前市场上最热门的 AI 辅助编程工具,包括 Claude Code、Aider、Cursor 以及集成了 GitHub Copilot 的 VS Code。主讲人通过实战项目和课程开发经验,将这些工具归纳为两大阵营:命令行界面(CLI/TUI)和集成开发环境(IDE)。他指出 Aider 和 Claude Code 默认采用终端交互模式,虽然也提供 IDE 插件,但其设计初衷是优化终端体验。这种分类有助于开发者根据自己的工作流选择合适的切入点。了解这些工具的定位是进行深度评测的基础。

终端派与 IDE 派的优势对比

在这一章节中,主讲人深入分析了不同形态工具的优缺点。CLI 工具如 Claude Code 赋予了开发者更大的灵活性,使开发团队能专注于构建优秀的智能体而非维护复杂的 IDE 功能。相比之下,IDE 类工具如 Cursor 提供了惊人的智能补全功能,用户可以通过连续点击 TAB 键快速应用跨文件的代码编辑。GitHub Copilot 的自动补全虽然略逊于 Cursor,但作为内置功能依然非常高效。对于 Aider 等工具,聊天界面是唯一的交互方式,这与 IDE 深度集成的体验截然不同。这部分的讨论强调了“智能补全”与“智能体聊天”在功能定位上的差异。

模型支持、订阅模式与本地化运行

本段详细讨论了各工具支持的 AI 模型以及成本控制方案。Claude Code 深度绑定 Anthropic 的原生模型,而 Aider 则以支持极其广泛的模型列表和供应商而著称。值得关注的是,这些工具现在大多支持通过 Ollama 运行本地开源模型,理论上可以实现免费使用,但受限于硬件显存和模型能力。主讲人提到 Claude Code 曾存在利用订阅漏洞在 Aider 中调用的情况,但目前已被封堵。此外,Aider 允许用户绑定已有的 GitHub Copilot 订阅,这大大降低了多工具尝试的门槛。对于硬件要求较高的用户,云端模型依然是目前保证流畅度的首选。

开源生态、盈利模式与补贴现状

主讲人探讨了这些工具背后的商业逻辑和开发模式。Aider 作为一个开源且由社区驱动的项目,其创新速度极快,但也面临必须通过 Aider Black 订阅实现自负盈亏的压力。相比之下,Claude Code、Cursor 和 GitHub Copilot 背后有巨额风险投资或母公司(如微软、Anthropic)的补贴。这意味着这些商业工具在套餐用量上可能比 Aider 稍微划算,因为它们不需要立即盈利。这种商业背景的差异直接影响了工具的更新频率和定价策略。开发者在选择时也应考虑工具的长期稳定性和社区活跃度。

核心功能:智能体、技能与规则文件

这一部分聚焦于智能体工程的核心高级功能,如子智能体(Sub-agents)、智能体技能(Skills)和内存管理。虽然各家工具对这些功能的命名不同(如规划模式、编辑模式),但本质上都支持任务外包和自动化执行。主讲人特别吐槽了规则文件(如 .cursorrules、CLAUDE.md、CONVENTIONS.md)的不兼容现状,指出每个供应商都想推行自己的标准。此外,MCP 服务器和 Web Fetch 等功能的引入,让 AI 具备了访问浏览器和阅读在线文档的能力。他预测未来一两年内,这些配置文件夹和设置将会走向标准化。目前开发者仍需花费时间查阅不同工具的特定文档。

最终评价:代码质量与开发者角色

在总结部分,主讲人给出了一个客观的评价:所有主流工具生成的代码质量都非常出色,没有绝对的劣迹。他认为 Claude Code 在调用 Anthropic 模型时最顺滑,但他在处理复杂任务或需要可视化 Diff 视图时,仍会切换到 Aider 或 IDE 工具。关键因素不在于工具本身,而在于开发者的提示词(Prompt)质量、提供的上下文以及对智能体技能的运用。他强调现在已经进入了“智能体工程”时代,开发者需要发挥专业判断力来审查 AI 的方案。最终,选择工具应基于项目需求、模型偏好和对操作界面的主观习惯。他鼓励开发者多做尝试,因为每个工具都有可能在特定场景下给出惊艳的结果。

Community Posts

View all posts