• Messaggi
  • Agenti gestiti
  • Amministrazione
Search...
⌘K
Primi passi
PanoramicaGuida rapidaPrototipazione nella Console
Definire il tuo agente
Configurazione dell'agenteStrumentiConnettore MCPCriteri di autorizzazioneSkill dell'agente
Configurare l'ambiente dell'agente
Configurazione dell'ambiente cloudRiferimento sandbox cloud
Delegare il lavoro al tuo agente
Avviare una sessioneOperazioni di sessioneFlusso di eventi della sessioneIscriversi ai webhookDefinire i risultatiAutenticazione con vault
Gestire il contesto dell'agente
Accedere a GitHubAllegare e scaricare file
Archivi di memoriaDreams
Orchestrazione avanzata
Sessioni multi-agenteDistribuzioni pianificate
Riferimento
Riferimento agenti gestiti
Lavorare con i file
API FilesSupporto PDFImmagini e visione
Skill
PanoramicaBest practiceSkill per le aziende
MCP
Server MCP remoti
Claude su piattaforme cloud
Claude Platform su AWS
Log in
Dreams
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...

Solutions

  • AI agents
  • Code modernization
  • Coding
  • Customer support
  • Education
  • Financial services
  • Government
  • Life sciences

Partners

  • Amazon Bedrock
  • Google Cloud's Vertex AI

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Company

  • Anthropic
  • Careers
  • Economic Futures
  • Research
  • News
  • Responsible Scaling Policy
  • Security and compliance
  • Transparency

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Help and security

  • Availability
  • Status
  • Support
  • Discord

Terms and policies

  • Privacy policy
  • Responsible disclosure policy
  • Terms of service: Commercial
  • Terms of service: Consumer
  • Usage policy
Agenti gestiti/Creare una memoria persistente

Dreams

Consenti a Claude di riflettere sulle sessioni passate per curare la memoria di un agente e far emergere nuove intuizioni.

Was this page helpful?

  • Come funziona
  • Creare un dream
  • Guidare con le istruzioni
  • Monitorare l'avanzamento
  • Ciclo di vita
  • Osservare l'esecuzione della pipeline
  • Usare l'output
  • Annullare un dream
  • Archiviare un dream
  • Elencare i dream
  • Errori
  • Fatturazione
  • Limiti

Il dreaming è una funzionalità in anteprima di ricerca. Richiedi l'accesso per provarla.

Gli agenti scrivono nei loro memory store (archivi di memoria) mentre lavorano, ma queste scritture sono locali e incrementali: nel corso di molte sessioni un memory store accumula duplicati, contraddizioni e voci obsolete.

I dream (sogni) consentono a Claude di fare pulizia. Un dream legge un memory store esistente insieme alle trascrizioni delle sessioni passate, quindi produce un nuovo memory store riorganizzato: i duplicati vengono uniti, le voci obsolete o contraddette vengono sostituite con il valore più recente e nuove intuizioni vengono fatte emergere.

Lo store di input non viene mai modificato, quindi puoi esaminare l'output e scartarlo se il risultato non ti soddisfa.

Tutte le richieste alla Managed Agents API richiedono l'header beta managed-agents-2026-04-01. I dream richiedono inoltre l'header beta dreaming-2026-04-21. L'SDK li imposta automaticamente.

Come funziona

Un dream è un job asincrono che riceve:

  • un memory store preesistente: lo store che Claude verifica, deduplica e riorganizza, e
  • da 1 a 100 sessioni: trascrizioni passate che Claude analizza alla ricerca di pattern e intuizioni da integrare nell'output.

Il dream produce un altro memory store di output, separato dall'input. L'ID dello store di output compare in outputs[] del dream una volta che passa allo stato running.

Creare un dream

Gli input del dreaming includono il memory store preesistente e un array di sessioni. Il modello selezionato eseguirà la pipeline di dreaming; durante l'anteprima di ricerca sono supportati claude-opus-4-8, claude-opus-4-7 e claude-sonnet-4-6. Puoi opzionalmente passare instructions per guidare il processo di dreaming; consulta Guidare con le istruzioni.

