U prošlom delu obradili smo kratkoročnu memoriju Claude Code-a, a u komentarima vas nekoliko pita: da li je kod Codex-a isto? Da li i on čuva istoriju razgovora u jednom nizu i, kad se skoro napuni, sabija je u jednu sumarnu belešku?
Odmah ti odgovaram — nije isto.
Razlika je velika.
Proveo sam jedan dan, detaljno sam proučio GitHub source code Codex-a, zvanični OpenAI blog, kao i API dokumentaciju, i mogu samopouzdano, slobodno i otvoreno da ti pomognem da razumeš ove tri stvari:
- Po čemu se kratkoročna memorija Codex-a razlikuje od one u Claude Code-u?
- Kad se context window skoro napuni, kako se sabija — da li se i dalje generiše sumarna beleška?
- Posle kompresije, koje informacije prežive, a koje se odbace?

Danas za 3 minuta da ti jasno objasnim kako je implementirana kratkoročna memorija Codex-a.

Veži pojas, polazimo!
Prvo, prva stvar — kako tačno izgleda kratkoročna memorija.
U prošlom delu rekao sam da Claude Code čuva istoriju razgovora u jednom nizu, gde svaka poruka nosi oznaku uloge: user, assistant ili tool. Struktura je vrlo prosta.
Codex je drugačiji. On koristi OpenAI-jev sopstveni Responses API i ne čuva običnu listu poruka, već mešovitu listu — unutra ima svega: običnih poruka, procesa rezonovanja modela, tool call-ova, rezultata koje su vratili alati, pa čak i jednog sabijenog stanja koje se zove compaction.
Uz to, Codex system prompt i definicije alata prosleđuje modelu odvojeno, ne meša ih sa istorijom razgovora.
Ali u jednom je isto kao Claude Code: veliki model sam po sebi nema memoriju — bilo da je Fable 5 ili GPT-5.6, svaki poziv je čist list.
Zato Codex sam održava tu listu i pri svakom pozivu modela ponovo šalje celu istoriju razgovora. A Codex ima jednu malu finesu: početak svakog novog zahteva je potpuno isti kao u prethodnom zahtevu. Tako OpenAI-jev server prepozna „ovo sam već obračunao" i samo to preskoči, bez ponovnog naplaćivanja. To je Prompt Caching — prosto rečeno, ušteda novca.
Mogu samo da kažem — potrudili su se, OpenAI.
A onda ti, pametni, sigurno pomisliš. Lista postaje sve duža, a context window ima gornju granicu, šta kad se napuni do vrha?
Kompresijom. Ali kompresija kod Codex-a je potpuno drugačija od one u Claude Code-u.
Claude Code podigne jedan sub-Agent i pusti veliki model da generiše jednu sumarnu belešku u tekstu koji ti razumeš.
Codex ne.
Codex pošalje trenutni, kompletan kontekst OpenAI-jevom serveru. Kad server završi kompresiju, ne vraća tekst, već jedan šifrovani niz podataka.
Ne možeš ni da ga pročitaš, ni da izmeniš; jedino ga možeš ubaciti nazad, takav kakav jeste, u sledeći zahtev. Model ga razume, ali ti ne.
Samo kad se koristi model koji nije zvanični OpenAI model, Codex prelazi na lokalnu obradu: pozove veliki model da generiše tekstualnu sumarnu belešku, zadrži nedavne korisničke poruke od oko dvadeset hiljada token-a, dok se tool call-ovi i stari odgovori modela prosto odbacuju.
A onda ti, pametni, sigurno opet pitaš: posle kompresije, koje informacije prežive?
Tvoja konfiguracija projekta, system prompt i definicije alata — to se posle kompresije ponovo ubacuje i ne gubi se.
Ali sadržaj fajlova koje si ranije čitao posle kompresije može da nestane. Zato ćeš primetiti da Codex posle kompresije često ponovo pretražuje i ponovo čita iste fajlove.
U GitHub source code-u Codex-a čak stoji jedno upozorenje: višestruka kompresija može da smanji tačnost. Zato ti je preporuka — jedna nit neka radi samo jednu stvar, i ako možeš da otvoriš novu nit, otvori je.
Na kraju, da rezimiram.
Kratkoročna memorija Codex-a je kao i kod Claude Code-a — realizuje se tako što se pri svakom pozivu ponovo šalje istorija razgovora. Ali način kompresije je drugačiji: Claude Code generiše sumarnu belešku u običnom tekstu, Codex ide na šifrovanu kompresiju. Još jedno: preporuka je da jedna nit radi jednu stvar, nemoj da ista nit i popravlja bug-ove, i piše dokumentaciju, i pokreće testove.
Da li si savladao ovu temu? Za još hardcore AI znanja, lajkuj i prati
