macOS izinleri (TCC)
macOS izinleri kırılgandır. TCC, bir izin verilmesini uygulamanın kod imzası, paket tanımlayıcısı (bundle identifier) ve disk üzerindeki yoluyla ilişkilendirir. Bunlardan herhangi biri değişirse, macOS uygulamayı yeni olarak değerlendirir ve istemleri düşürebilir veya gizleyebilir.Kararlı izinler için gereksinimler
- Aynı yol: uygulamayı sabit bir konumdan çalıştırın (OpenClaw için,
dist/OpenClaw.app). - Aynı paket tanımlayıcısı: bundle ID’yi değiştirmek yeni bir izin kimliği oluşturur.
- İmzalı uygulama: imzasız veya ad-hoc imzalı derlemelerde izinler kalıcı olmaz.
- Tutarlı imza: Apple Development veya Developer ID sertifikası kullanın böylece imza, yeniden derlemeler arasında kararlı kalır.
İstemler kaybolduğunda kurtarma kontrol listesi
- Uygulamadan çıkın.
- Sistem Ayarları -> Gizlilik ve Güvenlik altında uygulama girdisini kaldırın.
- Uygulamayı aynı yoldan yeniden başlatın ve izinleri tekrar verin.
- İstem hâlâ görünmüyorsa, TCC girdilerini
tccutilile sıfırlayın ve yeniden deneyin. - Bazı izinler yalnızca macOS’un tam bir yeniden başlatılmasından sonra tekrar görünür.
Dosyalar ve klasörler izinleri (Masaüstü/Belgeler/İndirilenler)
macOS, terminal/arka plan süreçleri için Masaüstü, Belgeler ve İndirilenler erişimini de kısıtlayabilir. Dosya okumaları veya dizin listelemeleri takılı kalıyorsa, dosya işlemlerini gerçekleştiren aynı süreç bağlamına erişim verin (örneğin Terminal/iTerm, LaunchAgent ile başlatılan uygulama veya SSH süreci). Geçici çözüm: klasör bazlı izinlerden kaçınmak istiyorsanız dosyaları OpenClaw çalışma alanına (~/.openclaw/workspace) taşıyın.
İzinleri test ederken her zaman gerçek bir sertifika ile imzalayın. Ad-hoc
derlemeler, izinlerin önemli olmadığı hızlı yerel çalıştırmalar için kabul edilebilir.