Commit Graph

612 Commits

Author SHA1 Message Date
shaw
5cfa3cc72f feat: 添加精确的账户费用计算和时区支持
- 实现基于模型使用量的精确每日费用计算
- 添加 dateHelper 工具支持时区转换
- 移除未使用的 webhook 配置代码
- 清理环境变量和配置文件中的 webhook 相关设置
- 优化前端费用显示,使用后端精确计算的数据
- 添加 DEBUG_HTTP_TRAFFIC 调试选项支持

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-01 11:29:16 +08:00
github-actions[bot]
246bdc928a chore: sync VERSION file with release v1.1.123 [skip ci] 2025-08-31 14:58:24 +00:00
Wesley Liddick
f77ab03d18 Merge pull request #306 from iaineng/main
fix: 修复Claude账户autoStopOnWarning字段无法更新的问题
2025-08-31 22:58:10 +08:00
iaineng
26438e0c9b fix: 修复Claude账户autoStopOnWarning字段无法更新的问题
在updateAccount方法的allowedUpdates数组中添加autoStopOnWarning字段,
解决通过管理后台API更新Claude账户时该字段被过滤掉的问题
2025-08-31 21:49:40 +08:00
github-actions[bot]
86f5a3e670 chore: sync VERSION file with release v1.1.122 [skip ci] 2025-08-31 12:19:06 +00:00
shaw
9a46310238 fix: 修复会话窗口使用统计问题 2025-08-31 20:14:12 +08:00
shaw
07e9bc1137 fix: 修复会话窗口使用统计问题 2025-08-31 19:04:12 +08:00
shaw
ef21c118e9 feat: 添加模型级别的小时统计数据
在 recordApiKeyUsage 方法中添加了模型级别的小时统计记录,
用于支持基于会话窗口的详细使用统计功能。

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-31 18:20:35 +08:00
shaw
e84c6a5555 feat: 实现基于费用的速率限制功能
- 新增 rateLimitCost 字段,支持按费用进行速率限制
- 新增 weeklyOpusCostLimit 字段,支持 Opus 模型周费用限制
- 优化速率限制逻辑,支持费用、请求数、token多维度控制
- 更新前端界面,添加费用限制配置选项
- 增强账户管理功能,支持费用统计和限制
- 改进 Redis 数据模型,支持费用计数器
- 优化价格计算服务,支持更精确的成本核算

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-31 17:27:37 +08:00
shaw
a54622e3d7 Revert "Merge pull request #292 from iRubbish/dev"
This reverts commit 9e8e74ce6b, reversing
changes made to 222f4e44fe.
2025-08-30 20:09:41 +08:00
shaw
3bc239e85c Merge branch 'main' into dev 2025-08-30 19:55:33 +08:00
Wesley Liddick
3f1117e8f6 Merge pull request #293 from hging/main [skip ci]
feat: 增加Bark作为webhook渠道
2025-08-28 13:39:13 +08:00
github-actions[bot]
a608b267ae chore: sync VERSION file with release v1.1.121 [skip ci] 2025-08-28 08:43:49 +08:00
zjpyb
43cf7d3c28 fix: 修复Gemini v1beta非流式响应数据结构问题
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-28 08:43:48 +08:00
zjpyb
7c3257764c fix: 修复Gemini v1beta流式响应中断问题
- 优化SSE流式响应处理逻辑,修复客户端接收第一条消息后断开连接的问题
- 统一流处理缓冲区,正确处理不完整的SSE行
- v1beta版本返回response字段内容,v1internal保持原始转发
- 移除调试日志输出,提升生产环境稳定性

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-28 08:43:48 +08:00
zjpyb
7ce55c006e fix: Gemini原生接口没获取到modelName #295 2025-08-28 08:43:48 +08:00
Wesley Liddick
9e8e74ce6b Merge pull request #292 from iRubbish/dev
feat: 新增AD域控用户认证系统
2025-08-28 08:43:21 +08:00
github-actions[bot]
71b3374761 chore: sync VERSION file with release v1.1.121 [skip ci] 2025-08-28 00:41:58 +00:00
Wesley Liddick
1726e6d3f3 Merge pull request #296 from zjpyb/main
fix: Gemini原生接口没获取到modelName #295
2025-08-28 08:41:48 +08:00
zjpyb
79c7d1d116 fix: 修复Gemini v1beta非流式响应数据结构问题
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-28 03:04:52 +08:00
zjpyb
fb57cfd293 fix: 修复Gemini v1beta流式响应中断问题
- 优化SSE流式响应处理逻辑,修复客户端接收第一条消息后断开连接的问题
- 统一流处理缓冲区,正确处理不完整的SSE行
- v1beta版本返回response字段内容,v1internal保持原始转发
- 移除调试日志输出,提升生产环境稳定性

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-28 02:38:01 +08:00
zjpyb
a7009e6864 fix: Gemini原生接口没获取到modelName #295 2025-08-28 00:03:34 +08:00
Hg
fcc8387c24 feat: 增加Bark作为webhook渠道 2025-08-26 17:40:02 +08:00
iRubbish
8a5d4b5d8f feat: 完善AD域控用户系统,增加配置说明
- 完善用户API Key创建流程,移除名称编辑权限
- 清理硬编码敏感信息,改用环境变量配置
- 在README.md和.env.example中添加AD域控配置说明
- 修复ESLint no-shadow错误
- 删除测试文件test-fixed-auto-link.js

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-26 15:55:13 +08:00
iRubbish
82f545c3b0 保存当前API Key管理功能的修改
- 统一用户创建和admin创建API Key的逻辑
- 修复admin更新用户创建的API Key功能
- 用户创建API Key名称改为displayName
- 默认无限制配置

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-26 13:42:02 +08:00
Wesley Liddick
222f4e44fe Merge pull request #288 from sczheng189/feat/multi-group-scheduling
feat: 实现账户多分组调度功能
2025-08-26 08:58:33 +08:00
sczheng189
e69ab2161d feat: 实现账户多分组调度功能
- 添加账户分组管理功能,支持创建、编辑、删除分组
- 实现基于分组的账户调度逻辑
- 添加分组权重和优先级支持
- 提供测试脚本验证多分组调度功能
- 修复代码格式化问题(统一使用LF换行符)

🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-25 20:11:18 +08:00
Wesley Liddick
6bcd7ed1fc Merge pull request #286 from sczheng189/feat/5xx-error-circuit-breaker
feat: 扩展熔断机制支持所有5xx错误码
2025-08-25 19:43:08 +08:00
Wesley Liddick
e12c984d22 Merge pull request #287 from sczheng189/fix-schedulable-check
fix: 修复重置账号状态后仍被认为不可用的bug
2025-08-25 19:42:58 +08:00
sczheng189
5366dc70e1 fix: 修复重置账号状态后仍被认为不可用的bug
问题描述:
- 重置账号状态时虽然正确设置了 schedulable: 'true'
- 但在账号选择逻辑中缺少对 schedulable !== 'false' 的检查
- 导致重置后的账号仍被认为不可用

修复内容:
- selectAvailableAccount: 在 activeAccounts 过滤中添加 schedulable 检查
- selectAccountForApiKey: 在绑定账户和 sharedAccounts 过滤中添加 schedulable 检查
- 确保重置状态后的账号能正确被识别为可用

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-25 19:18:51 +08:00
sczheng189
f4f88091c1 feat: 扩展熔断机制支持所有5xx错误码
- 扩展错误检测从单一500错误到所有5xx错误码(500-599)
- 新增temp_error状态,连续3次5xx错误触发临时熔断
- 支持流式和非流式请求的统一5xx错误处理
- 添加定时清理机制,60分钟后自动恢复temp_error状态
- 完善错误计数和清理逻辑,提高系统可靠性

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-25 19:14:14 +08:00
iRubbish
f31f7c9385 feat: 实现历史API Key自动关联功能
核心功能:
- AD用户登录时自动关联已存在的历史API Key
- 关联规则: API Key name字段与用户displayName完全匹配
- 自动设置owner字段完成关联,避免用户重新创建Key

