seo-aeo-schema

Implements typed JSON-LD structured data, sitemaps, robots.txt, and llms.txt for Astro sites on Cloudflare Workers.

Updated Jun 17, 2026
One-click install
npx skills add https://github.com/ccediland/web-stack-skills --skill seo-aeo-schema-ccediland
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: seo-aeo-schema
Source: https://github.com/ccediland/web-stack-skills/tree/main/plugin/skills/seo-aeo-schema
Command: npx skills add https://github.com/ccediland/web-stack-skills --skill seo-aeo-schema-ccediland

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires schema-dts, @astrojs/sitemap, and includes references (resource) components.

What problem does it solve? Adding machine-readable SEO and AEO metadata to an Astro 7 site on Cloudflare Workers involves scattered pieces — JSON-LD graphs, sitemaps, robots.txt, llms.txt, canonical and Open Graph tags — each with platform-specific traps like on-demand routes missing from the sitemap and CSP conflicts with inline scripts. ## Core Features & Use Cases - Typed JSON-LD @graph: Build a cross-linked schema-dts entity graph (Organization, WebSite, WebPage, BreadcrumbList, page entity) rendered as one CSP-exempt inline block per page. - Sitemap, robots.txt, llms.txt: Configure @astrojs/sitemap with lastmod wiring and on-demand-route workarounds, plus prerendered text endpoints with verified AI-crawler tokens. - Head component: Hand-rolled canonical, Open Graph, and Twitter meta derived from Astro.site, with seams for hreflang and dynamic OG images. - Use Case: When launching a brand site, generate the full structured-data layer, validate it with the exported CI script, and hand the merge gate to the perf-ci-gates workflow. ## Quick Start Add the complete SEO and structured-data layer to my Astro site on Cloudflare, including the JSON-LD graph, sitemap, robots.txt, and llms.txt.

Frequently Asked Questions about seo-aeo-schema

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add JSON-LD structured data to an Astro site?▼

Build one typed @graph per page with schema-dts, cross-linking Organization, WebSite, WebPage, and BreadcrumbList nodes by @id, then render it as a single inline script block in the base layout. Escape characters that could close the script tag and validate the rendered output.

Why is my Astro sitemap missing pages on Cloudflare?▼

The Cloudflare adapter defaults to on-demand rendering, and @astrojs/sitemap only discovers prerendered routes. Keep content routes prerendered with export const prerender = true, or emit a custom prerendered sitemap endpoint built from content collections.

Does inline JSON-LD violate a strict Content Security Policy?▼

No. A script tag with type application/ld+json is a non-executing data block, so CSP script-src does not apply and Astro's hash-based CSP needs no hash for it. You still must escape characters that could close the script tag.

Does llms.txt improve SEO or AI search rankings?▼

No major AI provider consumes llms.txt as a ranking or answer signal, and Google has stated it does not support it. Ship it as an agent-readiness and Business-to-Agent positioning file, which Lighthouse 13.3 also checks for, not as an SEO lever.

Does schema-dts validate JSON-LD cross-references?▼

No. schema-dts types @id as a bare string and performs zero referential validation, so a broken or wrong-typed cross-reference compiles cleanly. Validate the rendered JSON-LD with the Rich Results Test and validator.schema.org instead.

Are FAQ and HowTo rich results still supported by Google?▼

FAQ rich results were deprecated on 7 May 2026 and HowTo is fully deprecated, though FAQPage remains a valid parsed type. Author schema only for types that still earn rich results, such as Article, Product, BreadcrumbList, and Organization.