Come creare un agente Claude che funzioni davvero nel mondo reale - Corso completo

@cyrilXBT
INGLESE1 mese fa · 14 giu 2026
283K
302
44
18
722

TL;DR

Questa guida completa delinea un'architettura a quattro livelli per creare agenti Claude affidabili, caratterizzata da memoria persistente, verifica automatica della qualità e ripristino efficace dagli errori per flussi di lavoro reali.

Ecco la traduzione in italiano:

La maggior parte dei tutorial sugli agent Claude si ferma al "hello world".

Ti mostrano come far chiamare uno strumento a Claude. Come impostare un loop di base. Come ottenere una risposta autonoma su un semplice compito giocattolo.

Poi provi a costruire qualcosa di reale e tutto va in frantumi.

Il compito è troppo ambiguo. L'agente si blocca. Gli output sono inconsistenti. La sessione termina e nulla è stato salvato. Ricominci da capo la volta successiva.

Il divario tra un agente Claude che funziona in un tutorial e un agente Claude che funziona in produzione non è un divario nelle capacità di Claude.

È un divario nel modo in cui l'agente è stato progettato.

Questa guida colma quel divario completamente.

Alla fine avrai un agente Claude che esegue un flusso di lavoro reale in modo affidabile. Non una demo. Non un compito giocattolo. Un flusso di lavoro che produce output consistenti, gestisce i casi limite con eleganza, migliora nel tempo e funziona senza che tu debba avviare ogni passaggio.

Cosa Rende Diverso un Agente del Mondo Reale

Prima di costruire qualsiasi cosa, capisci cosa separa un agente del mondo reale da un agente da tutorial.

Un agente da tutorial esegue un compito pulito con input puliti e produce un output pulito. Il compito è ben definito. Gli input vengono forniti nel formato esatto previsto. Non succede nulla di inaspettato. Il successo è binario e ovvio.

Un agente del mondo reale esegue compiti disordinati con input disordinati e deve comunque produrre output utili. Il compito è parzialmente definito. Gli input arrivano in formati che variano. Cose inaspettate accadono regolarmente. Il successo è una questione di grado e richiede giudizio per essere valutato.

Quattro proprietà determinano se un agente sopravvive al contatto con il mondo reale:

Definizione del compito robusta. L'agente sa non solo cosa fare, ma come gestire le venti varianti del compito che incontrerà nella pratica. Le istruzioni coprono i casi limite, non solo il percorso felice.

Memoria persistente. L'agente accumula contesto attraverso le sessioni. Il lavoro fatto la settimana scorsa informa il lavoro che fa oggi. Non ricomincia da zero ogni sessione.

Gestione elegante degli errori. Quando qualcosa va storto, l'agente si riprende invece di fermarsi. Registra cosa è successo, prova alternative e avvisa un umano solo quando il recupero è impossibile.

Auto-verifica della qualità. L'agente controlla i propri output rispetto a standard definiti prima di consegnarli. Chiude il proprio ciclo di feedback invece di restituire qualunque cosa abbia prodotto per primo.

La maggior parte degli agenti da tutorial non ha nessuna di queste proprietà. Questa guida costruisce tutte e quattro.

L'Architettura dell'Agente

L'architettura ha quattro componenti che lavorano insieme.

Il Livello di Definizione del Compito

Un file di skill strutturato che definisce il compito, il processo, la gestione dei casi limite e lo standard di qualità. Non è un prompt. È una specifica operativa completa che l'agente legge prima di ogni esecuzione.

Il Livello di Memoria

Un database persistente che memorizza cosa l'agente ha fatto, cosa ha imparato e cosa deve ricordare tra una sessione e l'altra. Costruito su SQLite tramite Hermes Agent o implementato manualmente con logging basato su file.

Il Livello di Esecuzione

Le vere chiamate API Claude che fanno il lavoro. Strutturate per utilizzare il modello giusto, il contesto giusto e gli strumenti giusti per ogni passaggio del flusso di lavoro.