La risposta è la risorsa dream completa con status: "pending":

{
  "type": "dream",
  "id": "drm_01AbCDefGhIjKlMnOpQrStUv",
  "status": "pending",
  "inputs": [
    { "type": "memory_store", "memory_store_id": "memstore_01Hx..." },
    { "type": "sessions", "session_ids": ["sesn_01...", "sesn_02..."] }
  ],
  "outputs": [],
  "model": { "id": "claude-opus-4-8" },
  "instructions": "Focus on coding-style preferences; ignore one-off debugging notes.",
  "session_id": null,
  "created_at": "2026-04-29T17:04:10Z",
  "ended_at": null,
  "archived_at": null,
  "usage": {
    "input_tokens": 0,
    "output_tokens": 0,
    "cache_creation_input_tokens": 0,
    "cache_read_input_tokens": 0
  },
  "error": null
}

Se hai solo trascrizioni di sessioni e nessuno store esistente, crea prima un memory store vuoto e passalo come input memory_store.

Guidare con le istruzioni

Il campo opzionale instructions guida ciò che la pipeline di dreaming sintetizza. Viene applicato in tutta la pipeline: cosa leggere con attenzione, cosa unire o eliminare e come strutturare lo store di output.

Usa instructions per indicazioni di sintesi di alto livello come aree di interesse ("concentrati sulle preferenze di stile di codifica"), contenuti da preservare invariati o convenzioni di output che vuoi applicare all'intero store. La pipeline è un passaggio di sintesi sugli input, non un editor applicato al testo dello store, quindi direttive imperative che mirano a righe specifiche ("cambia la frase X in Y", "correggi il conteggio nella sezione Z") generalmente non producono alcuna modifica. Per apportare modifiche mirate a singole memorie, usa la Memory Stores API direttamente sullo store di output.

Monitorare l'avanzamento

I dream vengono eseguiti in modo asincrono e richiedono in genere da alcuni minuti a decine di minuti a seconda della dimensione dell'input. Esegui il polling del dream tramite ID per verificarne lo stato:

Ciclo di vita

statusSignificato
pendingDream creato con successo e in coda.
runningLa pipeline è in elaborazione. usage si aggiorna man mano che il lavoro procede.
completedCompletato con successo. Il valore in outputs[] è il nuovo memory store.
failedL'esecuzione del dreaming è terminata con un errore. Il memory store di output viene lasciato così com'è, con tutto ciò che è stato scritto prima dell'errore.
canceledEsecuzione del dreaming annullata. Il memory store di output viene lasciato così com'è.

Osservare l'esecuzione della pipeline

Una volta che un dream è running, il suo campo session_id punta alla sessione sottostante che esegue la pipeline. Puoi eseguire lo streaming degli eventi di quella sessione per osservare in tempo reale cosa il dream sta leggendo e scrivendo. La sessione viene archiviata (non eliminata) quando il dream raggiunge uno stato terminale, quindi la trascrizione rimane disponibile in seguito.

Usare l'output

Quando status raggiunge completed, la voce memory_store in outputs[] fa riferimento a uno store completamente popolato. È un memory store ordinario nel tuo workspace. Esaminalo con la Memory Stores API o nella Console, quindi:

  • Sfruttalo: collegalo alle sessioni future come risorsa memory_store al posto del (o insieme al) memory store di input, oppure
  • Scartalo: eliminalo o archivialo.

Il dream stesso non elimina né modifica mai i suoi input. In caso di failed o canceled, lo store di output persiste con contenuti parziali così puoi ispezionare cosa è stato prodotto prima dell'interruzione; ripuliscilo tramite la Memory Stores API se non ti serve.

