[Windows] Computer Use list_windows/list_apps fail with EnumWindows 0x80070003 when interrupt marker path is absent (@oai/sky 0.6.2)
What version of the Codex App are you using (From “About Codex” dialog)?
26.803.5235.0
What subscription do you have?
ChatGPT account; exact tier not disclosed (failure is local/native and reproduces before any model-dependent behavior)
What platform is your computer?
Microsoft Windows NT 10.0.26200.0 x64 (Windows 11 25H2)
What issue are you seeing?
Computer Use initializes successfully, but both sky.list_windows() and sky.list_apps() fail immediately on Windows with:
EnumWindows failed: The system cannot find the path specified. (0x80070003)
This still reproduces after repairing/resetting/reinstalling the Codex App, rebooting Windows, deleting the relocated cua_node runtime, and letting the app rebuild it from the signed bundled runtime.
A short Microsoft Process Monitor trace identified the last failing filesystem operation from codex-computer-use.exe before the reported error (PII redacted):
CreateFile %USERPROFILE%\.codex\cache\computer-use\interrupts\<session_id>\<turn_id>
Desired Access: Read Attributes
Disposition: Open
Result: PATH NOT FOUND
Creating only the missing <session_id> directory changes the reported failure to 0x80070002 (FILE_NOT_FOUND). Creating the leaf <turn_id> file causes the helper to return the expected “Computer Use was stopped by the user with the physical Escape key” message, confirming that the leaf is an interrupt marker and should normally be absent. The temporary marker was then removed.
A separate native P/Invoke probe successfully enumerated 275 top-level windows, and no per-window process-image query returned error 2 or 3. This indicates that Windows EnumWindows itself is working and the missing interrupt marker error is being surfaced as an EnumWindows failure. No diagnostic files are attached because the full trace contained unrelated system activity.
What steps can reproduce the bug?
- On Windows, open the Codex App and start a task that uses the bundled Computer Use skill.
- Initialize the supported runtime:
``js``
const { sky } = await import("@oai/sky");
- Call either:
``js``
await sky.list_windows();
// or
await sky.list_apps();
- Observe
EnumWindows failed ... 0x80070003when the per-session interrupt-marker directory does not exist. If the session directory is created but the per-turn marker is correctly absent, observe0x80070002.
The failure reproduces with a freshly rebuilt, signed bundled runtime.
What is the expected behavior?
list_windows() and list_apps() should return their normal arrays. A missing per-turn interrupt marker should mean “not interrupted” and must not abort window enumeration or leak ERROR_FILE_NOT_FOUND / ERROR_PATH_NOT_FOUND as an EnumWindows failure.
Additional information
Environment details:
- Codex App:
26.803.5235.0 - Windows:
Microsoft Windows NT 10.0.26200.0 x64(Windows 11 25H2) - Bundled runtime archive:
cua-node-0.0.6-20260723162306-088049353ddc-windows-x64.zip @oai/sky:0.6.2@oai/cua:0.1.1codex-computer-use.exeAuthenticode status: Valid (Microsoft/OpenAI-distributed bundled binary)
Regression signal: Computer Use worked on the same PC on 2026-08-04 with an earlier bundled runtime. The current relocated runtime was first provisioned on 2026-08-07, shortly before the first observed failure. Reboot, app repair/reset/reinstall, and a clean runtime relocation do not help because they reproduce the same bundled versions.
No exact duplicate was found by searching the issue tracker for EnumWindows failed, cache/computer-use/interrupts, and 0x80070003.
A likely fix area is the interrupt-marker existence check: treat ERROR_FILE_NOT_FOUND and ERROR_PATH_NOT_FOUND as “not interrupted” and avoid propagating that status as the EnumWindows error.
6 Comments
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
Additional reproduction from another Windows Codex Desktop installation:
26.803.41515cua_noderuntime hash:f1bf3cd3a5929acd@oai/skyimports successfully and the native helper responds throughhelper_transport.jssky.list_windows()andsky.list_apps()fail immediately with:Resetting the persistent Node REPL kernel, re-importing
@oai/sky, and retrying the lightweight enumeration calls does not change the result. The bundledcodex-computer-use.exeexists at the expected runtime location, so this is not a missing-helper-binary case. No user paths or account details are included here.This matches the reported interrupt-marker/path handling regression and fully blocks Computer Use before any target application can be selected.
I can reproduce this issue as well on Windows.
26.803.41515EnumWindows failed: The system cannot find the path specified. (0x80070003)list_apps()andlist_windows()fail consistently.This appears consistent with the regression reported in this issue.
Independent reproduction on another Windows installation:
26.803.5235.010.0.26200.8973x6426.803.41515cua_noderuntime:f1bf3cd3a5929acd@oai/sky:0.6.2sky.list_apps()andsky.list_windows()fail immediately before target selection with:This installation reproduces the
FILE_NOT_FOUNDvariant described in the report, consistent with the parent interrupt directory existing while the per-turn marker is correctly absent.sky.documentationis also missing from the loaded API even though the current bundled skill requires it.The failure began after Computer Use had previously worked on this same PC. It persists after:
No target application is involved; enumeration fails globally before any application can be selected.
Please treat missing interrupt-marker
ERROR_FILE_NOT_FOUND/ERROR_PATH_NOT_FOUNDas “not interrupted,” and avoid leaking that stale Win32 status into the laterEnumWindowsresult.Additional reproduction from the environment reported in #37734:
Microsoft Windows NT 10.0.26100.0 x64(Windows 11 24H2)26.803.5235.026.803.41515@oai/skyimports successfully and exposes the Windows action methods.await sky.list_windows()fails repeatedly withEnumWindows failed: The system cannot find the path specified. (0x80070003).await sky.get_window({ id: 0 })fails with the same error.sky.documentationis absent from the exported API even though the bundled Computer Use skill references it.No mouse, keyboard, or window-management input was sent. This independently confirms the same regression on Windows build 26100; I am closing #37734 as a duplicate of this issue.
Confirmed that this remains reproducible after provisioning the newer runtime from the current Windows Codex app:
26.818.4152.026200cua_nodearchive:0.0.8(20260817223725-7efba775c041-pr-1300023)@oai/sky:0.6.17-202608171537-pr-1300023-7efba775c041The earlier app-owned native-pipe configuration was removed, so the bundled
codex-computer-use.exenow self-launches successfully from the newly provisioned runtime. However,await sky.list_apps()still fails immediately with:The result persists after a full Codex restart. This confirms that the interrupt-marker/path regression is not limited to
@oai/sky 0.6.2and remains present in the0.6.17runtime. I did not create the leaf interrupt marker because that would correctly be interpreted as an Escape/interruption signal.