hex2077
f22cc4499a
fix(tls-sidecar): 修复代理请求标头处理和配置显示空值问题
...
修复 Cloudflare 403 错误:彻底清理代理和网络特征标头,保持小写形式
修复前端配置显示:正确处理 null/undefined 值,避免显示 "null" 字符串
2026-03-01 22:01:09 +08:00
何夕2077
829fafc651
Update VERSION
2026-02-28 17:53:36 +08:00
hex2077
517120a000
fix: 修复Claude内容处理和iFlow模型验证问题
...
- 修复ClaudeConverter中字符串内容处理逻辑,确保字符串能正确转换为OpenAI格式
- 移除claude-kiro.js中重复的内容处理代码,避免重复计算tokens
- 修复iFlow模型验证逻辑,当模型不存在时使用默认模型
- 优化插件状态提示信息,使用通用的"已启用/已禁用"翻译
2026-02-28 17:52:45 +08:00
hex2077
f8de8aad67
feat(config-api): 添加 TLS Sidecar 配置支持
...
在配置更新处理中新增对 TLS_SIDECAR_ENABLED 和 TLS_SIDECAR_PORT 两个配置项的支持,使系统能够通过 API 动态管理 TLS Sidecar 的启用状态和端口设置。
2026-02-28 00:23:16 +08:00
hex2077
afedccf934
chore: 更新版本号至2.9.9.32并优化Docker构建
...
- 更新VERSION文件中的版本号
- 在go mod download失败时继续执行构建
- 在构建tls-sidecar前执行go mod tidy以确保依赖整洁
2026-02-28 00:06:01 +08:00
hex2077
81dd6a3f86
feat(tls): 添加 Go uTLS sidecar 以绕过 Cloudflare TLS 指纹检测
...
- 新增 Go 语言编写的 TLS sidecar 服务,使用 uTLS 库模拟 Chrome 指纹
- 在 Dockerfile 中添加多阶段构建以编译 sidecar 二进制文件
- 扩展配置系统,支持启用/禁用 sidecar 及自定义端口
- 修改 Grok 提供商,使其请求可通过 sidecar 转发
- 在前端界面添加 TLS sidecar 配置选项和国际化支持
- 服务启动时自动启动 sidecar,关闭时优雅停止
2026-02-28 00:02:12 +08:00
何夕2077
4f9189e96e
Update VERSION
2026-02-27 22:32:44 +08:00
hex2077
04904dc38b
Merge branch 'main' of https://github.com/justlovemaki/AIClient-2-API
2026-02-27 22:32:17 +08:00
hex2077
89e80148d0
fix(grok): 禁用 HTTP/2 协商以适配 axios
...
axios 底层仅支持 HTTP/1.1,强制协商 h2 会导致服务端返回的 H2 帧解析失败。将 ALPN 协议列表修改为仅 'http/1.1' 以确保连接兼容性。
2026-02-27 22:32:11 +08:00
何夕2077
33981db33b
Update VERSION
2026-02-27 22:24:20 +08:00
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