ai:platformy:openwork

OpenWork

OpenWork je open-source desktopová a serverová vrstva pro práci s AI coding agenty, kterou projekt popisuje jako alternativu ke Claude Cowork nebo Codexu pro týmové použití. Je postavený nad OpenCode a kombinuje lokální běh, připojení na vzdálené workery a workflow vhodnější pro sdílení v týmu.

README projektu staví OpenWork na několika principech:

  • Local-first, cloud-ready — aplikace se spouští lokálně a vzdálené sdílení se zapíná až ve chvíli, kdy je potřeba
  • Composable — OpenWork lze použít jako desktop aplikaci, server nebo přes konektory pro WhatsApp, Slack a Telegram
  • Ejectable — protože je postavený nad OpenCode, lze použít i capability, které ještě nemají vlastní GUI
  • Sharing is caring — výchozí scénář je solo provoz na localhost, sdílení je vědomý krok navíc

Z praktického pohledu jde o vrstvu, která má OpenCode posunout z čistě vývojářského CLI/TUI do podoby použitelnější pro opakovatelné agentické workflow a týmovou spolupráci.

Podle README projekt obsahuje hlavně tyto části:

  • Host mode — spuštění OpenCode lokálně na vlastním počítači
  • Client mode — připojení k existujícímu OpenCode serveru přes URL
  • Sessions — vytváření a přepínání session a posílání promptů
  • Live streaming — realtime aktualizace přes SSE endpoint
  • Execution plan — zobrazení todo kroků z OpenCode jako timeline
  • Permissions — zpracování požadavků na oprávnění typu allow once / always / deny
  • Templates — ukládání a opakované spouštění běžných workflow
  • Debug exports — export runtime debug reportu a developer logů
  • Skills manager — správa nainstalovaných skillů ve složce .opencode/skills

OpenWork umí běžet lokálně i proti vzdálenému workeru.

V host režimu spustí lokální stack nad vybraným projektem a UI se na něj připojí. Výchozí runtime používá komponentu openwork z balíku openwork-orchestrator, která orchestruje opencode, openwork-server a volitelně i opencode-router.

Fallback režim direct místo toho spouští přímo:

opencode serve --hostname 127.0.0.1 --port <free-port>

V client režimu se desktop aplikace nepokouší nic hostovat lokálně a jen se připojí k již existujícímu OpenCode serveru podle URL. To dává smysl ve chvíli, kdy agent běží jinde a desktop funguje jen jako klientské rozhraní.

README uvádí, že UI používá @opencode-ai/sdk/v2/client. Prakticky to znamená připojení k serveru, práci se session, odesílání promptů, odběr SSE událostí a čtení todo položek nebo permission requestů.

Desktop aplikaci lze stáhnout z openworklabs.com/download nebo z GitHub Releases. README uvádí přímé buildy pro macOS a Linux. Windows je v době psaní řešený přes placený support plán na openworklabs.com.

README také zmiňuje hostované OpenWork Cloud workery, které se spouštějí z webové aplikace po checkoutu a potom se připojí z desktopu přes Add a workerConnect remote.

Pokud není potřeba desktopové UI, existuje samostatný CLI host:

npm install -g openwork-orchestrator
openwork start --workspace /path/to/workspace --approval auto

Tahle varianta je vhodná pro provoz OpenCode + OpenWork serveru bez desktopové aplikace.

Pro lokální vývoj README uvádí požadavky na Node.js, pnpm, Rust toolchain, Tauri CLI a nainstalovaný opencode v PATH. Pro desktopový vývoj je navíc potřeba Bun 1.3.9+.

Základní spuštění ze zdrojového checkoutu vypadá takto:

pnpm install
pnpm dev

Pro samotné webové UI bez desktop shellu je v README uvedeno:

pnpm dev:ui
  • OpenWork spravuje OpenCode pluginy přes soubor opencode.json — buď v projektu, nebo v globální konfiguraci uživatele
  • V host režimu se služba standardně váže na 127.0.0.1
  • README uvádí, že OpenWork ve výchozím stavu skrývá model reasoning a citlivá metadata nástrojů
  • Na Linuxu může desktop narážet na problémy s WebKitGTK; README pro Wayland/Hyprland uvádí tyto workaroundy:
WEBKIT_DISABLE_DMABUF_RENDERER=1 openwork
WEBKIT_DISABLE_COMPOSITING_MODE=1 openwork

OpenWork dává smysl hlavně tam, kde samotné CLI OpenCode nestačí a je potřeba nad ním přidat přívětivější týmové rozhraní:

  • když je potřeba lokální desktop nad OpenCode bez stavění vlastního klienta
  • když je potřeba vidět timeline kroků, permission requesty a debug exporty na jednom místě
  • když je potřeba přepínat mezi lokálním během a vzdáleným workerem
  • když se ukládají opakovatelná workflow jako šablony
  • když je cílem rozšířit OpenCode o UI a správu skillů bez opuštění jeho plugin modelu
  • ai/platformy/openwork.txt
  • Poslední úprava: 2026/04/03 06:18
  • autor: Petr Nosek