Skip to content

feat: add llms.txt, llms-full.txt and per-page Markdown for AI readers - #8

Merged
adamXbot merged 1 commit into
mainfrom
chore/llms-txt
Sep 5, 2026
Merged

feat: add llms.txt, llms-full.txt and per-page Markdown for AI readers#8
adamXbot merged 1 commit into
mainfrom
chore/llms-txt

Conversation

@adamXbot

@adamXbot adamXbot commented Sep 5, 2026

Copy link
Copy Markdown
Collaborator

The site now follows the llms.txt convention so anyone can point their AI assistant at it and be walked through setup.

What changes

  • scripts/build-llms.mjs generates llms.txt (an index of every page with its description) and llms-full.txt (every page converted to plain Markdown) from docs.json and page frontmatter, using only Node built-ins. Both are committed, so they read from GitHub as well as the site.
  • npm run llms regenerates them; npm run check now fails when the committed copies are stale, so CI catches drift.
  • npm run build writes both files, a .md twin of every page, and any OpenAPI spec into dist/, so the deployed site serves /llms.txt, /llms-full.txt, and any page URL with .md appended.
  • Build fix: mint export copies a leftover dist/ and export.zip from the previous run into the new export. A second local npm run build grew the export from 13 MB to 310 MB, compounding each time. The build now removes both first, and .mintignore lists them.
  • README, CONTRIBUTING, and the about page describe the AI-readable copies. llms-full.txt is marked linguist-generated so GitHub collapses it in diffs.

Verified

  • mint export on its own emits none of these files, so generation has to live here.
  • Full npm run build succeeds; two consecutive builds produce an identical 12.9 MB export.
  • npm run check passes with and without dist/ present.
  • wrangler deploy --dry-run picks up the new .md and .txt assets.

🤖 Generated with Claude Code

The site now follows the llms.txt convention (https://llmstxt.org) so any
AI assistant can be pointed at it to walk someone through setup.

- scripts/build-llms.mjs generates llms.txt (an index of every page with its
  description) and llms-full.txt (every page as plain Markdown) from docs.json
  and page frontmatter, with no dependencies; both are committed so they read
  from GitHub as well as the site
- `npm run llms` regenerates them and `npm run check` fails when the committed
  copies are stale
- `npm run build` writes both files, a .md twin of every page and any OpenAPI
  spec into dist/, so the deployed site serves /llms.txt, /llms-full.txt and
  <page>.md
- the build now removes a stale dist/ and export.zip before `mint export`,
  which otherwise copied them into the next export and grew it from 13 MB to
  310 MB on the second local build; .mintignore lists them too
- README, CONTRIBUTING and the about page describe the AI-readable copies;
  llms-full.txt is marked linguist-generated so GitHub collapses it in diffs

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Sep 5, 2026

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
docs-privacycommand a4a6cc2 Commit Preview URL

Branch Preview URL
Sep 05 2026, 12:47 PM

@adamXbot
adamXbot merged commit 467be51 into main Sep 5, 2026
2 checks passed
@adamXbot
adamXbot deleted the chore/llms-txt branch September 5, 2026 12:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant