Commit Graph

234 Commits

Author SHA1 Message Date
jft0m
5d7225b2eb feat: 添加 Opus 限流状态显示
- 在账户列表中显示 Opus 限流状态徽章
- 显示限流剩余时间(天/小时)
- 后端 API 添加 opusRateLimitedAt 和 opusRateLimitEndAt 字段
- 优化徽章样式,防止文字溢出
2025-10-06 15:49:28 +00:00
wfunc
a3666e3a3e feat: add rate limit recovery webhook notifications
添加限流恢复的 webhook 通知功能,当账户从限流状态自动恢复时发送通知。

主要改进:

1. **新增通知类型** (webhookConfigService.js)
   - 添加 `rateLimitRecovery` 通知类型
   - 在配置获取和保存时自动合并默认通知类型
   - 确保新增的通知类型有默认值

2. **增强限流清理服务** (rateLimitCleanupService.js)
   - 改进自动停止账户的检测逻辑
   - 在 `finally` 块中确保 `clearedAccounts` 列表被重置,避免重复通知
   - 对自动停止的账户显式调用 `removeAccountRateLimit`
   - 为 Claude 和 Claude Console 账户添加 `autoStopped` 和 `needsAutoStopRecovery` 检测

3. **改进 Claude Console 限流移除** (claudeConsoleAccountService.js)
   - 检测并恢复因自动停止而禁用调度的账户
   - 清理过期的 `rateLimitAutoStopped` 标志
   - 增加详细的日志记录

4. **前端 UI 支持** (SettingsView.vue)
   - 在 Webhook 设置中添加"限流恢复"通知类型选项
   - 更新默认通知类型配置

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-02 23:54:30 +08:00
shaw
fe894cc07a docs: issue-501 2025-10-02 19:25:59 +08:00
iaineng
e88f07ca92 feat(ui): add OAuth usage display alongside Setup Token
Add OAuth usage visualization for Claude OAuth accounts while maintaining
existing Setup Token session window display. Accounts show different UI
based on authorization type detected via scopes.

Changes:
- Add loadClaudeUsage() for async OAuth usage data loading
- Add isClaudeOAuth() to detect auth type (checks user:profile + user:inference scopes)
- Add OAuth helpers: formatClaudeUsagePercent, getClaudeUsageWidth,
  getClaudeUsageBarClass, formatClaudeRemaining
