1. Documentation
  2. Tutorials
  3. llms-full.txt
ReadmeGitHub
  • Introduction
  • Quickstart
  • Text
  • Code
  • Lists
  • Tables
  • Accordion
  • Badge
  • Button
  • Callout
  • Code Block
  • Code Block Group
  • Code Snippet
  • Columns
  • Custom components
  • GitHub
  • Hover Card
  • Mermaid
  • Properties
  • Related Topics
  • Tabs
  • Tree
  • Images
  • Video
  • Files
  • Grain
  • Shade
  • Moss
  • Configuration
  • Content
  • Navigation
  • Site Identity
  • Appearance
  • Header and Footer
  • Fonts
  • Icons
  • Integrations
  • Search
  • OpenAPI
  • AI Chat
  • React Router
  • Astro
  • Next.js
  • Cloudflare
  • Vercel
  • robots.txt
  • sitemap.xml
  • JSON-LD
  • rss.xml
  • llms.txt
  • llms-full.txt
  • .md endpoints

llms-full.txt

Publish the complete documentation corpus as one plain-text response for AI agents and offline indexing.

Loading documentation…

llms.txt< Previous.md endpointsNext >

Powered by heyo

On this page

Choose the right retrieval surfaceAdd the routeReact RouterAstroNext.js
Included with create-heyo-docs

This is already configured in projects created with create-heyo-docs. No action is required if you used the creator to install Heyo Docs.

/llms-full.txt combines every generated documentation page into one frontmatter-free, plain-text response. It is useful for offline indexing, evaluation fixtures, or a task that genuinely needs broad documentation context.

Choose the right retrieval surface

For an interactive question, start with llms.txt and load the relevant page-level Markdown documents. Use llms-full.txt when an agent needs the whole site, such as preparing an onboarding brief or comparing several areas of a small documentation site.

The response uses:

text
content-type: text/plain; charset=utf-8

Its size grows with every MDX page, so it should not be the default context window for every request. Like all generated documentation resources, it is public and must not contain secrets or private runbooks.

Add the route

Generate the response from the server-side page registry with llmsFull(). The route convention differs by framework.

React Router

Register the resource route before the documentation catch-all:

app/routes.ts
route("llms-full.txt", "routes/llms-full.ts"),route("*", "routes/page.tsx"),

Then create app/routes/llms-full.ts:

app/routes/llms-full.ts
import { llmsFull } from "@heyo-sh/heyo-docs/llm";import type { LoaderFunctionArgs } from "react-router";import config from "../../heyo-docs.config";import { pages } from "virtual:heyo-docs-content/server";export function loader({ request }: LoaderFunctionArgs) {  const siteUrl = config.siteUrl ?? new URL(request.url).origin;  return new Response(llmsFull(pages, siteUrl), {    headers: { "content-type": "text/plain; charset=utf-8" },  });}

For static React Router deployments, include /llms-full.txt in prerender().

Astro

Create src/pages/llms-full.txt.ts:

src/pages/llms-full.txt.ts
import type { APIRoute } from "astro";import { llmsFull } from "@heyo-sh/heyo-docs/llm";import config from "../../heyo-docs.config";import { pages } from "virtual:heyo-docs-content/server";export const GET: APIRoute = ({ request }) => {  const siteUrl = config.siteUrl ?? new URL(request.url).origin;  return new Response(llmsFull(pages, siteUrl), {    headers: { "content-type": "text/plain; charset=utf-8" },  });};

Astro creates the equivalent /llms-full.txt file during a static build.

Next.js

Create app/llms-full.txt/route.ts:

app/llms-full.txt/route.ts
import { llmsFull } from "@heyo-sh/heyo-docs/llm";import { config, markdownPages } from "../lib/docs";export function GET(request: Request) {  const siteUrl = config.siteUrl ?? new URL(request.url).origin;  return new Response(llmsFull(markdownPages, siteUrl), {    headers: { "content-type": "text/plain; charset=utf-8" },  });}

Publish .md endpoints and llms.txt as well, so agents can select a smaller source when the full corpus is unnecessary.