Skip to content

[Bug] macOS 3.14.3: computer-use 桌面控制恒不可用——宿主未注入 ZCODE_CUA_PERMISSION_BROKER_SOCKET、helper 从未拉起,node_repl bootstrap 恒报 unavailable(附完整证据链) #825

Description

@leolee1919

环境 · Environment

  • ZCode 桌面版 3.14.3(3.14.3.7762),macOS(Apple Silicon)
  • 插件:computer-use 0.6.3、node-repl-host 0.6.0
  • cua-helper 3.12.3(bundled,已安装到 ~/.zcode/computer-use/,meta 显示 source: bundled:zcode-app)

现象 · Symptom

跨多个版本、5 个不同日期的会话(09-18 / 09-19 / 09-21 / 09-25 / 09-26)恒现:

  1. 工具表从不出现 mcp__computer-use__* 系列 30 个工具(09-18/19 即如此);
  2. 从 09-21 起,按官方技能引导在 node_repl 内执行 setupComputerUseRuntime() 恒报:
    Computer Use is unavailable for this node_repl session(09-21/25/26 三次一字不差);
  3. 同一 node_repl 会话内 Browser Use(IAB)完全正常,说明 node_repl 服务本身健康,仅 CUA 后端未装配。

根因定位 · Root cause(本机代码级证据)

  1. 报错点在 node-repl-host dist/mcp/server.js 的 cua-bridge assertAvailable():仅当 input2.broker 为空时抛出该错误(不是权限拒绝,也不是子代理限制)。
  2. broker 存在的唯一前提是 captureComputerUseRuntimeFromEnvironment() 能从进程环境读到 ZCODE_CUA_PERMISSION_BROKER_SOCKET,缺失即返回 undefined,之后没有任何路径能再补上。
  3. 本机实测该 env 缺失:启动器与捆绑助手路径都注入了(ZCODE_CUA_LAUNCHER_PID、ZCODE_CUA_BUNDLED_HELPER_APP_PATH),唯独没有 SOCKET 变量。
  4. 物理证据:socket 目录 /tmp/zcode-cua-<uid>/ 不存在;helper 无进程在跑;~/.zcode/computer-use/logs/ 目录不存在(连 helper 的退出日志都没有)——说明本开机周期内宿主从未尝试或从未成功拉起过 helper。
  5. 死锁:MCP 侧其实内置了兜底 ensureStandaloneHelperLaunched()(按需安装并拉起 helper),但它排在上述 env 闸之后——env 缺失时这段兜底永不可达;宿主侧又没有完成「拉起 helper → socket 落地 → 把 socket 路径注入 MCP 子进程 env」这条链。两头互相等待,CUA 永远装配不起来。
  6. 已排除:helper 二进制架构正常(arm64 Mach-O);xcrun lipo 经 Command Line Tools 调用正常([Bug] macOS 未同意 Xcode license 时「电脑操作」启用失败:lipo 架构校验 exit 69,且应用日志无任何记录 #655 的 exit 69 场景未复现);不是 TCC 权限弹窗未点(流程根本没走到权限一步)。

关联但不重复 · Related but distinct

复现 · Repro

必现(Always)。macOS 上任意会话让 agent 走官方 computer-use 技能引导即可复现;宿主重启后新会话依旧。

期望 · Expected

  1. 宿主在启动或首次 CUA 需求时拉起 helper,并把 ZCODE_CUA_PERMISSION_BROKER_SOCKET 注入 MCP 子进程 env;
  2. 或者:MCP 侧允许 env 缺失时直接走 ensureStandaloneHelperLaunched 兜底(把兜底挪到 env 闸之前);
  3. 至少:宿主侧装配失败时写入可发现的日志/状态位,node_repl 报错附排查指引——目前零日志,用户完全无从下手。

严重程度

阻塞使用(桌面/原生 App 自动化整条能力不可用;网页类 IAB 不受影响)。

Activity

  1. github-actions commented on Sep 26, 2026

    @github-actions

    👋 感谢你的反馈,我们已经收到。

    • 维护者看到后会尽快回复你。
    • 状态保持为 status: 待评估,你可以随时补充信息。
    • 信息不全时我们会打上 needs: 更多信息 标签并 @ 你。

    👋 Thanks — we've received your issue.

    • A maintainer will get back to you as soon as we can.
    • Status stays at status: 待评估 (Triage); feel free to add context.
    • If we need more details, we'll add needs: 更多信息 and ping you.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions