Workbranch › Ohjeet
OhjeNäin hallitset käyttöoikeuksia Claude Codessa
Claude Code kysyy lupaa ennen kuin se ajaa komentoja tai muokkaa tiedostoja. Liian monet kyselyt hidastavat työtä, ja liian harvat voivat tuoda riskejä. Tämä ohje selittää kyselyt, käyttöoikeustilat ja tallennettavat säännöt, jotta hyväksyt rutiinityön kerran ja pidät vaaralliset asiat estettyinä.
Lyhyesti: vastaa jokaiseen kyselyyn Yes, Yes, and don't ask again (Kyllä, äläkä kysy uudelleen) tai No, ja vaihda tilaa, kuten accept edits tai plan, painamalla Shift+Tab. Hyväksyäksesi rutiinikomennot pysyvästi kirjoita /permissions tai lisää tiedostoon .claude/settings.json allow-sääntöjä, kuten Bash(npm run *), ja deny-sääntöjä, kuten Read(./.env), asioille, joihin Claude ei saa koskaan koskea.
Tämä noudattaa Anthropicin Claude Code -dokumentaatiota lokakuussa 2026. Onko Claude Code sinulle uusi? Aloita ohjeesta näin pääset alkuun Claude Coden kanssa.
Mistä Claude Code kysyy
| Toiminto | Kysyykö Manual-tilassa? | "Don't ask again" on voimassa |
|---|---|---|
| Tiedostojen lukeminen, haku | Ei, työhakemistojesi sisällä | Ei tarvita |
| Shell-komennot | Kyllä, paitsi sisäänrakennettu joukko vain luku -komentoja | Pysyvästi, repositorio- ja komentokohtaisesti |
| Tiedostojen muokkaus tai kirjoitus | Kyllä | Istunnon loppuun |
| Verkkosivun haku | Kyllä, paitsi joillakin dokumentaatiosivustoilla | Pysyvästi, repositorio- ja verkkotunnuskohtaisesti |
| Verkkohaku | Kyllä | Pysyvästi, repositoriokohtaisesti |
Kysely näyttää, mitä Claude haluaa tehdä, ja vaihtoehtosi. Useimmissa kyselyissä voit siirtyä kohtaan Yes tai No ja lisätä kommentin painamalla Tab; No-vastauksen kanssa kommentti välittyy Claudelle perusteluksesi, ja Claude jatkaa työtä se mielessään.
Valitse käyttöoikeustila
Paina istunnon aikana Shift+Tab selataksesi tiloja; tilarivi näyttää, mikä on päällä. Voit myös käynnistää suoraan tietyssä tilassa: claude --permission-mode plan.
| Tila | Mitä se tekee | Käytä, kun |
|---|---|---|
Manual (default) | Kysyy, kun kutakin työkalua käytetään ensimmäisen kerran | Haluat nähdä kaiken |
Accept edits (acceptEdits) | Tekee tiedostomuokkaukset ja yksinkertaiset tiedostokomennot, kuten mkdir tai mv, projektissasi kysymättä | Luotat tehtävään ja tarkistat muutokset (diff) |
Plan (plan) | Tutkii ja ehdottaa suunnitelmaa; ei muokkauksia ennen hyväksyntääsi | Isot tai epäselvät muutokset |
Auto (auto) | Ohittaa rutiinikyselyt; taustalla toimiva luokittelija tarkistaa komennot ja verkkopyynnöt pyyntöäsi vasten | Pidemmät tehtävät vähemmillä keskeytyksillä |
Don't ask (dontAsk) | Kieltäytyy kaikesta, mikä vaatisi kyselyn, ja ajaa vain ennalta hyväksytyn | Lukitut skriptit ja CI; ei kuulu Shift+Tab-kiertoon, käynnistä se valinnalla --permission-mode dontAsk |
Bypass (bypassPermissions) | Ohittaa kyselyt, myös suojattujen kansioiden kuten .git kohdalla | Vain eristetyssä kontissa tai virtuaalikoneessa |
Uudet versiot käynnistävät interaktiiviset terminaali- ja VS Code -istunnot auto-tilassa, ja se toimii kaikilla tilauksilla, mutta vain uudemmilla malleilla. Valitaksesi aloitustilan itse aseta "defaultMode" kohtaan permissions tiedostossa ~/.claude/settings.json. Projektin asetustiedostoissa määritetyt auto ja bypass ohitetaan, joten repositorio ei voi kytkeä niitä päälle puolestasi.
Tallenna allow-, ask- ja deny-säännöt
- Kirjoita istunnossa
/permissions. Ikkuna listaa jokaisen säännön ja sen, mistä asetustiedostosta se tulee, ja antaa lisätä tai poistaa sääntöjä. Muutokset tulevat voimaan Clauden seuraavasta toiminnosta. - Tai muokkaa asetustiedostoa suoraan. Tiimin yhteiset säännöt menevät tiedostoon
.claude/settings.json(commitoi se); omasi tiedostoon.claude/settings.local.jsontai kaikkia projekteja varten~/.claude/settings.json. - Kirjoita säännöt muodossa
TooltaiTool(pattern):Bash(npm run *): mikä tahansa npm-skriptiBash(git commit *): commitit, mutta ei muita git-komentojaRead(./.env): projektin.env-tiedostoWebFetch(domain:example.com): sen sivuston sivutmcp__github__*: kaikki github-nimisen MCP-palvelimen työkalut
Tyypillinen lähtökohta:
{"permissions": {"allow": ["Bash(npm run *)", "Bash(git commit *)"], "deny": ["Bash(git push *)", "Read(./.env)", "Read(./secrets/**)"]}}
Säännöt tarkistetaan kiinteässä järjestyksessä: ensin deny, sitten ask, sitten allow. Deny voittaa aina, jopa tarkemman allow-säännön, ja ask-sääntö kysyy, vaikka myös allow-sääntö täsmäisi.
Pysy turvassa
- Laita
*alikomennon perään.Bash(git log *)sallii vain komennongit log;Bash(git *)sallii kaikki git-komennot, myös ne, jotka ajavat muita ohjelmia. - Huomaa välilyönti.
Bash(ls *)ei täsmää komentoonlsof;Bash(ls*)täsmää. - Komentosäännöt eivät ole muuri. Deny-sääntö
Bash(rm *)ei estä komentoabash -c 'rm …'tai/bin/rm. Claude Code kyllä pilkkoo ketjutetut komennot: jos sallitun komennon perässä on&&ja toinen komento, jokaisen osan on oltava sallittu. Tiukkoja tiedosto- ja verkkorajoja varten käytä Claude Coden hiekkalaatikkoa (sandboxing). - Estä salaisuudet Read-deny-säännöillä. Uusissa versioissa
Read-deny estää myös kuvan liittämisen, jos kehotteeseen liittämäsi kuvapolku täsmää sääntöön, ja piilottaa täsmäävät nimet, kun mainitset kansion @-merkillä. - Suojatut tiedostot pysyvät suojattuina. Allow-säännöt eivät koskaan esihyväksy kirjoituksia esimerkiksi kohteisiin
.git,.claudeja.mcp.jsontai shell-tiedostoihin, kuten.zshrc. Bypass-tilan ulkopuolella sinulta kysytään ensin, tai auto-tilassa luokittelija tarkistaa kirjoituksen. - Kytke riskialttiit tilat pois. Aseta
permissions.disableBypassPermissionsModetaipermissions.disableAutoModearvoon"disable", niin niitä ei voi käyttää.
Jos se ei toimi
- Allow-sääntö kysyy silti: jonkin toisen asetustiedoston deny- tai ask-sääntö voi täsmätä. Avaa
/permissionsnähdäksesi kunkin säännön lähteen. - Toista kansiota koskeva sääntö ei päde: Claude toimii vain työhakemistojensa sisällä. Käynnistä komennolla
claude --add-dir pathtai lisää kansio kohtaanadditionalDirectories. - Käyttäjäasetusten polkusääntö ei osu projektiisi: tiedostossa
~/.claude/settings.jsonmerkillä/alkavat polut ovat suhteessa kansioon~/.claude. Käytä absoluuttisille poluille~/tai//. - Kyselyssä ei ole "don't ask again" -vaihtoehtoa: se näkyy vain, kun kysely pystyy listaamaan kaiken, minkä tallennettu sääntö kattaisi. Hyväksy kerran tai kirjoita sääntö itse.
Lähteet
- Claude Code user FAQ (Claude Help Center, tarkistettu 30.10.2026)
- Configure permissions (Claude Code Docs, tarkistettu 30.10.2026)
- Permission modes (Claude Code Docs, tarkistettu 30.10.2026)
Usein kysytyt kysymykset
Voinko kieltää CLAUDE.md-tiedostossa Claudea ajamasta tiettyjä komentoja?
Voit, mutta mikään ei valvo sitä. CLAUDE.md ohjaa Clauden valintoja, kun taas Claude Code itse noudattaa vain käyttöoikeussääntöjä, tiloja ja hookeja. Käytä deny-sääntöä kaikkeen, mitä ei saa koskaan tapahtua.
Mihin "don't ask again" tallentaa valintani?
Komennoille ja verkkotunnuksille se kirjoittaa säännön git-repositorion juuressa olevaan .claude/settings.local.json-tiedostoon, joten se pätee siellä myös tuleviin istuntoihin. Tiedostomuokkausten hyväksynnät ovat voimassa vain istunnon loppuun.
Voiko yritykseni lukita nämä asetukset?
Kyllä. Ylläpitäjät voivat ottaa käyttöön hallinnoidut asetukset (managed settings), joita käyttäjän ja projektin asetukset eivät voi ohittaa, esimerkiksi bypass- tai auto-tilan poistamisen käytöstä.