Memorijska skladišta Anthropic Managed Agents mogu da čuvaju tekst između sesija. Za aplikaciju koja dvama agentima treba da da istu pregledanu činjenicu, trajno čuvanje je tek prvi korak. Aplikacija mora da utvrdi čiji je zapis, proveri izvorne dokaze, izabere jednu sačuvanu reviziju i sačuva njene tačne bajtove pre nego što ih ijedan agent vidi. Vodič je za programere sa ovlašćenim pristupom beta verziji Managed Agents i kontrolom nad autentifikacijom aplikacije, izborom skladišta i podešavanjima agenata. Zasnovan je na aktuelnoj Anthropic dokumentaciji o memoriji i API referencama proverenim 20. oktobra 2026; BIG CHANGE nije sproveo test naloga ili modela.

Velika promena

  • Šta se promenilo: Pregledana tipizirana JSON memorija može trajno da se čuva u Managed Agents skladištu. Aplikacija proverava izvor i tačne sačuvane bajtove, zamrzava jedan privatni snimak, pa iste odobrene bajtove šalje dvema zasebnim ovlašćenim sesijama bez priključenog memorijskog skladišta.
  • Zašto je važno: Kasnija izmena skladišta ne može da promeni već pripremljene ulaze za te sesije.
  • Na šta obratiti pažnju: Tačnost izvora, ovlašćenje korisnika i kvalitet odgovora i dalje zahtevaju zasebne provere.

Pre početka

Pripremite jednu stvarnu činjenicu, sklonost ili projektno pravilo sa originalom koji smete da koristite, stabilnim ID-jem izvora i revizijom i vlasnikom koji odobrava čuvanje i otkrivanje obema ulogama agenata. Pre pregleda odredite prikladan rok važenja provere za taj zapis. Potvrdite pristup Managed Agents beta verziji, privatni API ključ, ovlašćeni radni prostor, dva podešena ID-ja agenata, okruženje i dozvoljeni model u nalogu. Proverite trenutnu upotrebu i cene pre odobravanja četiri ograničene potrošačke sesije iz postupka. Ne stavljajte ključ u upite ili potvrde.

Aplikaciji treba preslikavanje autentifikovanog subjekta u obim pristupa. U pouzdanom stanju aplikacije povežite subjekta sa odobrenim ownerScopeId, ID-jem radnog prostora, ID-jem skladišta i dva dozvoljena ID-ja agenata. Privatnim korisnicima ili projektima dajte odvojena skladišta kada se pravila pristupa razlikuju. API ključ radnog prostora ne autentifikuje krajnjeg korisnika, putanja nije granica između zakupaca, a upit ne može da ukloni alat ili akreditiv. Potvrdite da oba potrošačka podešavanja nemaju priključeno skladište niti konektor, akreditiv okruženja ili put kroz alat do promenljivog skladišta. Ako tu granicu ne možete da utvrdite, stanite pre slanja zapisa.

1. Odobrite zapis prema izvoru

Koristite ovaj strukturni šablon, zamenjujući svaku vrednost u šiljastim zagradama stvarnim odobrenim dokazom. To nije primer činjenice ili tvrđenje o rezultatu. Pre odobrenja serijalizujte popunjen objekat u jedan tačan UTF-8 JSON tekst. Validator treba da prihvati tačno ova polja i tipove, odbije nepoznata polja, zahteva tekstualne vrednosti koje nisu prazne niti sastavljene samo od razmaka i ispravne UTC vremenske oznake, ograniči kind na fact, preference ili project_rule, a status na active, disputed ili superseded. Samo zapisi sa statusom active smeju da se ubace. Odobrena tvrdnja mora da odgovara navedenom originalu, uključujući datum početka važenja i obim.

JSON
{
  "schemaVersion": "memory-record/v1",
  "recordId": "<opaque stable record ID>",
  "ownerScopeId": "<trusted mapped scope ID>",
  "kind": "<fact | preference | project_rule>",
  "claim": "<precise source-supported claim>",
  "sourceId": "<private original-source ID>",
  "sourceRevision": "<original revision or exact source hash>",
  "sourceQuoteOrPointer": "<minimal permitted quote or stable pointer>",
  "validFrom": "<UTC timestamp>",
  "checkedAt": "<UTC timestamp>",
  "status": "active",
  "reviewerId": "<approved human reviewer ID>",
  "reviewedAt": "<UTC timestamp>"
}

