Pi Agent 可以通过第三方扩展 pi-codex-account 保存并切换多个 OpenAI Codex OAuth 登录。基本流程是依次登录每个账号,用标签保存当前凭据,再用 /codex switch 切换;但该扩展会在本地保存访问令牌和刷新令牌,并改写 Pi 的认证文件,它不是 OpenAI 官方提供的多账号管理功能。
Pi 默认把当前 openai-codex 登录保存在用户目录的认证文件中,一次只有一组活动凭据。pi-codex-account 会把当前凭据复制成带名称的快照,并在切换时把选中的快照写回活动认证项。
切换后,扩展会把凭据过期时间设为 0,并重新加载 Pi。下一次 Codex 请求会触发令牌刷新,使新账号成为当前活动账号。它不是同时并发登录多个账号,而是在多个本地凭据快照之间替换当前账号。
如果设备由多人共用、目录会被同步到网盘,或者经常运行不可信项目,不应直接保存多个主账号的刷新令牌。
从 npm 安装:
pi install npm:pi-codex-account
只想临时试用时,可以在启动 Pi 时加载扩展:
pi -e npm:pi-codex-account
安装或更新后,在 Pi 会话中执行:
/reload
成功标志是 /codex 命令可以打开账号选择器。若命令不存在,先检查包是否安装在当前 Pi 使用的配置目录,再重新加载会话。
/login openai-codex。/codex save work,把当前登录保存为 work。/login openai-codex
/codex save work
标签只是本地名称,不会修改 OpenAI 账号。建议使用 work、personal 这类可区分且不包含邮箱地址的名称。
再次执行登录命令,在浏览器中选择另一个账号,然后保存为不同标签:
/login openai-codex
/codex save personal
保存前先确认浏览器实际授权的是第二个账号。浏览器如果自动复用了原有会话,两个标签可能保存成同一组凭据。可以用无痕窗口、退出错误账号或在授权页面仔细核对账号身份。
切换到工作账号:
/codex switch work
切换到个人账号:
/codex switch personal
扩展会重新加载 Pi。之后可以使用以下命令检查:
/codex current
/codex list
/codex current 显示当前活动标签和缩略账号标识,/codex list 列出已保存标签。真正的成功标志不是只看到“已切换”通知,而是新账号能完成一次模型请求,并且显示的账号标识符合预期。
扩展提供:
/codex usage
如果提示访问令牌已过期,先向 Codex 模型发送一次请求,让 Pi 完成刷新,再重新执行用量命令。该功能读取的是扩展所调用的 ChatGPT 后端用量接口,不应把它理解为 OpenAI 对第三方扩展提供的稳定公共 API;接口变化时,用量查询可能失效,但账号切换本身未必同时失效。
| 命令 | 作用 |
|---|---|
/codex | 打开交互式账号选择器 |
/codex save <标签> | 保存或更新当前登录快照 |
/codex switch <标签> | 切换账号并重新加载 Pi |
/codex list | 列出已保存账号 |
/codex current | 显示当前活动账号 |
/codex usage | 查询当前账号用量 |
/codex rename <旧标签> <新标签> | 重命名本地标签 |
/codex remove <标签> | 删除一个保存的快照 |
扩展默认使用两个关键文件:
~/.pi/agent/auth.json
~/.pi/agent/codex-accounts.json
前者包含当前活动登录,后者保存多个带标签的 OAuth 凭据快照。扩展尝试把目录权限设为 0700、文件权限设为 0600,这可以阻止其他普通本地账号直接读取,但不能防御当前用户权限下运行的恶意程序、扩展或 Agent 命令。
这两个文件都应视同密码。不要提交到 Git、发送给他人、加入云盘同步,也不要复制到不可信设备。备份工具如果会读取整个用户目录,也应确认备份是否加密以及谁能访问。
/codex remove personal 只删除多账号存储中的对应快照。根据扩展实现,它不会修改当前 auth.json;如果被删除的账号仍是活动登录,Pi 可能继续使用该凭据。
需要彻底断开账号时,应同时退出当前提供商登录,并到 OpenAI 账号安全页面检查活动会话或撤销相关授权。只删除标签不能代替服务端撤销。
先执行 /login openai-codex 并完成浏览器授权。登录后发送一次模型请求,再执行保存命令。
执行 /codex current 对比账号标识,再发送一次请求触发刷新。如果两个标签的标识相同,可能是在浏览器授权时重复登录了同一账号,需要重新登录并覆盖错误标签。
先发起一次 Codex 模型请求,让 Pi 刷新选中账号的令牌,然后重试。若模型请求也失败,应重新登录该账号并更新快照。
在类 Unix 系统上可以检查:
ls -l ~/.pi/agent/auth.json ~/.pi/agent/codex-accounts.json
预期只有当前用户可读写。Windows 的权限模型不同,应通过文件属性和访问控制列表确认其他用户无法读取。
多账号切换本身不自动证明违规,也不代表使用方式一定被允许。该扩展是社区项目,不是 OpenAI 官方多账号功能。用户仍需遵守每个账号、组织和订阅方案的条款。
不要用多账号轮换绕过速率限制、订阅额度或其他产品限制,也不要保存不属于自己的账号凭据。工作账号和个人账号还可能受不同的数据、审计和组织管理政策约束,切错账号会让公司代码进入个人环境,或让个人请求计入组织使用。
如果只是偶尔切换,可分别使用不同的操作系统账号、容器或独立的 Pi 配置目录,让凭据天然隔离。自动化和持续集成更适合使用独立 API 项目及短期密钥,不应依赖个人 OAuth 刷新令牌快照。
这种隔离方式操作稍繁琐,但能降低误切账号和单个配置文件集中暴露多个账号的风险。
pi-codex-account 通过保存并替换 Pi 的 Codex OAuth 凭据,实现 /codex save、/codex switch、/codex current 和 /codex usage 等多账号操作。它方便,但会把多个账号的访问与刷新令牌集中保存在本地文件中,而且属于第三方实现。使用时应检查账号标识、保护认证文件、避免额度规避,并把删除本地快照与服务端撤销账号访问分别处理。
ubuntu20.04怎么使用蓝牙连接手机互传文件?
ubuntu系统怎么选择最佳服务器?
5Mware虚拟机安装Ubuntu 16.04.5 图文详解
用 Pi Agent 连接 Codex 或 Claude 官方账号有封号风险吗?
Pi Agent 使用 Codex、Claude 或 Gemini OAuth 会导致账号被封吗?
AI Agent 为什么更喜欢命令行?CLI 与 GUI 的真正分工是什么?