mouyong
|
5af8913954
|
refactor(backend): 统一账户平台标识字段
WHAT: 统一 Claude 账户的平台标识,从 claude-oauth 改为 claude
WHY: 简化平台标识命名规范,提高前后端数据一致性,为多平台支持奠定基础
HOW: 在账户创建和查询接口中添加 platform 字段支持;更新 claudeAccountService 默认平台标识;保持向后兼容性,旧数据自动使用默认值
|
2025-08-20 21:40:24 +08:00 |
|
mouyong
|
54dca0f285
|
fix(frontend): 修复编辑分组模态框显示问题
WHAT: 修复账户分组管理中编辑分组表单无法显示的问题
WHY: 编辑模态框使用无效的 z-60 类名导致层级冲突,编辑表单被主模态框遮挡
HOW: 将编辑模态框的 z-index 类名从 z-60 改为 z-50,与主模态框同级但利用 DOM 顺序确保正确显示;保持其他样式和功能不变
|
2025-08-20 21:37:19 +08:00 |
|
mouyong
|
5ae136a5dc
|
style: 移除尾随逗号
WHAT: 移除 SocksProxyAgent 配置对象中的尾随逗号
WHY: 保持代码格式的一致性和整洁性,符合项目的代码规范
HOW: 删除 family: 4 后的尾随逗号;无功能变更;纯格式化修改
|
2025-08-20 09:45:55 +08:00 |
|
mouyong
|
b1f2b4f6c1
|
fix(proxy): 强制 SOCKS5 代理使用 IPv4
WHAT: 为 SOCKS5 代理配置添加 family: 4 选项强制使用 IPv4 地址族
WHY: 解决 IPv4 主机名在代理连接时被意外解析到 IPv6 地址的问题,确保代理连接的稳定性和可预期性
HOW: 在 SocksProxyAgent 构造函数中添加 family: 4 配置选项;保持与现有 HTTP/HTTPS 代理的兼容性;无破坏性变更
|
2025-08-20 09:34:02 +08:00 |
|
github-actions[bot]
|
23cb78558d
|
chore: sync VERSION file with release v1.1.115 [skip ci]
|
2025-08-18 11:16:13 +00:00 |
|
shaw
|
539411d593
|
fix: openai的responses去除text参数
|
2025-08-18 19:15:49 +08:00 |
|
github-actions[bot]
|
262df4d42e
|
chore: sync VERSION file with release v1.1.114 [skip ci]
|
2025-08-18 03:13:25 +00:00 |
|
shaw
|
d11b7c5e3e
|
fix: openai的api转发剔除多余参数
|
2025-08-18 11:13:01 +08:00 |
|
github-actions[bot]
|
9db88f9f0e
|
chore: sync VERSION file with release v1.1.113 [skip ci]
|
2025-08-18 01:37:33 +00:00 |
|
shaw
|
639aef3242
|
Merge branch 'dev'
|
2025-08-18 09:37:01 +08:00 |
|
shaw
|
65ba0ffb8f
|
feat: 优化 Gemini 项目ID处理逻辑
- 统一使用账户配置的项目ID,忽略客户端请求中的project参数
- 增强日志记录,更清晰地追踪项目ID的使用情况
- 移除无用的 geminiAuthInterceptor 中间件
- 移除调试用的 console.log
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-08-18 09:33:15 +08:00 |
|
github-actions[bot]
|
14f94a65b5
|
chore: sync VERSION file with release v1.1.112 [skip ci]
|
2025-08-17 09:11:48 +00:00 |
|
shaw
|
4196cf27a0
|
Merge branch 'dev'
|
2025-08-17 17:11:23 +08:00 |
|
shaw
|
71cbe84d8d
|
Merge branch 'main' of github.com:Wei-Shaw/claude-relay-service
|
2025-08-17 17:11:15 +08:00 |
|
shaw
|
3d1cd21bc4
|
fix: 修复 ESLint 错误和代码格式问题
- 修复 cacheMonitor.js 中未使用的变量 'name'
- 移除未使用的变量以通过 ESLint 检查
- 确保 npm run dev 能正常运行
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-08-17 16:54:08 +08:00 |
|
shaw
|
3bcdb511fe
|
feat: 实现多服务账户缓存优化系统
- 添加通用LRU缓存工具类,支持过期时间和内存限制
- 实现缓存监控系统,提供统计和健康检查接口
- 为所有账户服务(Claude、Gemini、OpenAI、Bedrock、Claude Console)添加缓存层
- 优化账户选择性能,减少Redis查询频率
- 添加缓存统计监控端点 /admin/cache/stats
性能提升:
- 账户列表查询从O(n)优化到O(1)
- 减少90%以上的Redis查询
- 响应时间降低50ms以上
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-08-17 15:38:49 +08:00 |
|
shaw
|
77f80ef1f4
|
fix: claude token统计问题
|
2025-08-17 00:41:16 +08:00 |
|
shaw
|
4643e471ee
|
fix: 修复claude转发usage统计问题
|
2025-08-17 00:03:17 +08:00 |
|
shaw
|
043e3768ab
|
fix: 修复每次请求都要重新生成秘钥的问题
|
2025-08-16 23:49:19 +08:00 |
|
shaw
|
9c5912f268
|
Merge branch 'main' into dev
|
2025-08-16 22:31:42 +08:00 |
|
shaw
|
681cb8cd82
|
feat: 优化 Claude 模型缓存费用计算,支持 5 分钟和 1 小时两种缓存类型
- 在 pricingService 中硬编码 1 小时缓存价格(Opus: $30/MTok, Sonnet: $6/MTok, Haiku: $1.6/MTok)
- 更新 usage 捕获逻辑以分别记录 ephemeral_5m 和 ephemeral_1h 缓存 tokens
- 改进费用计算逻辑,正确计算两种缓存类型的费用
- 新增 recordUsageWithDetails 方法支持详细的缓存数据
- 保持向后兼容性,支持旧的数据格式
- 删除测试脚本 test-openai-refresh.js
- 修复 OpenAI token 刷新逻辑
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-08-16 22:31:20 +08:00 |
|
github-actions[bot]
|
4c642ac3ee
|
chore: sync VERSION file with release v1.1.111 [skip ci]
|
2025-08-15 10:47:36 +00:00 |
|
shaw
|
b1344fef8c
|
fix: prettier format
|
2025-08-15 18:47:09 +08:00 |
|
shaw
|
78f2cf1f56
|
fix: 修复前端 Prettier 格式化错误
- 移除 AccountsView.vue 中多余的空行
- 确保代码格式符合 Prettier 规范
- 前端现在可以正常编译
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-08-15 17:07:35 +08:00 |
|
shaw
|
812e98355f
|
feat: 实现 OpenAI token 自动刷新功能并优化账户管理界面
主要更改:
1. OpenAI Token 自动刷新
- 实现 refreshAccessToken 函数,支持 OAuth 2.0 refresh_token grant type
- 使用 Codex CLI 官方 CLIENT_ID (app_EMoamEEZ73f0CkXaXp7hrann)
- 支持 SOCKS5 和 HTTP/HTTPS 代理
- 自动更新 access token、id token 和 refresh token
2. 账户管理界面优化
- 移除手动刷新 token 按钮(桌面端和移动端)
- 保留后端自动刷新机制
- 优化代码结构,删除不再需要的函数和变量
3. 测试和文档
- 添加 test-openai-refresh.js 测试脚本
- 创建详细的实现文档
技术细节:
- Token 端点: https://auth.openai.com/oauth/token
- 默认有效期: 1小时
- 加密存储: AES-256-CBC
所有平台现在都支持自动 token 刷新:
✅ Claude - OAuth 自动刷新
✅ Gemini - Google OAuth2 自动刷新
✅ OpenAI - OAuth 自动刷新(新实现)
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-08-15 16:56:44 +08:00 |
|
github-actions[bot]
|
3e605f0052
|
chore: sync VERSION file with release v1.1.110 [skip ci]
|
2025-08-14 13:47:13 +00:00 |
|
Wesley Liddick
|
925da6fb22
|
Merge pull request #249 from iRubbish/feat/webhook-manual-disable-notification
feat: 增强 webhook 通知功能,支持手动禁用账号通知
|
2025-08-14 21:47:01 +08:00 |
|
iRubbish
|
c9b0c3eb82
|
feat: 增强 webhook 通知功能,支持手动禁用账号通知
- 添加手动禁用账号时的 webhook 通知功能
- 支持所有账号类型:Claude OAuth、Claude Console、Gemini
- 新增错误代码:MANUALLY_DISABLED 系列
- 更新 README.md 文档,添加完整的 webhook 配置说明
- 包含企业微信配置示例和测试方法
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-08-14 18:28:48 +08:00 |
|
github-actions[bot]
|
d2ddd0cdd8
|
chore: sync VERSION file with release v1.1.109 [skip ci]
|
2025-08-14 08:51:34 +00:00 |
|
Wesley Liddick
|
74fcc6d470
|
Merge pull request #248 from kevinconan/main
feat: 新增Claude账号订阅类型设置
|
2025-08-14 16:51:20 +08:00 |
|
KevinLiao
|
f1febd320e
|
fix: 去掉Free账号
|
2025-08-14 16:49:20 +08:00 |
|
KevinLiao
|
b0622bdcbd
|
Merge branch 'main' of https://github.com/Wei-Shaw/claude-relay-service
|
2025-08-14 16:44:20 +08:00 |
|
KevinLiao
|
0e5f4e03c1
|
feat: 新增Claude账号订阅类型设置
1. OAuth可自动判断订阅类型,Setup Token请自行选择。无论那种类型都可以自己改
2. 优化调度,Pro账号不再接受opus模型请求的调度
|
2025-08-14 16:43:58 +08:00 |
|
github-actions[bot]
|
b33c659491
|
chore: sync VERSION file with release v1.1.108 [skip ci]
|
2025-08-14 06:31:28 +00:00 |
|
Wesley Liddick
|
1144b9b5ff
|
Merge pull request #246 from iRubbish/feat/webhook-account-notification
feat: 添加账号禁用异常状态 Webhook 通知功能 (已格式化)
|
2025-08-14 14:31:14 +08:00 |
|
iRubbish
|
2b77fdc06c
|
fix: 修复 ESLint 代码质量问题
- 修复正则表达式中不必要的转义字符
- 使用对象解构优化代码风格
- 修复未使用变量的命名规范
- 确保所有修改文件通过 ESLint 检查
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-08-14 14:14:01 +08:00 |
|
iRubbish
|
d2bcb8ef5e
|
style: 使用 prettier 格式化代码
- 格式化 config/config.example.js 文件
- 确保所有代码符合项目代码风格规范
- 解决自动构建中的格式检查问题
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-08-14 09:54:15 +08:00 |
|
github-actions[bot]
|
1224ade5a7
|
chore: sync VERSION file with release v1.1.107 [skip ci]
|
2025-08-13 14:53:33 +00:00 |
|
shaw
|
5428462f55
|
fix: 修复 OpenAI 账户代理配置保存问题
- 修复 OAuth 方式添加 OpenAI 账户时缺少 priority 字段
- 修复创建 OpenAI 账户时错误检查 proxy.enabled 导致代理未保存
- 添加 OpenAI OAuth token 交换时的 SOCKS5 代理支持
- 添加 OpenAI API 请求转发时的代理支持
- 参考 Claude/Gemini 实现统一代理处理逻辑
|
2025-08-13 22:44:48 +08:00 |
|
weidian
|
e01e539108
|
feat: 添加账号异常状态 Webhook 通知功能
## 功能概述
- 新增账号禁用/异常状态的 Webhook 实时通知机制
- 支持 Claude OAuth、Claude Console、Gemini 三种平台的账号监控
- 提供完整的 Webhook 管理 API 和配置选项
## 主要变更
### 新增文件
- `src/utils/webhookNotifier.js`: Webhook 通知核心服务
- `src/routes/webhook.js`: Webhook 管理 API 路由
### 功能集成
- Claude OAuth 账号:unauthorized 状态 + token 刷新错误通知
- Claude Console 账号:blocked 状态通知
- Gemini 账号:token 刷新错误通知
### 配置支持
- 新增环境变量:WEBHOOK_ENABLED, WEBHOOK_URLS, WEBHOOK_TIMEOUT, WEBHOOK_RETRIES
- 支持多个 Webhook URL 并发通知
- 自动重试机制(指数退避)+ 超时保护
### 管理端点
- POST /admin/webhook/test: 测试连通性
- POST /admin/webhook/test-notification: 发送测试通知
- GET /admin/webhook/config: 查看配置信息
## 通知格式
```json
{
"type": "account_anomaly",
"data": {
"accountId": "uuid",
"accountName": "账号名称",
"platform": "claude-oauth|claude-console|gemini",
"status": "unauthorized|blocked|error",
"errorCode": "CLAUDE_OAUTH_UNAUTHORIZED",
"reason": "具体异常原因",
"timestamp": "2025-01-13T10:30:00.000Z"
}
}
```
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-08-13 17:52:46 +08:00 |
|
github-actions[bot]
|
29f983e2ef
|
chore: sync VERSION file with release v1.1.106 [skip ci]
|
2025-08-13 09:50:01 +00:00 |
|
Wesley Liddick
|
ceb1749859
|
Merge pull request #243 from tanaer/fixed
Fixed: 新增 Claude Console 账户限流机制开关
|
2025-08-13 17:49:47 +08:00 |
|
wt
|
8142c3356a
|
feat: 新增 Claude Console 账户限流机制开关 Lint format
|
2025-08-13 17:04:47 +08:00 |
|
wt
|
ab02acd008
|
Prettier format
|
2025-08-13 15:04:47 +08:00 |
|
shaw
|
d83502dd4f
|
feat: 添加前端代码格式检查支持
- 支持 Vue 文件和 web/admin-spa 目录的检查
- 区分前端和后端的 prettier/eslint 配置
- 优化错误提示,分别提供前端和后端的修复命令
|
2025-08-13 14:38:52 +08:00 |
|
shaw
|
e25da4876b
|
fix: 改进 PR 评论权限处理和添加调试信息
|
2025-08-13 14:30:29 +08:00 |
|
shaw
|
7bc0ee233b
|
fix: 添加 workflow 评论权限
|
2025-08-13 14:16:04 +08:00 |
|
shaw
|
7c83859a12
|
feat: 添加 PR 代码格式自动检查 workflow
- 在 PR 时自动运行 Prettier 和 ESLint 检查
- 检查失败时在 PR 页面显示状态并评论修复建议
|
2025-08-13 14:05:29 +08:00 |
|
wt
|
f9e8157e07
|
Fix: Claude Console 账户的限流开关
|
2025-08-13 11:24:20 +08:00 |
|
wt
|
171d35f33e
|
Fix: Claude Console 账户的限流开关
|
2025-08-13 10:36:15 +08:00 |
|