Přeskočit na obsah

Nastavte guardraily

Tenhle návod ukazuje, jak nastavit guardraily: pravidla, která rozhodují, jestli akce agenta proběhne, nejdřív si vyžádá schválení, nebo se odmítne.

Guardraily pokrývají třináct tříd efektů, které deklaruje každý měnící nástroj. Vynucují se na serveru v okamžiku volání nástroje, ne instrukcí v promptu.

Nastav rozhodnutí pro třídu akce

Sekce “Nastav rozhodnutí pro třídu akce”
  1. Jdi do Nastavení → Pracovní prostor → Oprávnění agentů
  2. Rozsah vyber segmentovaným přepínačem: Pracovní prostor, Agent (pak vyber agenta) nebo Prostor (pak vyber prostor)
  3. Na řádku třídy akce vyber Povolit, Nejdřív se zeptat nebo Zakázat
  4. Pravidlo, které jsi nastavil, zrušíš tlačítkem na konci toho řádku (Obnovit zděděné) — rozhodnutí spadne na širší rozsah

Každý řádek ukáže platné rozhodnutí jako štítek stavu a odznak, odkud přišlo: Tento rozsah, Zděděno nebo Vestavěný výchozí. Matice se vyhodnocuje v režimu Agent (chat), takže se tu Předvolba režimu nikdy neukáže. Tuhle vrstvu uvidíš v Co kdyby?, když vybereš režim jen pro čtení.

Zápis pravidla vyžaduje roli admin. Čtení matice ne.

Kontrolní bod: v rozsahu pracovního prostoru nastav Odeslat na remote na Zakázat a níž spusť Co kdyby? na git push origin main. Výsledek je deny se zdrojem workspace.

Pochop, jak se rozhodnutí vyhodnotí

Sekce “Pochop, jak se rozhodnutí vyhodnotí”

Vyhodnocení jde nejdřív podle konkrétnosti, pak podle přísnosti:

  1. Pravidla Prostor, pak Agent, pak Pracovní prostor. První rozsah s odpovídajícím pravidlem rozhodne a vyhodnocení tam končí
  2. Když žádné pravidlo nesedí, platí předvolba režimu — režim jen pro čtení (plan, review, orchestrate) odmítne jedenáct ze třinácti tříd
  3. Když režim nic neříká, platí vestavěný výchozí

Uvnitř jednoho rozsahu se pravidlo příkazu vyhodnotí podle nejdelšího shodného prefixu a stejně konkrétní konflikt vyhraje nejpřísnější varianta — Zakázat přebije Nejdřív se zeptat a to přebije Povolit. Akce, která deklaruje několik tříd, vyhodnotí každou zvlášť a pak je složí nejpřísněji.

Rozhodnutí Nejdřív se zeptat ukáže jednu výzvu ke schválení, která pokryje každou třídu vyhodnocenou jako prompt. Bez připojeného schvalovatele se zamítne, u příkazů shellu i u volání nástrojů harnessu. Je to schválně: nehlídaný běh je horší než odmítnutý.

Třídy akcí a vestavěné výchozí

Sekce “Třídy akcí a vestavěné výchozí”
Třída akce Vestavěný výchozí
Smazat soubor Nejdřív se zeptat
Zápis mimo worktree Povolit
Vytvořit commit Povolit
Odeslat na remote Nejdřív se zeptat
Otevřít pull request Nejdřív se zeptat
Zveřejnit kontrolu nebo sloučení Nejdřív se zeptat
Zápis do externího trackeru Nejdřív se zeptat
Přístup k síti Povolit
Číst tajemství Povolit
Nainstalovat balíček Povolit
Spustit proces Povolit
Změnit strukturu pracovního prostoru Povolit
Ovládat izolované prostředí (stanici) Povolit

Taxonomie je uzavřená. Nový nástroj, který se dodá bez deklarace svých tříd, neprojde testem západky v CI, takže nic nepřijde s tiše prázdnou sadou efektů.

Vyzkoušej pravidlo sondou Co kdyby

Sekce “Vyzkoušej pravidlo sondou Co kdyby”

Než pravidlo změníš, ověř, jak ho současná politika už vyhodnocuje.

  1. Na stejné stránce sjeď k Co kdyby?
  2. V Akce vyber jednu ze třinácti tříd
  3. Volitelně vyplň Příkaz (třeba git push origin main), Agent, Prostor a Režim
  4. Přečti výsledek: rozhodnutí, důvod a Zdroj:

Sonda spustí stejný vyhodnocovač jako cesta vynucení, na tvých živých pravidlech, takže odpověď sedí přesně. Když tě překvapí, změň pravidlo v matici výš a sondu spusť znovu.

Nastav volič autonomie prostoru

Sekce “Nastav volič autonomie prostoru”

Volič je na agenta a na prostor. S pravidly se skládá a nenahrazuje je.

  1. Otevři prostor
  2. Ze záhlaví prostoru otevři Spravovat účastníky
  3. Pod Autonomie na řádku agenta vyber úroveň:
Úroveň Účinek
Výchozí Žádné nastavení prostoru — chová se jako Jednat se schválením
Jen navrhovat Každý hlídaný nástroj se rovnou zakáže a zpráva agentovi řekne, ať akci místo toho navrhne
Jednat se schválením Riskantní akce narazí na bránu schválení, která se při chybějícím schvalovateli uzavře
Jednat volně Předem schválí všechno, co nedopadlo jako tvrdé deny

Volič sahá jen na vestavěný harness. Adaptér Claude Code pouští vlastní nástroje mimo tuhle bránu.

Zjisti, kam guardraily nedosáhnou

Sekce “Zjisti, kam guardraily nedosáhnou”

Tabulka Kde se pravidla vynucují dole na stejné stránce je verze tohohle v aplikaci: u každé třídy efektu říká, jestli ji daný runner chytí na bráně politiky, nechá na sandboxu, nebo ji vůbec neumí zachytit.

  • Adaptér Claude Code je na vlastních voláních nástrojů hlídaný jen zčásti. Claude Code se spouští s --dangerously-skip-permissions, takže jeho volání read, write a edit bránou nikdy neprojdou. Jeho příkazy bash se k ní dostanou přes hook, který zařadí příkazový řádek, a jeho pushe jdou přes bránu pro push jako u každého agenta. Hlídá se i plocha nástrojů MCP, kterou volá zpátky, a příkaz shellu, kterým ho Control Center spouští.
  • Vlastní výstupní sloveso režimu (submit_plan, propose_orchestration) je připnuté a nejde ho zakázat — jinak by režim strukturálně neuměl doručit svůj jediný výstup.
  • Jestli sandbox ta pravidla podpírá, záleží na hostiteli. Kde cc_server najde backend, obalí CLI Claude Code a nástroj bash harnessu, takže i pravidlo, které jsi nenapsal, má pod sebou podlahu operačního systému. Na Windows žádná není a na Linuxu nebo WSL2 bez bwrap a socat taky ne. Tam jsou guardraily a plocha nástrojů režimu celé vynucení, ne jeho druhá linie. Ve kterém případě jsi, zjistíš v Nastavte politiky sandboxu.