[控场AI]
· 6 分钟阅读· 3,265 字

Claude Agent SDK vs Claude Code:同引擎对决,谁更快?

Claude Agent SDK vs Claude Code:同引擎对决,谁更快?

55行SDK代理与Claude Code同场竞技,以十分之一token更快完成修复任务。

开发者用55行JavaScript基于Claude Agent SDK构建编码代理,与Claude Code在同一仓库、同一模型、同一提示词下对比。核心发现是:SDK驱动的就是Claude Code的同一套代理循环,而Claude Code在循环之外附加了系统指令、24个工具、技能、子代理、CLAUDE.md和git历史,且每次请求都全量携带,初始即消耗约14000 token。三轮测试中Claude Code凭提交历史在上下文理解上占优,但在正赛任务里自制代理以53秒对1分22秒、约3.5万对32.7万输入token、16美分对41美分胜出,两者均通过全部隐藏检查。作者据此建议:交互式开发用Claude Code,窄而自动化的CI与bot场景用SDK自建。

一个55行的代理,凭什么跑赢Claude Code?

一位开发者用55行JavaScript写了个自己的编码代理,和Claude Code在同一个仓库、同一个模型、同一组提示词下正面PK。结果出乎意料:这个"卡丁车"比"整车"快了近30秒,token消耗只有对方的十分之一。

据该开发者在视频中的演示,他的代理接到修VAT显示错误的任务后,13秒内找到bug、完成修复、补上测试用例并跑通。这背后其实没什么黑魔法——他调用的库直接下载了Claude Code本体,同一个程序、同一个版本(2.1.309)。

The loop is the engine.

Anthropic官方文档的说法很直白:Agent SDK给你的就是驱动Claude Code的同一套工具、代理循环和上下文管理。换句话说,循环是引擎,Claude Code是整车。你花钱买的、或者可以跳过的,就是引擎之外的一切。

引擎与整车的区别

代理的核心循环极其简单:问模型→执行它选的工具→把结果送回去→重复直到完成。作者之前手写过这个循环,110行;用SDK后压到55行。

Claude Code在循环之外加了一整套装备:自己的系统指令、24个工具、18个技能、5个子代理、你的CLAUDE.md、git历史——而且这些内容跟着每一次请求一起发送。作者的卡丁车只带自己文件里写的东西:三行系统提示(先读代码、改动要小、跑测试)、三个工具(读文件、改文件、跑命令)、settingSources留空(不加载CLAUDE.md和设置文件)。

默认配置下SDK也会带上很多"车"的部件——高配模式光初始就烧掉约14000 token。那55行代码的主要工作其实是做减法。

Agent SDK(原名 Claude Code SDK)是 Anthropic 提供的开发包,封装了与 Claude Code 相同的代理循环、内置工具与上下文管理能力,让开发者以编程方式构建自动化代理。其核心接口是一个 query() 函数,传入提示词与配置即可启动循环。关键配置项包括:settingSources 控制是否加载 CLAUDE.md、设置文件与技能等「记忆」;allowedTools 限定可用工具集;systemPrompt 覆盖默认系统指令。默认高配模式会携带大量上下文,因此精简配置(如清空 settingSources、只保留少数工具)是降低 token 消耗的主要手段。

Token 与缓存计价:大模型按 token 计费,输入与输出单价不同。Anthropic API 支持提示词缓存(prompt caching),重复的前缀内容可命中缓存并以大幅折扣计价,这也是文中 Claude Code 在理解仓库上下文时「大部分来自缓存」的原因。缓存虽降低单价,但每次请求仍需传输并处理全部上下文,因而影响延迟与总成本。

三轮测试:卡丁车能跟上吗?

测试一:理解仓库上下文

输入同一个词,Claude Code总结了最近的提交并建议下一步工作。作者的代理只知道文件夹名字。代价是:Claude Code在打开任何文件前就消耗了约34500 token,代理只用了3300。大部分来自缓存,按API价格算约6.5美分。这一轮,整车的上下文优势明显。

测试二:修VAT的bug

VAT被印成£7.08而非£7.08,根源是一次整理提交把值归零了。Claude Code因为看过提交历史,第一步就打开了出问题的那次提交。代理靠读代码和测试也找到了同一行,一行修复、同一个新测试用例、各4次请求、各约13秒,双方都通过了所有隐藏检查。

The bug from the start.

唯一差别:Claude Code打印了真实收据来核对,代理只跑了测试,还误报£3.20也有问题——其实没有。

测试三:遵守房子规则

这个仓库的CLAUDE.md里有五条规矩:收据只用大写、每个改动配测试、写changelog、更新readme里的flag、不许提交。Claude Code自动读取,23秒完成且五条全守。代理的配置故意排除了CLAUDE.md——它没被交付规则,但自己环顾文件夹发现了这个文件并先读了一遍,20秒内五条全守,只是多花了一次请求找文件。随后作者改了一行settingSources: project,SDK就像Claude Code一样自动加载了,三次请求、五条全中。

整车上的每个部件,都只是一个选项的距离。

CLAUDE.md 是 Claude Code 约定俗成的项目级指令文件,通常放在仓库根目录,用于写入构建命令、代码规范、提交禁忌等项目约定,会在每次会话开始时自动注入上下文。与之配套的还有 .claude/settings.json 等设置文件,可配置权限、钩子与环境变量。SDK 通过 settingSources 决定是否读取这些来源:设为空数组则不加载任何项目配置,设为 ['project'] 则与 Claude Code 行为一致,自动读取 CLAUDE.md 与项目设置。这一机制让「房子规则」既能被整车自动遵守,也能被卡丁车按需装载。

正赛:53秒对1分22秒

同一任务、同一提交:加一个offers flag,应用本周优惠、显示每项节省并从总价扣除,附带测试。

指标自制代理Claude Code
耗时53秒1分22秒
请求数5次8次
输入token约35,000约327,000
输出token约5,500约8,500
API成本16美分41美分

Claude Code每个请求都背着整车,token量接近十倍,写出的代码也多了一半——这构成了大部分时间差。两边都通过了所有隐藏检查,收据精确到分一致(£37.45)。只有一行不同:Claude Code写"你节省了-£5",让列加起来对得上;代理写"你节省了£5"。作者的原话是:选你的会计吧。

One line differs. Claude Code says you saved minus five pounds.

需要说明的是,这是一次单轮对比,应视为一场比赛而非基准测试。但作者用控制台核对了每次运行的账单,43美分与SDK估算完全一致。

该用哪个:场景决定答案

作者在视频结尾给出了清晰的判断框架:

在键盘前用Claude Code。 它跑在你已经付费的订阅计划上,从第一条消息起就懂你的git历史和CLAUDE.md,每个编辑你都能看到落地过程。测试二里正是提交历史把它直接带到了bug面前。

构建自己的代理,当任务是窄而自动化的。 CI检查、bot、应用里的某个功能——这些场景你按token付费,而在这次比赛中,卡丁车只带了十分之一的token、先到终点、成本不到一半。

One thing to know.

这个对比揭示的本质是:Claude Code的"魔法感"并不来自什么无法复制的巨型应用,而来自一个55行就能驱动的循环,加上围绕它精心打包的上下文、工具和记忆。理解这一点,你就能按任务需要自由拆装——要整车就开整车,要速度就卸掉座椅装卡丁车。

#Claude Agent SDK#Claude Code#AI编程代理#编码代理对比#Agent SDK教程#Claude Code评测#AI代理性能
分享:

相关推荐