spinny:~/writing $ less agentic-infrastructure-stack.md
12Abbiamo parlato spesso di framework agentici. LangGraph, CrewAI, AutoGen, SDK vari, loop, tool calling, memory, planner, critic, supervisor. Tutte parole utili, per carità. Però più guardo gli agenti usati davvero, più mi sembra che la parte interessante si sia spostata sotto il livello del framework.34La domanda non è più solo: quale libreria uso per far ragionare un modello a step?56La domanda vera è: dove vive questo agente quando smette di essere una demo?78Perché un agente serio non è una funzione che chiama un modello e restituisce testo. È un piccolo sistema distribuito. Deve leggere contesto, usare strumenti, eseguire codice, toccare file, ricordare decisioni, chiedere permessi, fallire bene, ripartire, lasciare log, non bruciare il budget e non trasformarsi in una ruspa dentro il repository di produzione.910Il framework è il volante. L'infrastruttura è la strada, i freni, il garage, l'assicurazione e la persona che sa dove sono le chiavi.1112## Perché adesso se ne parla tanto1314Nel 2023 e 2024 il discorso era molto centrato sul modello. Quale LLM? Quanto contesto? Quanto costa? Quanto è bravo a programmare?1516Nel 2025 e 2026 la conversazione si è spostata. I modelli sono abbastanza bravi da fare lavoro reale, ma proprio per questo diventano visibili i pezzi noiosi: runtime, sicurezza, connettori, identità, osservabilità, code execution, deployment, rollback.1718È il passaggio naturale da magia a ingegneria.1920Quando un agente deve solo generare una risposta, basta una chat. Quando deve aprire una pull request, interrogare un database, chiamare un CRM, avviare un job, navigare un sito, leggere Slack, compilare codice e aggiornare un documento, serve un sistema operativo intorno.2122Non in senso letterale. In senso organizzativo.2324## Il primo pezzo: un runtime dove l'agente può durare2526Un agente lavora spesso a step. Guarda lo stato, sceglie un'azione, usa un tool, osserva il risultato, aggiorna il piano, ripete.2728Se questo ciclo vive dentro una singola request HTTP, hai subito un problema. Alcune azioni sono lente. Alcune aspettano input umano. Alcune falliscono e vanno ritentate. Alcune devono sopravvivere a un deploy o a un timeout.2930Qui entrano in gioco workflow durevoli, code, job background e state machine. Non sono glamour, ma sono la differenza tra un agente che sembra intelligente in demo e uno che puoi lasciare lavorare mentre vai a prendere un caffè.3132Per me il runtime agentico deve rispondere a domande molto concrete:3334- dove salvo lo stato tra uno step e l'altro?35- cosa succede se il processo muore a metà?36- posso mettere in pausa e chiedere approvazione?37- posso riprodurre una run per capire perché ha fatto quella scelta?38- posso limitare durata, memoria, strumenti e costo?3940Vercel sta spingendo molto su questo fronte con AI SDK, funzioni, workflow e strumenti per costruire agenti dentro applicazioni web. Ma il punto non è solo Vercel. Il punto è che l'agente ha bisogno di una casa operativa, non di un singolo endpoint.4142## Il secondo pezzo: sandbox, perché l'agente deve poter sporcare senza rompere4344Appena un agente scrive codice o esegue comandi, serve una sandbox.4546Sembra una parola tecnica, ma l'idea è domestica: gli dai un banco da lavoro. Può aprire file, installare dipendenze, lanciare test, fare esperimenti, generare output. Se sbaglia, hai contenuto il danno. Se funziona, promuovi il risultato.4748Una sandbox agentica dovrebbe avere alcune proprietà:4950- filesystem isolato;51- limiti di CPU, memoria e tempo;52- rete controllata;53- segreti montati solo quando servono;54- log completi;55- possibilità di esportare artefatti;56- reset pulito tra run, quando necessario.5758Vercel Sandbox va esattamente in questa direzione: ambienti isolati per eseguire codice, installare dipendenze, lavorare con file e produrre artefatti senza far girare tutto nel runtime principale dell'applicazione.5960Questa cosa è più importante di quanto sembri. Molti prototipi agentici saltano direttamente dal modello al sistema reale. Il modello può chiamare tool. I tool possono fare cose. Sembra tutto elegante fino al primo comando sbagliato, alla prima dipendenza installata nel posto sbagliato, al primo token finito in un log.6162La sandbox è il modo adulto di dire: prova pure, ma qui dentro.6364## Il terzo pezzo: MCP e il problema dei connettori6566Il Model Context Protocol è diventato una delle parti più interessanti dell'ecosistema perché prova a standardizzare una cosa che altrimenti diventa rapidamente ingestibile: come un modello scopre e usa strumenti esterni.6768Senza uno standard, ogni integrazione è una piccola isola. Un connettore per GitHub fatto in un modo, uno per Slack fatto in un altro, uno per database con una semantica diversa, uno per browser automation che non somiglia a niente.6970MCP propone un linguaggio comune tra client e server: strumenti, risorse, prompt, autorizzazioni, trasporto, discovery. Non risolve magicamente governance e sicurezza, ma dà una grammatica.7172E la grammatica conta. Quando un agente può collegarsi a molti strumenti, il problema non è solo "può farlo?". Il problema è "capisce cosa può fare, con quali limiti, per conto di chi, e lasciando quale traccia?".7374Per me MCP non è hype perché "fa tool calling". Quello lo facevamo già. È hype perché sposta il baricentro dall'integrazione singola al catalogo operativo di strumenti.7576In una buona architettura agentica, MCP diventa una specie di pannello patch:7778- GitHub per codice e issue;79- Slack per contesto conversazionale;80- Linear o Jira per lavoro pianificato;81- database in sola lettura per analytics;82- browser o scraper controllato per siti esterni;83- storage documentale;84- ambienti di esecuzione isolati;85- sistemi interni esposti con permessi stretti.8687La parte delicata è che un catalogo di tool senza politica è solo un modo più elegante per creare caos.8889## Il quarto pezzo: identità e permessi9091Questa è la zona in cui tante demo fanno finta di niente.9293Un agente agisce per conto di qualcuno. Quindi deve essere chiaro chi è il soggetto dell'azione.9495Sta usando i permessi dell'utente? Di un service account? Di un workspace? Ha accesso temporaneo o permanente? Può leggere tutto o solo alcune risorse? Può scrivere? Può cancellare? Può mandare messaggi a persone reali?9697Se non rispondi bene a queste domande, prima o poi costruisci un assistente con le chiavi di casa e nessuna memoria di chi gliele ha date.9899La regola pratica che mi piace è questa: l'agente deve poter fare meno dell'umano, non più dell'umano. E quando deve fare qualcosa di più rischioso, deve fermarsi e chiedere.100101Questo significa OAuth, token scoped, secret management, audit log, policy per tool, allowlist, approval step. Roba poco romantica. Roba necessaria.102103## Il quinto pezzo: memoria e contesto, ma senza accumulare spazzatura104105Gli agenti hanno bisogno di memoria, ma la memoria è pericolosa quando diventa una soffitta.106107Ci sono almeno tre tipi di memoria:108109- memoria di run: cosa è successo in questa esecuzione;110- memoria di progetto: convenzioni, decisioni, vincoli;111- memoria personale o di team: preferenze, tono, rituali, processi.112113Mettere tutto nel prompt è la scorciatoia. Funziona fino a quando non funziona più. La memoria utile va curata: indicizzata, aggiornata, scaduta, verificata, resa citabile.114115Un agente che ricorda male è peggio di un agente che non ricorda. Perché parla con sicurezza.116117Quindi l'infrastruttura deve prevedere retrieval, file di istruzioni, knowledge base, embedding quando serve, ma anche pulizia. Serve una cultura della memoria: cosa entra, chi lo approva, quando decade, come lo correggo.118119## Il sesto pezzo: osservabilità, eval e replay120121Se un agente sbaglia, il log "ha chiamato il modello" non basta.122123Vuoi vedere il percorso. Quale contesto ha ricevuto? Quali tool erano disponibili? Quale tool ha scelto? Con quali argomenti? Che risposta ha ottenuto? Quanto è costato? Dove si è bloccato? L'umano ha approvato qualcosa? L'errore è del modello, del tool, del prompt, del dato o del permesso?124125Qui gli agenti somigliano più a sistemi distribuiti che a chatbot.126127Servono trace leggibili, non solo log testuali. Serve poter rigiocare una run. Serve confrontare due versioni dello stesso agente su task noti. Serve misurare regressioni: non solo "risponde meglio", ma "chiude il ticket giusto senza toccare file non richiesti".128129Gli eval agentici sono più difficili degli eval testuali perché includono azioni. Non basta confrontare una stringa attesa. Devi guardare sequenze, side effect, qualità dell'artefatto, tempo, costo, numero di interventi umani.130131La cosa buffa è che torniamo sempre lì: ingegneria del software. Test, ambienti, trace, rollback. Solo che il codice adesso decide anche cosa fare dopo.132133## Il settimo pezzo: interfacce umane134135L'agente non deve vivere solo in una chat.136137Alcuni agenti hanno bisogno di una board. Altri di una pagina con stato e log. Altri di un bottone "approva". Altri di commenti inline. Altri ancora di una CLI.138139La UI cambia il comportamento. Se l'unico modo per controllare un agente è scrivere un messaggio lungo, l'utente gli darà istruzioni vaghe. Se invece vede piano, diff, fonti, rischi e prossima azione, può intervenire in modo preciso.140141Un'infrastruttura agentica decente include superfici di controllo:142143- stato corrente;144- piano modificabile;145- artefatti prodotti;146- diff;147- richieste di approvazione;148- cronologia;149- pulsante stop;150- pulsante retry;151- permessi visibili.152153Sembra banale, ma non lo è. La differenza tra "AI inquietante" e "assistente affidabile" spesso è solo che la seconda ti fa vedere dove ha le mani.154155## La stack mentale156157Se dovessi disegnarla oggi, la stack agentica minima sarebbe questa:1581591. Modello: ragionamento, generazione, tool calling, multimodale se serve.1602. Orchestrazione: loop, step, planner, policy, human-in-the-loop.1613. Runtime durevole: workflow, queue, retry, pause, resume.1624. Sandbox: code execution, file system isolato, limiti, artefatti.1635. Tool layer: MCP, API interne, browser, database, repository.1646. Identity layer: OAuth, scope, secret, audit, policy.1657. Memory layer: contesto di progetto, retrieval, istruzioni, scadenza.1668. Observability: trace, replay, eval, metriche di costo e qualità.1679. Product surface: chat quando basta, dashboard quando serve, review quando conta.168169Il framework agentico copre soprattutto i punti 2 e un pezzo del punto 1. Il resto è il lavoro vero.170171## Cosa farei in pratica172173Se un team mi dicesse "vogliamo agenti in produzione", non partirei con dieci agenti.174175Partirei da un workflow piccolo, ripetitivo e osservabile. Per esempio: aprire PR di manutenzione, aggiornare documentazione da issue chiuse, preparare una weekly review, triagiare bug duplicati, generare test per file toccati.176177Poi metterei paletti molto chiari:178179- niente scrittura senza branch o sandbox;180- niente segreti nel prompt;181- tool in allowlist;182- approvazione umana per azioni esterne;183- log e trace obbligatori;184- budget per run;185- output sempre ispezionabile.186187Solo dopo allargherei.188189Gli agenti non falliscono solo perché i modelli sbagliano. Falliscono perché li mettiamo in ambienti vaghi, con permessi confusi e aspettative teatrali.190191## La mia lettura192193L'infrastruttura agentica è noiosa nel modo migliore.194195Non è la parte che fa applaudire in demo. È la parte che ti permette di usare davvero la demo lunedì mattina, con persone vere, dati veri e conseguenze vere.196197Il futuro degli agenti non sarà deciso solo da chi ha il modello più bravo. Sarà deciso da chi costruisce il posto migliore in cui farlo lavorare: isolato quando sperimenta, connesso quando serve, osservabile sempre, autorizzato con criterio e abbastanza umile da fermarsi quando non sa.198199È lì che gli agenti smettono di essere un giocattolo e diventano infrastruttura.200201## Fonti202203- [Vercel: How to build AI agents with Vercel and the AI SDK](https://vercel.com/kb/guide/how-to-build-ai-agents-with-vercel-and-the-ai-sdk)204- [Vercel Docs: Sandbox](https://vercel.com/docs/sandbox)205- [Vercel Docs: Working with Sandbox](https://vercel.com/docs/sandbox/working-with-sandbox)206- [Vercel Docs: MCP](https://vercel.com/docs/mcp)207- [Model Context Protocol: Specification](https://modelcontextprotocol.io/specification)208- [OpenAI: New tools for building agents](https://openai.com/index/new-tools-for-building-agents/)209- [Cloudflare Blog: Agents on Cloudflare](https://blog.cloudflare.com/agents-on-cloudflare/)210
:L'infrastruttura agentica e il nuovo backendlines 1-210 (END) — press q to close