Kalmár Dániel · Kutatás

Két dolog hiányzik mind a tizenegy kódoló ügynökből

Négy kutató elolvasta tizenegy éles AI kódoló ügynök teljes forráskódját, nagyjából négymillió sort. Két olyan elem egyikben sem volt benne, amit a piac alapfelszerelésként árul. Ebből annak a vezetőnek, aki ilyen eszközre kér ajánlatot, két beszerzési tanulság következik. Az egyik pénzt takarít meg, a másik kérdéseket ad a kezébe.

Kalmár Dániel · Összes cikk


Modell és környezet

A pénz nagy része a modell köré épül

Az elmúlt két évben minden bevezetési projektemben ugyanaz a jelenet játszódott le az első egyeztetésen. Melyik modellt használjuk majd, kérdezte a vezető, és a szállító ajánlata is a modell nevével kezdődött. Amikor aztán a tényleges munka elindult, a modell kiválasztása egy délutánt vitt el, minden más hónapokat.

Erre a tapasztalatra ad most kutatói hátteret egy 2026 júliusában megjelent tanulmány, a Harness Engineering, Anatomy, Architecture, and Evolution of Coding Agents. Paul Barbaste, Tristan Darrigol, Germain Vu és Tom Wiltberger, az Inclusive Brains és a Wavestone AI Lab munkatársai tizenegy éles kódoló ügynök teljes forráskódját olvasták végig. A listán ott van a Claude Code, a Codex CLI, a Gemini CLI, a Mistral Vibe, az OpenHands, az Aider, a Mini-SWE-Agent, a Hermes, a Pi, az OpenCode és az OpenClaw, együtt nagyjából négymillió sor.

Az alapfogalom, amivel a szerzők dolgoznak, a vezetőnek is kézre áll. Egy ügynök szerintük egy modell plusz egy harness. A harness a modell köré épített futtatókörnyezet, vagyis minden, ami a modellen kívül esik. Ide tartozik a ciklus, amiben az ügynök lépésről lépésre halad, az eszközök, amikkel fájlt olvas és parancsot futtat, a kontextuskezelés, a biztonsági kontroll, több ügynök összehangolása és a bővíthetőség. A modellt a szállító készen veszi egy nagy laboratóriumtól, a harnesst viszont ő maga írja, vagy legalább ő választja ki és állítja be.

Egy ajánlat értéke emiatt a harnessben lakik. A modell ára nyilvános, a képességei mérhetők, és ugyanazt a modellt a versenytárs is megveszi. Amit számon lehet kérni, az a köré épített rész, és erről a részről most első kézből látszik, hogyan építik a piacvezetők.


Hét alrendszer

Mindegyik rendszer ugyanarra a hét kérdésre válaszol

A tizenegy rendszer méretben és filozófiában távol áll egymástól, a kutatók mégis ugyanazt a hét alrendszert találták meg mindegyikben. Ügynök ciklus, LLM integráció, eszközök, memória és kontextus, biztonság és jogosultság, orkesztráció, bővíthetőség. Minden termék állást foglal mind a hétben, akkor is, ha a válasz a tudatos hiány. Az Aiderben például nincs alügynök, és ez döntés, ami a kódban látszik.

Ez a hét pont nálam beszerzési ellenőrzőlistává vált. Ha egy szállító ajánlata a hétből háromról hallgat, ott is született döntés, csak nélkülem, és utólag nehezen derül ki, mi lett belőle.

Ráadásul a méret sem dönti el az eredményt. A százsoros Mini-SWE-Agent saját bevallása szerint ugyanabban a tartományban teljesít a SWE-Bench Verified mérésen, mint a milliósoros rendszerek. Amiben a nagy rendszerek többet adnak, az a biztonság, a költségkezelés, a hibatűrés és a felhasználói élmény, és ezt a négyet a benchmark nem méri. Vezetői szemmel ebből az következik, hogy a demón látott feladatmegoldás a legkevésbé megkülönböztető tulajdonság. Ami a bevezetés után fáj vagy pénzbe kerül, az a másik négy.


Első hiány

Keretrendszer egyikben sem

A kutatók név szerint ellenőrizték a LangChaint, a LangGraphot, az AutoGent, a CrewAI-t, a LlamaIndexet, a Pydantic AI-t, a Genkitet, a Google ADK-t és a Semantic Kernelt. Egyetlen vizsgált rendszer futásideje sem használ ügynök keretrendszert. A Google saját Gemini CLI-je sem épül a Google két saját keretrendszerére. Minden ciklus kézzel írt kód, a programnyelv saját aszinkron eszközeivel. A szerzők hetekig kerestek ellenpéldát, mert maguk sem hitték el az eredményt, és üres kézzel zárták a keresést.

