From dc4e6fe0b295a6d8b7953611a0e880ee31dae4b5 Mon Sep 17 00:00:00 2001 From: hex2077 Date: Sun, 18 Jan 2026 14:53:14 +0800 Subject: [PATCH] =?UTF-8?q?feat(oauth):=20=E4=BF=AE=E5=A4=8DKiro=E6=8F=90?= =?UTF-8?q?=E4=BE=9B=E5=95=86403=E9=94=99=E8=AF=AF=E5=A4=84=E7=90=86?= =?UTF-8?q?=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 优化令牌刷新队列机制,增加缓冲队列减少重复刷新 更新提供商健康检查模型配置,添加iFlow和Codex相关模型 统一OAuth模块导出结构,整理各提供商OAuth实现 修复Kiro提供商403错误处理逻辑,改为标记需刷新而非直接标记不健康 --- PROVIDER_ADAPTER_GUIDE.md | 36 +- src/auth/codex-oauth.js | 851 +++++ src/auth/gemini-oauth.js | 289 ++ src/auth/iflow-oauth.js | 529 +++ src/auth/index.js | 38 + src/auth/kiro-oauth.js | 1110 ++++++ src/auth/oauth-handlers.js | 3164 +----------------- src/auth/orchids-oauth.js | 280 ++ src/auth/qwen-oauth.js | 339 ++ src/providers/claude/claude-kiro.js | 26 +- src/providers/provider-pool-manager.js | 218 +- static/app/i18n.js | 4 + static/app/provider-manager.js | 2 +- static/app/upload-config-manager.js | 6 + static/components/section-upload-config.html | 2 + 15 files changed, 3700 insertions(+), 3194 deletions(-) create mode 100644 src/auth/codex-oauth.js create mode 100644 src/auth/gemini-oauth.js create mode 100644 src/auth/iflow-oauth.js create mode 100644 src/auth/index.js create mode 100644 src/auth/kiro-oauth.js create mode 100644 src/auth/orchids-oauth.js create mode 100644 src/auth/qwen-oauth.js diff --git a/PROVIDER_ADAPTER_GUIDE.md b/PROVIDER_ADAPTER_GUIDE.md index dba05c7..67bab7c 100644 --- a/PROVIDER_ADAPTER_GUIDE.md +++ b/PROVIDER_ADAPTER_GUIDE.md @@ -45,12 +45,42 @@ ### 3.2 凭据上传路由 ([`static/app/file-upload.js`](static/app/file-upload.js)) * 修改 `getProviderKey`,建立提供商标识与 `configs/` 子目录名的映射(例如:`new-provider-api` -> `new-provider`)。 -### 3.3 配置管理界面 ([`static/components/section-config.html`](static/components/section-config.html)) +### 3.3 凭据文件管理筛选器 +需要在以下三个位置添加新提供商的筛选支持: + +#### 3.3.1 HTML 筛选器选项 ([`static/components/section-upload-config.html`](static/components/section-upload-config.html)) +在 `id="configProviderFilter"` 的 `