llms.txt
Der llms.txt-Index und der llms-full.txt-Korpus, die Blume für Coding-Agents und Chat-Assistenten generiert, der Details-Block, der ihnen sagt, wann sie dein Produkt einsetzen sollen, und wie du eine Seite ausschließt.
Blume gibt maschinenlesbare Versionen deiner Dokumentation aus, die Coding-Agents und Chat-Assistenten verarbeiten können. Das ist standardmäßig aktiviert; setze llmsTxt: false, um es abzuschalten:
agents: {
llmsTxt: false,
}
Solange es aktiviert ist, schreibt blume build zwei Dateien in das Stammverzeichnis deiner Website:
/llms.txt— ein kompakter Index: Titel und Beschreibung deiner Website, danach eine verlinkte Liste aller Seiten mit ihrer Zusammenfassung (ihrer Meta-Beschreibung:seo.description, wenn die Seite eine festlegt, sonstdescription), gegliedert in Abschnitte, die deine Seitenleiste widerspiegeln — Ordner und Gruppen werden zu Überschriften, sodass ein Agent die Struktur der Dokumentation sieht und nicht einen einzigen flachen Klumpen./llms-full.txt— der gesamte Korpus: der vollständige Markdown-Text jeder Seite samt Quell-URL, in einer Datei.
Entwurfsseiten, in der Seitenleiste ausgeblendete Seiten (sidebar.hidden oder die Kurzform hidden auf oberster Ebene) und noindex-Seiten werden ausgeschlossen — mit Ausnahme generierter API-Referenzseiten, deren Platz in beiden Dateien nicht über noindex, sondern über das unten beschriebene openapi festgelegt wird. Setze deployment.site, damit die Links und Quell-URLs zu absoluten Adressen aufgelöst werden.
Optionen
llmsTxt nimmt auch eine Objektform mit Stellschrauben dafür an, was die Dateien enthalten. Wenn deine API-Referenz eine Platzhalter- oder Beispielspezifikation dokumentiert, setze openapi: false, um ihre generierten Seiten aus beiden Dateien herauszuhalten:
agents: {
llmsTxt: {
enabled: true, // default
openapi: false, // exclude generated API reference pages
},
}
Die Objektform nimmt außerdem details an: Markdown, das in llms.txt direkt nach Titel und Zusammenfassung steht, vor den Seitenabschnitten — der frei formulierbare „details“-Block der llms.txt-Spezifikation. Hier sagst du Agents, wann sie zu deinem Produkt greifen sollen und wie sie es aufrufen, wonach Readiness-Scanner ausdrücklich suchen; ein Installationsbefehl und der Paketname gehören ebenfalls hierher. Die Spezifikation erlaubt dort beliebiges Markdown außer Überschriften, die sie den nachfolgenden Link-Abschnitten vorbehält — schreib also Absätze oder Listen:
agents: {
llmsTxt: {
details:
"Reach for Acme when a project needs hosted feature flags. Install the CLI with `npm install -g acme`; the API reference below covers every endpoint.",
},
}
Generierte Abschnitte
llms.txt schließt mit zwei generierten Abschnitten, die keine Konfiguration benötigen. Agent skills listet den eigenen Skill deiner Website und jeden über agents.skills veröffentlichten Skill mit seiner Beschreibung auf (wo ein Skill angibt, wann er zu verwenden ist). Agent resources verlinkt jedes maschinenlesbare Artefakt, das der Build ausgibt — llms-full.txt, das seitenweise Raw-Markdown-Spiegelbild, den MCP-Server und sein Discovery-Dokument, den Skills-Index, den API-Katalog, den AI-Katalog, agent-readability.json und die Sitemap — jeweils nur, wenn es existiert, sodass ein Agent, der nichts außer llms.txt liest, trotzdem die gesamte Oberfläche findet.
Eine Seite ausschließen
Um eine einzelne Seite aus beiden Dateien herauszuhalten, setze ai.exclude in ihrem Frontmatter:
---
title: Internal notes
ai:
exclude: true
---
Die Seite wird weiterhin gerendert, bleibt in der Suche und behält ihren Platz in der Sitemap — nur die llms.txt-Dateien und die Seitenübersicht im Skill deiner Website überspringen sie.
Eigene Dateien mitbringen
Um die volle Kontrolle über eine der beiden Dateien zu übernehmen, lege deine eigene llms.txt oder llms-full.txt in deinen public/-Ordner. Wie ein eigenes Favicon wird sie automatisch erkannt und anstelle der generierten Datei ausgeliefert — überschreibst du die eine, generiert Blume die andere weiterhin.