SHIP auto llms-txt-build

Your llms.txt matches what your site actually ships

The file

take it and run it.

One markdown file: the goal prompt, the verifier prompt, and the stopping condition. Read it before you run it. MIT licensed, no account, nothing to sign up for.

curl -fsSL https://vibemarketers.ai/loops/llms-txt-build.md -o .claude/loops/llms-txt-build.md

The loop

copy it.

llms.txt tells AI systems what your site contains. It gets written once, and then the site grows past it. Every page you add after that is invisible to anything reading the file.

Use it when you have an llms.txt and no process keeping it current, which is almost everyone who has one.

You need your published llms.txt and your page list. Nothing else.

You get a dated report: what ships but is not listed, what is listed but does not exist, and whether the file points at your machine-readable surfaces at all.

The gate is you approving any rewrite. It reports by default.

Goal prompt

Read the published llms.txt for <site> and the list of pages the site
actually ships. Report every published page that llms.txt does not list, and
every URL llms.txt lists that does not exist. Check whether it points at the
machine-readable surfaces: raw files, feeds, and any API. Write the report
with a date.

Verifier prompt

Open the report. FAIL if a page that ships is reported as listed, if a listed
URL that 404s is reported as fine, if the report omits any published page, or
if it has no date. Otherwise PASS.

Stopping condition

Every published page has a listed or missing verdict in the report, and the verifier marks PASS.

MCPs it needs

  • none required

Want everything at once

The installer writes the three starter skills and every published loop into .claude/. Read the script first.

curl -fsSL https://vibemarketers.ai/install.sh | bash

Or have us run it on your site →

The receipt

Receipt llms-txt-build
Baseline
An llms.txt written by hand at launch, listing 31 URLs, with no check that it matched what the site had since shipped.
Hypothesis
Comparing the listed URLs against the real page list will find pages added after llms.txt was last edited.
Intervention
Parsed every vibemarketers.ai URL out of the published llms.txt and compared it against the built page list, the published loops API and the term pages.
Result
31 URLs listed against 32 pages. Every published loop and every term page was listed. 3 key pages were missing: the catalog itself, the runs page and the questions page. All 3 were added and a rerun found 0 missing.
Commercial signal
none
Attribution limits
Being listed in llms.txt is not evidence that any agent reads it or acts on it. This checks coverage, not effect.
Learning
The missing pages were the newest ones. llms.txt drifts in exactly one direction: pages get added to the site and not to the file, so the file is always describing an older version of the site.
Next intervention
Generate llms.txt from the sitemap at build time so drift is impossible, then keep this loop as the check on the generator.
0 human touches
4 minutes
0 errors
raw run logopen →

Sources: run log, lab/runs/2026-09-25-llms-txt-build.json, collected , window: 31 listed URLs against 32 pages, single run before and after the fix .

One entry per run, append-only, newest first. Corrections append a dated line.

Inside a company

where the lane changes.

VibeMarketers tests the loop. SuperMarketers runs it on a real team.

Problem
llms.txt is written once and then drifts, so agents get an out of date map of the site.
Source of truth
The published llms.txt and the real page list from the build.
Permitted actions
Read llms.txt and the page list, compare, write a report. Never publish a rewritten file without approval.
Required approvals
The owner approves any change to llms.txt before it ships.
Owner
Technical SEO owner
Metric
Share of published pages discoverable from llms.txt.

On a real team this regenerates llms.txt from the sitemap on every build, so drift cannot happen.

Running this on your own site is one person reading a diff. Running it inside a company changes four things, and the guide covers them. When it stops being a file you copy and becomes a build, SuperMarketers does the same loop model inside your stack, on your keys.