Skip to content

AEO: llms.txt, markdown mirrors, social card, and metadata fixes - #452

Draft
bbrock25 wants to merge 3 commits into
mainfrom
aeo-improvements
Draft

AEO: llms.txt, markdown mirrors, social card, and metadata fixes#452
bbrock25 wants to merge 3 commits into
mainfrom
aeo-improvements

Conversation

@bbrock25

@bbrock25 bbrock25 commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

What

Raises the docs site's answer-engine / LLM discoverability from ~6.5/10 to ~9/10.

New artifacts (via @signalwire/docusaurus-plugin-llms-txt)

  • /llms.txt — nav-ordered index (avocado-os → avocado-connect → hardware → developer-reference → field-notes → changelog) with per-page descriptions
  • /llms-full.txt — full site content in one markdown file (~1MB)
  • Raw .md mirror of every page (181 docs) — LLMs and agents ingest these far better than themed HTML
  • Tag/archive/author noise pages excluded from the index

Metadata fixes

  • robots.txt now advertises the sitemap
  • Default og:image social card set (1200×675 JPEG, 53KB, reused from peridio.com's brand card) — previously zero pages had one
  • sitemap.xml now carries git-derived lastmod; dropped the static changefreq/priority noise
  • Meta descriptions added to the 4 pages missing them (resources, Connect overview, references explore, config schema)

Cleanups found along the way

  • The classic preset's default blog was never disabled, so the live site ships an empty /blog page — now disabled, with a client redirect /blog → /field-notes

Verification

Full production build passes; verified in build output: llms.txt section ordering and descriptions, 181 .md mirrors, og:image on every page, lastmod in sitemap, the /blog redirect target, and /blog absent from the sitemap.

Not in this PR

  • OTA guide — the empty developer-reference/ota stub is left exactly as it is on main. Writing the actual OTA walkthrough (and deciding its indexing) is its own effort and will land in a separate PR.

🤖 Generated with Claude Code

…ixes

Improve the docs site's answer-engine / LLM discoverability:

- Add @signalwire/docusaurus-plugin-llms-txt: generates /llms.txt (nav-
  ordered index with per-page descriptions), /llms-full.txt, and a raw
  .md mirror of all 181 pages at build time
- Advertise the sitemap in robots.txt
- Set a default og:image social card (1200x675, reused from peridio.com)
- Emit git-derived lastmod in sitemap.xml; drop static changefreq/priority
- Add meta descriptions to resources, Avocado Connect overview,
  references explore, and config schema pages
- Mark the empty ota.md TODO stub unlisted (noindex, out of sitemap)
- Disable the classic preset's default blog, which shipped an empty
  /blog page; redirect /blog to /field-notes

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings July 8, 2026 02:48

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR improves the docs site’s LLM/answer-engine discoverability and SEO/social metadata by adding llms.txt artifacts + markdown mirrors, tightening sitemap/robots metadata, and fixing a couple of navigation/visibility edge cases (empty /blog, unlisted OTA stub).

Changes:

  • Add @signalwire/docusaurus-plugin-llms-txt and configure it to emit /llms.txt, /llms-full.txt, and per-route Markdown mirrors while excluding tag/archive/author/search noise routes.
  • Update site metadata: advertise sitemap.xml in robots.txt, set a default social og:image, and configure the sitemap to include lastmod while removing changefreq/priority.
  • Add missing page descriptions and mark the empty OTA stub doc as unlisted; redirect /blog → /field-notes and disable the classic preset blog.

Reviewed changes

Copilot reviewed 7 out of 9 changed files in this pull request and generated no comments.

Show a summary per file
File Description
src/static/robots.txt Adds sitemap advertisement for better crawler discovery.
src/package.json Introduces the llms.txt/markdown-mirror plugin dependency.
src/package-lock.json Locks the newly added plugin and its transitive dependencies.
src/docusaurus.config.js Configures llms artifacts, disables classic blog, adds /blog redirect, sets default OG image, and adjusts sitemap metadata.
src/docs-overview/resources.mdx Adds a missing meta description on the homepage doc.
src/docs-overview/avocado-connect/overview.mdx Adds a missing meta description for the Connect overview page.
src/docs-guides/ota.md Marks the TODO stub as unlisted to keep it out of indexing/sitemap.
src/docs-guides/avocado-cli/config-schema.mdx Adds a missing meta description for the config schema reference page.
Files not reviewed (1)
  • src/package-lock.json: Generated file

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@bbrock25
bbrock25 marked this pull request as draft July 8, 2026 02:50
bbrock25 and others added 2 commits July 16, 2026 09:07
The empty OTA stub was being marked unlisted as part of the AEO pass.
Documenting OTA properly is its own effort, so drop it from this PR and
leave the stub exactly as it is on main.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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.

2 participants