claude2api

GitHub
580 131 简单 1 次阅读 3天前MIT语言模型插件
AI 解读 由 AI 自动生成,仅供参考

claude2api 是一款轻量级开源工具,旨在将 Anthropic Claude 的网页服务无缝转换为标准的 API 接口。它主要解决了开发者无法直接通过代码调用 Claude 高级功能(如识图、长文件分析、思维链输出)的痛点,让原本仅限网页交互的能力能够轻松集成到各类应用程序中。

这款工具特别适合后端开发者、AI 应用构建者以及希望自动化工作流的研究人员使用。通过 claude2api,用户可以像调用 OpenAI 接口一样访问 Claude,大幅降低了接入门槛。其核心技术亮点包括:原生支持图像识别与大文件上传,能够自动管理对话上下文并在超长时自动转为文件处理;独特地支持输出 Claude 的“思考过程”(Thinking Process),便于调试复杂推理任务;同时具备流式传输、自动重试、代理支持及多会话负载均衡等企业级特性。

部署方面,claude2api 提供了极高的灵活性,既支持通过 Docker 一键容器化部署,也兼容 Hugging Face Spaces 云端托管,还可直接编译运行。无论是构建智能客服、数据分析助手,还是开发需要深度推理的 AI Agent,claude2api 都能提供稳定高效的底层支持,帮助用户快速释放 Claude 模型的全部潜力。

使用场景

某初创团队希望将 Claude 3.5 Sonnet 强大的多模态分析能力(识图、长文档理解)集成到自研的自动化运维监控系统中,但受限于官方仅开放网页端且缺乏标准 API 接口。

没有 claude2api 时

  • 集成壁垒高:开发团队只能编写复杂的浏览器自动化脚本(如 Selenium)模拟人工操作,代码脆弱且极易因网页结构微调而崩溃。
  • 功能受限:无法直接通过代码发送截图或上传大型日志文件,导致系统只能处理纯文本报警,丢失了关键的视觉上下文信息。
  • 响应延迟大:缺乏流式传输支持,用户必须等待模型生成完全部回复才能看到结果,在紧急故障排查时体验极差。
  • 会话管理混乱:难以编程控制对话历史长度,长期运行后容易超出上下文限制或产生冗余数据,且无法自动清理旧会话。
  • 思维过程黑盒:无法获取 Claude 的 <think> 思考链输出,运维人员难以理解模型判断故障的根本逻辑,降低了信任度。

使用 claude2api 后

  • 无缝标准化接入:claude2api 将网页服务转换为兼容 OpenAI 格式的 API,团队仅需修改几行代码即可复用现有的 AI 调用框架,稳定性大幅提升。
  • 多模态能力解锁:系统现在能直接发送服务器仪表盘截图和 GB 级日志文件,Claude 可精准识别图像异常并分析长文档,实现全方位监控。
  • 实时流式反馈:借助流式传输特性,故障分析报告逐字实时推送到前端,运维人员在生成过程中即可提前介入判断,显著缩短响应时间。
  • 智能上下文管控:配置 MAX_CHAT_HISTORY_LENGTH 后,claude2api 自动截断超长对话或将溢出内容转为文件上传,并按需自动删除旧会话,保持系统轻量。
  • 推理透明化:API 直接返回模型的逐步思考过程,帮助团队验证故障推导逻辑,便于后续优化监控策略和复盘。

claude2api 成功打破了 Claude 网页版与后端系统间的隔阂,让企业能以低成本、标准化的方式将顶级多模态智能融入核心业务流程。

运行环境要求

操作系统
  • Linux
  • macOS
  • Windows
GPU

无 GPU 需求

内存

未说明

依赖
notes该工具是基于 Go 语言开发的代理服务,用于将 Claude 网页服务转换为 API。运行需要有效的 Claude 会话密钥 (SESSIONS)。支持通过 Docker 部署或直接编译二进制文件运行。若从源码构建,需安装 Go 1.23 或更高版本。
python不需要 Python
Go 1.23+
Docker (可选)
claude2api hero image

快速开始

Claude2Api

将 Claude 的 Web 服务转换为 API 服务,支持图像识别、文件上传、流式传输、思维过程输出等。

该 API 支持 OpenAI 格式的访问。

Go Report Card License |中文

注意:只有 Pro 用户才能使用所有模型,免费用户仅能使用 claude-sonnet-4-20250514。

✨ 功能

  • 🖼️ 图像识别 - 将图片发送给 Claude 进行分析
  • 📝 自动会话管理 - 会话在使用后可自动删除
  • 🌊 流式响应 - 获取来自 Claude 的实时流式输出
  • 📁 文件上传支持 - 上传长上下文
  • 🧠 思考过程 - 访问 Claude 的逐步推理过程,支持 <think> 标签
  • 🔄 聊天历史管理 - 控制对话上下文长度,超出时会上传文件
  • 🌐 代理支持 - 通过您首选的代理路由请求
  • 🔐 API 密钥认证 - 保护您的 API 端点
  • 🔁 自动重试 - 请求失败时自动重试的功能
  • 🌐 直接代理 - 可以使用 sk-ant-sid01* 作为密钥来使用

