opencode2api

把 Zen 接口转成 OpenAI/Anthropic 格式,多密钥自动轮转

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 基础设施 🍴 复刻 252 🐛 待处理 23 👀 关注 2
GitHub ↗
GitHub 星标 ★ 1434
维护状态 活跃
是否开源 开源
定价模式 🏷️完全免费 开源免费,需自行部署

项目预览

opencode2api 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类基础设施
开发团队jasonxu114514
定价模式🏷️完全免费
价格说明开源免费,需自行部署
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议GPL-3.0
主要语言Go
GitHub 星标★ 1434
上线时间2026-08-13 00:00:00
代码更新2026-11-05
仓库体积1005 KB
本站数据更新2026-11-10
维护状态活跃
收录时间2026-11-10
浏览次数0

项目介绍

opencode2api 是一个用 Go 编写的 API 代理服务,面向 OpenCode Zen / Zen Go 接口,对外提供 OpenAI 与 Anthropic 兼容的调用格式。它解决的核心问题是:当应用或 SDK 只支持 OpenAI/Anthropic 协议、而实际后端是 Zen 系列服务时,需要一层协议转换与请求转发。项目支持多密钥与多代理池化,可在多个上游凭据之间自动分配与路由,降低单点失败风险并提升并发承载;内置 WebUI 便于查看配置、管理密钥池和观察运行状态。单文件 Go 服务部署轻量,适合作为内部统一入口,把不同客户端请求收敛到同一后端。整体定位偏基础设施层,强调兼容性、池化调度与可观测管理,适合需要统一 API 出口、做多凭据轮转与协议适配的团队自建使用。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-11-10 · 当前星标 ★ 1434

使用教程

难度:入门 约 10 分钟 部署方式:本地安装 7 步

环境要求

  • Go 1.24 或更高版本(从源码编译时)
  • 已按需准备 Zen / Go 上游凭据或使用示例中的匿名免费通道
  • 配置目录需可写(用于密码迁移、配置保存与模型缓存)
  • 运行不需要 Node.js 运行时和数据库

安装与启动步骤

  1. 1克隆仓库

    拉取源码并进入项目根目录,后续命令都在该目录执行。

    git clone https://github.com/jasonxu114514/opencode2api.git
    cd opencode2api
  2. 2复制示例配置

    以 config.example.json 为模板生成 config.json,之后只改这个文件。

    cp config.example.json config.json
  3. 3修改关键配置

    把 server_keys 换成自己的本地 Key,按需填 zen_keys / go_keys,并改掉 webui.password。示例使用 admin 用户名开启 WebUI。

  4. 4编译二进制

    用 Go 1.24 以上版本编译,生成单文件可执行程序 opencode2api。

    go build -o opencode2api ./cmd/opencode2api
  5. 5启动服务

    指定配置文件启动;示例监听 API 127.0.0.1:8080、WebUI 0.0.0.0:8081。

    ./opencode2api -config config.json
  6. 6验证与取模型

    带本地 Key 请求 /v1/models,返回可用模型列表即表示网关可用;也可访问 /healthz。

    curl http://localhost:8080/v1/models -H "Authorization: Bearer sk-local-xxxxxxxx"
  7. 7Windows 构建运行

    Windows 下复制配置、编译 exe 并运行,参数与 Linux 相同。

    Copy-Item config.example.json config.json
    go build -o opencode2api.exe ./cmd/opencode2api
    .\opencode2api.exe -config config.json

关键配置

配置项必填说明示例
server_keys是本地客户端访问网关所用的 API Key 列表,与上游凭据完全独立["sk-local-xxxxxxxx"]
zen_keys否Zen 上游密钥池,可留空使用示例的匿名免费通道["zen-xxxxxxxx"]
go_keys否Zen Go 上游密钥池,与 Zen 池分开管理与路由["go-xxxxxxxx"]
webui.password是WebUI 登录密码,务必替换示例默认值change-me-xxxx
-listen否覆盖 API 监听地址,默认读取配置文件127.0.0.1:8080
-web-listen否覆盖 WebUI 管理端口监听地址0.0.0.0:8081

如何确认成功

请求 /v1/models 能返回模型列表,且 /healthz 无需认证即返回就绪状态即可。

常见问题

Q:服务启动后访问哪个地址?

A:API 在示例配置下为 127.0.0.1:8080,WebUI 在 8081,本机打开 http://localhost:8081 即可,用户名示例为 admin。

Q:客户端怎样带密钥调用?

A:使用 Authorization: Bearer YOUR_LOCAL_API_KEY 或 x-api-key 头,密钥取自 server_keys;健康检查 /healthz 不需要认证。

Q:MODEL_ID 从哪里获得?

A:先请求 GET /v1/models 获取当前配置下可路由的模型 ID,再填入 chat/completions、responses 或 messages 请求体的 model 字段。

Q:配置写错会怎样?

A:配置支持 // 与 /* */ 注释,但未知字段和非法值会被直接拒绝,热重载也会先校验再切换新请求。

Q:Docker 该怎么运行?

A:README 只给出镜像名 ghcr.io/jasonxu114514/opencode2api 与复制配置的命令,未提供完整运行命令,请以仓库文档为准,不要自造参数。

注意事项

  • server_keys 只用于客户端认证,绝不会被当作上游凭据使用。
  • 管理端口示例绑定 0.0.0.0:8081,通过网络访问时应限制来源并置于 HTTPS 反向代理之后。
  • 配置目录必须可写,否则密码迁移、配置保存和模型缓存会失败。
  • API 请求体上限为 32 MiB,流式响应可在请求体加 "stream": true 并用 curl -N 观察。

核心亮点

  • 同时兼容 OpenAI 与 Anthropic 两套 API 格式,现有 SDK 和客户端改动小
  • 支持密钥池与代理池,自动路由分配,提升并发与容错
  • 内置 WebUI,配置和运行状态可视化,运维成本低

不足之处

  • 仅适配 Zen 系列上游,后端选择范围有限
  • 池化调度策略与故障转移细节缺少完整文档说明
  • 社区规模较小,长期维护与问题响应待观察

适用场景

  • 把只支持 OpenAI 协议的客户端接入 Zen 后端
  • 多密钥轮转分摊配额,避免单密钥限流
  • 团队内部统一 API 出口并集中管理凭据

替代项目

one-api、LiteLLM、new-api

上一篇:opencode2api

下一篇:Switchyard

同类项目推荐

telnyx-code-examples 开源

拿来即用的 Telnyx 通信 API 示例,快速集成 AI 语音与短信。

Production-ready code examples for Telnyx AI Communications Infrastructure — Voice ···

★ 166 2026-08-09
n8n-nodes-qdrant 开源

在 n8n 里拖拽连接 Qdrant,快速实现向量检索与 RAG。

Official n8n node for interfacing with Qdrant

★ 78 2026-08-09
LLMKube 开源

用 kubectl 在混搭 GPU 集群上跑大模型推理

Kubernetes operator for self-hosted LLM inference across a heterogeneous GPU fleet: ···

★ 252 2026-09-16
turbo-fieldfare 开源

在 MacBook 上2GB内存跑26B大模型

Gemma 4 26B-A4B inference in ~2 GB of RAM on any M-series MacBook

★ 7323 2026-08-09
LMeterX 开源

一键压测大模型与 HTTP 接口,AI 自动分析性能瓶颈

A general-purpose API load testing platform that supports LLM services、A2A/MCP serv···

★ 218 2026-08-09
agent-prism 开源

把 AI Agent 执行轨迹变成可嵌入的 React 可视化组件

React components for visualizing traces from AI agents

★ 407 2026-09-30