Background Unix executable not appearing in Screen Recording permissions UI (macOS Tahoe 26.1)

Our background monitoring application uses a Unix executable that requests Screen Recording permission via CGRequestScreenCaptureAccess(). This worked correctly in macOS Tahoe 26.0.1, but broke in 26.1.

Issue: After calling CGRequestScreenCaptureAccess() in macOS Tahoe 26.1:

  • System dialog appears and opens System Settings
  • Our executable does NOT appear in the Screen Recording list
  • Manually adding via "+" button grants permission internally, but the executable still doesn't show in the UI
  • Users cannot verify or revoke permissions

Background:

  • Unix executable runs as a background process (not from Terminal)
  • Uses Accessibility APIs to retrieve window titles
  • Same issue occurs with Full Disk Access permissions

Environment:

  • macOS Tahoe 26.1 (worked in 26.0.1)
  • Background process (not launched from Terminal)

Questions:

  1. Is this a bug or intentional design change in 26.1?
  2. What's the recommended approach for background executables to properly register with TCC?
  3. Are there specific requirements (Info.plist, etc.) needed?

This significantly impacts user experience as they cannot manage permissions through the UI.

Any guidance would be greatly appreciated. Thank you

Background Unix executable not appearing in Screen Recording permissions UI (macOS Tahoe 26.1)
 
 
Q