Workbranch › Handleidingen
HandleidingPermissies beheren in Claude Code
Claude Code vraagt toestemming voordat het commando's uitvoert of bestanden bewerkt, en te veel vragen remmen je af, terwijl te weinig riskant kan zijn. Deze handleiding legt de vragen, de permissiemodi en de regels die je kunt opslaan uit, zodat je routinewerk één keer goedkeurt en de gevaarlijke dingen geblokkeerd blijven.
Kort antwoord: beantwoord elke vraag met Yes (Ja), Yes, and don't ask again (Ja, en niet meer vragen) of No (Nee), en druk op Shift+Tab om van modus te wisselen, bijvoorbeeld naar accept edits of plan. Wil je routinecommando's voorgoed goedkeuren, typ dan /permissions of zet allow-regels zoals Bash(npm run *) in .claude/settings.json, en voeg deny-regels zoals Read(./.env) toe voor dingen die Claude nooit mag aanraken.
Dit volgt de documentatie van Anthropic over Claude Code van oktober 2026. Nieuw bij Claude Code? Begin met aan de slag met Claude Code.
Waarvoor Claude Code toestemming vraagt
| Actie | Vraagt het in Manual mode? | "Don't ask again" geldt |
|---|---|---|
| Bestanden lezen, zoeken | Nee, binnen je werkmappen | Niet nodig |
| Shellcommando's | Ja, behalve een ingebouwde set alleen-lezen commando's | Permanent, per repository en commando |
| Bestanden bewerken of schrijven | Ja | Tot de sessie eindigt |
| Een webpagina ophalen | Ja, behalve sommige documentatiesites | Permanent, per repository en domein |
| Zoeken op het web | Ja | Permanent, per repository |
Een vraag laat zien wat Claude wil doen en welke opties je hebt. Bij de meeste vragen kun je naar Yes of No gaan en op Tab drukken om een opmerking toe te voegen; bij No krijgt Claude die opmerking als jouw reden en werkt het verder met die opmerking in gedachten.
Een permissiemodus kiezen
Druk tijdens een sessie op Shift+Tab om door de modi te bladeren; de statusbalk laat zien welke aanstaat. Je kunt ook in een bepaalde modus starten met claude --permission-mode plan.
| Modus | Wat het doet | Gebruik het als |
|---|---|---|
Manual (default) | Vraagt toestemming de eerste keer dat een tool wordt gebruikt | Je alles wilt zien |
Accept edits (acceptEdits) | Voert bestandsbewerkingen en eenvoudige bestandscommando's zoals mkdir of mv in je project uit zonder te vragen | Je de taak vertrouwt en de diff gaat bekijken |
Plan (plan) | Verkent en stelt een plan voor; geen bewerkingen tot je het goedkeurt | Grote of onduidelijke wijzigingen |
Auto (auto) | Slaat routinevragen over; een classifier op de achtergrond toetst commando's en netwerkverzoeken aan je verzoek | Langere taken met minder onderbrekingen |
Don't ask (dontAsk) | Weigert alles waarvoor toestemming nodig zou zijn en voert alleen uit wat vooraf is goedgekeurd | Afgeschermde scripts en CI; zit niet in de Shift+Tab-cyclus, start het met --permission-mode dontAsk |
Bypass (bypassPermissions) | Slaat vragen over, ook voor beschermde mappen zoals .git | Alleen in een geïsoleerde container of VM |
Recente versies starten interactieve sessies in de terminal en VS Code in auto mode, en dat werkt op alle abonnementen, alleen met nieuwere modellen. Wil je de startmodus zelf kiezen, stel dan "defaultMode" in onder permissions in ~/.claude/settings.json. Auto en bypass die in de instellingenbestanden van een project staan, worden genegeerd, dus een repository kan ze niet voor je aanzetten.
Allow-, ask- en deny-regels opslaan
- Typ in een sessie
/permissions. Het venster toont elke regel en uit welk instellingenbestand die komt, en laat je regels toevoegen of verwijderen. Wijzigingen gelden vanaf de volgende actie van Claude. - Of bewerk een instellingenbestand rechtstreeks. Gedeelde regels voor het team horen in
.claude/settings.json(commit het); je eigen regels in.claude/settings.local.jsonof, voor elk project, in~/.claude/settings.json. - Schrijf regels als
ToolofTool(pattern):Bash(npm run *): elk npm-scriptBash(git commit *): commits, maar geen andere git-commando'sRead(./.env): het.env-bestand van het projectWebFetch(domain:example.com): pagina's op die sitemcp__github__*: elke tool van een MCP-server met de naam github
Een typisch startpunt:
{"permissions": {"allow": ["Bash(npm run *)", "Bash(git commit *)"], "deny": ["Bash(git push *)", "Read(./.env)", "Read(./secrets/**)"]}}
Regels worden in een vaste volgorde gecontroleerd: eerst deny, dan ask, dan allow. Een deny wint altijd, zelfs van een specifiekere allow, en een ask-regel vraagt toestemming, ook als er ook een allow overeenkomt.
Veilig blijven
- Zet de
*na het subcommando.Bash(git log *)staat alleengit logtoe;Bash(git *)staat elk git-commando toe, ook commando's die andere programma's starten. - Let op de spatie.
Bash(ls *)komt niet overeen metlsof;Bash(ls*)wel. - Commandoregels zijn geen muur. Een deny voor
Bash(rm *)houdtbash -c 'rm …'of/bin/rmniet tegen. Claude Code splitst wel gekoppelde commando's, dus bij een toegestaan commando gevolgd door&&en nog een commando moet elk deel toegestaan zijn. Voor harde grenzen voor bestanden en netwerk gebruik je de sandboxing van Claude Code. - Blokkeer geheimen met Read-deny-regels. In recente versies voorkomt een
Read-deny ook dat overeenkomende afbeeldingspaden die je in de prompt plakt worden bijgevoegd, en verbergt hij overeenkomende namen als je een map met @ noemt. - Beschermde bestanden blijven beschermd. Allow-regels keuren schrijven naar plekken zoals
.git,.claude,.mcp.jsonen shellbestanden zoals.zshrcnooit vooraf goed. Buiten bypass mode wordt het je eerst gevraagd, of in auto mode beoordeelt de classifier het schrijven. - Zet riskante modi uit. Stel
permissions.disableBypassPermissionsModeofpermissions.disableAutoModein op"disable"om te voorkomen dat ze worden gebruikt.
Als het niet werkt
- Een allow-regel vraagt nog steeds toestemming: misschien komt er een deny- of ask-regel uit een ander instellingenbestand overeen. Open
/permissionsom de bron van elke regel te zien. - Een regel voor een andere map werkt niet: Claude werkt alleen binnen zijn werkmappen. Start met
claude --add-dir pathof zet de map inadditionalDirectories. - Een padregel in je gebruikersinstellingen mist je project: paden die met
/beginnen in~/.claude/settings.jsonzijn relatief ten opzichte van~/.claude. Gebruik~/of//voor absolute paden. - De vraag heeft geen "don't ask again": die optie verschijnt alleen als de vraag alles kan tonen wat een opgeslagen regel zou dekken. Keur één keer goed of schrijf de regel zelf.
Bronnen
- Claude Code user FAQ (Claude Help Center, gecontroleerd op 30 oktober 2026)
- Configure permissions (Claude Code Docs, gecontroleerd op 30 oktober 2026)
- Permission modes (Claude Code Docs, gecontroleerd op 30 oktober 2026)
Veelgestelde vragen
Kan ik Claude in CLAUDE.md vertellen bepaalde commando's niet uit te voeren?
Dat kan, maar niets dwingt het af. CLAUDE.md stuurt de keuzes van Claude, terwijl Claude Code zelf alleen permissieregels, modi en hooks toepast. Gebruik een deny-regel voor alles wat nooit mag gebeuren.
Waar slaat "don't ask again" mijn keuze op?
Voor commando's en webdomeinen schrijft het een regel naar .claude/settings.local.json in de hoofdmap van de git-repository, zodat die daar ook in toekomstige sessies geldt. Goedkeuringen voor het bewerken van bestanden gelden alleen tot de sessie eindigt.
Kan mijn bedrijf deze instellingen vastzetten?
Ja. Beheerders kunnen beheerde instellingen uitrollen die gebruikers- en projectinstellingen niet kunnen overschrijven, waaronder het uitschakelen van bypass- of auto mode.