Blog JSystems - uwalniamy wiedzę!
Blog JSystems - uwalniamy wiedzę!
Claude Code
Claude Code ciągle pyta o pozwolenie na każdą komendę - jak ograniczyć
allow w settings.json, korzystaj z opcji "zawsze pozwalaj" i świadomie dobierz tryb uprawnień.Każdy, kto pracuje z Claude Code dłużej niż pięć minut, zna to uczucie: narzędzie chce uruchomić testy, a Ty musisz potwierdzić. Chce zapisać plik - znów potwierdzenie. Chce zajrzeć do gita - kolejne. Te ciągłe pytania o zgodę to nie usterka, tylko wbudowany mechanizm bezpieczeństwa. Problem w tym, że przy powtarzalnych, bezpiecznych operacjach potrafi mocno spowolnić pracę. Na szczęście da się to sensownie ograniczyć bez rezygnacji z kontroli nad tym, co agent robi w Twoim systemie.
Przy próbie wykonania niemal każdej akcji Claude Code zatrzymuje się i pokazuje pytanie z opcjami do wyboru. Typowy monit wygląda tak:
Claude chce uruchomic: npm test
1. Tak
2. Tak, i nie pytaj wiecej o "npm" w tym projekcie
3. Nie, powiedz Claude co zrobic inaczej
Gdy w trakcie jednego zadania narzędzie kilkanaście razy uruchamia testy, formatuje kod i sprawdza status gita, klikanie "Tak" przy każdej operacji staje się męczące i przerywa skupienie - zarówno Twoje, jak i płynność pracy agenta.
Domyślna zasada Claude Code brzmi: nic, co zmienia Twój system, nie dzieje się bez zgody. Odczyt plików jest dozwolony automatycznie, ale każde uruchomienie komendy w powłoce, edycja pliku czy operacja sieciowa wymaga potwierdzenia. To świadoma decyzja projektowa Anthropic - agent ma dostęp do Twojego terminala, więc mógłby teoretycznie wykonać coś destrukcyjnego. Model uprawnień opiera się na regułach: dopóki dana operacja nie jest na liście dozwolonych, narzędzie pyta. Nie wie z góry, że akurat npm test jest u Ciebie bezpieczne - to Ty musisz mu to zakomunikować, dodając regułę.
.claude/settings.json w katalogu projektu (lub odpal komendę /permissions) i dodaj zaufane operacje do listy allow.{
"permissions": {
"allow": [
"Bash(npm test:*)",
"Bash(npm run lint)",
"Bash(git status)",
"Bash(git diff:*)",
"Read(*)"
]
}
}Bash(npm test:*) pozwala na npm test z dowolnymi argumentami, a Bash(git status) tylko na dokładnie tę komendę. Gwiazdka po dwukropku dopasowuje resztę polecenia.~/.claude/settings.json (dla wszystkich projektów), projektowy w .claude/settings.json (wersjonowany w repozytorium, dla zespołu) i lokalny w .claude/settings.local.json (Twój prywatny, poza gitem).--dangerously-skip-permissions - wtedy nie pyta o nic. Używaj tego świadomie, najlepiej tylko w kontenerze lub maszynie testowej.Uruchom w sesji komendę /permissions - zobaczysz aktualną listę reguł allow, deny i ask. Następnie poproś agenta o operację, którą właśnie dodałeś do allow (np. uruchomienie testów). Jeśli wykona ją od razu, bez pytania o zgodę, reguła działa. Sprawdź też, że operacje spoza listy nadal wymagają potwierdzenia - to znak, że nie wyłączyłeś zabezpieczeń całkowicie, a jedynie uprościłeś powtarzalne kroki.
Wróć do listy: 100 najczęstszych problemów z Claude Code
Szkolenie Claude Code - od zera do zespołu agentów AI -->
Tryb planowania, tryby uprawnień, komendy, MCP, hooki i systemy multi-agent - wszystko na żywym kodzie podczas trzydniowego szkolenia. Prowadzi Łukasz Matuszewski. Szkolenie ma terminy gwarantowane - odbędzie się niezależnie od liczby zgłoszeń.
Sprawdź szkolenie Claude CodeTo szkolenie może być dofinansowane dla Ciebie z KFS lub BUR.
★★★★★Średnia ocena naszych szkoleń w Google: 5/5
Komentarze (0)
Brak komentarzy...