Releases: blackrion/claude-code-hub
Releases · blackrion/claude-code-hub
Release 0.2.39
🐳 Docker 镜像
docker pull ghcr.io/blackrion/claude-code-hub:v0.2.39
docker pull ghcr.io/blackrion/claude-code-hub:latest📦 主要更新
[unreleased]
Bug 修复
- Avoid redirect loop for non-admin dashboard
- Refresh proxy status from database
- 修复页面布局和优化使用文档页面
- 简化版本管理配置和修复类型错误
- 修复上游调度决策链稳定性并增强可观测性
- 修复 TypeScript ESLint 错误以通过 CI 构建
- 修复数据库定义不一致
- 修复供应商统计数据获取的错误处理
- 处理供应商统计数据中的 last_call_time 类型
- 增强供应商统计数据处理和日志展示
- 更新 UpdateUserSchema 以允许 providerGroup 字段为 null
- 修复 OpenAI/Codex 请求重试时错误选择 Claude 供应商的问题
- 修复 Codex 请求转发时使用原始 buffer 而非转换后 message 的问题
- 禁用 Codex CLI instructions 自动注入以修复 400 错误
- 修复 Codex 请求转换逻辑并增强错误日志
- 修复普通用户无法复制自己密钥的权限问题
- 修复 Codex 请求 User-Agent 导致连接被拒绝的问题
- 修复活跃 Session 计数逻辑不一致问题
- 修复供应商并发限制被超的竞态条件 Bug
- 修复日志设置页面被 gitignore 错误忽略的问题
- 修复多个核心系统的竞态条件和时区问题
- 修复统计查询中的时区转换错误
- 统一排行榜时间计算逻辑与首页统计保持一致
- 修正 .gitignore 格式并移除误提交的 dev 目录文件
- 禁用压缩避免 HTTP 上游触发 undici ZlibError
- 修复数据库管理页面的认证机制
- 修复数据库备份功能的架构问题
- 修复数据库导入时的角色所有权错误
- 修复模型重定向导致的费用计算为 0 的问题
- 修复决策链时间线缺失错误信息和横向滚动问题
- 排除 workflow 文件的自动提交以避免权限问题
- 排除 workflow 文件的自动提交以避免权限问题
- 调整使用日志表格中的单元格对齐方式
- 调整模型多选组件的样式以改善用户体验
- 修复所有 ESLint 警告以通过 CI/CD 构建
- 修复应用启动慢问题
- 修复 Content-Length 头不匹配导致的请求失败
- 修复 ENABLE_MULTI_PROVIDER_TYPES 环境变量无效的 Bug
- 修复 OpenAI → Codex 转换器缺失 instructions 字段导致请求失败
- 修复 Codex API 兼容性问题(instructions 校验、消息计数和 token 统计)
- 优化 Codex 请求清洗逻辑,增强日志记录
- 优化 OpenAI 到 Codex 请求转换逻辑
- Preserve Codex cache token usage
- 更新供应商选择提示信息
- Validate canLoginWebUi permission in middleware (ding113#4)
- 解决 PR 审查意见
- 修复 track_progress 导致 workflow 失败的问题
- 修复 middleware 和 API routes 的 Edge Runtime 兼容性问题
- 更新 Redis 配置以使用 Docker 服务名
- 开发环境自动初始化价格表种子文件
- Auto-initialize price table in development mode (ding113#11)
- 简化字段验证逻辑,提升用户体验 (ding113#12)
- 扩大 API 密钥的最大长度限制至 1024 个字符
- 修复 Bull Queue Redis 连接配置问题 (ding113#23)
- Prevent infinite loop by excluding bot actions in GitHub Actions workflow
- 修复用户每日限额检查失效和若干代码问题
- Auto-fix CI failures in Dev Branch CI/CD [skip ci]
- Update commit message guidelines for CI auto-fixes
- 修复 SQL 查询日期字段类型不匹配的问题
- 替换 SQL 查询中的数组匹配逻辑为 inArray 方法
- 使用时区感知的日期处理逻辑修复查询问题
- 修复用户分组过滤功能 - 补全 providerGroup 字段查询 (ding113#31)
- 修复模块加载时立即初始化导致的 unhandledRejection
- Resolve TypeScript and ESLint errors to pass CI build
- Auto-fix CI failures in PR Build Check (ding113#43)
- ding113#40 环境变量无法生效
- 优化供应商优先级字段说明文案 (ding113#45)
- Remove duplicate migration file 0013_optimal_darkhawk
- 应用 PR ding113#49 的代码审查建议
- 修复http 无法登录问题;优化部分文案 (ding113#49)
- 修复 OpenAPI 文档生产环境显示 localhost 问题 (ding113#55)
- 修复模型选择器列表下方空白问题 (ding113#56)
- 修复若干问题 (ding113#62)
- 修复 0013 迁移缺少幂等性保护导致升级失败 (ding113#65)
- 修正模型重定向方向并优化 UI 布局
- Auto-fix CI failures in PR Build Check
- 修复供应商切换死锁风险和信号处理问题
- Update GA version detection threshold from 2 to 1 user
- Escape quotes in provider-form.tsx for proper rendering
- Extract cached tokens from OpenAI Response API format for codex providers
- Correct priority sorting order in provider manager
- Change SQL aggregate functions to use double precision
- Enhance request sanitization for official Codex clients
- Adjust codex usage input tokens
- 修复在 Turbopack 环境下的 Pino 日志实例创建逻辑
- 修复供应商每日用量统计 SQL 查询错误
- 修复 allowGlobalUsageView 权限控制失效问题
- 修复用户管理系统的日期清除和权限控制漏洞
- Use TZ-aware date formatting for cache keys (daily/monthly) via date-fns-tz and env TZ
- 防止私有参数泄露到上游供应商
- Align active sessions panel height with metric cards
- Improve locale type handling and update link components
- Auto-fix CI failures in Non-Main Branch CI/CD
- Auto-fix CI failures in PR Build Check
- Replace hardcoded Chinese strings in users.ts with translation keys
- Correct translation key mismatch in settings navigation
- Correct JSON syntax error in provider-form-temp.json
- Correct JSON syntax in provider-form-temp.json - escape quotes in description field
- Update error logging messages in user actions for consistency and clarity
- Add missing provider-chain translation keys for all locales
- Register provider-chain namespace in all locale index files
- Add errorCode to all error returns and fix hardcoded locale
- Auto-fix CI failures in PR Build Check
- Restructure data.guide translations to nested format
- Replace empty string with 'all' value in endpoint filter SelectItem
- Correct provider types translation namespace
- Add new thinking format error pattern
- Finalize aborted proxy streams
代码格式
- 更新登录页和文档页布局
- 优化登录页按钮布局
代码重构
- 使用 React Query 优化统计数据管理
- 消除代理转发中的冗余防御性检查
- 简化系统并扩展模型支持范围
- 优化 Docker 数据持久化和增强调试能力
- 移除代码中的 emoji 并增强错误追踪
- Improve cost calculation logic in calculateRequestCost function
- 统一日志系统并引入 Pino 日志库
- 优化任务队列和消息模板构造逻辑
- Extract quota pages into modular components
- Improve provider selection retry logic
- Streamline usage metrics parsing in ProxyResponseHandler
- Enhance error handling for client input errors in Proxy
- Remove unused dashboard components and settings files
- Replace hardcoded navigation items with translated items in settings layout
- Remove unused blockedByLabels from error-details-dialog and update unknown provider name handling in usage-logs-table
其他变更
- Update .gitignore to include .specify directory
- 添加本地开发 Docker Compose 配置
- Sync VERSION file with release v0.1.1 [skip ci]
- 更新 Docker 配置和镜像源
- Sync VERSION file with release v0.1.2 [skip ci]
- 添加 Redis 服务到 Docker Compose 配置
- Sync VERSION file with release v0.1.3 [skip ci]
- 更新仓库地址并添加原项目致谢
- Sync VERSION file with release v0.1.4 [skip ci]
- Sync VERSION file with release v0.1.5 [skip ci]
- Sync VERSION file with release v0.1.6 [skip ci]
- Sync VERSION file with release v0.1.7 [skip ci]
- Sync VERSION file with release v0.1.8 [skip ci]
- Sync VERSION file with release v0.1.9 [skip ci]
- Sync VERSION file with release v0.1.10 [skip ci]
- Sync VERSION file with release v0.1.11 [skip ci]
- 更新 Docker 配置和文档以优化数据持久化
- Sync VERSION file with release v0.1.12 [skip ci]
- Sync VERSION file with release v0.1.13 [skip ci]
- Sync VERSION file with release v0.1.14 [skip ci]
- Sync VERSION file with release v0.1.15 [skip ci]
- Sync VERSION file with release v0.1.16 [skip ci]
- Sync VERSION file with release v0.1.17 [skip ci]
- Sync VERSION file with release v0.1.18 [skip ci]
- Sync VERSION file with release v0.1.19 [skip ci]
- 修复容器时区
- Sync VERSION file with release v0.1.20 [skip ci]
- Sync VERSION file with release v0.1.21 [skip ci]
- Sync VERSION file with release v0.1.22 [skip ci]
- Sync VERSION file with release v0.1.23 [skip ci]
- Sync VERSION file with release v0.1.24 [skip ci]
- Sync VERSION file with release v0.1.25 [skip ci]
- Sync VERSION file with release v0.1.25 [skip ci]
- Sync VERSION file with release v0.1.26 [skip ci]
- Sync VERSION file with release v0.1.27 [skip ci]
- Sync VERSION file with release v0.1.28 [skip ci]
- Sync VERSION file with release v0.1.29 [skip ci]
- Sync VERSION file with release v0.1.30 [skip ci]
- Sync VERSION file with release v0.1.31 [skip ci]
- Sync VERSION file with release v0.1.32 [skip ci]
- Sync VERSION file with release v0.1.33 [skip ci]
- Sync VERSION file with release v0.1.34 [skip ci]
- Sync VERSION file with release v0.1.35 [skip ci]
- Sync VERSION file with release v0.1.36 [skip ci]
- Sync VERSION file with release v0.1.37 [skip ci]
- Sync VERSION file with release v0.1.38 [skip ci]
- Sync VERSION file with release v0.1.39 [skip ci]
- Sync VERSION file with release v0.1.40 [skip ci]
- Sync VERSION file with release v0.1.41 [skip ci]
- Sync VERSION file with release v0.1.42 [skip ci]
- 更新依赖项版本
- Sync VERSION file with release v0.1.43 [skip ci]
- Sync VERSION file with release v0.1.44 [skip ci]
- Sync VERSION file with release v0.1.45 [skip ci]
- Sync VERSION file with release v0.1.46 [skip ci]
- 恢复 drizzle 迁移文件
- Sync VERSION file with release v0.1.50 [skip ci]
- Format code (dev-9ff5041) [skip ci]
- Sync VERSION file with release v0.1.51 [skip ci]
- Sync VERSION file with release v0.1.52 [skip ci]
- Format code (dev-6b384b8) [skip ci]
- Format code (dev-f2714d5) [skip ci]
- Format code (dev-e787517) [skip ci]
- Format code (dev-82e22f6) [skip ci]
- Format code (dev-4a9d577) [skip ci]
- Format code (dev-75507de) [skip ci]
- Format code (dev-5a8538a) [skip ci]
- Format code (dev-b2bd3ae) [skip ci]
- Format code (dev-e19e8fe) [skip ci]
- Format code (dev-b1335d0) [skip ci]
- Format code (dev-a953b24) [skip ci]
- Format code (dev-c3b4a85) [skip ci]
- Format code (dev-420e396) [skip ci]
- Sync VERSION file with release v0.2.1 [skip ci]
- Sync VERSION file with release v0.2.2 [skip ci]
- Format code [skip ci]
- Sync VERSION file with release v0.2.3 [skip ci]
- Sync VERSION file with release v0.2.4 [skip ci]
- Format code (dev-06db148) [skip ci]
- Sync VERSION file with release v0.2.5 [skip ci]
- Format code (dev-06db148) [skip ci]
- Sync VERSION file with release v0.2.6 [skip ci]
- 更新 GitHub Actions 工作流
- 更新 GitHub Actions 工作流以监听新的 CI 流程
- Sync VERSION file with release v0.2.7 [skip ci]
- Sync VERSION file with release v0.2.8 [skip ci]
- Sync VERSION file with release v0.2.9 [skip ci]
- Sync VERSION file with release v0.2.10 [skip ci]
- Sync VERSION file with release v0.2.11 [skip ci]
- Sync VERSION file with release v0.2.12 [skip ci]
- Disable progress tracking in GitHub Actions workflow
- Sync VERSION file with release v0.2.10 [skip ci]
- Remove [skip ci] from code formatting commit message
- Format code (dev-79ac40e)
- Sync VERSION file with release v0.2.11 [skip ci]
- Format code (dev-efaeea4)
- Sync VERSION file with release v0.2.13 [skip ci]
- Update GitHub Actions workflows to streamline event triggers
- Update GitHub Actions workflows to streamline event triggers
- Format code (dev-c257954)
- Format code (dev-a17892a)
- Format code (dev-18d59f4)
- Format code (dev-48b7125)
- Sync VERSION file with release v0.2.12 [skip ci]
- Sync VERSION file with release v0.2.14 [skip ci]
- Sync VERSION file with release v0.2.15 [skip ci]
- Sync VERSION file with release v0.2.16 [skip ci]
- Sync VERSION file with release v0.2.17 [skip ci]
- Sync VERSION file with release v0.2.18 [skip ci]
- Sync VERSION file with release v0.2.19 [skip ci]
- Sync VERSION file with release v0.2.20 [skip ci]
- Sync VERSION file with release v0.2.21 [skip...