AI kódoló ügynökök
opencode
Az opencode nyílt forráskódú, terminálban futó AI kódoló ügynök kliens-szerver felépítéssel, sok modellszolgáltatóval és MCP eszközökkel. Kódmunkára használjuk.
Az opencode nyílt forráskódú AI kódoló ügynök, amely elsősorban a terminálban fut. Nem kiegészítő egy szerkesztőn belül: saját felülete van, és a projekt könyvtárában indítva olvassa, szerkeszti és futtatja a kódot. Emellett elérhető asztali alkalmazásként és szerkesztőbe épülő változatban is. A forráskód a github.com/anomalyco/opencode címen található, MIT licenccel.
Két döntést érdemes kiemelni, mert ezek határozzák meg, hogyan illeszkedik a munkafolyamatainkba. Az egyik, hogy a mag nincs egyetlen modellszolgáltatóhoz kötve. A másik, hogy a felület és a motor szétválik egymástól.
Telepítés és első indítás
Több telepítési csatorna van: telepítő szkript, npm csomag, Homebrew, Arch csomagok, Nix, valamint Docker image a ghcr.io/anomalyco/opencode címen. Windows alatt Scoop, Chocolatey, npm és mise közül választhatunk, a Bun-alapú telepítés a dokumentáció szerint még készül. A telepítési könyvtár sorrendje fix: előbb az OPENCODE_INSTALL_DIR, aztán az XDG_BIN_DIR, majd a HOME/bin, végül a HOME/.opencode/bin.
Indítás után a /init parancs beolvassa a projektet, és AGENTS.md fájlt készít a gyökérbe, így az ügynök a projekt szerkezetéhez és mintáihoz igazodik. A Tab billentyű vált a beépített ügynökök között: a build mód teljes hozzáféréssel dolgozik, a plan mód csak olvas, fájlt nem módosít, és shell parancs előtt engedélyt kér. Nagyobb feladatnál ez a sorrend válik be: előbb tervet kérünk, átnézzük, és csak utána engedjük a módosítást. A /undo és a /redo visszavonja, illetve visszahozza a változtatásokat, a /share pedig linket készít a beszélgetésből.
Modellek és szolgáltatók
Az eszköz az AI SDK-t és a Models.dev katalógust használja, a dokumentáció szerint 75+ szolgáltatót támogat, és helyi modellek futtatására is alkalmas. A hitelesítő adatokat a /connect parancs gyűjti be, és a ~/.local/share/opencode/auth.json fájlba kerülnek. OpenAI-kompatibilis végpont saját szolgáltatóként vehető fel: a baseURL és az apiKey állítható, a modell kontextus- és kimeneti korlátja pedig megadható, hogy az ügynök lássa, mennyi keret maradt. A kínálat blacklist és whitelist opcióval szűkíthető, így a modellválasztóban nem jelenik meg minden, amit a szolgáltató kínál.
Nálunk ez azt jelenti, hogy a modell cseréje nem jár az eszköz cseréjével. Ugyanaz a munkafolyamat fut helyi modellen és külső szolgáltatón.
Kliens és szerver
Az opencode indításakor egy terminálos felület és egy szerver is elindul. A felület a kliens, a szerver pedig OpenAPI 3.1 leírást tesz közzé a /doc végponton, amiből kliens generálható. Külön szerver is indítható az opencode serve paranccsal, alapértelmezés szerint a 127.0.0.1:4096 címen, port, hostname, CORS eredetek és mDNS felderítés kapcsolóval. Jelszavas védelem az OPENCODE_SERVER_PASSWORD változóval kérhető, a felhasználónév alapértéke opencode.
Az API-t ad a projektekhez, a munkamenetekhez, a szolgáltatókhoz és az ügynökökhöz, az eseményeket pedig szerver által küldött folyamon lehet olvasni. A felület végpontjain keresztül a terminálos kliens is vezérelhető, például prompt tölthető be vagy küldhető el. Ezt használják a szerkesztőbe épülő változatok is, és ez teszi lehetővé, hogy az ügynököt saját szkriptből indítsuk. Docker konténerből ugyanez a szerver érhető el, ha nem a munkaállomáson akarjuk futtatni.
Eszközök és jogosultságok
Az opencode MCP szervereket is fogad, helyit és távolit egyaránt, a konfiguráció mcp szakaszában. A távoli szerverek OAuth folyamata automatikus, a tokent az eszköz tárolja. A csatlakoztatott szerverek nevesítve szólíthatók meg a promptban. A dokumentáció figyelmeztet rá, hogy minden MCP szerver kontextust foglal, és nagy eszközkészletnél ez a keret hamar elfogy.
A jogosultságokat a permission szakasz szabályozza: minden művelet lehet engedélyezett, engedélykérő vagy tiltott, a szabályok pedig minta alapján illeszkednek, és az utolsó illeszkedő nyer. Shell parancsokra külön minták adhatók, így engedhető a git és tiltható a törlés. Az alapértelmezés megengedő: a legtöbb művelet engedély nélkül fut, a .env fájlok olvasása viszont tiltott, engedélykéréshez kötött a projektkönyvtáron kívüli elérés, valamint az, ha ugyanaz a hívás háromszor ismétlődik. Az automatikus jóváhagyás kapcsolója minden nem tiltott kérést átenged, ezért csak ellenőrzött környezetben érdemes használni. Az ügynökönkénti felülírás is támogatott.
Amit érdemes szem előtt tartani
- A minőség a választott modelltől függ, nem az eszköztől.
- Az engedélyek alapértéke megengedő, ezért érdemes szűk szabályokat írni, mielőtt nagy feladatot adunk.
- A sok MCP eszköz kontextust fogyaszt, és a keret kimerülhet.
- A saját szolgáltató beállítása hibára futhat: a csomagnévnek és a végpontnak egyeznie kell a szolgáltatóval, a hitelesítést pedig külön paranccsal lehet ellenőrizni.
- Az asztali alkalmazás a repó jelzése szerint béta.
Tovább olvasás
Nálunk az opencode arra való, hogy a jól körülírt, ismétlődő kódmunkát szkriptből is indítható módon átvegye, a Claude Code mellett a második terminálos ügynökként.