Codex Desktop: Locked Computer Use hangs on macOS 26.6; SkyComputerUseService spins at high CPU
What version of the Codex App are you using?
Codex Desktop 26.601.21317 / build 3511
What subscription do you have?
Not specified
What platform is your computer?
macOS 26.6 build 25G5028f, Apple Silicon / arm64
Component
Codex Desktop app, Computer Use, Locked Computer Use / lock-screen operation
Summary
Locked Computer Use hangs when attempting to inspect Finder while the Mac is locked. The same Computer Use path works while unlocked after a full reboot. During the locked attempt, SkyComputerUseService stays alive but spins at high CPU with a large memory footprint, and a sample shows a recursive-looking stack in SkyComputerUseService.
This does not look like a normal macOS permission/setup failure: Accessibility and Screen Recording are granted, the Computer Use authorization plugin is installed, the lock-screen authorization rule is registered, and Computer Use works while unlocked.
This is related to #24086, but not an exact duplicate: that report returns cgWindowNotFound on a Mac mini M4 + Studio Display, while this report hangs indefinitely on a MacBook Pro built-in display and shows a high-CPU recursive stack in SkyComputerUseService.
Expected behavior
When Locked Computer Use is enabled and the Mac is locked, Codex should be able to continue the Computer Use flow, either by using the lock-screen authorization path or by returning a clear error. It should not hang indefinitely or leave SkyComputerUseService spinning.
Actual behavior
get_app_state for Finder succeeds while unlocked, including screenshot and accessibility tree. After locking the screen, the same get_app_state request never returns. After about two minutes:
- macOS confirms the session is locked.
SkyComputerUseServiceis consuming about 38% CPU.SkyComputerUseServicehas about 1.4 GB physical footprint / about 1.5 GB RSS.- Killing
SkyComputerUseServicecauses the pending MCP request to returnisError: truewithremoteConnection.
Clean repro after full reboot
- Fully reboot the Mac.
- Launch Codex Desktop.
- Confirm Computer Use works while unlocked by calling
get_app_statefor Finder. - Lock the Mac.
- From a mobile/remote continuation, request the same Finder
get_app_statethrough Computer Use. - Wait more than two minutes.
Observed: the request hangs indefinitely until SkyComputerUseService is killed.
Verified local state
- Codex Desktop:
26.601.21317/ build3511. - Computer Use helper app:
com.openai.sky.CUAService, version1.0, build799. - Computer Use installer status:
OK: installed
- Locked-session state during the failed request:
IOConsoleLocked = Yes
CGSSessionScreenIsLocked = Yes
- Computer Use worked while unlocked immediately before locking:
Computer Use state (CUA App Version: 799)
App=/System/Library/CoreServices/Finder.app/ (bundleID com.apple.finder, ...)
Window: "Desktop", App: Finder.
- During the locked hang:
SkyComputerUseService: ~38% CPU, ~1.4 GB physical footprint
Sample evidence
The post-reboot sample shows a repeated frame in SkyComputerUseService:
Process: SkyComputerUseService
Identifier: com.openai.sky.CUAService
Version: 1.0 (799)
Code Type: ARM64
OS Version: macOS 26.6 (25G5028f)
Physical footprint: 1.4G
Thread: com.apple.root.default-qos.cooperative
...
??? (in SkyComputerUseService) load address ... + 0x58fa48
??? (in SkyComputerUseService) load address ... + 0x58fa48
??? (in SkyComputerUseService) load address ... + 0x58fa48
...
I can provide the full sample output if useful. I have not attached it initially to avoid posting a large diagnostic file publicly before maintainers ask for it.
Earlier pre-reboot signal
Before rebooting, a locked attempt had the same user-visible behavior and also produced a log storm:
SkyComputerUseService: Unable to find display with ID 1.
UIElementTree<TransformedUIElement> log0060 201 200
That earlier run produced millions of repeated log0060 201 200 entries over a few minutes. The post-reboot run reproduced the hang/high-CPU/recursive-stack behavior, but did not reproduce the same log storm.
Why this looks like a bug rather than local settings
- Finder
get_app_statesucceeds while unlocked after a clean reboot. - The Mac is truly locked during the failure.
- The Computer Use authorization plugin reports installed.
- The helper process is alive and reachable before lock.
- No configuration profiles are installed.
- Lock Screen setting was changed to require password immediately, and the failure still reproduces.
- The failure occurs as a hung request with high CPU and a recursive
SkyComputerUseServicestack, not as a TCC denial or missing-plugin error.
9 Comments
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
Adding Codex app /feedback ID for internal correlation:
019e932c-a888-7df0-9f8a-936d3c3742b0Update after today's Codex/Computer Use update: this still reproduces on Codex Desktop
26.602.30954/ build3575with Computer Use1.0 (809)on macOS26.6 (25G5028f).Retest result:
get_app_statesucceeds on Computer Use809.get_app_statestill times out after 120 seconds.IOConsoleLocked = Yes,CGSSessionScreenIsLocked = Yes.SkyComputerUseServiceagain spun hot during the hang: about35.7%CPU with1.3Gphysical footprint.799offset+0x58fa48to build809offset+0x5f20b4.log0060 201 200/Unable to find display with ID 1log storm.I captured a new full
sampleduring the build809repro and can provide it if useful. I have not attached it initially to avoid posting a large diagnostic file publicly before maintainers ask for it.Update after Codex Desktop
26.602.71036/ build3685:Computer Use helper is still
1.0 (809), but the locked failure mode changed materially.Additional context: the Mac under test is running macOS 27 developer beta 1.
Retest result:
get_app_statesucceeds.get_app_stateno longer hangs or spinsSkyComputerUseService.Computer Use server error -10005: cgWindowNotFound.IOConsoleLocked = Yes,CGSSessionScreenIsLocked = Yes.cgWindowNotFound.SkyComputerUseServiceremains healthy afterward, around0.0-0.1%CPU and about50-65 MBRSS.log0060storm or “Unable to find display” log in these runs.So the runaway CPU/memory hang appears resolved or avoided in this app build, but Locked Computer Use still fails while locked.
Reporter-side update after additional local troubleshooting.
Environment now:
26.609.30741/ build38081.0build80926A5353qI found and corrected two local mismatches before retesting:
CodexComputerUseAuthorizationPlugin.bundlewas still build799while the bundled Computer Use bits were build809. I refreshed it using the bundled installer, and the installed auth plugin is now build809.defaults read com.apple.screensaver askForPasswordDelaywas14400even though the GUI had shown “Immediately” earlier. I setaskForPassword=1andaskForPasswordDelay=0, then rebooted.I also tested the hidden Guardian app permission hypothesis:
CUALockScreenGuardian.app/com.openai.sky.CUAService.guardianto Accessibility and Screen & System Audio Recording in System Settings.auth_value=2for Accessibility and ScreenCapture for bothcom.openai.sky.CUAServiceandcom.openai.sky.CUAService.guardian. The main service also has Full Disk Access.Retest result after reboot and those permission changes:
get_app_statesucceeds.get_app_state("loginwindow")succeeds and can read the lock screen/password field, so locked UI access is not completely unavailable.get_app_statestill times out after 120s.IOConsoleLocked = Yes,CGSSessionScreenIsLocked = Yes.SkyComputerUseServiceis hot again at roughly39%CPU, with sample physical footprint around1.2G.SkyComputerUseService1.0 (809), macOS27.0 (26A5353q), key thread incompleteTask(swift::AsyncContext*, swift::SwiftError*)oncom.apple.root.default-qos.cooperative, with repeated recursive-looking frames at service image offset0x5f20b4(load address ... + 0x5f20b4).Additional methodology/app-target check:
IOConsoleLocked = Yes/CGSSessionScreenIsLocked = Yes.get_app_statefailed immediately withComputer Use server error -10005: cgWindowNotFound.get_app_statealso failed immediately withComputer Use server error -10005: cgWindowNotFound.loginwindowget_app_statestill succeeded and returned a lock-screen screenshot/UI tree.get_app_statethen hung for the full 120s and leftSkyComputerUseServicespinning again, about38%CPU with sample physical footprint around1.1G.0x5f20b4undercompleteTask(swift::AsyncContext*, swift::SwiftError*).Conclusion from my side: the stale auth plugin, password-delay setting, reboot state, missing Guardian Accessibility/ScreenCapture permissions, and Finder-specific targeting do not appear to explain the locked-session failure. Normal user-session apps behind the lock screen fail fast with
cgWindowNotFound; Finder appears to be a separate hang/runaway path on top of that broader locked-app failure. Happy to provide the full samples privately if useful.Reporter-side update after Codex Desktop
26.611.61049/ build3996and Computer Use build810.Environment now:
26.611.61049/ build39961.0build810CUALockScreenGuardian.appbuild810CodexComputerUseAuthorizationPlugin.bundlebuild810CodexComputerUseAuthorizationPlugin.bundlebuild81026A5353qImportant setup note: immediately after this Codex update, the installed auth plugin was still build
809while the bundled Computer Use bits were build810. Before retesting, I refreshed the installed auth plugin using the bundled installer. It reported success, and the installed plugin now matches build810.Local settings/permission state before this retest:
askForPassword = 1askForPasswordDelay = 0system.login.screensaverincludescom.openai.sky.CUAService.AuthorizationPlugin.remoteanduse-login-window-ui.auth_value=2for:kTCCServiceAccessibility/com.openai.sky.CUAServicekTCCServiceScreenCapture/com.openai.sky.CUAServicekTCCServiceSystemPolicyAllFiles/com.openai.sky.CUAServicekTCCServiceAccessibility/com.openai.sky.CUAService.guardiankTCCServiceScreenCapture/com.openai.sky.CUAService.guardianRetest method:
SkyComputerUseServiceafter refreshing the auth plugin.get_app_stateboth succeed on Computer Use build810.IOConsoleLocked = Yes,CGSSessionScreenIsLocked = Yes.Locked retest result:
get_app_statefailed fast withComputer Use server error -10005: cgWindowNotFound.get_app_statefailed fast withComputer Use server error -10005: cgWindowNotFound.loginwindowget_app_statesucceeded and returned the lock-screen screenshot/UI tree, including the password field.get_app_statenow also failed fast withComputer Use server error -10005: cgWindowNotFound.SkyComputerUseServicestayed healthy: roughly0.0-0.1%CPU and about75-90 MBRSS in the checks I ran after the test.Interpretation from my side:
SkyComputerUseService/ recursive0x5f20b4runaway path appears fixed or at least avoided in the current app/helper combination. Finder now behaves like Calculator and TextEdit: fastcgWindowNotFoundrather than a service hang.810, this retest should not be affected by the stale-plugin mismatch that existed briefly after the update.Retested after Codex Desktop
26.616.30709/ build4108with Computer Use, Guardian, and installed auth plugin all refreshed to build829: locked Calculator/TextEdit/Finder still fail fast withComputer Use server error -10005: cgWindowNotFound, while lockedloginwindowstill succeeds. The earlier Finder 120s hang/runawaySkyComputerUseServicepath did not recur in this retest, but locked user-session app access remains broken.Some good news and some bad news.
tl;dr locked computer use is working now! But it did something that is not so great, security-wise.
—
Security-relevant update after today's merged ChatGPT/Codex release: Locked Computer Use is now functionally working, but this retest exposed a serious guardian/relock failure.
Environment:
26.707.30751, build5018CUALockScreenGuardian26.708.1000362, build100036227.0 (26A5378j)screenLock delay is immediate,askForPassword=1,askForPasswordDelay=0Observed sequence:
IOConsoleLocked=YesandCGSSessionScreenIsLocked=Yes.CUALockScreenGuardian, and the physical display showed “Codex is Using Your Mac.” The guardian overlay was visibly duplicated several times.212 ms, and Dictionary launched fresh while locked.This was not caused by the old password-delay setting; the immediate-password policy was confirmed immediately after the incident. The observed timing suggests a possible teardown/relock failure: the user session was auto-unlocked behind the guardian, then the guardian disappeared without the real macOS lock being restored. That is an inference, not a confirmed root cause.
Additional observations:
cgWindowNotFoundand Finder hang are resolved in this build.SkyComputerUseServicestayed near52 MBRSS, but used roughly20-22%CPU while the guardian was active.609repeatedVTDecompressionSessionDecodeFrameWithOptions/kVTParameterErrlog events.10467799019e932c-a888-7df0-9f8a-936d3c3742b0Because the Mac became physically accessible while unattended, I am treating Locked Access as unsafe to use until this is investigated.
Update after installing the latest ChatGPT/Codex and Computer Use builds: I can no longer reproduce either the original locked-use failure or the guardian/relock security regression, and I am happy to consider this fixed on my machine.
Environment:
26.707.62119, build5211CUALockScreenGuardian26.710.1000387, build100038727.0 (26A5378j)askForPassword=1,askForPasswordDelay=0Fresh controlled retest:
415 ms.468 ms, and accepted a real interaction by opening the Go menu.IOConsoleLocked=Yes); the physical display returned to the normal lock screen/screensaver.cgWindowNotFound,UIElementTree ... log0060 201 200, or prior video-decompression error signatures.This was one controlled retest, but it completed the full functional and relock/authentication flow cleanly. Locked Computer Use is now working as expected on this configuration.