Commit graph

552 commits

Author SHA1 Message Date
hex2077
73079dc4ee Merge branch 'main' of https://github.com/justlovemaki/AIClient-2-API 2026-02-27 22:23:55 +08:00
hex2077
f0445d96e4 feat(grok): 模拟 Chrome TLS 指纹以绕过 Cloudflare 检测
- 引入 TLS 模块并配置 HTTPS agent 以精确匹配 Chrome 136 的加密套件、签名算法和 ALPN 顺序
- 更新默认 User-Agent 至 Chrome 136 并动态生成更真实的 Statsig ID
- 优化请求头,根据 UA 自动填充 sec-ch-ua 系列字段,增强指纹一致性
- 移除调试日志并调整 Cloudflare 令牌缺失的日志级别
2026-02-27 22:23:48 +08:00
何夕2077
66a9dcd1a5
Update VERSION 2026-02-27 13:43:44 +08:00
hex2077
3b345887d4 docs: 添加关于脚本编码和换行符的注释
确保脚本使用 Windows CRLF 换行符和 UTF-8 编码,以提高可读性和跨平台一致性。
2026-02-27 13:43:06 +08:00
何夕2077
1ada4246ec
Merge pull request #344 from lly835/refactor/config-cli-parsing
refactor: 用声明式定义表替换 CLI 参数解析的 if-else 链
2026-02-27 13:23:59 +08:00
何夕2077
328bdcee43
Merge pull request #342 from lly835/fix/logger-context-memory-leak
fix: 为 Logger.requestContext 添加 TTL 清理机制防止内存泄漏
2026-02-27 11:12:36 +08:00
aka686
1aa691e70b refactor: 用声明式定义表替换 CLI 参数解析的 if-else 链
将 12 个 CLI 参数的手写 if-else 链(约 100 行)重构为数据驱动的声明式定义表,
支持 string/int/bool/enum 四种类型自动解析。

- 新增参数只需在 cliArgDefs 数组中添加一行
- 消除大量重复的模式代码
- 保持完全相同的解析行为和警告输出
2026-02-26 23:43:58 +08:00
aka686
2aff6013d7 fix: 为 Logger.requestContext 添加 TTL 清理机制防止内存泄漏
长时间运行的服务中,如果 clearRequestContext 未被正确调用(如请求异常中断),
requestContext Map 会持续增长导致内存泄漏。

新增:
- 每个上下文条目记录 _createdAt 时间戳
- 每 60 秒定期扫描并清除超过 5 分钟的过期条目
- Map 为空时自动停止定时器,避免不必要的开销
- close() 时清理定时器
2026-02-26 23:38:43 +08:00
何夕2077
1f913a13b8
Update VERSION 2026-02-26 18:24:35 +08:00
hex2077
68719879c5 feat(architecture): 重构适配器注册机制并引入并发控制系统
建立可扩展的提供商适配器注册表,实现动态服务发现与插槽管理:

架构改进:
- 采用 Map 注册表替代 switch-case 硬编码,支持热插拔适配器
- 实现 acquireSlot/releaseSlot 机制,精确追踪活跃请求与等待队列
- 新增节点评分算法,综合考量并发数、队列长度、健康状态

核心能力:
- 支持并发限制与队列等待,避免单节点过载 (concurrencyLimit/queueLimit)
- 实现 Fallback 链式调用,429 错误自动切换备用凭证
- 添加请求级 IP 追踪,日志格式优化为 `clientIp:requestId`

配套更新:
- 管理界面新增并发/队列配置字段与 Grok 逆向提供商选项
- 用量查询服务扩展 Grok 支持,同步剩余查询次数 (固定总量 80)
- 新增并发测试脚本 (tests/concurrent-test.js),支持自定义并发数与 RPM 限制

配置项:
- GROK_COOKIE_TOKEN, GROK_CF_CLEARANCE, GROK_USER_AGENT, GROK_BASE_URL
2026-02-26 18:19:38 +08:00
何夕2077
4ee0fb4b96
Merge pull request #337 from lly835/fix/plugin-list-duplicate-rendering
fix: 修复插件管理页面卡片重复渲染问题
2026-02-26 11:50:32 +08:00
何夕2077
85b9efb110
Merge pull request #338 from lly835/fix/codex-cache-key-cross-model
fix: 修复同会话跨模型缓存键不命中问题
2026-02-26 11:50:11 +08:00
lly835
022e345d68 fix: 修复同会话跨模型缓存键不命中问题
移除 prepareRequestBody 中非 default sessionId 时的 model 前缀拼接,
使同一会话内切换模型时能复用缓存,与注释中'弱化 model 依赖'的设计意图一致。

