RichardAtCT/claude-code-openai-wrapper
OpenAI API-compatible wrapper for Claude Code
Claude Code OpenAI API Wrapper
是什么 – 一个自托管服务器,使 Anthropic 的 Claude Code 模型看起来像 OpenAI API。通过运行此封装器,您可以继续使用任何现有的 OpenAI 客户端库(Python SDK、curl 等),而请求实际上会通过官方的 Claude Agent SDK 路由到 Claude Code。
为什么重要 – 许多工具、笔记本和集成都是为 OpenAI 端点 (/v1/chat/completions) 构建的。为 Claude 重新实现它们会很繁琐。此封装器让您只需更改一个配置即可切换到 Claude Code,同时仍能获得:
- 来自 Claude SDK 的实时成本和 Token 使用量
- 跨调用的对话连续性(对话记忆)
- 可选的工具使用(文件读写、bash 等)
- 多提供商验证(Anthropic API key、AWS Bedrock、Google Vertex AI 或 Claude CLI)
主要功能
- 兼容 OpenAI 的端点 –
/v1/chat/completions和/v1/messages(Anthropic 风格) 支持流式或非流式响应。 - 实时模型发现 – 当
ANTHROPIC_API_KEY存在时,封装器会抓取 Anthropic 目前的模型列表(缓存一小时)并自动选择最新的 Sonnet 模型作为默认。 - 快速默认模式 – 工具默认禁用,纯聊天使用时速度提升 5-10 倍。工具可按请求启用。
- 会话管理 – 包含
session_id以保留对话历史;提供列出、检查和删除会话的端点。会话在闲置 1 小时后过期。 - 多提供商验证 – 无需额外代码即可检测并使用 Claude CLI 验证、原始 API key、AWS Bedrock 或 Google Vertex AI。
- 交互式登录页面 – 内置于
http://localhost:8000/的 UI 让您可以探索 API、复制命令并切换亮/暗模式。 - 速率限制与可选的 API-key 保护 – 防止滥用并让您保护服务器以供远程访问。
- Docker 支持 – 官方 Dockerfile 和 Docker-Compose 示例,便于快速部署。
入门指南(2 分钟内)
# Clone and install
git clone https://github.com/RichardAtCT/claude-code-openai-wrapper
cd claude-code-openai-wrapper
poetry install # creates a venv and pulls the Claude Agent SDK
# Authenticate (pick one)
export ANTHROPIC_API_KEY=your-key # or `claude auth login`
# Run the server (development mode with hot-reload)
poetry run uvicorn src.main:app --reload --port 8000
# Test with curl
curl http://localhost:8000/v1/models
服务器现在将在 http://localhost:8000/v1/chat/completions 接受 OpenAI 风格的调用。
使用 OpenAI Python SDK 的典型用法
from openai import OpenAI
client = OpenAI(base_url="http://localhost:8000/v1")
resp = client.chat.completions.create(
model="claude-sonnet-4-6",
messages=[{"role": "user", "content": "Write a Python hello-world script"}],
stream=False,
)
print(resp.choices[0].message.content)
加入 extra_body={"enable_tools": True} 让 Claude 实际读写文件,或传递 extra_body={"session_id": "my-session"} 以保留上下文。
生产环境考量
- 使用 Docker 镜像 (
docker build -t claude-wrapper .) 进行隔离部署。 - 设置
API_KEY或启用交互式密钥提示,以在 localhost 之外暴露端点时保护它。 - 根据需要调整速率限制环境变量 (
RATE_LIMIT_CHAT_PER_MINUTE等)。 - 对于企业设置,您可以透过设置
CLAUDE_AUTH_METHOD将封装器指向 AWS Bedrock 或 Google Vertex AI。
状态 – 标记为 Production Ready。所有核心端点皆已测试,流式功能运作正常,且封装器包含健康状态、版本和验证状态检查。
所有细节均直接取自仓库的 README;未推断任何额外功能。
相关
- 项目
- 项目
- 项目
- 项目