sanity-io avatar

Sanity Migration

A structured playbook for migrating content into Sanity from WordPress, Contentful, Strapi, Webflow, AEM, Drupal, Markdown files, and other CMSes. It walks you through the full ETL process: inventory, extraction, schema mapping, Portable Text conversion, asset uploads, validation, and cutover planning. The workflow is opinionated about deterministic IDs, repeatability, and producing migration artifacts before code. Includes platform-specific reference guides for common traps and extraction patterns. This is for real migrations, not toy demos, so it stops you before guessing credentials, scope, or schema decisions and won't let you skip redirect planning or count checks.

skills.sh installs
23.7K
GitHub stars
197
last updated
Aug 21, 2026

Install

$ npx -y skills add sanity-io/agent-toolkit --skill sanity-migration --agent claude-code

Installs into .claude/skills of the current project.

Files

Sanity Migration

Use this skill for CMS-to-Sanity migration work. Treat migration as a content strategy and ETL project, not a blind lift-and-shift.

Required Workflow

  1. Read references/general.md first.
  2. If the source platform is known, also read its guide:
    • AEM / Adobe Experience Manager: references/aem.md
    • Contentful: references/contentful.md
    • Strapi: references/strapi.md
    • Webflow: references/webflow.md
    • WordPress / WXR / Elementor: references/wordpress.md
    • Payload: references/payload.md
    • Drupal: references/drupal.md
    • Markdown / MDX / frontmatter files: references/markdown.md
  3. Before writing code, produce a short migration plan covering source access, content scope, schema decisions, extraction, transformation, import, validation, redirects, and cutover.
  4. Prefer deterministic, repeatable scripts for real migrations. Write and review migration scripts, mappings, and validation checks; do not rely on one-off content operations for large content volumes.

Deliverables to Produce

For implementation or planning tasks, produce these artifacts or explain why they are not needed:

Sponsors

Details

Repository
github.com/sanity-io/agent-toolkit
Categories
Frontend Development, Backend & APIs, AI & Agent Building, Marketing & SEO, PHP & Laravel, Databases
First seen
Jul 14, 2026

More from sanity-io/agent-toolkit

All 7
1expo avatarexpo-web-to-nativeexpo/skillsFramework (OSS). Migrate an existing web React app to a native iOS/Android app with Expo. Use when the user wants to turn a website into a mobile app, port a Ne22.5Kskills.sh installs
2antfu avatarvueuse-functionsantfu/skillsApply VueUse composables where appropriate to build concise, maintainable Vue.js / Nuxt features.21.4Kskills.sh installs
3vercel avatarnext-cache-components-optimizervercel/next.jsDrive a Next.js route to instant navigation by setting up an agentic loop, under Cache Components / PPR, on initial load (hard navigation) and client-side navig20.6Kskills.sh installs
4ejirocodes avatarsvelte5-best-practicesejirocodes/agent-skillsSvelte 5 runes, snippets, SvelteKit patterns, and modern best practices for TypeScript and component development. Use when writing, reviewing, or refactoring Sv18.6Kskills.sh installs
5antfu avatarunocssantfu/skillsUnoCSS instant atomic CSS engine, superset of Tailwind CSS. Use when configuring UnoCSS, writing utility rules, shortcuts, or working with presets like Wind, Ic16.3Kskills.sh installs
6parthjadhav avatarapp-store-screenshotsparthjadhav/app-store-screenshotsUse when building App Store or Google Play screenshot pages, generating exportable marketing screenshots for iOS and/or Android apps, or scaffolding a screensho15.8Kskills.sh installs