Scaffolding / S-010

Agente di ricerca con citazioni verificabili

originalesetup: 15 min●●○

Un agente di ricerca in un unico file Node, senza dipendenze da installare: gli dai una domanda e fino a cinque indirizzi, lui scarica le pagine, le pulisce e produce una sintesi in markdown dove ogni affermazione termina con il riferimento alla fonte. Le affermazioni senza fonte sono vietate dal prompt, e l’output ha una sezione obbligatoria che quasi nessun riassunto automatico ti dà: cosa NON si può concludere dalle fonti lette.

Scarica lo script: agente-ricerca.mjs

Farlo girare (prima senza spendere nulla)

Serve solo Node 20 o superiore. Il primo giro si fa a vuoto, con fonti e redazione finte incluse nello script, per vedere il meccanismo senza chiave API e senza costi:

node agente-ricerca.mjs --prova

Trovi il risultato in lavoro/ricerca-<data>.md: guarda la struttura in tre sezioni (risposta con citazioni, cosa dice ogni fonte, cosa non si può concludere). Poi prendi una chiave su openrouter.ai e fai un giro vero su una domanda tua:

export OPENROUTER_API_KEY=sk-or-...
node agente-ricerca.mjs "come si prezza la manutenzione di un sito" https://prima-fonte... https://seconda-fonte...

Cosa guardare nel codice

Lo script è commentato apposta per essere letto, ed è corto. Tre punti valgono il viaggio. I limiti stanno nel codice, non solo nel prompt: massimo cinque fonti, taglio a 15.000 caratteri dichiarato nell’output, e se una fonte non si scarica lo dice e va avanti invece di fingere di averla letta. Il prompt impone il formato: la regola “niente fonte, niente affermazione” è scritta come istruzione verificabile, e puoi controllarla a occhio sull’output. La pulizia dell’HTML è volutamente grezza: quando una fonte esce illeggibile te ne accorgi dalla sezione fonti, ed è un buon esempio del principio “meglio un errore visibile che una magia sbagliata”.

Adattarlo al tuo caso

Le tre modifiche tipiche, in ordine di ambizione: cambiare il formato di output (per esempio una tabella di confronto invece delle tre sezioni: si modifica solo il prompt in costruisciPrompt); dargli le tue fonti fisse di settore, così lanci solo la domanda; farlo girare ogni settimana sugli stessi indirizzi e confrontare le sintesi, che è il primo passo verso il flusso automatico visto nel percorso pro.

Romperlo apposta

Questo scaffolding è anche il banco di prova del capitolo «Quando l’agente sbaglia»: dagli un indirizzo inesistente in mezzo a due veri e guarda come lo dichiara, dagli una pagina quasi vuota e osserva la sezione “cosa non si può concludere” allargarsi. Vedere dove un agente degrada, e come lo comunica, insegna più di dieci giri riusciti.

Scrivi per cercare fra corso, playbook, skill, paper…