- Display three OAuth windows (5h, 7d, 7d-Opus) for OAuth accounts
- Maintain original session window display for Setup Token accounts
- Color-coded progress bars (blue < 60%, yellow 60-90%, red >= 90%)
- Update tooltip with OAuth documentation
- Remove duplicate Claude fallback branch
- Apply to desktop and mobile views
2025-09-30 22:52:08 +08:00
shaw
fcf54565ec chore: 其他文件修改
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-30 11:25:43 +08:00
shaw
c62b397fde docs: 更新vscode使用参数配置 [skip ci] 2025-09-30 09:31:02 +08:00
shaw
aca2b1cccb feat: 账号列表支持批量删除 2025-09-28 21:43:57 +08:00
shaw
323f3ab6c4 style: api-stats布局优化 2025-09-28 15:43:37 +08:00
shaw
5e015e87e0 style: 优化api-stats布局 2025-09-28 14:54:24 +08:00
shaw
a12e076413 fix: 修复账号筛选平台是oai显示异常 2025-09-28 11:47:05 +08:00
shaw
3077c3d789 docs: codex配置说明优化 2025-09-28 10:53:57 +08:00
shaw
e197fbdf80 Merge branch 'pr-485' into dev 2025-09-28 09:45:03 +08:00
shaw
e675c5878e style: 仪表板组件样式优化 2025-09-27 23:07:39 +08:00
shaw
ea28222c71 feat: 支持账号维度的数据统计 2025-09-27 22:55:06 +08:00
shaw
5e730db7f9 fix: Google icon问题修复 2025-09-27 20:02:55 +08:00
shaw
0b46eff4ed style: 优化apikeys进度条显示 2025-09-27 19:40:55 +08:00
shaw
774343d9e2 feta: apikeys页面支持专属绑定账号筛选 2025-09-27 18:08:40 +08:00
shaw
89829d7e57 feat: 账户管理增加分页和搜索 2025-09-27 17:26:49 +08:00
yaogdu
d1bbc71796 feat: 🎸 export csv from web and support hourly TTL of key 2025-09-27 14:11:54 +08:00
shaw
c142cbf9ea style: oai会话窗口样式优化 2025-09-26 17:16:22 +08:00
shaw
fe3d94648d fix: 优化codex使用量样式 2025-09-25 17:50:29 +08:00
shaw
4ceaa80cbe feat: 适配codex用量数据-前端格式问题 2025-09-25 17:28:45 +08:00
shaw
c15ef0b6ae feat: 适配codex用量数据 2025-09-25 17:23:52 +08:00
Feeei
01dfb49d5b feat(admin-spa): 优化分页组件逻辑与可读性
将分页组件中的硬编码条件替换为更具可读性的计算属性,
包括 shouldShowFirstPage、shouldShowLastPage、
showLeadingEllipsis 和 showTrailingEllipsis,
以更清晰地控制分页按钮和省略号的显示逻辑。
2025-09-24 18:59:56 +08:00
shaw
0ba048aced feat: 优化专属账号删除逻辑 2025-09-23 15:48:38 +08:00
shaw
f9c397cc1f feat: api-stats页面增加周限总限查询 2025-09-21 14:22:34 +08:00
shaw
588b181eb9 fix: 修复服务账户数量少了response账户 2025-09-20 22:03:43 +08:00
shaw
f70c3babc9 fix: 修复编辑oai账号是代理IP被错误保存的问题 2025-09-18 10:22:41 +08:00
wfunc
f2dc834bba feat: 新增 telegram 通知 2025-09-16 11:44:39 +08:00
shaw
ae4bbe8253 docs: 更新codex默认模型示例 2025-09-16 10:40:58 +08:00
shaw
158a9b9a31 feat: 优化API Key批量创建和账户限流状态显示
- 添加 bedrockAccountId 和 rateLimitCost 字段到批量创建 API Key 功能
- 格式化 claudeAccountService 中的日志输出
- 改进账户视图中会话进度条样式,限流状态显示红色

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-14 11:59:09 +08:00
shaw
9c4dc714f8 Revert "Merge pull request #424 from Wangnov/feat/i18n"
This reverts commit 1d915d8327, reversing
changes made to 009f7c84f6.
2025-09-12 09:21:53 +08:00
Wangnov
99d72516ae feat: 完成 AccountForm.vue 组件的国际化文本替换
- 将多个文本替换为 i18n 语言包中的键,以提升多语言支持和一致性。
- 更新了模型支持描述、用户代理描述、凭证文件描述等文本内容。
- 通过引入 i18n 键,增强了用户界面的可读性和可维护性。
2025-09-12 00:04:11 +08:00
Wangnov
5ea3623736 feat: 更新 DashboardView.vue 中的系统状态文本为 i18n 语言包中的键
- 将系统状态文本替换为动态获取的 i18n 键,以提升多语言支持和一致性。
2025-09-12 00:04:11 +08:00
Wangnov
e36bacfd6b feat: 完成多个组件的国际化支持与文本替换
- 更新 AccountForm.vue 中的占位符文本为 i18n 语言包中的键
- 修改 ConfirmModal.vue 中的确认和取消按钮文本为 i18n 语言包中的键
- 更新 CustomDropdown.vue 中的占位符文本为 i18n 语言包中的键
- 修改 app.js 中的应用标题为英文版本
- 更新 router/index.js 中的日志输出为英文
- 在 accounts.js 和 apiKeys.js 中的错误处理信息中引入 i18n 键以提升多语言一致性
- 更新 dashboard.js 中的系统状态和错误日志为 i18n 键
- 在 DashboardView.vue 中的多个文本替换为 i18n 语言包中的键
2025-09-12 00:04:11 +08:00
Wangnov
97b94eeff9 feat: 完成web/admin-spa/src/components/apikeys的国际化并修复语法错误和警告 2025-09-12 00:03:05 +08:00
Wangnov
27034997a6 feat: 完成用户相关组件的完整国际化支持
* 扩展语言文件新增用户功能翻译键
  - 新增 user.dashboard、user.login、user.management 翻译组
  - 涵盖三语言支持(zh-cn/zh-tw/en)
  - 包含120+翻译键covering用户仪表板、登录、管理功能

