Eine KI, die eine Website besucht, sieht etwas völlig anderes als ein Mensch. Sie sieht <nav>- und <header>-Tags, Cookie-Banner, Analytics-Skripte, auf jeder Seite wiederholte Menüs, rechtliche Fußzeilen — und irgendwo dazwischen den Inhalt, der eigentlich relevant war.
Ein Mensch filtert all das automatisch. Eine KI muss es verarbeiten, gewichten und verstehen, was Signal und was Seitenstruktur ist. Für einen KI-Agenten, der die Frage "Was macht dieses Unternehmen?" beantworten soll, erfordert das Lesen einer conversion-optimierten Startseite denselben Aufwand wie das Lesen eines Dokuments mit 90% redundantem Text.
Das ist kein theoretisches Problem. Es ist der Grund, warum KI-Systeme Unternehmen oft vage beschreiben, ähnliche Dienstleistungen verwechseln oder spezifische Fragen zu einem Produkt nicht beantworten können, obwohl die Antworten öffentlich auf der Website verfügbar sind.
llms.txt ist die Lösung.
Was ist llms.txt
llms.txt ist eine Textdatei im Markdown-Format, die im Root-Verzeichnis einer Website unter /llms.txt abgelegt wird. Sie enthält eine strukturierte Beschreibung der Website, die speziell für den Konsum durch KI-Systeme entwickelt wurde.
Es wurde 2024 von Jeremy Howard (fast.ai) vorgeschlagen. Das Prinzip ist einfach: Anstatt KI zu bitten, Signal aus dem Rauschen einer für Menschen optimierten Website zu extrahieren, geben Sie ihr das Signal direkt.
Das Format ist bewusst minimalistisch:
# Organisationsname
> Dichte Beschreibung: was es tut, für wen, konkreter Wert.
## Dienstleistungen
- [Dienst A](URL): Was es ist, für wen, konkreter Output.
## Blog
- [Artikeltitel](URL): Die wichtigste Erkenntnis in einer Zeile.
## Kontakt
- [Demo](URL): Wie man anfängt.Kein HTML. Kein CSS. Keine Navigationsstruktur. Nur Inhalt.
Das Drei-Datei-Ökosystem
llms.txt ist keine einzelne Datei — es ist ein System mit drei Ebenen, jede für einen anderen Anwendungsfall konzipiert.
llms.txt — der navigierbare Index
Die Hauptdatei. Sie enthält Links mit Beschreibungen, nach Themenbereichen organisiert. Eine KI, die nur llms.txt liest, sollte antworten können auf: Was macht diese Organisation, für wen ist sie gedacht, welche Dienstleistungen bietet sie an, wie nimmt man Kontakt auf. Typische Größe: 5–50 KB.
llms-full.txt — der vollständige Inhalt
Wo llms.txt sagt "dieser Artikel behandelt X (siehe URL)", enthält llms-full.txt direkt den Text des Artikels. Es ist für Systeme konzipiert, die die gesamte Website in einer einzigen Anfrage konsumieren möchten, ohne seitenweises Crawling. Der primäre Anwendungsfall sind Enterprise-RAG-Pipelines. Typische Größe: 100 KB–5 MB.
Sprachvarianten
Eine mehrsprachige Website kann lokalisierte Versionen haben — /it/llms.txt, /de/llms.txt — die nur auf Inhalte in der richtigen Sprache verweisen.
Wer diese Dateien wirklich liest — und wann
ClaudeBot — Anthropics Training-Crawler
Anthropic hat einen Web-Crawler, der sich mit dem User-Agent ClaudeBot/1.0 identifiziert. Er respektiert robots.txt:
# robots.txt
User-agent: ClaudeBot
Allow: /
User-agent: ClaudeBot
Disallow: /admin/KI-Agenten mit Runtime-Browsing
Wenn ein Benutzer Claude oder ChatGPT bittet, "eine Website zu besuchen und zu erklären, was sie tun", besucht die KI die Website in Echtzeit mit einem Browsing-Tool. Hier hat llms.txt direkten Wert: Ein gut konfigurierter Agent liest zuerst /llms.txt und kann viel präziser antworten.
Semantische Crawler — Perplexity, You.com, Bing AI
KI-basierte Suchmaschinen lesen llms.txt aktiv als Ausgangspunkt für das Crawling. Sie nutzen es als Karte, um zu entscheiden, welche Seiten priorisiert werden sollen.
Enterprise-RAG-Pipelines
Eine Organisation, die einen internen KI-Assistenten aufbaut, kann ihn so konfigurieren, dass er llms-full.txt als Wissensquelle liest. Die Datei wird direkt in den Vector Store des RAG-Systems geladen.
Wie man es implementiert: vier Ansätze
Ansatz 1: Statische Datei
Der einfachste Ansatz. Eine llms.txt-Datei im Site-Root erstellen und manuell aktualisieren. Einschränkung: synchronisiert sich nach jedem neuen Artikel nicht mehr mit dem Blog.
Ansatz 2: Next.js App Router
In Next.js einen Route Handler unter app/llms.txt/route.ts erstellen:
// app/llms.txt/route.ts
export const dynamic = 'force-static';
export async function GET() {
const posts = await getAllPosts('de');
const content = buildLlmsTxt(posts);
return new Response(content, {
headers: { 'Content-Type': 'text/plain; charset=utf-8' },
});
}Ansatz 3: Build-Time-Skript — Vite, React, PHP/MySQL
Für Stacks ohne Node.js-Server in der Produktion wird die Datei vor dem Deployment mit einem Node.js-Skript generiert:
// package.json
{
"scripts": {
"generate-llms": "node scripts/generate-llms.js",
"build:full": "node scripts/generate-llms.js && vite build"
}
}Ansatz 4: Dynamisches PHP
# .htaccess
RewriteRule ^llms\.txt$ /llms-dynamic.php [L]Die Struktur, die KI erwartet
Inhalt ist genauso wichtig wie Format. Erforderliche Abschnitte:
- H1 + Blockquote — primäre Identität und dichte Beschreibung
- Dienstleistungen/Produkte — mit echten Beschreibungen, kein Marketing-Text
- Blog/Ressourcen — jeder Artikel mit seiner Haupterkenntnis in einer Zeile
- Kontakt — wie man anfängt
Der richtige Zeitpunkt
llms.txt befindet sich in einer frühen Adoptionsphase. Websites, die es jetzt implementieren, haben einen echten Wettbewerbsvorteil: Sie werden von KI-Systemen präziser dargestellt als Wettbewerber, die es noch nicht getan haben.
Der Implementierungsaufwand ist gering — eine statische Datei dauert eine Stunde, eine dynamische Route einen halben Tag. Der Vorteil ist direkt: Wer einen KI-Agenten nutzt, um Anbieter zu recherchieren, findet Ihre Organisation präzise beschrieben, während Wettbewerber ungenau dargestellt werden.