跳转到内容

翻译代理

翻译代理是 Claudex 的核心。它位于 Claude Code 和 AI 提供商之间,透明地在 Anthropic Messages API 和 OpenAI Chat Completions API 之间进行转换。

Claude Code → Anthropic Messages API 请求
└── Claudex 代理 (127.0.0.1:13456)
├── DirectAnthropic 提供商 → 替换 header 直接转发
├── OpenAICompatible 提供商
│ ├── 翻译请求:Anthropic → OpenAI Chat Completions
│ ├── 转发到提供商
│ └── 翻译响应:OpenAI → Anthropic
└── OpenAIResponses 提供商
├── 翻译请求:Anthropic → OpenAI Responses API
├── 转发到提供商
└── 翻译响应:Responses → Anthropic
AnthropicOpenAI
system 字段messages 数组中的 system message
messages[].content 块(text、image、tool_use)messages[].content + tool_calls
tools 数组(JSON Schema)tools 数组(function 格式)
tool_choicetool_choice
max_tokensmax_tokens
temperaturetop_p直接映射
OpenAIAnthropic
choices[0].message.contentcontent
choices[0].message.tool_callstool_use 内容块
finish_reason: stopstop_reason: end_turn
finish_reason: tool_callsstop_reason: tool_use
usage.prompt_tokens / completion_tokensusage.input_tokens / output_tokens

Claudex 完全支持 SSE(Server-Sent Events)流式传输,将 OpenAI 流块实时翻译为 Anthropic 流事件:

OpenAI SSEAnthropic SSE
首个 chunkmessage_start + content_block_start
choices[0].delta.contentcontent_block_delta(text_delta)
choices[0].delta.tool_callscontent_block_delta(input_json_delta)
finish_reason 出现content_block_stop + message_delta + message_stop

流式翻译器维护一个状态机,正确处理 tool call 的累积和内容块边界。

提供商类型Base URL
AnthropicDirectAnthropichttps://api.anthropic.com
MiniMaxDirectAnthropichttps://api.minimax.io/anthropic
OpenRouterOpenAICompatiblehttps://openrouter.ai/api/v1
Grok (xAI)OpenAICompatiblehttps://api.x.ai/v1
OpenAIOpenAICompatiblehttps://api.openai.com/v1
DeepSeekOpenAICompatiblehttps://api.deepseek.com
Kimi/MoonshotOpenAICompatiblehttps://api.moonshot.cn/v1
GLM(智谱)OpenAICompatiblehttps://open.bigmodel.cn/api/paas/v4
OllamaOpenAICompatiblehttp://localhost:11434/v1
vLLMOpenAICompatiblehttp://localhost:8000/v1
ChatGPT/Codex 订阅OpenAIResponseshttps://chatgpt.com/backend-api/codex
Terminal window
# 以守护进程方式启动代理
claudex proxy start -d
# 查看代理状态
claudex proxy status
# 停止代理守护进程
claudex proxy stop
# 使用自定义端口
claudex proxy start -p 8080

运行 claudex run <profile> 时,如果代理未运行,会自动在后台启动。