新增功能
-
新增多用户 Runtime Broker。
- 支持多个登录账号并发使用 Codex Web。
- 每个用户拥有独立的 UID、GID、补充组、
HOME、CODEX_HOME、工作目录、消息流和审批上下文。 - 同一用户的多个浏览器会话共享同一个 app-server runtime。
- 用户首次建立 WebSocket 连接时才启动 app-server,断开后支持延迟回收。
- 运行中的 Turn 会阻止 runtime 被提前终止。
- 支持通过 Unix Socket 在 Web 服务与 root runtime 之间进行安全通信。
-
新增多用户认证与会话管理。
- 使用 scrypt 保存密码哈希。
- 使用签名 Session 验证用户身份。
- 增加登录失败限速。
- 支持按用户权限控制安全设置修改。
- Web 进程无需读取密码哈希、Session 密钥或其他用户的 Codex 凭据。
-
新增统一
codex-webCLI。codex-web servecodex-web runtime servecodex-web runtime hash-password- 原有
codex-web --open等单用户命令继续兼容。
-
新增 macOS 多用户 Runtime 支持。
- 使用
dscacheutil查询系统用户。 - 使用
sudo -n -H -u和干净环境启动目标用户 app-server。 - 增加 launchd 部署样例和 macOS 浏览器 Smoke 测试。
- 单用户模式继续支持 Linux、macOS 和 Windows;多用户 Runtime 支持 Linux 和 macOS。
- 使用
-
长文本粘贴自动转为附件。
- 在 Codex 模式下,超过 1000 个字符的粘贴文本会自动生成
pasted-text.txt附件。 - 统一换行符处理,兼容 Windows、macOS 和 Linux 文本格式。
- 文件附件支持点击或键盘操作打开只读预览。
- 在 Codex 模式下,超过 1000 个字符的粘贴文本会自动生成
优化改进
- 抽象统一的 App Server Peer 接口,使 WebSocket Bridge 和 Runtime Broker 可以复用同一套 app-server 消息路由逻辑。
- 优化 app-server 子进程启动参数。
- 支持显式 argv。
- 支持干净环境启动。
- 固定
NODE_ENV和必要环境变量。 - 避免通过 shell 拼接命令。
- 增强跨用户消息隔离,用户之间不会互相广播同步消息或通知。
- 增强 Bridge 安全校验。
- 校验 Origin、Cookie、远程连接来源和 Unix Socket 权限。
- Runtime 连接建立时再次验证 Session。
- 增加 systemd 和 macOS launchd 部署模板。
- 增加多用户配置、密码、Session、NDJSON 分帧、Runtime 生命周期、Broker WebSocket Bridge 等测试。
- 增加多用户并发、跨用户隔离、UID 隔离、统一 CLI 和 macOS 部署 Smoke 测试。
Bug 修复
- 修复仅包含文件附件、没有文本内容时无法发送的问题。
- 修复 app-server 接受或处理附件后,前端乐观消息未保存最新附件元数据的问题。
- 修复历史消息中附件路径未持久化,导致后续无法打开文件预览的问题。
- 修复退出登录后 WebSocket Bridge 仍可能继续重连的问题。
- 修复多用户认证场景下部分 API 仍使用同步单用户认证逻辑的问题。
- 修复多用户模式下安全设置接口未区分管理员权限的问题。
- 修复开发和生产 Bridge 在多用户模式下仍要求单用户
CODEX_HOME或登录配置的问题。 - 修复 CLI 构建产物和部署文件未完整纳入发布包的问题。