Edric Li
|
9cbf3195e0
|
feat: 优化粘性会话TTL管理策略
- 将默认TTL从1小时延长至15天,更适合长期项目开发
- 实现智能续期机制:剩余时间<14天时自动续期到15天
- 添加配置化支持:通过环境变量STICKY_SESSION_TTL_DAYS和STICKY_SESSION_RENEWAL_THRESHOLD_DAYS调整TTL策略
- 集成到所有调度器:Claude、OpenAI、Gemini的普通会话和分组会话
- 提升用户体验:活跃项目会话持续有效,停用项目自动清理
- 性能优化:智能判断减少不必要的Redis EXPIRE操作
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-09-08 16:06:12 +08:00 |
|
Edric Li
|
9fa7602947
|
feat: 优化错误处理机制和代码重构
- 将5xx错误阈值从10次降低到3次,符合行业标准(AWS ELB: 2次, K8s: 3次)
- 新增网络超时(ETIMEDOUT)错误处理,触发账户降级机制
- 重构错误处理逻辑,提取统一方法_handleServerError,消除75%重复代码
- 支持不同上下文的错误日志(Network, Request, Stream等)
- 修复流式请求中的参数作用域问题,确保错误处理一致性
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-09-08 16:06:12 +08:00 |
|
github-actions[bot]
|
9d05c03a3a
|
chore: sync VERSION file with release v1.1.131 [skip ci]
|
2025-09-07 14:18:58 +00:00 |
|
Edric Li
|
0fc5309ff9
|
feat: 优化API Keys页面布局和导出功能
- 重新组织工具栏布局:左侧为查询筛选器,右侧为操作按钮
- Excel导出功能增加API Keys的标签信息
- 设置标签列宽度和样式,无标签时显示"无"并用斜体
- 布局优化:查询功能和操作功能分离,提升用户体验
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-09-07 22:18:34 +08:00 |
|
Edric Li
|
92ec3ffc72
|
feat: API Keys页面恢复今日时间选项并设为默认
- 添加"今日"时间筛选选项,使用fa-calendar-day图标
- 将默认时间范围从"最近7天"改为"今日"
- 优化日期处理逻辑,确保今日选项从0点开始
- 调整UsageDetailModal宽度以适应内容显示
- 同步更新所有相关的初始化和重置逻辑
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-09-07 22:18:34 +08:00 |
|
Edric Li
|
8c9d6381f3
|
feat: API Keys图标系统和UI优化
主要功能增强:
- 实现API Key自定义图标功能,支持图片上传、裁剪和智能压缩
- 新增IconPicker组件,提供内置图标选择和图片上传功能
- 支持固定尺寸裁剪区域,可拖拽定位选择头像区域
- 智能图片压缩:PNG保留透明度,JPEG用于不透明图片
UI/UX改进:
- 优化表格布局:移除账号列,在名称下方显示账号绑定信息
- 调整行高和字体大小,提升信息密度
- 最后使用时间改为相对时间显示,悬浮显示具体时间
- 过期时间编辑改为点击文本触发,带悬浮下划线效果
- 更新默认API Key图标为蓝色渐变设计
- 修复表格悬浮偏移和横向滚动条问题
- 将"TOKEN 数量"改为"Token数"
后端支持:
- apiKeyService增加icon字段持久化
- admin路由增加图标数据处理和验证
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-09-07 22:18:34 +08:00 |
|
Edric Li
|
fc5c60a9b4
|
feat: 增强API Keys Excel导出功能和样式美化
- 添加输入/输出Token列到Excel导出
- 使用xlsx-js-style库实现专业的Excel样式
- 彩色表头(蓝色/绿色区分)
- 交替行背景色
- 正确的列对齐(日期右对齐,名称左对齐)
- 费用列特殊样式(蓝色加粗)
- 简化导出内容,仅包含用量数据
- Token数量使用K/M单位格式化
- 模型统计也包含输入/输出Token
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-09-07 22:18:34 +08:00 |
|
Edric Li
|
8f43b9367b
|
feat: 优化Excel导出功能,专注用量数据统计
- 简化导出内容,仅包含用量相关数据
- 保留API Key名称和所有者信息
- 导出详细的分模型用量统计:
* 今日各模型请求数、费用、输入/输出/总Token
* 累计各模型请求数、费用、输入/输出/总Token
* 根据时间筛选条件导出对应周期的模型统计
- 文件名包含时间筛选条件,便于识别数据范围
- 动态设置列宽,优化Excel显示效果
- 移除冗余的配置信息,专注核心用量数据
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-09-07 22:18:34 +08:00 |
|
Edric Li
|
8dd58900d6
|
feat: 优化API Keys表格显示和交互体验
- 添加可切换的复选框列,默认隐藏减少视觉干扰
- 复选框列隐藏时不占用宽度,优化表格布局
- 移除名称列的钥匙图标,使界面更简洁
- 数字列(请求数、费用、Token数量)右对齐,符合阅读习惯
- 新增Token数量列,支持K/M单位格式化显示
- 将使用统计拆分为独立的请求数和费用列
- 降低表格行高,提高信息密度
- 调整列顺序,将账号列移至名称列后
- 修复表格悬浮时出现额外横向滚动条的问题
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-09-07 22:18:34 +08:00 |
|
Edric Li
|
4e67e597b0
|
feat: API Keys页面添加全部时间选项和UI改进
- 添加"全部时间"选项到时间范围下拉菜单,可查看所有历史使用数据
- 统一费用显示列,根据选择的时间范围动态显示对应标签
- 支持自定义日期范围查询(最多31天)
- 优化日期选择器高度与其他控件对齐(38px)
- 使用更通用的标签名称(累计费用、总费用等)
- 移除调试console.log语句
后端改进:
- 添加自定义日期范围查询支持
- 日期范围验证和31天限制
- 支持all时间范围查询
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-09-07 22:18:34 +08:00 |
|
github-actions[bot]
|
cd2ccef5a1
|
chore: sync VERSION file with release v1.1.130 [skip ci]
|
2025-09-06 11:10:46 +00:00 |
|
Edric Li
|
3e6edae198
|
Merge remote-tracking branch 'upstream/main'
|
2025-09-06 19:09:59 +08:00 |
|
github-actions[bot]
|
8b51c2ef64
|
chore: sync VERSION file with release v1.1.129 [skip ci]
|
2025-09-06 10:10:01 +00:00 |
|
shaw
|
d2f3f6866c
|
feat: Codex账号管理优化与API Key激活机制
✨ 新功能
- 支持通过refreshToken新增Codex账号,创建时立即验证token有效性
- API Key新增首次使用自动激活机制,支持activation模式设置有效期
- 前端账号表单增加token验证功能,确保账号创建成功
🐛 修复
- 修复Codex token刷新失败问题,增加分布式锁防止并发刷新
- 优化token刷新错误处理,提供更详细的错误信息和建议
- 修复OpenAI账号token过期检测和自动刷新逻辑
📝 文档更新
- 更新README中Codex使用说明,改为config.toml配置方式
- 优化Cherry Studio等第三方工具接入文档
- 添加详细的配置示例和账号类型说明
🎨 界面优化
- 改进账号创建表单UI,支持手动和OAuth两种模式
- 优化API Key过期时间编辑弹窗,支持激活操作
- 调整教程页面布局,提升移动端响应式体验
💡 代码改进
- 重构token刷新服务,增强错误处理和重试机制
- 优化代理配置处理,确保OAuth请求正确使用代理
- 改进webhook通知,增加token刷新失败告警
|
2025-09-06 18:04:06 +08:00 |
|
Wesley Liddick
|
0e746b1056
|
Merge pull request #359 from YNZH/dev
日志时间格式适配时区 ,README版本升级脚本 npm run service:restart:daemon 不生效fix
|
2025-09-06 17:46:33 +08:00 |
|
github-actions[bot]
|
723f13eb2b
|
chore: sync VERSION file with release v1.1.129 [skip ci]
|
2025-09-06 08:10:25 +00:00 |
|
Edric Li
|
d7c80b69e8
|
feat: 移除API Key账号绑定的专属类型限制
- 允许所有账号类型被API Key绑定,不再限制必须是dedicated类型
- 移除AccountSelector组件中的accountType === 'dedicated'过滤条件
- 保持原有专属账号的显示文本不变,确保界面一致性
- 维持原有调度策略:绑定账号后只使用该账号,不回退到共享池
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-09-06 15:55:13 +08:00 |
|
maplegao
|
a71f0e58a2
|
修复README.md中 版本更新不work问题, 重启脚本中没有stop
|
2025-09-06 14:27:18 +08:00 |
|
maplegao
|
56c48a4304
|
日志格式适配市区
|
2025-09-06 14:22:33 +08:00 |
|
Wesley Liddick
|
2f6e5ab289
|
Merge pull request #357 from YNZH/dev
webHook通知时间适配时区
|
2025-09-06 08:28:50 +08:00 |
|
maplegao
|
96e505d662
|
eslint fix
|
2025-09-05 21:42:49 +08:00 |
|
maplegao
|
d4989f5401
|
format
|
2025-09-05 20:51:07 +08:00 |
|
Wesley Liddick
|
ed10fb06b2
|
Merge pull request #353 from sususu98/dev
feat(Claude Console): 添加Claude Console账号每日配额
|
2025-09-05 20:39:12 +08:00 |
|
maplegao
|
503f20b06b
|
webhook时间可以指定时区
|
2025-09-05 17:54:06 +08:00 |
|
sususu
|
19cf38d92d
|
fix(unifiedClaudeScheduler): Add error logging for quota check failures.
|
2025-09-05 17:01:40 +08:00 |
|
sususu
|
c16cfe60ab
|
Merge branch 'dev' of https://github.com/sususu98/claude-relay-service into dev
|
2025-09-05 16:41:25 +08:00 |
|
sususu
|
4cc937a144
|
feat(Claude Console): 添加Claude Console账号每日配额
1. 额度检查优先级更高:即使不启用限流机制,超额仍会禁用账户
2. 状态会被覆盖:quota_exceeded 会覆盖 rate_limited
3. 两种恢复时间:
- 限流恢复:分钟级(如60分钟)
- 额度恢复:天级(第二天重置)
4. 独立控制:
- rateLimitDuration = 0:只管理额度,忽略429
- rateLimitDuration > 0:同时管理限流和额度
|
2025-09-05 14:58:59 +08:00 |
|
Wesley Liddick
|
7d20810179
|
Merge pull request #347 from iaineng/dev
fix: 修复会话粘性机制下Pro账户被错误调度用于Opus请求的问题
|
2025-09-05 13:54:17 +08:00 |
|
Wesley Liddick
|
4e8e630904
|
Merge pull request #349 from iaineng/fix/use-unified-user-agent-missing
fix: 添加创建Claude账户时缺失的useUnifiedUserAgent字段处理
|
2025-09-05 13:54:06 +08:00 |
|
iaineng
|
8c158d82fa
|
fix: 添加创建Claude账户时缺失的useUnifiedUserAgent字段处理
- 在 /admin/claude-accounts POST 路由中添加 useUnifiedUserAgent 参数解构
- 将 useUnifiedUserAgent 参数传递给 claudeAccountService.createAccount() 方法
- 保持与前端 AccountForm.vue 和服务层 claudeAccountService.js 的一致性
|
2025-09-05 12:18:33 +08:00 |
|
iaineng
|
d8e833ef1a
|
fix: 修复会话粘性机制下Pro账户被错误调度用于Opus请求的问题
- 在 _isAccountAvailable 方法中添加了模型兼容性检查,避免Pro账户被用于Opus请求
- 创建 _isModelSupportedByAccount 统一方法来处理模型兼容性验证
- 支持Claude OAuth账户的订阅类型检查(Pro/Free/Max)
- 支持Claude Console账户的supportedModels配置检查
|
2025-09-04 23:26:18 +08:00 |
|
Wesley Liddick
|
bdd17a85e9
|
Merge pull request #342 from sususu98/dev
feat(admin-spa): 在API视图中添加每日费用和总费用的排序,并默认按照每日费用排序
|
2025-09-04 14:17:32 +08:00 |
|
Wesley Liddick
|
192fd19632
|
Merge pull request #341 from sczheng189/fix-schedulable-check
Fix:修复重置状态错误以及5xx熔断状态清除
|
2025-09-04 14:17:22 +08:00 |
|
sususu
|
9d94475d3f
|
feat(admin-spa): 在API视图中添加每日费用和总费用的排序,并默认按照每日费用排序
|
2025-09-04 14:15:21 +08:00 |
|
sczheng189
|
b2e7d686fe
|
Fix:前端显示临时异常状态
|
2025-09-04 14:08:55 +08:00 |
|
sczheng189
|
ae727d381c
|
fix:确保清楚了5xx错误导致的临时熔断状态,修复之前没有添加的5分钟定时器
|
2025-09-04 13:49:55 +08:00 |
|
sczheng189
|
4b0861eb7f
|
fix:修复了重置状态只删除js对象而没有删除redis的问题
|
2025-09-04 13:09:55 +08:00 |
|
github-actions[bot]
|
861af192bf
|
chore: sync VERSION file with release v1.1.128 [skip ci]
|
2025-09-04 03:06:11 +00:00 |
|
shaw
|
566f15768f
|
Merge branch 'dev'
|
2025-09-04 11:05:20 +08:00 |
|
shaw
|
0cc8714c3c
|
docs: 增加codex额外参数配置说明
|
2025-09-04 11:03:20 +08:00 |
|
Wesley Liddick
|
d6745dbe4a
|
Merge pull request #335 from iaineng/dev
feat: 添加Claude账户403错误处理和封禁状态支持
|
2025-09-04 10:46:44 +08:00 |
|
Wesley Liddick
|
75ac51bb57
|
Merge pull request #337 from sczheng189/dev
优化Claude Code User-Agent识别逻辑,更适配多段版本号比较的代码
|
2025-09-04 10:46:09 +08:00 |
|
Wesley Liddick
|
6e353893d1
|
Merge pull request #338 from sususu98/dev
Extract session ID directly from metadata.user_id->session
|
2025-09-04 10:45:57 +08:00 |
|
shaw
|
5a29502fcd
|
fix: 修复gemini转发
|
2025-09-04 10:45:07 +08:00 |
|
sususu
|
aa869521c0
|
refactor(sessionHelper): Extract session ID directly from metadata.user_id
|
2025-09-04 10:26:40 +08:00 |
|
sczheng189
|
8f08d7843f
|
fix: 优化Claude Code User-Agent识别逻辑
- 将字符串匹配改为正则表达式匹配,提高准确性
- 统一版本号提取正则,支持多段版本号格式
- 修复isRealClaudeCodeRequest中的User-Agent验证逻辑"
|
2025-09-04 09:19:39 +08:00 |
|
iaineng
|
1ff14e38cb
|
feat: 添加Claude账户403错误处理和封禁状态支持
- 新增Claude账户403错误自动检测和处理机制
- 区分Claude账户401未授权和403封禁两种错误状态
- 支持非流式和流式请求中的401/403错误处理
- 优化Claude账户错误处理代码,减少重复逻辑
- 支持前端显示不同的Claude账户错误状态和颜色
- 完善Claude账户异常Webhook通知错误码区分
|
2025-09-04 00:50:28 +08:00 |
|
sususu
|
86f92a774e
|
feat: 增强API Key 导入处理,支持明文与哈希值自动识别以实现脚本批量导入apiKey
|
2025-09-03 21:40:45 +08:00 |
|
Wesley Liddick
|
5ed07f4407
|
Merge pull request #330 from sususu98/main [skip ci]
feat: 增强API Key 导入处理,支持明文与哈希值自动识别以实现脚本批量导入apiKey
|
2025-09-03 21:39:41 +08:00 |
|
Wesley Liddick
|
ac9107aa5f
|
Merge pull request #334 from iaineng/dev
fix: 改进会话粘性机制,支持metadata.user_id并修复cache_control导致的会话切换问题
|
2025-09-03 21:36:03 +08:00 |
|