实现逻辑:
1. 优先匹配owner字段(已关联的Key)
2. 如无owner匹配,尝试匹配name与displayName
3. 找到匹配历史Key后,自动设置owner完成关联

技术特性:
- 详细日志记录关联过程
- 支持JWT token中完整用户信息传递
- Redis数据自动更新owner字段
- 系统迁移兼容性处理

测试验证:
- 创建测试历史Key验证自动关联
- JWT token正确解析displayName字段
- Redis数据正确更新owner关联关系

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-25 18:19:33 +08:00
iRubbish
7624c383e8 feat: 完整实现AD域控用户认证系统
主要功能:
- 新增LDAP服务连接AD域控服务器
- 实现多格式AD用户认证(sAMAccountName, UPN, 域\用户名, DN)
- 支持中文显示名和拼音用户名搜索
- 添加用户账户状态检查(禁用账户检测)
- 实现JWT token认证和用户会话管理

新增文件:
- src/services/ldapService.js - LDAP核心服务
- src/routes/ldapRoutes.js - AD认证API路由
- src/services/userMappingService.js - 用户映射服务
- web/admin-spa/src/views/UserDashboardView.vue - 用户控制台
- web/admin-spa/src/components/user/ - 用户组件目录

修改功能:
- ApiStatsView.vue 增加用户登录按钮和模态框
- 路由系统增加用户专用页面
- 安装ldapjs和jsonwebtoken依赖

技术特性:
- 多种认证格式自动尝试
- LDAP referral错误处理
- 详细认证日志和错误码记录
- 前后端完整用户认证流程

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-25 18:03:55 +08:00
github-actions[bot]
81ad8a787f chore: sync VERSION file with release v1.1.120 [skip ci] 2025-08-24 09:48:45 +00:00
shaw
5c5548e839 fix: 修复openai Team订阅无法转发codex的问题 2025-08-24 17:48:09 +08:00
github-actions[bot]
4d7cbe3102 chore: sync VERSION file with release v1.1.119 [skip ci] 2025-08-24 08:51:00 +00:00
shaw
e56a49d7ed fix: 修复codex 添加账号缺少oauth步骤 2025-08-24 16:47:45 +08:00
github-actions[bot]
9d8d83f32b chore: sync VERSION file with release v1.1.118 [skip ci] 2025-08-23 12:29:04 +00:00
shaw
b426a759a8 feat: 支持后台配置webhook 2025-08-23 20:20:32 +08:00
shaw
74bcb99142 feat: 新增支持Azure OpenAI账户 2025-08-23 10:30:29 +08:00
shaw
e4e72ba5e9 fix: 修复仪表盘Keys统计展示问题 2025-08-23 08:55:52 +08:00
github-actions[bot]
86aff0a273 chore: sync VERSION file with release v1.1.117 [skip ci] 2025-08-22 15:56:08 +00:00
shaw
796f38c8b2 feat: 配置文件增加时区配置 2025-08-22 23:54:41 +08:00
shaw
85c1e84b42 fix: 修复批量编辑组件的 Prettier 格式化问题
- 格式化所有不符合 Prettier 规范的代码
- 修复长标签元素的换行问题
- 确保前端构建成功通过
2025-08-22 22:29:58 +08:00
shaw
47a1b37243 feat: 为批量编辑API Keys组件添加暗黑模式支持
- 为所有文本、背景、边框添加暗黑模式样式
- 更新表单控件(输入框、选择框、按钮)的暗黑模式样式
- 确保与项目其他组件的暗黑模式风格保持一致
2025-08-22 22:24:33 +08:00
shaw
15c8478a96 Merge branch 'pr-272' into dev 2025-08-22 22:19:00 +08:00
shaw
d2f0ac37a9 feat: 支持Dark Mode 2025-08-22 22:09:38 +08:00
lucky
eab7ea954b Delete .spec-workflow directory 2025-08-22 16:46:38 +08:00
iRubbish
4c1759aa25 忽略.spec-workflow目录 2025-08-22 16:39:07 +08:00
iRubbish
f0ccc5e18c 忽略.spec-workflow 2025-08-22 16:32:39 +08:00