# .claude/settings.json — repoya commit et, takım aynı listeyi kullansın
{
"permissions": {
"allow": [
"Bash(npm run *)",
"Bash(npm test *)",
"Bash(npx tsc *)",
"Bash(git status *)",
"Bash(git diff *)",
"Bash(git log *)",
"Bash(git add *)",
"Bash(git commit *)",
"Bash(rg *)",
"Bash(ls *)",
"Bash(cat *)",
"WebFetch(domain:docs.anthropic.com)",
"WebFetch(domain:code.claude.com)"
],
"deny": [
"Bash(git push *)",
"Bash(rm -rf *)",
"Read(./.env)",
"Read(./.env.*)",
"Read(./secrets/**)"
],
"ask": [
"Bash(gh pr create *)",
"Bash(vercel *)"
]
}
}
## Joker karakter kuralı
Joker, alt komuttan SONRA gelmeli:
Bash(git log *) -> yalnızca git log
Bash(git *) -> bütün git komutları (push dahil!)
Bash(git * main) -> git merge main, git push origin main ... (tehlikeli)
Claude Code, alt komuttan önce joker olan allow kurallarını açılışta uyarır.
## Dosya kuralları
Read deny kuralı aynı yolda Edit ve Write'ı da engeller.
Write(...) / Glob(...) yazma — kontrol edilmiyor; Edit(...) ve Read(...) kullan:
"deny": ["Read(./.env)", "Edit(migrations/**)"]
## MCP kuralları
Allow tarafında sunucu adı joker içeremez:
"allow": ["mcp__github__get_*"] ✓
"allow": ["mcp__*"] ✗ yok sayılır
"deny": ["mcp__*"] ✓ tüm MCP araçlarını kapatır