Mentre un dream è pending o running, l'archiviazione o l'eliminazione del suo store di output viene rifiutata con un errore 400. L'archiviazione o l'eliminazione di uno store o di una sessione di input durante l'esecuzione causerà il fallimento del dream con input_memory_store_unavailable o input_session_unavailable.

Annullare un dream

L'annullamento sposta immediatamente un dream pending o running allo stato canceled. Annullare un dream già canceled è un'operazione idempotente senza effetto; annullare un dream completed o failed restituisce 400.

Dopo l'annullamento, i campi usage del dream potrebbero continuare ad aggiornarsi per alcuni secondi mentre il lavoro in corso si conclude. Esegui il polling del dream finché usage non si stabilizza se hai bisogno del conteggio finale.

Archiviare un dream

L'archiviazione imposta archived_at su un dream che ha raggiunto uno stato terminale (completed, failed o canceled); status rimane invariato. I dream archiviati sono esclusi dalle risposte di elenco predefinite ma rimangono leggibili tramite ID. Archiviare un dream già archiviato è un'operazione idempotente senza effetto. Archiviare un dream pending o running restituisce 400; annullalo prima. Non esiste un'operazione di ripristino dall'archivio.

L'archiviazione di un dream non tocca il suo memory store di output; gestiscilo separatamente tramite la Memory Stores API.

Elencare i dream

Restituisce tutti i dream non archiviati nel workspace, dal più recente al meno recente. Usa limit (predefinito 20, massimo 100) e il cursore page per la paginazione. Passa include_archived=true per includere i dream archiviati.

Errori

Di seguito è riportato un elenco non esaustivo dei possibili errori di dreaming.

error.typeQuando
timeoutLa pipeline ha superato il suo budget di tempo di esecuzione.
internal_errorErrore della pipeline non classificato.
memory_store_org_limit_exceededLa tua organizzazione ha raggiunto il limite di memory store mentre la pipeline stava allocando lo storage di lavoro.
input_memory_store_too_largeIl memory store di input supera il limite di dimensione della pipeline.
input_memory_store_unavailableIl memory store di input è stato archiviato o eliminato dopo la creazione del dream.
input_session_unavailableUna sessione di input è stata archiviata o eliminata dopo la creazione del dream.

Fatturazione

I dream vengono fatturati alle tariffe standard dei token API per il modello selezionato; usage sulla risorsa riporta i totali esatti. Il costo scala in modo approssimativamente lineare con il numero e la lunghezza delle sessioni di input. Inizia con un piccolo batch di sessioni e aumenta gradualmente una volta soddisfatto della qualità della curazione.

Limiti

LimiteValore
Sessioni per dream100
Lunghezza di instructions4.096 caratteri
Modelli supportaticlaude-opus-4-8, claude-opus-4-7, claude-sonnet-4-6

I limiti di velocità predefiniti si applicano alla creazione di dream mentre questa funzionalità è in beta. Contatta il supporto se hai bisogno di limiti più elevati.

dream = client.beta.dreams.create(
    inputs=[
        {"type": "memory_store", "memory_store_id": store_id},
        {"type": "sessions", "session_ids": [session_a, session_b]},
    ],
    model="claude-opus-4-8",
    instructions="Focus on coding-style preferences; ignore one-off debugging notes.",
)
print(dream.id)  # drm_01...
while dream.status in ("pending", "running"):
    time.sleep(10)
    dream = client.beta.dreams.retrieve(dream.id)
    print(f"status={dream.status} input_tokens={dream.usage.input_tokens}")
# After the dream ends, the output holds the rebuilt memory store
output_store_id = next(
    output.memory_store_id for output in dream.outputs if output.type == "memory_store"
)

session = client.beta.sessions.create(
    agent=agent_id,
    environment_id=environment_id,
    resources=[
        {"type": "memory_store", "memory_store_id": output_store_id},
    ],
)
client.beta.dreams.cancel(dream.id)
client.beta.dreams.archive(dream.id)
for listed_dream in client.beta.dreams.list(limit=20):
    print(listed_dream.id, listed_dream.status)