[Windows] Computer Use screenshots fail with 0x80070424 under CodexSandboxOffline; launch_app times out
Summary
On the current Windows desktop release, Computer Use can enumerate and activate existing windows and can send keyboard input, but it cannot capture screenshots or launch closed applications.
The Windows helper is spawned as CodexSandboxOffline. Windows has no CaptureService_* instance for that technical account, so Windows.Graphics.Capture fails even when the interactive user's capture service is running.
Environment
- Windows 11 x64, system component build
10.0.26100.8875 - ChatGPT/Codex Windows package:
26.803.5235.0 - Bundled Computer Use plugin:
26.803.41515 - Bundled
@oai/sky:0.6.2 - Computer Use target:
windows - Windows sandbox:
elevated sandbox_private_desktop = false- Computer Use setting Any App enabled
Microsoft Store reported no newer application package.
Screenshot reproduction
- Open Snipping Tool manually.
- Start a fresh
node_replsession and importskyfrom@oai/sky. - Call
list_windows()and select the returned Snipping Tool window. - Call
activate_window({ window }). - Call
get_window_state({ window, include_screenshot: true, include_text: true }).
Observed:
IGraphicsCaptureItemInterop.CreateForMonitor failed: The specified service does not exist as an installed service. (0x80070424)
list_windows() and activate_window() both succeed before the capture error.
Application launch reproduction
From a fresh Computer Use session:
await sky.launch_app({ app: "notepad.exe" });
Observed:
accessibility window-opened handler did not become ready
The same failure occurs with Calculator and with the full installed path to SnippingTool.exe. No target window is created.
Process and service evidence
The process ownership and session were inspected immediately after reproducing the capture error:
node_repl.exe owner=<interactive user> session=1
node.exe owner=CodexSandboxOffline session=1
codex-computer-use.exe owner=CodexSandboxOffline session=1
Windows contained only the interactive user's capture-service instance:
CaptureService_c99b8 Running Manual
There was no second CaptureService_* instance for CodexSandboxOffline.
Starting CaptureService_c99b8 through an elevated UAC-approved task succeeded, but a fresh Computer Use helper still returned the same 0x80070424 error. This indicates that the helper requires a per-user service instance for its own sandbox identity.
Checks and attempted remediations
- Verified that
CaptureServicetemplate exists and is set to demand start. - Verified
C:\Windows\System32\CaptureService.dllexists and has a valid Microsoft signature. - Re-registered
Microsoft.ScreenSketchsuccessfully; package status remainsOk. - Enabled ChatGPT Computer Use Any App permission.
- Temporarily tested the documented Windows
LetAppsAccessGraphicsCaptureProgrammatic = Force Allowdevice policy; it did not change the error and was fully reverted. - Manually started the interactive user's
CaptureService_*; it did not change the error. - Removed verified stale Computer Use helper processes and repeated the test in a fresh session; no change.
windows.sandbox = "unelevated"makes the Node kernel run as the interactive user, but the bundled runtime then cannot spawn the helper (spawn EPERM).sandbox_private_desktop = truefails to enumerate/control the real interactive desktop; compatibility desktop mode is required.- The Windows implementation in this package directly spawns
codex-computer-use.exe. The bundled native-pipe transport is present only under the macOS target.
Additional plugin/runtime mismatch
The installed Computer Use skill requires:
await sky.documentation("guidance")
but the installed @oai/sky object does not expose a documentation function. Its exported runtime surface contains the control methods but no documentation method.
Expected behavior
- The Windows Computer Use helper should run in a context that can use
Windows.Graphics.Capture, or the app should broker capture through a process associated with the interactive user. launch_app()should reliably observe and return after the new window is ready.- The bundled skill and
@oai/skyruntime should expose matching APIs.
Actual impact
Working:
- list installed/recent apps
- enumerate existing windows
- activate an existing window
- keyboard input and key chords in an existing window
Not working:
- screenshots / visual inspection
- safe coordinate-based clicking based on a captured image
- launching closed applications
- documentation API required by the bundled skill
There is no supported local workaround that restores full Computer Use while preserving the Windows sandbox.
2 Comments
same as me.
I can reproduce this exact issue on the same Windows app and Computer Use builds.
Additional evidence from a clean-reinstall test:
019fddec-7e4d-7c11-bd61-b957b2d554a526200.8973(Microsoft Windows NT 10.0.26200.0 x64)26.803.5235.026.803.41515@oai/sky:0.6.2list_windows()succeeds, while screenshot capture initially reproducedIGraphicsCaptureItemInterop.CreateForMonitor ... 0x80070424.%LOCALAPPDATA%\OpenAI\Codexruntime was moved aside. The app then created a fresh runtime; no old runtime data was restored.get_window_state()for either text or screenshot collection consistently returnsError: node_repl exec context not found.CreateProcessAsUserW failed: 5 (Access denied).SFC /scannowrepaired a Windows issue;DISM /Online /Cleanup-Image /RestoreHealthcompleted successfully, followed by a restart. The problem persisted.A redacted diagnostic package is attached below. It excludes credentials, tokens, browser data, router/network configuration,
.sandbox-secrets, full logs, and the fullconfig.toml.OpenAI-Computer-Use-diagnose-2026-08-09.zip
SHA-256:
2CF3B73B936D29CAB99F8E94C74FB12F7A9FB9EF6EBFB0582F1472D98F062B3BBecause this reproducible product defect consumed substantial ChatGPT Plus/Codex usage during repeated failed runs, reinstalls, restarts, and diagnostic attempts, I also request that OpenAI audit the usage associated with Feedback ID
019fddec-7e4d-7c11-bd61-b957b2d554a5and restore or credit all billable tokens attributable to this defect. I understand that cached input, regular input, output, and reasoning tokens may be accounted for differently; please calculate the appropriate credit from the server-side usage record rather than treating every token category as having the same rate. Please provide or associate a support case number and confirm any credit applied.