Blog JSystems - uwalniamy wiedzę!
Blog JSystems - uwalniamy wiedzę!
Z tego artykułu dowiesz się:
Każdy, kto popracował z Claude Code dłużej niż chwilę, zna ten rytm: agent działa, a co jakiś czas zatrzymuje się i pyta o pozwolenie. Czy mogę zapisać ten plik? Czy mogę uruchomić tę komendę? Te pytania bywają irytujące, ale nie są przypadkowe — to moment, w którym Ty decydujesz, co agentowi wolno. Sam ustawiasz, jak często ma pytać: od „pytaj o wszystko” aż po „nie pytaj o nic”. Ten poziom swobody nazywa się trybem uprawnień i jest jednym z najważniejszych ustawień, które warto opanować.
Zacznijmy od tego, co widzisz, gdy agent prosi o pozwolenie. To nie jest suche „tak czy nie” — Claude pokazuje dokładnie, co zamierza zrobić. Przy edycji pliku zobaczysz różnicę (diff): które linie dojdą, które znikną. Dopiero pod nią są opcje wyboru:
app.py), a Ty wybierasz: zatwierdzić raz, zatwierdzać wszystkie edycje w sesji, czy odrzucićZwróć uwagę na drugą opcję: „Yes, allow all edits during this session” z dopiskiem (shift+tab). To nie przypadek — wybierając ją, przełączasz się w tryb, w którym Claude już nie pyta o kolejne edycje. I to jest sedno: tryby uprawnień to po prostu różne domyślne odpowiedzi na to pytanie. Zamiast klikać „tak” za każdym razem, ustawiasz raz, jak agent ma się zachowywać.
Jak widać na grafice na początku artykułu, Claude Code ma cztery główne tryby uprawnień, a przełączasz je w locie skrótem Shift+Tab — kolejne naciśnięcia prowadzą przez nie w pętli. Aktualny tryb zawsze widać na dole ekranu. Gdy włączysz akceptowanie zmian, pojawia się wyraźna informacja:
accept edits on (shift+tab to cycle) — w tym trybie Claude sam zatwierdza edycje plików, ale o komendy nadal pytaNajważniejsza różnica między trybami to odpowiedź na pytanie: co agent może zrobić bez pytania. Oto pełna mapa:
| Tryb | Co robi bez pytania | Kiedy używać |
|---|---|---|
| Domyślny | Tylko odczyt (czytanie plików). O każdą zmianę i każdą komendę pyta. | Praca wymagająca uwagi, wrażliwy kod |
| Accept edits | Edycje plików zatwierdza sam. O polecenia powłoki nadal pyta. | Ufasz kierunkowi, chcesz mniej klikania |
| Plan | Tylko odczyt — rozpoznaje kod, nic nie zmienia, aż zatwierdzisz plan. | Najpierw uzgodnić podejście, potem kod |
| Pełna autonomia | Nie pyta o nic — ani o edycje, ani o komendy. | Wyłącznie w izolacji (kontener, sandbox) |
Dwa skrajne tryby zasługują na osobne słowo, bo to przy nich najłatwiej o wpadkę albo o niewykorzystany potencjał.
To najczęściej używany tryb przy realnej pracy. Claude sam zapisuje zmiany w plikach, więc nie przerywa Ci co chwilę przy edycji, ale o polecenia powłoki (uruchomienie skryptu, instalację zależności, operacje gita) dalej pyta. Edycję pliku łatwo cofnąć przez git diff i kontrolę wersji; wykonanej komendy już nie. Dlatego ten podział — auto dla edycji, pytanie dla komend — to rozsądny domyślny kompromis między tempem a bezpieczeństwem.
Tryb pełnej autonomii (uruchamiany flagą --dangerously-skip-permissions) nie pyta o nic. Brzmi wygodnie, ale odbiera Ci kontrolę nad każdą operacją — nie zobaczysz już diffu ani komendy przed jej wykonaniem, więc jedyne, co ogranicza agenta, to granica środowiska, w którym działa. Tego trybu nie uruchamia się na zwykłej maszynie z dostępem do produkcji — tylko w izolacji, której agent nie jest w stanie uszkodzić. To na tyle ważny i obszerny temat, że poświęciliśmy mu cały osobny artykuł o bezpiecznym uruchamianiu pełnej autonomii.
Uwaga: pełna autonomia poza izolacją to najczęstszy błąd początkujących. „Niech wreszcie przestanie pytać” rozwiązuje się trybem accept edits albo precyzyjnymi regułami, a nie zdejmowaniem wszystkich hamulców na maszynie, na której agent może coś zepsuć.
Skrót Shift+Tab jest świetny do zmian w locie, ale jeśli któryś tryb pasuje Ci na co dzień, ustaw go na stałe. Domyślny tryb dla wszystkich sesji wpiszesz do pliku ustawień:
// ~/.claude/settings.json — domyślny tryb dla wszystkich sesji
{
"permissions": {
"defaultMode": "acceptEdits"
}
}
To jednak dopiero początek. Tryby działają „hurtowo” — albo pytaj o komendy, albo nie. Jeśli chcesz precyzji (przepuść nudne i bezpieczne polecenia, ale twardo zablokuj groźne), służą do tego reguły allow, ask i deny w tym samym pliku ustawień. To one zamieniają „pytaj o wszystkie komendy” w „przepuść git status i testy, ale nigdy nie pozwól na rm -rf”. Tej konfiguracji — składni reguł, hierarchii plików i hooków — poświęciliśmy osobny, szczegółowy artykuł o systemie uprawnień.
Praktyczna reguła jest jedna: im większy koszt pomyłki, tym więcej kontroli. W codziennej pracy najczęściej krążysz między trzema trybami:
Pełną autonomię zostawiasz na osobne, w pełni izolowane przebiegi. Tyle wystarczy, żeby agent pracował szybko tam, gdzie to bezpieczne, a zwalniał tam, gdzie stawka jest wysoka. Cała reszta to już tylko nawyk — i znajomość jednego skrótu.
Tryby uprawnień, reguły allow/deny, hooki, izolacja, MCP i systemy multi-agent — na żywym kodzie podczas trzydniowego szkolenia. Prowadzi Łukasz Matuszewski, a szkolenie ma termin gwarantowany, więc odbędzie się niezależnie od liczby zgłoszeń.
Claude Code od zera do zespołu agentów AI
Komentarze (0)
Brak komentarzy...