最近在用 AI 辅助编程写代码,特别是开启那种长时间运行的“Goal 模式”时,是不是经常遇到这种绝望的时刻?

眼看着进度条跑了快一个小时,屏幕突然一黑,再回来就看到一行冰红的报错:

stream disconnected before completion: stream closed before response.completed

最气人的是,整个 Session 直接“死机”了,怎么都不动,只能含泪 Ctrl+C 重开。

最近有朋友用 MacBook Air M2 跑 Codex CLI 和桌面版就踩了这个坑,本来以为是网络或者 Codex 服务器抽风,折腾了一圈才发现,其实多半是我们自己的电脑“自动节能”给断了后路。今天就来聊聊怎么排查和彻底解决这个断连问题。

为什么总是连着连着就断了?

首先,不要一看到“Stream disconnected”就觉得是软件 Bug 或者网线被拔了。在 macOS 上,特别是像 MacBook Air 这种注重续航的设备,系统的“保护欲”极强。

macOS 系统设置中的节能与锁定屏幕选项

macOS 系统设置中需重点检查的锁定屏幕与节能选项

如果这时候你拔了电源,或者只是放在那儿没动,macOS 就会判定你在“摸鱼”,然后开始执行它的一套节能策略:

终端执行 caffeinate 命令

使用终端命令 caffeinate 防止 Mac 休眠

  • 自动锁屏: 屏幕黑了。
  • 断网/断电(Power Nap): 某些网络连接可能会被挂起或切断。
  • App Throttling: 后台进程被降频甚至暂停。

Codex 这种基于流式传输(Stream)的 AI 编程工具,需要保持一个稳定的 TCP 长连接。一旦中间因为系统休眠导致网络接口“打个盹”,这个流就断了,服务器端以为你走了,客户端以为服务器挂了,于是两边都凉了。

macOS 隐私与安全性中的自动化权限设置

检查 macOS 隐私设置中 App 的自动化权限

怎么排查?这三步走起

既然知道了大概率是“休眠”惹的祸,我们就得把电脑的“睡眠开关”给卡住。

1. 系统层面的“防睡眠”设置

很多朋友觉得自己已经在设置里把“防止自动睡眠”勾选了,为什么还断?

请仔细检查 macOS 的“锁定屏幕”和“节能”设置:

  • 锁定屏幕: 在系统设置里,看看“使用电池/接电源时关闭显示器”的时间。如果设置成 5 分钟或 10 分钟,那你跑个长任务肯定会断。建议在跑大模型任务时,手动设置成“从不”。
  • 节能模式(Energy Saver): 如果你是在用 MacBook Series 且拔掉了电源,系统大概率会激进地节能。这里有个小技巧,可以使用终端命令 caffeinate 来临时禁止 Mac 休眠。

在跑 Codex 任务前,打开终端输入: bash caffeinate -d -s & 这个命令会让显示器和系统保持唤醒,直到任务结束或者你手动关掉终端。

2. 检查 Codex 桌面端的权限

如果你用的是桌面版 App,光设置系统还不够,App 自身的权限也得给足。

有些 AI 工具为了保证响应速度,会在系统层级申请“防止休眠”的权限。如果之前误点了“拒绝”,那系统一旦锁屏,App 也就跟着“睡”了。

  • 前往 macOS 设置 -> 隐私与安全性 -> 自动化。
  • 找到 Codex 相关的 App,检查是否允许其控制锁屏或访问全权。
  • 同时,查看 App 内部的设置页面,确认是否真的开启了“后台运行”或“防止系统休眠”的开关。

3. 终极避坑:插电跑!

这点虽然听起来像废话,但实测中最稳的情况永远是:接通电源 + 关闭自动锁屏

现代 macOS 在拔电状态下,为了保护电池,网络策略非常激进。对于 Codex 这种动辄需要推理半小时甚至更久的任务,插电不仅能防止 CPU/GPU 降频导致推理变慢,也是维持网络连接稳定最直接的办法。

遇到断连怎么补救?

如果不幸还是断开了,先别急着关软件。

  • 先 Check 网络: 是不是 WiFi 自动切换了频道?或者开了 VPN 掉线了?
  • 查看 Session 状态: 现在的 Codex 桌面端通常有上下文记忆。如果是单纯的网络中断,重新点击发送或者新建一个对话(有时可以继承之前的 Context),可能比直接重启软件要好。
  • 实在不行换 Client: 如果 CLI 频繁报错,尝试切到桌面版看看;反之亦然。有时候不同客户端的连接池处理逻辑略有不同,能绕过某些偶发问题。

写在最后

搞开发最怕的就是这种“非代码层面”的干扰。MacBook 确实好用,但有时候它的“贴心”节能功能反而是我们生产力路上的绊脚石。

下次跑 Codex 之前,记得给它“续上一杯咖啡”(插电),再告诉它“别睡”(关闭自动锁屏),希望能让大家的开发体验丝滑不少!

标签: none

AI Skills Smart Station on Nick Launches

评论已关闭