Technical preview / 技术预览: 当前 0.2.x 仅用于开发、兼容性测试和隔离验收,未完成生产级安全、压力、容灾和回滚验证。请勿直接接入生产业务、真实付费用户、不可替代数据或高价值凭据。完整说明见 DISCLAIMER.md。本提示不对 LGPL-3.0-or-later 增加许可限制。
更新日志 / Changelog
本次合并官方 Wei-Shaw/sub2api 主线 ab99d56e96(官方版本 0.2.1),相对上一轮官方基线 b1748c4ea9 纳入 77 个提交、265 个文件的改动。Plus 使用独立版本号 0.2.12,不是把官方版本号直接覆盖到分支。
官方功能与修复
- OpenAI/Codex:新增 GPT-6 Astra 模型与上游能力同步;模型列表临时不可用时保留已同步能力,支持 Astra Messages 提示缓存、ultrafast 服务档位和以 none 为来源的推理强度映射。
- 路由和续聊:按渠道映射后的模型进行账号能力筛选;修复 unavailable continuation 恢复、历史任务委派续聊、自动化 heartbeat bootstrap、OpenCode 会话透传与工具发现/search 能力声明。
- WebSocket:回放历史共享不可变正文,避免多轮深拷贝积累;记录被拒绝的加密内容摘要,后续回合移除同一失效内容;补齐 error/response.failed 等路径的 cyber-policy 记录。
- 账户管理:列表默认使用 compact DTO,保留状态、并发、凭据存在标记、Extra 和分组 ID,移除重复分组对象与凭据秘密值;支持 ETag 刷新。新增 OpenAI 分组的 pinned-accounts Codex 模型清单配置。
- 图片:账户可选择把 Images 非流式结果中的 URL 下载回填为 b64_json;客户端明确要求 URL 时不回填。下载拒绝私网目的地,逐跳检查重定向,并以内容字节识别允许的图片格式。
- 计费与运营:纳入 Anthropic max 推理档倍率、定价文件内容哈希热重载、上游请求 ID 落库/自定义响应头、零值系统指标保留、支付宝待支付订单对账等更新。
- Claude/国产渠道:同步官方 CLI 版本环境覆盖及 billing 指纹与实际 User-Agent 对齐、GLM-5.3 thinking effort、Gemini 自定义模型清单、转发失败释放会话槽、负载调度渠道模型限制检查;不向 Claude/CC 引入 Plus 的卡429功能。
Plus 合并兼容处理
- 统一旧 lite 列表与官方 compact 列表接口,避免精简请求只返回 ID/name 等元数据、导致账户状态和额度列缺失。保留 Plus 健康快照、盘点入口和指纹配置字段。
- 保留 OpenAI 已配置代理的 fail-closed 行为,并在新增图片下载回填阶段再次检查配置;代理缺失、ID 错配、禁用、过期或 URL 无效时不改为直连。未配置代理不受影响。
- 保留四档指纹 off/device/session/full(默认 off)、Credits 查询及 Credit/25 参考换算、两次明确 429 确认和既有可选长连接策略。
- 将官方 WS 不可变历史更新放在 Plus 成功回合条件内;失败回合不覆盖上一轮有效续聊快照,失效连接仍清理绑定。
- 保留 Plus 的缺省 service_tier 匹配规则,并合并 ultrafast;保留自定义长上下文计费,同时恢复官方独立 1 小时缓存写入价格及区间处理。
- 失败会话槽释放与共享调度器的 API Key 会话限制对齐。合并上游请求 ID 字段时补齐 Plus 的 Chat Completions 压缩桥接返回值。
发布前本地验证
- Go 1.27.0:
go test -tags=unit -p 1 ./... -count=1全部通过,包含 service、handler/admin、repository、middleware 和 migrations。 - 前端:
pnpm exec vitest run通过 268 个测试文件、2015 个用例;pnpm build通过。 - 后端:
go build -tags=embed -trimpath ./cmd/server成功;进行了前端/迁移、WS/续聊、代理/计费三个维度的独立审查。 - 定向回归覆盖 compact 列表状态/凭据脱敏、代理失效时禁止图片下载、API Key 会话槽释放、1 小时缓存价、压缩桥接上游 ID,以及换号后不再发送已拒绝密文。
数据与升级说明
- 新增 4 个官方迁移(上游请求 ID 列/索引、渠道推理倍率、分组模型清单配置),既有 SQL 文件不改写。迁移以完整文件名识别,重复数字前缀不覆盖旧迁移。
- 发布包不携带数据库、账户数据、配置或构建缓存;本次 Git/Release 发布不自动操作已部署服务器。升级前仍须备份数据库、配置、代理和凭据,并验证备份可恢复。
- 新图片回填开关位于账户新建/编辑的 OpenAI 图片配置;自定义上游请求 ID 响应头位于账户配置;模型清单策略位于 OpenAI 分组配置。未开启的可选功能保持原行为。
- CI/自动化测试通过不能证明所有生产环境无缺陷。本项目继续按 LGPL-3.0-or-later、NOTICE 和仓库免责声明分发,不承诺生产可用性。
📥 Installation
Docker:
# GitHub Container Registry
docker pull ghcr.io/zcj-ui/sub2api-plus:0.2.12One-line install (Linux):
curl -sSL https://raw.githubusercontent.com/zcj-ui/sub2api-plus/main/deploy/install.sh | sudo bashManual download:
Download the appropriate archive for your platform from the assets below.