Przejdź do głównej zawartości

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.

  • Plik settings.json z 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

Claude Code odczytuje konfigurację z wielu lokalizacji, każda z innym zakresem i pierwszeństwem. Od najwyższego do najniższego priorytetu:

ZakresLokalizacja plikuKogo dotyczyWspółdzielone?
Managed/Library/Application Support/ClaudeCode/ (macOS)Wszyscy użytkownicy na maszynieWdrożone przez IT
Local.claude/settings.local.jsonTylko Ty, w tym projekcieNie (gitignored)
Project.claude/settings.jsonWszyscy współpracownicyTak (commitowane)
User~/.claude/settings.jsonTy, we wszystkich projektachNie

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ć.

System uprawnień kontroluje, co Claude może robić bez pytania. To najbardziej wpływowa konfiguracja na Twój codzienny przepływ pracy.

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.

Reguły podążają za wzorcem Tool lub Tool(specifier) z obsługą wildcard:

RegułaCo pasuje
BashWszystkie polecenia bash
Bash(npm run *)Każde polecenie npm run
Read(./.env)Odczyt pliku .env
Read(./secrets/**)Odczyt czegokolwiek pod secrets/
EditWszystkie 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.

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.

Claude Code domyślnie używa Claude Opus 4.8, bardzo zdolnego modelu do kodowania agentowego. Możesz to nadpisać globalnie lub per-sesja. Od wersji 2.1.170 dostępny jest również Claude Fable 5 — nowy poziom powyżej Opusa; przełączysz się poleceniem /model fable.

Wewnątrz sesji użyj polecenia /model:

/model
# Wybierz z dostępnych modeli

Tryb fast nie jest przełączeniem modelu. Uruchamia ten sam Claude Opus 4.8 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 4.8 — użyj /model, aby przełączyć się na faktycznie tańszy model, taki jak Claude Sonnet 4.6.

W settings.json:

{
"model": "claude-sonnet-4-6"
}

Lub przez zmienną środowiskową:

Okno terminala
export ANTHROPIC_MODEL=claude-sonnet-4-6

Jeś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 — subagenty nadal automatycznie działają na Opus/Sonnet/Haiku, więc koszty pozostają pod kontrolą, a główna pętla dostaje maksymalną inteligencję.

ModelPrzypadek użyciaKompromis
Claude Fable 5 (/model fable)Najtrudniejsze refaktoringi wieloplikowe, budowanie aplikacji od zera, długotrwałe zadaniaNajwyższe możliwości; 2x koszt Opusa ($10/$50)
Claude Opus 4.8 (domyślny)Złożony refaktoring, decyzje architektoniczne, zmiany wieloplikoweNajbardziej zdolny po Fable 5, wysoki koszt tokenów
Claude Sonnet 4.6Szybkie edycje, proste poprawki błędów, rutynowe zadaniaTańszy (~$3/$15), nieco mniej zdolny
Claude Haiku 4.5Edycje o dużej skali, trywialne, zadania wsadoweNajtańszy (~$1/$5), najmniej zdolny

Tryb fast to oddzielna oś od wyboru modelu: przyspiesza ten Opus 4.8, na którym już jesteś, przy wyższym koszcie, zamiast przełączać na mniejszy model. Sięgaj po /model (Sonnet 4.6 / Haiku 4.5), gdy chcesz zaoszczędzić pieniądze, a po /fast, gdy chcesz szybkość i jakość naraz.

Claude Code oferuje kilka trybów uprawnień kontrolujących, ile jesteś pytany podczas sesji:

TrybZachowanieAktywuj przez
DefaultPytaj o pozwolenie na każdą akcjęDomyślne zachowanie
Accept EditsAuto-akceptuj edycje plików, pytaj o polecenia bash--permission-mode acceptEdits, /config lub "defaultMode": "acceptEdits" w settings.json
Bypass PermissionsPomiń wszystkie pytania o pozwolenie--dangerously-skip-permissions

Aby rozpoczynać każdą sesję w trybie Accept Edits bez podawania flagi za każdym razem, ustaw "defaultMode": "acceptEdits" w swoim settings.json.

Flaga --dangerously-skip-permissions pomija wszystkie pytania o zgodę. Claude będzie czytał, pisał i wykonywał polecenia bez pytania.

Okno terminala
claude --dangerously-skip-permissions

Kiedy 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 -p dla 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"
}
}

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.

Możesz uczynić rozszerzone myślenie domyślnym dla wszystkich sesji:

{
"alwaysThinkingEnabled": true
}

Lub kontrolować budżet myślenia przez zmienną środowiskową:

Okno terminala
# Ogranicz tokeny myślenia (domyślnie 31,999)
export MAX_THINKING_TOKENS=10000
# Wyłącz myślenie całkowicie
export MAX_THINKING_TOKENS=0

Dla Claude Opus 4.8 głębokość myślenia jest zamiast tego kontrolowana przez ustawienie poziomu effort:

Okno terminala
# Wartości zmiennej środowiskowej (trwałe): low, medium, high (domyślnie), xhigh, max
export CLAUDE_CODE_EFFORT_LEVEL=medium

Wewnątrz sesji uruchom /effort (lub otwórz selektor modelu i użyj strzałek w lewo/prawo na suwaku effort), aby wybrać low, medium, high (domyślny na Opus 4.8), xhigh, max lub ultracode. Wyższe poziomy deliberują dłużej i zużywają więcej tokenów; max podtrzymuje głębokie wieloetapowe rozumowanie dla naprawdę trudnych problemów, a ultracode wysyła do modelu xhigh oraz sprawia, że Claude orkiestruje Dynamic Workflows (równoległe subagenty) dla dużych zadań. Pamiętaj, że max i ultracode to wybory dostępne tylko w sesji — CLAUDE_CODE_EFFORT_LEVEL przyjmuje low, medium, high, xhigh i max, ale nie ultracode.

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.

Najszybszy sposób na eksplorację i modyfikację ustawień to polecenie /config wewnątrz sesji Claude Code:

/config

Otwiera 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.

“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.

Mając skonfigurowane uprawnienia i modele, skonfiguruj integrację IDE, aby Claude Code pracował obok Twojego edytora.