Claude Code 接 RunAPI 前先查 4 项:Base URL、协议、Key、模型
简答:Claude Code 不能仅凭 OpenAI 兼容 Base URL 直接连接任意 API。接入 RunAPI 前,先在当前文档或控制台确认 Anthropic Messages 兼容入口、完整 API 地址、认证变量和模型 ID;截至 2026-10-31,公开页面没有给出一套可核验的 RunAPI 专用完整参数,因此本文不编造具体地址。只有完成字段核对后,才运行 claude doctor、curl 和 claude -p 分层验证。
定义:Claude Code 接入 OpenAI 兼容 API,是让服务提供 Anthropic Messages 兼容入口或协议转换层,再通过 Claude Code 支持的环境变量连接,而不是简单替换 OpenAI 的 Base URL。
先看结论:RunAPI 参数暂不直接照抄,先完成 4 项核对
本文是独立的 AI API 接入指南,不是 RunAPI 官方文档。RunAPI 公开页面提到支持 Claude Code,并展示了模型、分组和接口格式相关信息;但截至 2026-10-31,本文检索到的公开页面没有同时给出 Claude Code 专用的完整 Base URL、认证变量、模型 ID 和请求示例。因此,不能把网页入口直接拼成 API 地址,也不能把首页展示名称直接当作模型 ID。可先查看 RunAPI 文档页面和模型目录页面,再以当前页面显示的接口说明为准。
| 字段 | 必须确认什么 | 成功判定 | 未确认时怎么做 |
|---|---|---|---|
| 协议 | 是否提供 Anthropic Messages 兼容接口,或是否有协议转换层 | 文档明确写出 Messages、Claude Code 或兼容网关方式 | 只有 OpenAI Chat Completions 或 Responses 时,不要直接改 Base URL |
| Base URL | 完整 API 根地址、是否包含版本路径、客户端是否自动追加资源路径 | 能从文档得到最终请求 URL 的拼接规则 | 不要自行补上 /v1、/messages 或其他路径 |
| 密钥变量 | 使用 ANTHROPIC_AUTH_TOKEN、ANTHROPIC_API_KEY,还是自定义 Header | 文档明确认证头和变量名 | 不要把 OPENAI_API_KEY 当作 Claude Code 的通用替代变量 |
| 模型 ID | 当前模型目录中的精确字符串,以及是否需要映射到 Claude Code 模型变量 | 模型列表或控制台可复制出完整 ID | 不要根据品牌名、分组名或网页标题猜模型名 |
最短判断:如果 RunAPI 当前文档只说明“支持 OpenAI 兼容接口”,没有说明 Anthropic Messages 入口或协议转换,那么 Claude Code 不能仅通过设置 ANTHROPIC_BASE_URL 保证可用。
如何在 RunAPI 文档或控制台核对 Base URL、Key 和模型 ID
- 先确认网页入口与 API 地址不是一回事。RunAPI 页面公开提到过新的网页入口,但网页地址用于登录、查看模型或文档,不等于 Claude Code 要发送请求的 API Base URL。不要直接把网页域名改写成
https://域名/v1。 - 打开文档中的 Claude Code、Anthropic、Messages 或兼容网关说明。重点寻找完整请求地址、认证 Header、环境变量示例和请求路径。如果只找到
/chat/completions或/responses,应先确认是否存在 Anthropic 协议转换层。 - 在模型目录中复制精确模型 ID。记录模型 ID、所属分组和接口格式。网页显示的“Claude”系列名称、分组名称或营销名称,都不能自动当作请求中的
model值。 - 确认 Key 的使用范围。查看当前 Key 是否用于同一套 API 地址,认证是
Authorization: Bearer、x-api-key,还是由 Claude Code 的ANTHROPIC_AUTH_TOKEN自动转换。不同文档或域名下创建的 Key 不要交叉猜测。 - 保存核验结果。至少记录四项:最终请求 URL、认证变量或 Header、模型 ID、是否支持流式和工具调用。若页面没有明确写出其中任意一项,就标记为“未核实”,不要填入 Claude Code。
RunAPI 的公开文档页面可作为核对入口,但页面中出现“支持 Claude Code”并不等于已经提供完整、可复制的 Anthropic Messages 配置。本文截至 2026-10-31 未验证到 RunAPI 的 Claude Code 专用完整参数,因此以下命令只使用占位符。
先安装并检查 Claude Code:claude doctor 只验证本地环境
Anthropic 官方安装文档列出了 macOS、Ubuntu/Debian 和 Windows(WSL 或 Git for Windows)的安装路径,并说明 npm 安装方式需要 Node.js 18+;这属于安装方式的环境要求,不应理解为所有安装方式都完全相同。请以Claude Code 官方安装文档的当前说明为准。
- 已安装 Claude Code 的用户先执行
claude --version。 - 再执行
claude doctor,确认安装类型、版本和基础配置。 - 如果尚未安装且选择 npm,可按官方示例执行
npm install -g @anthropic-ai/claude-code;Windows 用户需先确认 WSL 或 Git for Windows 配置。 - 本地诊断通过后,再配置外部 API。每次只改一个变量,避免同时更换 Base URL、Key 和模型而无法定位问题。
claude doctor 只能帮助判断 Claude Code 本地安装和基础配置是否正常,不能证明 RunAPI 的 API 地址、模型权限或 Anthropic 协议兼容性已经通过。
跨平台配置:Bash、PowerShell 与 Windows CMD
下面示例不填未经核实的 RunAPI 地址和模型名。将尖括号内容替换为当前文档明确提供的值。若服务商要求的是自定义 Header,而不是 Claude Code 支持的变量,应停止套用示例,改查服务商的协议转换或网关说明。
Bash 或 Zsh:避免把 Key 直接写进命令历史
read -s ANTHROPIC_AUTH_TOKEN; export ANTHROPIC_AUTH_TOKEN; printf '\n'; export ANTHROPIC_BASE_URL='<已核实的 Anthropic 兼容入口>'; export ANTHROPIC_MODEL='<已核实的模型 ID>'; claude -p '请只回复 OK'
read -s 可以避免 Key 直接出现在命令文本中,但环境变量仍可能被当前用户权限下的进程或调试工具读取。长期使用时,应优先采用系统凭据管理器、受限权限环境文件或 Claude Code 支持的密钥辅助脚本,并确认密钥文件不会被 Git 提交。
PowerShell:使用不落盘的明文读取
$env:ANTHROPIC_AUTH_TOKEN = Read-Host 'API Key'; $env:ANTHROPIC_BASE_URL = '<已核实的 Anthropic 兼容入口>'; $env:ANTHROPIC_MODEL = '<已核实的模型 ID>'; claude -p '请只回复 OK'
这里使用 Read-Host 读取当前会话中的文本,不会把输入写入命令历史,但输入可能在屏幕上可见,并且环境变量会留在当前 PowerShell 进程中。不要使用 Read-Host -AsSecureString | ConvertFrom-SecureString 直接赋值给 API Key,因为该管道得到的是加密后的序列化字符串,不是原始密钥,通常不能用于认证。需要长期保存时,改用 Windows 凭据管理器或 SecretManagement 等密钥管理方式,并确认 Claude Code 能读取对应凭据。
Windows CMD:可以临时设置,但原生输入不会隐藏
set /p ANTHROPIC_AUTH_TOKEN=API Key: & set ANTHROPIC_BASE_URL=<已核实的 Anthropic 兼容入口> & set ANTHROPIC_MODEL=<已核实的模型 ID> & claude -p "请只回复 OK"
CMD 的 set /p 不提供可靠的隐藏输入,适合临时测试,不适合在共享屏幕或录制环境中输入真实 Key。不要使用 setx ANTHROPIC_AUTH_TOKEN 保存长期密钥,因为它会写入用户环境配置,后续进程可能继续读取;长期使用应改用系统凭据管理器、受限权限配置文件或服务商推荐的密钥辅助方式。
Anthropic 官方网关文档说明,ANTHROPIC_AUTH_TOKEN 或 ANTHROPIC_API_KEY 的优先级高于 apiKeyHelper。排查时建议只保留一个认证来源,关闭旧的 Claude Code 进程后重新启动。参考Claude Code 官方 LLM Gateway 配置文档。
OpenAI 兼容、Anthropic Messages 与协议转换不是一回事
| 服务能力 | 典型请求格式 | 能否直接接入 Claude Code | 必须核验的内容 |
|---|---|---|---|
| Anthropic Messages 兼容 | Messages 请求体和响应事件 | 有可能 | Base URL、认证方式、模型 ID、流式输出和工具调用 |
| 仅 OpenAI Chat Completions | /chat/completions | 不能仅改 Base URL 保证可用 | 是否有协议转换层,以及是否转换工具、流式事件和错误格式 |
| 仅 OpenAI Responses | /responses | 不能据此推断兼容 | 是否另有 Anthropic 入口或网关映射 |
| 网关统一入口 | 客户端发送 Anthropic 格式,由网关路由 | 取决于网关实现 | 文档是否明确支持 Claude Code、模型映射、流式和工具调用 |
Anthropic 官方网关文档展示了通过 ANTHROPIC_BASE_URL 指向 Anthropic 格式网关、通过 ANTHROPIC_AUTH_TOKEN 或 ANTHROPIC_API_KEY 认证,以及使用自定义模型名的配置思路。该文档证明 Claude Code 可以连接符合相应协议的网关,但不能证明任意 OpenAI 兼容 API 都能直接使用。
如果普通文本可以返回、但代码编辑或工具调用失败,优先检查工具调用字段、系统提示、流式事件、模型映射和错误格式是否完整转换。一次“返回 OK”只说明当前配置完成了一次调用,不代表目标 API 已被准确识别,也不代表完整协议兼容。
最小 curl 验证:先确认接口,再运行 Claude Code
curl 调试必须使用服务商文档明确的最终请求地址和认证方式。不要把网页入口、Base URL 和资源路径混为一个字段。下面是 Anthropic Messages 风格的结构示例,路径和 Header 都需要按当前服务商文档替换。
Bash、macOS、Linux:
curl -i '<最终的 Anthropic Messages 请求 URL>' -H 'content-type: application/json' -H 'anthropic-version: 2023-06-01' -H 'x-api-key: <API_KEY>' --data-raw '{"model":"<MODEL_ID>","max_tokens":32,"messages":[{"role":"user","content":"请只回复 OK"}]}'
PowerShell:使用 curl.exe,避免部分 Windows PowerShell 将 curl解析为 Invoke-WebRequest。
curl.exe -i "<最终的 Anthropic Messages 请求 URL>" -H "content-type: application/json" -H "anthropic-version: 2023-06-01" -H "x-api-key: <API_KEY>" --data-raw '{"model":"<MODEL_ID>","max_tokens":32,"messages":[{"role":"user","content":"请只回复 OK"}]}'
如果服务商文档要求 Authorization: Bearer,就按其说明替换认证 Header;不要同时发送多个猜测的认证头。若 Base URL 已包含版本路径,也不要再次拼接 /v1。成功返回 JSON 只说明该次请求的 HTTP 层和响应格式有结果,仍需检查模型、流式和工具调用能力。
建议按以下顺序分层判断:
- curl 返回 401:检查 Key、认证 Header、前后空格、当前终端变量和 Key 对应的 API 地址。
- curl 返回 403:检查账户权限、模型分组和网关策略,以错误正文为准。
- curl 返回 404:检查最终 URL、重复的
/v1、资源路径和模型 ID。 - curl 返回 429:检查限速、并发和额度,不要继续只修改模型名。
- curl 成功而 Claude Code 失败:再检查 Claude Code 实际读取的变量、模型映射、路径拼接和响应事件。
用 claude -p 验证:成功与失败分别代表什么
Anthropic 官方 CLI 文档提供了 claude -p 非交互模式、--output-format json 和 --verbose 等选项,可用于把客户端测试与交互界面分开。参考Claude Code 官方 CLI 参考。
- 先执行
claude doctor,确认本地安装和基础配置。 - 再执行
claude -p "请只回复 OK" --output-format json。 - 若需要调试过程,再临时增加
--verbose,但不要公开包含完整 Header、环境变量或密钥的日志。 - 如果返回文本或 JSON 结果,只能判定当前 Claude Code 配置路径完成了一次请求;不能单独证明请求一定经过目标 RunAPI,也不能证明流式输出、工具调用和完整协议均兼容。
若 curl 已成功而 claude -p 失败,优先对比两次请求的主机、路径、认证头和模型 ID。若两者都失败,先处理 API 地址、Key 和协议问题,不要继续调整 Claude Code 的提示词或权限参数。
常见问题
RunAPI 的网页域名可以直接填入 ANTHROPIC_BASE_URL 吗?
不能直接这样推断。网页入口用于登录、模型查看或文档访问,API Base URL 可能是不同地址,也可能包含专用路径。应从当前文档或控制台复制完整接口地址,并确认客户端是否自动追加 /v1 或 /messages。
截至 2026-10-31,RunAPI 的 Claude Code Base URL、Key 变量和模型 ID 是什么?
本文检索到的公开页面没有同时提供一套可核验的完整参数,因此不编造具体值。请按“协议说明→API 地址→认证方式→模型目录→最小请求”的顺序在当前文档或控制台核对。公开页面中出现的模型名称和“支持 Claude Code”说明,不能替代完整请求示例。
应该设置 OPENAI_API_KEY 还是 ANTHROPIC_AUTH_TOKEN?
以服务商针对 Claude Code 的文档为准。Claude Code 的网关配置文档展示了 ANTHROPIC_AUTH_TOKEN 和 ANTHROPIC_API_KEY 的使用方式;OPENAI_API_KEY 是许多 OpenAI 工具使用的变量,不是 Claude Code 的通用替代品。
PowerShell 为什么不能把 SecureString 直接当作 API Key?
Read-Host -AsSecureString | ConvertFrom-SecureString 输出的是加密后的序列化字符串,不是原始 Key。将它直接赋给 ANTHROPIC_AUTH_TOKEN 通常会导致认证失败。临时测试可使用不落盘的 Read-Host,长期使用则应采用系统凭据管理器或支持的密钥辅助方式。
Windows CMD 能否隐藏输入的 API Key?
CMD 原生的 set /p 不提供可靠的密码隐藏输入,因此只适合临时、非共享环境测试。不要把真实 Key 写入批处理文件或使用 setx 长期保存,优先使用系统凭据管理器或其他密钥管理工具。
curl 返回 200,是否说明 Claude Code 已经完全兼容?
不是。200 只能说明这一次请求获得了成功响应,还不能证明 Claude Code 所需的流式事件、工具调用、系统提示、模型映射和错误格式全部可用。应继续执行 claude -p,并在实际项目中验证一次只读操作或受控工具调用。
常见问题
Claude Code 能否直接连接任意 OpenAI 兼容 API?
不能直接这样判断。只有服务提供 Anthropic Messages 兼容入口,或存在明确的协议转换层时,才具备接入基础;仅有 Chat Completions 或 Responses 兼容声明并不足够。
RunAPI 的 Base URL、密钥变量和模型 ID 应该填什么?
截至 2026-10-31,公开页面未提供一套可核验的 Claude Code 完整参数。应在当前文档或控制台分别确认 Anthropic 兼容入口、认证变量、完整 API 地址和模型目录中的精确 ID。
如何判断 Base URL 是否重复拼接了 /v1?
查看服务商给出的最终请求示例,记录客户端实际请求路径。若 Base URL 已包含版本路径,或客户端会自动追加资源路径,就不要手动再次添加;出现 404 时优先检查路径拼接。
PowerShell 中如何临时输入 API Key?
可使用 `$env:ANTHROPIC_AUTH_TOKEN = Read-Host 'API Key'`,它不会把 Key 直接写入命令历史,但输入可能可见且会保留在当前进程中。不要把 ConvertFrom-SecureString 的加密输出直接当作 API Key。
curl 成功但 claude -p 失败怎么办?
对比两次请求的主机、路径、认证变量、模型 ID 和请求协议,再检查 Claude Code 是否读取了旧环境变量或旧进程配置。不要先重新生成 Key,也不要同时修改多个字段。
