OSx Tahoe Shortcuts Automation not connecting to External HDD

Summary

This postmortem analyzes a macOS Shortcuts Automation failure where external HDD folders appear greyed out and cannot be selected, even when Full Disk Access is enabled. The issue stems from how macOS Ventura/Sonoma/Tahoe handle sandboxed entitlement scopes, removable volumes, and automation security prompts.

Root Cause

The failure occurs because Shortcuts Automations run in a more restrictive sandbox than the interactive Shortcuts app. Even with Full Disk Access granted, the automation subsystem:

  • Does not inherit the same entitlements as the Shortcuts editor
  • Treats external/removable volumes as “untrusted” unless explicitly approved by system-level TCC (Transparency, Consent, and Control)
  • Blocks folder selection when the automation’s entitlement profile does not match the required access level
  • Fails silently, presenting the folder picker with greyed-out external volumes

In short: Full Disk Access ≠ Automation Disk Access.

Why This Happens in Real Systems

This is a classic example of privilege separation and sandbox mismatch:

  • macOS uses multiple TCC layers, and automations run under a different process identity
  • External drives are treated as higher‑risk because they can be removed, replaced, or spoofed
  • Apple’s security model prioritizes preventing silent automation access to removable media
  • The UI does not clearly communicate which subsystem is blocking access

This leads to a situation where the user believes they granted permission, but the automation runtime still refuses access.

Real-World Impact

Users experience:

  • Greyed-out external drives in folder pickers
  • Automations that cannot read or write to external disks
  • Confusion because manual Shortcuts run fine, but Automations fail
  • Inconsistent behavior between different macOS versions and hardware
  • Workflows that break after OS updates due to tightened TCC rules

For engineers, this creates:

  • Hard-to-debug permission failures
  • Misleading UI states
  • Support tickets that appear like user error but are actually OS-level sandbox constraints

Example or Code (if necessary and relevant)

Below is a minimal example of a shell script that would work if the automation had proper disk access, but fails when run via Shortcuts Automation due to sandbox restrictions:

#!/bin/bash
cp "/Volumes/ExternalHDD/data/input.txt" "$HOME/Documents/output.txt"

How Senior Engineers Fix It

Experienced engineers approach this by working with macOS security boundaries rather than against them:

  • Move the workflow to an internal drive and sync externally afterward
  • Use Security & Privacy → Files and Folders to grant access to the specific app used inside the automation (e.g., Terminal, a script runner, or a helper app)
  • Wrap the automation in a signed helper app with the correct entitlements
  • Use Shortcuts → Ask for File actions to force a user‑approved file handle
  • Store external-drive paths in Bookmarks (persistent security-scoped URLs)
  • Avoid removable media in automations entirely when possible

The key insight: Automations must use security-scoped URLs, not raw file paths.

Why Juniors Miss It

Junior engineers often assume:

  • “Full Disk Access” means full disk access
  • The Shortcuts editor and Shortcuts automation runtime are the same process
  • External drives behave like internal drives
  • If a folder is greyed out, it’s a UI bug rather than a sandbox policy

They also tend to overlook:

  • macOS’s layered TCC model
  • The difference between interactive and automated execution contexts
  • The need for security-scoped bookmarks for removable media

This leads to confusion and the belief that the system is malfunctioning, when in reality it is behaving exactly as designed.

Leave a Comment