Concetti di base

Avvelenamento del contesto

Scopri cos’è l’avvelenamento del contesto, come riconoscerlo in una conversazione con Bob e come riprenderti avviando una nuova task o migliorando l’igiene del contesto.

Informazioni sull’avvelenamento del contesto

L’avvelenamento del contesto si verifica quando informazioni sbagliate o irrilevanti entrano nella context window e restano nel transcript. Bob tratta queste informazioni come fatti nei prompt successivi. Le risposte deragliano. Le chiamate agli strumenti diventano imprecise. Il work goal si perde.

Questo è diverso da una singola risposta sbagliata. I dati errati restano in Messages (oppure sono arrivati tramite la lettura di un file, l’incolla di log o un commento non aggiornato). Bob li rimanda a ogni prompt finché non resetti o condensi.

Per capire come si riempie la finestra e quando conviene ripartire da zero, vedi Context window management. Per una guida pratica al reset, vedi Create a new context window.

Sintomi

Probabilmente hai a che fare con l’avvelenamento del contesto se noti uno dei seguenti segnali:

  • Output peggiore: I suggerimenti si ripetono, divagano o non corrispondono più al repository.
  • Uso errato degli strumenti: I passaggi degli strumenti nel transcript non corrispondono più a quello che hai chiesto.
  • Lavoro multi-step bloccato: I flussi lunghi con più prompt vanno in loop o si bloccano in Agent mode.
  • Correzioni che durano poco: Un prompt correttivo aiuta una volta, poi il problema torna.
  • Confusione sugli strumenti: Bob usa male gli strumenti anche se le Tool definitions non sono cambiate.

Se Messages è già grande, controlla prima il context window breakdown. L’avvelenamento e una finestra troppo piena spesso si presentano insieme.

Cause comuni

CausaCosa succede
Fatti sbagliati nel threadBob afferma qualcosa di errato. Gli scambi successivi lo trattano come verità in Messages.
Testo del repository obsoleto o sbagliatoCommenti non aggiornati, frammenti di README o doc generate fuorviano le letture dei file.
Incolla troppo grandiLog o snippet con rumore, troncamenti o caratteri nascosti finiscono in Messages.
CondensazioneBob riassume Messages più vecchi. I dettagli utili spariscono. Quello che resta può dominare il thread.
Contesto irrilevanteFile non collegati, vecchi piani o un precedente work goal esistono ancora nel transcript.

Una volta che il cattivo contesto entra in Messages, continua a restare in ogni prompt successivo. Bob non ignora in modo affidabile un testo plausibile solo perché è sbagliato.

Limiti dei prompt correttivi

Incollare Tool definitions, regole o un prompt correttivo rigido nella conversazione può mascherare il problema per uno o due scambi. La cronologia avvelenata di Messages è ancora lì. La successiva domanda fuori tema può far tornare lo stesso problema.

La soluzione affidabile è una nuova task: fai clic su + (New task) nel pannello chat. Vedi Create a new context window.

Recupero

  • Avvia una nuova task con + (New Task). Questo cancella i Messages avvelenati mantenendo Rules e i file del progetto sul disco.
  • Incolla meno. Invia solo le righe di log o gli errori di cui Bob ha bisogno. I dump grandi aumentano Messages e introducono più rischio.
  • Dividi il work goal. Usa task separate per passaggi non correlati, così un transcript obsoleto non si trascina dietro.
  • Controlla l’output degli strumenti. Se uno strumento restituisce spazzatura, fermati e resetta invece di lasciare che Bob ci costruisca sopra in Messages.
  • Fidati dei test più che del testo. Quando commenti e codice non coincidono, indirizza Bob verso controlli eseguibili. È lo stesso consiglio di context window best practices.

Prevenzione

La maggior parte della prevenzione deriva da una buona igiene del contesto:

  • Definisci il work goal prima di esplorare il repository (context window management).
  • Tieni AGENTS.md e Rules brevi e operativi.
  • Aggiungi file e log quando servono, non in anticipo.
  • Resetta quando Messages cresce senza progressi.

Per letture estese a tutto il repository, usa i subagents così la task vede i subagent results, non ogni passaggio degli strumenti in Messages.

Scopri di più

Come valuti questo argomento?