Orice agent care scrie cod trebuie, mai devreme sau mai târziu, să-l ruleze. Ăsta e tot rostul unui agent care scrie cod — și tot partea incomodă. Modelul tocmai a produs un script pe care nu l-a executat niciodată, care instalează pachete pe care nu le-a verificat nimeni și atinge fișiere pe care nu le-a listat nimeni. Să-l rulezi lângă cheile tale SSH și lângă .env-ul de producție e un pariu pe care îl faci de multe ori pe zi.
Un sandbox face pariul ieftin. Codul primește propria mașină Linux pentru câteva secunde sau minute, apoi mașina dispare.
Ce primește agentul
Fiecare sandbox e o microVM Firecracker: propriul kernel, propriul sistem de fișiere, propriul spațiu de nume de rețea. Nu e un container care folosește kernelul tău și nu e un director pe serverul tău. Unul pornește în aproximativ o secundă, lucru care contează când un agent pornește câte unul pentru fiecare sarcină, nu unul pe zi.
Înăuntru sunt Python 3.12 cu pip, Node.js 22 cu npm, bash, git și curl. Internetul spre exterior merge — agentul poate face pip install pandas sau poate clona un repo. Cel spre interior nu: niciun port deschis, niciun SSH. Comenzile, fișierele și ieșirea trec prin API-ul nostru, și asta e singura ușă.
Trei căi de intrare:
- MCP — dacă agentul tău trăiește în Claude, Cursor, Cline sau orice știe MCP, primește unelte de sandbox lângă uneltele VPS. Niciun cod din partea ta.
- SDK Python sau TypeScript —
pip install eqvpssaunpm i @eqvps/sdk, apoi creezi, rulezi, ștergi. - REST simplu — documentat în documentația sandboxurilor și în specificația OpenAPI.
O buclă minimă în Python arată așa:
from eqvps import Sandbox
with Sandbox.create(tariff="small") as sb:
sb.upload("/root/task.py", agent_generated_code)
result = sb.exec("python3 /root/task.py", timeout=55)
print(result.exit_code, result.stdout[-2000:])
# the sandbox is deleted here, also if anything above raised
Un cod de ieșire diferit de zero vine înapoi ca rezultat normal, nu ca excepție — exact ce vrei când agentul trebuie să citească tracebackul și să încerce din nou.
Cazurile periculoase și ce se întâmplă cu ele
Un pachet ostil sau doar stricat. Rulează într-o VM care nu ține nimic de-al tău. Ștergi sandboxul și a dispărut.
Secretele. Nu pune cheile tale API principale în codul pe care îl scrie agentul. Dacă o sarcină chiar are nevoie de una, dă-o ca variabilă de mediu a sandboxului: valorile sunt stocate criptat, nu ajung niciodată în loguri, iar API-ul returnează mereu doar numele lor.
Buclele scăpate de sub control. Fiecare comandă se oprește la 55 de secunde, dacă n-ai pornit-o ca sarcină de fundal. Un sandbox efemer inactiv se șterge singur după timeoutul de inactivitate (implicit 5 minute). O limită de cheltuieli zilnică sau lunară oprește sandboxurile noi când agentul a cheltuit destul pentru o zi.
Exfiltrarea. Aici trebuie să fim direcți: internetul spre exterior e deschis, pentru că fără el pip install nu merge. Un sandbox îți protejează mașina; nu oprește codul să trimită pe internet tot ce poate citi în interiorul sandboxului. Așa că regula e simplă — pune în sandbox doar ce n-ai problemă să pierzi.
Alegerea tarifului
| Tarif | vCPU / RAM | Pe oră | Bun pentru |
|---|---|---|---|
| micro | 0,25 / 512 MB | $0.0165 | scripturi ocazionale, verificări de date |
| small | 0,5 / 1 GB | $0.033 | majoritatea codului de agent, instalări pip |
| standard | 1 / 2 GB | $0.066 | pandas, suite de teste |
| plus | 2 / 4 GB | $0.132 | instalări grele (torch), builduri |
Facturarea e la secundă, minimum 60 de secunde, din același sold preplătit ca VPS-urile noastre. O sarcină obișnuită de agent — creare, instalarea a două pachete, rulare, ștergere — se termină în sub un minut pe small, deci se facturează minimul de 60 de secunde: în jur de $0.0006. Sincer, pentru un agent care rulează cod de câteva sute de ori pe zi, factura de sandbox e cea mai mică linie din buget; tokenurile LLM costă mult mai mult.
Când un sandbox e unealta greșită
Dacă agentul trebuie să servească ceva — o aplicație web, un receptor de webhookuri, un bot care ascultă mesaje — un sandbox nu va merge, pentru că nimic nu ajunge la el din exterior. La fel pentru un serviciu de lungă durată care trebuie să ruleze luni întregi. Asta e treabă de VPS: vezi VPS pentru agenți AI. O împărțire frecventă: agentul trăiește pe un VPS mic și creează sandboxuri pentru fiecare bucată de cod pe care n-a mai văzut-o.
Calculul greu și susținut e cealaltă limită. Un sandbox ținut la CPU complet mai mult de 15 minute e tratat ca abuz, așa că sarcinile lungi de calcul numeric își au locul pe un server închiriat cu luna.
Primii pași
Creează un cont, ia un token și rulează primul sandbox — ghidul de conectare te duce prin asta, iar conturile noi primesc $1 de timp în sandbox ca să încerce. Apoi îndreaptă agentul spre pagina sandboxurilor sau spre uneltele MCP și lasă-l să strice lucruri acolo unde stricatul e gratis.
Pas cu pas: prima ta sarcină de agent într-un sandbox. Legate: rulări de teste CI izolate, evaluarea LLM și code review și verificarea PR-urilor.
Comentarii
Încă nu există comentarii. Fii primul.