
Claude Code’da tek izin hatası depoyu açabilir: Dört modu doğru seçin

Claude Code’da güvenli çalışma için tek bir modu her göreve uygulamayın: inceleme için plan, belirsiz veya yüksek etkili işlemler için manual, sınırları belli dosya değişiklikleri için acceptEdits, iyi tanımlanmış ve yalıtılmış işler için auto kullanın. Mod seçimi, sandbox ve kalıcı izin kurallarıyla birlikte değerlendirilmelidir.
Başlıktaki “depoyu açma” riski, tek bir geniş kalıcı onayın Claude Code’a işletim sistemi hesabınızın mevcut yetkilerinin ötesinde erişim vermesi değildir. Risk; örneğin bütün Bash çağrılarını kapsayan bir “always allow” kararının insan onayı katmanını kaldırması, depodaki dosyaları okuyabilen veya değiştirebilen komutların sonraki oturumlarda da sorulmadan çalışabilmesidir.
Dört mod hangi sınırı değiştiriyor?
Claude Code’un resmî izin belgesi, manual etiketinin yapılandırmada default modu ve manual takma adıyla karşılandığını; plan, acceptEdits ve auto modlarının farklı onay davranışları kullandığını açıklıyor. Aynı belgeye göre kalıcı Bash ve WebFetch onayları depo düzeyindeki yerel ayarlara kaydedilebilir ve ana çalışma kopyasıyla ilişkili worktree oturumlarında da geçerli olabilir; dosya düzenleme onayı ise varsayılan akışta yalnızca oturum sonuna kadar sürer.
- Plan: Kaynak dosyalarını değiştirmeden depoyu keşfetmek, etkilenecek alanları bulmak ve yaklaşım hazırlamak içindir. Ancak auto özelliğinin kullanılabildiği oturumlarda sınıflandırıcının onayladığı bazı komutlar çalışabildiğinden plan, işletim sistemi düzeyinde yalıtım anlamına gelmez.
- Manual: Dosya değişiklikleri ve yerleşik salt okunur kümenin dışındaki kabuk komutları için insan kararını korur. Yeni bir depo, belirsiz hedef, git geçmişi, üretim kaynağı veya dış hizmet söz konusuysa en güvenli başlangıçtır.
- acceptEdits: Çalışma dizini ile eklenmiş dizinlerdeki dosya düzenlemelerini; mkdir, touch, mv ve cp gibi yaygın dosya sistemi işlemlerini otomatik kabul eder. Diğer kabuk komutları normal izin akışında kalır; bazı yerleşik salt okunur komutlar zaten onay istemeden çalışabilir.
- Auto: Araç çağrılarını her seferinde kullanıcıya sormak yerine arka plandaki güvenlik kontrollerine gönderir. Desteklenen modellerde kullanılabilir ve kuruluş yöneticisi tarafından kapatılabilir; yüksek etkili altyapı işlemlerinde dikkatli insan incelemesinin doğrudan karşılığı değildir.
Mod, sandbox ve izin atlama aynı kontrol değildir
İzin modu, bir araç çağrısının çalışıp çalışmayacağını ve kimin onay vereceğini belirler. Resmî sandbox belgesi ise sandbox’ın Bash, PowerShell ve Monitor komutlarıyla bunların alt süreçlerine dosya sistemi ve ağ sınırlarını işletim sistemi düzeyinde uyguladığını; yerleşik Read, Edit ve Write araçlarının doğrudan izin sistemiyle yönetildiğini belirtiyor.
Bu ayrım nedeniyle “sandbox açık” ifadesi tek başına yeterli değildir. Kabuk sürecinin yazabileceği yolları ve ulaşabileceği alan adlarını daraltın; Read ve Edit için ayrıca izin kuralları kullanın. Sandbox dışında yeniden denemeye ihtiyacınız yoksa allowUnsandboxedCommands değerini false yaparak kaçış yolunu kapatın.
--dangerously-skip-permissions ise günlük çalışma için beşinci bir mod değildir. Anthropic’in auto mode açıklaması, bu seçeneğin izin istemlerini kapattığını ve çoğu durumda koruma sağlamadığını; auto modunun ise kullanıcı isteğiyle uyuşmayan eylemleri yakalamaya çalışan sınıflandırıcılar kullandığını söylüyor. Auto yine hata yapabileceği için üretim dağıtımı, paylaşılan kaynak veya geri döndürülemez işlem gibi yüksek riskli alanlarda manual onayın yerini almamalıdır.
Göreve göre seçim ağacı
- İstenen çıktı yalnızca açıklama, etki analizi veya uygulama planıysa plan ile başlayın. Böylece değişiklik yetkisi vermeden önce kapsamı görebilirsiniz.
- Hedef, bayraklar veya etki alanı belirsizse manual kullanın. Uzak dal silme, force push, veri tabanı geçişi, paket kurulumu, bulut kaynağı ve üretim komutlarında yalnızca program adına değil tam komuta, çalışma dizinine ve hedef ortama bakın.
- Görev sürüm kontrolündeki belirli dosyalarla sınırlıysa ve kabuk işlemlerini ayrıca denetlemek istiyorsanız acceptEdits seçin. Bu mod dosya düzenlemelerini hızlandırır; kendiliğinden dağıtım, git push veya sınırsız ağ erişimi vermez.
- Görev açıkça tanımlanmış, depo güvenilir, dosya ve ağ sınırları daraltılmışsa auto değerlendirilebilir. Sırlar, dış sistemler veya başka kullanıcıları etkileyen kaynaklar devreye giriyorsa sandbox, ask ve deny kurallarını koruyun.
Bir oturumu tek modda bitirmek zorunda değilsiniz. Kapsamı plan ile çıkarıp kritik adımları manual modda doğruladıktan sonra, yalnızca rutin dosya değişiklikleri kaldığında acceptEdits’e geçmek çoğu geliştirme işi için anlaşılır bir yetki zinciri oluşturur.
“Always allow” kuralını komut ve yolla daraltın
Kalıcı kuralı araç adı düzeyinde değil, gereken çağrı düzeyinde yazın. Çıplak Bash veya eşdeğer Bash(*) bütün kabuk komutlarını eşleştirir; Bash(npm run test *) ise yalnızca bu komut önekiyle başlayan çağrıları kapsar. Benzer biçimde Edit(/src/**), proje ayarlarında ana çalışma dizininin src altını hedefler.
Proje için dar bir başlangıç örneği şöyledir: {"permissions":{"allow":["Bash(npm run test *)","Edit(/src/**)"],"ask":["Bash(git push *)"],"deny":["Read(/.env*)","Read(/secrets/**)"]}}
Bu örneği depo yapınıza göre değiştirmeden kopyalamayın. Bash kalıpları komut metnini eşleştirir; aynı program farklı bir yol, sarmalayıcı veya argüman düzeniyle çağrılırsa ask ya da deny kuralına yakalanmayabilir. Komut metninden bağımsız dosya ve ağ yaptırımı gerektiğinde sandbox sınırı kullanın.
En güvenli yöntem, komutu önce tek seferlik onayla çalıştırıp Claude Code’un oluşturduğu kuralı incelemek, ardından yalnızca gerçekten değişken olan bölümü joker karakterle genişletmektir. Bu dar kapsamlı izin yaklaşımı, onay yorgunluğunu azaltırken tek kararın bütün kabuk araçlarına yayılmasını önler.
Ekip politikasında son sınırlar
- Paylaşılan ve kişisel ayarı ayırın: Ekipçe gerekli kuralları .claude/settings.json içinde tutun; kişisel kalıcı onayların yazıldığı .claude/settings.local.json dosyasını düzenli olarak /permissions üzerinden gözden geçirin.
- Talimatı yaptırımla karıştırmayın: CLAUDE.md, modelin nasıl davranması gerektiğini anlatır; erişimi teknik olarak engellemez. Hassas dosyalar için Read veya Edit deny, yüksek etkili komutlar için ask, kabuk erişimi için sandbox kullanın.
- Merkezî kısıtlamayı yöneticide tutun: Kuruluş politikasında bypassPermissions ve gerekirse auto modu yönetilen ayarlardan devre dışı bırakın. Böylece proje düzeyindeki rahatlık tercihi, ekip güvenlik sınırını geçersiz kılamaz.
Bir kuralı kalıcılaştırmadan önce üç soruyu ayrı ayrı yanıtlayın: Claude Code hangi dosyayı yazmalı, hangi komutu çalıştırmalı ve hangi dış sisteme ulaşmalı? İzin bu ihtiyaçlardan birine doğrudan bağlanmıyorsa gereğinden geniştir.
Ayrıca okuyun:
İlgili makaleler


Photoshop komutla düzenlemeye geçti, klasik arayüz yerinde kalıyor

Bir AI ajanı sandbox’tan yine de çıkabilir: Güven sınırı nerede kırılır?

GitHub Actions önbelleğine dört yetki geldi; yanlış “write” zehirlenme riski

Salesforce Headless 360, AI ajanlarına yönetici yetkileri açıyor

Gemini’de ajanlı video analizi: varsayılan mod hâlâ statik
Bültenimize abone olun
En son Web3, yapay zekâ ve kripto haberleri doğrudan gelen kutunuza gelsin.