Blog JSystems - uwalniamy wiedzę!

Szukaj

Claude Code

Claude Code ciągle pyta o pozwolenie na każdą komendę - jak ograniczyć

W skrócie

  • Claude Code przy każdej komendzie i edycji pliku pyta o pozwolenie, co rozbija rytm pracy.
  • To celowe zabezpieczenie - domyślnie narzędzie nie wykonuje nic bez Twojej zgody.
  • Rozwiązanie: dodaj zaufane operacje do listy 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.

Jak to wygląda w praktyce

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.

Dlaczego Claude Code tak działa

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łę.

Jak to rozwiązać krok po kroku

  1. Przy powtarzalnej, bezpiecznej operacji wybierz w monicie opcję "Tak, i nie pytaj więcej" - Claude Code zapamięta regułę w ustawieniach projektu i przestanie pytać o tę komendę.
  2. Edytuj plik uprawnień wprost. Otwórz .claude/settings.json w katalogu projektu (lub odpal komendę /permissions) i dodaj zaufane operacje do listy allow.
  3. Przykładowa konfiguracja dla typowego projektu Node:
    {
      "permissions": {
        "allow": [
          "Bash(npm test:*)",
          "Bash(npm run lint)",
          "Bash(git status)",
          "Bash(git diff:*)",
          "Read(*)"
        ]
      }
    }
  4. Zwróć uwagę na składnię: 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.
  5. Ustawienia dziel na trzy poziomy: globalny w ~/.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).
  6. Do zadań, którym w pełni ufasz w izolowanym środowisku, możesz uruchomić narzędzie z flagą --dangerously-skip-permissions - wtedy nie pyta o nic. Używaj tego świadomie, najlepiej tylko w kontenerze lub maszynie testowej.

Jak sprawdzić, że zadziałało

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, prowadzi Łukasz Matuszewski (JSystems)

Szkolenie Claude Code - od zera do zespołu agentów AI -->

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 Code

To szkolenie może być dofinansowane dla Ciebie z KFS lub BUR.

★★★★★Średnia ocena naszych szkoleń w Google: 5/5

Najczęściej zadawane pytania

Dlaczego Claude Code pyta o pozwolenie przy każdej operacji?
To celowe zabezpieczenie. Domyślna zasada narzędzia brzmi: nic, co zmienia Twój system, nie dzieje się bez zgody. Odczyt plików jest automatyczny, ale każde uruchomienie komendy w powłoce, edycja pliku czy operacja sieciowa wymaga potwierdzenia, bo agent ma dostęp do Twojego terminala i mógłby wykonać coś destrukcyjnego.
Jak sprawić, żeby Claude Code nie pytał o konkretną komendę?
W monicie o zgodę wybierz opcję "Tak, i nie pytaj więcej" - narzędzie zapamięta regułę w ustawieniach projektu. Możesz też dodać komendę wprost do listy allow w pliku .claude/settings.json, na przykład wpisem Bash(npm test:*), który pozwala na uruchamianie testów z dowolnymi argumentami bez potwierdzenia.
Co robi flaga --dangerously-skip-permissions w Claude Code?
Uruchamia narzędzie z pominięciem wszystkich pytań o zgodę - agent wykonuje operacje bez potwierdzania. Używaj tego świadomie i najlepiej tylko w izolowanym środowisku, na przykład w kontenerze lub na maszynie testowej, bo wyłącza to zabezpieczenie chroniące Twój system przed niezamierzonymi zmianami.
Gdzie Claude Code przechowuje zapamiętane reguły uprawnień?
W plikach settings.json na trzech poziomach: globalnym w ~/.claude/settings.json dla wszystkich projektów, projektowym w .claude/settings.json wersjonowanym w repozytorium dla całego zespołu, oraz lokalnym w .claude/settings.local.json, który jest prywatny i powinien być poza gitem. Podgląd reguł daje komenda /permissions.

Komentarze (0)

Musisz być zalogowany by móc dodać komentarz. Zaloguj się przez Google

Brak komentarzy...