Since Codex CLI 0.157.0, an eligible interactive session starts a persistent background app-server daemon by default. The flag is still on in rust-v0.162.1, published 9 October 2026. This piece does not include a local run of Codex.
What shipped in 0.157.0
The 0.157.0 notes, published 25 September 2026 at 02:31 UTC, say the release “Enabled automatic background-server startup for eligible interactive sessions, with recovery choices when server settings are incompatible.” The changelog line is “#47179 Enable automatic daemon startup by default.” Pull request 47179 was merged on 22 September 2026. Its description says the change promotes daemon_auto_start to stable and enables it by default for eligible interactive launches, and that tests cover the default and --no-daemon.
In the 0.162.1 source, daemon_auto_start is a stable feature whose default_enabled field is true. The comment says it automatically starts “the shared local daemon for eligible interactive launches.” The notes and the source both limit that to eligible interactive launches.
What the issue reporter describes
Issue 48195 was opened on 25 September 2026 at 20:04 UTC by Yihua-Liu-1997, about CLI 0.157.0 installed with npm on Linux (WSL2). It was still open when its comments were checked at 05:37 UTC on 13 October. The reporter asks for the flag to be opt-in, default false, or at least for a prompt before it turns on.
The reporter’s account, not re-tested here:
- An interactive
codexsession startscodex app-server --managed-daemon, with no TTY. The process keeps running after Codex windows close, reparented to PID 1, untilcodex app-server daemon stopor a reboot. - It copies the platform package, about 374 MB in the reporter’s measurement (
codex,codex-code-mode-host, and bundledbwrap,zshandrg), into~/.codex/packages/app-server-daemon/releases/<version>/, and runs the daemon from that copy. - A detached updater,
codex app-server daemon pid-update-loop, checks for updates five minutes after start and then hourly, downloads new releases and restarts the backend. - The daemon keeps the environment of the session that started it, including
HTTPS_PROXY, so later sessions still use the first session’s proxy.
The 0.162.1 source matches the layout and the schedule, not the size. The package root is <Codex home>/packages/app-server-daemon, with a releases directory under it. The updater’s initial delay is five minutes (Duration::from_secs(5 * 60)), and the default update interval is 60 minutes. The CLI defines codex app-server daemon stop as “Stop the local app server daemon,” and a hidden pid-update-loop subcommand as the detached updater. The about-374 MB figure is the reporter’s. So is the note that daemon stop left the updater running: the reporter wrote that it was still alive 70 seconds later and had to be killed manually. A process-kill step is not a supported opt-out.
The opt-outs that match the source and the docs are these. The CLI reference documents codex features disable <feature> as the way to persistently disable a feature flag, and the feature key in source is daemon_auto_start, so the command is codex features disable daemon_auto_start. codex app-server daemon stop is the Stop subcommand. --no-daemon is a flag the 0.162.1 CLI parser accepts. The reporter adds that with the feature flag off, a new TUI session no longer spawns a daemon. That last sentence is the reporter’s result.
The configuration reference, fetched 13 October, does not list daemon_auto_start. The CLI reference documents the features subcommands and a separate codex remote-control daemon. It does not name this flag.
A second issue, and no maintainer reply
Issue 53547, “Daemon server leaks environment variables across sessions,” was opened on 13 October 2026 at 04:00 UTC by alexklibisz, on Codex CLI 0.162.1. It had no comments at 05:37 UTC and was still open. The reporter writes that the daemon picks up the environment variables of the first session that started it, and that those variables are then available to other unrelated sessions. The expected behavior in the same report is that the second session should not have those variables. The reporter calls that somewhere between a bug and a security issue, because project-specific variables can be sensitive.
The doctor JSON on the issue is the reporter’s machine. It lists a persistent background server at 0.162.1 and a feature-flag override daemon_auto_start=false. Those two lines are left as the reporter pasted them.
Neither issue’s comment list, at 05:37 UTC on 13 October, contained a comment from an account GitHub marked as a member, owner or collaborator. Issue 53547 had zero comments. Labels on 48195 were applied by github-actions. As of that check, OpenAI had not publicly responded on either issue.
A Hacker News thread titled “Codex CLI installs a persistent, self-updating background daemon by default” was posted at 18:29 UTC on 12 October and linked issue 48195. The Algolia record, fetched at 05:38 UTC on 13 October, showed 509 points.
The site’s 0.156 post already noted updating the local background server via /daemon, or bypassing it with --no-daemon. The 0.159 post does not cover this default. The change landed in 0.157.0, and the 0.162.1 source still enables it.
If you do not want the daemon, codex features disable daemon_auto_start persists the off switch, --no-daemon is per launch, and codex app-server daemon stop is the documented stop. The reporter says that stop did not stop the updater.

The Campfire
No commentsNobody has pulled up a log by this one yet. Be the first to say what you make of it.
Held for the desk. It appears after a look.