Commit History
-
feat: refactor access token fetching to handle multiple accounts and improve error reporting
HouYunFei7de5f87
-
feat(accounts): 添加Codex账户支持和图像生成功能
HouYunFei- 在账户导入对话框中添加source_type字段,默认设置为codex - 实现账户服务中的源类型匹配和计划类型匹配方法 - 重构Codex账户导入逻辑,将type转换为export_type并设置source_type - 扩展API接口支持AccountImportPayload类型和批量账户创建 - 实现Codex图像响应流处理和事件解析功能 - 在CPA和Sub2API服务中更新Codex账户添加逻辑 - 添加Codex图像模型识别和验证工具函数 - 更新图像生成界面支持动态模型选择和Codex模型限制 - 实现Codex后端API集成和账户ID解析功能 - 调整模型列表动态生成逻辑以区分Web和Codex账户类型 - 添加Codex相关常量和请求头配置 - 实现Codex图像生成输入处理和响应失败日志记录cf91d2c
-
fix(sub2api): 正确解析响应的 {code,data:{items,total}} 包装
- 新增 _unwrap_envelope / _extract_paged_items 辅助函数,兼容包装和直出两种结构 - list_remote_accounts / list_remote_groups / _fetch_access_token_for_account / _login 全部改走新解析路径 Why: sub2api 所有 admin 接口都用 response.Paginated 做双层包装(code/message/data.items), 之前把 data 当成数组读导致 /groups 和 /accounts 永远返回空。 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>96921b5 -
fix(sub2api): 分组列表不再按 platform 过滤
- list_remote_groups 去掉 platform=openai 查询参数,拉取全部分组 - 返回 DTO 增加 platform 字段 - 前端下拉项显示 platform 标签,方便用户识别(如 openai / claude / gemini) Why: sub2api 的分组有严格平台字段,若用户只建了 Claude 分组或跨平台分组会被过滤为空。让前端列出全部,由用户自行选择。 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>2f65061 -
feat(sub2api): 支持按分组同步 OpenAI OAuth 账号
- 连接配置新增 group_id 字段,同步时作为 group 参数传给 sub2api /admin/accounts - 新增 list_remote_groups + GET /api/sub2api/servers/{id}/groups,按 platform=openai 过滤 - 编辑对话框支持「拉取分组」切换为下拉选择(含全部 / 未分组 / 具体分组选项) - 连接列表副标题显示当前筛选分组 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>c49ad87 -
feat(accounts): 支持从 Sub2API 服务器导入 OpenAI OAuth 账号
- 新增 Sub2API 连接管理(邮箱+密码或 Admin API Key 两种认证) - 在设置页浏览远端 platform=openai/type=oauth 账号并批量导入 - 导入任务复用本地号池 add+refresh 流程,支持进度轮询 - 账号导入对话框新增 Sub2API 入口 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>54a879d