Ez az eredmény nálam egy konkrét emléket hívott elő. Az ajánlatokban, amiket az utóbbi két évben ügyfeleim asztalán láttam, a keretrendszer neve szinte mindig szerepelt, többnyire a megbízhatóság és a jövőállóság érveként. Ha a tizenegy legnagyobb forgalmú kódoló ügynök egyike sem így készült, akkor ez az érv a kódoló ügynökök piacán legalábbis bizonyításra szorul.

Beszerzési kérdéssé fordítva így hangzik. Ha az ajánlatban keretrendszer áll, megkérdezem, miért. Jó válasz létezik, például hogy a csapat ezt ismeri, és egy kéthetes pilothoz ez a leggyorsabb út. Rossz válasz az iparági standardra hivatkozás, mert a standardot a piacvezetők nem követik. A különbség a vevőnek pénzben jelenik meg. Egy keretrendszer egy újabb függőség, aminek saját verziói, saját hibái és saját frissítési ritmusa van, és ezek mind a vevő üzemeltetési költségében landolnak a szerződés aláírása után.


Második hiány

Vektoradatbázis a kódkeresésre, nulla a tizenegyből

Egyik vizsgált rendszer sem használ vektoros beágyazásos keresést, vagyis RAG-ot arra, hogy a kódban megtalálja, mihez kell nyúlni. Helyette ripgrep szöveges keresés, glob mintázat, tree-sitter szimbólumkinyerés és automatikusan felfedezett markdown kontextusfájlok dolgoznak. A szerzők indoklása egyszerű. Egy kódbázis sűrű, determinista szerkezetet hordoz, útvonalat, nyelvi szervert, típusinformációt, és ezt a hasonlóság alapú keresés nem tudja pótolni. Ráadásul a kód percenként változik, úgyhogy az index eleve elavult, mire elkészül.

Beágyazás egyedül a beszélgetésmemóriánál bukkan fel, és ott is a lexikális keresés a bevált válasz. A Hermes például SQLite teljes szöveges keresést használ erre.

Egy dunántúli logisztikai szoftvercégnél, ahol harmincöt fejlesztő dolgozik egy nagyjából kétmillió soros kódbázison, tavasszal pont egy ilyen ajánlat feküdt az asztalon. A csomag része volt egy menedzselt vektoradatbázis a kód indexelésére, havi nagyjából háromszázezer forintos üzemeltetési díjjal, plusz egy fejlesztő idejének negyede az index karbantartására. Szállítói érvként az hangzott el, hogy enélkül az ügynök nem látja át a kódot. Végül a tétel kikerült az ajánlatból, az ügynök a meglévő keresőeszközökkel dolgozik, és a csapat visszajelzése szerint a találatok minősége nem romlott. Ez évi közel négymillió forint, ami így nem egy olyan rétegre megy, amit a piacvezető termékek egyike sem épített meg.

Ennek a megállapításnak van egy határa, és ezt a szállítónak is meg kell adnom. A vektoros keresésnek más feladatokban helye van. Egy ügyfélszolgálati tudásbázisnál, szerződésállományban vagy belső dokumentumtárban, ahol a szöveg természetes nyelvű és lassan változik, a beágyazás jól működik, és ott én is ajánlom. A tanulmány állítása a kódra vonatkozik, ahol a szerkezet adott és a változás gyors.


Kérdések a szállítónak

Hét alrendszer, hét kérdéskör

Attól, hogy a cég nem fejlesztőház, az ajánlatot még át lehet világítani, és ehhez a hét alrendszer jó vezérfonal. A ciklusnál azt kérdezem, mi állítja meg az ügynököt. Hány lépés után, mennyi token után, milyen hibánál. A tanulmány ajánlása, hogy lineáris ciklussal kell kezdeni, és ez egy vezetőnek is érthető, mert a lineáris ciklus követhető és leállítható.

Az LLM integrációnál az érdekel, hol van a költségkorlát, és ki kap riasztást, ha az ügynök egy feladaton túl sokat éget. A tokenek a vevő számláján jelennek meg, úgyhogy a plafon beállítása a vevő érdeke, és a szállítónak tudnia kell megmondani, hol van.

Az eszközöknél a darabszám a kérdés. A kutatók tizenöt eszköz fölött kötelezőnek tartják a halasztott betöltést, mert különben a leírások elfoglalják a kontextust, és a Claude Code-nál ez a megoldás negyven százalékkal rövidítette a kezdő promptot. Ha az ajánlatban negyven eszköz szerepel, és ebből egy sincs halasztva, akkor minden egyes kérésnél a vevő fizeti a leírásokat. A szerzők tanácsa amúgy az, hogy egyetlen parancssori eszközzel kell indulni, és újat csak megfigyelt hibára szabad hozzátenni.

