Use when starting a new Drupal CMS site migration project — bootstraps the project directory with required directory structures, reference files, templates, and validates prerequisites
npx claudepluginhub ajv009/drupal-devkitThis skill uses the workspace's default tool permissions.
Sets up a Drupal CMS + Canvas project for site migration. Run this ONCE before starting any migration work.
Scaffold Claude Code configuration specifically for Craft CMS projects. Generates CLAUDE.md and .claude/rules/ files tailored to the project type (plugin, site, module, hybrid, or monorepo). Only for Craft CMS projects — not for Next.js, Laravel, or other frameworks. Triggers on: 'set up Claude for this Craft project', 'initialize CLAUDE.md', 'scaffold project config', 'configure Claude Code for Craft', 'create CLAUDE.md', 'missing CLAUDE.md', 'does this project have a CLAUDE.md', 'bootstrap Claude config', 'new Craft project setup', 'onboard a developer to this Craft project', 'generate .claude/rules', 'set up coding standards config', 'upgrade Claude config', 'update CLAUDE.md', 'compare my setup', 'is my config up to date', 'audit my Claude setup', 'redo project setup'. Also triggers when starting work in a new Craft CMS project that lacks a CLAUDE.md file, or when the user wants to check or upgrade an existing configuration. Detects project type from composer.json (craft-plugin, craft-module, project), .ddev/config.yaml, templates/, config/project/, and modules/. NOT for installing Craft CMS itself, creating DDEV environments, writing PHP code, building templates, or content modeling. NOT for non-Craft projects — if the project is React, Next.js, Laravel, or any non-Craft framework, this skill does not apply.
Executes Webflow CMS migrations from WordPress, Contentful, Strapi, CSV/JSON using Data API v2 bulk endpoints, data mapping, validation, and strangler fig pattern.
Migrates existing projects to AgenticDev structure using AI analysis to discover, categorize docs, generate frontmatter, update links, and preserve git history. For brownfield projects with ad-hoc documentation.
Share bugs, ideas, or general feedback.
Sets up a Drupal CMS + Canvas project for site migration. Run this ONCE before starting any migration work.
Before running setup, ensure:
ddev start)canvas/ directory with Canvas scaffolding (npx @drupal-canvas/create)cd canvas && npm run dev)Run the setup script:
bash "${CLAUDE_PLUGIN_ROOT}/scripts/setup.sh"
This will:
docs/migration/
├── content/ # Verbatim extracted text per page
├── screenshots/
│ └── pages/ # Per-section screenshots (desktop + mobile)
├── issues/ # QA issue artifacts
├── state.jsonl # Event journal (created by hooks)
├── progress.md # Phase progress tracker
├── plan.md # Migration plan (created by site-analyzer)
└── decisions.md # Agent decision log
Creates .claude/reference/canvas-starter symlink pointing to the plugin's bundled canvas-starter skills. These provide authoritative component.yml schema, styling conventions, and composability patterns.
If not already present:
CLAUDE.md — Project steering file with MCP server policies, content API types, and Canvas documentation links.mcp.json — MCP server configuration for Storybook and Playwright.env.example — Required environment variablesEnsures the project has the npm packages needed for content API operations:
cd canvas && npm install dotenv drupal-jsonapi-params js-yaml
Checks for: ddev, node, npm, canvas CLI, storybook
Copy .env.example to .env and configure:
CANVAS_SITE_URL — Your DDEV site URL (e.g., https://my-project.ddev.site)CANVAS_CLIENT_ID — OAuth client IDCANVAS_CLIENT_SECRET — OAuth client secretVerify MCP servers in .mcp.json have correct URLs for your DDEV site
Start the migration with: /migrate-drupal-canvas:migrate-site <source-url>