cms-self-edit

Configure Sveltia CMS so non-technical clients edit Astro site content via git-based commits.

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

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires @sveltia/cms, and includes references (resource) components.

What problem does it solve? Non-technical clients need to edit content on an Astro 7 site deployed to Cloudflare Workers Static Assets without touching GitHub, while keeping content as portable Markdown and YAML files with no vendor lock-in. ## Core Features & Use Cases - Sveltia CMS Setup: Mount the admin panel as a static file under public/admin, write config.yml, and map Sveltia collections to Astro content collections with matching Zod schemas. - Authentication & Security: Deploy the sveltia-cms-auth Cloudflare Worker for GitHub OAuth login, fix the COOP popup failure, and scope a hardened CSP to /admin in _headers. - Media, i18n & Publishing: Choose between repo media and Cloudflare R2, configure Spanish/English locales with AI translation, and publish through a drafts branch gated by CI. - Use Case: A marketing client needs to update blog posts and page copy on their Astro site. Use this Skill to wire Sveltia CMS so they edit in a browser admin panel, save to a drafts branch, preview on a Cloudflare URL, and publish via merge. ## Quick Start Set up Sveltia CMS on my Astro site so my client can edit content through an admin panel at /admin with GitHub OAuth login and drafts-branch publishing.

Frequently Asked Questions about cms-self-edit

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

FAQPage Schema
How do I add a CMS to an Astro site on Cloudflare?▼

Install @sveltia/cms, mount the admin as a static file under public/admin, and write a config.yml declaring the GitHub backend pointed at a drafts branch. Each Sveltia folder collection maps to one Astro content collection with a matching Zod schema.

Sveltia CMS vs Pages CMS vs Directus for client editing?▼

Sveltia is the default git-based option where editors need GitHub accounts. Pages CMS adds magic-link login when clients must never see GitHub. Directus fits when content is relational, multi-channel, or needs instant publish and editorial roles.

Why does Sveltia CMS login hang silently on my site?▼

A Cross-Origin-Opener-Policy of same-origin nulls window.opener in the OAuth popup, so the postMessage token never arrives. Scope Cross-Origin-Opener-Policy same-origin-allow-popups to /admin in your _headers file.

Can Sveltia CMS store media in Cloudflare R2?▼

Yes, Sveltia uploads browser-to-R2 directly using AWS Signature Version 4 with a configured bucket, API token, and CORS policy. R2 is required for large files because the GitHub backend has no Git LFS support.

Does Sveltia CMS support editorial workflow or draft branches?▼

Editorial Workflow is not yet implemented, so Sveltia commits to a single branch. The standard pattern points the backend at a drafts branch, runs project CI on it, and publishes by merging drafts into production.

Is DeepL translation available in Sveltia CMS?▼

No, DeepL is currently disabled in Sveltia due to an API limitation. Use Google Cloud Translation, Gemini, or Mistral instead, and add the translation endpoint to the /admin CSP connect-src directive.