Tovább a tartalomhoz

Korlátok konfigurálása

Ez az útmutató megmutatja, hogyan konfigurálja a korlátokat: azokat a szabályokat, amelyek eldöntik, hogy egy ügynök művelete lefut, előbb jóváhagyást kér, vagy elutasításra kerül.

A korlátok mind a tizenhárom hatásosztályt lefedik, amelyet minden állapotmódosító eszköz deklarál. Kiszolgálóoldalon, a hívás pillanatában érvényesülnek, soha nem egy utasítás révén a promptban.

Döntés beállítása egy műveletosztályhoz

Szekció neve “Döntés beállítása egy műveletosztályhoz”
  1. Nyissa meg a Beállítások → Munkaterület → Ügynökjogosultságok oldalt
  2. Válasszon hatókört a szegmentált vezérlővel: Munkaterület, Ügynök (majd válassza ki az ügynököt) vagy Tér (majd válassza ki a teret)
  3. A műveletosztály sorában válassza az Engedélyezés, az Előbb kérdezzen vagy a Tiltás lehetőséget
  4. Egy beállított szabály elvetéséhez nyomja meg a sor végén megjelenő visszaállítógombot (Törlés örököltre) – a döntés visszaesik a tágabb hatókörre

Minden sor a hatályos döntést egy állapotcímkével, származását pedig egy jelvénnyel mutatja: Ez a hatókör, Örökölt vagy Beépített alapértelmezett. A mátrix feloldása ügynök (chat) módban történik, ezért a Módkészlet itt soha nem jelenik meg – használja a „mi lenne, ha?” próbát egy csak olvasható mód kiválasztásával, hogy azt a réteget is lássa.

A szabály írásához admin szerepkör kell. A mátrix olvasásához nem.

Ellenőrzőpont: állítsa a Küldés távoli tárolóra szabályt Tiltásra a munkaterület hatókörében, majd futtassa az alábbi „mi lenne, ha?” próbát a git push origin main parancsra. Az eredmény deny lesz, workspace forrással.

A feloldás során először a specifikusság, aztán a szigorúság dönt:

  1. A tér szabályai, majd az ügynöké, majd a munkaterületé. Az első hatókör, amelyben van illeszkedő szabály, dönt, és a feloldás ott megáll
  2. Ha egyetlen szabály sem illeszkedik, a módkészlet lép életbe – egy csak olvasható mód (plan, review, orchestrate) a tizenhárom osztály közül tizenegyet elutasít
  3. Ha a módnak nincs mondanivalója, a beépített alapértelmezett lép életbe

Egyetlen hatókörön belül egy parancsszabály a leghosszabb illeszkedő előtag alapján oldódik fel, az egyformán specifikus ütközés pedig a legszigorúbb módon dől el – a tiltás legyőzi az előbb kérdezzen döntést, az pedig az engedélyezést. Egy művelet, amely több osztályt deklarál, mindegyiket önállóan oldja fel, majd a legszigorúbb módon vonja össze őket.

Egy Előbb kérdezzen döntés egyetlen jóváhagyási kérést jelenít meg, amely minden prompt-ra feloldódott osztályt lefed. Ha nincs csatlakoztatott jóváhagyó, a kérés elutasításra kerül, a shellparancsok és a harness eszközhívásai esetében egyaránt. Ez szándékos: egy kapuzatlan futás rosszabb egy elutasítottnál.

Műveletosztályok és beépített alapértelmezések

Szekció neve “Műveletosztályok és beépített alapértelmezések”
Műveletosztály Beépített alapértelmezett
Fájl törlése Előbb kérdezzen
Írás a worktree-n kívül Engedélyezés
Commit létrehozása Engedélyezés
Küldés távoli tárolóra Előbb kérdezzen
Pull request megnyitása Előbb kérdezzen
Átnézés vagy összefésülés közzététele Előbb kérdezzen
Írás külső követőbe Előbb kérdezzen
Hálózati hozzáférés Engedélyezés
Titok olvasása Engedélyezés
Csomag telepítése Engedélyezés
Folyamat futtatása Engedélyezés
Munkaterület szerkezetének módosítása Engedélyezés
Elszigetelt környezet (állomás) irányítása Engedélyezés

A taxonómia zárt. Egy új eszköz, amely osztályainak deklarálása nélkül jelenik meg, megbukik egy ratchet-teszten a CI-ben, így semmi sem érkezik csendben üres hatáskészlettel.

Szabály tesztelése a „mi lenne, ha?” próbával

Szekció neve “Szabály tesztelése a „mi lenne, ha?” próbával”

Mielőtt megváltoztatna egy szabályt, nézze meg, hogyan oldja fel azt már most a hatályos szabályzat.

  1. Ugyanezen az oldalon görgessen a Mi lenne, ha? részhez
  2. Válasszon egy Műveletet (a tizenhárom osztály egyikét)
  3. Adja meg opcionálisan a Parancsot (például git push origin main), az Ügynököt, a Tért és a Módot
  4. Olvassa el az eredményt: a döntést, az indoklást és a Forrás: mezőt

A próba ugyanazt a feloldót futtatja, amelyet az érvényesítési útvonal használ, a tényleges szabályaival szemben, így a válasz pontos. Ha meglepődik, módosítson egy szabályt a fenti mátrixban, és próbálja ki újra.

Egy tér autonómiatárcsájának beállítása

Szekció neve “Egy tér autonómiatárcsájának beállítása”

A tárcsa ügynökönként és térenként értelmezett, és a szabályokkal együtt működik, nem helyettük.

  1. Nyissa meg a teret
  2. Nyissa meg a Résztvevők kezelése elemet a tér fejlécéből
  3. Az Autonómia alatt az ügynök sorában válasszon szintet:
Szint Hatás
Alapértelmezett Nincs térbeállítás – úgy viselkedik, mint a Cselekvés jóváhagyással
Csak javaslat Minden kapuzott eszköz egyenesen megtiltva, az ügynöknek szóló üzenettel, hogy inkább javasolja a műveletet
Cselekvés jóváhagyással A kockázatos műveletek a zárt hibamódú jóváhagyási kapuba futnak
Szabad cselekvés Előre jóváhagy mindent, ami nem kemény tiltásra oldódott fel

A tárcsa csak a beépített harnessre hat. A Claude Code adapter a saját eszközeit ezen a kapun kívül futtatja.

A Hol érvényesülnek a szabályok táblázat ugyanezen az oldalon, legalul a funkció alkalmazáson belüli változata: hatásosztályonként megmondja, hogy az egyes futtatók elkapják-e a szabálykapunál, a homokozóra hagyják-e, vagy egyáltalán nem tudják elfogni.

  • A Claude Code adapter a saját eszközhívásainál csak részben van kapuzva. A Claude Code --dangerously-skip-permissions kapcsolóval indul, így az olvasó, író és szerkesztő hívásai soha nem haladnak át az őrszem előtt. A bash parancsai egy hookon keresztül jutnak el hozzá, amely besorolja a parancssort, a pushai pedig – mint minden ügynöké – a push-átjárón mennek át. Az MCP eszközfelszín, amelyet visszahív, és az a shellparancs, amelyet a Control Center az indításához létrehoz, szintén kapuzott.
  • Egy mód saját kimeneti igéje (submit_plan, propose_orchestration) rögzített, és soha nem lehet megtiltani – különben egy mód szerkezetileg képtelen lenne előállítani az egyetlen szállítható kimenetét.
  • Az, hogy a homokozó alátámasztja-e ezeket a szabályokat, a gazdagéptől függ. Ahol a cc_server háttérrendszert talál, becsomagolja a Claude Code CLI-t és a harness bash eszközét, így egy Ön által nem írt szabály alatt is ott van az operációs rendszer szintje. Windowson ilyen nincs, és bwrap és socat nélküli Linuxon vagy WSL2-ben sincs – ott a korlátok és a mód eszközfelszíne jelenti a teljes érvényesítést, nem annak egy második vonalát. Nézze meg, melyik esetben van, itt: Homokozószabályzatok konfigurálása.