📋 前置条件

  • Go 1.23+(用于从源代码构建)
  • Docker(用于容器化部署)

🚀 部署选项

Docker

docker run -d \
  -p 8080:8080 \
  -e SESSIONS=sk-ant-sid01-xxxx,sk-ant-sid01-yyyy \
  -e APIKEY=123 \
  -e CHAT_DELETE=true \
  -e MAX_CHAT_HISTORY_LENGTH=10000 \
  -e NO_ROLE_PREFIX=false \
  -e PROMPT_DISABLE_ARTIFACTS=false \
  -e ENABLE_MIRROR_API=false \
  -e MIRROR_API_PREFIX=/mirror \
  --name claude2api \
  ghcr.io/yushangxiao/claude2api:latest

Docker Compose

创建一个 docker-compose.yml 文件:

version: '3'
services:
  claude2api:
    image: ghcr.io/yushangxiao/claude2api:latest
    container_name: claude2api
    ports:
      - "8080:8080"
    environment:
      - SESSIONS=sk-ant-sid01-xxxx,sk-ant-sid01-yyyy
      - ADDRESS=0.0.0.0:8080
      - APIKEY=123
      - PROXY=http://proxy:2080  # 可选
      - CHAT_DELETE=true
      - MAX_CHAT_HISTORY_LENGTH=10000
      - NO_ROLE_PREFIX=false
      - PROMPT_DISABLE_ARTIFACTS=true
      - ENABLE_MIRROR_API=false
      - MIRROR_API_PREFIX=/mirror
    restart: unless-stopped

然后运行:

docker-compose up -d

Hugging Face Spaces

您可以使用 Docker 将此项目部署到 Hugging Face Spaces:

  1. 分叉 Hugging Face Space:https://huggingface.co/spaces/rclon/claude2api
  2. 在“设置”选项卡中配置您的环境变量
  3. 该 Space 将自动部署 Docker 镜像

注意:在 Hugging Face 中,/v1 可能会被阻止,您可以改用 /hf/v1

直接部署

# 克隆仓库
git clone https://github.com/yushangxiao/claude2api.git
cd claude2api
cp .env.example .env  
vim .env  
# 构建二进制文件
go build -o claude2api .

./claude2api

⚙️ 配置

YAML 配置

您可以在应用程序根目录下使用 config.yaml 文件来配置 Claude2API。如果该文件存在,则会优先于环境变量使用。

示例 config.yaml

# 会话配置
sessions:
  - sessionKey: "sk-ant-sid01-xxxx"
    orgID: ""
  - sessionKey: "sk-ant-sid01-yyyy"
    orgID: ""

# 服务器地址
address: "0.0.0.0:8080"

# API 认证密钥
apiKey: "123"

# 其他配置选项...
chatDelete: true
maxChatHistoryLength: 10000
noRolePrefix: false
promptDisableArtifacts: false
enableMirrorApi: false
mirrorApiPrefix: ""

仓库中提供了一个名为 config.yaml.example 的示例配置文件。

环境变量

如果 config.yaml 不存在,则应用程序将使用环境变量进行配置:

环境变量 描述 默认值
SESSIONS 用逗号分隔的 Claude API 会话密钥列表 必填
ADDRESS 服务器地址和端口 0.0.0.0:8080
APIKEY 用于认证的 API 密钥 必填
PROXY HTTP 代理 URL 可选
CHAT_DELETE 是否在使用后删除聊天会话 true
MAX_CHAT_HISTORY_LENGTH 超出时将文本保存到文件 10000
NO_ROLE_PREFIX 不在每条消息前添加角色 false
PROMPT_DISABLE_ARTIFACTS 尝试禁用提示中的 Artifacts false
ENABLE_MIRROR_API 启用直接使用 sk-ant-* 作为密钥 false
MIRROR_API_PREFIX 添加前缀以保护镜像,当 ENABLE_MIRROR_API 为 true 时必需 ``

📝 API 使用

认证

在请求头中包含您的 API 密钥:

Authorization: Bearer YOUR_API_KEY

聊天完成

curl -X POST http://localhost:8080/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "model": "claude-3-7-sonnet-20250219",
    "messages": [
      {
        "role": "user",
        "content": "你好,Claude!"
      }
    ],
    "stream": true
  }'

图像分析

curl -X POST http://localhost:8080/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "model": "claude-3-7-sonnet-20250219",
    "messages": [
      {
        "role": "user",
        "content": [
          {
            "type": "text",
            "text": "这张图片里有什么?"
          },
          {
            "type": "image_url",
            "image_url": {
              "url": "data:image/jpeg;base64,..."
            }
          }
        ]
      }
    ]
  }'

