llms.txt e AEO: come mi faccio trovare dalle AI

Cosa espongo alle macchine su danielepelleri.com: llms.txt per cluster, JSON-LD, sitemap e cosa manca per essere citato.

In breve. Farsi trovare dalle AI è un lavoro di superfici leggibili: su questo sito espongo un llms.txt organizzato per cluster, JSON-LD con entità Person unica, sitemap e RSS automatici, e notifico i motori a ogni deploy. Accordo aggiunge il passo dopo: file che le macchine leggono come prove, non come indice. Non ho misure di citazioni attribuibili a queste superfici, e lo dico prima di raccontarle. Pubblicato il 6 ottobre 2026.

Cosa espongo alle macchine

L'inventario è corto e tutto generato in build, mai scritto a mano. Il llms.txt segue la proposta llmstxt.org: intestazione con chi sono, pagine principali, categorie, poi una sezione per cluster con pilastro e membri — oggi 150 voci servite in un unico file da 41KB (verificato live il 6 ottobre 2026). La sitemap elenca post, progetti, categorie e strumenti con lastmod; l'RSS fa lo stesso per i lettori automatici. Entrambi si rigenerano da soli a ogni articolo.

Poi i dati strutturati: un'unica entità Person referenziata da tutte le pagine via @id, con knowsAbout che elenca i temi — SaaS B2B, RevOps, strategia di prodotto, agenti AI — più breadcrumb e FAQPage generata dalle domande in pagina. Canonical su host unico senza slash finale, description obbligatoria in build, redirect 301 per ogni slug spostato. E dopo il deploy, uno script notifica a Bing e agli altri motori IndexNow tutti gli URL della sitemap.

Perché per cluster

La scelta che conta è una: llms.txt è organizzato come la guida, per cluster tematici con pilastro e membri. Le macchine ricevono la stessa mappa che ricevono le persone — nove percorsi per argomento, ognuno con un punto di ingresso e gli approfondimenti — non una lista piatta di URL. Stessa informazione architetturale, due formati: HTML per i lettori, Markdown per i modelli.

È lo stesso principio delle regole di progettazione in 1/3: il valore sta nel contenuto e nei suoi contratti, la consegna si adatta al lettore. Un indice piatto dice "questo sito esiste"; un indice per cluster dice "questo sito sostiene queste tesi, in questo ordine".

Cosa Accordo fa in più

Questo sito espone un indice. Accordo espone prove: oltre a llms.txt e llms-full.txt, claims.json con ogni claim e il suo limite, jobs.json con lo stato di ogni lavoro, answers.json con le risposte e i rifiuti (tutti linkati dalla pagina per gli agenti, verificata il 6 ottobre 2026; llms.txt e claims.json risolvono 200). Un agente non trova solo "di cosa parla questo prodotto": trova cosa afferma, cosa non afferma, e a che punto è ogni lavoro.

È il passo che qui manca e che dichiaro come tale: il mio llms.txt dice dove sono le tesi, non quali sono vere. Per un sito editoriale è la forma giusta; per un prodotto che un agente deve valutare prima di usare, servono i file-prova.

Cosa non prometto

Tre confini onesti. Primo: non ho misure di citazioni da AI attribuibili a queste superfici — nessun prima/dopo, nessun conteggio di menzioni. Racconto ciò che ho costruito e perché, non ciò che ha reso in metriche. Secondo: leggibile non significa citato. Queste superfici abbassano il costo di trovarmi e capirmi; la citazione la decide il modello con criteri suoi. Terzo: farsi trovare è il prerequisito, non il canale. Se MCP diventi un distribution layer è un'altra tesi, che richiede altre evidence e resta fuori da questo cluster.

Fatti e limiti, separati

Fatti (verificati il 6 ottobre 2026):

  • /llms.txt live 200, 41KB, 150 voci, organizzato per cluster con pilastro e membri.
  • Generatore src/pages/llms.txt.ts dalla proposta llmstxt.org; sitemap e RSS rigenerati in build.
  • JSON-LD con Person unica via @id, knowsAbout tematico, breadcrumb e FAQPage (src/lib/schema.ts).
  • Canonical su https://www.danielepelleri.com senza slash, description obbligatoria, 301 sugli slug spostati.
  • Notifica IndexNow post-deploy di tutti gli URL sitemap (scripts/indexnow.mjs).
  • accordo.dev/llms.txt e accordo.dev/claims.json 200; llms-full.txt, jobs.json, answers.json linkati dalla pagina per gli agenti.

Limiti:

  • Nessuna misura di citazioni AI attribuibili alle superfici: esistenza dimostrata, non efficacia misurata.
  • llms.txt dice dove sono le tesi, non quali sono vere: niente file-prova su questo sito.
  • Farsi trovare non è distribuzione: la tesi distribution-layer resta fuori dal cluster.

Domande frequenti

Basta llms.txt per farsi citare dalle AI?

No. È il prerequisito — un indice leggibile che abbassa il costo di trovarti e capirti — ma la citazione la decide il modello. Io non ho misure di citazioni attribuite al mio llms.txt e non ne prometto.

Dove vedo il tuo llms.txt?

Su /llms.txt: intestazione, pagine, categorie e una sezione per cluster. Il generatore è nel repository del sito e gira a ogni build.

E MCP cosa c'entra con farsi trovare?

Sono due momenti: llms.txt fa trovare, MCP fa usare. Le definizioni stanno nell'hub MCP: prima l'agente scopre che esisti, poi ispeziona, valuta e modifica via skill o server.