For two years, "ship an llms.txt" has been a standard GEO checklist item. Teams wrote them by hand, argued about what to include, and treated the file as a content map for models.
On Shopify, that file already exists, you did not write it, and it is not a content map. We diffed it against /agents.md on a live store on 29 October 2026. Out of 76 lines, 75 are byte-identical.
Key takeaways
- On an eligible Shopify store,
/agents.mdand/llms.txtare the same document served twice. Measured: 5,750 and 5,793 bytes, one differing line. - The one line that differs says so explicitly: "You're reading
/llms.txt, which mirrors that content." - The file is generated by the platform, not by you. It is an operations manual for agents, not marketing copy.
- You cannot edit it. You can only change what it points at — your policies, your knowledge base, your product data.
- It contains an explicit anti-workaround clause: "Do not fall back to scripted form fills or page controls."

What is actually in the file
The structure is fixed and has six parts. Paraphrased from the live file:
- Preferred path. Use the official Shop skill at
shop.com/SKILL.md, because it gives personalisation and accelerated checkout. - Direct connection.
GET /.well-known/ucpfor the profile, then connect to the MCP endpoint and calltools/listfor tools and schemas. - Browser path. Use the WebMCP tools registered on the page; the checkout page exposes UCP tools too.
- Interaction constraints. Orders require buyer authorisation. Agents must identify themselves as agent traffic. Server-side requests and hosted browsers must sign with Web Bot Auth. On a 429, back off and respect
Retry-After. - No fallback. "Do not fall back to scripted form fills or page controls." When tools are unavailable, the agent is told to hand the buyer back to a browser — not to resume simulated clicking.
- Read-only browsing. Reading public HTML as supplementary context is allowed, entry points being
/sitemap.xml,/products/{handle}and/collections/{handle}.

Why this overturns the usual advice
The received wisdom treats llms.txt as something you author to influence how models summarise your site. That premise has always been contested — our earlier look at whether llms.txt actually works found thin evidence of adoption. On Shopify the premise does not just lack evidence; it does not apply at all.
There is no field for your positioning, no slot for your best pages, no place to tell a model what you would like it to say. The document tells agents how to transact with you. Its only editorial surface is the set of things it references.
This also explains a confusion we see regularly. AGENTS.md as a general standard is a developer-facing convention about how coding agents should work in a repository. Shopify's /agents.md is a commerce-facing runtime document about how shopping agents should transact with a store. Same filename, unrelated purposes.
What you can actually influence
Three surfaces, in order of leverage:
Surface | How the file uses it | Who owns it |
|---|---|---|
Store policies | Terms, privacy and returns must be complete for catalog eligibility at all | Legal and ops |
Knowledge base facts | Feeds the policy and FAQ answers agents give; published facts only | Support and legal |
Product data | Title, description, options, taxonomy, media, price and list price | Merchandising |
Everything else in the file is platform-controlled. Rewriting your homepage copy to "speak to AI" changes nothing in this path.
The headless footnote that costs the most
On the Liquid store we probed, both files returned 200. On a store migrated to Hydrogen on Oxygen behind a custom domain, both returned 404.
Protocol discovery still worked there — /.well-known/ucp returned 200 — but the instruction layer was simply absent, along with any WebMCP registration on the homepage. The full comparison is in our headless visibility audit; the short version is that a migration checklist without these checks will ship a store that is invisible on a channel that is becoming a main road.
What to do this week
curl -sI https://yourdomain/agents.mdandcurl -sI https://yourdomain/llms.txt. Both should return 200. If either 404s, that is a build issue, not a content issue.- Read your own file end to end. It takes four minutes and it tells you exactly how agents are instructed to treat your store.
- Complete the three policy pages in Settings → Policies, and accept the agentic storefront terms. Without them you are not catalog-eligible, which makes everything downstream moot.
- Stop maintaining a hand-written llms.txt on Shopify. Move that effort into the knowledge base, where it actually reaches an agent — see the knowledge base and ask_business.
FAQ
Can I override the generated file with my own? Not in the supported path. The file is produced by the platform for eligible stores. Treat its contents as a read-only contract and invest in the sources it cites.
Does this mean llms.txt is useless everywhere? No. This finding is specific to Shopify-hosted storefronts, where the platform generates both files. On a self-built site you own the file and the usual debate still applies.
Is the mirror permanent? Unknown. Both files carry the same protocol generation and could diverge later. Our observation is dated 29 October 2026 and taken from a small sample of live stores — re-run the diff on your own domain rather than assuming it holds.