@openai/codex-sdk opens a visible codex.exe console window on Windows
What is the problem?
When using @openai/codex-sdk from a GUI/background app on Windows, starting a Codex task opens a visible black console window. The window title is the bundled native Codex binary path, for example:
E:\git\github\..\node_modules\@openai\codex-win32-x64\vendor\x86_64-pc-windows-msvc\codex\codex.exe
This appears to be the TypeScript SDK's direct codex.exe child process, not the separate PowerShell helper window tracked in other Windows issues.
Why this matters
@openai/codex-sdk is useful from Electron apps, editor integrations, background workers, and daemons. In those hosts, SDK calls should be able to run non-interactively without flashing or leaving a visible terminal window on the user's desktop.
Environment
- OS: Windows 10
- Host: Node/Electron background worker
- Observed with:
@openai/codex-sdk@0.129.0 - Latest checked:
@openai/codex-sdk@0.132.0 - Native binary package:
@openai/codex-win32-x64
Evidence
The latest published @openai/codex-sdk@0.132.0 still spawns the native binary without windowsHide:
const child = spawn(this.executablePath, commandArgs, {
env,
signal: args.signal
});
The command is the SDK's JSON exec path, so it is already non-interactive/stdin-stdout based. On Windows, Node will create a visible console window for a console subsystem executable unless the parent passes windowsHide: true.
Expected behavior
When the TypeScript SDK launches Codex in its non-interactive JSON exec mode on Windows, it should not create a visible console window.
Actual behavior
A visible black console window titled with the bundled codex.exe path appears while the task is running.
Suggested fix
Set windowsHide: true on the SDK's child_process.spawn call that launches this.executablePath, or expose a SDK option that allows hosts to pass it through. Since this SDK path uses exec --experimental-json with piped stdio, hiding the console seems like the expected default on Windows.
Related but distinct issues
- #18984 tracks PowerShell parser child windows spawned by native
codex.exe. - #20510 tracks long-lived PowerShell helper windows spawned by
codex.exeeven when the parent launches Codex hidden.
This issue is one level earlier: the TypeScript SDK currently launches codex.exe itself without windowsHide.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