Codex 锁屏也能干活:Mac 上的"无人值守"代理终于来了

2026-05-26 30 预计阅读时间:1 分钟
来源:oschina.net AI 摘要 原文链接

免责声明:本文为 AI 摘要整理,建议结合原文阅读。摘要可能省略上下文、版本差异或边界条件,不作为官方说明。

预计阅读时间:8 分钟

你离开电脑去开会,手机上随手发一条指令——家里的 Mac 虽然锁着屏,Codex 已经开始帮你跑测试、改配置、提交代码了。OpenAI 刚给 Codex 桌面代理加上的 "Locked Use" 功能,把这件事从设想变成了现实。

锁屏不再是死胡同

过去所有桌面代理都有一个硬限制:屏幕锁了,代理就瞎了。要么你一直守在电脑前,要么你把自动锁屏关掉——后者在办公环境里基本不被允许。Codex 的 "Locked Use" 直接绕过了这个矛盾:Mac 可以保持锁屏状态,Codex 依然能看见界面、点击按钮、输入文字。

工作流程很简单——用手机(或任何设备)向 Codex 发送任务描述,Codex 在锁屏 Mac 上执行,完成后把结果推回给你。屏幕全程不需要亮起,也不需要你坐在旁边。

Apple 授权插件:受约束的临时解锁

技术上,Codex 并不是"黑进"你的锁屏。它依赖一个 Apple 授权的插件,在严格的行为约束下临时解锁机器来完成当前步骤,执行完立刻回到锁定状态。整个流程可以理解为:

  1. Codex 收到任务指令。
  2. 通过 "Computer Use" 插件向 macOS 请求临时操作权限。
  3. 系统在限定范围内短暂解锁(仅允许 Codex 执行预定操作,不是完整桌面会话)。
  4. 操作完成后立即恢复锁屏。

关键约束包括:临时解锁仅限于当前任务所需的最小操作范围,不会暴露完整用户会话;插件由 Apple 授权,意味着它通过了 macOS 的安全审核机制,而非第三方越权行为。

实际能干什么

锁屏状态下 Codex 能操控的应用范围和正常桌面代理一致——任何有 GUI 的应用都可以。典型场景:

  • CI/CD 调试:本地跑测试挂了,你在外面,让 Codex 打开终端查日志、改一行配置、重跑测试。
  • 文档处理:让 Codex 在锁屏 Mac 上打开 Word 或 Pages,按你的要求调整格式、替换内容、导出 PDF。
  • 开发环境维护:依赖升级、分支合并、lint 修复,这些琐碎但必须在本机完成的事,交给 Codex 在锁屏状态下处理。

用手机远程派活:一个可跑的示例

下面演示如何通过 OpenAI Python SDK 向 Codex 发送一个远程任务,让它在锁屏 Mac 上执行操作。前提是你已经安装了 Codex 桌面客户端并启用了 Locked Use。

# pip install openai
import openai

client = openai.OpenAI()  # 默认读取环境变量 OPENAI_API_KEY

# 向 Codex 代理发送一个远程任务
response = client.responses.create(
    model="codex-mini-latest",  # Codex 代理使用的模型
    input=[
        {
            "role": "user",
            "content": (
                "在我的 Mac 上执行以下操作:\n"
                "1. 打开 Terminal\n"
                "2. 进入 ~/projects/my-api 目录\n"
                "3. 运行 git pull origin main\n"
                "4. 如果有冲突,保留远程版本\n"
                "5. 运行 pytest tests/ --tb=short\n"
                "6. 把测试结果摘要发给我\n"
            ),
        }
    ],
    tools=[
        {
            "type": "computer_use",       # 启用 Computer Use 工具
            "display_width": 1440,
            "display_height": 900,
        }
    ],
)

# 打印 Codex 的执行结果摘要
for item in response.output:
    if item.type == "message":
        print(f"[Codex 回复] {item.content[0].text}")

运行前需要确认的事项: - OPENAI_API_KEY 已设置。 - Codex 桌面客户端已登录并在目标 Mac 上运行。 - 目标 Mac 已在 Codex 设置中启用 "Locked Use"。 - computer_use 工具的 display_width/height 应匹配你 Mac 的实际分辨率。

如果你更习惯命令行,也可以直接用 Codex CLI 从 SSH 远程会话派活:

# 在远程机器上通过 CLI 给锁屏 Mac 上的 Codex 下指令
codex --task "打开 VS Code,编辑 config.yaml,把 debug 字段从 true 改为 false,保存并关闭"

安全边界与取舍

Locked Use 解决了"人不在电脑前"的问题,但也引入了新的考量:

维度 优势 需要注意
安全性 Apple 授权插件,临时解锁有行为约束 任何能操控 GUI 的代理都有误操作风险,锁屏不等于零风险
隐私 屏幕不亮,旁观者看不到操作内容 Codex 仍能"看见"屏幕,敏感应用需谨慎授权
可用性 不需要关闭自动锁屏,符合企业安全策略 部分企业可能仍不允许任何形式的锁屏远程操控
可靠性 任务完成后自动恢复锁屏 网络中断时任务可能卡在半完成状态,需要手动介入

实用建议清单:

  • ✅ 首次使用前,在解锁状态下测试同一任务,确认 Codex 能正确完成。
  • ✅ 只对低风险应用启用锁屏操控(终端、IDE、浏览器),避免对银行/支付类应用授权。
  • ✅ 任务描述尽量具体、步骤化,减少代理"自由发挥"的空间。
  • ✅ 关注 Codex 执行日志,确认临时解锁的起止时间与任务一致。
  • ❌ 不要在共享办公 Mac 上启用——其他用户登录时锁屏状态可能不同。
  • ❌ 不要让 Codex 在锁屏状态下执行涉及密码输入的操作。

锁屏代理这件事,技术上终于可行了,但"该不该用"的判断仍然取决于你的具体场景。对于开发者日常那些重复性本机操作,Locked Use 是一个真正省时间的工具;对于涉及敏感数据或不可逆操作的场景,手动介入依然是更稳妥的选择。


相关推荐