🤝 贡献

欢迎贡献!请随时提交 Pull Request。

  1. 分叉仓库
  2. 创建功能分支 (git checkout -b feature/amazing-feature)
  3. 提交更改 (git commit -m '添加一些很棒的功能')
  4. 推送到分支 (git push origin feature/amazing-feature)
  5. 打开 Pull Request

📄 许可证

本项目采用 MIT 许可证授权 - 详情请参阅 LICENSE 文件。

🙏 致谢

  • Anthropic 创造了 Claude
  • Go 社区提供了出色的生态系统

🎁 支持

如果您觉得这个项目很有帮助,请考虑在 Afdian 上支持我 😘

星标历史

星标历史图

yushangxiao 用心制作

版本历史

v1.1.72025/07/01
v1.1.62025/06/16
v1.1.52025/05/24
v1.1.42025/05/23
v1.1.32025/05/23
v1.1.22025/05/23
v1.1.12025/05/23
v1.1.02025/04/25
v1.0.92025/04/15
v1.0.82025/04/06
v1.0.72025/04/04
v1.0.62025/04/03
v1.0.52025/04/02
v1.0.42025/04/02
v1.0.32025/03/31
v1.0.22025/03/31
v1.0.12025/03/31

常见问题

相似工具推荐

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

160.8k|★★☆☆☆|今天
开发框架Agent语言模型

opencode

OpenCode 是一款开源的 AI 编程助手(Coding Agent),旨在像一位智能搭档一样融入您的开发流程。它不仅仅是一个代码补全插件,而是一个能够理解项目上下文、自主规划任务并执行复杂编码操作的智能体。无论是生成全新功能、重构现有代码,还是排查难以定位的 Bug,OpenCode 都能通过自然语言交互高效完成,显著减少开发者在重复性劳动和上下文切换上的时间消耗。 这款工具专为软件开发者、工程师及技术研究人员设计,特别适合希望利用大模型能力来提升编码效率、加速原型开发或处理遗留代码维护的专业人群。其核心亮点在于完全开源的架构,这意味着用户可以审查代码逻辑、自定义行为策略,甚至私有化部署以保障数据安全,彻底打破了传统闭源 AI 助手的“黑盒”限制。 在技术体验上,OpenCode 提供了灵活的终端界面(Terminal UI)和正在测试中的桌面应用程序,支持 macOS、Windows 及 Linux 全平台。它兼容多种包管理工具,安装便捷,并能无缝集成到现有的开发环境中。无论您是追求极致控制权的资深极客,还是渴望提升产出的独立开发者,OpenCode 都提供了一个透明、可信

144.3k|★☆☆☆☆|3天前
Agent插件

gemini-cli

gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。

100.8k|★★☆☆☆|1周前
插件Agent图像

markitdown

MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器

93.4k|★★☆☆☆|1周前
插件开发框架

LLMs-from-scratch

LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目,旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型(LLM)。它不仅是同名技术著作的官方代码库,更提供了一套完整的实践方案,涵盖模型开发、预训练及微调的全过程。 该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型,却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码,用户能够透彻掌握 Transformer 架构、注意力机制等关键原理,从而真正理解大模型是如何“思考”的。此外,项目还包含了加载大型预训练权重进行微调的代码,帮助用户将理论知识延伸至实际应用。 LLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API,而是渴望探究模型构建细节的技术人员而言,这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计:将复杂的系统工程拆解为清晰的步骤,配合详细的图表与示例,让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础,还是为未来研发更大规模的模型做准备

90.1k|★★★☆☆|1周前
语言模型图像Agent

spec-kit

Spec Kit 是一款专为提升软件开发效率而设计的开源工具包,旨在帮助团队快速落地“规格驱动开发”(Spec-Driven Development)模式。传统开发中,需求文档往往与代码实现脱节,导致沟通成本高且结果不可控;而 Spec Kit 通过将规格说明书转化为可执行的指令,让 AI 直接依据明确的业务场景生成高质量代码,从而减少从零开始的随意编码,确保产出结果的可预测性。 该工具特别适合希望利用 AI 辅助编程的开发者、技术负责人及初创团队。无论是启动全新项目还是在现有工程中引入规范化流程,用户只需通过简单的命令行操作,即可初始化项目并集成主流的 AI 编程助手。其核心技术亮点在于“规格即代码”的理念,支持社区扩展与预设模板,允许用户根据特定技术栈定制开发流程。此外,Spec Kit 强调官方维护的安全性,提供稳定的版本管理,帮助开发者在享受 AI 红利的同时,依然牢牢掌握架构设计的主动权,真正实现从“凭感觉写代码”到“按规格建系统”的转变。

88.7k|★★☆☆☆|2天前
语言模型图像Agent