Privatna potvrda odobrenja aplikacije mora da utvrdi stvarnog odobravaoca, dozvolu vlasnika, originalni izvor i reviziju, obim i dozvoljene agente, pravilo svežine i SHA-256 ovih tačnih UTF-8 JSON bajtova. Ona beleži ljudsku odluku o stvarnoj tvrdnji. Tekstualna vrednost reviewerId u zapisu nije autentifikacija. Ne čuvajte zapis sa nerešenom protivrečnošću ili nedostajućom dozvolom. Anthropic čuva tekst; ne potvrđuje ovu šemu niti istinitost tvrdnje.

2. Sačuvajte ga i ponovo pročitajte

Napravite ili izaberite usko memorijsko skladište u ovlašćenom radnom prostoru i zabeležite njegov stvarni memstore_... ID. Koristite neosetljivu putanju, poput /records/{opaque-record-id}.json. Pre zahteva zabeležite izvršioca, UTC vreme, reviziju izvora, heš odobrenih bajtova, skladište i putanju i stanje pending. Za direktne pozive memorijskom skladištu koristite agent-memory-2026-07-22; pozivi sesijama koriste managed-agents-2026-04-01. Anthropic navodi da kombinovanje ovih beta zaglavlja u zahtevu za skladište vraća HTTP 400. Referenca kreiranja i priručnik za memoriju pokazuju ovaj SDK oblik; proverite instalirani SDK prema aktuelnoj referenci:

Python
mem = client.beta.memory_stores.memories.create(
    store.id,
    path="/records/<opaque-record-id>.json",
    content=approved_json_text,
)

Kreiranje ne prepisuje postojeću putanju. Sačuvajte vraćeni mem_... ID, pa izlistajte /records/ u ograničenom skladištu, koristeći svaki next_page kao sledeći page. Osnovna lista podrazumevano izostavlja sadržaj. Preuzmite izabranu memoriju po ID-ju radi celog teksta; uporedite ID skladišta, ID memorije, putanju, sadržaj i content_sha256 sa odobrenim bajtovima. Zabeležite odgovor i neposredno ponovno čitanje u dnevnik i registar. Sam odgovor kreiranja nije provera završetka. Ako je odgovor neizvestan, proverite tačnu putanju i neposredni zapis pre zaključka; samo odsustvo pogotka u pretrazi ne opravdava ponavljanje kreiranja.

3. Zamrznite izabranu reviziju

Za svako kasnije izvršavanje autentifikujte pozivaoca i utvrdite obim, skladište i ID izabranog zapisa iz pouzdanog registra. Ako treba otkrivanje, prođite sve stranice ograničenog prefiksa, pa neposredno preuzmite izabrani mem_.... Izračunajte SHA-256 nad UTF-8 kodiranjem vraćenog sadržaja, uporedite ga sa vrednošću content_sha256 dobavljača i ljudski odobrenim tačnim hešom bajtova, pa ponovo validirajte JSON. Proverite ID zapisa, obim vlasnika, reviziju izvora, status active, aktuelnost izvora i unapred određeni rok svežine. Ako ijedna provera ne uspe, ne šaljite ništa.

Jednom upišite tačne preuzete bajtove u privatno skladište adresirano njihovim hešom, uz isključivo kreiranje, poput Python poziva open(path, "xb"). Odmah ponovo pročitajte i heširajte datoteku, kao i pre svakog slanja. Nikada ne prepisujte postojeći snimak. Delimična datoteka ili postojeća datoteka sa drugim bajtovima na toj adresi zahtevaju obustavu i usaglašavanje. Sačuvajte originalno odobrenje, ID skladišta, ID memorije, heš dobavljača, heš snimka i odluku o obimu u privatnoj potvrdi preuzimanja. Ovaj snimak koji se jednom upisuje jeste dizajn aplikacije, a ne Anthropic priključenje fiksirano na verziju.

4. Dajte iste bajtove dvema novim sesijama

Napravite svežu sesiju za agenta A sa stvarnim ovlašćenim ID-jevima agenta i okruženja i bez unosa memorijskog skladišta u resources. Potvrdite da resursi vraćene sesije i efektivni alati i akreditivi agenta ne ostavljaju drugi put do skladišta. Anthropic vodič za sesije odvojeno dokumentuje kreiranje i slanje user.message:

Python
session = client.beta.sessions.create(
    agent=approved_agent_id,
    environment_id=approved_environment_id,
)
client.beta.sessions.events.send(
    session.id,
    events=[{"type": "user.message", "content": [{"type": "text", "text": message_text}]}],
)