* UserDashboardView.vue 完整国际化
  - 集成useI18n composable
  - 国际化导航标签、统计卡片、账户信息
  - 响应式翻译Toast消息和错误处理

* UserLoginView.vue 完整国际化
  - 国际化登录表单标签、占位符、按钮文本
  - 响应式验证消息和状态提示
  - 支持动态语言切换

* UserManagementView.vue 完整国际化
  - 国际化用户列表、搜索过滤器、操作按钮
  - 响应式确认对话框和Toast通知
  - 支持参数化翻译消息(用户名、数量等)

Technical implementation:
- 遵循Vue 3 Composition API最佳实践
- 保持响应式设计和暗黑模式兼容性
- 统一错误处理和用户体验
2025-09-12 00:03:02 +08:00
Wangnov
24ad052d02 feat: 完成SettingsView页面完整国际化支持
- 扩展三个语言文件,添加198个settings翻译键,支持中英繁三语言
- 完成SettingsView.vue所有1604行的系统化国际化处理:
  * 完整国际化HTML模板:页面标题、导航标签、品牌设置、Webhook设置等
  * 完整国际化JavaScript功能:Toast消息、确认对话框、表单验证、错误处理
  * 集成Vue i18n:添加useI18n composable,实现响应式翻译支持
  * 转换静态函数为响应式翻译,支持语言切换时实时更新

- 主要功能模块全面国际化:
  * 品牌设置:网站名称、图标管理、管理入口配置完全国际化
  * Webhook通知:7种平台类型、通知类型、高级设置完全国际化
  * 模态框:复杂的平台添加/编辑表单完全国际化
  * 响应式布局:桌面端表格和移动端卡片视图完全适配
  * 错误处理:37个Toast消息、确认对话框、表单验证完全国际化

现在SettingsView完全支持多语言切换,与其他页面保持一致的国际化标准
2025-09-12 00:03:02 +08:00
Wangnov
19ca374527 feat: 完成ApiKeysView页面完整国际化支持
- 扩展三个语言文件,添加167个apiKeys翻译键,支持中英繁三语言
- 完成ApiKeysView.vue所有2869行的系统化国际化处理:
  * 完整国际化HTML模板:页面标题、Tab导航、表格标题、筛选器、状态指示等
  * 完整国际化JavaScript功能:Toast消息、确认对话框、错误处理、时间格式化
  * 集成Vue i18n:添加useI18n composable,实现响应式翻译支持
  * 转换静态选项为计算属性,支持语言切换时实时更新

- 主要功能模块全面国际化:
  * 主界面:标题描述、Tab导航、工具栏按钮完全国际化
  * 数据表格:表头、状态标签、统计信息、操作按钮全面适配
  * 移动端视图:卡片布局、统计展示、操作按钮完全国际化
  * 已删除管理:已删除API Keys的表格和操作完全国际化
  * 确认对话框:所有删除、恢复、清空操作的确认信息国际化
  * 错误处理:统一的错误消息和成功提示国际化

