A kutatás célja az volt, hogy a smolmachines/smolvm projektet mint gyors és biztonságos sandboxot vizsgálják meg olyan feladatok futtatására, amelyek felhasználói Python vagy JavaScript kódot hajtanak végre. A követelmények: korlátozott RAM- és CPU-felhasználás (például védelem a "while true" típusú végtelen ciklusok ellen), nincs hálózati hozzáférés, és a fájlrendszerhez csak előre kijelölt fájlokhoz lehessen hozzáférni — így használható legyen adatformázási, transzformációs feladatokhoz és hasonlókhoz.
A kísérlet és a környezet korlátai
A feladatot Claude Fable 5 kapta meg Claude Code for web környezetben. A Claude Code konténer környezeti adatai a vizsgálatban a következők voltak:
- Linux 6.18.5-fc-v20 (a konténer maga is egy Firecracker vendéggéphoston fut)
- 4 virtuális vCPU
- 15 GB RAM
A futtatási környezetből hiányzott a /dev/kvm eszköz és a processzorhoz tartozó vmx/svm CPU jelzők, ami azt jelenti, hogy a nested virtualization (a vendég környezeten belüli virtuális gépek futtatása) nem elérhető volt. Ennek következményeként a smolvm parancs (például smolvm machine run) a várt módon hibára futott: a rendszer "kvm not available" üzenetet adta.
A megoldás: GitHub Actions futtatók használata
Mivel a Claude Code környezete nem biztosított nested-virt képességet, a kutatás résztvevője tervet váltott: a GitHub Actions ubuntu futtatói kifejezetten kitenyészett /dev/kvm eszközt kínálnak, így ezek alkalmasak a smolvm valódi tesztelésére. A következő lépéseket hajtotta végre:
- egy ideiglenes GitHub Actions workflow-t hozott létre az érintett ágon,
- ezen a runneren telepítette a smolvm-et,
- lefuttatta a tesztcsomagot a vizsgált ágon és begyűjtötte a logokat,
- a végső commitban eltávolította az ideiglenes workflow-t.
Így sikerült a tesztelési sorozatot valódi /dev/kvm hozzáféréssel futtatni anélkül, hogy a Claude Code környezet korlátaival kellett volna küzdeni.
Miért fontos ez?
A smolvm célja, hogy könnyűsúlyú, gyors virtuális gépeket biztosítson sandboxolt környezetként, ami vonzó lehet olyan szolgáltatások számára, amelyek felhasználói kódot hajtanak végre biztonságosan. A nested virtualization hiánya sok felhő- és konténer-környezetben korlátozza az ilyen megoldások kipróbálását; a GitHub Actions használata praktikus megkerülő megoldást jelent a fejlesztési és kutatási fázisban, mivel a futtatók natívan hozzáférést adnak KVM-hez.
Rövid következtetés
A kísérlet azt szemlélteti, hogy a smolmachines/smolvm ígéretes lehet sandboxolt Python és JavaScript futtatásra, de a környezeti korlátok (különösen a nested virt hiánya) könnyen megakaszthatják a helyi vagy konténeres tesztelést. A GitHub Actions runner-ekre áttérés lehetővé tette a szerző számára a smolvm tényleges telepítését és tesztelését a vizsgált ágon, logok gyűjtésével és az ideiglenes workflow eltávolításával a repository tisztán tartása mellett.
Tags: research, sandboxing, ai, github-actions, generative-ai, llms, claude-mythos-fable



