Discovery vs. Consumption — der 27×-Token-Unterschied
llms.txt löst Discovery: Agenten sehen, welche Seiten existieren. Es löst nicht Consumption: Wenn jemand eine Docs-URL in Claude, Cursor oder ChatGPT einfügt, kommt HTML — Divs, Hydration-Marker, Sidebars, Banner — und oft ~14.000 Token statt ~500 nützlicher Inhalt. Das Verhältnis kann 27× sein.
Regel: llms.txt ist Schicht eins. Content Negotiation (Accept: text/markdown) ist Schicht zwei — gleiche URL, andere Repräsentation, Standard-HTTP.
Steve Baka: Für Agentur-Kunden mit API-Docs oder Help Center beides planen — Index plus günstige Einzelseiten.
Content Negotiation in der Praxis
Browser: GET /docs/auth → HTML. Agent: GET /docs/auth mit Accept: text/markdown → Markdown. Keine .md-Suffix-Pflicht, keine Sonder-URLs — wenn Middleware oder Edge die Header auswertet.
Next.js-Muster: Middleware prüft accept.includes('text/markdown') und rewritet auf eine interne Markdown-API. Gotcha: Query-Parameter gehen bei Rewrites verloren — Pfad per Header (x-agent-page-path) durchreichen.
HEAD-Requests unterstützen; GET und HEAD erlauben, sonst 405. Cache: Cache-Control: public, s-maxage=3600, stale-while-revalidate=86400 — Agenten respektieren Caching.
# Browser — HTML
curl -sI https://example.com/docs/auth | grep content-type
# Agent — Markdown
curl -sH "Accept: text/markdown" https://example.com/docs/auth | headconst accept = request.headers.get("accept") ?? "";
if (accept.includes("text/markdown")) {
const headers = new Headers(request.headers);
headers.set("x-agent-page-path", request.nextUrl.pathname);
return NextResponse.rewrite(new URL("/api/internal/agent-markdown", request.url), { headers });
}Discovery-Header ergänzen
Negotiation braucht Auffindbarkeit. Auf jeder Response sinnvoll: Link: <https://example.com/llms.txt>; rel="llms-txt" und optional X-Llms-Txt. Agenten können per HEAD den Index finden, ohne Body zu laden.
RFC 8288 Link-Header decken auch API-Katalog, OpenAPI und Agent-Skills ab — ein konsistentes Discovery-Set. Siehe Implementierung auf agentenbetrieb.de.
Mehr zu llms.txt-Inhalt: Was ist llms.txt? und Beispiele.
Link: <https://example.com/llms.txt>; rel="llms-txt"
Link: <https://example.com/.well-known/openapi.json>; rel="openapi"
X-Llms-Txt: https://example.com/llms.txtWas llms.txt trotzdem leistet
llms.txt und llms-full.txt helfen Agenten, die Struktur zu erkunden — kuratierte Links mit Kurzbeschreibung, gruppiert nach Themen. Das ersetzt keine Einzelseiten-Negotiation.
Gutes llms.txt: 10–20 High-Signal-Seiten, Quickstart, Auth, Rate Limits — kein Sitemap-Klon. Wartung wie Produkt-Infrastruktur, nicht einmaliges SEO-Artefakt.
Nächste Schicht: Skill.md — wie Agenten das Produkt nutzen sollen, nicht nur wo Docs liegen.
Checkliste vor Abnahme
□ curl https://domain/llms.txt lesbar □ curl -H 'Accept: text/markdown' https://domain/seite liefert Markdown □ curl -I zeigt Link-Header □ Token-Vergleich HTML vs. MD dokumentiert.
Die meisten Sites scheitern an allen drei — das ist eure Differenzierung als Agentur.
Verknüpfe mit Landing Page agentenlesbar für Marketing-Routen.
