Fetching metadata from the HF Docker repository...
-
refactor: 代码模块化重构与前端优化
ZhaoShanGeng
## 代码重构
- 将 utils.js (500+行) 拆分为6个模块:
- openai_mapping.js: 请求体构建
- openai_messages.js: 消息格式转换
- openai_tools.js: 工具格式转换
- openai_generation.js: 生成配置
- openai_system.js: 系统指令提取
- openai_signatures.js: 签名常量
- 将 client.js 的流式解析抽取为 stream_parser.js
## 路径与常量统一
- 新增 paths.js 统一处理 pkg 打包和开发环境的路径
- 新增 constants/index.js 集中管理所有魔法数字和配置默认值
## 错误处理
- 新增 errors.js 统一错误类层次结构
- 新增 Express 错误处理中间件
## Token管理优化
- 新增 TokenStore 类处理文件读写
- 文件操作改为异步 (async/await)
- API方法 (addToken/updateToken/deleteToken/getTokenList) 改为异步
- 额度耗尽策略新增高性能可用列表维护
## 前端优化
- 防闪烁: 页面加载前根据登录状态和Tab状态设置初始显示
- 字体异步加载: 使用 media=print onload 技术避免阻塞渲染
- 本地背景图: 替代远程 Unsplash 图片加快加载
- Tab状态持久化: 保存到 localStorage
## 新功能
- 新增 passSignatureToClient 配置控制签名透传
- 轮询策略默认改为 request_count -
解决关闭校验后,提示无资格的提示
-
优化代码结构、前端逻辑、认证提示、前端添加原生axios和系统提示词收集配置的配置
-
feat: 添加二进制编译支持
ZhaoShanGeng
- 添加 esbuild 和 pkg 依赖用于编译
- 创建 scripts/build.js 编译脚本
- 添加 GitHub Actions 工作流自动编译
- 修改多个文件支持 pkg 打包环境
- 支持 Windows x64, Linux x64, Linux ARM64, macOS x64, macOS ARM64 -
feat: 多项修复与代码简化
ZhaoShanGeng
文件改动:
src/utils/utils.js:
- 修复非思考模型识别: isEnableThinking() 从 endsWith 改为 includes 匹配 -thinking
- 修复工具参数 Schema: EXCLUDED_KEYS 新增 anyOf/oneOf/allOf 等过滤
- convertOpenAIToolsToAntigravity() 确保顶层有 type 和 properties
- 新增 prepareImageRequest() 统一图片请求处理
- 移除 httpAgent/httpsAgent,DNS 优化移至 httpClient.js
- 简化 getDefaultIp() 遍历所有网卡
src/server/index.js:
- 修复工具调用流式响应: tool_calls 添加 index 字段符合 OpenAI schema
- 使用 prepareImageRequest() 简化图片模型处理
- 使用 registerMemoryPoolCleanup() 简化内存清理
src/utils/httpClient.js (新增):
- 统一 HTTP 请求和 DNS 解析优化 (IPv4 优先回退 IPv6)
public/app.js:
- 前端额度显示不取整: percentage 从 toFixed(0) 改为 toFixed(2)
- 重构 createTokenFormBody() 提取表单生成逻辑
src/api/client.js:
- 引入 httpClient 统一 HTTP 请求处理
- 简化代码结构
src/utils/memoryManager.js:
- 新增 registerMemoryPoolCleanup() 工具函数
src/config/config.js:
- 新增 getProxyConfig() 导出
src/utils/configReloader.js:
- 移除重复的 getProxyConfig(),改为从 config.js 导入
- 默认 thinking_budget 从 16000 改为 1024
src/constants/oauth.js:
- 新增 OAUTH_SCOPES 常量统一管理
src/routes/sd.js:
-…
-
feat: 大规模性能优化与功能增强
ZhaoShanGeng
### 新增功能
1. 自定义思考预算:支持 reasoning_effort 参数 (low:1024/medium:16000/high:32000) 和 thinking_budget 参数 (1024-32000)
2. 适配 DeepSeek 思考格式:reasoning_content 字段单独输出,避免思维链混在 content 中
3. 资格校验自动回退:无资格时自动生成随机 ProjectId,避免添加 Token 失败
4. 真 System 消息支持:开头连续多条 system 与 SystemInstruction 合并
5. 三种轮询策略:round_robin / quota_exhausted / request_count
6. 心跳机制:SSE 心跳防止 Cloudflare 等 CDN 超时断连
7. 模型缓存:自动缓存模型列表和额度,减少 API 请求频率
### 前端优化
- 重构 Web 管理界面,优化 PC 体验
- 隐私模式:默认隐藏敏感信息(Token、ProjectId 等)
- 新增设置项:思考预算、图片地址、轮询策略、内存阈值、心跳间隔、字体大小
- 采用 MiSans + Ubuntu Mono 字体,增强可读性
### 性能优化
- 内存占用:从 100MB+ 降至 50MB+,进程数从 8+ 减少为 2 个
- 对象池复用:减少 50%+ 临时对象创建,降低 GC 频率
- 预编译常量:正则表达式、格式字符串等预编译
- LineBuffer 优化:高效流式行分割
- 自动内存清理:堆内存超阈值时自动触发 GC
### Bug 修复
- Token 刷新失败时返回 400 而非 401,避免触发 JWT 登出
- 修复流式响应内存泄漏问题
-
增加token计数,增加前端额度查询,更新readme
-
优化代码结构,减少重复,更新readme
-
优化docker配置
-
增加一个简易的前端方便管理,增加dockerfile和docker-compose.yml
-
解决普号错误projectId导致403的问题,同时为pro账号(进入pro组)提供随机的生成功能
-
优化生图功能,优先存在本地,然后对外提供链接,修复轮询token的bug
-
使用axios替换fetch,优化代码结构,添加超时和代理支持,改为从.env加载
-
添加复用id机制,修复潜在的问题,添加npm run refresh刷新所有token的功能
-
更智能的提醒
-
优化路径分布