Izin macOS (TCC)
Pemberian izin di macOS itu rapuh. TCC mengaitkan pemberian izin dengan signature kode aplikasi, bundle identifier, dan path di disk. Jika salah satunya berubah, macOS menganggap aplikasi tersebut baru dan dapat menghapus atau menyembunyikan prompt.Persyaratan untuk izin yang stabil
- Path yang sama: jalankan aplikasi dari lokasi tetap (untuk OpenClaw,
dist/OpenClaw.app). - Bundle identifier yang sama: mengubah bundle ID membuat identitas izin baru.
- Aplikasi ditandatangani: build tanpa tanda tangan atau yang ditandatangani ad-hoc tidak mempertahankan izin.
- Signature yang konsisten: gunakan sertifikat Apple Development atau Developer ID yang nyata agar signature tetap stabil di seluruh rebuild.
Checklist pemulihan saat prompt hilang
- Keluar dari aplikasi.
- Hapus entri aplikasi di Pengaturan Sistem -> Privasi & Keamanan.
- Jalankan ulang aplikasi dari path yang sama dan berikan kembali izin.
- Jika prompt masih tidak muncul, reset entri TCC dengan
tccutillalu coba lagi. - Beberapa izin hanya muncul kembali setelah restart macOS penuh.
Izin file dan folder (Desktop/Documents/Downloads)
macOS juga dapat membatasi akses ke Desktop, Documents, dan Downloads untuk proses terminal/latar belakang. Jika pembacaan file atau listing direktori macet, berikan akses ke konteks proses yang sama yang melakukan operasi file (misalnya proses Terminal/iTerm, aplikasi yang dijalankan LaunchAgent, atau proses SSH). Solusi sementara: pindahkan file ke workspace OpenClaw (~/.openclaw/workspace) jika Anda ingin menghindari pemberian izin per folder.
Jika Anda sedang menguji izin, selalu tandatangani dengan sertifikat nyata. Build ad-hoc
hanya dapat diterima untuk run lokal cepat saat izin tidak penting.