Claude Code 强大的秘密究竟是什么?

Claude Code 的强大,首先来自其强大的模型基础。无论是 Claude 4 的 Sonnet 还是 Opus,这些模型在编程与 Agent 能力方面都有突出的表现,这是它获得成功的根本前提。

其次,Claude Code 强大在于它丰富而实用的内置工具体系。Claude Code 内置了多达 18 个工具,其中包括用于检索代码的 Grep 工具、执行命令的工具、读写 TODO 的工具,以及专门用于架构分析的工具等等。这些工具帮助模型模拟了人类程序员的解决问题思路:制定计划、分析问题、检索代码库中的相关代码位置、解决实际问题,以及进行测试和验证。

在众多工具中,最神奇且值得反复强调的,就是 Task 工具。它能为 Claude Code 创建独立的“分身”,专门用于执行子任务。这样一来,子任务可以完全专注于特定问题,不被主任务的其他上下文所干扰。同时,主任务也不会因为子任务的额外上下文而变得混乱。此外,这些子任务还能继承主模型的工具能力,只不过它们不允许编辑代码,以防止对主任务上下文的历史信息造成干扰。

再者,Claude Code 还有一个不计成本的优势,即它默认不压缩任何上下文信息。每一次请求都会完整地传递过去,包括历史会话记录、工具调用及返回结果,因此完全避免了上下文丢失的情况。相比之下,其他类似工具(如 Cursor)则出于成本考虑,频繁压缩上下文,甚至执行几次之后就暂停,询问用户是否继续操作。

此外,Claude Code 是一个纯粹的命令行(CLI)程序,没有 IDE 的包袱。以 Cursor 等 IDE 为例,每次请求都需要处理复杂的 IDE 上下文信息,比如打开了哪些 Tabs,每个 Tab 的代码具体是什么,当前光标所处的位置等等。不提供这些信息会降低模型对上下文的理解,提供了又会占用过多的上下文空间,影响相关度。而 Claude Code 不受此困扰,它会自主调用工具进行代码检索或联网查询,精准获取自己真正需要的上下文信息,从而避免了 IDE 上下文冗余的问题。


那么,为什么 OpenAI 的 Codex 相比之下明显落后了呢?

我认为,这根本上还是模型能力的问题。虽然 OpenAI 也针对编程需求专门训练了 Codex 模型(但目前尚未公开发布最新成果),其进展明显已被 Anthropic 甩开了一段距离。Claude Code 于今年 2 月份正式发布之前,Anthropic 内部早已广泛使用,并且得到了极佳的反馈。我猜测,在 Claude 4 模型的训练过程中,Anthropic 有意结合了 Claude Code 工具在内部场景和数据中的实际应用情况,进行了大量的强化学习。这种深度定制使得 Claude Code 在 Claude 4 模型中表现尤为突出。

相比之下,OpenAI 明显晚了数月,目前也未能充分进行针对编程工具和实际开发场景的强化训练,因此需要更多时间来弥补这个差距。

此外,Anthropic 采用包月使用模式推广 Claude Code,这明显是一种亏本的策略。我推测 Anthropic 更加看重的是用户在使用过程中产生的海量行为数据。通过分析这些数据,Anthropic 能够洞察各种真实的编程场景、工具使用方式和具体问题的解决效果,这些数据对于下一代模型的训练至关重要。这正是传说中的“数据飞轮效应”,Anthropic 愿意亏损出售服务,正是为了积累高质量的数据。

与此相反,OpenAI 在这方面表现令人失望。目前即便是付费的 o1 pro 用户,也只能使用功能相对较弱的 codex-mini 模型,难以满足真正复杂的编程需求。

同时,Codex 团队还花费大量精力将 codex-cli 用 Rust 重写。但我认为,这种技术细节上的优化并非核心痛点。毕竟用户关心的是产品的实际表现,而非使用的具体技术语言。即使是使用 nodejs,慢一点又何妨?只要最终结果足够好,Agent 运作几十分钟也完全可以接受。用户在意的从来不是语言本身的性能差异或额外安装一个 nodejs,而是最终产品能够真正有效地解决实际问题!