Memória és kontextus esetében azt kérdezem, mit lát az ügynök a cégről és a kódról, honnan tudja, és ki frissíti. Az orkesztrációnál pedig azt, hány ügynök fut párhuzamosan, és miért. A tanulmány szerint egy ügynöknél kell maradni, amíg nincs valódi párhuzamos feladat, mert a több ügynökös futás nagyjából tizenötször annyi tokent használ. Ez a szám egyedül is elég ok arra, hogy a többügynökös architektúra ígéretére ne bólintsak rá kérdés nélkül.

A bővíthetőségnél a skillekről és az MCP-ről kérdezek. Itt a skill a tanulmány szerint átvette a vezetést, a tizenegyből kilenc rendszer támogatja, az MCP-t nyolc. Egy skill egy mappába tett leírás, ami egy szakértelem darabot csomagol, például a cég saját kódolási szabályait vagy egy belső rendszer használatát. Betöltése szintén halasztott, csak a rövid leírás van bent, a teljes szöveg akkor töltődik, amikor kell. Vevőként ez azt jelenti, hogy a cég tudása bevihető az ügynökbe anélkül, hogy a szállító programozna, és ezt a lehetőséget az ajánlatban látni akarom.

Végül mindegyik alrendszerre vonatkozik a kérdés, ki látja utólag, mit csinált az ügynök. Napló nélkül a hibát sem lehet visszakeresni, és a számlát sem lehet igazolni.


Biztonsági padló

A szabály adat legyen, ne a prompt jóindulata

A tanulmány egyik ajánlása az, hogy a biztonsági szabály adat legyen, ne kód, és a legengedékenyebb mód alatt is maradjon egy padló, amit futás közben nem lehet kikapcsolni. Vezetői megbeszélésen ezt a mondatot fordítom le a leggyakrabban.

A gyakorlatban a különbség így néz ki. Ha az ügynök promptjában az áll, hogy ne töröljön éles adatot, az egy kérés, amit a modell a legtöbbször teljesít. Amikor viszont a harnessben egy jogosultsági tábla tiltja az éles adatbázishoz vezető parancsot, az egy kapu, ami zárva marad a modell félreértésénél, a fejlesztő türelmetlenségénél és a péntek délutáni leggyorsabb módnál is. A szabály adatként azt is jelenti, hogy nem fejlesztő is el tudja olvasni és módosítani, és a változás naplózható.

Egy budapesti pénzügyi szolgáltatónál, ahol tizenkét fős a fejlesztői csapat, a bevezetés második hetében derült ki, hogy az ügynök engedékeny módban a tesztkörnyezettel együtt egy éles konfigurációs fájlt is átírt, mert a két útvonal egy betűben tért el. A kár három óra kiesés volt és egy visszaállítás. Azóta az éles útvonalak egy tiltólistában állnak, amit a harness olvas be, és amit a legengedékenyebb módban sem lehet futás közben felülírni. Prompt nem véd ilyen hibától, mert a prompt a modell figyelmére épít, és a figyelem véges.

Beszerzési kérdésként ez két mondat. Hol van a padló, és meg tudja mutatni a szállító a fájlt, amiben van. Ha a válasz az, hogy a modellre lehet bízni, akkor nincs padló.


Ami tartós

A szerkezet marad, a leltár avul

A kutatók maguk jelzik, hogy a leltár jellegű állítások, az eszközszámok és a verziók hetek alatt avulnak, a szerkezeti állítások viszont tartósak. Három hónap után újravizsgálták a korpuszt, és a két hiány változatlanul hiány maradt. Keretrendszer sehol, vektoros kódkeresés sehol.

A tanulmány tizennyolc tervezési ajánlással zárul, és mellékel egy kilencvensoros minimális harness vázlatot, ami tíz ajánlást közvetlenül megvalósít. Kilencven sor. Ez a kilencven sor a vevőnek mércét ad. Ha a szállító azt mondja, hogy az alap ügynökciklus megírása hónapokba telik, akkor az alapon túl valami mást is épít, és a vevőnek joga van megtudni, mit.

A kódoló ügynök ára a modell mögötti döntésekben dől el, és a két legdrágább tétel, a keretrendszer és a vektoros kódkeresés, a legjobb termékekben egyáltalán nem szerepel. Aki ezeket mégis beárazza, az a saját megszokását számlázza ki a vevőnek, és ez a számla a szerződés aláírása után is minden hónapban megérkezik. Egy vezetőnek ehhez nem kell kódot olvasnia, elég egyszer megkérdeznie, hogy a piacvezetők miért nem így építették.

Forrás. A cikk Paul Barbaste, Tristan Darrigol, Germain Vu és Tom Wiltberger (Inclusive Brains és Wavestone AI Lab) 2026 júliusi tanulmányán alapul, amelynek címe Harness Engineering, Anatomy, Architecture, and Evolution of Coding Agents.