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
github-actions[bot]
7183903147
chore: sync VERSION file with release v1.1.161 [skip ci]
2025-10-02 13:19:47 +00:00
shaw
fe894cc07a
docs: issue-501
2025-10-02 19:25:59 +08:00
shaw
3f79e56209
Merge remote-tracking branch 'origin/dev' into dev
2025-10-02 18:37:26 +08:00
shaw
9148913ca4
feat: 增加Oauth Claude账户usage接口缓存
2025-10-02 18:35:41 +08:00
shaw
5024628fa6
Merge branch 'pr-503' into dev
2025-10-02 18:04:11 +08:00
shaw
7d1608edfe
Merge pull request #505 from Wei-Shaw/20251002_45_fix
2025-10-02 17:35:04 +08:00
Wesley Liddick
4eddfd99dd
Merge pull request #495 from geminiwen/dev
...
fix: 修复统一客户端标识的布尔值判断
2025-10-02 17:15:29 +08:00
duyaoguang
7fd5224e0a
fix: 🐛 fee calc fix
2025-10-02 13:09:19 +08:00
iaineng
782e912a0d
fix(oauth): auto-refresh expired tokens in fetchOAuthUsage
...
Replace direct token decryption with getValidAccessToken call to
enable automatic token expiration check and refresh. This fixes
authentication_error when fetching OAuth usage data with expired
access tokens.
2025-10-01 11:59:03 +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
iaineng
11c214449f
feat(api): add Claude OAuth usage endpoint with async loading
...
Add dedicated API endpoint to fetch Claude account OAuth usage data
asynchronously, improving user experience by eliminating the need for
multiple page refreshes to view session window statistics.
Backend changes:
- Add GET /admin/claude-accounts/usage endpoint for batch fetching
- Implement fetchOAuthUsage() to call Claude API /api/oauth/usage
- Add buildClaudeUsageSnapshot() to construct frontend data structure
- Add updateClaudeUsageSnapshot() to persist data to Redis
- Add _toNumberOrNull() helper for safe type conversion
- Update getAllAccounts() to return claudeUsage from Redis cache
Data structure:
- Store three window types: 5h, 7d, 7d-Opus
- Track utilization percentage and reset timestamps
- Calculate remaining seconds for each window
Performance optimizations:
- Concurrent batch requests using Promise.allSettled
- Graceful error handling per account
- Non-blocking async execution
2025-09-30 22:51:54 +08:00
Gemini Wen
87bd54d9ea
fix: 修复统一客户端标识的布尔值判断
...
将 useUnifiedClientId 的判断从直接布尔值比较改为字符串 'true' 比较,修复配置值为字符串时的判断问题。
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-09-30 13:01:54 +08:00
github-actions[bot]
3e348cb7c8
chore: sync VERSION file with release v1.1.160 [skip ci]
2025-09-30 03:30:19 +00: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
4ab91f233f
refactor: 使用 claudeCodeValidator 统一验证逻辑
...
替换 _hasClaudeCodeSystemPrompt 方法,改用 claudeCodeValidator
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-09-30 11:25:35 +08:00
shaw
66b9b391d9
feat: 添加 Claude Agent SDK 系统提示词
...
新增 claudeOtherSystemPrompt3 支持 Agent SDK 格式
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-09-30 11:25:26 +08:00
shaw
4ad1ccc22c
fix: 适配 claude-vscode 客户端
...
扩展正则表达式以支持 claude-cli/2.0.0 (external, claude-vscode)
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-09-30 11:25:18 +08:00
shaw
c62b397fde
docs: 更新vscode使用参数配置 [skip ci]
2025-09-30 09:31:02 +08:00
github-actions[bot]
29ee52ee2e
chore: sync VERSION file with release v1.1.159 [skip ci]
2025-09-29 06:49:09 +00:00
shaw
c19acf2b01
fix: contents.js依赖改为CommonJS
2025-09-29 14:48:43 +08:00
github-actions[bot]
f8f0a7042e
chore: sync VERSION file with release v1.1.158 [skip ci]
2025-09-29 06:36:44 +00:00
shaw
e705a3b16c
fix: 补充pr-487依赖
2025-09-29 14:11:00 +08:00
shaw
973e51e6a7
Merge branch 'qyinter/main' into dev
2025-09-29 14:01:57 +08:00
千羽
3e69f17330
feat: 重构和更新 Claude Code 验证器组件
...
- 重构 src/utils/contents.js,添加完整的 prompt 定义和相似度检测功能
- 删除重复的 src/utils/text-similarity.js 文件
- 更新 claudeCodeValidator.js 中的验证逻辑和错误处理
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-09-29 14:39:29 +09:00
github-actions[bot]
286a269446
chore: sync VERSION file with release v1.1.157 [skip ci]
2025-09-28 15:36:42 +00:00
shaw
f0b7f5066c
Merge branch 'dev'
2025-09-28 23:35:13 +08:00
shaw
b4d7ed06c5
fix: 修复5小时限制被停止调度未恢复的问题
2025-09-28 23:30:41 +08:00
shaw
aca2b1cccb
feat: 账号列表支持批量删除
2025-09-28 21:43:57 +08:00
shaw
506bd5a205
fix: 修复redis密码传参问题
2025-09-28 15:52:33 +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
b123cc35c1
feat: api-stats页面查询专属账号会话窗口
2025-09-28 14:36:38 +08:00
shaw
90dce32cfc
fix: 优化并发限制数的控制逻辑
2025-09-28 13:58:59 +08:00
shaw
5ce385d2bc
fix: 修复账号筛选平台是oai显示异常
2025-09-28 11:53:46 +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
b9c606e82e
Merge pr-484
2025-09-28 09:57:40 +08:00
shaw
ca2a12e7e8
Merge branch 'pr-484' into dev
2025-09-28 09:49:10 +08:00
shaw
e197fbdf80
Merge branch 'pr-485' into dev
2025-09-28 09:45:03 +08:00
github-actions[bot]
cb9778f01e
chore: sync VERSION file with release v1.1.156 [skip ci]
2025-09-27 15:08:17 +00: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
Kada Liao
2eb50c78c6
fix: Stringify export data before file write
2025-09-27 01:12:44 +08:00
github-actions[bot]
c8b72b4eaa
chore: sync VERSION file with release v1.1.155 [skip ci]
2025-09-26 09:31:47 +00:00