Skip to content

Sub2API 0.2.17

Choose a tag to compare

@github-actions github-actions released this 16 Oct 12:43
73e0766

AI API Gateway Platform - 将 AI 订阅配额分发和管理

Important

本版本为 0.2.17:在完整保留 Fork 自有功能的前提下追平上游 Wei-Shaw/sub2api 的 main
(v0.2.17,Antigravity Gemini 4 Argon + 支付链路加固),版本号沿用上游编号 0.2.17。
latest 与 0.2.17 均指向本版本。

0.2.17 大于此前的 0.2.16 / 0.2.15 / 0.2.14,应用内「检查更新」可正常提示升级。

Note

本次为 0.2.17(2026-10-16):在 0.2.16 的基础上,合并上游 main 的 48 个提交
(4d9ac3e48 → b0a02a330)。发布产物为 Docker 镜像(GHCR + Docker Hub 双 registry),
Release 零附件。

移植来源

  • 来源一:上游 Wei-Shaw/sub2api 分支 main
    • 来源提交:b0a02a330(v0.2.17,2026-10-16);上次移植基准 4d9ac3e48
    • 本次增量:48 个提交(含合并提交),153 个文件(+7035 / −808)
  • 新增迁移:无
  • 版本号:backend/cmd/server/VERSION 为 0.2.17

上游增量(v0.2.17)

Antigravity / Gemini

  • 支持 Gemini 4 Argon(含 low/medium/high 档位)与准确的上游模型目录;补齐 Argon 计费
  • 保留 tool_result 图片、原生 Gemini functionCall 与 thoughtSignature,以及 composite /v1beta 路由
  • 保留旧默认透传,Claude 5.5 tier ID 按基础价计费
  • Gemini 兼容入口转发思考档位并流式返回思考摘要
  • Vertex 共享容量不足的 429 不再冷却账号,改为同号退避重试;服务账号已不存在时账号置为 error 并换号
  • 每个上游错误响应只检查一次错误策略

网关与协议

  • 拒绝含 OpenAI 网关 OAuth 的 composite 歧义路由,防止凭据误入 Anthropic 管线
  • 网关照 Anthropic 协议的 base URL 生效
  • Responses 对象一律带 created_at(修复 grok-build 反序列化失败)
  • 结构化输入最小输出 token 下限可配置(gateway.min_output_tokens,最小 16,默认 128)
  • 智谱 GLM Coding Plan 5h / weekly 用量窗口修正
  • 模型退役判定改在公开别名投影之后评估;GPT-5.5 在 ChatGPT 上游按退役处理

OpenAI / Codex

  • /v1/messages 对 OpenAI API Key 账号模拟 web_search;OAuth 账号排除该模拟
  • Codex 导入按 workspace 隔离

支付

  • EasyPay:下单查询与到账前确认通知修复
  • 支付宝:退款状态查询、不支持订单类型的关闭、待处理退款原子收尾、退款查询错误按待处理处理
  • Stripe:client secret 从本地订单快照读取
  • 订单类型校验,待处理期间保留退款扣减

前端

  • 恢复内联账号筛选(revert #7853)

Fork 侧保留与合并处理(14 个冲突文件)

文件 处理
service/account.go 上游把 IsModelSupported 拆成 isModelMappingSupported;保留 Fork 的 Excel/BPS 与 Astra 凭据边界前置守卫,再委托上游的 supportsOpenAIRequestModel
service/openai_models_list.go 上游把投影拆成两层;保留 Fork 的分组感知实现(projectAccountModelAliases),出口接上游的退役模型过滤
service/gateway_service.go 保留 Fork 的 groupID 补全 + 采纳上游的退役模型过滤与空目录语义
service/openai_codex_models_service.go 保留 Fork 的 BPS 能力限制(catalog),叠加上游的退役模型过滤
service/openai_ws_forwarder_support.go 保留 Fork 的 IsModelSupportedInGroup(同时校验分组约束),不降级为仅账号判定
handler/admin/account_codex_import.go 保留 Fork 的 client/workspace 身份作用域,与上游的 composite 身份键共存
service/openai_gateway_passthrough.go 超时分支的 buildOpenAIResponseFailedSSE 补上上游新增的 createdAt 参数
apicompat/chatcompletions_to_responses.go 采纳上游的 WithMinOutputTokens 变体,并保留 Fork 的 EffectiveReasoningEffort() 语义
config/config.go、deploy/config.example.yaml 并集:Fork 的 upstream_routing / Prism / Codex Pin 与上游的 min_output_tokens
frontend/.../AccountTableFilters.vue 保留 Fork 的无障碍 aria-label(上游本次是 revert),layout 取上游的响应式改进
composables/useModelWhitelist.ts 取上游超集(新增 Gemini 4 Argon 系列)
其余(routes 测试、AccountTableFilters.spec.ts) 保留 Fork 侧;上游 revert 删掉的组件测试按仓库现状保留

验证

  • 本地校验(Linux,Go 1.27.2 / Node 22):
    • 后端:go build ./...、go vet ./...、gofmt -l 全部通过;go test -tags=unit ./... 全绿
    • 前端:vue-tsc --noEmit 0 错误、eslint . --max-warnings 0 0 problem
  • 工作树检查:无残留冲突标记
  • 未包含:backend/config/config.yaml(上游/ranxi 误提交的线上部署配置,含明文凭据,本仓无任何引用)

升级说明

  • 升级方式:管理后台左上角「检查更新」一键升级;或
    curl -sSL https://raw.githubusercontent.com/ziyue67/sub2api/v0.2.17/deploy/install.sh | sudo bash -s -- upgrade
  • 回滚方式:install.sh rollback <version>
  • Docker:docker pull ghcr.io/ziyue67/sub2api:0.2.17
  • 镜像只提供 linux/amd64 单架构,标签 0.2.17 / 0.2.17-amd64 / latest
  • 数据库迁移:本版本不含新增迁移;升级前请备份数据库
  • 安装脚本与在线更新服务的默认仓库为 ziyue67/sub2api

Fork 自有功能

  • Codex 292 门票(x-codex-turn-state)打票与注入、上游剩余额度探测、账号代理车道
  • 管理员请求采集、凭证守护、账号质量运维、Excel / BPS 协议
  • Mihomo 托管 / 动态代理区域、Pelican 定时演练、图片创作 / 画布 / Studio Bridge
  • 邮件广播、模型广场、Claude 重置额度查询、网站工单、账号运维告警、受控渠道实验
  • 发布流水线:双 registry 推送;latest 只由 Release 写;二进制归档停发

Docker 镜像(ziyue67/sub2api)

ziyue67/sub2api:latest
ziyue67/sub2api:0.2.17
ghcr.io/ziyue67/sub2api:latest
ghcr.io/ziyue67/sub2api:0.2.17

拉取示例:

docker pull ziyue67/sub2api:0.2.17
docker pull ghcr.io/ziyue67/sub2api:0.2.17

文档