Closes #328
2026-02-26 01:18:32 +08:00
lly835
f44222bf61 fix: clear plugin list container before rendering to prevent duplicate cards 2026-02-26 00:48:20 +08:00
hex2077
f6c9881926 Merge branch 'main' of https://github.com/justlovemaki/AIClient-2-API 2026-02-22 21:59:18 +08:00
hex2077
4ba514b353 docs: 从README文件中移除赞助者列表和赞助二维码
移除英文、中文、日文README文件中的赞助者列表和赞助二维码部分,以保持文档内容的简洁和一致性。
2026-02-22 21:59:03 +08:00
何夕2077
be45ac7666
Update VERSION 2026-02-20 19:53:26 +08:00
hex2077
ed8b889586 fix: 确保工具结果消息内容在转换时被正确序列化
- 修复 OpenAIConverter 中工具结果消息内容为对象时未序列化为字符串的问题
- 修复 ClaudeConverter 中工具结果消息内容为对象时未序列化为字符串的问题
- 修复 Kiro 提供程序中工具描述为空时导致请求失败的问题
- 更新 README 文档,添加 Kiro 扩展思考和提供商优先级配置说明
- 清理过时和未使用的测试文件以保持代码库整洁
2026-02-20 19:52:50 +08:00
何夕2077
f16f972d97
Merge pull request #320 from Asoubra12/pr/kiro-extended-thinking-slim
feat(kiro): add extended thinking passthrough and structured reasoning outputs
2026-02-20 19:27:04 +08:00
hex2077
42d1bd276f Merge branch 'main' of https://github.com/justlovemaki/AIClient-2-API 2026-02-20 19:18:24 +08:00
hex2077
71372495e0 feat(gemini): 添加 gemini-3.1-pro-preview 模型支持
在 provider-models.js 和 antigravity-core.js 中添加了新模型 gemini-3.1-pro-preview 的配置,使其可用于 gemini 和 gemini-antigravity 提供商。同时更新了模型别名映射,确保模型标识符能正确映射。
2026-02-20 19:18:15 +08:00
何夕2077
8ca2764252
Update VERSION 2026-02-18 22:19:33 +08:00
hex2077
fbc5357519 feat(claude): 添加 claude-sonnet-4-6 模型支持
更新模型列表和映射以支持新的 Claude Sonnet 4.6 模型。
2026-02-18 22:19:04 +08:00
何夕2077
dda058a144
Update VERSION 2026-02-15 11:22:19 +08:00
hex2077
43aaee61d7 Merge branch 'main' of https://github.com/justlovemaki/AIClient-2-API 2026-02-15 11:21:32 +08:00
hex2077
55879396c8 feat(converters): 为请求添加 metadata 支持并优化会话缓存
- 在 CodexConverter 和 ClaudeConverter 中增加 metadata 字段,透传上游元数据
- 重构 CodexApiService 的缓存键生成逻辑,优先使用 session_id 或 conversation_id
- 从上游请求体中移除 metadata 避免透传,仅用于生成缓存键
2026-02-15 11:21:26 +08:00
何夕2077
75f61a033c
Update VERSION 2026-02-14 23:21:35 +08:00
hex2077
105bb39c1a fix(provider-pool-manager): 优化节点选择策略,防止序列号导致长期排挤
引入相对序列号机制,计算节点序列号相对于池中最小序列号的偏移量并封顶,避免全局自增序列号在长时间周期内对节点选择造成过度惩罚,确保公平性。同时修复重置节点时未清零序列号的问题。
2026-02-14 23:20:39 +08:00
何夕2077
a6778ce66d
Update VERSION 2026-02-14 20:49:52 +08:00
hex2077
7dfe057478 Merge branch 'main' of https://github.com/justlovemaki/AIClient-2-API 2026-02-14 19:57:01 +08:00
hex2077
f27c9d8732 fix(providers): 统一错误日志格式并修复提供商模型引用
修复多个API服务中错误日志格式不一致的问题,统一使用error.message替代data字段
修正多个提供商模型引用方式,使用MODEL_PROVIDER常量替代硬编码字符串
更新Codex API请求头配置,修复流式响应处理逻辑
为iFlow API添加签名验证机制,增强请求安全性
添加GLM-5和MiniMax M2.5等新模型支持
修复400错误状态码检查逻辑,使用error.response?.status替代error.code
2026-02-14 19:54:53 +08:00
何夕2077
d1a9a5d858
Update VERSION 2026-02-13 20:49:12 +08:00
hex2077
6ee7e78c90 feat: 增强模型支持和修复流处理问题
- 添加新的Qwen模型(coder-model, vision-model)到提供者列表
- 修复OpenAI Responses流结束事件处理,避免下游类型校验错误
- 更新Qwen API端点地址和版本号
- 重构Codex转换器,分离OpenAI和OpenAI Responses的转换逻辑
- 优化工具调用处理,支持嵌套function结构
- 移除健康检查功能,简化API管理初始化
- 修复消息角色转换(developer→assistant)和类型标记
2026-02-13 20:47:47 +08:00
何夕2077
ce8e8ad855
Merge pull request #326 from ggdayup/feature/health-check-alerts
feat: add health check monitoring and alerting system
2026-02-13 15:01:08 +08:00
Local User
46fc601f6c feat: add health check monitoring and alerting system
- Add health status change logging with detailed information
- Add optional webhook notifications for provider health changes
  - Configurable via HEALTH_ALERT_WEBHOOK_URL environment variable
  - Sends notifications when provider becomes unhealthy or recovers
