Skip to content

v2.5.1 — 安全加固、搜索级联、消息清理修复

Choose a tag to compare

@lhhkuki lhhkuki released this 12 May 13:42
· 17 commits to master since this release

v2.5.1 更新内容

Codex 配置切换

  • 新增官方账号 / 第三方插件兼容模式切换:可在软件「设置」页一键切换 ~/.codex/config.toml
  • 插件兼容模式:保留 ChatGPT 官方登录态,模型请求走本地代理 http://127.0.0.1:15800/v1,用于 API 中转时继续使用插件市场。
  • 官方账号模式:移除 AIProxyManager provider,切回官方 ChatGPT 登录态,不修改 auth.json
  • 登录态检测:读取 ~/.codex/auth.json 判断是否已完成 ChatGPT 官方登录。
  • 自动备份:写入 Codex 配置前备份到 ~/.codex/backups_proxy_manager/

安全加固

  • API Key 加密存储:Fernet 加密 + enc:v2: 前缀,明文不再落盘
  • 原子化配置写入:临时文件 + os.replace(),JSON 损坏自动恢复
  • SSRF 防护base_url 校验拒绝内网/私有 IP
  • CORS 限制:仅允许 localhost/dev 来源
  • Electron 安全nodeIntegration: false + contextIsolation: true + preload.cjs
  • Fernet 密钥随机生成os.urandom(32) 替代确定性推导
  • cryptography 顶层 import:缺失时友好报错

搜索功能

  • 四级搜索引擎级联:Bing → 搜狗 → 360 → DuckDuckGo,一个不通自动切下一个
  • 流式路径自动执行:web_search 结果内联推送,Codex 无需自己执行搜索
  • 工具消息去重排序:按 tool_calls 顺序排列,去除重复

关键修复

  • 修复未知 /v1/* 透传 URL 拼接错误
  • 日志队列满时不再影响代理请求
  • API Key 加密失败时阻止保存,避免静默写入空密文
  • 启动时不再强杀未知端口占用进程
  • 推理开关只看模型配置,忽略 Codex 请求级的值
  • thinking 字段仅对已知推理模型注入
  • 孤儿 tool_calls/tool 消息全面清理(邻接检查 + 去重 + 排序)
  • response_format 过滤,仅透传 text/json_object
  • 推理缓存 TTL 生效(1小时)
  • 流式读取 socket 120s 超时,防止线程挂起
  • HTTPError 连接关闭,防止 fd 泄漏
  • 重试指数退避(2^attempt)
  • 优雅关闭:API stop 先于 SIGTERM

清理

  • 删除不可用的 gui/、重复的 main.js、多余的 electron-builder.yml

安装

下载 AI.Proxy.Manager.Setup.2.5.1.exe 运行即可。

修复

  • 修复 Codex 配置切换后按钮高亮没有跟随当前模式更新的问题。切回官方账号后,官方选项会变成蓝色,第三方选项会恢复普通状态。
  • 修复 Codex 在官方账号和第三方插件兼容模式之间切换后,会话记录列表按 provider 分组导致看起来丢失的问题。现在切换时会同步会话 provider,并在同步前备份会话元数据和状态索引。