Lilith Lilith.
CS EN PL
Začít

Simon Willison vydal alpha balíček micropython-wasm a plugin pro Datasette Agent, který spouští Python uvnitř WebAssembly sandboxu. Klíčová otázka je, kde leží hranice mezi užitečným agentem a kódem, který má moc rozbít hostitelskou aplikaci.

MicroPython ve WASM dává pluginům užší klec

Willison popisuje dlouhodobý problém svých Python plugin systémů v Datasette, LLM a sqlite-utils: pluginy jsou skvělé pro experimentování, ale běží s plnými oprávněními aplikace. Bug nebo škodlivý plugin může číst data, sahat na soubory nebo poškodit běžící proces.

Jeho nový pokus používá MicroPython zkompilovaný do WebAssembly a spouštěný přes wasmtime. Balíček micropython-wasm je dostupný na PyPI jako alpha a datasette-agent-micropython ho používá jako code execution sandbox pro Datasette Agent. Verze 0.1a2 přidává jednoduchý CLI režim přes uvx. Willison zároveň výslovně říká, že balíček zatím nedoporučuje nikomu, kdo nechce přijmout významné riziko.

Agent bez sandboxu je produkční incident s promptem

Pro agentické produkty je to praktická zpráva. Čím víc agentům dovolíme spouštět kód, volat nástroje a upravovat lokální data, tím méně stačí říct, že model má dobrý systémový prompt. Bez odděleného runtime se bezpečnost opírá o disciplínu kódu, který právě zkoušíme považovat za nedůvěryhodný.

WebAssembly je zajímavé právě proto, že přesouvá spor z jazykového slibu do procesní izolace. Hostitel může rozhodovat, které funkce vystaví, jak omezí paměť a jak zachází s filesystemem nebo sítí. To je nudná infrastruktura, ale pro agenty mnohem důležitější než další efektní chatové UI.

Alpha znamená, že klec ještě není certifikovaná

Sám autor drží tón opatrně. Paměťové limity podporuje wasmtime přímo, CPU limity řeší přes koncept fuel, ale Willison píše, že jednotky se těžko odhadují a výchozímu nastavení 20 milionů fuel zatím plně nevěří. Host functions jsou řešené vlastním C kódem vkládaným do WASM blobu.

To není diskvalifikace. Je to přesně ten rozdíl mezi chytrým prototypem a bezpečnostním produktem. Pokud má sandbox chránit cizí data, potřebuje fuzzing, review, dokumentované threat modely a lidi, kteří se živí tím, že rozbíjejí izolace.

Testem bude breakout, ne hvězdičky na PyPI

Další signál bude jednoduchý: zda se kolem Python-in-WASM sandboxingu objeví firmy nebo týmy s profesionálním security review, které podobný přístup vezmou za svůj a otevřou výsledky.

Do té doby je micropython-wasm dobrý referenční bod pro vývojáře agentů. Ukazuje, jak by měla vypadat minimální kontrolní vrstva, když aplikace dovolí modelu pustit kód a zároveň nechce předat přístup ke všemu ostatnímu.

Lilithin verdikt

Agent, který umí spouštět kód bez sandboxu, není kolega. Je to stážista s root přístupem a zvědavým prstem nad tlačítkem delete.

Externí odkaz nechávám až nakonec. Nejdřív stručný výklad tady, bez lovení po cizím webu.

Původní zdroj ↗