# Claude API 和 Claude Code 区别：该用哪个

> 模型相同：API 在自己代码里按 token 计费调用，Claude Code 是 Pro 起订阅已含的编程代理，也可走 API Key；给别人用的产品只能走 API Key。

- URL: https://blog.laozhang.ai/zh/posts/claude-api-vs-claude-code
- Published: 2026-09-26
- Updated: 2026-09-26
- Author: LaoZhang AI Team (https://blog.laozhang.ai/zh/about)
- Category: Claude Code
- Tags: Claude API, Claude Code, Agent SDK, Claude 计费, Anthropic

---
截至 2026 年 9 月 26 日，Claude API 和 Claude Code 背后是同一批 Claude 模型（Opus 5.5、Sonnet 5 等），区别在用法和账单。Claude API 是开发接口：你的程序向 `https://api.anthropic.com/v1/messages` 发请求、拿回模型输出，读文件、调工具、重试都由你的代码处理，按 token 计费。Claude Code 是 Anthropic 做的代理式编程工具，能读代码库、改文件、跑命令，在终端、IDE、桌面应用和浏览器里都能用，“调用模型 → 执行工具 → 再调用模型”这个循环由它替你跑。

按你手上的事来选：

- **在自己的仓库里写代码、修 bug**：用 Claude Code。Pro（$20/月）及以上的订阅已经包含，不必另买 API；Free 方案不含 Claude Code。
- **给自己的产品加 Claude 功能**，比如客服回复、文档摘要、分类抽取：用 Claude API，在 Claude Console 创建 API Key，按 token 付费。
- **在脚本或 CI 里让 Claude 改代码**：用 `claude -p` 或 Agent SDK，凭据首选 API Key。
- **做成产品给别人用的 agent**：只能用 API Key 或云平台凭据认证，不能让用户用 claude.ai 账号登录，也不能拿你的 Pro/Max 订阅替用户转发请求。

另一个前提：中国大陆和香港不在 Anthropic 的支持地区列表里，官方订阅和 API 都不面向这两个地区提供。国内开发者可以怎么接，见后文“在国内怎么用”一节。

## 同一批模型，区别在谁来跑循环

直接调 API，一次请求就是一问一答：

```bash
curl https://api.anthropic.com/v1/messages \
  -H "content-type: application/json" \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -d '{
    "model": "claude-opus-5-5",
    "max_tokens": 1000,
    "messages": [
      {"role": "user", "content": "用三句话解释什么是幂等接口"}
    ]
  }'
```

模型返回一段 JSON，别的都得你自己来。想让它修改 `auth.py`，要先把文件内容放进请求，拿到回复后再自己写回文件；想让它自己决定读哪个文件、跑哪条测试，就得定义工具、解析模型发出的工具调用、执行、再把结果发回去。这个循环由你写，Client SDK 里有一个 beta 版的 tool runner 可以代劳一部分。

Claude Code 把这一整套做好了。同样修 bug，一行命令：

```bash
claude -p "Find and fix the bug in auth.py" --allowedTools "Read,Edit,Bash"
```

它自己读文件、改代码、跑命令，你只决定它能用哪些工具。

| | Claude API | Claude Code |
| --- | --- | --- |
| 是什么 | 开发接口：Messages API 加各语言的 Client SDK | 代理式编程工具：终端 CLI、VS Code 与 JetBrains 扩展、桌面应用、网页 |
| 谁来跑工具循环 | 你的代码 | Claude Code |
| 凭据 | Claude Console 的 API Key，或云平台凭据 | 订阅账号登录、Console 账号或 API Key、云平台凭据、网关 token |
| 计费 | 按 token，记在 Console | 订阅用户从订阅额度里扣；用 API Key 或 Console 登录时按 token 计 |
| 适用条款 | 商业服务条款 | Free、Pro、Max 用户适用消费者条款；Team、Enterprise 和 API 用户适用商业条款 |

几个常见的混淆：

- Claude Code 不是一个模型，也不是“换了训练数据的 Claude”。它调用的就是 API 上那几款模型，官方成本文档写明 Claude Code 按 API token 消耗计费，只是订阅用户的用量已经包含在订阅里。
- Claude（claude.ai 网页版、桌面和手机应用）是聊天产品，Claude Code 是编程工具。付费订阅两者都包含，而且共用同一个额度池：你在网页上聊得多，留给 Claude Code 的就少。
- Claude Code 这个客户端不绑定 Anthropic 的账单。它可以登录订阅、使用 Console 的 API Key，也能接 Amazon Bedrock、Google Cloud's Agent Platform（原 Vertex AI）和 Microsoft Foundry，还能指向 LLM 网关。

## 按任务选：用哪一层、什么凭据、账单记在哪

Anthropic 在 Agent SDK 文档里把构建方式分成四种：Claude Code CLI、Agent SDK、Client SDK（直接调 API）和 Managed Agents（由 Anthropic 托管 agent 运行）。下表按常见任务展开，并补上凭据、账单和不能越过的边界。

| 你要做的事 | 用哪一层 | 能用的凭据 | 账单记在哪 | 边界 |
| --- | --- | --- | --- | --- |
| 在自己的仓库里交互式写代码、调试、重构 | Claude Code：终端、IDE 扩展、桌面应用 | Pro、Max、Team、Enterprise 账号登录；Console 账号；云平台凭据 | 订阅额度，与聊天共用；Console 登录按 token 计；云平台记在云账单 | Free 不含 Claude Code；环境里有 `ANTHROPIC_API_KEY` 并被批准后，改按 Key 计费 |
| 在脚本、定时任务或 CI 里让 Claude 改代码、写总结 | `claude -p`，即 Agent SDK 的命令行形态 | `ANTHROPIC_API_KEY` 或 `apiKeyHelper`；订阅用户也可用 `claude setup-token` 生成的 `CLAUDE_CODE_OAUTH_TOKEN` | 随凭据：Console 或订阅额度 | `-p` 下只要有 API Key 就一定用它；加 `--bare` 时只认 API Key |
| 在自己的 Python 或 TypeScript 程序里嵌入能读写文件、执行命令的 agent | Agent SDK | API Key 或云平台凭据 | Console 或云账单 | 发布给别人用时，不能提供 claude.ai 登录，也不能用订阅额度 |
| 给自己的产品加对话、摘要、分类、抽取等功能 | Messages API 加 Client SDK | Console API Key 或云平台凭据 | Console 或云账单 | 工具循环自己写；Pro/Max 订阅的额度用不到这里 |
| 让 Anthropic 托管 agent 的运行环境 | Managed Agents，通过 Claude API 配置 | API Key | Console | 会话跑在 Anthropic 托管的云端沙箱，或你自建的沙箱 |
| 在自己的平台里预装 Claude Code 给用户用 | 未经修改的 Claude Code 程序 | 每个用户自己的 API Key、订阅或云平台凭据 | 各用户自己的账户 | 不得修改程序、不得替用户付费或转售用量；需要同意商业服务条款 |

表里的边界来自 Agent SDK 文档和 Claude Code 的法律与合规页，要点是区分“自己用”和“给别人用”：

- **自己用**：用你自己的订阅登录未修改的 Claude Code 是正常用法，在别人托管的平台上登录也可以。Pro 和 Max 公布的额度，前提是“普通的个人使用 Claude Code 和 Agent SDK”。
- **给别人用**：开发产品或服务（包括基于 Agent SDK 做的 agent），要用 Console 的 API Key 或受支持的云平台认证。不允许在自己的应用里提供 Claude.ai 登录，不允许用 Free、Pro、Max 的凭据替用户转发请求，也不能收集或中转用户的 Claude.ai 凭据。Anthropic 保留不经事先通知采取限制措施的权利。
- 给自己团队配 API Key 不受这条限制，比如写进开发环境或密钥管理服务，只要用量记在 Key 所有者名下、没有转售。

![五类任务分别对应 Claude Code、claude -p、Agent SDK、Messages API 和 Managed Agents，标出各自的凭据与账单去向，并以虚线分开自己用和做产品给别人用](https://blog.laozhang.ai/posts/zh/claude-api-vs-claude-code/img/choose-layer-by-task.webp)

哪一层合适，还有一个简单的判断：只需要“输入文本、返回文本”的功能，用 Messages API 最轻；需要 agent 在文件系统和命令行里干活，用 Agent SDK，省掉自己写循环；不想自己运维 agent 的运行环境，再看 Managed Agents，它与 Agent SDK 的取舍见 [Claude Managed Agents 是什么？2026 年什么时候该用，什么时候别用](https://blog.laozhang.ai/zh/posts/claude-managed-agents)。

### “Claude Code API”说的是哪一个

这个说法有两种意思，答案不同：

1. **用 API Key 付费的 Claude Code**：Claude Code 用 Console 账号登录，或读到 `ANTHROPIC_API_KEY`，用量按 token 记在 Console。价格就是下文 API 价格表里的那几列，没有单独的“Claude Code API 价格”。
2. **用程序调用 Claude Code**：命令行用 `claude -p`，Python 和 TypeScript 用 Agent SDK。其他语言可以把 CLI 当子进程运行，加 `--output-format json` 拿结构化结果。

## 三个多花钱或越界的做法

1. **订阅里已经有 Claude Code，又去买 API 额度来“开通”它。** Pro、Max、Team、Enterprise 都包含 Claude Code，用 claude.ai 账号登录就能用。API 额度是另一本账，只有打算按 token 付费时才需要。
2. **环境里残留 `ANTHROPIC_API_KEY`。** 以前做别的项目时写进 shell 配置的 Key，会让 Claude Code 在你批准一次之后一直按 token 计费，订阅额度反而闲着；非交互的 `-p` 模式连批准这一步都没有。如果那个 Key 所在的组织已停用或过期，还会直接认证失败。下一节讲怎么确认和切回。
3. **用订阅登录驱动自己的产品。** 把自己的 Pro/Max 凭据接到给别人用的服务里，或者在产品里放一个 claude.ai 登录按钮，都不在允许范围内；给别人用的东西从一开始就走 API Key。

## 确认 Claude Code 现在走哪种凭据：/status

Claude Code 同时找到几种凭据时，按下面的顺序只用第一个：

1. 云平台凭据，即设置了 `CLAUDE_CODE_USE_BEDROCK`、`CLAUDE_CODE_USE_VERTEX` 或 `CLAUDE_CODE_USE_FOUNDRY`
2. `ANTHROPIC_AUTH_TOKEN`，以 Bearer 形式发给 LLM 网关或代理
3. `ANTHROPIC_API_KEY`
4. `apiKeyHelper` 脚本返回的 Key
5. `CLAUDE_CODE_OAUTH_TOKEN`
6. Anthropic profile 和联合身份凭据
7. `/login` 的订阅登录

订阅登录排在最后。所以同时有订阅和 API Key 时，批准过的 Key 会胜出。确认和切回的步骤：

1. 在 Claude Code 里输入 `/status`，看当前用的是哪种登录方式；同时配置了登录和 API Key 时，没在用的那个会被标出来。
2. 想回到订阅：执行 `unset ANTHROPIC_API_KEY`，并从 shell 配置文件里删掉那一行，重开会话再看一次 `/status`。交互模式下也可以在 `/config` 里关掉 “Use custom API key”，这个开关只在环境里有 `ANTHROPIC_API_KEY` 时出现。
3. 看真实花费：API 计费以 Claude Console 的 Usage 页为准。`/usage` 里 Session 部分的金额是按标价在本地估算的，对 Pro、Max 用户不代表账单，订阅用户要看同一屏的额度进度条。

![Claude Code 七级凭据优先顺序：ANTHROPIC_API_KEY 排第三会抢先生效，/login 订阅登录排最后；右侧是用 /status 确认、unset 后重开会话切回订阅的三步](https://blog.laozhang.ai/posts/zh/claude-api-vs-claude-code/img/credential-priority-status.webp)

这套顺序适用于终端 CLI、VS Code 扩展、Agent SDK 和 GitHub Actions。Claude Desktop 和网页上的云端会话不读这些环境变量，云端会话始终用订阅凭据，在云环境里设置 API Key 也不会覆盖。

更细的计费排查见 [Claude Code API Key 和订阅计费怎么选：先看 /status](https://blog.laozhang.ai/zh/posts/claude-code-api-key-vs-subscription-billing)；Key、模型和网关的具体设置见 [Claude Code API 配置：先选路由，再设置 Key、模型和网关](https://blog.laozhang.ai/zh/posts/claude-code-api-configuration)。

## 在脚本和 CI 里用：-p、--bare 与凭据

`claude -p` 是 Claude Code 的非交互模式，也是 Agent SDK 的命令行形态。在 CI 里建议加 `--bare`：

```bash
export ANTHROPIC_API_KEY="你的 Console API Key"
claude --bare -p "Summarize README.md" --allowedTools "Read"
```

- `--bare` 跳过 hooks、skills、插件、MCP 服务器、自动记忆和 CLAUDE.md 的自动加载，每台机器上跑出来的结果一致。官方推荐脚本和 SDK 调用使用它，并计划将来让它成为 `-p` 的默认行为。
- bare 模式不读 OAuth 凭据和系统钥匙串，必须提供 `ANTHROPIC_API_KEY` 或 `apiKeyHelper`；Bedrock、Google Cloud's Agent Platform 和 Microsoft Foundry 照常读取各自的凭据。
- 想在自己的 CI 里用订阅额度：本机运行 `claude setup-token`，浏览器授权后得到一个有效期一年的 token，设为 `CLAUDE_CODE_OAUTH_TOKEN`。它需要 Pro、Max、Team 或 Enterprise，只能发模型请求，而且 bare 模式不读它。环境里如果同时有 `ANTHROPIC_API_KEY`，实际用的是 Key。
- 不加 `--bare` 时，`-p` 会执行项目 `.claude/settings.json` 里的 hooks，连接 `.mcp.json` 里的服务器，即使这个目录你从没信任过，也不会弹出确认。在 CI 里处理别人提交的代码时，这一点决定了你该不该加 `--bare`。

## 费用：订阅额度和 token 账单怎么比

订阅方案（截至 2026 年 9 月 26 日，美元，不含税）：

| 方案 | 价格 | Claude Code |
| --- | --- | --- |
| Free | $0 | 不含 |
| Pro | 月付 $20；年付每月折合 $17，一次付 $200 | 含 |
| Max 5x | $100/月 | 含，额度为 Pro 的 5 倍 |
| Max 20x | $200/月 | 含，额度为 Pro 的 20 倍 |

聊天和 Claude Code 从同一个额度池里扣，按 5 小时滚动窗口重置，付费方案另有每周上限。用完可以等重置、升级方案，或者开启 usage credits，超出的部分按 API 标准价计费。Enterprise 是每席位每月 $20，用量另按 API 价格计。

Claude API 价格（每百万 token）：

| 模型 | 模型 ID | 输入 | 输出 |
| --- | --- | --- | --- |
| Fable 5.1 | `claude-fable-5-1` | $10 | $50 |
| Opus 5.5 | `claude-opus-5-5` | $4 | $20 |
| Sonnet 5 | `claude-sonnet-5` | $2 | $10 |
| Haiku 4.5 | `claude-haiku-4-5-20251001` | $1 | $5 |

缓存命中的输入按基础价的 0.1 倍计（Opus 5.5 为 0.05 倍，Fable 5.1 为 0.025 倍），Batch 调用打五折。Sonnet 5 的 $2/$10 原本是发布价，原定 2026 年 9 月 1 日涨到 $3/$15 的计划已经取消，现在就是标准价。

订阅和按 token 付费差多少，可以用一个假设算一下。设一次代理式编码会话消耗 200 万输入 token、15 万输出 token（假设值，实际随仓库大小和任务差别很大），不算缓存：

- Sonnet 5：2 × $2 + 0.15 × $10 = $5.50
- Opus 5.5：2 × $4 + 0.15 × $20 = $11.00

一个月 20 次这样的会话，按 token 付费是 $110（Sonnet 5）或 $220（Opus 5.5），而 Pro 是 $20，Max 是 $100 或 $200。按这个假设，经常写代码的人用订阅便宜得多，前提是订阅额度够用，它不是无限量；如果一个月只跑三四次 Sonnet 5 会话，按 token 付费也就 $16.50 到 $22，和 Pro 差不多。反复读同一批上下文时，缓存会把 API 的输入成本压下来不少。

团队可以参考 Anthropic 成本文档里的企业部署平均值：每位开发者每个活跃日约 $13，每月 $150–250，90% 的用户每个活跃日低于 $30。这是企业团队的平均数，不是个人用量的预测。

还要分清两种“额度”：Console 账户里的 API credits，用来付 API 调用和 API Key 登录的 Claude Code；订阅里的 usage credits，只在超出订阅额度后按 API 标准价续用，要用 claude.ai 账号登录才能在 Claude Code 里用 `/usage-credits` 打开设置，API Key 登录时没有这个命令。

各方案的额度和 Team 价格见 [Claude Code 价格 2026：Pro、Max、Team、API 和额外用量怎么选](https://blog.laozhang.ai/zh/posts/claude-code-pricing-guide)；两档订阅怎么选见 [Claude Pro vs Max 怎么选（2026）：价格、Claude Code 限制与 Max 是否值得](https://blog.laozhang.ai/zh/posts/claude-code-pro-vs-max)；天天高强度使用、想算清该不该转 API，见 [Claude Code 重度用户：保留订阅、降级，还是改用 API？](https://blog.laozhang.ai/zh/posts/claude-api-vs-subscription-cost)。

## 在国内怎么用

中国大陆和香港不在 Anthropic 的支持地区列表里，台湾、日本、韩国、美国等在列。也就是说，官方的订阅和 Console API 在大陆都不提供。

国内开发者常把 Claude Code 当作客户端，接到别的服务上。Claude Code 支持用 `ANTHROPIC_BASE_URL` 指向自定义端点，用 `ANTHROPIC_AUTH_TOKEN` 向 LLM 网关或代理认证，它在凭据顺序里排第二，高于 API Key 和订阅登录。这样用时要分清两件事：

- **客户端还是 Claude Code，模型和账单来自你接的那家服务。** 阿里云百炼就有用自家按量计费、Coding Plan 等方案接入 Claude Code 的文档，这时跑的是百炼提供的模型，不一定是 Claude。
- **第三方网关不是 Anthropic 的官方服务。** 例如 laozhang.ai 提供兼容 Anthropic Messages 格式的 `/v1/messages` 接口，可以用来调用 Claude API，也可以作为 Claude Code 的接入点；它和官方在功能、限额、稳定性上是否一致，以它自己的文档为准。

直连、云平台和兼容网关怎么选，见 [Claude 稳定接入怎么选：Anthropic 直连、云平台，还是 laozhang.ai 网关？](https://blog.laozhang.ai/zh/posts/claude-gateway-laozhang-ai)；Key 从哪里买、共享密钥有什么风险，见 [Claude API Key 怎么购买：官方充值、国内可用路线与共享密钥避坑](https://blog.laozhang.ai/zh/posts/claude-api-key-free-tier)；还没装 Claude Code，先看 [2026年Claude Code安装完全指南：Mac、Windows与Linux三平台教程](https://blog.laozhang.ai/zh/posts/how-to-install-claude-code)。

## 常见问题

### 用 Claude Code 必须另买 API 吗？

不必。Pro、Max、Team、Enterprise 都包含 Claude Code，用 claude.ai 账号登录即可，Free 方案不含。只有想按 token 付费、或者团队统一走 Console 计费时，才需要 API Key。

### 可以把 API Key 填进 Claude Code 吗？

可以，设置 `ANTHROPIC_API_KEY` 或用 Console 账号登录都行。之后用量按 API 价格计 token，账单在 Console，和订阅额度无关。API Key 的优先级高于订阅登录，两者都在时用 `/status` 确认实际用的是哪个。

### 订阅额度用完了，开 usage credits 还是换 API Key？

两者超出部分都按 API 标准价计。偶尔超一点，开 usage credits 最省事，登录方式和功能都不变，还能设每月花费上限。如果经常用超，先比较升级 Max 和改用 API 哪个划算，再决定是否切换。

### 做自己的产品，调 API 还是嵌入 Claude Code？

只需要文本进、文本出的功能，调 Messages API；需要 agent 在文件和命令行里干活，用 Agent SDK，不用自己写工具循环；不想自己运维运行环境，看 Managed Agents。三种都用 API Key 或云平台凭据认证，不能用订阅登录给用户提供服务。