- Broadcast health status events for real-time UI updates
- Integrate periodic health checks in heartbeat function
- Track provider stats (usage count, error count) in health logs

This improves observability by allowing operators to:
- Monitor provider health status changes in real-time
- Receive alerts via webhook when issues occur
- View detailed health statistics for troubleshooting
2026-02-13 08:37:12 +08:00
Codex
9f3040cf49 feat(kiro): add request-side extended thinking support and structured reasoning outputs 2026-02-11 12:26:03 +03:00
何夕2077
54869893bf
Update VERSION 2026-02-11 11:21:16 +08:00
hex2077
82cab7a91f fix(openai): 更新代理配置的提供者标识符
将 getProxyConfigForProvider 调用中的提供者标识符从 'codex' 更改为 'openai-codex-oauth',以匹配最新的代理配置命名约定,确保代理设置能正确生效。
2026-02-11 11:18:43 +08:00
何夕2077
7d414cd5ac
Update VERSION 2026-02-09 22:00:56 +08:00
hex2077
a7b29d9d48 fix(provider-pool): 修正标记不健康提供者时的错误状态判断
将标记不健康提供者时的状态检查从 `status === 400` 改为 `error.code === 400`,确保正确识别客户端错误。同时在标记时传递错误信息给 `markProviderUnhealthy` 方法,以提供更详细的故障原因。
2026-02-09 21:58:45 +08:00
何夕2077
138bd122cd
Update VERSION 2026-02-09 20:05:02 +08:00
hex2077
7b13f157de Merge branch 'main' of https://github.com/justlovemaki/AIClient-2-API 2026-02-09 20:02:03 +08:00
hex2077
27acc72dfd feat: 增加登录过期配置并优化错误处理
- 新增 LOGIN_EXPIRY 配置项,支持自定义管理后台登录 Token 有效期
- 优化 provider 错误计数逻辑,当 MAX_ERROR_COUNT 为 0 时禁用自动标记不健康
- 修复工具消息转换中对象内容未序列化的问题
- 增强网络错误处理,可重试的网络错误不再导致进程退出
- 过滤 Claude Kiro provider 中描述为空的工具,避免 API 调用失败
2026-02-09 19:50:35 +08:00
何夕2077
f6cc66aad1
Update VERSION 2026-02-08 15:44:08 +08:00
hex2077
26d611dcf7 Merge branch 'main' of https://github.com/justlovemaki/AIClient-2-API 2026-02-08 15:42:54 +08:00
hex2077
4d588f6c7d fix: 防止流式响应中重复发送结束标志并添加新模型支持
修复 handleStreamRequest 中可能重复发送流结束标志的问题,新增 hasMessageStop 状态跟踪。
在 provider-pool-manager 中修复临时配置缺少全局配置的问题。
为 Gemini 提供者添加新的模型支持:gemini-claude-opus-4-6-thinking。
2026-02-08 15:42:45 +08:00
何夕2077
68b6bce7c2
Update VERSION 2026-02-06 11:44:23 +08:00
hex2077
60b4296097 Merge branch 'main' of https://github.com/justlovemaki/AIClient-2-API 2026-02-06 11:43:48 +08:00
hex2077
d0319047a1 feat: 添加对新模型 claude-opus-4-6 和 gpt-5.3-codex 的支持
- 在 Claude Kiro 提供商的模型映射表中新增 claude-opus-4-6
- 在提供商模型列表中为 claude-kiro-oauth 添加 claude-opus-4-6
- 在 OpenAI Codex 提供商中更新 API 版本至 0.98.0 并添加 gpt-5.3-codex 模型
2026-02-06 11:43:38 +08:00
何夕2077
f8c88c1a28
Update VERSION 2026-02-05 22:14:36 +08:00