spinny:~/writing $ less context-engineering-agents.md
12La parola del momento, nel piccolo mondo degli agenti AI, è context engineering.34Sembra l'ennesima etichetta inventata per vendere una cosa che già facevamo. In parte lo è. Però, come spesso succede, l'etichetta prende piede perché dà un nome a un dolore reale.56Il dolore è questo: i modelli non falliscono solo perché "non ragionano". Spesso falliscono perché li mandiamo al lavoro con la stanza sbagliata.78Gli diamo istruzioni vecchie. Gli nascondiamo i file importanti. Gli passiamo documenti troppo lunghi e non diciamo cosa conta. Gli facciamo vedere log senza priorità. Gli diamo dieci tool senza spiegare quando usarli. Poi ci stupiamo se l'agente si muove come una persona svegliata in un appartamento sconosciuto.910Il prompt è la frase che gli dici. Il contesto è il mondo che gli prepari intorno.1112## Dal prompt engineering al context engineering1314Il prompt engineering era spesso pensato come scrittura. Scegli le parole giuste, chiedi nel modo giusto, aggiungi esempi, specifica il formato.1516Il context engineering è più vicino all'architettura.1718Non si chiede solo "come formulo la richiesta?". Si chiede:1920- quali informazioni servono davvero?21- quali sono rumore?22- cosa va recuperato al volo?23- cosa deve restare in memoria?24- quali tool vanno esposti?25- quali istruzioni sono stabili e quali dipendono dal task?26- come faccio capire all'agente cosa è autorevole?2728È un cambio sottile ma enorme. Perché quando lavori con agenti, il contesto non è un blocco statico. Cambia a ogni step.2930L'agente apre un file, impara qualcosa, lancia un test, riceve un errore, aggiorna il piano, chiama un tool, scopre una dipendenza. A ogni giro deve decidere cosa portarsi dietro e cosa lasciare fuori.3132Questa è ingegneria.3334## Il contesto non è una discarica3536I modelli con finestre di contesto grandi ci hanno fatto venire una tentazione: buttiamoci dentro tutto.3738È comprensibile. Se ho un milione di token, perché dovrei scegliere?3940Perché anche quando puoi mettere tutto, non significa che tutto aiuti. Anzi, il rumore ha un costo. Costa token, costa attenzione, costa latenza, costa qualità. Un modello può perdersi in dettagli irrilevanti esattamente come noi quando apriamo venti tab e non ricordiamo più perché.4142Il contesto buono ha una gerarchia:43441. istruzioni di sistema e policy;452. obiettivo specifico;463. stato corrente;474. dati rilevanti;485. vincoli;496. strumenti disponibili;507. traccia delle decisioni già prese.5152Non serve trattare tutto allo stesso livello. Un comando dell'utente vale più di una nota vecchia. Un test fallito ora vale più di una preferenza estetica di tre mesi fa. Una policy di sicurezza vale più di una scorciatoia produttiva.5354Context engineering significa anche dare pesi, non solo dati.5556## Memoria: ricordare meno, ricordare meglio5758La memoria negli agenti è uno dei temi più scivolosi.5960Da utente, vuoi che l'agente ti conosca. Vuoi che ricordi il tono, il progetto, le convenzioni, le cose già decise. Da ingegnere, sai che ogni memoria persistente è anche un rischio: può essere sbagliata, vecchia, troppo personale, troppo generica, non verificabile.6162Una memoria utile dovrebbe avere almeno tre qualità:6364- provenienza: da dove arriva questa informazione?65- data: quando è stata vera?66- scopo: per quale tipo di task va usata?6768Senza queste tre cose, la memoria diventa superstizione.6970Mi piace pensare alla memoria agentica come a un quaderno di lavoro, non come a una mente magica. Ci sono appunti temporanei, decisioni confermate, preferenze di stile, vincoli tecnici, link a fonti. Alcune cose scadono. Alcune vanno riscritte. Alcune vanno eliminate perché l'agente le ha inferite male.7172Un buon sistema deve rendere questa manutenzione normale. Non eroica.7374## Retrieval e tool non sono la stessa cosa7576Quando si parla di contesto, spesso si finisce subito su RAG. Embedding, vector database, chunking, reranking.7778Tutto utile. Ma il retrieval è solo un modo per portare informazione al modello. Non è l'unico.7980Un agente può ottenere contesto leggendo file, interrogando un'API, chiamando un MCP server, aprendo un browser, eseguendo test, cercando in Slack, guardando una dashboard, chiedendo all'umano.8182La parte interessante è decidere quale via usare e quando.8384Se l'agente deve rispondere a una domanda storica, forse basta retrieval. Se deve correggere un bug, deve leggere codice reale. Se deve capire perché un deploy fallisce, deve guardare log freschi. Se deve scrivere a un cliente, deve recuperare tono, cronologia e stato del ticket. Se deve agire su produzione, deve chiedere permesso.8586Il contesto non è un database. È un flusso di lavoro.8788## L'agente bravo sa anche ignorare8990Un segno di maturità, negli agenti, sarà la capacità di dire: questa informazione non mi serve.9192Sembra una banalità, ma è difficilissima. Molti sistemi agentici accumulano. Ogni tool call aggiunge testo. Ogni errore resta nel buffer. Ogni file letto si somma alla pila. Alla fine il modello ha una cronologia lunghissima e nessuna mappa.9394Serve compressione. Serve sintesi intermedia. Serve stato strutturato.9596Non "ecco tutto quello che è successo", ma:9798- obiettivo ancora valido;99- ipotesi corrente;100- file già controllati;101- decisioni prese;102- rischi aperti;103- prossima azione.104105Questo rende l'agente meno teatrale e più utile. Non perché sembri più intelligente, ma perché lavora con una scrivania ordinata.106107## Context engineering per team, non per prompt artist108109Il motivo per cui questo tema mi interessa è che sposta la competenza dall'individuo al sistema.110111Nel prompt engineering, spesso vince chi sa parlare meglio al modello. Nel context engineering, vince il team che organizza meglio il proprio lavoro: documentazione, convenzioni, issue, log, test, ownership, naming, fonti.112113Un repository pulito diventa contesto migliore. Una issue scritta bene diventa carburante migliore. Un runbook aggiornato fa risparmiare token e ansia. Un changelog chiaro riduce allucinazioni.114115Questa è una notizia bella e un po' scomoda. Bella perché premia le buone pratiche. Scomoda perché non puoi risolvere tutto con un prompt furbo.116117Gli agenti amplificano l'igiene del sistema che trovano.118119## Come lo applicherei domani120121Se dovessi introdurre context engineering in un progetto reale, partirei da cose piccole:122123- un file di istruzioni di progetto breve e mantenuto;124- esempi buoni di output atteso;125- una lista dei tool disponibili e dei casi in cui usarli;126- decisioni architetturali scritte in modo citabile;127- issue con contesto minimo obbligatorio;128- log e test facili da recuperare;129- memoria persistente modificabile dagli umani.130131Poi misurerei una cosa semplice: quante volte l'agente deve chiedere chiarimenti o parte nella direzione sbagliata?132133Se succede spesso, non aggiungerei subito un modello più grande. Guarderei il contesto.134135## La mia lettura136137Context engineering è una parola un po' gonfia, sì. Ma il concetto è sano.138139Ci ricorda che l'intelligenza di un agente non sta solo nel modello. Sta nell'ambiente che gli prepariamo: cosa vede, cosa ricorda, cosa può fare, cosa gli è vietato fare, quali fonti riconosce come vere.140141La parte umana è questa: preparare bene il contesto è una forma di cura. È dire all'agente, ma anche al team, "non voglio che tu indovini, voglio che tu abbia ciò che serve".142143Meno magia. Più stanza pulita. Gli agenti ne hanno bisogno quanto noi.144145## Fonti146147- [LangChain Blog: The rise of context engineering](https://blog.langchain.com/the-rise-of-context-engineering/)148- [Simon Willison: Context engineering](https://simonwillison.net/2025/Jun/27/context-engineering/)149- [Model Context Protocol: Introduction](https://modelcontextprotocol.io/introduction)150- [Anthropic: Building effective agents](https://www.anthropic.com/engineering/building-effective-agents)151- [OpenAI: New tools for building agents](https://openai.com/index/new-tools-for-building-agents/)152
:Context engineering: il lavoro prima del promptlines 1-152 (END) — press q to close