Konfiguracja: uprawnienia, modele i tryb YOLO
Uruchamiasz Claude Code na produkcyjnym repozytorium po raz pierwszy i pyta o pozwolenie na każdy pojedynczy odczyt pliku, każde grep, każde uruchomienie testu. Piętnaście pytań o zgodę później ledwo zacząłeś swoje zadanie. Wiesz, że musi być lepszy sposób na skonfigurowanie tego, co Claude może robić autonomicznie, a co wymaga Twojej zgody — ale system ustawień ma cztery różne zakresy i dwa różne formaty plików.
Ten przewodnik pokazuje, jak skonfigurować uprawnienia, wybór modelu i zachowanie auto-approve Claude Code, aby pracował z Tobą, a nie przeciwko Tobie.
Co zdobędziesz
Dział zatytułowany „Co zdobędziesz”- Plik
settings.jsonz rozsądnymi regułami uprawnień dla Twojego przepływu pracy - Zrozumienie zakresów: managed, user, project i local
- Konfigurację modelu balansującą jakość i szybkość
- Wiedzę, kiedy używać (i kiedy unikać) trybu bypass-permissions
Hierarchia ustawień
Dział zatytułowany „Hierarchia ustawień”Claude Code odczytuje konfigurację z wielu lokalizacji, każda z innym zakresem i pierwszeństwem. Od najwyższego do najniższego priorytetu:
| Zakres | Lokalizacja pliku | Kogo dotyczy | Współdzielone? |
|---|---|---|---|
| Managed | /Library/Application Support/ClaudeCode/ (macOS) | Wszyscy użytkownicy na maszynie | Wdrożone przez IT |
| Local | .claude/settings.local.json | Tylko Ty, w tym projekcie | Nie (gitignored) |
| Project | .claude/settings.json | Wszyscy współpracownicy | Tak (commitowane) |
| User | ~/.claude/settings.json | Ty, we wszystkich projektach | Nie |
Ustawienia wyższego zakresu nadpisują niższe. Jeśli zasada managed odmawia uprawnienia, nic innego nie może jej nadpisać. Jeśli ustawienie projektu odmawia Bash(curl *), Twoje ustawienia użytkownika nie mogą tego pozwolić.
Konfiguracja uprawnień
Dział zatytułowany „Konfiguracja uprawnień”System uprawnień kontroluje, co Claude może robić bez pytania. To najbardziej wpływowa konfiguracja na Twój codzienny przepływ pracy.
Konfiguracja startowa
Dział zatytułowany „Konfiguracja startowa”Utwórz lub edytuj ~/.claude/settings.json dla swoich osobistych ustawień domyślnych:
{ "$schema": "https://json.schemastore.org/claude-code-settings.json", "permissions": { "allow": [ "Bash(npm run lint)", "Bash(npm run test *)", "Bash(npm run build)", "Bash(git diff *)", "Bash(git log *)", "Bash(git status)", "Bash(git branch *)" ], "deny": [ "Bash(curl *)", "Bash(wget *)", "Read(./.env)", "Read(./.env.*)", "Read(./secrets/**)" ] }}To pozwala Claude uruchamiać Twoje standardowe polecenia deweloperskie bez pytania, jednocześnie blokując żądania sieciowe i dostęp do sekretów.
Składnia reguł uprawnień
Dział zatytułowany „Składnia reguł uprawnień”Reguły podążają za wzorcem Tool lub Tool(specifier) z obsługą wildcard:
| Reguła | Co pasuje |
|---|---|
Bash | Wszystkie polecenia bash |
Bash(npm run *) | Każde polecenie npm run |
Read(./.env) | Odczyt pliku .env |
Read(./secrets/**) | Odczyt czegokolwiek pod secrets/ |
Edit | Wszystkie edycje plików |
WebFetch(domain:example.com) | Żądania fetch do example.com |
Reguły są oceniane w kolejności: najpierw deny, potem ask, następnie allow. Pierwsza pasująca reguła wygrywa.
Uprawnienia na poziomie projektu
Dział zatytułowany „Uprawnienia na poziomie projektu”Dla ustawień współdzielonych przez zespół utwórz .claude/settings.json w katalogu głównym repozytorium:
{ "$schema": "https://json.schemastore.org/claude-code-settings.json", "permissions": { "allow": [ "Bash(make *)", "Bash(go test ./...)", "Bash(go build ./...)" ], "deny": [ "Read(./.env)", "Read(./config/credentials.json)", "Bash(docker push *)" ] }}Commituj ten plik, aby każdy członek zespołu otrzymał tę samą bazową konfigurację. Indywidualni deweloperzy mogą nadpisać ustawienia przez .claude/settings.local.json.
Konfiguracja modelu
Dział zatytułowany „Konfiguracja modelu”Claude Code zaleca Claude Sonnet 5 do codziennego kodowania agentowego. Jest on defaultem konta w Pro, Team Standard i subskrypcyjnych miejscach Enterprise. Opus 5 jest defaultem w Max, Team Premium, Enterprise pay-as-you-go, Anthropic API, Amazon Bedrock, Google Cloud Agent Platform i Claude Platform on AWS; Microsoft Foundry domyślnie używa Sonnet 4.5. Ustawienia organizacji i managed settings mogą nadpisać te mapowania. Fable 5 jest poziomem o najwyższych możliwościach, lecz nigdy nie jest wybierany jako automatyczny default konta; przełącz się na niego jawnie przez /model fable.
Przełączanie modeli
Dział zatytułowany „Przełączanie modeli”Wewnątrz sesji użyj polecenia /model:
/model# Wybierz z dostępnych modeliTryb fast (szybkość, nie inny model)
Dział zatytułowany „Tryb fast (szybkość, nie inny model)”Tryb fast nie jest przełączeniem modelu. Uruchamia ten sam Claude Opus 5 z konfiguracją API zoptymalizowaną pod opóźnienia, dostarczając odpowiedzi około 2,5x szybciej, ale przy wyższym koszcie za token (około $10 wejście / $50 wyjście za milion tokenów, w porównaniu ze standardowymi $5/$25). Jakość i możliwości są identyczne — to kompromis szybkość-za-koszt, a nie tańsza czy słabsza wersja. Włącz go, wpisując /fast i naciskając Tab, albo ustaw na stałe w ustawieniach użytkownika:
{ "fastMode": true}Tryb fast utrzymuje się między sesjami i najlepiej sprawdza się przy pracy interaktywnej, gdzie opóźnienie liczy się bardziej niż koszt (debugowanie na żywo, szybka iteracja). Gdy wyłączysz go ponownie poleceniem /fast, nadal pozostajesz na Opus 5 — użyj /model, aby przełączyć się na faktycznie tańszy model, taki jak Claude Sonnet 5.
Ustawianie domyślnego modelu
Dział zatytułowany „Ustawianie domyślnego modelu”W settings.json:
{ "model": "claude-sonnet-5"}Lub przez zmienną środowiskową:
export ANTHROPIC_MODEL=claude-sonnet-5Jeśli Twój zespół optymalizuje pod kątem szybkości i jakości, a nie kosztów, możesz zamiast tego ustawić "model": "claude-fable-5" jako domyślny. Tańsze modele przypisz subagentom jawnie we frontmatterze lub przez CLAUDE_CODE_SUBAGENT_MODEL; subagenty nie są uniwersalnie automatycznie kierowane do tańszego poziomu.
Kiedy używać każdego modelu
Dział zatytułowany „Kiedy używać każdego modelu”| Model | Przypadek użycia | Kompromis |
|---|---|---|
Claude Fable 5 (/model fable) | Najtrudniejsze refaktoringi wieloplikowe, budowanie aplikacji od zera, długotrwałe zadania | Najwyższe możliwości; 2x koszt Opusa ($10/$50); wliczony w Max i Team Premium do 50% tygodniowych limitów, usage credits w Pro i Team Standard; brak przy zero data retention |
| Claude Sonnet 5 | Codzienne kodowanie, praca agentowa, duży kontekst | Cena premierowa $2/$10 do 31 sierpnia; default w Pro, Team Standard i subskrypcyjnych miejscach Enterprise |
| Claude Opus 5 | Architektura, złożony refaktoring, drugi przegląd | Poziom premium $5/$25; default w Max/Premium/pay-as-you-go/API oraz od v2.1.207 w Bedrock, Google Agent Platform i Claude Platform on AWS |
| Claude Haiku 4.5 | Edycje o dużej skali, trywialne, zadania wsadowe | Najtańszy (~$1/$5), najmniej zdolny |
Tryb fast to oddzielna oś od wyboru modelu: przyspiesza kwalifikujące się wersje Opus za wyższy koszt, zamiast przełączać tier. Preferuj Sonnet 5 do rutynowej pracy, używaj Opus/Fable, gdy evale uzasadniają premium, a Haiku do ograniczonej pracy masowej.
Tryby uprawnień
Dział zatytułowany „Tryby uprawnień”Claude Code oferuje kilka trybów uprawnień kontrolujących, ile jesteś pytany podczas sesji:
| Tryb | Zachowanie | Aktywuj przez |
|---|---|---|
Manual (default) | Czytaj swobodnie; pytaj przed akcjami zmieniającymi stan | Domyślne zachowanie lub --permission-mode manual (v2.1.200+) |
Accept Edits (acceptEdits) | Auto-akceptuj edycje i typowe komendy systemu plików w zakresie; pytaj o inne akcje powłoki | --permission-mode acceptEdits |
Plan (plan) | Eksploracja i planowanie tylko do odczytu | --permission-mode plan lub /plan |
Auto (auto) | Klasyfikator w tle sprawdza wywołania narzędzi zamiast rutynowych monitów | --permission-mode auto, gdy zezwala konto/model/provider/polityka |
Don’t Ask (dontAsk) | Odrzucaj wszystko, czego wcześniej nie dopuszcza permissions.allow | --permission-mode dontAsk |
Bypass Permissions (bypassPermissions) | Pomijaj rutynowe monity; jawne reguły ask i zabezpieczenia usuwania root/home nadal pytają | --dangerously-skip-permissions |
Aby rozpoczynać każdą sesję w trybie Accept Edits bez podawania flagi za każdym razem, ustaw "permissions": {"defaultMode": "acceptEdits"} w swoim settings.json.
Bypass Permissions (tryb YOLO)
Dział zatytułowany „Bypass Permissions (tryb YOLO)”Flaga --dangerously-skip-permissions pomija rutynowe pytania o zgodę. Jawne reguły permissions.ask i zabezpieczenia przed usunięciem root/home nadal pytają.
claude --dangerously-skip-permissionsKiedy używać trybu bypass w uzasadniony sposób:
- Pipeline’y CI/CD, gdzie Claude działa w kontenerze, a wszystkie zmiany przechodzą przez przegląd PR
- Automatyzacja bezgłowa z
claude -pdla skryptowanych zadań - Prototypowanie eksploracyjne w gałęzi git, którą możesz odrzucić
Aby całkowicie zapobiec trybowi bypass (dla bezpieczeństwa enterprise):
// W managed-settings.json{ "permissions": { "disableBypassPermissionsMode": "disable" }}Zmienne środowiskowe
Dział zatytułowany „Zmienne środowiskowe”Ustaw zmienne środowiskowe stosujące się do każdej sesji Claude Code:
// W ~/.claude/settings.json{ "env": { "CLAUDE_CODE_ENABLE_TELEMETRY": "1", "NODE_ENV": "development" }}Są one wstrzykiwane do środowiska Claude, gdy uruchamia polecenia bash. Przydatne do konfiguracji spójnych środowisk deweloperskich w całym zespole.
Konfiguracja rozszerzonego myślenia
Dział zatytułowany „Konfiguracja rozszerzonego myślenia”Możesz uczynić rozszerzone myślenie domyślnym dla wszystkich sesji:
{ "alwaysThinkingEnabled": true}Tylko na Opus 4.6 lub Sonnet 4.6 możesz przywrócić stary tryb stałego budżetu i go ograniczyć:
# Wyłącz adaptacyjne myślenie na Opus/Sonnet 4.6export CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1
# Ogranicz stały budżet myślenia (poniżej limitu wyjścia modelu)export MAX_THINKING_TOKENS=10000
# W Anthropic API wyłącz myślenie z wyjątkiem Fable 5export MAX_THINKING_TOKENS=0Fable 5, Sonnet 5 oraz Opus 4.7 i nowsze zawsze używają adaptacyjnego rozumowania sterowanego poziomem effort:
# Wartości zmiennej środowiskowej (trwałe): low, medium, high (domyślnie), xhigh, maxexport CLAUDE_CODE_EFFORT_LEVEL=mediumWewnątrz sesji uruchom /effort (lub użyj suwaka w /model), aby wybrać low, medium, high, xhigh, max lub ultracode. high jest domyślny na Fable 5, Sonnet 5 i Opus 5; Opus 4.7 domyślnie używa xhigh. max działa tylko w sesji, gdy wybierzesz go interaktywnie, ale przyjmuje go CLAUDE_CODE_EFFORT_LEVEL; trwałe ustawienie effortLevel przyjmuje wyłącznie low, medium, high lub xhigh. ultracode działa tylko w sesji, wysyła xhigh i dodatkowo włącza Dynamic Workflows dla istotnych zadań.
Konfiguracja piaskownicy
Dział zatytułowany „Konfiguracja piaskownicy”Dla maksymalnego bezpieczeństwa włącz sandboxing, aby izolować polecenia bash:
{ "sandbox": { "enabled": true, "autoAllowBashIfSandboxed": true, "network": { "allowedDomains": ["github.com", "*.npmjs.org", "registry.yarnpkg.com"], "allowLocalBinding": true } }}Gdy sandboxing jest włączony, autoAllowBashIfSandboxed: true oznacza, że Claude może uruchamiać każde polecenie bash bez pytania, ponieważ piaskownica zapobiega dostępowi do systemu plików i sieci poza Twoimi dozwolonymi regułami.
Interaktywne polecenie konfiguracji
Dział zatytułowany „Interaktywne polecenie konfiguracji”Najszybszy sposób na eksplorację i modyfikację ustawień to polecenie /config wewnątrz sesji Claude Code:
/configOtwiera ono interfejs z zakładkami, gdzie możesz przeglądać swoje bieżące ustawienia, modyfikować uprawnienia, przełączać funkcje i widzieć, które ustawienia pochodzą z którego zakresu.
Gdy to się psuje
Dział zatytułowany „Gdy to się psuje”“Permission denied” dla poleceń, które myślałeś, że zezwoliłeś — Sprawdź sprzeczne reguły. Reguły deny są oceniane jako pierwsze i mają pierwszeństwo. Reguła deny Bash(npm *) zablokuje wszystko związane z npm, nawet jeśli zezwoliłeś na Bash(npm run test).
“Model not available” — Jeśli ustawiłeś konkretny model w settings.json i nie jest on dostępny w Twoim poziomie konta, Claude Code może się nie uruchomić. Usuń nadpisanie modelu lub sprawdź swój poziom subskrypcji.
Ustawienia nie działają — Pamiętaj o kolejności pierwszeństwa. Jeśli Twoje ustawienie użytkownika jest nadpisywane, sprawdź .claude/settings.json (zakres projektu) i .claude/settings.local.json (zakres lokalny). Użyj /config, aby zobaczyć efektywną scaloną konfigurację.
“Cannot read settings file” — Zwykle przyczyną jest nieprawidłowa składnia JSON. Przepuść swój settings.json przez walidator JSON. Właściwość $schema daje Ci autocomplete i walidację w VS Code.
Co dalej
Dział zatytułowany „Co dalej”Mając skonfigurowane uprawnienia i modele, skonfiguruj integrację IDE, aby Claude Code pracował obok Twojego edytora.