现在ApiKeysView完全支持多语言切换,与AccountsView保持一致的国际化标准
2025-09-12 00:03:02 +08:00
Wangnov
27c0804219 feat: 完成AccountsView页面完整国际化
- 添加useI18n导入并替换100+硬编码中文文本
- 扩展三种语言文件的accounts翻译键(150+条)
- 更新下拉选项为响应式计算属性支持动态翻译
- 国际化页面标题、表格列头、筛选器和操作按钮
- 处理状态文本、错误消息和工具提示
- 更新JavaScript函数返回值使用翻译键
- 完整支持桌面端和移动端视图的国际化
- 修正货币符号和时间格式化的参数化翻译

涵盖组件:
- 账户管理主界面(标题、描述、筛选器)
- 桌面端表格视图(列头、状态、操作按钮)
- 移动端卡片视图(标签、按钮、状态)
- 错误处理和确认对话框
- 时间和数值格式化函数
2025-09-12 00:03:02 +08:00
Wangnov
cd7959f3bf feat: 实现DashboardView.vue完整国际化支持
- 完成DashboardView.vue全面国际化
  * 主要统计卡片:总API Keys、服务账户、今日请求、系统状态全部多语言化
  * Token统计模块:今日Token、总消耗量、实时RPM/TPM指标完整国际化
  * 实时性能监控:请求数/Token数每分钟指标、历史数据标识多语言化
  * 图表组件完整国际化:饼图、趋势图、API Keys使用趋势图
  * 交互控件全面支持:日期选择器、粒度切换、自动刷新等

- 图表系统深度国际化
  * Chart.js图表标签完全多语言化:Token使用趋势、模型分布等
  * 工具提示和坐标轴标签支持动态语言切换
  * 表格头部和数据展示完整国际化支持

- 扩展三语言dashboard翻译组
  * zh-cn.js: 简体中文专业术语翻译
  * zh-tw.js: 繁体中文技术翻译(快取、即時等台湾用词)
  * en.js: 英文专业技术术语标准翻译
  * 总计90+个翻译键值,涵盖所有用户可见文本

- 平台账户工具提示国际化
  * Claude/Console/Gemini/Bedrock/OpenAI/Azure OpenAI账户状态
  * 支持参数化翻译,动态显示账户数量和状态

- 提升复杂业务场景多语言体验
  * 管理后台核心数据可视化页面完全国际化
  * 60+个硬编码中文字符串全部替换
  * 确保不同语言环境下数据展示的专业性
2025-09-12 00:03:02 +08:00
Wangnov
e88e97b485 feat: 实现AppHeader和LoginView完整国际化支持
- 完成AppHeader.vue全面国际化
  * 版本检查和更新通知系统多语言支持
  * 用户菜单和账户信息修改模态框国际化
  * 退出登录确认流程多语言化
  * 总计替换30+个硬编码中文字符串

- 实现LoginView.vue完整国际化
  * 登录表单所有文本支持多语言
  * 添加语言切换组件到登录页面
  * 确保用户可在登录前选择语言

- 扩展三语言翻译文件
  * zh-cn.js: 简体中文标准翻译
  * zh-tw.js: 繁体中文专业化翻译
  * en.js: 英文技术术语标准翻译
  * 新增header和login完整翻译组

- 提升用户体验
  * 登录页面右上角工具栏(语言+主题切换)
  * 响应式布局适配多设备
  * 完整的首次访问多语言体验
2025-09-12 00:03:02 +08:00
Wangnov
c7e1a3429d feat: 完善教程系统国际化架构并完成英文教程翻译
- 创建分离式多语言教程组件架构
  - TutorialView-zh-cn.vue (简体中文教程)
  - TutorialView-zh-tw.vue (繁体中文教程,统一台湾语言习惯)
  - TutorialView-en.vue (英文教程,全面翻译用户界面和技术文档)

- 重构教程路由系统
  - 新的TutorialView.vue作为国际化代理组件
  - 根据用户语言设置动态选择合适的教程组件
  - 保持/tutorial路径可访问性,提升用户体验

