Appshots hotkey registers but never fires on macOS 26.5

Open 💬 4 comments Opened May 22, 2026 by hida1211

What version of the Codex App are you using?

Codex App: 26.519.31651 (CFBundleVersion 3017)
Computer Use helper: com.openai.sky.CUAService, version 1.0 build 799
Computer Use client: com.openai.sky.CUAService.cli, version 1.0 build 799

What platform is your computer?

macOS 26.5 (25F71), Apple Silicon / arm64

What issue are you seeing?

The Appshots hotkey appears to register successfully, but pressing the configured hotkey does not trigger Appshots.

This seems different from #23992. In #23992, the log contains Appshot hotkey pressed and the failure happens later during capture. In this case, Appshot hotkey pressed / Dispatching appshot hotkey never appears after pressing the hotkey.

Expected behavior

Pressing the configured Appshots hotkey should trigger Appshots and attach an appshot to the current Codex thread.

Actual behavior

Nothing is attached. The Codex UI only reacts as if modifier keys are being held, e.g. the “New chat” button changes/flickers to “Quick chat”, but Appshots does not start.

Reproduction steps

  1. Open Codex App.
  2. Open Settings > Appshots.
  3. Set Appshots hotkey to DoubleShift.
  4. Restart Codex.
  5. Press both Shift keys simultaneously.
  6. Observe that Appshots does not trigger.
  7. Repeat with DoubleCommand.
  8. Observe that Appshots still does not trigger.

Codex log evidence

Codex logs show that the hotkey is registered:

Registering appshot hotkey hotkey=DoubleShift
Registered appshot hotkey hotkey=DoubleShift
Registering appshot hotkey hotkey=DoubleCommand
Registered appshot hotkey hotkey=DoubleCommand
Registering appshot hotkey hotkey=DoubleShift
Registered appshot hotkey hotkey=DoubleShift

However, after pressing the configured hotkey, the log never contains:

Appshot hotkey pressed
Dispatching appshot hotkey

Additional diagnostic result

Running the bundled monitor directly:

/Applications/Codex.app/Contents/Resources/native/bare-modifier-monitor --key DoubleShift --immediate

prints:

ready

but pressing both Shift keys does not produce any further output.

Earlier checks with DoubleCommand also did not detect the hotkey.

Permissions and settings already tried

  • Updated macOS.
  • Restarted Codex after changing settings.
  • Tried DoubleCommand.
  • Tried DoubleShift.
  • Checked Screen Recording / Screen & System Audio Recording permissions.
  • Checked Accessibility permissions.
  • Tried toggling bare-modifier-monitor related permissions on and off during troubleshooting.
  • Tried Input Monitoring during troubleshooting.

The public Codex/Appshots documentation and release notes do not appear to mention bare-modifier-monitor or Input Monitoring as user-facing setup steps, so this may be either a hotkey monitor bug or a documentation/setup gap.

Privacy note

Local usernames, full local file paths, and full logs are intentionally omitted from this public issue. I can provide additional logs through a private/support channel if needed.

View original on GitHub ↗

4 Comments

FuZoe · 3 months ago

I will create a PR to fix this

IgorGanapolsky · 3 months ago

This looks like the same failure class I hit while hardening my own Mac agent setup: the visible symptom is usually a broken action loop, but the root cause is often one of these:

  • model/provider route points at an unavailable model
  • stale auth profile or mismatched runtime
  • macOS Screen Recording/Accessibility is granted to the wrong app
  • Computer Use is installed but not exposed to the agent runtime
  • the TUI reuses one global session across unrelated project directories

The fastest sanity check is to verify each layer separately: provider smoke test, isolated per-directory session id, macOS permissions readback, and a real Computer Use tool call such as listing running apps.

I wrote up the checklist here: https://igorganapolsky.github.io/openclaw-mac-ai-workstation-setup/troubleshooting.html?utm_source=github&utm_medium=issue&utm_campaign=openai-codex-24009

If you want this fixed done-for-you on a Mac, I also packaged it as a focused setup service: https://igorganapolsky.github.io/openclaw-mac-ai-workstation-setup/?utm_source=github&utm_medium=issue&utm_campaign=openai-codex-24009

FuZoe · 3 months ago

Hi, I've implemented a fix for this issue in my fork: https://github.com/FuZoe/codex/commit/27f4d1a

Summary:

Adds codex-rs/bare-modifier-monitor/ crate — a macOS-only binary that monitors for double-press of a bare modifier key (Shift or Command) via CoreGraphics event taps.
Uses kCGSessionEventTap instead of kCGHIDEventTap for macOS 15+ compatibility.
Handles kCGEventTapDisabledByTimeout to auto re-enable the tap when macOS disables it.
Strict modifier isolation — only fires when target modifier is the sole modifier pressed.
Unfortunately I don't have permission to open a PR against this repo. If a maintainer finds this useful, feel free to cherry-pick or adapt the commit directly.

aifirstd3v · 3 months ago

Same issue on Mac Studio / Apple Silicon arm64. Up-to-date MacOS version.

  • Computer Use works normally.
  • Screen Recording, Accessibility, and Input Monitoring are granted for Codex and Codex Computer Use.
  • Appshots hotkey registration succeeds, but hotkey press is never detected.
  • gave all permissions properly.

Logs:

Registered appshot hotkey hotkey=DoubleOption
Registered appshot hotkey hotkey=DoubleShift
Registered appshot hotkey hotkey=DoubleCommand

Missing logs after pressing the configured hotkeys:

Appshot hotkey pressed
Dispatching appshot hotkey

Direct monitor tests:

/Applications/Codex.app/Contents/Resources/native/bare-modifier-monitor --key DoubleOption --immediate
/Applications/Codex.app/Contents/Resources/native/bare-modifier-monitor --key DoubleShift --immediate
/Applications/Codex.app/Contents/Resources/native/bare-modifier-monitor --key DoubleCommand --immediate

All print ready but never detect input.