A dedicated site at ai.webhouse.app plus 21 modular docs — every AI coding assistant gets one URL to build with @webhouse/cms.
One URL for any AI
When a developer asks an AI coding assistant (Claude Code, Cursor, Copilot, Gemini, Windsurf) to build a website with @webhouse/cms, they can now just say:
"Use https://ai.webhouse.app to build it."
The AI fetches that URL and gets a self-contained Step 0–9 walkthrough: verify environment → scaffold → plan with the user → edit cms.config.ts → create content → wire rendering → SEO → deploy → hand back. The page is served as text/markdown, with zero visual chrome — purpose-built for LLM consumption.
All 21 deep-dive modules live at ai.webhouse.app/ai/{slug} if the AI needs depth on a specific topic.
What ships at ai.webhouse.app
| URL | Purpose |
|---|---|
/ai | Self-guided Step 0–9 walkthrough. Start here. |
/ai/01-getting-started | Scaffolding + first run |
/ai/02-config-reference | defineConfig, defineCollection, collection options |
/ai/03-field-types | All 21 field types |
/ai/04-blocks | Block system (hero, features, CTA sections) |
/ai/05-richtext | TipTap editor, embedded media |
/ai/06-storage-adapters | Filesystem, GitHub, SQLite |
/ai/07-content-structure | Document JSON format, content directory layout |
/ai/08-nextjs-patterns | Pages, layouts, loader functions |
/ai/09-cli-reference | All CLI commands |
/ai/10-config-example | Complete real-world cms.config.ts |
/ai/11-api-reference | Programmatic ContentService usage |
/ai/12-admin-ui | CMS admin setup, Docker, npx |
/ai/13-site-building | Common mistakes, patterns, rendering |
/ai/14-relationships | Content relations, resolving, reverse lookups |
/ai/15-seo | Metadata, JSON-LD, AI SEO |
/ai/16-images | Image handling, responsive, next/image |
/ai/17-i18n | Multi-language, locale routing, translation |
/ai/18-deployment | Vercel, Netlify, GitHub Pages, Fly.io, Cloudflare |
/ai/19-troubleshooting | Common errors, debugging, FAQ |
/ai/20-interactives | Data-driven interactive content |
/ai/21-framework-consumers | Non-TS backends (Java, .NET, PHP, Python, Ruby, Go) |
/ai/llms.txt | llms.txt standard (for LLM site crawlers) |
/ai/manifest.json | JSON manifest with all modules + descriptions + endpoints |
/ai/index.json | Ordered module list |
All responses set X-Robots-Tag: noindex — the AI site is not indexed by traditional search engines. It's there for machines.
Why a dedicated AI site?
The 21 modules already exist on GitHub raw, but that's not enough:
- Discoverability — one pretty URL is easier to remember and type than a deep GitHub path.
- Rate limits — GitHub raw throttles at 60 requests/hour unauthenticated. A fresh AI session that fetches several modules hits that quickly.
- Platform variance — not every AI coding tool has ergonomic URL-fetch tooling for GitHub paths, but essentially all of them can fetch a plain URL like
ai.webhouse.app. - Self-guided entry point — the existing index is a module list. It assumes the AI already knows what
@webhouse/cmsis. The new/aiwalkthrough is written for a blank AI session — "you are an AI, follow these steps, if you need X fetch Y". - Machine-readable endpoints — AI platforms increasingly expect
llms.txt, structured manifest JSON, and versioning. GitHub raw markdown doesn't provide any of that.
The walkthrough (/ai)
The walkthrough is structured as a procedure, not a reference:
Step 0 — Verify environment
Step 1 — Scaffold the project (npm create @webhouse/cms@latest)
Step 2 — Understand the model (document JSON, cms.config.ts, field types)
Step 3 — Plan the site with the user (5 questions)
Step 4 — Edit cms.config.ts (kind + description required per collection)
Step 5 — Create starter content
Step 6 — Wire up rendering (Next.js / static / non-TS consumer)
Step 7 — SEO (if relevant)
Step 8 — Deploy
Step 9 — Hand back to the user
Troubleshooting — first-pass fixes
Deep-dive module index
Non-negotiable rules (8 rules from CLAUDE.md critical rules)The AI can complete a basic build end-to-end without fetching any other module. Deeper modules are only for specific topics (i18n, complex SEO, non-TS backend).
How to use it
In any AI coding tool, paste:
Build me a website with @webhouse/cms. Start by fetching https://ai.webhouse.appThe AI will:
- Fetch
/aiand follow Step 0 (checknode --version, ask where to scaffold) - Run
npm create @webhouse/cms@latest(Step 1) - Explain the model and plan with you (Steps 2–3)
- Edit
cms.config.ts, create content, wire rendering (Steps 4–6) - Fetch specific deep-dive modules as needed (SEO, i18n, deployment)
- Hand back a running local site with deploy hooks configured
No manual CLAUDE.md setup, no copy-pasting config from Stack Overflow, no "where should I start?" confusion.
Works with any AI platform
The entire site is plain text/markdown and application/json — every AI coding assistant understands it:
- Claude Code —
WebFetchtool pulls the URL; the long context window handles the full walkthrough - Cursor / Windsurf — paste the URL; the inline chat fetches it
- GitHub Copilot — chat supports URL context; fetch
/aiinto the prompt - Gemini (IDE extensions) — URL-aware chat fetches the markdown
- Any future platform — as long as it supports URL fetching, it works
Machine-readable endpoints
For programmatic use (MCP servers, agent frameworks, CI pipelines):
# Full JSON manifest with all modules + descriptions + endpoints
curl https://ai.webhouse.app/ai/manifest.json
# Plain ordered module list
curl https://ai.webhouse.app/ai/index.json
# llms.txt standard (for LLM crawlers)
curl https://ai.webhouse.app/ai/llms.txtExample manifest.json:
{
"name": "@webhouse/cms AI Builder Site",
"version": "0.1.0",
"entry": "https://ai.webhouse.app/ai",
"modules": [
{ "slug": "01-getting-started", "url": "...", "description": "New project, first setup" },
...
],
"endpoints": {
"walkthrough": "https://ai.webhouse.app/ai",
"llms_txt": "https://ai.webhouse.app/ai/llms.txt",
"manifest": "https://ai.webhouse.app/ai/manifest.json"
}
}Canonical source + fallbacks
If ai.webhouse.app is unreachable, the canonical markdown lives in the CMS monorepo and is served from GitHub raw:
https://raw.githubusercontent.com/webhousecode/cms/main/docs/ai-guide/index.md
https://raw.githubusercontent.com/webhousecode/cms/main/docs/ai-guide/01-getting-started.md
...Every scaffolded project also ships with packages/cms/CLAUDE.md (slim index, ~180 lines) that references the same modules. So the AI has three redundant paths to the same content:
https://ai.webhouse.app(this site — primary)- GitHub raw (fallback, rate-limited)
- Local
packages/cms/CLAUDE.mdinnode_modules/@webhouse/cms(offline)
Dogfooding
The AI Builder Site itself is built with @webhouse/cms — it lives as a route group (src/app/ai/*) on docs.webhouse.app, which is entirely CMS-managed. One site, two audiences: /docs for humans, /ai for AI agents. Same content model, same deploy pipeline.
This page (the one you're reading) is a document in the docs collection, stored as JSON at content/docs/ai-builder-guide.json. It explains the companion AI site that sits next to it. Self-referential, fully editable via the admin UI, and available in both English and Danish.
Non-negotiable rules
The walkthrough reinforces eight rules that AI sessions must follow when building with @webhouse/cms:
- Every collection MUST have
kindanddescription cms.config.tsMUST declarestorageexplicitly (default is SQLite)- NEVER name a collection
site-settings,settings,config,admin,media,interactives image-galleryvalues MUST be{ url, alt }[]— never plain strings- Documents MUST have
_fieldMeta: {} - Slug MUST match filename
- Always filter by
status === "published"when rendering - NEVER use CDN scripts (Tailwind, Bootstrap) in static builds — inline CSS only
These rules prevent the most common AI-generated mistakes we've seen across early builds.