- 完成英文教程完整翻译
  - Windows/macOS/Linux安装教程全英文化
  - 环境变量配置说明英文化
  - 故障排除章节英文化
  - JavaScript注释和用户界面文本英文化

- 优化国际化架构
  - ApiStatsView使用新的分离式教程组件
  - 统一的语言选择逻辑和组件复用
  - 更清晰的代码组织和维护性
2025-09-12 00:03:02 +08:00
Wangnov
1eadc94592 feat: 实现ApiStatsView页面完整国际化
- 集成vue-i18n到ApiStatsView,支持动态语言切换
- 国际化所有用户界面文本:页面标题、按钮、Tab标签、时间选择器
- 实现LogoTitle动态subtitle,根据当前tab显示对应语言的标题
- 添加语言切换组件到页面header,与主题切换并列显示
- 实现教程内容的整体替换机制,支持基于语言的动态组件选择
- 确保用户登录、管理后台、统计查询等核心功能完全本地化
2025-09-12 00:03:02 +08:00
shaw
02989a7588 fix: 修复CCR账户表单验证和平台分组逻辑
- 修复CCR账户创建时的表单字段验证
- 统一CCR与Claude Console的处理逻辑
- 修复账户删除前的API Key绑定检查
- 修复Claude Console账户绑定的API Key计数
- 优化平台分组判断逻辑

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-11 11:54:27 +08:00
shaw
7712d5516c merge: 合并远程 dev 分支,整合 CCR 和 OpenAI-Responses 功能
## 合并内容
- 成功合并远程 dev 分支的 CCR (Claude Connector) 功能
- 保留本地的 OpenAI-Responses 账户管理功能
- 解决所有合并冲突,保留双方功能

## UI 调整
- 将 CCR 平台归类到 Claude 分组中
- 保留新的平台分组选择器设计
- 支持所有平台类型:Claude、CCR、OpenAI、OpenAI-Responses、Gemini、Azure OpenAI、Bedrock

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-10 15:49:52 +08:00
shaw
08946c67ea feat: 新增 OpenAI-Responses 账户管理功能和独立自动停止标记机制
## 功能新增
- 实现 OpenAI-Responses 账户服务(openaiResponsesAccountService.js)
  - 支持使用账户内置 API Key 进行请求转发
  - 实现每日额度管理和重置机制
  - 支持代理配置和优先级设置
- 实现 OpenAI-Responses 中继服务(openaiResponsesRelayService.js)
  - 处理请求转发和响应流处理
  - 自动记录使用统计信息
  - 支持流式和非流式响应
- 新增管理界面的 OpenAI-Responses 账户管理功能
  - 完整的 CRUD 操作支持
  - 实时额度监控和状态管理
  - 支持手动重置限流和每日额度

## 架构改进
- 引入独立的自动停止标记机制,区分不同原因的自动停止
  - rateLimitAutoStopped: 限流自动停止
  - fiveHourAutoStopped: 5小时限制自动停止
  - tempErrorAutoStopped: 临时错误自动停止
  - quotaAutoStopped: 额度耗尽自动停止
- 修复手动修改调度状态时自动恢复的问题
- 统一清理逻辑,防止状态冲突

## 其他优化
- getAccountUsageStats 支持不同账户类型参数
- 统一调度器支持 OpenAI-Responses 账户类型
- WebHook 通知增强,支持新账户类型的事件

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-10 15:41:52 +08:00
sususu98
5938180583 Merge branch 'Wei-Shaw:dev' into dev 2025-09-10 14:40:46 +08:00
Wesley Liddick
3c5068866c Revert "合并所有新功能到Wei-Shaw仓库(排除ApiStatsView.vue)" 2025-09-10 14:37:52 +08:00
sususu98
c0059c68eb Merge branch 'Wei-Shaw:dev' into dev 2025-09-10 14:22:45 +08:00