Permessi macOS (TCC)
Le concessioni dei permessi macOS sono fragili. TCC associa una concessione del permesso alla firma del codice dell’app, al bundle identifier e al percorso su disco. Se uno qualsiasi di questi cambia, macOS tratta l’app come nuova e può eliminare o nascondere i prompt.Requisiti per permessi stabili
- Stesso percorso: esegui l’app da una posizione fissa (per OpenClaw,
dist/OpenClaw.app). - Stesso bundle identifier: cambiare il bundle ID crea una nuova identità di permesso.
- App firmata: le build non firmate o firmate ad hoc non mantengono i permessi.
- Firma coerente: usa un certificato reale Apple Development o Developer ID in modo che la firma resti stabile tra le ricompilazioni.
Checklist di ripristino quando i prompt scompaiono
- Chiudi l’app.
- Rimuovi la voce dell’app in Impostazioni di Sistema -> Privacy e sicurezza.
- Riavvia l’app dallo stesso percorso e concedi di nuovo i permessi.
- Se il prompt continua a non comparire, reimposta le voci TCC con
tccutile riprova. - Alcuni permessi ricompaiono solo dopo un riavvio completo di macOS.
Permessi per file e cartelle (Desktop/Documenti/Download)
macOS può anche limitare Desktop, Documenti e Download per processi terminal/background. Se le letture di file o gli elenchi di directory si bloccano, concedi l’accesso allo stesso contesto di processo che esegue le operazioni sui file (ad esempio Terminal/iTerm, app avviata da LaunchAgent o processo SSH). Soluzione alternativa: sposta i file nello spazio di lavoro OpenClaw (~/.openclaw/workspace) se vuoi evitare concessioni per singola cartella.
Se stai testando i permessi, firma sempre con un certificato reale. Le build ad hoc
sono accettabili solo per esecuzioni locali rapide in cui i permessi non contano.