Co je sandbox pro AI agenta?
Sandbox pro AI agenta je izolované běhové prostředí, které omezuje, čeho se akce agenta mohou dotknout. Agent dál čte soubory, spouští příkazy a volá nástroje, ale prostředí určuje, ke kterým souborům, příkazům a síťovým cílům se vůbec dostane. Cokoli za těmi hranicemi selže, ať už si o to agent řekl vědomě, poslechl špatnou instrukci, nebo jen sestavil cestu o úroveň výš, než měl.
Podstatný je rozdíl mezi oprávněním a dosahem. Model oprávnění odpovídá na otázku „smí to agent udělat?“ a stojí na tom, že se někdo rozhodne správně, obvykle pod časovým tlakem. Sandbox odpovídá na otázku „čeho se ten příkaz může za běhu dotknout?“ a platí bez ohledu na to, kdo akci schválil. Obojí se doplňuje a jedno druhé nenahradí.
Lidsky řečeno
Představte si dílnu za zamčenými dveřmi. Uvnitř smíte použít každý nástroj, rozřezat jakýkoli materiál a nadělat nepořádek, jaký chcete. Jen nesmíte vyjít se zapnutou okružní pilou do zbytku domu. Nikdo vás nemusí hlídat a schvalovat každý řez, protože dveře už rozhodly, jak daleko se ten nepořádek rozšíří. Sandbox pro agenta jsou přesně ty dveře.
Jak to funguje
Izolace se skládá ze dvou částí a potřebujete obě. Anthropic v technickém textu o sandboxingu v Claude Code uvádí, že účinný sandboxing vyžaduje izolaci souborového systému i sítě. Každá z nich totiž zavírá únikovou cestu, kterou ta druhá nechává otevřenou. Bez síťové izolace dokáže kompromitovaný agent pořád odeslat soubory ven, třeba SSH klíče. Bez izolace souborového systému se ze sandboxu dostane a k síti se pak stejně dopracuje.
- Izolace souborového systému povoluje čtení i zápis uvnitř pracovního adresáře a blokuje změnu souborů mimo něj. Zbloudilý příkaz tak nepřepíše nic jinde na stroji.
- Síťová izolace vede provoz přes proxy, která stojí mimo sandbox a vynucuje, na které domény se dá dosáhnout. Agentovi tak nezůstane otevřené připojení ven.
- Hranici vynucuje vrstva pod agentem. Claude Code k tomu používá mechanismy operačního systému, na Linuxu bubblewrap a na macOS Seatbelt. Omezení proto platí i pro podprocesy, které příkaz spustí, ne jen pro to, co dělá agent sám.
Ten poslední bod je v praxi nejdůležitější. Agent, který instaluje balíček, spouští cizí instalační skript. Pravidlo vynucené na úrovni tool callů samotného agenta ten skript nikdy neuvidí.
Proč na tom záleží
Sandboxing se obvykle obhajuje bezpečností. Měřitelný přínos v každodenní práci je ale jiný. Odstraní kontrolu, která stejně nefungovala.
- Kliknout na „schválit“ není revize. Anthropic uvádí, že uživatelé Claude Code schválí 93 % dotazů na oprávnění. Kontrola, kterou lidé víc než v devíti případech z deseti jen potvrdí, není rozhodovací bod, ale zdržení.
- Méně přerušení, ne méně pravidel. Interní data Anthropicu přisuzují sandboxingu pokles počtu dotazů na oprávnění o 84 %. Berte to číslo jako jejich měření na jejich provozu, ne jako hodnotu, se kterou byste měli počítat. Přenosný je směr: hranice dohodnutá jednou funguje líp než otázka u každé akce.
- Přežije prompt injection. Prompt injection, která agenta přesvědčí, aby přepsal soubor mimo pracovní adresář, narazí na hranici souborového systému. Pokus odeslat tajemství na doménu útočníka skončí na proxy. Agent se nechá oklamat, akce ale nedopadne.
- Dělá autonomii únosnou. Dlouhé běhy bez dozoru dávají smysl jen tehdy, když je nejhorší možný výsledek ohraničený. Teprve díky hranici je práce bez člověka ve smyčce rozhodnutí, a ne sázka.
Na co si dát pozor
- Sandbox neomezuje legitimní přístup. Uvnitř hranice může agent použít jakékoli přihlašovací údaje a nástroje, které mu dáte. Agent se zapisovacím tokenem k repozitáři do něj pořád může poslat něco špatného. Na toto riziko je izolace špatný nástroj. Správné je omezit rozsah tokenu a pohlídat merge. Od toho jsou AI guardrails a revize s člověkem ve smyčce.
- Kontejner je jedna hranice, ne záruka izolace. Bezpečnostní dokumentace Dockeru uvádí, že control groups slouží k účtování a omezování zdrojů. Výslovně dodává, že nebrání jednomu kontejneru sáhnout na data a procesy jiného. Tu část řeší jmenné prostory. Než prostředí prohlásíte za izolované, musíte vědět, který mechanismus dává jakou záruku.
- Schvalování klasifikátorem je další vrstva, ne základ. Anthropic v textu o delegování schvalování na model uvádí u celé pipeline 0,4 % falešně pozitivních výsledků na reálném provozu. U akcí, které opravdu byly přehnaně horlivé, je podíl falešně negativních 17 %, měřeno na malém vzorku 52 takových akcí. Zhruba jedna ze šesti akcí, které jste chtěli zastavit, prošla. Uvnitř sandboxu je to užitečné, jako náhrada sandboxu ne.
- Pravidla sandboxu platí doslova, a něco to stojí. Každého z našich agentů provozujeme ve vlastním kontejneru, se zápisem jen do jeho složky a s hookem, který odmítá zakázané shellové příkazy. Jeden náš běh skončil odmítnutím, protože se název zakázaného příkazu objevil v uvozovkách uvnitř komentáře, který agent právě posílal. Hlídač porovnával text příkazu, ne jeho záměr. Přesně to z něj dělá spolehlivou pojistku a přesně proto občas zablokuje práci, která byla v pořádku. Počítejte s tím dopředu, místo abyste pravidlo rozvolnili hned, jakmile vás poprvé zdrží.
- Izolace není správnost. Sandbox omezuje, kam až špatný kód dosáhne. O tom, jestli kód funguje, neříká nic. Destruktivní migrace spuštěná uvnitř hranice zničí stejná data, jako by zničila venku. Testy, code review i postupy bezpečnosti agentní AI mají proto stejnou váhu jako dřív.
Související články
- Co to je Agent? – to, co sandbox obklopuje, a proč tu hranici potřebuje.
- Co je prompt injection? – útok, který má sandbox ustát.
- Co jsou AI guardrails? – kontroly chování, které stojí vedle izolace za běhu.
- Co je human-in-the-loop (HITL)? – kam schvalování patří i tehdy, když hranice existuje.
- Co je bezpečnost agentní AI? – širší bezpečnostní rámec, ve kterém je sandbox pro agenta jen jedním dílem.
Chcete být o krok napřed?
Nenechte si utéct naše nejlepší postřehy. Žádný spam, jen praktické analýzy, pozvánky na exkluzivní eventy a shrnutí podcastů přímo do vaší schránky.
