v2.5.1 — 安全加固、搜索级联、消息清理修复
v2.5.1 更新内容
Codex 配置切换
- 新增官方账号 / 第三方插件兼容模式切换:可在软件「设置」页一键切换
~/.codex/config.toml。 - 插件兼容模式:保留 ChatGPT 官方登录态,模型请求走本地代理
http://127.0.0.1:15800/v1,用于 API 中转时继续使用插件市场。 - 官方账号模式:移除
AIProxyManagerprovider,切回官方 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,并在同步前备份会话元数据和状态索引。