{"full_name":"Wei-Shaw/sub2api","owner":"Wei-Shaw","name":"sub2api","url":"https://github.com/Wei-Shaw/sub2api","description":"Sub2API 一站式开源中转服务，让 Claude、Openai 、Gemini、Grok订阅统一接入，支持拼车共享，更高效分摊成本，原生工具无缝使用。","homepage":"","topics":[],"language":"Go","license":"LGPL-3.0","avatar":"https://avatars.githubusercontent.com/u/26101719?u=08c7d9556bb674f8e12d4c09fe28be0cfa73b1fb&v=4","created_at":"2025-12-18T02:26:18Z","pushed_at":"2026-11-10T08:22:37Z","metrics":{"stars":45774,"forks":9900,"watchers":91,"issues":4258,"prs":4208,"releases":64,"issues_open":null,"issues_closed":null,"prs_open":null,"prs_closed":null,"prs_merged":null,"discussions":0},"growth":{"day":{"stars":69,"forks":21,"base_day":"2026-11-09"}},"history":{"dates":["2026-11-09","2026-11-10"],"stars":[45705,45774],"forks":[9879,9900],"watchers":[91,91],"issues_open":[null,null],"prs_open":[null,null]},"boards":{},"same_owner":[],"issues":[{"number":2738,"title":"最近两天很容易502 timeout awaiting response headers，导致首token几百秒或者直接卡死","comments":141,"created_at":"2026-05-24T06:29:47Z"},{"number":5992,"title":"别查了！真别查了！别再查中转站了，我用了三年，1400块钱一月的正版pro，我用了三年，房子用没了，家人被我用垮了，现在好不容易有了便宜token，你们非说它是非法分发的token，那token好不好用，我们能不知道吗？那token才0.04倍率，token贩子根本没赚钱，谁家能不遇上个需要用codex的，你能保证你这一辈子不用token吗，你们把它查死了，我们都得等死，我想活着，我想用便宜token。","comments":81,"created_at":"2026-08-21T08:00:37Z"},{"number":6739,"title":"Our servers are currently overloaded. Please try again later.","comments":49,"created_at":"2026-09-07T04:07:54Z"},{"number":4248,"title":"首字 15 分钟, 真的受不了,不接中转站就好了, 是不是最近有 Bug?","comments":49,"created_at":"2026-07-14T07:07:16Z"},{"number":5663,"title":"为什么两个PRO账号，额度到达100% 为什么差距这么大的？","comments":44,"created_at":"2026-08-15T03:51:37Z"},{"number":6825,"title":"关于overloaded过载问题的新发现","comments":35,"created_at":"2026-09-08T07:23:28Z"},{"number":5787,"title":"178版本的pro额度新开账户还是仅有1400刀","comments":33,"created_at":"2026-08-18T14:38:46Z"},{"number":4201,"title":"偶尔首字很长时间","comments":33,"created_at":"2026-07-13T14:11:02Z"}],"discussions":[],"latest_release":{"name":"Sub2API 0.2.20","tag":"v0.2.20","published_at":"2026-11-07T06:31:24Z","body":"> AI API Gateway Platform - 将 AI 订阅配额分发和管理\n\n新增基于 OAuth 授权的管理 MCP 接口，并完善管理员密钥的细粒度权限；同时全面治理网关请求体内存与读写超时，提升高并发下的稳定性。\n\n## 新增功能\n\n- 管理 MCP：新增 OAuth 认证的管理 MCP 接口及前端授权确认/连接管理页面，需显式配置 MCP_PUBLIC_URL 才会启用（默认关闭）\n- 管理员密钥：补全权限项（统计、OpenAI OAuth、邀请等）与中英文权限展示，新增需输入确认文字才能开启的「全权兼容模式」\n- 注册邮箱精确黑名单：支持批量粘贴（上限 20000 条），按收件箱身份匹配 Gmail 点号/+后缀变体，保存时可批量禁用命中的已注册用户\n- OpenAI 生图账号支持按 1K/2K/4K 尺寸档位分流，未指定尺寸时按档位偏好逐层选号\n- 新增 gateway.disable_openai_transport_error_cooldown 开关，可关闭 OpenAI 传输错误冷却\n- Antigravity 账号用量显示每个配额组真实的 5 小时与每周窗口，Pro 套餐的独立 Argon 配额单独成行\n- Antigravity INTERNAL 500 账号惩罚档位可通过环境变量配置\n\n## 优化改进\n\n- 网关请求体内存预算、上游/下游读写超时与后台任务全面加上限，减少慢连接和大请求对实例的影响\n- 网关热路径减少 JSON 拷贝与重复解析（thinking 过滤、Codex 引导/压缩判断、Gemini 流增量等），RPM 覆盖与分组隐私门控不再每请求查库\n- 请求体读取失败按超时（408）、客户端断开（499）、截断、解码错误分类返回，并记录不含内容的诊断日志\n- 打通 GPT Image 2.6 原生图片链路，保留 complexity 与原生编辑选项\n- Antigravity 连接测试改为发送管理员填写的提示词并返回模型真实回复\n- Kimi 并发上限 403 改用短冷却，不再长时间下线账号\n- Antigravity 图像模型的 INTERNAL 500 只冷却该模型，不再连带整个账号进入惩罚\n- 用户使用记录导出每页 1000 条，遇面板限流 429 按 Retry-After 等待后重试\n- Codex 密钥导出与 CC Switch 导出默认模型统一改为 GPT-6.1 Sol，并启用实时联网搜索、保留图片配置\n- GPT-6.1 Terra 使用官方 Codex 描述（上下文窗口 500k），校验 effort 与兼容缓存键\n- 错误透传规则可覆盖内置的请求体过大 413\n- MCP 客户端 ID 过长时前端截断显示，MCP 关闭时隐藏入口\n\n## Bug 修复\n\n- 修复 Anthropic setup-token 账号在无 5h 限制时丢失每周用量的问题\n- 修复长会话中 cyber transcript 误拦截的问题（#8519）\n- 修复异步生图任务因请求体内存预算被提前释放而全部 503 的问题\n- 修复 Bedrock EventStream 帧长度未校验即分配内存的问题\n- 修复 Gemini 上游 SSE 行与 Antigravity 非流式响应读取无上限的问题\n- 修复补丁预算在 failover 中累积导致误拒绝的问题\n- 修复 OpenAI OAuth 透传对 codex 模型空 instructions 本地返回 403 的问题，response.instructions 回显按客户端原值还原\n- 修复非流式 /v1/responses 在上游返回 incomplete/cancelled 或缺少 Content-Type 的 SSE 时未返回 JSON 的问题\n- 修复 WebSocket HTTP 桥接未应用 Codex 指纹收敛的问题\n- 修复 OpenAI WS 透传部分轮次未记录首 token 时间的问题\n- 修复强制路由模式下仍发起 responses 探测的问题\n- 修复生图尺寸溢出选号时错误改写会话粘性绑定的问题\n- 修复 GPT Image 账号生图测试参数错误的问题\n- 修复 API Key 校验时客户端断开或密钥格式错误被报告为 500 的问题\n- 修复 Grok Voice 请求体读取失败被误报为 400 并回显原始 socket 错误的问题\n- 修复 Grok 委派消息输入在 Responses 中未规范化的问题\n- 修复 apicompat 转换丢失缓冲 reasoning 内容、完成响应丢失消息内容字段的问题\n- 修复 Gemini 原生 function response 中工具媒体丢失的问题\n- 修复 Antigravity 直连 Gemini 流式响应异常、responseJsonSchema 未改写为 responseSchema 的问题\n- 修复 Antigravity 转发时残留旧系统身份、误删携带任务内容的身份前导的问题\n- 修复 Cloudflare REST messages 请求携带 beta 查询参数的问题\n\n## 破坏性变更\n\n- 请求体内存预算：新增 security.request_body_memory_budget_bytes（默认 1GiB），超出时返回 503 + Retry-After；设为 0 可禁用\n- 读写超时：新增 security.request_body_read_timeout_seconds 与 downstream_write_timeout_seconds（默认均 120 秒，0 禁用），上传单次读取停滞超时返回 408\n- 客户端断开后的上游 drain 窗口改为有上限，超时截断会影响该请求的计费口径；会话缓存改为有界\n- GPT-6.1 Terra：OAuth/setup-token 订阅请求超过 272k 不再收取长上下文附加费；Codex 窗口升至 500k 后 API Key 请求越过 272k 更频繁，按 2x/1.5x 计费；Terra 兼容路径的 minimal effort 改为返回 400\n- 新增数据库迁移 249_mcp_oauth.sql，升级时自动执行\n\n## 升级指南\n\n- 容器内存较小或并发长上下文请求较多的部署，请按实际情况调整 security.request_body_memory_budget_bytes，详见 deploy/EDGE_SECURITY.md\n- 如需启用管理 MCP，配置 MCP_PUBLIC_URL（需 HTTPS，路径为 /api/v1/mcp）\n\n\n\n---\n\n## 📥 Installation\n\n**Docker:**\n```bash\n# Docker Hub\ndocker pull weishaw/sub2api:0.2.20\n\n# GitHub Container Registry\ndocker pull ghcr.io/wei-shaw/sub2api:0.2.20\n```\n\n**One-line install (Linux):**\n```bash\ncurl -sSL https://raw.githubusercontent.com/Wei-Shaw/sub2api/main/deploy/install.sh | sudo bash\n```\n\n**Manual download:**\nDownload the appropriate archive for your platform from the assets below.\n\n## 📚 Documentation\n\n- [GitHub Repository](https://github.com/Wei-Shaw/sub2api)\n- [Installation Guide](https://github.com/Wei-Shaw/sub2api/blob/main/deploy/README.md)\n\n"},"readme":true,"readme_zh":true,"news":[],"stale":false,"snapshot_at":"2026-11-10T09:35:25Z","history_start":"2026-09-06"}