Sub2API Plus 0.2.1
Technical preview / 技术预览: 当前 0.2.x 仅用于开发、兼容性测试和隔离验收,未完成生产级安全、压力、容灾和回滚验证。请勿直接接入生产业务、真实付费用户、不可替代数据或高价值凭据。完整说明见 DISCLAIMER.md。本提示不对 LGPL-3.0-or-later 增加许可限制。
更新日志 / Changelog
- 对齐上游 PR #5668:回传并按账户隔离
x-codex-turn-state,补齐 remote compaction v2 探测和 beta feature 恢复;Codex 指纹收敛改为显式 opt-in,缺省保持off。 - API Key 和第三方 OpenAI 兼容上游恢复 custom/freeform 工具调用,流式参数增量不再输出空工具名,旧式
tool_choice.function.name自动转换为 Responses 标准形态。 - 为只支持 Chat Completions 的兼容上游桥接 Codex remote compaction v2:请求侧保留压缩历史并注入总结指令,响应侧生成唯一
compactionitem,兼容 JSON 和 SSE 客户端。 - 所有网关合成的 Responses 对象和失败事件补齐必填
created_at,避免严格 Rust/Codex 客户端因字段缺失而终止反序列化。 - 识别纯 message 形态的
Our servers are currently overloaded,覆盖 HTTP 400/503 和流式错误;空 WebSocketerror对象会补充可重试错误详情,不再向客户端暴露无意义的{}。 - OpenCode Go 兼容上游的
GoUsageLimitError会解析Resets in 4hr 59min等单段或组合时长,账户保持冷却到真实重置时间。 - OpenAI OAuth 账户的空
openai_capabilities容器按未配置处理,避免导入或历史数据导致健康账户被调度器静默排除。 - 调度 Redis 快照补齐预加载前账户元数据并升级缓存命名空间,避免账户优先级、并发和扩展字段在缓存路径丢失。
- 非官方上游 URL、私有 IP 和 host:port 从下游错误文案中脱敏;官方 provider host 保留,error passthrough 路径使用同一规则。
本轮审查了官方仓近期 OpenAI/Codex、Responses、429、调度、代理和安全相关 Issues/PR。Anthropic/Claude Code 专属改动、支付/国产供应商新功能、OpenAI Team 联动熔断及大范围流式 failover 重构未纳入本版本,避免扩大回归面。
验证结果:Go 1.26.6 下 internal/service 全量测试、其余后端包测试、go vet -tags=unit ./...、middleware 测试程序单独编译、前端 vue-tsc --noEmit、完整 Vitest 和 Vite 生产构建均通过。Windows 本机策略会阻止执行临时目录中的 internal/middleware 测试程序;该包已成功编译,完整执行继续由 Linux CI 覆盖。
📥 Installation
Docker:
# GitHub Container Registry
docker pull ghcr.io/zcj-ui/sub2api-plus:0.2.1One-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.