[{"data":1,"prerenderedAt":851},["ShallowReactive",2],{"blog-context-rot-compaction-long-running-agents-hu":3},{"slug":4,"published":5,"minutes":6,"category":7,"tags":8,"keywords":14,"about":26,"sources":36,"cover":70,"og":71,"expertise":72,"locales":73,"lang":76,"title":77,"description":78,"coverAlt":79,"metaTitle":80,"takeaways":81,"faq":87,"toc":103,"blocks":137,"others":581},"context-rot-compaction-long-running-agents","2026-10-16",10,"agents",[9,10,11,12,13],"Context rot","Compaction","Context engineering","Long-running agents","Agent memory",[15,16,17,18,19,20,21,22,23,24,25],"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",[27,30,33],{"name":28,"url":29},"Context window","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FLarge_language_model#Context_window",{"name":31,"url":32},"Attention (machine learning)","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FAttention_(machine_learning)",{"name":34,"url":35},"Intelligent agent","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FIntelligent_agent",[37,40,43,46,49,52,55,58,61,64,67],{"title":38,"url":39},"Chroma: Context Rot: How Increasing Input Tokens Impacts LLM Performance (Jul 2025)","https:\u002F\u002Fresearch.trychroma.com\u002Fcontext-rot",{"title":41,"url":42},"Liu et al.: Lost in the Middle: How Language Models Use Long Contexts (2023)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2307.03172",{"title":44,"url":45},"Modarressi et al.: NoLiMa: Long-Context Evaluation Beyond Literal Matching (2025)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2502.05167",{"title":47,"url":48},"Anthropic: Effective context engineering for AI agents (Sep 2025)","https:\u002F\u002Fwww.anthropic.com\u002Fengineering\u002Feffective-context-engineering-for-ai-agents",{"title":50,"url":51},"Anthropic: Effective harnesses for long-running agents (Nov 2025)","https:\u002F\u002Fwww.anthropic.com\u002Fengineering\u002Feffective-harnesses-for-long-running-agents",{"title":53,"url":54},"Claude API docs: Compaction at a token threshold","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fbuild-with-claude\u002Fcompaction-threshold",{"title":56,"url":57},"Claude API docs: Compaction on demand","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fbuild-with-claude\u002Fcompaction-on-demand",{"title":59,"url":60},"Claude API docs: Context editing","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fbuild-with-claude\u002Fcontext-editing",{"title":62,"url":63},"Claude API docs: Memory tool","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fagents-and-tools\u002Ftool-use\u002Fmemory-tool",{"title":65,"url":66},"OpenAI API docs: Compaction","https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fguides\u002Fcompaction",{"title":68,"url":69},"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","ai-engineer",[74,75,76],"en","de","hu","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 ügynök kontextusmérete a körökkel nő, de a régi eszközeredmények törlése és a tömörítés egy sávban tartja, ahelyett, hogy az ablakhatárig nőne.","Kontextusromlás és tömörítés ügynököknél · Balázs Csorba",[82,83,84,85,86],"A kontextusromlás a pontosság csökkenése a bemenet növekedésével: a NoLiMán 13 hosszú kontextusú modellből 11 a rövid kontextusú alapszintje felére sem jutott 32K tokennél.","Az ügynököket érinti leginkább, mert a hurok minden eszközhívást és eredményt hozzáfűz, és elavult, zavaró tartalommal tölti meg az ablakot.","Először a régi eszközeredményeket töröld; a Claude kontextusszerkesztése ezt szabály alapján végzi, a clear_at_least pedig gondoskodik róla, hogy megérje a gyorsítótár újraírása.","A tömörítés a Claude-nál és az OpenAI-nál szerveroldalon foglalja össze a régebbi köröket, de veszteséges, ezért írj területspecifikus utasításokat, és a legutóbbi köröket tartsd meg szó szerint.","A tervek, a haladási fájlok és a git túlélnek bármilyen tömörítést; al-ügynököt olvasó felderítésre használj, az írást pedig hagyd egyetlen, teljes kontextusú ügynöknél.",[88,91,94,97,100],{"q":89,"a":90},"Mi a kontextusromlás (context rot)?","A kontextusromlás az LLM pontosságának csökkenése a bemenet hosszának növekedésével, jóval azelőtt, hogy a kontextusablak megtelne. Az olyan tanulmányok, mint a Lost in the Middle, a NoLiMa és a Chroma Context Rot jelentése, azt mutatják, hogy a modellek egyenetlenül használják a hosszú bemenetet, és a lényegtelen vagy zavaró tartalom felhalmozódásával egyre megbízhatatlanabbak lesznek.",{"q":92,"a":93},"Mi a tömörítés (compaction) az MI-ügynököknél?","A tömörítés a beszélgetés régebbi részét a modell által írt összefoglalóra cseréli, és onnan folytatja, így egy hosszú feladat kisebb, fókuszáltabb kontextusba fér. A Claude API tokenküszöbnél vagy igény szerint kínálja, az OpenAI Responses API pedig tömörítési küszöbbel vagy önálló compact végponttal.",{"q":95,"a":96},"Elég a tömörítés ahhoz, hogy egy hosszan futó ügynök pályán maradjon?","Önmagában általában nem. Az Anthropic szerint az ügynökök tömörítéssel is hajlamosak voltak egyszerre túl sokat vállalni, vagy túl korán késznek nyilvánítani a munkát. Egy elmentett terv, egy haladási napló, egy funkciólista és git commitok, amelyeket minden munkamenet elején elolvasnak, tették koherenssé a hosszú futásokat.",{"q":98,"a":99},"Mi a különbség a kontextusszerkesztés és a tömörítés között?","A kontextusszerkesztés szabály alapján távolít el bizonyos tartalmakat, például régi eszközeredményeket vagy thinking blokkokat, összefoglalás nélkül. A tömörítés a régebbi köröket egy rövidebb blokkba foglalja össze. A törlés olcsóbb és biztonságosabb; a tömörítés többet megőriz a beszélgetés értelméből, de elveszíti azokat a részleteket, amelyeket az összefoglaló nem rögzít.",{"q":101,"a":102},"Használjak al-ügynököket a kontextusromlás ellen?","Olvasó felderítésre igen: egy al-ügynök a saját ablakában kereshet, és nagyjából 1000-2000 tokenes összefoglalót adhat vissza. Olyan munkához, amely ír vagy változtat, maradj egyetlen, teljes kontextusú ügynöknél, mert az egymás döntéseit nem látó al-ügynökök gyakran ellentmondó eredményeket adnak.",[104,107,110,113,116,119,122,125,128,131,134],{"id":105,"title":106},"what-is-context-rot","Mit mutat a kutatás",{"id":108,"title":109},"why-agents-rot-faster","Miért az ügynököket érinti leginkább",{"id":111,"title":112},"four-levers","Négy eszköz: törlés, tömörítés, kiszervezés, elkülönítés",{"id":114,"title":115},"clear-tool-results","Régi eszközeredmények törlése",{"id":117,"title":118},"compaction","Tömörítés: összefoglalás és folytatás",{"id":120,"title":121},"notes-and-memory","Jegyzetek és memória az ablakon kívül",{"id":123,"title":124},"sub-agents","Al-ügynökök: elkülönítés, ára van",{"id":126,"title":127},"just-in-time-context","Eleve kevesebbet tölts be",{"id":129,"title":130},"measuring-context-rot","Mérd a saját ügynöködben",{"id":132,"title":133},"checklist","Ellenőrzőlista",{"id":135,"title":136},"sources","Források",[138,146,149,152,155,195,198,199,208,216,217,262,271,272,288,290,305,308,309,315,388,390,397,400,401,412,431,432,435,443,444,455,487,488,491,509,517,518,536,544,545],{"type":139,"content":140},"paragraph",[141,142,145],"A ",{"tag":143,"children":144},"strong",[15]," (kontextromlás) az LLM pontosságának csökkenése a bemenet hosszának növekedésével, jóval azelőtt, hogy a kontextusablak megtelne. Egy 1M tokenes ablak nem jelenti azt, hogy a modell a milliomodik tokent ugyanolyan jól használja, mint a századikat. Egy chatnél ez alig számít. Egy órákig futó ügynöknél, amely minden elolvasott fájlt és minden lefuttatott parancsot hozzáfűz, ez a fő oka annak, hogy a minőség a feladat vége felé leromlik.",{"type":139,"content":147},[148],"Ez a cikk összegyűjti a bizonyítékokat, elmagyarázza, miért az ügynököket érinti leginkább, és végigveszi a négy, a gyakorlatban működő eszközt: a régi eszközeredmények törlését, a tömörítést (compaction), az ablakon kívüli jegyzeteket és memóriát, valamint a saját kontextussal dolgozó al-ügynököket. Mindegyiknél bemutatja a Claude és az OpenAI API jelenlegi mechanizmusait, és azokat a harness-mintákat, amelyek egy hosszú futást koherensen tartanak.",{"type":150,"level":151,"id":105,"text":106},"heading",2,{"type":139,"content":153},[154],"Három kutatási irány mutat ugyanabba az irányba. Egyik sem ügynökterhelést vizsgál, ami inkább arra utal, hogy a valódi ügynökök még rosszabbul járnak:",{"type":156,"head":157,"rows":164},"table",[158,160,162],[159],"Tanulmány",[161],"Felállás",[163],"Eredmény",[165,175,185],[166,171,173],[167,170],{"tag":143,"children":168},[169],"Lost in the Middle"," (Liu és tsai., 2023)",[172],"Több dokumentumos kérdés-válasz és kulcs-érték visszakeresés, a releváns elem különböző pozíciókban",[174],"A pontosság akkor a legnagyobb, ha a releváns információ az elején vagy a végén van, középen jelentősen romlik, még hosszú kontextusú modelleknél is",[176,181,183],[177,180],{"tag":143,"children":178},[179],"NoLiMa"," (Modarressi és tsai., ICML 2025)",[182],"Tű a szénakazalban, ahol a kérdés és a tű alig osztozik szavakon; 13 modell, legalább 128K kontextus ígérettel",[184],"32K tokennél 13 modellből 11 a rövid kontextusú alapszintje 50%-a alá esett; a GPT-4o 99,3%-ról 69,7%-ra",[186,191,193],[187,190],{"tag":143,"children":188},[189],"Context Rot"," (Chroma, 2025. július)",[192],"18 modell, köztük GPT-4.1, Claude 4, Gemini 2.5 és Qwen3, kontrollált egyszerű feladatokon",[194],"A teljesítmény a bemenet növekedésével egyre megbízhatatlanabb; a LongMemEvalon minden modell jelentősen jobb volt a fókuszált, ~300 tokenes promptokkal, mint a teljes, ~113K tokenes promptokkal",{"type":139,"content":196},[197],"A Chroma jelentése két, ügynököknél fontos részlettel egészíti ki ezt. A zavaró elemek, vagyis a relevánsnak tűnő, de nem releváns tartalmak, a kontextus növekedésével egyre jobban ártanak, és a vizsgált Claude modellek ilyen kétértelműség mellett inkább tartózkodtak a választól, mint hogy találgassanak. Ráadásul, a megérzéssel ellentétben, a modellek jobban teljesítettek összekevert szénakazalon, mint összefüggő szövegen. A jelentés következtetése a hasznos rész: nem az számít leginkább, hogy a releváns információ benne van-e a kontextusban, hanem az, hogyan van tálalva.",{"type":150,"level":151,"id":108,"text":109},{"type":139,"content":200},[201,202,207],"Az ",{"tag":203,"to":204,"children":205},"link","\u002Fblog\u002Fagent-loop-explained",[206],"ügynökhurok"," minden eszközhívást és minden eszközeredményt hozzáfűz az előzményekhez, és a következő körben az egészet visszaküldi. Két óra munka után a kontextus nagyrészt elavult fájlolvasásokból, régi tesztkimenetekből és felülírt tervekből áll: pontosan abból a zavaró elemekkel teli, kevés jelet hordozó bemenetből, amelyet a fenti tanulmányok büntetnek. Az Anthropic kontextustervezési útmutatója ezt \"figyelmi keretnek\" nevezi: egy transformer minden tokent minden más tokennel kapcsolatba hoz, n tokennél n² párt, így minden újabb token hígítja a fontos tokenekre jutó figyelmet. Az útmutató munkaszabálya: a következő lépéshez \"a lehető legkisebb, nagy jeltartalmú tokenhalmazt\" kell megtalálni.",{"type":139,"content":209},[210,211,215],"A második probléma a költség. Az előzmények minden tokenjét minden körben újra kiszámlázzák; a gyorsítótárazás ezt enyhíti (lásd a ",{"tag":203,"to":212,"children":213},"\u002Fblog\u002Fllm-cost-latency-prompt-caching-routing",[214],"prompt cachingről és útválasztásról"," szóló cikket), de egy csak növekvő kontextus minden későbbi lépést lassabbá, drágábbá és pontatlanabbá is tesz.",{"type":150,"level":151,"id":111,"text":112},{"type":156,"head":218,"rows":227},[219,221,223,225],[220],"Eszköz",[222],"Mit csinál",[224],"Mi vész el",[226],"Mikor nyúlj hozzá",[228,238,246,254],[229,232,234,236],[230,231],"tag","children",[233],"Szabály alapján eltávolítja a régi eszközeredményeket (opcionálisan a bemeneteket vagy a thinkinget is)",[235],"A nyers kimenet, amelyet az ügynök általában újra le tud kérni",[237],"Az eszközkimenetek uralják a kontextust; első és legolcsóbb lépés",[239,240,242,244],[230,231],[241],"A régebbi köröket a modell által írt összefoglalóra cseréli",[243],"A részletek, amelyeket az összefoglaló nem őrzött meg",[245],"Hosszú oda-vissza, amelynek egy beszélgetésnek kell maradnia",[247,248,250,252],[230,231],[249],"Az ügynök jegyzeteket, terveket és haladási naplót ír fájlba vagy memóriatárba",[251],"Semmi, ha az ügynök vissza is olvassa őket",[253],"Több munkamenetes munka világos mérföldkövekkel",[255,256,258,260],[230,231],[257],"Egy al-ügynök a saját ablakában kutat, és rövid összefoglalót ad vissza",[259],"Az al-ügynök gondolatmenete; a koordináció nehezebb",[261],"Széles keresés vagy kutatás, amely elárasztaná a fő ablakot",{"type":263,"attrs":264,"inner":268,"caption":269},"diagram",{"viewBox":265,"role":266,"aria-labelledby":267},"0 0 720 300","img","cr-saw-t cr-saw-d","\u003Ctitle id=\"cr-saw-t\">Kontextméret egy ügynökfutás alatt, kezeléssel és anélkül\u003C\u002Ftitle>\u003Cdesc id=\"cr-saw-d\">Vonaldiagram a körönkénti bemeneti tokenekről. Kezelés nélkül a kontextus folyamatosan nő, amíg el nem éri az ablak határát. Az eszközeredmények törlésével lassabban nő. Tömörítéssel a vonal egy küszöbig emelkedik, egy rövid összefoglalóra esik vissza, majd újra emelkedik, fűrészfogszerűen, egy alacsonyabb tartományban, ahol jobb a pontosság.\u003C\u002Fdesc>\u003Cpath d=\"M70 260H690\" class=\"d-line\" \u002F>\u003Cpath d=\"M70 260V30\" class=\"d-line\" \u002F>\u003Ctext x=\"20\" y=\"150\" text-anchor=\"middle\" class=\"d-label\" transform=\"rotate(-90 20 150)\">bemeneti token körönként\u003C\u002Ftext>\u003Ctext x=\"380\" y=\"288\" text-anchor=\"middle\" class=\"d-label\">körök\u003C\u002Ftext>\u003Cpath d=\"M70 50H690\" class=\"d-line d-dash\" \u002F>\u003Ctext x=\"686\" y=\"44\" text-anchor=\"end\" class=\"d-small\">ablakhatár\u003C\u002Ftext>\u003Cpath d=\"M70 150H690\" class=\"d-dash d-line\" \u002F>\u003Ctext x=\"686\" y=\"144\" text-anchor=\"end\" class=\"d-small\">küszöb\u003C\u002Ftext>\u003Cpath d=\"M70 250L430 52\" class=\"d-line\" fill=\"none\" \u002F>\u003Cpath d=\"M70 250L690 120\" class=\"d-line d-dash\" fill=\"none\" \u002F>\u003Cpath d=\"M70 250L230 150L236 232L396 150L402 232L562 150L568 232L690 170\" class=\"d-line-accent\" fill=\"none\" \u002F>\u003Cpath d=\"M90 76H110\" class=\"d-line\" \u002F>\u003Ctext x=\"116\" y=\"80\" text-anchor=\"start\" class=\"d-small\">kezelés nélkül\u003C\u002Ftext>\u003Cpath d=\"M90 96H110\" class=\"d-line d-dash\" \u002F>\u003Ctext x=\"116\" y=\"100\" text-anchor=\"start\" class=\"d-small\">törlés\u003C\u002Ftext>\u003Cpath d=\"M90 116H110\" class=\"d-line-accent\" \u002F>\u003Ctext x=\"116\" y=\"120\" text-anchor=\"start\" class=\"d-small\">tömörítés\u003C\u002Ftext>",[270],"Szemléltető ábra, nem mérés: a törlés lassítja a növekedést, a tömörítés egy sávban tartja a kontextust. Mindkettő célja, hogy ott maradj, ahol a modell pontos, ne csak a határ alatt.",{"type":150,"level":151,"id":114,"text":115},{"type":139,"content":273},[274,275,278,279,283,284,287],"Az Anthropic az eszközeredmények törlését \"a tömörítés egyik legbiztonságosabb, legkíméletesebb formájának\" nevezi: ha az ügynök már elolvasott egy fájlt és cselekedett is alapján, a teljes fájltartalomnak ritkán kell bent maradnia. A Claude API-ban ez a ",{"tag":143,"children":276},[277],"kontextusszerkesztés"," (context editing, béta fejléc: ",{"tag":280,"children":281},"code",[282],"context-management-2025-06-27","). A ",{"tag":280,"children":285},[286],"clear_tool_uses_20250919"," stratégia egy küszöb felett lép életbe (alapértelmezésben 100 000 bemeneti token), megtartja a legutóbbi eszközhasználatokat (alapértelmezésben 3-at), a régebbi eredményeket pedig helyőrzőre cseréli:",{"type":280,"code":289},"response = client.beta.messages.create(\n    model=\"claude-opus-5-5\",\n    max_tokens=16000,\n    betas=[\"context-management-2025-06-27\"],\n    tools=tools,\n    messages=messages,\n    context_management={\"edits\": [{\n        \"type\": \"clear_tool_uses_20250919\",\n        \"trigger\": {\"type\": \"input_tokens\", \"value\": 30000},\n        \"keep\": {\"type\": \"tool_uses\", \"value\": 3},\n        \"clear_at_least\": {\"type\": \"input_tokens\", \"value\": 5000},\n        \"exclude_tools\": [\"web_search\"],   # results you never want dropped\n    }]},\n)",{"type":139,"content":291},[292,293,296,297,300,301,304],"Két beállítás érdemel figyelmet. Az ",{"tag":280,"children":294},[295],"exclude_tools"," azokat az eredményeket védi, amelyeket az ügynök nem tud olcsón újra előállítani. A ",{"tag":280,"children":298},[299],"clear_at_least"," azért létezik, mert a törlés a módosítás pontjától érvényteleníti a gyorsítótárazott prompt-előtagot; ha egy törlési kör csak néhány száz tokent szabadít fel, a gyorsítótár újraírása többe kerül, mint amennyit megtakarít. Egy külön ",{"tag":280,"children":302},[303],"clear_thinking_20251015"," stratégia ugyanezt teszi a régi thinking blokkokkal.",{"type":139,"content":306},[307],"Ugyanez saját harnessben is megoldható béta nélkül: az utolsó néhány eszközeredményt szó szerint tartsd meg, a régebbieket pedig cseréld egysoros helyőrzőre, például \"src\u002Forder.ts elolvasva (412 sor), lásd a jegyzeteket\". A helyőrző olvashatóan tartja a trajektóriát, a tömeget viszont kidobja.",{"type":150,"level":151,"id":117,"text":118},{"type":139,"content":310},[141,311,314],{"tag":143,"children":312},[313],"tömörítés"," (compaction) a régebbi köröket egy összefoglalóra cseréli, és onnan folytatja. Az Anthropic leírja, hogyan csinálja a Claude Code: a modell összefoglalja az előzményeket, megtartja az architekturális döntéseket, a megoldatlan hibákat és a megvalósítási részleteket, a felesleges eszközkimeneteket pedig elveti. Mindkét nagy API kínálja már szerveroldalon:",{"type":316,"ordered":317,"items":318},"list",false,[319,344,367],[320,323,324,327,328,331,332,335,336,339,340,343],{"tag":143,"children":321},[322],"Claude, tokenküszöbnél"," (béta: ",{"tag":280,"children":325},[326],"compact-2026-01-12","): add hozzá a ",{"tag":280,"children":329},[330],"compact_20260112"," stratégiát a ",{"tag":280,"children":333},[334],"context_management.edits"," listához. Az alapértelmezett küszöb 150 000 bemeneti token, a minimum 50 000. Az ",{"tag":280,"children":337},[338],"instructions"," teljesen lecseréli az alapértelmezett összefoglaló promptot, a ",{"tag":280,"children":341},[342],"pause_after_compaction"," pedig az összefoglaló után megáll, hogy a legutóbbi köröket szó szerint visszailleszthesd.",[345,323,348,351,352,355,356,358,359,362,363,366],{"tag":143,"children":346},[347],"Claude, igény szerint",{"tag":280,"children":349},[350],"compact-2026-09-04","): küldd el a beszélgetést a ",{"tag":280,"children":353},[354],"\"compaction\": {\"type\": \"summarize\"}"," paraméterrel; a válasz egyetlen aláírt ",{"tag":280,"children":357},[117]," blokk ",{"tag":280,"children":360},[361],"\"compaction\""," értékű ",{"tag":280,"children":364},[365],"stop_reason"," mellett, és ez kerül a következő kérés elejére az összefoglalt üzenetek helyére. Az időzítésről az alkalmazásod dönt.",[368,371,372,375,376,379,380,383,384,387],{"tag":143,"children":369},[370],"OpenAI Responses API",": állítsd be a ",{"tag":280,"children":373},[374],"context_management"," mezőt ",{"tag":280,"children":377},[378],"compact_threshold"," értékkel a ",{"tag":280,"children":381},[382],"responses.create"," hívásban, vagy hívd meg az önálló compact végpontot. A visszaadott compaction elem titkosított, és \"nem emberi értelmezésre szánt\"; ",{"tag":280,"children":385},[386],"store=false"," mellett a folyamat ZDR-barát.",{"type":280,"code":389},"response = client.beta.messages.create(\n    model=\"claude-opus-5-5\",\n    max_tokens=16000,\n    betas=[\"compact-2026-01-12\"],\n    tools=tools,\n    messages=messages,\n    context_management={\"edits\": [{\n        \"type\": \"compact_20260112\",\n        \"trigger\": {\"type\": \"input_tokens\", \"value\": 120000},\n        \"instructions\": (\n            \"Summarise for continuing this task in a new context window. Keep: the goal, \"\n            \"constraints the user stated, decisions made and why, files changed, failing \"\n            \"tests and their errors, open questions, the next step. Drop raw tool output.\"\n        ),\n    }]},\n)\nmessages.append({\"role\": \"assistant\", \"content\": response.content})   # keep the compaction block",{"type":391,"variant":392,"title":393,"body":394},"callout","warn","A teljes választ fűzd hozzá",[395],[396],"A compaction blokk a válasz tartalmában van. Ha a ciklusod csak a válasz szövegét fűzi hozzá, a tömörítés állapota csendben elvész, és a következő kérés ismét a teljes előzményt küldi. A költséget is számold: a tömörítés egy extra mintavételi lépés, amely külön bejegyzésként jelenik meg a usage iterációkban, és beleszámít a rate limitbe.",{"type":139,"content":398},[399],"Az összefoglaló eleve veszteséges. Amit az alapértelmezett prompt elhagy, az általában később üt vissza: a felhasználó harmadik körben megadott megkötése, vagy az, hogy miért vetettetek el egy megközelítést. Írj saját utasításokat a saját területedre, az utolsó néhány kört tartsd meg szó szerint, és teszteld: futtass olyan feladatokat, amelyekhez a tömörítés előtti információ kell, és ellenőrizd, hogy az ügynök még tudja-e.",{"type":150,"level":151,"id":120,"text":121},{"type":139,"content":402},[403,404,407,408,411],"Az Anthropic 2025 novemberi harness-cikke egyenesen fogalmaz: \"a tömörítés nem elég\". Még egy több kontextusablakon át futó frontier modell is hajlamos volt egy menetben megépíteni az alkalmazást, vagy túl korán késznek nyilvánítani a projektet. A megoldást a lemezen tárolt állapot hozta. Egy inicializáló munkamenet megír egy ",{"tag":280,"children":405},[406],"init.sh"," szkriptet, egy ",{"tag":280,"children":409},[410],"claude-progress.txt"," naplót és egy kezdeti git commitot; a példaalkalmazásukhoz emellett egy több mint 200 követelményből álló funkciólistát is, mindet bukóként jelölve. Minden későbbi munkamenet elolvassa a haladási fájlt és a git-előzményeket, egy funkción halad előre lépésenként, és strukturált frissítést hagy maga után.",{"type":139,"content":413},[414,415,418,419,422,423,425,426,430],"Ez a kiszervezés eszköze, és kódoló ügynököknél erre támaszkodom a legjobban: egy tervfájl, egy haladási napló és kis commitok olcsók, túlélnek bármilyen tömörítést vagy összeomlást, és olvashatók annak az embernek, aki a munkát átnézi. Nem fájlalapú ügynököknél a Claude memóriaeszköze (",{"tag":280,"children":416},[417],"memory_20250818",") eszközként adja ugyanezt a mintát: a modell a ",{"tag":280,"children":420},[421],"\u002Fmemories"," alatti fájlokat olvassa és írja, az alkalmazásod pedig ezeket a műveleteket egy általad felügyelt tárolón hajtja végre. Mivel a tároló a tiéd, a kezelőnek el kell utasítania a ",{"tag":280,"children":424},[421]," kívüli útvonalakat. Hogy mit érdemes tárolni, és hogyan előzd meg a megmérgezést, arról az ",{"tag":203,"to":427,"children":428},"\u002Fblog\u002Fai-agent-memory-design",[429],"MI-ügynökök memóriájának tervezéséről"," szóló cikk szól.",{"type":150,"level":151,"id":123,"text":124},{"type":139,"content":433},[434],"Egy al-ügynök kap egy feladatot, saját tiszta kontextusablakot és saját eszközöket. Felderítés közben akár több tízezer tokent is elhasználhat, de az Anthropic megfogalmazásában \"tömör, lepárolt összefoglalót ad vissza a munkájáról (gyakran 1000-2000 tokent)\". A fő ügynök ablakába csak ez az összefoglaló kerül. Keresésigényes munkánál ez a legerősebb eszköz a romlás ellen, például ha egy nagy kódbázisban \"meg kell találni minden helyet, ahol áfát számolunk\".",{"type":139,"content":436},[437,438,442],"Az ár a koordináció. A Cognition \"Don't Build Multi-Agents\" írása amellett érvel, hogy teljes ügynök-trace-eket kell megosztani, nem egyes üzeneteket, mert a műveletek implicit döntéseket hordoznak, és azok az al-ügynökök, amelyek nem látják egymás döntéseit, ellentmondó eredményeket adnak. Az én szabályom: al-ügynököt csak olvasó felderítésre és tényeket visszaadó kutatásra; mindenhez, ami ír, egyetlen, teljes kontextussal dolgozó ügynököt. A ",{"tag":203,"to":439,"children":440},"\u002Fblog\u002Fmulti-agent-systems-when-worth-it",[441],"mikor éri meg a multi-ügynökös rendszer"," című cikk részletesebb.",{"type":150,"level":151,"id":126,"text":127},{"type":139,"content":445},[446,447,450,451,454],"A legolcsóbban kezelhető token az, amelyik be sem kerül. Az Anthropic \"just in time\" kontextust ír le: az ügynök könnyű azonosítókat tart meg (fájlútvonalakat, mentett lekérdezéseket, linkeket), és csak akkor tölt be adatot, amikor szükség van rá, ",{"tag":280,"children":448},[449],"head",", ",{"tag":280,"children":452},[453],"tail"," és célzott lekérdezések segítségével, ahelyett, hogy egész objektumokat olvasna be. A többit az eszközök kialakítása végzi:",{"type":316,"ordered":317,"items":456},[457,462,467,472],[458,461],{"tag":143,"children":459},[460],"Az eszközkimenetet alapból lapozd és csonkold,"," egyértelmű jelzéssel arról, hogyan lehet többet kérni.",[463,466],{"tag":143,"children":464},[465],"Összefoglalót és hivatkozást adj vissza,"," ne nyers adathalmazt: \"143 egyező rendelés, az első 10 lent, lekérdezés-azonosító: q_17\".",[468,471],{"tag":143,"children":469},[470],"A stabil utasítások legyenek rövidek és elöl,"," az aktuális cél és a megkötések pedig a kontextus végén, ahol a Lost in the Middle eredményei szerint a modellek a legjobban figyelnek.",[473,476,477,481,482,486],{"tag":143,"children":474},[475],"Visszakeresés a teletömés helyett."," A hosszú kontextus és a keresés közötti mérlegelést a ",{"tag":203,"to":478,"children":479},"\u002Fblog\u002Frag-2026-hybrid-agentic-long-context",[480],"RAG 2026-ban"," című cikk tárgyalja; kódoló ügynököknél a ",{"tag":203,"to":483,"children":484},"\u002Fblog\u002Ftoken-saving-tools-coding-agents-top-20",[485],"tokentakarékos eszközökről"," szóló cikk bizonyítékok alapján rangsorolja a lehetőségeket.",{"type":150,"level":151,"id":129,"text":130},{"type":139,"content":489},[490],"A kontextusromlás a saját terhelésed tulajdonsága, ezért ott mérd. Három olcsó jel:",{"type":316,"ordered":492,"items":493},true,[494,499,504],[495,498],{"tag":143,"children":496},[497],"Naplózd a körönkénti bemeneti tokeneket"," a trace-ekben, és ábrázold a feladatsikert annak a kontextusméretnek a függvényében, amelynél az adott feladat véget ért. Ha a felső tartományokban esik a siker, túl magas a küszöböd.",[500,503],{"tag":143,"children":501},[502],"Ültess el korán egy megkötést, és teszteld későn."," Egy eval feladat, amely az első körben kimond egy szabályt (\"a fizetési modulhoz soha ne nyúlj\"), és egy tömörítés után van rá szükség, megmutatja, hogy az összefoglalód megtartja-e a lényeget.",[505,508],{"tag":143,"children":506},[507],"Hasonlítsd össze egy friss munkamenettel."," A sikertelen késői lépéseket futtasd újra egy új munkamenetben, amely csak a jegyzeteket és a haladási fájlt kapja meg. Ha ott sikerül, a probléma a kontextus volt, nem a modell.",{"type":139,"content":510},[511,512,516],"Ezek az ellenőrzések közvetlenül beilleszthetők a meglévő trajektória-evalokba és trace-ekbe; az ",{"tag":203,"to":513,"children":514},"\u002Fblog\u002Fagent-observability-opentelemetry",[515],"ügynök-observability OpenTelemetryvel"," című cikk megmutatja, hogyan rögzítsd a tokenszámokat spanonként.",{"type":150,"level":151,"id":132,"text":133},{"type":316,"ordered":492,"items":519},[520,522,524,526,528,530,532,534],[521],"A kontextusablakot pontossági keretként kezeld, ne tárolási korlátként.",[523],"Lapozd és csonkold az eszközkimeneteket; hivatkozásokat és összefoglalókat adj vissza.",[525],"Először a régi eszközeredményeket töröld, kivételt téve a drágán újra előállítható eredményekkel.",[527],"Területspecifikus utasításokkal tömöríts, a legutóbbi köröket tartsd meg szó szerint, és a teljes választ fűzd hozzá, hogy a compaction blokk megmaradjon.",[529],"A terveket, a haladást és a döntéseket lemezen vagy memóriatárban tartsd, amelyet az ügynök minden munkamenet elején elolvas.",[531],"Al-ügynököt rövid összefoglalót visszaadó, olvasó felderítésre használj; az írást hagyd egyetlen, teljes kontextusú ügynöknél.",[533],"Az aktuális célt és a megkötéseket tedd a kontextus végére.",[535],"Mérd a sikert a kontextusméret függvényében, és teszteld, hogy a korai megkötések túlélik-e a tömörítést.",{"type":139,"content":537},[538,539,543],"Ha az ügynökeid hosszú feladatoknál leromlanak, és második véleményt szeretnél a harnessről, nézd meg az ",{"tag":203,"to":540,"children":541},"\u002Fexpertise\u002Fai-engineer",[542],"AI engineering"," oldalt.",{"type":150,"level":151,"id":135,"text":136},{"type":316,"ordered":492,"items":546},[547,551,554,557,560,563,566,569,572,575,578],[548],{"tag":549,"href":39,"children":550},"a",[38],[552],{"tag":549,"href":42,"children":553},[41],[555],{"tag":549,"href":45,"children":556},[44],[558],{"tag":549,"href":48,"children":559},[47],[561],{"tag":549,"href":51,"children":562},[50],[564],{"tag":549,"href":54,"children":565},[53],[567],{"tag":549,"href":57,"children":568},[56],[570],{"tag":549,"href":60,"children":571},[59],[573],{"tag":549,"href":63,"children":574},[62],[576],{"tag":549,"href":66,"children":577},[65],[579],{"tag":549,"href":69,"children":580},[68],[582,633,692,776],{"slug":583,"published":5,"minutes":584,"category":7,"tags":585,"keywords":591,"about":602,"sources":611,"cover":627,"og":628,"expertise":72,"locales":629,"lang":76,"title":630,"description":631,"coverAlt":632},"browser-agents-e2e-testing-playwright",7,[586,587,588,589,590],"Playwright","E2E testing","Coding agents","MCP","Test automation",[592,593,594,595,596,597,598,599,600,601],"playwright test agents","playwright planner generator healer","ai e2e testing","playwright mcp","llm generated playwright tests","self-healing tests","browser agent testing","playwright init-agents","ai test automation 2026","playwright cli skills",[603,605,608],{"name":586,"url":604},"https:\u002F\u002Fplaywright.dev\u002F",{"name":606,"url":607},"End-to-end testing","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FSystem_testing",{"name":609,"url":610},"Model Context Protocol","https:\u002F\u002Fmodelcontextprotocol.io\u002F",[612,615,618,621,624],{"title":613,"url":614},"Playwright docs: Test agents (planner, generator, healer)","https:\u002F\u002Fplaywright.dev\u002Fdocs\u002Ftest-agents",{"title":616,"url":617},"Microsoft: Playwright MCP README (MCP vs CLI, accessibility snapshots)","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fplaywright-mcp",{"title":619,"url":620},"Playwright docs: Best practices","https:\u002F\u002Fplaywright.dev\u002Fdocs\u002Fbest-practices",{"title":622,"url":623},"Playwright docs: Locators","https:\u002F\u002Fplaywright.dev\u002Fdocs\u002Flocators",{"title":625,"url":626},"Browserbase: Stagehand README (act, extract, observe)","https:\u002F\u002Fgithub.com\u002Fbrowserbase\u002Fstagehand","\u002Fimages\u002Fblog\u002Fbrowser-agents-e2e-testing-playwright\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fbrowser-agents-e2e-testing-playwright\u002Fog.jpg",[74,75,76],"Böngészőágensek E2E-teszteléshez: írják az ágensek a Playwright-teszteket, ne futtassák","Hol segítenek az AI-ágensek E2E-teszteknél: Playwright planner, generator és healer, MCP vagy CLI, és a korlátok, melyek őszintén tartják a javított teszteket.","Egy ágens bejár egy webalkalmazást, Markdown tesztervet ír, Playwright-tesztekké alakítja, a healer pedig lokátorokat javít, miközben az ellenőrzések felülvizsgálat alatt maradnak.",{"slug":634,"published":5,"minutes":635,"category":7,"tags":636,"keywords":641,"about":653,"sources":661,"cover":686,"og":687,"expertise":72,"locales":688,"lang":76,"title":689,"description":690,"coverAlt":691},"a2a-protocol-agent-interoperability",12,[637,638,589,639,640],"A2A","AI agents","Interoperability","Agent security",[642,643,644,645,646,647,648,649,650,651,652],"a2a protocol","agent2agent protocol","a2a vs mcp","a2a agent card","agent-card.json well-known","a2a protocol 1.0","a2a task lifecycle","agent to agent communication protocol","a2a security","a2a json-rpc grpc","agent session smuggling",[654,657,658],{"name":655,"url":656},"Agent2Agent protocol","https:\u002F\u002Fa2a-protocol.org\u002F",{"name":609,"url":610},{"name":659,"url":660},"Linux Foundation","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FLinux_Foundation",[662,665,668,671,674,677,680,683],{"title":663,"url":664},"A2A Protocol Specification (latest, v1.0)","https:\u002F\u002Fa2a-protocol.org\u002Flatest\u002Fspecification\u002F",{"title":666,"url":667},"A2A: a2a.proto, the normative data model (GitHub)","https:\u002F\u002Fgithub.com\u002Fa2aproject\u002FA2A\u002Fblob\u002Fmain\u002Fspecification\u002Fa2a.proto",{"title":669,"url":670},"A2A docs: A2A and MCP","https:\u002F\u002Fa2a-protocol.org\u002Flatest\u002Ftopics\u002Fa2a-and-mcp\u002F",{"title":672,"url":673},"A2A docs: Agent discovery","https:\u002F\u002Fa2a-protocol.org\u002Flatest\u002Ftopics\u002Fagent-discovery\u002F",{"title":675,"url":676},"Google Developers Blog: Announcing the Agent2Agent Protocol (Apr 2025)","https:\u002F\u002Fdevelopers.googleblog.com\u002Fen\u002Fa2a-a-new-era-of-agent-interoperability\u002F",{"title":678,"url":679},"Linux Foundation: Launch of the Agent2Agent Protocol Project (Jun 2025)","https:\u002F\u002Fwww.linuxfoundation.org\u002Fpress\u002Flinux-foundation-launches-the-agent2agent-protocol-project-to-enable-secure-intelligent-communication-between-ai-agents",{"title":681,"url":682},"Linux Foundation: A2A surpasses 150 organizations in its first year (Apr 2026)","https:\u002F\u002Fwww.linuxfoundation.org\u002Fpress\u002Fa2a-protocol-surpasses-150-organizations-lands-in-major-cloud-platforms-and-sees-enterprise-production-use-in-first-year",{"title":684,"url":685},"Unit 42: Agent Session Smuggling in Agent2Agent Systems (Oct 2025)","https:\u002F\u002Funit42.paloaltonetworks.com\u002Fagent-session-smuggling-in-agent2agent-systems\u002F","\u002Fimages\u002Fblog\u002Fa2a-protocol-agent-interoperability\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fa2a-protocol-agent-interoperability\u002Fog.jpg",[74,75,76],"Az A2A protokoll: agent cardok, taskok, és a helye az MCP mellett","Mit szabványosít az Agent2Agent protokoll 1.0-s verziója: agent card, task, bindingek, biztonság, eltérés az MCP-től, és mikor éri meg használni.","Két, különböző szervezethez tartozó AI-ágens A2A-n cserél taskokat, mindkettő MCP-n kapcsolódik a saját eszközeihez, az agent card egy well-known URL-en érhető el.",{"slug":693,"published":694,"minutes":695,"category":7,"tags":696,"keywords":702,"about":711,"sources":721,"cover":770,"og":771,"expertise":72,"locales":772,"lang":76,"title":773,"description":774,"coverAlt":775},"ai-assisted-development-economics","2026-10-01",11,[697,698,699,700,701],"AI coding agents","Developer productivity","Engineering economics","Team cost","GDPR",[703,704,705,706,707,708,709,710],"AI coding agents cost","developer productivity AI study","METR AI developer slowdown","AI coding break-even cost model","one senior engineer vs team","AI coding agent vs agency","DORA AI adoption report","GDPR processor contract AI coding tools",[712,715,718],{"name":713,"url":714},"General Data Protection Regulation","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FGeneral_Data_Protection_Regulation",{"name":716,"url":717},"Randomized controlled trial","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FRandomized_controlled_trial",{"name":719,"url":720},"Bus factor","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FBus_factor",[722,725,728,731,734,737,740,743,746,749,752,755,758,761,764,767],{"title":723,"url":724},"METR: early-2025 AI and experienced open-source developers","https:\u002F\u002Fmetr.org\u002Fblog\u002F2025-07-10-early-2025-ai-experienced-os-dev-study\u002F",{"title":726,"url":727},"Becker et al.: arXiv 2507.09089","https:\u002F\u002Farxiv.org\u002Fabs\u002F2507.09089",{"title":729,"url":730},"METR: developer productivity experiment design, February 2026","https:\u002F\u002Fmetr.org\u002Fblog\u002F2026-02-24-uplift-update\u002F",{"title":732,"url":733},"Peng et al.: GitHub Copilot controlled experiment, arXiv 2302.06590","https:\u002F\u002Farxiv.org\u002Fhtml\u002F2302.06590v1",{"title":735,"url":736},"Cui et al.: three field experiments with software developers","https:\u002F\u002Fwww.microsoft.com\u002Fen-us\u002Fresearch\u002F?p=1148213",{"title":738,"url":739},"DORA: State of AI-assisted Software Development 2025","https:\u002F\u002Fresearch.google\u002Fpubs\u002Fdora-2025-state-of-ai-assisted-software-development-report\u002F",{"title":741,"url":742},"Google Cloud: highlights from the 2024 DORA report","https:\u002F\u002Fcloud.google.com\u002Fblog\u002Fproducts\u002Fdevops-sre\u002Fannouncing-the-2024-dora-report",{"title":744,"url":745},"Stack Overflow: Developer Survey 2025, AI","https:\u002F\u002Fsurvey.stackoverflow.co\u002F2025\u002Fai",{"title":747,"url":748},"Ziftci et al.: Migrating Code At Scale With LLMs At Google","https:\u002F\u002Farxiv.org\u002Fabs\u002F2504.09691",{"title":750,"url":751},"Alshahwan et al.: Automated Unit Test Improvement using Large Language Models at Meta","https:\u002F\u002Farxiv.org\u002Fabs\u002F2402.09171",{"title":753,"url":754},"GitClear: AI Copilot Code Quality: 2025 Look Back at 12 Months of Data","https:\u002F\u002Fwww.gitclear.com\u002Fai_assistant_code_quality_2025_research",{"title":756,"url":757},"GDPR, Regulation (EU) 2016\u002F679, Article 28","https:\u002F\u002Feur-lex.europa.eu\u002Feli\u002Freg\u002F2016\u002F679\u002Foj\u002Feng",{"title":759,"url":760},"Anthropic: Commercial Terms of Service","https:\u002F\u002Fwww.anthropic.com\u002Flegal\u002Fcommercial-terms",{"title":762,"url":763},"Claude: pricing","https:\u002F\u002Fclaude.com\u002Fpricing",{"title":765,"url":766},"Claude Platform: data residency","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fbuild-with-claude\u002Fdata-residency",{"title":768,"url":769},"GitHub Copilot: plans and pricing","https:\u002F\u002Fgithub.com\u002Ffeatures\u002Fcopilot\u002Fplans","\u002Fimages\u002Fblog\u002Fai-assisted-development-economics\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fai-assisted-development-economics\u002Fog.jpg",[74,75,76],"Egy senior MI-ügynökökkel vagy egy csapattal: mit mondanak a bizonyítékok","A METR, DORA, Microsoft és GitHub kutatásai az MI-kódolóeszközökről, azok korlátai, és egy break-even modell: senior, csapat vagy ügynökség?","Borítókép az MI-kódolás gazdaságtanához: egy vázlattól az élesítésig tartó folyamat, ahol az ügynökök gyorsítják az írást, a review-költségek és a minőségi költségek pedig visszavesznek a nyereségből.",{"slug":777,"published":778,"minutes":695,"category":7,"tags":779,"keywords":783,"about":792,"sources":804,"cover":845,"og":846,"expertise":72,"locales":847,"lang":76,"title":848,"description":849,"coverAlt":850},"spec-driven-development-coding-agents","2026-09-30",[780,588,781,782,542],"Spec-driven development","Acceptance criteria","Plan mode",[784,785,786,787,788,789,790,791],"spec-driven development","spec driven development coding agents","acceptance criteria for coding agents","AI coding agent plan mode","GitHub Spec Kit","Kiro specs requirements design tasks","vibe coding vs spec-driven development","EARS requirements syntax",[793,796,798,801],{"name":794,"url":795},"Vibe coding","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FVibe_coding",{"name":788,"url":797},"https:\u002F\u002Fgithub.com\u002Fgithub\u002Fspec-kit",{"name":799,"url":800},"EARS (Easy Approach to Requirements Syntax)","https:\u002F\u002Falistairmavin.com\u002Fears\u002F",{"name":802,"url":803},"Kiro","https:\u002F\u002Fkiro.dev",[805,808,810,813,816,819,821,824,827,830,832,834,837,839,842],{"title":806,"url":807},"Birgitta Böckeler: Understanding Spec-Driven-Development: Kiro, spec-kit, and Tessl (martinfowler.com, 15 October 2025)","https:\u002F\u002Fmartinfowler.com\u002Farticles\u002Fexploring-gen-ai\u002Fsdd-3-tools.html",{"title":809,"url":797},"GitHub Spec Kit: README",{"title":811,"url":812},"GitHub Spec Kit: spec-driven.md methodology","https:\u002F\u002Fgithub.com\u002Fgithub\u002Fspec-kit\u002Fblob\u002Fmain\u002Fspec-driven.md",{"title":814,"url":815},"Kiro documentation: specs","https:\u002F\u002Fkiro.dev\u002Fdocs\u002Fspecs\u002F",{"title":817,"url":818},"Kiro: Introducing Kiro","https:\u002F\u002Fkiro.dev\u002Fblog\u002Fintroducing-kiro\u002F",{"title":820,"url":800},"Alistair Mavin: EARS, the Easy Approach to Requirements Syntax",{"title":822,"url":823},"Anthropic: Best practices for Claude Code","https:\u002F\u002Fcode.claude.com\u002Fdocs\u002Fen\u002Fbest-practices",{"title":825,"url":826},"Cline documentation: Plan and Act","https:\u002F\u002Fdocs.cline.bot\u002Ffeatures\u002Fplan-and-act",{"title":828,"url":829},"OpenAI: Codex slash command reference","https:\u002F\u002Flearn.chatgpt.com\u002Fdocs\u002Freference\u002Fslash-commands",{"title":831,"url":724},"METR: early-2025 AI and experienced open-source developer productivity (July 2025)",{"title":833,"url":730},"METR: We are changing our developer productivity experiment design (February 2026)",{"title":835,"url":836},"Thoughtworks Technology Radar: Spec-driven development","https:\u002F\u002Fwww.thoughtworks.com\u002Fradar\u002Ftechniques\u002Fspec-driven-development",{"title":838,"url":795},"Wikipedia: Vibe coding",{"title":840,"url":841},"Anthropic: Claude API pricing","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fabout-claude\u002Fpricing",{"title":843,"url":844},"Anthropic: Prompt caching","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fbuild-with-claude\u002Fprompt-caching","\u002Fimages\u002Fblog\u002Fspec-driven-development-coding-agents\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fspec-driven-development-coding-agents\u002Fog.jpg",[74,75,76],"Spec-driven fejlesztés kódoló ügynököknek: a terv a kód előtt","A vibe coding valós kódbázisokon elbukik. Írj specifikációt elfogadási kritériumokkal, tervet és feladatokat, és nézd át mindezt, mielőtt az ügynök kódot ír.","Borítókép a spec-driven fejlesztéshez: folyamat a specifikációtól a tervig, a feladatokig és az ellenőrzésig, emberi jóváhagyási ponttal a kód előtt.",1792177150721]