back to top

Cos’è il file llms.txt e perché è fondamentale per AI e siti web

Introduzione – dai crawler “classici” ai Large Language Model crawlers

Per quasi trent’anni robots.txt ha dettato le regole di ingaggio tra siti web e motori di ricerca. Oggi l’equilibrio si sta spostando: gli LLM crawlers (ChatGPT, Gemini, Claude, Perplexity, ecc.) scansionano pagine per creare knowledge‑graphs e generare risposte conversazionali. Per approfondire come i crawler tradizionali influiscono sull’HTML ti rimando a Struttura HTML perfetta per il SEO.

Da questo bisogno nasce /llms.txt, standard proposto da Jeremy Howard (Answer.AI) nel 2024 e già supportato da tool come Mintlify, Firecrawl e da diversi plugin WordPress.


Cos’è llms.txt – definizione in poche righe

llms.txt è un file in formato Markdown Plain‑Text posizionato nella root del dominio (https://tuodominio.it/llms.txt).
Contiene:

  • metadati essenziali sul sito (titolo, descrizione, autore, licenza);
  • un elenco di URL “ai‑friendly” (generalmente in .md) che rappresentano il corpus principale;
  • eventuali direttive su tassi di richiesta o quote API dedicate agli LLM.

A differenza di robots.txt (che dice cosa non indicizzare) e di sitemap.xml (che elenca tutte le pagine), llms.txt fornisce solo ciò che serve a un modello linguistico per costruire prompt contestuali, evitando di processare layout e codice di presentazione.

Per capire come separare struttura e contenuto, leggi anche la guida su HTML semantico.


Perché llms.txt è importante per siti web e AI

VantaggioImpatto per il sitoImpatto per gli LLM
Riduzione del crawl‑budget AIMeno risorse server consumateParsing più rapido, minori timeout
Controllo narrativoIl proprietario decide quali URL e versioni (.md) fornireMaggior qualità delle risposte citazionali
Attribution SEOLink diretti a pagine canoniche → più brand mentionsFacilita le citazioni “source:” nelle risposte
Performance & sicurezzaNessuna esecuzione JS → zero rischi XSS lato crawlerContenuto pulito, struttura prevedibile

Secondo il white‑paper Mintlify, la riduzione di token inutili in fase di ingestion supera il 65 %.

Se ti occupi di performance front‑end, dai un’occhiata anche alla guida su Ottimizzare LCP.


Anatomia e sintassi di un file llms.txt

Di seguito un esempio reale (commenti # solo a scopo didattico):

# llms.txt v1.0
site_title: CyberAlchimista.it
site_description: Tutorial avanzati Frontend, WordPress e AI per dev italiani
site_url: https://cyberalchimista.it
author: Gioacchino R.
license: CC BY‑SA 4.0
generated: 2025-04-18

[links]
# elenco sintetico: max ~1 000 URL consigliati
/drag-and-drop-javascript-snippet/index.html.md
/ai-frontend-strumenti/index.html.md
/css-avanzato-2025-layout-animazioni-best-practice/index.html.md
...

[end]

Regole base di sintassi

  1. Key : value separati da due punti e spazio.
  2. La sezione [links] accetta una URL per riga, relativa al dominio.
  3. I file .md devono essere versioni clean (solo markdown semantico) delle pagine.
  4. Nessun BOM, codifica UTF‑8.

Best practice: mantieni la dimensione totale sotto i 500 KB; in caso di corpus enorme implementa anche /llms-full.txt (vedi sotto).


llms.txt vs llms-full.txt

Caratteristicallms.txtllms-full.txt
ScopoMappa compatta, indice navigazionaleDump completo dei contenuti
Dimensione tipica< 500 KBVari MB (anche 50 – 100 MB)
UtilizzoChat real‑time che seguono linkTool che caricano contesto unico via URL
AggiornamentoOgni major updateOn‑demand o bulk refresh

La specifica propone di mettere entrambi i file in root, lasciando al consumer la scelta.


Come creare un llms.txt manualmente (workflow CLI)

  1. Inventory URLnpx @11ty/eleventy --to=json | jq '.url' > urls.txt
  2. Filtra solo pagine evergreen (categorie blog escluse se preferisci).
  3. Converti in Markdown pulitonpx html-to-md --input ./public --output ./public-md
  4. Compila metadati in cima al file.
  5. Aggiungi i link generati (sed 's|^|/|' urls.txt >> llms.txt).
  6. Valida con:npx @llmstxt/validator llms.txt
  7. Versiona in Git e deploy nella root (/var/www/html/llms.txt).

Per una strategia GitOps completa leggi la nostra guida su JAMstack vs WordPress.


Implementare correttamente llms.txt nel proprio sito (tecnica + SEO)

1. Posizionamento e headers

ServerConfig esempio
ApacheAlias /llms.txt /var/www/llms/llms.txt + AddType text/plain .txt
NGINXlocation = /llms.txt { root /var/www/html; }

Imposta Cache‑Control: public, max-age=86400 per evitare richieste ripetute.

2. Integrazione con SEO Tech Stack

  • Sitemap → llms.txt: genera la lista di URL partendo dalla sitemap, ma filtra pagine noindex.
  • Canonical: le versioni .md devono avere metatag canonical verso l’HTML originale.
  • Structured Data: mantieni JSON‑LD anche nella versione markdown (vedi guida su microdati schema.org).

3. Monitoring

Usa access.log per tracciare hit su /llms.txt (User‑Agent contiene spesso “OpenAI” o “GPTBot‑LLM”) e valuta se throttlarle con robots.txt Crawl-Delay.

Per debug avanzato puoi sfruttare Chrome DevTools con breakpoints su network.


Sezione WordPress

Plugin che automatizza la gestione di llms.txt

PluginPunti di forzaUltimo update
Website LLMs.txtGenera llms.txt + integrazione Yoast SEO/RankMath. Possibilità di escludere CPT o singoli URL da UI.20 mar 2025
LLMs.txt GeneratorScelta wildcard, rigenera file a ogni publish.feb 2025
LLMs‑Full.txt GeneratorProduce sia file “light” che “full” con selettore dei post‑type.apr 2025

Installazione rapida (Website LLMs.txt):

  1. wp plugin install website-llms-txt --activate
  2. Impostazioni → LLMS.txt
    • Scegli post‑type (Pages, Docs, Products…).
    • Spunta “Genera anche llms-full.txt”.
  3. Salva → il file viene scritto nella root e aggiornato al salvataggio di nuovi post.

Strumenti alternativi (non‑WP)


Conclusione

L’introduzione di llms.txt è un piccolo passo tecnico ma un enorme salto strategico: significa parlare la lingua dei modelli che già oggi guidano ricerche conversazionali, sistemi di answer‑engine e agenti autonomi.

Implementalo subito, monitora l’access log e sperimenta snippet markdown puliti: ogni query AI che cita il tuo brand è traffico qualificato (e gratuito). Se usi WordPress, prova il plugin Website LLMs.txt e fammi sapere nei commenti come va!

Condividi

Articoli Recenti

Categorie popolari