> ## Content Index
> Fetch the complete content index at: https://tbbbk.com/llms.txt
> Use this file to discover other available public pages before exploring further.

# Codex CLI 在 Windows 上报错、升级后还是旧版本？后台 daemon 的 4 种修法（0.164 实测）
- URL: https://tbbbk.com/codex-windows-daemon-fix/
- Published: 2026-10-24T04:24:48.000Z
- Updated: 2026-10-24T04:24:48.000Z
- Description: Codex 后台 daemon 在 Windows 上的 4 种常见问题和修法，命令和输出都在 0.157 / 0.164 上实测过。
- Author: TuBaiBai
- Tags: AI 编程工具, Codex

Codex CLI 从 0.157 开始，默认会在后台起一个 daemon（app-server）。这东西在 Windows 上问题特别多：终端窗口一直闪、启动报错、升级完还在用旧版本、删文件夹提示被占用……GitHub 上相关的 issue 一个就有一百多条评论，L 站也有人在问。

我在 Win11 上装了 0.157 和 0.164 两个版本，把常见的几种情况都跑了一遍。下面的命令和输出都是实测的。

## 先看一眼 daemon 是什么状态

```
codex app-server daemon version
```

正常的话会返回一段 JSON，重点看最后两个字段：

```
{"status":"running", ... "cliVersion":"0.164.0","appServerVersion":"0.164.0"}
```

`cliVersion` 是你敲命令用的 Codex 版本，`appServerVersion` 是后台 daemon 的版本。**两个不一样，基本就是问题所在。**

如果 daemon 没在跑，会直接报连不上：

```
Error: failed to connect to ...\app-server-control\app-server-control.sock
Caused by:
    A socket operation encountered a dead network. (os error 10050)
```

这个本身不是错，说明 daemon 没启动而已。

## 情况一：升级完 Codex，daemon 还是旧版本

这是最常见、也是现有中文教程基本没提到的一个。

原因是 daemon 用的不是你 npm 装的那个 Codex，它会把自己**单独复制一份**到 `~/.codex/packages/app-server-daemon` 里跑。所以你 `npm i -g @openai/codex` 升到新版后，后台跑的还是老的那份，两边版本对不上，各种奇怪的报错就来了。

修法是让 daemon 换成你当前 CLI 的版本，再重启：

```
codex app-server daemon update --from-cli --yes
codex app-server daemon restart
```

我用 0.157 起的 daemon、0.164 的 CLI 实测，第一条会提示：

```
Replace installed daemon version 0.157.0 with CLI version 0.164.0 ...
{"status":"updated", ... "installedVersion":"0.164.0", ...}
```

restart 之后再 `version` 一下，两个版本都变成 0.164.0 就好了。

有个小坑：`--from-cli` 会把 daemon **钉死**在这个版本上，输出里写得很清楚。以后想让它恢复自动更新，跑一次不带参数的：

```
codex app-server daemon update
```

## 情况二：daemon 卡死、删文件夹提示被占用

网上流传的办法是删掉 `~/.codex` 下面的 `app-server-control` 和 `app-server-daemon` 两个目录，让它重新生成。这招有用，但我实测踩了两个坑：

**坑 1：先 stop 也不一定停干净。** `codex app-server daemon stop` 之后，任务管理器里还留着一个 `codex.exe`，命令行是 `app-server daemon pid-update-loop`。它占着目录，这时候删就会提示文件被占用。要先在任务管理器里把残留的 codex.exe 结束掉，或者用 PowerShell：

```
Get-Process codex | Stop-Process -Force
```

注意这会把所有 codex 进程都关掉，正在跑的会话也会断。

**坑 2：别只删 packages 目录。** 我试过只删 `packages`，结果再启动直接报：

```
Error: daemon executable not found at ...\packages\app-server-daemon\current\bin\codex.exe;
repair the existing installation, or run `codex app-server daemon start` to install a missing daemon
```

因为 `app-server-daemon` 里还记着旧的安装信息。所以要删就三个一起删：

```
codex app-server daemon stop
Get-Process codex -ErrorAction SilentlyContinue | Stop-Process -Force
Remove-Item -Recurse -Force "$HOME\.codex\app-server-control", "$HOME\.codex\app-server-daemon", "$HOME\.codex\packages"
```

然后 `codex app-server daemon start`，它会重新装一份：

```
Installing daemon from CLI version 0.164.0 into ...\packages/app-server-daemon...
```

只删这三个目录，你的登录信息、配置和历史会话都不受影响。

## 情况三：不想要这个 daemon，直接关掉

如果你只是在终端里用 Codex，不用桌面版和远程控制，可以把自动启动关了：

```
codex features disable daemon_auto_start
```

它会往 `~/.codex/config.toml` 里写：

```
[features]
daemon_auto_start = false
```

网上有文章说是写 `[daemon]` 下面的 `auto_start = false`，**这个写法是错的**。我实测写进去之后跑 `codex features list`，`daemon_auto_start` 还是 `true`，根本没生效。用上面那条命令最稳，不容易写错。

改完可以确认一下：

```
codex features list | findstr daemon
```

显示 `daemon_auto_start stable false` 就对了。之前已经起来的 daemon 记得 `stop` 一下。

## 情况四：临时不走 daemon

不想改配置，只是这一次绕开它，加个参数就行：

```
codex --no-daemon
```

官方的说明是"不使用共享的后台服务，即使它已经在运行"。V2EX 上有人用 `--sandbox danger-full-access --no-daemon` 一起绕，其实问题出在 daemon，单加 `--no-daemon` 就够了，没必要把沙箱也关掉，`danger-full-access` 等于让 Codex 随便改你的系统，能不开就别开。

## 我没复现出来的

两个问题我这台机器上没遇到，放链接给需要的朋友参考：

- 终端窗口一直闪：[openai/codex#48074](https://github.com/openai/codex/issues/48074)
- 提示要从非管理员终端启动 daemon：[openai/codex#48043](https://github.com/openai/codex/issues/48043)，相关讨论里有人指出根因是 CLI 和 daemon 版本不一致，可以先按情况一试试

## 总结

遇到 Codex 在 Windows 上各种怪问题，按这个顺序来：先 `daemon version` 看版本对不对得上，对不上就 update --from-cli 再 restart；还不行就停掉、杀残留进程、删三个目录重装；实在不想折腾，`features disable daemon_auto_start` 关掉了事。

Codex 别的问题可以看我之前写的 [一直卡在 Thinking / Reconnecting 的排错](https://tbbbk.com/codex-thinking-reconnecting-websocket-sse-troubleshooting/) 和 [Codex CLI 安装教程](https://tbbbk.com/openai-codex-cli-install-subscription-usage-china-guide-2026/)。