Pre events.send ponovo pročitajte i heširajte privatni snimak. Napravite message_text deterministički od jasne oznake „pregledani podaci“, identifikatora zapisa, izvora i pregleda, neizmenjenog JSON teksta i njegovog SHA-256, pa uskog pitanja na koje originalni izvor može da odgovori. Prikazana polja su format poruke aplikacije, a ne polja odgovora dobavljača. Pre slanja zabeležite cele UTF-8 bajtove poruke i heš, heš izabranog snimka, ovlašćeni ID agenta, ID sesije i stanje slanja. Sačuvajte ishod i stvarni ID poslatog događaja ili ponovno čitanje liste događaja kada je dostupno. Nepoznat ishod slanja zahteva čitanje događaja, ne slepo ponovno slanje.

Napravite drugu svežu sesiju za agenta B sa posebno odobrenim ID-jem i istim odsustvom pristupa skladištu. Ponovo pročitajte isti jednokratno upisan snimak, proverite heš bajtova, napravite i zabeležite celu poruku za B, pa pošaljite. Pitanja ili metapodaci primaoca mogu da se razlikuju; proverite da su ugrađeni JSON bajtovi i odobreni heš zapisa istovetni. Proverite svaki odgovor i događaje alata prema originalu. Uverljiv odgovor ili citat ne dokazuje unutrašnje oslanjanje modela na ubačeni tekst; potvrde poruka i događaja dobavljača utvrđuju šta je aplikacija poslala. Ako bilo koja sesija ima živo priključenje ili drugi put do skladišta, ne šaljite joj zapis.

5. Ažurirajte tek posle novog pregleda izvora

Kad se original promeni, neposredno preuzmite trenutnu memoriju i uporedite stare i nove dokaze sa vlasnikom. Neka čovek odobri tačne zamenske JSON bajtove sa stabilnim ID-jem zapisa, ispravljenom tvrdnjom ili pokazivačem izvora, novom revizijom izvora i vremenima provere i pregleda. Sačuvajte staru potvrdu i heš. Zabeležite mem_... ID, trenutni neposredno pročitani content_sha256, planirani zamenski heš, izvršioca, odobrenje i stanje na čekanju. Dokumentovano uslovno ažuriranje izgleda ovako:

Python
client.beta.memory_stores.memories.update(
    memory_id=memory_id,
    memory_store_id=store_id,
    content=approved_replacement_json_text,
    precondition={"type": "content_sha256", "content_sha256": fresh_old_hash},
)

Dobavljač hešira tačan UTF-8 sadržaj bez normalizacije. Neslaganje vraća HTTP 409 memory_precondition_failed_error. Na taj odgovor ili neizvestan mrežni rezultat ponovo preuzmite živu memoriju i pregledajte istoriju verzija po potrebi. Uporedite sukobljene revizije izvora i tražite od vlasnika da spoji, odbije ili odobri novu tačnu zamenu; nikada ne ponavljajte naslepo zastareli upis. Posle uspeha neposredno preuzimanje mora da potvrdi putanju, ceo zamenski tekst, heš i ID verzije memorije pre nego što dnevnik pređe u confirmed.

Zamrznite novi odobreni snimak iz te potvrđene revizije. Pokrenite nove ovlašćene sesije A i B bez priključenog skladišta i ponovite oba slanja i provere izvora. Ne menjajte stare snimke i ne tvrdite da se već poslate poruke same ažuriraju. Označite prethodni snimak kao nepodoban za buduće ubacivanje. Ako vlasnik povuče zapis, zaustavite nova slanja i primenite njegovu politiku čuvanja i uklanjanja podataka: brisanje trenutne memorije ne uklanja nužno zadržane verzije. Arhiviranje ili brisanje celog skladišta je zasebna odluka.

Šta se smatra završenim

Privatne potvrde treba da povežu originalnu dozvolu i reviziju izvora sa tačnim odobrenim JSON hešom; stvarni identitet radnog prostora, skladišta, putanje i mem_... i neposredno čitanje posle kreiranja; jedan nepromenljiv snimak; dva različita ovlašćena ID-ja sesija bez priključenja sa hešovima poslatih poruka i odgovorima proverenim prema izvoru; odobreno uslovno ažuriranje sa novim neposrednim čitanjem i proverom novih sesija. Ako je ijedna veza nepoznata, označite celu vežbu kao nedovršenu i sačuvajte tačan razlog. Ako je izvršite, zabeležite stvarnu upotrebu sesija i alata i trošak konkretnog naloga; ovaj dokumentarni vodič nije merio uštede ili učinak modela.

Za srodan, ali drugačiji posao, pregled jednog Dream izlaza za kasniju sesiju obrađuje generisani predlog skladišta. Ovdašnji postupak počinje izvornim zapisom koji je vlasnik odobrio i fiksira šta tačno dva potrošača dobijaju.