Minulý týden prošel OpenHands, open-source agent pro autonomní programování, milníkem, na který spousta vývojářů čekala: verze 1.0. Nejde o dalších "AI asistentů do editoru". OpenHands je platforma, která dostane zadání, projde si repozitář, napíše kód, spustí testy, opraví chyby a vrátí hotový pull request — a celé to může běžet na tvém serveru, s tvým modelem a bez toho, aby jediný řádek tvého kódu opustil tvou infrastrukturu.
Číslo, které stojí za pozornost: s frontier modelem v backendu OpenHands zvládne autonomně asi 68 % úloh ze SWE-bench Verified (benchmark složený z 500 reálných GitHub issues). To ho řadí do stejné ligy jako komerční agenty, za které platíš předplatné nebo platební kartu u každého úkolu. A pokud ho spáruješ s open-weight modelem Devstral 24B, dosáhneš 46,8 % — což je výsledek, který veřejně reportoval i Devin 2.0. Jakožto licencovaný MIT projekt ho nasadíš zadarmo.
Pojďme si projít, co verze 1.0 přinesla, a hlavně jak si ji nasadit a nastavit tak, aby to dávalo smysl v reálné práci.
Co vlastně verze 1.0 znamená
OpenHands existoval i dřív, ale argument proti self-hostingu byl vždycky stejný: sandboxing nebyl úplně production-ready, bezpečnostní politiky byly spíš na papíře a agent bez limitů uměl spotřebovat celý stroj. Verze 1.0 tyto výhrady adresuje přímo:
- Docker sandbox jako výchozí nastavení. Každý úkol běží v izolovaném kontejneru, odděleném od hostitele. Agent píše, spouští a testuje kód uvnitř sandboxu — k tvému hostitelskému systému se nedostane.
- Vestavěné bezpečnostní politiky. Můžeš explicitně definovat, co agent smí a nesmí, místo spoléhání se na to, že "si model rozmyslí" nebezpečný příkaz.
- Limity prostředků. CPU, paměť i čas běhu jdou omezit, takže rozjetý agent nesplituje celý server.
- Plugin systém. Rozšiřování o vlastní nástroje a integrace přestalo vyžadovat forkování celého projektu.
- Správa prostředí přes
openhands.workspace. Konfigurace exec prostředí se už nedokáže tiše rozejít uprostřed běhu — což se tý hodí ve chvíli, kdy agent běží hodinu na složitém refaktoringu.
Proč self-host, když existují cloudoví agenti
Tři důvody, které v praxi rozhodují:
1. Kód ti neopustí infrastrukturu. Pokud děláš na interních systémech, klientových repozitářích nebo čemkoli s NDA, posílat celý kontext úkolu do cizího cloudu jeproblém. S OpenHands si připojíš vlastní model — od API providera, kterého si vybereš, až po model běžící na tvém hardwaru.
2. Předvídatelné náklady. Komerční agenti účtují per úkol nebo předplatným, u dlouhých úloh se to sčítá. U self-hostu platíš jen tokeny (nebo nic, když jedeš na lokálním modelu) a vlastní compute.
3. Model-agnostičnost. OpenHands není vázaný na jednoho providera. Dnes Claude, zítra GPT, pozítří lokální model — měníš jednu proměnnou v konfiguraci, ne celý toolchain.
Instalace krok za krokem
Nejjednodušší cesta je oficiální instalátor:
curl -fsSL https://install.openhands.dev/install.sh | sh
Pokud chceš plnou kontrolu (a u agenta, který spouští kód, ji chceš), jdi přes Docker:
export PROJECTS_PATH="$HOME/projects" # adresář s tvými projekty
mkdir -p "$PROJECTS_PATH" "$HOME/.openhands"
docker run -it --rm \
-p 8000:8000 \
-v "$HOME/.openhands:/home/openhands/.openhands" \
-v "${PROJECTS_PATH}:/projects" \
ghcr.io/openhands/agent-canvas:1.18.0
Tím spustíš Agent Canvas — webové rozhraní, které funguje jako self-hosted vždy dostupný inženýrský tým. Otevřeš browser, vybereš projekt z přimountovaného adresáře a zadáš úkol.
Klíčové principy nastavení:
- Repozitáře mountuj, nekopíruj. Práce probíhá na přimountovaném svazku, takže výsledky hned vidíš v gitu.
- Sandbox povol vždy. I když má agent dobře nastavené politiky, izolace na úrovni kontejneru je pojistka, která tě zachrání, když se agent rozhodne "kreativně" řešit problém.
- Limity nastav hned na začátku. Zvlášť u dlouhých úloh — bez limitu ti jeden rozjetý debugging sežere celý den compute.
Výběr modelu: API versus lokální model
Tady je zajímavá ekonomika celého řešení:
| Model | SWE-bench Verified | Náklady |
|---|---|---|
| Frontier model (API) | ~68 % | Platíš tokeny |
| Devstral 24B (lokální) | ~46,8 % | Jen vlastní compute |
| Devin 2.0 (komerční) | ~46,8 % (veřejně reportováno) | Předplatné / per úkol |
Praktický přístup: běžnou práci (bug fixy, drobné featury, refaktoring, testy) zvládne levnější nebo lokální model. Náročné úlohy (architektonické změny, složité bugy napříč službami) přepni na frontier model. V OpenHands je to změna konfigurace, ne migrace.
Jak s agentem reálně pracovat
Workflow, které se v praxi osvědčilo:
- Zadávej malé, dobře definované úkoly. "Oprav bug v checkoutu, když uživatel zadá promo kód s diakritikou" funguje. "Vylepši e-commerce" nefunguje — ani u 68% úspěšnosti.
- Nech agenta psát testy. Jedna z nejlepších využití: agent napíše testy pro existující kód, spustí je, a pak opraví, co selže. Sandboxed prostředí je na to ideální.
- Review jako u juniora. 68 % znamená, že zhruba každý třetí úkol dopadne špatně nebo neúplně. Čti diff, nenech merge automaticky bez kontextu.
- Využij microagents. Můžeš definovat per-projekt pravidla (coding standard, jaké příkazy spouštět, čeho se vyvarovat), které agent načte u každého úkolu v daném repozitáři.
Bezpečnost: co nastavit, než agenta pustíš na produkční kód
- Oddělené credentials. Dej agentu vlastní GitHub token s omezenými právy (jen na konkrétní repozitář, jen push do branch). Nikdy vlastní hlavní token.
- Outbound síť omez. Sandbox nemusí mít plný přístup k internetu. Většina úloh potřebuje jen repozitář a balíčkovací repozitáře.
- Logging zapni. U autonomous systémů je záznam o tom, co agent dělal a proč, zásadní — jak pro debugging, tak pro audit.
- Produkční prostředí drž mimo dosah. I s nejlepšími politkami platí: agent dostane přístup k vývojovému/pro staging prostředí. Ne k produkci.
Pro koho to je (a pro koho ne)
OpenHands dává smysl, pokud: máš Docker a alespoň částečně spravuješ vlastní infrastrukturu, chceš automatizovat rutinní engineering práci (testy, refactoring, drobné fixy), nebo potřebuješ AI agenta, ale nemůžeš poslat kód do cizího cloudu.
Nedává smysl, pokud: nechceš nic spravovat a radši platíš za plně managed službu, nebo nemáš proces na review agentího kódu. Agent bez review procesu je způsob, jak si do repozitáře nasypat rychle kód, kterému nerozumíš.
Verze 1.0 posunula self-hosted kódovací agenty z kategorie "experiment pro nadšence" do "reálná alternativa ke komerčním nástrojům". Sandbox, bezpečnostní politiky a limity prostředků přesně to, co dřív chybělo. A pokud máš rezervy vůči posílání kódu do cizích cloudů, je to teď nejpřímočařejší cesta, jak mít autonomního agenta plně pod kontrolou — od modelu po přístupová práva.