Il Livello di Qualità

Il ciclo di verifica che controlla gli output rispetto a standard definiti prima di consegnarli e riprova con correzioni specifiche quando gli output sono insufficienti.

Impostare le Fondamenta

Installa gli strumenti necessari:

Installa Hermes Agent per orchestrazione e memoria

git clone https://github.com/NousResearch/hermes-agent

cd hermes-agent

npm install

Installa i server MCP per l'accesso agli strumenti

npm install -g @modelcontextprotocol/server-filesystem

npm install -g @modelcontextprotocol/server-brave-search

Configura il tuo ambiente:

Configurazione principale

MODEL_PROVIDER=anthropic

MODEL_NAME=claude-opus-4-8

ANTHROPIC_API_KEY=la-tua-chiave-api-qui

Configurazione memoria — usa percorsi assoluti

MEMORY_BACKEND=sqlite

MEMORY_PATH=/Users/tuonome/agent-data/memory.db

Configurazione scheduler

ENABLE_SCHEDULER=true

SCHEDULER_TIMEZONE=America/New_York

Configurazione output — dove finiscono i risultati

OUTPUT_PATH=/Users/tuonome/agent-outputs

Ripristino errori

SKILL_RETRY_ENABLED=true

SKILL_RETRY_MAX=3

SKILL_RETRY_DELAY=300

Notifiche

NOTIFICATION_GATEWAY=telegram

TELEGRAM_BOT_TOKEN=il-tuo-token-bot

TELEGRAM_CHAT_ID=il-tuo-chat-id

Scrivi il CLAUDE.md:

Questo è il file più importante in tutta la configurazione. Ogni sessione dell'agente inizia leggendolo. La qualità di ogni output dipende dalla specificità di ciò che è scritto qui.

Configurazione Agente — CLAUDE.md

Identità e Scopo

[Descrivi cosa fa questo agente in un paragrafo specifico.

Non cosa fa Claude in generale. Cosa fa questo agente specifico

è configurato per fare per questa operazione specifica.]

Contesto Operativo

[Descrivi il contesto lavorativo o personale in cui

opera questo agente. Cosa fa la persona che ha configurato

questo agente? Quali sono i suoi standard e priorità?]

Compiti Attivi Correnti

[Elenca i compiti ricorrenti specifici che questo agente esegue.

Per ognuno: cosa fa, quando viene eseguito, come si presenta un buon output.]

Permessi degli Strumenti

Hai il permesso di utilizzare questi strumenti in modo autonomo:

  • Filesystem: leggere e scrivere su [PERCORSI SPECIFICI]
  • Ricerca web: per ricerche su [ARGOMENTI SPECIFICI]
  • [Altri strumenti con ambito specifico]

Non devi:

  • Scrivere in nessun percorso al di fuori della directory di output configurata
  • Effettuare chiamate API esterne non elencate sopra
  • Intraprendere alcuna azione che influisca su sistemi esterni senza approvazione esplicita

Standard di Qualità

