[{"data":1,"prerenderedAt":740},["ShallowReactive",2],{"blog-openai-codex-cli-hu":3},{"slug":4,"published":5,"minutes":6,"category":7,"tags":8,"keywords":14,"about":23,"sources":30,"cover":61,"og":62,"expertise":63,"locales":64,"lang":67,"title":68,"description":69,"coverAlt":70,"metaTitle":71,"takeaways":72,"faq":78,"toc":91,"blocks":122,"others":472},"openai-codex-cli","2026-08-31",11,"agents",[9,10,11,12,13],"Coding agent","Terminal","Sandbox","CI","Rust",[15,16,17,18,19,20,21,22],"openai codex cli","codex cli config.toml","codex exec CI","codex sandbox mode","codex vs claude code","codex cli review","codex cli pricing","AGENTS.md codex",[24,27],{"name":25,"url":26},"OpenAI Codex","https:\u002F\u002Fdevelopers.openai.com\u002Fcodex",{"name":28,"url":29},"Model Context Protocol","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FModel_Context_Protocol",[31,34,37,40,43,46,49,52,55,58],{"title":32,"url":33},"Codex CLI documentation","https:\u002F\u002Fdevelopers.openai.com\u002Fcodex\u002Fcli",{"title":35,"url":36},"Codex: configuration","https:\u002F\u002Fdevelopers.openai.com\u002Fcodex\u002Fconfiguration",{"title":38,"url":39},"Codex: sample configuration","https:\u002F\u002Fdevelopers.openai.com\u002Fcodex\u002Fconfig-file\u002Fconfig-sample",{"title":41,"url":42},"Codex: permissions","https:\u002F\u002Fdevelopers.openai.com\u002Fcodex\u002Fpermission-modes",{"title":44,"url":45},"Codex: non-interactive mode","https:\u002F\u002Fdevelopers.openai.com\u002Fcodex\u002Fnon-interactive-mode",{"title":47,"url":48},"Codex: authentication","https:\u002F\u002Fdevelopers.openai.com\u002Fcodex\u002Fauth",{"title":50,"url":51},"Codex: Model Context Protocol","https:\u002F\u002Fdevelopers.openai.com\u002Fcodex\u002Fextend\u002Fmcp",{"title":53,"url":54},"Codex: pricing","https:\u002F\u002Fdevelopers.openai.com\u002Fcodex\u002Fpricing",{"title":56,"url":57},"Codex: open-source components","https:\u002F\u002Fdevelopers.openai.com\u002Fcodex\u002Fopen-source",{"title":59,"url":60},"Codex changelog","https:\u002F\u002Fdevelopers.openai.com\u002Fcodex\u002Fchangelog","\u002Fimages\u002Fblog\u002Fopenai-codex-cli\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fopenai-codex-cli\u002Fog.jpg","ai-engineer",[65,66,67],"en","de","hu","OpenAI Codex CLI: az ügynök, amely a jogosultságokat konfigurációs fájlnak tekinti","A Codex CLI az OpenAI nyílt forráskódú terminálos kódolóügynöke. Hogyan értékelhető a sandbox, a jóváhagyási szabály és a config.toml, és mi egy felügyelet nélküli CI-futtatás költsége.","Egy lap vonallal zárt tokhoz kapcsolva, három fedéllel, egy nyitva.","Codex CLI: jogosultságok konfigurációs fájlban · Balázs Csorba",[73,74,75,76,77],"A Codex CLI Apache-2.0 licenc alatt áll, magja Rustban íródott, és verziózott npm-csomagként is elérhető, tehát CI-ben pinnelhető futásidőbeli curl helyett.","A jogosultsági modell két független beállítás, sandbox_mode és approval_policy, és a jóváhagyó cseréje sosem szélesíti a sandboxot.","A codex exec alapértelmezésen read-only módban fut, a folyamatot a stderrre írja, és csak a végső üzenetet az stdoutra, így biztonságosan beköthető egy pipeline-ba.","A CLI Git-repositoryt követel, ésOutside egy repository nem indul el, ha nincs megadva a --skip-git-repo-check.","A ChatGPT-előfizetés és az API-alapú számlázás két különböző elszámolási rendszer: az előfizetés üzeneteket, az API tokeneket számol, és a kettő nem becsülhető egymásra.",[79,82,85,88],{"q":80,"a":81},"A Codex CLI nyílt forráskódú?","Igen. A CLI, az SDK és az app server az openai\u002Fcodex repositoryban található Apache-2.0 licenc alatt. Az IDE-bővítmény és a Codex Cloud nem nyílt forráskódú, a security CLI külön, az openai\u002Fcodex-security repositoryban jelenik meg.",{"q":83,"a":84},"Hogyan futtassam a Codex CLI-t CI-ban úgy, hogy ne nyúljon semmihez?","A codex exec használatával, amely read-only sandboxban fut, hacsak nem adsz át --sandbox workspace-write kapcsolót. A folyamat a stderrre megy, a végső ügynöküzenet az stdoutra, így a pipeline anélkül fogja meg a választ, hogy a folyamatvonalakat kellene parse-olnia. CI-ban API-kulcs a megfelelő hitelesítés, mert az API tokenenként számol.",{"q":86,"a":87},"Mi a különbség a sandbox_mode és az approval_policy között?","A sandbox_mode adja a határt: read-only, workspace-write vagy danger-full-access. Az approval_policy azt, hogy mikor áll meg az ügynök: on-request, never vagy egy granuláris tábla. A kettő különálló, és a reviewer cseréje user-ről auto_review-ra nem változtatja meg a sandbox határát.",{"q":89,"a":90},"Működik-e a Codex CLI Git-repository nélkül?","Alapértelmezés szerint nem. A CLI megköveteli, hogy a parancsok Git-repositoryban fussanak a destruktív változások elkerülésére, és a codex exec startoláskor ezt ellenőrzi. A --skip-git-repo-check felülírja, ami csak egy általad kontrollált konténerben ésszerű.",[92,95,98,101,104,107,110,113,116,119],{"id":93,"title":94},"what-it-is","Mi ez",{"id":96,"title":97},"how-it-works","Hogyan működik",{"id":99,"title":100},"getting-started","Első lépések",{"id":102,"title":103},"permissions","Sandbox és jóváhagyások",{"id":105,"title":106},"automation","Automatizálás és codex exec",{"id":108,"title":109},"mcp-support","MCP és projektkontextus",{"id":111,"title":112},"cost","Költség és limitek",{"id":114,"title":115},"where-it-shingles","Hol marad el",{"id":117,"title":118},"verdict","Ítélet",{"id":120,"title":121},"sources","Források",[123,127,135,138,141,175,176,179,185,188,189,192,194,216,217,228,230,276,279,290,291,297,299,310,328,329,332,334,337,338,341,348,349,352,404,407,408,411,423,438,439],{"type":124,"content":125},"paragraph",[126],"Az OpenAI Codex CLI terminálos kódolóügynök: beolvas egy repositoryt, szerkeszt fájlokat, futtatja a projekt saját parancsait, és addig iterál, amíg a feladat kész nincs. Az érdekes rész nem azügynökci hurok, amit több versenytárs is megtesz. Az az, hogy a biztonsági modell két beállításként jelenik meg egy TOML-fájlban, amelyet egy csapat commitolhat, review-zhat és pinelhet, nem pedig promptként vagy a szolgáltató által kikényszerített kontószabályként.",{"type":124,"content":128},[129,130,134],"Ez teszi a kategóriájában legjobban kormányozható kódolóügynökké, és egyben azt, amelyben a konfigurációs hibák a legdrágábbak. Egy commitolt ",{"tag":131,"children":132},"code",[133],"sandbox_mode = \"danger-full-access\""," ugyanis olyan döntés, amely review nélkül jut élesbe. A többi arról szól, mennyire bírja ezt a kompromisszum.",{"type":136,"level":137,"id":93,"text":94},"heading",2,{"type":124,"content":139},[140],"A CLI verziózott npm-csomagként érkezik, jelenleg 0.160.1, a repository Apache-2.0 licenc alatt áll Rust maggal. A Codex szélesebb termékének egyik felülete, amelyhez a ChatGPT desktop app, egy IDE-bővítmény és egy felhős futtató is tartozik, de a CLI az a rész, amely a fejlesztő gépén fut, és az egyetlen, amely nyílt forráskódú.",{"type":142,"ordered":143,"items":144},"list",false,[145,151,161,163,173],[146,147,150],"Apache-2.0 licenc, Rust mag, npm-csomag ",{"tag":131,"children":148},[149],"@openai\u002Fcodex"," plusz önálló telepítőszkript.",[152,153,156,157,160],"A konfiguráció a ",{"tag":131,"children":154},[155],"~\u002F.codex\u002Fconfig.toml"," fájlban él, és projektenként szűkíthető a ",{"tag":131,"children":158},[159],".codex\u002Fconfig.toml"," útvonalon.",[162],"Két külön bejelentkezési út: ChatGPT-előfizetés vagy API-kulcs, eltérő limitekkel és eltérő számlázással.",[164,165,168,169,172],"A helyi munka Git-repositoryt igényel; a ",{"tag":131,"children":166},[167],"codex exec"," ugyanazt a szabályt kényszeríti ki, és kínálja a ",{"tag":131,"children":170},[171],"--skip-git-repo-check"," kapcsolót.",[174],"Az MCP-szerverek ugyanabban a konfigurációs fájlban vannak, és meg vannak osztva az IDE-bővítménnyel és a desktop appal ugyanazon a hoszton.",{"type":136,"level":137,"id":96,"text":97},{"type":124,"content":177},[178],"A menet szerkezete a megszokott: egy prompt plusz repository-kontextus megy a modellhez, a modell tool-hívásokat ad ki, a CLI egy sandboxban futtatja őket, és az eredmények tool outputként térnek vissza a következő menethez. Ami egy shell-wrappertől eltér, az az, hogy a sandbox és a jóváhagyási ellenőrzés két külön kapu, és mindkettő konfigurált, nem interaktívan kérdezett.",{"type":180,"src":181,"alt":182,"wide":183,"caption":184},"image","\u002Fimages\u002Fblog\u002Fopenai-codex-cli\u002Fdiagram-7.webp","One Codex turn, with the sandbox and the approval gate The prompt and the AGENTS.md instructions go to the model. The model emits a tool call. The sandbox decides whether the call touches only the workspace, and the approval policy decides whether it pauses for the user first. If the call runs, its output returns to the model and the loop continues.",true,"A sandbox és a jóváhagyási ellenőrzés különálló. Az egyik kiszélesítése nem szélesíti a másikat.",{"type":124,"content":186},[187],"A hurok nem a termék, bármilyen érdekes. Amit egy csapat valójában konfigurál, az a körülötte lévő határ, és a dokumentáció szokatlanul egyértelműen hangsúlyozza, hogy a kettő ortogonális. A Full access módban futó menet a gép minden fájlját szerkesztheti és hálózati parancsokat futtathat kérdés nélkül, és a dokumentáció ezt az adatvesztés és kiszivárgás jelentősen megnövelt kockázataként írja le, nem rejti el.",{"type":136,"level":137,"id":99,"text":100},{"type":124,"content":190},[191],"Telepíts, jelentkezz be, indítsd. Az első indítás a Sign in with ChatGPT vagy egy API-kulcs között választ, és ez később számít, mert ez határozza meg a limiteket és azt, melyik elszámolási rendszerben dolgozol.",{"type":131,"code":193},"# Install on macOS or Linux; npm and Homebrew are also supported.\ncurl -fsSL https:\u002F\u002Fchatgpt.com\u002Fcodex\u002Finstall.sh | sh\n\n# Run inside a project directory, then sign in.\ncodex\n\n# Pin the version in CI instead of tracking latest.\nnpm install -g @openai\u002Fcodex@0.160.1\n\n# The first prompt is a good place for \u002Finit, which writes AGENTS.md.\n# \u002Fstatus, \u002Fmodel, \u002Fpermissions and \u002Freview are the other useful commands.",{"type":124,"content":195},[196,197,200,201,204,205,208,209,211,212,215],"Az ",{"tag":131,"children":198},[199],"AGENTS.md"," az állandó utasításfájl. A CLI olvas egy globális ",{"tag":131,"children":202},[203],"~\u002F.codex\u002FAGENTS.md"," fájlt, majd a projekt gyökérkönyvtárától halad az aktuális könyvtárig, szintenként egy fájlt véve, ahol az ",{"tag":131,"children":206},[207],"AGENTS.override.md"," felülmúlja az ",{"tag":131,"children":210},[199],"-t. Az együttes méretet a ",{"tag":131,"children":213},[214],"project_doc_max_bytes"," korlátozza, alapértelmezésen 32 KiB. Egy csapat számára ez a legértékesebb dolog, amit meg lehet írni, mert az ügynök viselkedésének az a része, amely code review-n megy át.",{"type":136,"level":137,"id":102,"text":103},{"type":124,"content":218},[219,220,223,224,227],"Ezt érdemes kétszer elolvasni. A sandbox a határ, a jóváhagyási szabály a megállás. Az alapértelmezés, az Ask for approval, ",{"tag":131,"children":221},[222],"sandbox_mode = \"workspace-write\""," értékkel, ",{"tag":131,"children":225},[226],"approval_policy = \"on-request\""," mellett és emberi reviewerrel. A dokumentáció külön kiemeli, hogy a reviewer váltása auto_review-ra nem szélesíti a sandboxot. Ez a helyes tervezés, és egyben az a részlet, amelyet a legtöbb eszköz elront.",{"type":131,"code":229},"# ~\u002F.codex\u002Fconfig.toml\nmodel = \"gpt-6.1-sol\"\nmodel_reasoning_effort = \"medium\"\n\n# Boundary: read-only | workspace-write | danger-full-access\nsandbox_mode = \"read-only\"\n\n# Pausing: on-request | never | granular table\napproval_policy = \"on-request\"\n\n# Reviewer: user | auto_review\napprovals_reviewer = \"user\"\n\n# Extra roots and network, only used when sandbox_mode = workspace-write\n[sandbox_workspace_write]\nwritable_roots = [\"~\u002Fcode\"]\nnetwork_access = false",{"type":231,"head":232,"rows":239},"table",[233,235,237],[234],"Beállítás",[236],"Értékek",[238],"Hatás",[240,249,258,267],[241,245,247],[242],{"tag":131,"children":243},[244],"sandbox_mode",[246],"read-only, workspace-write, danger-full-access",[248],"Mely fájlokhoz és hálózathoz jut az ügynök. Alapértelmezés: read-only.",[250,254,256],[251],{"tag":131,"children":252},[253],"approval_policy",[255],"on-request, never, granular",[257],"Mikor áll meg az ügynök. Alapértelmezés: on-request.",[259,263,265],[260],{"tag":131,"children":261},[262],"approvals_reviewer",[264],"user, auto_review",[266],"Ki válaszol a kérdésre. Nem módosítja a sandboxot.",[268,272,274],[269],{"tag":131,"children":270},[271],"\u002Fpermissions",[273],"Ask for approval, Approve for me, Full access",[275],"Interaktív előbeállítások ugyanazokon a két beállításon.",{"type":124,"content":277},[278],"A konfigurációs fájl sokkal mélyebbre megy. Van hálózati proxy domainenkénti engedélyezési és tiltási szabályokkal, van shell környezet politika, amely kiszűri a kulcsra vagy tokenre hasonlító nevű változókat, vannak írható gyökerek, és vannak hookok, amelyek egy tool-hívás előtt futnak. Ez nagy felület, és ellen kell állni a késztetésnek, hogy mindet beállítsd. Minden gomb egy döntés, amelyet valaki más helyett kell meghozni.",{"type":280,"variant":281,"title":282,"body":283},"callout","warn","Ne futtass full accessszel megosztott runneren",[284],[285,286,289],"A dokumentáció a Full access módot az adatvesztés és kiszivárgás jelentősen megnövelt kockázataként írja le, és egyértelműen kimondja, hogy a ",{"tag":131,"children":287},[288],"danger-full-access"," kontrollált környezetekhez való, például izolált CI-runnerhez vagy konténerhez. A hosztolt runner írási jogosultsággal és full accessben futó ügynök korlátlan hurok a saját hitelesítő adataiddal.",{"type":136,"level":137,"id":105,"text":106},{"type":124,"content":292},[293,294,296],"A nem interaktív mód az, ami miatt ezt a CLI-t egy chatvezérelt ügynöknél jobbnak érdemes választani. A ",{"tag":131,"children":295},[167]," alapértelmezésen read-only sandboxban fut, a folyamatot a stderrre írja, csak a végső üzenetet nyomtatja a stdoutra, és Git-repositoryn kívül nem indul el. Ez az utolsó szabály fékezőgép egy olyan ügynök ellen, amely átír egy könyvtárat, amelyről nem tud diffet mutatni.",{"type":131,"code":298},"# Progress on stderr, final message on stdout: safe to pipe.\ncodex exec \"summarise the repository structure\" | tee summary.md\n\n# Machine-readable: one JSON object per event.\ncodex exec --json \"triage the open bug reports\" | jq\n\n# Escalate the sandbox explicitly, never implicitly.\ncodex exec --sandbox workspace-write \"add a regression test and run it\"\n\n# Structured final answer against a schema, written to a file.\ncodex exec \"extract project metadata\" \\\n  --output-schema .\u002Fschema.json -o .\u002Fmetadata.json",{"type":124,"content":300},[301,302,305,306,309],"Két részlet teszi éles formájúvá. A ",{"tag":131,"children":303},[304],"--json"," kapcsolóval az eseményfolyam hordozza a felhasználást, a gyorsítótárazott bemeneti tokenekkel együtt, így egy pipeline futtatásonként, nem havi szinten tud költséget rendelni. A ",{"tag":131,"children":307},[308],"required = true"," jelzésű MCP-szerver pedig a start hibájával áll le, ahelyett hogy csendben továbbmenne. Ez a különbség egy törött CI-futtatás és egy alattomosan rossz között.",{"type":280,"variant":311,"title":312,"body":313},"note","Hitelesítő adatok CI-ban",[314],[315,316,319,320,323,324,327],"A dokumentáció nem javasolja az ",{"tag":131,"children":317},[318],"OPENAI_API_KEY"," vagy ",{"tag":131,"children":321},[322],"CODEX_API_KEY"," beállítását job-szintű környezeti változóként olyan workflow-kban, amelyek repository-kódot checkoutolnak vagy futtatnak, mert a build scriptek és a lifecycle hookok ugyanabban a jobban ki olvashatják. Szűkítsd a kulcsot az egyetlen hívásra, vagy használd a ",{"tag":131,"children":325},[326],"openai\u002Fcodex-action"," workflow actiont, amely pont erre létezik.",{"type":136,"level":137,"id":108,"text":109},{"type":124,"content":330},[331],"Az MCP-szerverek ugyanabban a konfigurációs fájlban vannak, így megoszlanak a CLI, az IDE-bővítmény és a desktop app között ugyanazon a hoszton. Támogatott a stdio és a streamable HTTP, OAuth-tel, dinamikus kliensregisztrációval együtt.",{"type":131,"code":333},"[mcp_servers.docs]\ncommand = \"npx\"\nargs = [\"-y\", \"@upstash\u002Fcontext7-mcp\"]\nenv_vars = [\"CONTEXT7_TOKEN\"]\nrequired = true          # fail startup instead of running without it\nenabled_tools = [\"search\", \"summarize\"]\ndefault_tools_approval_mode = \"prompt\"\ntool_timeout_sec = 45",{"type":124,"content":335},[336],"Az MCP kontextusba kerül, és az árlistázási dokumentáció ezt nyíltan ki is mondja: minden szerver növeli az üzenetet, és többet fogyaszt a keretből. Egy jó csapat kettő-három szervert tart aktívan, a többit letiltja, és a szerverlistát a menetenkénti büdzsé részeként kezeli, nem kényelmi listaként.",{"type":136,"level":137,"id":111,"text":112},{"type":124,"content":339},[340],"Két elszámolási rendszer osztozik ugyanazon a binárison, és nem hasonlíthatók össze. A ChatGPT-előfizetés ötórás ablakokban számol üzeneteket, és a közzétett számok becslések, nem plafonok: a Plusz csomagnál a közepes modelleknél körülbelül 15 és 160 helyi üzenet öt óránként, a legolcsóbb modellnél 350 és 3.000 között. Az API-kulcs tokeneket számol a közzétett díjak szerint, és ez teszi őt a megfelelő hitelesítéssé az automatizáláshoz.",{"type":124,"content":342},[343,344,347],"A gyakorlati tanács rövid. Az előfizetést használd interaktív munkához, ahol van egy ember, aki észreveszi, ha fogy a keret, az API-kulcsot pedig minden felügyelet nélküli dologhoz, mert csak így lesz futtatásonként előre látható tétel. A ",{"tag":131,"children":345},[346],"\u002Fstatus"," parancs a munkameneten belül mutatja a maradó kapacitást, és a dokumentáció egyértelmű, hogy önmagában a prompt hossza nem megbízható előrejelzője egy feladat fogyasztásának.",{"type":136,"level":137,"id":114,"text":115},{"type":124,"content":350},[351],"Három probléma, a fontosságuk szerinti sorrendben. Először is: a konfigurációs felület hatalmas egy olyan eszközhöz képest, amelynek magja hétköznapi hurok, és nincs lehetőség szándékosan kis, egyetlen átolvasásból auditálható konfigurációval futtatni. Másodszor: a CLI körüli termék gyorsan változik, a modelleket rögzített dátumon vonják ki, többet egy éven belül nyugtáztak le, és egy commitolt modellnév egy configban vagy CI-szkriptben teherré válik. Harmadszor: a review parancs anélkül jelenti a megállapításokat, hogy módosítaná a munkafát. Ez a helyes viselkedés, és jóval kevésbé hasznos, mint azok a változatok, amelyek meg is javítják, amit találtak.",{"type":231,"head":353,"rows":362},[354,356,358,360],[355],"",[357],"Codex CLI",[359],"Claude Code",[361],"Cline CLI",[363,377,386,395],[364,366,369,373],[365],"Nem interaktív belépési pont",[367],{"tag":131,"children":368},[167],[370],{"tag":131,"children":371},[372],"claude -p",[374],{"tag":131,"children":375},[376],"cline --json",[378,380,382,384],[379],"Géppel feldolgozható kimenet",[381],"JSONL események, JSON séma kimenet",[383],"JSON vagy stream-json, --json-schema",[385],"Újsorokra bontott üzenetek",[387,389,391,393],[388],"Automatizálási alapértelmezés",[390],"read-only sandbox",[392],"A bare mód kihagyja a helyi konfigurációt",[394],"auto-approve true",[396,398,400,402],[397],"Konfiguráció",[399],"Egy TOML-fájl, több kliens között megosztva",[401],"Settings-fájlok, MCP-konfiguráció, hookok",[403],"Konfigurációs nézet és CLI-kapcsolók",{"type":124,"content":405},[406],"Az összehasonlítás olyan közel van, hogy a döntő tényező ritkán maga az ügynök. Az, hogy nálatok milyen a jogosultsági történet. Ha a csapatban már van egy commitolt, review-zott ügynök-konfiguráció, a Codex illik hozzá. Ha nincs, a CLI erőssége teher marad, amíg valaki meg nem írja azt a fájlt.",{"type":136,"level":137,"id":117,"text":118},{"type":124,"content":409},[410],"A Codex CLI a legerősebb választás azoknak a csapatoknak, amelyek olyan kódolóügynököt akarnak, amelynek viselkedése review-zható artefaktum. A sandbox és a jóváhagyás szétválasztása jól átgondolt, a read-only alapértelmezés az automatizáláshoz a helyes alapértelmezés, és az Apache-2.0 azt jelenti, hogy a konfiguráció vendorolható és pinelhető. Egyetlen fejlesztőnek, aki政策 megírása előtt kipróbálna egy ügynököt, gyengébb választás.",{"type":142,"ordered":183,"items":412},[413,415,417,419,421],[414],"Vedd fel, ha az ügynök jogosultságai olyan fájlban akarnak élni, amely code review-n megy át, és CI-ben pinneld az npm-verziót.",[416],"Minden felügyelet nélküli dologhoz API-kulcsot használj. Az előfizetésalapú credit elszámolás nem bírja a kapcsolatot egy ütemezett jobbal.",[418],"Írj AGENTS.md-t, mielőtt bármit mást állítanál. Ez többet változtat a viselkedésen, mint a config.toml bármelyik kapcsolója.",[420],"Automatizálásnál hagyd a sandbox_mode-ot workspace-write-on, és a danger-full-accesst tartsd egy általad kontrollált konténerre.",[422],"Hagyd ki, ha egy évre stabil modellazonosító kell. A kivezetési ütem gyorsabb, mint amit a legtöbb csapat elnyel.",{"type":280,"variant":424,"title":425,"body":426},"tip","Kisebbel kezdj, mint amit a dokumentáció sugall",[427],[428,429,431,432,434,435,437],"A legértékesebb konfiguráció a legtöbb repository számára négy sor: egy modell, ",{"tag":131,"children":430},[222],", ",{"tag":131,"children":433},[226]," és egy ",{"tag":131,"children":436},[199]," a tesztparancsával. A többi addig várhat, amíg egy konkrét probléma fel nem merül.",{"type":136,"level":137,"id":120,"text":121},{"type":142,"ordered":183,"items":440},[441,445,448,451,454,457,460,463,466,469],[442],{"tag":443,"href":33,"children":444},"a",[32],[446],{"tag":443,"href":36,"children":447},[35],[449],{"tag":443,"href":39,"children":450},[38],[452],{"tag":443,"href":42,"children":453},[41],[455],{"tag":443,"href":45,"children":456},[44],[458],{"tag":443,"href":48,"children":459},[47],[461],{"tag":443,"href":51,"children":462},[50],[464],{"tag":443,"href":54,"children":465},[53],[467],{"tag":443,"href":57,"children":468},[56],[470],{"tag":443,"href":60,"children":471},[59],[473,530,603,671],{"slug":474,"published":475,"minutes":6,"category":7,"tags":476,"keywords":482,"about":493,"sources":502,"cover":524,"og":525,"expertise":63,"locales":526,"lang":67,"title":527,"description":528,"coverAlt":529},"agent-tool-design-descriptions-errors","2026-10-17",[477,478,479,480,481],"AI agents","Tool use","Function calling","MCP","Agent design",[483,484,485,486,487,488,489,490,491,492],"agent tool design","writing tool descriptions for llm","function calling best practices","tool use error handling","mcp tool design","tool calling is_error","how many tools should an agent have","tool search defer_loading","agent computer interface","llm tool schema design",[494,497,499],{"name":495,"url":496},"Intelligent agent","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FIntelligent_agent",{"name":28,"url":498},"https:\u002F\u002Fmodelcontextprotocol.io\u002F",{"name":500,"url":501},"Poka-yoke","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPoka-yoke",[503,506,509,512,515,518,521],{"title":504,"url":505},"Anthropic Engineering: Writing effective tools for agents, with agents (Sep 2025)","https:\u002F\u002Fwww.anthropic.com\u002Fengineering\u002Fwriting-tools-for-agents",{"title":507,"url":508},"Anthropic Engineering: Building effective agents (Dec 2024)","https:\u002F\u002Fwww.anthropic.com\u002Fengineering\u002Fbuilding-effective-agents",{"title":510,"url":511},"Claude Platform Docs: Define tools","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fagents-and-tools\u002Ftool-use\u002Fdefine-tools",{"title":513,"url":514},"Claude Platform Docs: Handle tool calls","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fagents-and-tools\u002Ftool-use\u002Fhandle-tool-calls",{"title":516,"url":517},"Claude Platform Docs: Tool search tool","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fagents-and-tools\u002Ftool-use\u002Ftool-search-tool",{"title":519,"url":520},"Model Context Protocol specification 2025-11-25: Tools","https:\u002F\u002Fmodelcontextprotocol.io\u002Fspecification\u002F2025-11-25\u002Fserver\u002Ftools",{"title":522,"url":523},"OpenAI API Docs: Function calling","https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Ffunction-calling","\u002Fimages\u002Fblog\u002Fagent-tool-design-descriptions-errors\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fagent-tool-design-descriptions-errors\u002Fog.jpg",[65,66,67],"Eszközök tervezése AI-ágenseknek: nevek, leírások, sémák és hibaüzenetek","Ágenseszközök, amelyeket jól választ és hív a modell: feladatra szabott eszközök, leírások, sémák, tömör válaszok és használható hibaüzenetek.","Három réssel ellátott alapzat; a középső rés fölött pontosan illeszkedő blokk áll, mellette két rossz szélességű blokk.",{"slug":531,"published":475,"minutes":6,"category":7,"tags":532,"keywords":538,"about":551,"sources":561,"cover":597,"og":598,"expertise":63,"locales":599,"lang":67,"title":600,"description":601,"coverAlt":602},"coding-agents-legacy-codebase-migration",[533,534,535,536,537],"Legacy migration","Coding agents","Strangler fig","Testing","Code review",[539,540,541,542,543,544,545,546,547,548,549,550],"legacy code migration ai","coding agent legacy codebase","strangler fig pattern ai","characterization tests legacy code","ai code migration review","agent assisted refactoring","legacy modernization coding agent","differential testing migration","shadow traffic migration","ai code review gate","test harness before migration","llm code migration",[552,555,558],{"name":553,"url":554},"Legacy code","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FLegacy_code",{"name":556,"url":557},"Characterization test","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FCharacterization_test",{"name":559,"url":560},"Strangler fig pattern","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FStrangler_fig_pattern",[562,565,567,570,573,576,579,582,585,588,591,594],{"title":563,"url":564},"Martin Fowler: Strangler Fig (2024)","https:\u002F\u002Fmartinfowler.com\u002Fbliki\u002FStranglerFigApplication.html",{"title":566,"url":557},"Wikipedia: Characterization test",{"title":568,"url":569},"Google Research: Accelerating code migrations with AI (2024)","https:\u002F\u002Fresearch.google\u002Fblog\u002Faccelerating-code-migrations-with-ai\u002F",{"title":571,"url":572},"Ziftci et al.: Migrating Code At Scale With LLMs At Google (arXiv 2504.09691)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2504.09691",{"title":574,"url":575},"Anthropic: Effective harnesses for long-running agents (2025)","https:\u002F\u002Fwww.anthropic.com\u002Fengineering\u002Feffective-harnesses-for-long-running-agents",{"title":577,"url":578},"Anthropic: Redesigning source control at Anthropic (2026)","https:\u002F\u002Fwww.anthropic.com\u002Fengineering\u002Fredesigning-source-control",{"title":580,"url":581},"METR: Measuring the Impact of Early-2025 AI on Experienced Open-Source Developer Productivity","https:\u002F\u002Fmetr.org\u002Fblog\u002F2025-07-10-early-2025-ai-experienced-os-dev-study\u002F",{"title":583,"url":584},"Chand et al.: Why Industry Migrates and When It Trusts LLMs (ESEM 2026)","https:\u002F\u002Fdrops.dagstuhl.de\u002Fentities\u002Fdocument\u002F10.4230\u002FLIPIcs.ESEM.2026.85",{"title":586,"url":587},"Li et al.: Environment-in-the-Loop: Rethinking Code Migration with LLM-based Agents (arXiv 2602.09944)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2602.09944",{"title":589,"url":590},"AWS: Amazon Q Developer just reached a $260 million dollar milestone (2024)","https:\u002F\u002Faws.amazon.com\u002Fblogs\u002Fdevops\u002Famazon-q-developer-just-reached-a-260-million-dollar-milestone\u002F",{"title":592,"url":593},"OpenAI: Why SWE-bench Verified no longer measures frontier coding capabilities (2026)","https:\u002F\u002Fopenai.com\u002Findex\u002Fwhy-we-no-longer-evaluate-swe-bench-verified\u002F",{"title":595,"url":596},"GitHub Docs: About GitHub Copilot cloud agent","https:\u002F\u002Fdocs.github.com\u002Fen\u002Fcopilot\u002Fconcepts\u002Fagents\u002Fcoding-agent\u002Fabout-coding-agent","\u002Fimages\u002Fblog\u002Fcoding-agents-legacy-codebase-migration\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fcoding-agents-legacy-codebase-migration\u002Fog.jpg",[65,66,67],"Legacy kódbázis migrálása coding agentekkel: strangler fig playbook","Hogyan dolgozik coding agent egy legacy migráción: characterization tesztek először, egy seam feladatonként, review gate-ek és differenciális ellenőrzés.","Rétegek halmaza, a felső kettőt újak váltják, mellettük varrat és pipa.",{"slug":604,"published":475,"minutes":605,"category":7,"tags":606,"keywords":609,"about":621,"sources":631,"cover":665,"og":666,"expertise":63,"locales":667,"lang":67,"title":668,"description":669,"coverAlt":670},"background-agents-async-pr-workflow",12,[534,607,12,537,608],"Pull requests","Automation",[610,611,612,613,614,615,616,617,618,619,620],"background coding agent","async coding agent","cloud coding agent pull request","copilot coding agent limits","codex cloud tasks","claude code cloud sessions","jules coding agent limits","agent pull request review","coding agent sandbox","agent CI gating","cost per merged pull request",[622,625,628],{"name":623,"url":624},"Software agent","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FSoftware_agent",{"name":626,"url":627},"Pull request","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FDistributed_version_control",{"name":629,"url":630},"Continuous integration","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FContinuous_integration",[632,633,636,639,642,645,648,651,654,656,659,662],{"title":595,"url":596},{"title":634,"url":635},"GitHub Docs: Risks and mitigations for Copilot cloud agent","https:\u002F\u002Fdocs.github.com\u002Fen\u002Fcopilot\u002Fconcepts\u002Fagents\u002Fcloud-agent\u002Frisks-and-mitigations",{"title":637,"url":638},"OpenAI Developers: Codex cloud environments","https:\u002F\u002Fdevelopers.openai.com\u002Fcodex\u002Fcloud\u002Fenvironments",{"title":640,"url":641},"Anthropic: Use Claude Code in the cloud","https:\u002F\u002Fcode.claude.com\u002Fdocs\u002Fen\u002Fclaude-code-on-the-web",{"title":643,"url":644},"Google Jules: Limits and plans","https:\u002F\u002Fjules.google\u002Fdocs\u002Fusage-limits\u002F",{"title":646,"url":647},"Google Jules: Getting started","https:\u002F\u002Fjules.google\u002Fdocs\u002F",{"title":649,"url":650},"GitHub Docs: About protected branches","https:\u002F\u002Fdocs.github.com\u002Fen\u002Frepositories\u002Fconfiguring-branches-and-merges-in-your-repository\u002Fmanaging-protected-branches\u002Fabout-protected-branches",{"title":652,"url":653},"GitHub Docs: Models and pricing for GitHub Copilot","https:\u002F\u002Fdocs.github.com\u002Fen\u002Fcopilot\u002Freference\u002Fcopilot-billing\u002Fmodels-and-pricing",{"title":655,"url":54},"OpenAI Developers: Codex pricing",{"title":657,"url":658},"Ehsani et al.: Where Do AI Coding Agents Fail? An Empirical Study of Failed Agentic Pull Requests in GitHub (MSR 2026, arXiv 2601.15195)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2601.15195",{"title":660,"url":661},"Peralta et al.: Why Are Agentic Pull Requests Merged or Rejected? An Empirical Study (MSR 2026, arXiv 2605.22534)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2605.22534",{"title":663,"url":664},"DORA: State of AI-assisted Software Development 2025","https:\u002F\u002Fdora.dev\u002Fdora-report-2025","\u002Fimages\u002Fblog\u002Fbackground-agents-async-pr-workflow\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fbackground-agents-async-pr-workflow\u002Fog.jpg",[65,66,67],"Háttérben futó kódoló ügynökök: PR-ek, sorok és review","Hogyan sorakoztatnak feladatokba az aszinkron kódoló ügynökök, hogyan futnak sandboxban, nyitnak draft PR-t és mennek át a CI-n. Limitek, költségek, review.","Egy kártya a tálcán öt mezőre ágazik, a nyilak egy kapu mögötti laphoz vezetnek.",{"slug":672,"published":673,"minutes":674,"category":7,"tags":675,"keywords":681,"about":693,"sources":701,"cover":734,"og":735,"expertise":63,"locales":736,"lang":67,"title":737,"description":738,"coverAlt":739},"context-rot-compaction-long-running-agents","2026-10-16",10,[676,677,678,679,680],"Context rot","Compaction","Context engineering","Long-running agents","Agent memory",[682,683,684,685,686,687,688,689,690,691,692],"context rot","context rot LLM","compaction AI agents","context engineering","long-running agents context window","Claude compaction API","context editing clear tool results","OpenAI responses compaction","lost in the middle LLM","agent context management","sub-agents context isolation",[694,697,700],{"name":695,"url":696},"Context window","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FLarge_language_model#Context_window",{"name":698,"url":699},"Attention (machine learning)","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FAttention_(machine_learning)",{"name":495,"url":496},[702,705,708,711,714,716,719,722,725,728,731],{"title":703,"url":704},"Chroma: Context Rot: How Increasing Input Tokens Impacts LLM Performance (Jul 2025)","https:\u002F\u002Fresearch.trychroma.com\u002Fcontext-rot",{"title":706,"url":707},"Liu et al.: Lost in the Middle: How Language Models Use Long Contexts (2023)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2307.03172",{"title":709,"url":710},"Modarressi et al.: NoLiMa: Long-Context Evaluation Beyond Literal Matching (2025)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2502.05167",{"title":712,"url":713},"Anthropic: Effective context engineering for AI agents (Sep 2025)","https:\u002F\u002Fwww.anthropic.com\u002Fengineering\u002Feffective-context-engineering-for-ai-agents",{"title":715,"url":575},"Anthropic: Effective harnesses for long-running agents (Nov 2025)",{"title":717,"url":718},"Claude API docs: Compaction at a token threshold","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fbuild-with-claude\u002Fcompaction-threshold",{"title":720,"url":721},"Claude API docs: Compaction on demand","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fbuild-with-claude\u002Fcompaction-on-demand",{"title":723,"url":724},"Claude API docs: Context editing","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fbuild-with-claude\u002Fcontext-editing",{"title":726,"url":727},"Claude API docs: Memory tool","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fagents-and-tools\u002Ftool-use\u002Fmemory-tool",{"title":729,"url":730},"OpenAI API docs: Compaction","https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fguides\u002Fcompaction",{"title":732,"url":733},"Cognition: Don't Build Multi-Agents","https:\u002F\u002Fcognition.ai\u002Fblog\u002Fdont-build-multi-agents","\u002Fimages\u002Fblog\u002Fcontext-rot-compaction-long-running-agents\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fcontext-rot-compaction-long-running-agents\u002Fog.jpg",[65,66,67],"Kontextusromlás hosszan futó ügynököknél: törlés, tömörítés, memória és al-ügynökök","Miért romlik az LLM pontossága a kontextus növekedésével, és hogyan tartja pályán a hosszú ügynökfutást a törlés, a tömörítés, a jegyzet és az al-ügynök.","Egy kis négyzetes prés magas lappköteget nyom rövidre, közben két jegyzet ágazik le.",1792261159326]