[Descrivi come si presenta un buon output per ogni tipo di compito.

Includi esempi dove possibile.

Sii abbastanza specifico affinché l'agente possa autovalutarsi.]

Istruzioni di Memoria

Memorizza:

  • Ogni output significativo con data e valutazione della qualità
  • Ogni caso limite incontrato e come è stato gestito
  • Ogni fallimento di qualità e cosa lo ha causato
  • Ogni modello identificato tra gli output

Gestione degli Errori

In caso di fallimento dello strumento: riprova una volta, registra il fallimento, continua

con gli strumenti disponibili.

In caso di fallimento di qualità: riprova con correzioni specifiche,

non una riscrittura completa. Massimo tre tentativi.

In caso di fallimento irreversibile: salva il lavoro parziale,

registra il fallimento specifico, invia una notifica,

fermati con eleganza.

Costruire il Livello di Definizione del Compito

Il livello di definizione del compito è dove la maggior parte degli agenti del mondo reale fallisce.

Le persone scrivono un prompt che descrive il percorso felice e si fermano. L'agente gestisce bene il percorso felice e si rompe su tutto il resto.

Una definizione di compito robusta copre l'intera realtà operativa del compito. Ecco il template:

[NOME COMPITO]

Scopo

[Una frase: cosa realizza questa skill?]

Attivazione

[Condizioni esatte che causano l'esecuzione:

ora programmata, comparsa di un file, comando manuale, ecc.]

Controlli Pre-Esecuzione

Prima di iniziare, verifica:

  1. [L'input richiesto esiste ed è accessibile]
  2. [Gli strumenti richiesti sono connessi e rispondono]
  3. [Il percorso di output è scrivibile]
  4. [La memoria è accessibile e aggiornata]

Se un qualsiasi controllo fallisce: registra il fallimento e fermati.

Non procedere con prerequisiti mancanti.

Processo Principale

Passo 1: Caricamento del Contesto

Leggi CLAUDE.md per il contesto operativo completo.

Leggi la memoria per la cronologia pertinente taggata: [TAG-COMPITO]

Nota eventuali schemi dalle esecuzioni precedenti

che dovrebbero informare questa.

Passo 2: Elaborazione dell'Input

[Descrivi esattamente cosa fare con l'input.

Copri il formato primario E i formati alternativi

che si presentano nella pratica.]

Per il formato di input standard:

[Passaggi di elaborazione esatti]

Per il formato di input alternativo A:

[Come gestirlo]

Per il formato di input alternativo B:

[Come gestirlo]

Per input malformato o mancante:

[Come gestirlo — mai fallire in silenzio]

Passo 3: Esecuzione Principale

[Il lavoro effettivo della skill.

Dividi in sottopassaggi. Ogni sottopassaggio dovrebbe essere

abbastanza specifico che una nuova istanza di Claude

potrebbe eseguirlo senza contesto aggiuntivo.]

Passo 4: Verifica della Qualità

Prima di salvare l'output, verifica rispetto a questi standard:

RICHIESTO: [Proprietà dell'output non negoziabili]

PREFERITO: [Proprietà di qualità che migliorano l'output]

VIETATO: [Cose che non dovrebbero mai apparire nell'output]

Se l'output fallisce i controlli richiesti:

  • Identifica specificamente cosa è fallito
  • Riprova con una correzione mirata
  • Massimo tre tentativi
  • Se ancora fallisce dopo tre: salva con flag di fallimento

Passo 5: Output e Archiviazione

Salva l'output in: [PERCORSO SPECIFICO E FORMATO NOME FILE]

Memorizza nella memoria taggata: [TAG-COMPITO, DATA]

Aggiorna CLAUDE.md se qualche informazione corrente è cambiata.

Invia notifica: [COSA INCLUDERE NELLA NOTIFICA]

Casi Limite

[Nome Caso Limite 1]

Condizione: [Quando si verifica]

Rilevamento: [Come riconoscerlo]

Risposta: [Cosa fare]

[Nome Caso Limite 2]

Condizione: [Quando si verifica]

Rilevamento: [Come riconoscerlo]

Risposta: [Cosa fare]

[Nome Caso Limite 3]

Condizione: [Quando si verifica]

Rilevamento: [Come riconoscerlo]

Risposta: [Cosa fare]

Standard di Qualità

Un ottimo output: [Descrizione specifica]

Un output accettabile: [Soglia minima]

Un output inaccettabile: [Cosa dovrebbe attivare un nuovo tentativo]

Istruzioni di Memoria

Dopo ogni esecuzione, memorizza:

  • Data e durata dell'esecuzione
  • Valutazione della qualità dell'output (ottimo/accettabile/fallito)
  • Eventuali casi limite incontrati e come sono stati gestiti
  • Qualsiasi schema degno di nota per esecuzioni future

Il Tuo Primo Agente Reale: L'Agente di Ricerca e Briefing

Ecco un agente del mondo reale completo costruito usando questa architettura. Questo agente monitora quotidianamente un insieme di fonti, ricerca argomenti rilevanti per il tuo lavoro e fornisce un briefing strutturato ogni mattina.

Questo non è un compito giocattolo. È un flusso di lavoro reale che sostituisce quarantacinque minuti di compilazione manuale di ricerche ogni giorno.

Crea skills/research-brief.md:

research-brief

Scopo

Monitorare le fonti configurate e produrre un briefing

di intelligence strutturato che copra gli sviluppi rilevanti

per i progetti e le priorità correnti.

Attivazione

Programmato giornalmente alle 6:00.

Manuale: "Briefing di ricerca" o "Briefing mattutino"

Controlli Pre-Esecuzione

Prima di iniziare, verifica:

  1. CLAUDE.md è leggibile in 07-SYSTEM/CLAUDE.md
  2. Brave Search MCP sta rispondendo
  3. Il percorso di output è scrivibile in outputs/briefings/
  4. Il database di memoria è accessibile

Processo Principale

Passo 1: Caricamento del Contesto

Leggi completamente CLAUDE.md. Nota:

  • Progetti attivi correnti e il loro stato
  • Argomenti segnalati per il monitoraggio
  • Eventuali decisioni in sospeso che necessitano di intelligence
  • Standard di qualità per questo briefing

Leggi la memoria taggata: research-brief

Nota: cosa è stato coperto nei briefing recenti

per evitare ripetizioni.

Passo 2: Ricerca delle Fonti

Per ogni argomento nell'elenco di monitoraggio di CLAUDE.md:

Query di ricerca: "[ARGOMENTO] notizie ultime 24 ore"

Raccogli: titolo, fonte, data, affermazione chiave

Applica il filtro del segnale:

INCLUDI: Nuovo sviluppo, dato, lancio prodotto,

dichiarazione significativa, risultato di ricerca

ESCLUDI: Ripetizione di copertura esistente,

opinione senza nuove informazioni,

qualsiasi cosa coperta negli ultimi 3 briefing

Per ogni risultato che supera il filtro del segnale:

Ricerca più approfondita con una query di follow-up se

il risultato iniziale suggerisce uno sviluppo significativo.

Passo 3: Sintesi

Raggruppa i risultati per argomento.

Per ogni gruppo di argomenti identifica:

  • Il singolo sviluppo più significativo
  • Perché è importante per i progetti correnti
  • Quale azione, se del caso, implica

Sintesi tra argomenti:

  • Ci sono due o più risultati che si collegano per suggerire uno schema più ampio?
  • Qualche risultato ha un impatto diretto su un progetto attivo o una decisione in sospeso?

Passo 4: Verifica della Qualità

Prima di finalizzare, verifica:

RICHIESTO:

  • Minimo 3 elementi di segnale (non rumore)
  • Ogni elemento basato su una fonte specifica
  • Ogni elemento spiega la rilevanza per il lavoro corrente
  • Nessun elemento ripetuto dagli ultimi 5 briefing

PREFERITO:

  • Almeno una connessione tra argomenti
  • Almeno un elemento che implica un'azione specifica
  • Riconoscimento onesto se è stata una giornata senza notizie

VIETATO:

  • Analisi generica senza prove specifiche
  • Elementi interessanti ma non pertinenti
  • Riempitivo per far sembrare il briefing più completo

Se il briefing fallisce i controlli richiesti: identifica specificamente

cosa manca e cerca fonti aggiuntive

prima di riprovare. Non riempire con segnali deboli.

Passo 5: Generazione dell'Output

Genera il briefing in questo formato esatto:


Briefing di Intelligence Mattutino — [DATA]

PIÙ IMPORTANTE OGGI

[Singolo sviluppo più significativo e perché è

importante per il lavoro corrente. Specifico. Fondato.]

ELEMENTI DI SEGNALE

[Argomento 1]

\\Sviluppo:\\ [Cosa è successo]

\\Fonte:\\ [Pubblicazione, data]

\\Rilevanza:\\ [Perché questo è importante per i progetti correnti]

\\Implicazione:\\ [Qualsiasi azione che questo suggerisce]

[Argomento 2]

[Stesso formato]

[Continua per ogni elemento di segnale]

CONNESSIONE

[Se due o più elementi si collegano per suggerire uno

schema più ampio, descrivilo qui. Salta se non c'è una connessione genuina.]

RILEVANZA PER LE DECISIONI

[Se un qualsiasi elemento è direttamente rilevante per una

decisione in sospeso in CLAUDE.md, segnalalo qui con dettagli specifici.]

NOTA DI COPERTURA

[Valutazione onesta: giornata completa / giornata senza notizie.

Numero di fonti cercate.]


Passo 6: Archiviazione e Notifica

Salva in: outputs/briefings/[DATA]-morning-brief.md

Memorizza nella memoria:

  • Data: [OGGI]
  • Elementi coperti: [ELENCO ARGOMENTI]
  • Qualità: [ottimo/accettabile/fallito]
  • Degno di nota: [Eventuali casi limite o schemi] Tag: research-brief

Invia notifica Telegram:

"Briefing mattutino pronto: [N] elementi di segnale.

[PIÙ IMPORTANTE OGGI in una riga]"

Casi Limite

Nessun Segnale Trovato per un Argomento

Condizione: Le ricerche non restituiscono nuovi sviluppi

Rilevamento: Tutti i risultati hanno più di 48 ore

Risposta: Nota "Nessun nuovo sviluppo" per quell'argomento.

Non inventare o riempire. Passa all'argomento successivo.

La Fonte Restituisce Informazioni Contrastanti

Condizione: Due fonti riportano fatti contraddittori

Rilevamento: Contraddizione diretta su un'affermazione specifica

Risposta: Riporta entrambe le versioni, cita entrambe le fonti,

segnala come contrastante. Non scegliere l'una sull'altra.

Strumento di Ricerca Non Disponibile

Condizione: Brave Search MCP non risponde

Rilevamento: La chiamata allo strumento restituisce un errore

Risposta: Registra il fallimento. Notifica tramite Telegram.

Salva il briefing parziale con nota: "Ricerca non disponibile —

briefing basato solo sul contesto della memoria."

Non fallire in silenzio.

Il Briefing Ripeterebbe l'Elemento Principale di Ieri

Condizione: Lo sviluppo più significativo è lo stesso di ieri

Rilevamento: Confronto incrociato con il briefing di ieri nella memoria

Risposta: Nota "Sviluppo in corso dal [DATA]"

e concentrati su ciò che è specificamente nuovo oggi.

Standard di Qualità

Briefing ottimo: 4-6 elementi di segnale. Ogni elemento pertinente.

Almeno un'idea trasversale. Si legge in meno di 5 minuti.

Briefing accettabile: 3 elementi di segnale. Tutti pertinenti.

Nessuna idea trasversale. Si legge in meno di 5 minuti.

Briefing inaccettabile: Meno di 3 elementi di segnale.

Qualsiasi elemento generico o non pertinente al lavoro corrente.

Qualsiasi elemento ripetuto dagli ultimi 3 briefing.

Costruire il Livello di Verifica della Qualità

Il livello di verifica della qualità è ciò che separa gli agenti che producono risultati consistenti dagli agenti che producono risultati variabili.

La maggior parte degli agenti salta completamente questo livello. Generano un output e lo restituiscono. La qualità dipende interamente da quanto è buona la generazione. Alcune sessioni sono eccellenti. Alcune sono mediocri. Non sai mai cosa otterrai.

Un livello di verifica della qualità rende la qualità dell'output consistente controllando ogni output rispetto a standard definiti e riprovando con correzioni specifiche quando gli standard non vengono soddisfatti.

Ecco il modello di chiamata API Claude che implementa la verifica della qualità:

async function executeWithQualityVerification(prompt, qualityStandard, maxRetries = 3) {

let attempt = 0;

let lastOutput = null;

let lastFailure = null;

while (attempt < maxRetries) {

// Genera l'output

const response = await fetch('https://api.anthropic.com/v1/messages', {

method: 'POST',

headers: {

'Content-Type': 'application/json',

'x-api-key': process.env.ANTHROPIC_API_KEY,

'anthropic-version': '2023-06-01'

},

body: JSON.stringify({

model: 'claude-opus-4-8',

max_tokens: 4096,

messages: [

{

role: 'user',

content: attempt === 0

? prompt

: \${prompt}

Il tentativo precedente ha fallito il controllo qualità: ${lastFailure}
Correggi specificamente per questo fallimento. Non riscrivere tutto.\

}

]

})

});

const data = await response.json();

lastOutput = data.content[0].text;

// Verifica la qualità

const verificationResponse = await fetch('https://api.anthropic.com/v1/messages', {

method: 'POST',

headers: {

'Content-Type': 'application/json',

'x-api-key': process.env.ANTHROPIC_API_KEY,

'anthropic-version': '2023-06-01'

},

body: JSON.stringify({

model: 'claude-opus-4-8',

max_tokens: 1000,

messages: [

{

role: 'user',

content: `Sei un controllore di qualità. Valuta questo output rispetto a questi standard:

${qualityStandard}

Output da valutare:

${lastOutput}

Rispondi SOLO con:

PASS se l'output soddisfa tutti gli standard richiesti

FAIL: [descrizione specifica di cosa è fallito] se non soddisfa gli standard richiesti

Non spiegare. Non suggerire miglioramenti. Solo PASS o FAIL con descrizione specifica del fallimento.`

}

]

})

});

const verificationData = await verificationResponse.json();

const verificationResult = verificationData.content[0].text.trim();

if (verificationResult.startsWith('PASS')) {

return { output: lastOutput, attempts: attempt + 1, passed: true };

}

lastFailure = verificationResult.replace('FAIL:', '').trim();

attempt++;

}

// Tutti i tentativi esauriti

return {

output: lastOutput,

attempts: maxRetries,

passed: false,

failure: lastFailure

};

}

Questo modello genera un output, lo controlla rispetto a standard definiti e riprova con correzioni specifiche quando fallisce. Se tutti i tentativi falliscono, restituisce l'output migliore con un flag di fallimento invece di crashare.

Il Modello di Integrazione della Memoria

La memoria è ciò che trasforma un agente capace in un agente che apprende.

Senza memoria, ogni sessione ricomincia da zero. L'agente non sa cosa ha fatto prima. Non può applicare gli apprendimenti dalle esecuzioni passate. Non può evitare errori che ha già commesso.

Con la memoria, ogni sessione si basa sulla precedente. L'agente sa cosa ha funzionato e cosa no. Applica il contesto accumulato per migliorare gli output correnti. Migliora nel compito specifico nel tempo.

Ecco il modello di integrazione della memoria per qualsiasi agente Claude:

All'inizio di ogni esecuzione:

Leggi le voci di memoria taggate: [TAG-COMPITO]

Limite: 20 voci più pertinenti

Strategia: pertinenza (non solo recenza)

Applica questo contesto:

  • Nota schemi dalle esecuzioni precedenti
  • Nota casi limite precedentemente incontrati
  • Nota problemi di qualità precedentemente identificati
  • Applica gli apprendimenti all'esecuzione corrente

Alla fine di ogni esecuzione:

Memorizza:

data: [OGGI]

compito: [NOME COMPITO]

qualità: [ottimo/accettabile/fallito]

degno di nota: [qualsiasi cosa valga la pena ricordare]

caso_limite: [eventuali casi limite incontrati]

schema: [qualsiasi schema osservato]

Tag: [TAG-COMPITO], [DATA]

Consolidamento mensile:

Leggi tutte le voci di memoria taggate: [TAG-COMPITO]

Identifica:

  • Schemi che appaiono in più voci
  • Casi limite che si ripresentano
  • Problemi di qualità che si ripresentano
  • Cosa è correlato a output ottimi vs accettabili

Consolida in una singola voce di contesto aggiornata

Archivia le voci individuali più vecchie di 90 giorni

Il Sistema di Recupero dagli Errori

Gli agenti del mondo reale incontrano errori. Le fonti vanno offline. Le API limitano la frequenza. I file non sono dove ci si aspetta. Gli output falliscono i controlli di qualità dopo il massimo dei tentativi.

Il sistema di recupero dagli errori determina se questi errori sono intoppi invisibili o arresti catastrofici.

Tre livelli di gestione degli errori:

Livello 1: Recupero Automatico

Errori transitori che si risolvono con un nuovo tentativo. Strumento non disponibile. Timeout di rete. Limite di frequenza raggiunto.

Protocollo di Recupero Livello 1

In caso di fallimento di qualsiasi chiamata a uno strumento:

  1. Attendere 60 secondi
  2. Riprovare la stessa identica chiamata
  3. Se il tentativo riesce: continua normalmente, registra l'intoppo
  4. Se il tentativo fallisce: passa al Livello 2

Livello 2: Degrado Graduale

Errori che non possono essere risolti ma consentono il completamento parziale. Una fonte non disponibile. Uno strumento che non risponde. Una sezione dell'output che fallisce i controlli di qualità.

Protocollo di Recupero Livello 2

In caso di errore parziale non risolvibile:

  1. Completa ciò che può essere completato
  2. Nota specificamente cosa è stato saltato e perché
  3. Segnala l'output come parziale nel nome del file
  4. Includi una nota esplicita nell'output stesso
  5. Invia notifica: "Output parziale — [motivo specifico]"
  6. NON far fallire l'intero compito perché un componente è fallito

Livello 3: Arresto Graduale

Errori che rendono l'intero compito impossibile. CLAUDE.md non trovato. Percorso di output non scrivibile. Database di memoria inaccessibile.

Protocollo di Recupero Livello 3

In caso di fallimento completo:

  1. Identifica il punto di fallimento specifico
  2. Salva qualsiasi lavoro completato in una posizione temporanea
  3. Registra il contesto completo del fallimento
  4. Invia notifica: "Compito fallito — [motivo specifico]"
  5. Fermati in modo pulito senza corrompere output esistenti
  6. NON riprovare automaticamente — attendi l'intervento umano

Testare il Tuo Agente Prima del Deploy

L'errore più comune nel deploy di un agente del mondo reale è saltare i test strutturati.

Tre fasi di test prima che un agente entri in funzione:

Fase 1: Test dei Componenti

Testa ogni componente isolatamente prima di testare l'intero flusso di lavoro.

Testa la persistenza della memoria

hermes chat

Qual è la voce di memoria più vecchia che hai memorizzato?

Previsto: Dovrebbe riportare una voce o segnalare database vuoto

Se restituisce errore: la configurazione della memoria è sbagliata

Testa l'accesso agli strumenti

Elenca i file in [PERCORSO OUTPUT]

Previsto: Dovrebbe elencare i file effettivi

Se restituisce errore: il filesystem MCP non è configurato correttamente

Testa la ricerca

Cerca "notizie AI oggi" e dimmi il primo risultato

Previsto: Dovrebbe restituire risultati di ricerca effettivi

Se restituisce errore: Brave Search MCP non è configurato correttamente

Fase 2: Test del Percorso Felice

Esegui la skill manualmente su un input standard pulito e verifica che l'output soddisfi lo standard di qualità.

Esegui la skill manualmente

hermes run research-brief

Controlla l'output

cat outputs/briefings/[OGGI]-morning-brief.md

Verifica rispetto allo standard di qualità:

- Minimo 3 elementi di segnale?

- Ogni elemento pertinente al lavoro corrente?

- Nessuna analisi generica?

- Si legge in meno di 5 minuti?

Fase 3: Test dei Casi Limite

Innesca deliberatamente ogni caso limite documentato e verifica il comportamento di recupero.

Test: nessun accesso a internet

Disabilita Brave Search in .env

Esegui la skill

Previsto: Fallimento Livello 3, arresto pulito, notifica inviata

Test: percorso di output non scrivibile

Cambia OUTPUT_PATH in una directory inesistente

Esegui la skill

Previsto: Fallimento Livello 3, arresto pulito, notifica inviata

Test: giornata senza notizie

Esegui durante un weekend o un giorno festivo

Previsto: Output Livello 2 con NOTA DI COPERTURA che indica giorno lento

Eseguire il Tuo Agente in Produzione

Una volta che tutte e tre le fasi di test sono superate, configura lo scheduler e passa alla produzione.

{

"schedules": [

{

"skill": "research-brief",

"cron": "0 6 \ \ *",

"description": "Ogni giorno alle 6:00",

"timeout_minutes": 15,

"on_failure": "notify_and_stop"

}

]

}

Avvia Hermes in modalità background:

npm run start -- --daemon

Verifica la prima esecuzione programmata:

Controlla i log dopo le 6:00

cat logs/hermes-[DATA].log

Controlla che l'output sia stato prodotto

ls outputs/briefings/

Controlla che la memoria sia stata aggiornata

hermes chat

Quante voci di memoria research-brief hai?

Se la prima esecuzione automatizzata produce un buon output, l'agente è in produzione.

Cosa Cambia al Terzo Mese

Mese uno: L'agente funziona in modo affidabile. Gli output sono consistenti. Gli errori sono gestiti con eleganza. Risparmi quarantacinque minuti ogni mattina.

Mese due: lo strato di memoria inizia a mostrare miglioramenti visibili. L'agente ha elaborato sessanta giorni di fonti e accumulato contesto su quali fonti producono contenuti ad alto segnale rispetto al rumore. La qualità del filtraggio del segnale migliora perché l'agente ha imparato quali fonti valeva la pena seguire.

Mese tre: il consolidamento della memoria è stato eseguito due volte. L'agente ha identificato schemi su novanta giorni di ricerca. I rapporti fanno riferimento a un contesto accumulato che li rende più fondati e più specifici di quanto qualsiasi ricerca in una singola sessione potrebbe produrre.

L'agente al terzo mese non sta eseguendo lo stesso flusso di lavoro del primo mese.

Sta eseguendo una versione migliorata di quel flusso di lavoro, basata su novanta giorni di intelligenza operativa accumulata.

Questa è la differenza tra un agente da tutorial e un agente del mondo reale.

L'agente da tutorial esegue il compito.

L'agente del mondo reale impara a eseguire il compito meglio.

Costruisci le fondamenta questo fine settimana.

Eseguilo per una settimana. Ripara ciò che si rompe.

Eseguilo per un mese. Osservalo migliorare.

Eseguilo per tre mesi. Nota ciò che sa e che non avresti potuto dirgli il primo giorno.

Ecco come si presenta la creazione di un agente Claude che funziona davvero nel mondo reale.

Segui @cyrilXBT per ogni architettura di agente, modello di competenza e schema di distribuzione in produzione che fa sì che i tuoi agenti Claude sopravvivano al contatto con il mondo reale.

Salva con un clic

Leggi in profondità gli articoli virali con l’AI di YouMind

Salva la fonte, fai domande mirate, riassumi l’argomentazione e trasforma un articolo virale in note riutilizzabili in un unico spazio di lavoro AI.

Scopri YouMind
Per i creator

Trasforma il tuo Markdown in un articolo 𝕏 pulito

Quando pubblichi i tuoi testi lunghi, formattare immagini, tabelle e blocchi di codice per 𝕏 è una seccatura. YouMind trasforma un'intera bozza Markdown in un articolo 𝕏 pulito e pronto da pubblicare.

Prova Markdown verso 𝕏

Altri pattern da decodificare

Articoli virali recenti

Esplora altri articoli virali