Craft CMS Claude Skills
Production-ready skills and templates for Craft CMS 5 development using Claude Code.
Craft CMS Claude Skills
Production-ready Claude Code skills, agents, and project templates for Craft CMS 5 development.
Built and maintained by michtio. Covers both plugin/module development (extending Craft) and site development (content modeling, Twig templates, front-end architecture).
Quick Start
1. Install
# Claude Code Plugin (recommended)
# First time: add the marketplace, then install
/plugin marketplace add michtio/craftcms-claude-skills
/plugin install craftcms-claude-skills@michtio/craftcms-claude-skills
# Or via Vercel Skills CLI
npx skills add michtio/craftcms-claude-skills --all
# Or clone manually
git clone https://github.com/michtio/craftcms-claude-skills.git ~/.claude/craftcms-claude-skills
cd ~/.claude/craftcms-claude-skills && bash install.sh
2. Set Up Your Project
Open Claude Code in your Craft project and say:
Set up Claude for this Craft project
The craft-project-setup skill detects your project type (plugin, site, module) and generates a tailored CLAUDE.md and .claude/rules/ directory.
3. Start Building
The skills trigger automatically based on what you're doing. Just describe what you need:
Build a blog with topics, authors, and a flexible body builder using CKEditor
Claude loads the right skills, follows Craft conventions, and uses the correct field handles, DDEV commands, and project config workflow.
Example Prompts
Just describe what you need. Skills trigger automatically and produce high-quality results.
Plan the content architecture for a multi-language corporate site with
news, team members, office locations, and a service catalog. We need
English, German, and French with subfolder-per-language routing.
Build a custom element type for "Job Listings" with postDate/expiryDate
status, a categories relation for departments, and a CP edit page with
field layout designer.
I need a modal dialog for my Craft plugin that opens when clicking
"Add Item", shows a form with name and handle fields, POSTs to my
plugin's save action, and closes on success. Make it keyboard accessible.
Create an atomic button component that supports links, form submits,
and disabled states. It needs size variants and a loading spinner option.
Configure Redis for cache, sessions, and mutex in our Craft project.
We're running DDEV locally and deploying to a VPS with Redis installed.
Build a member area with registration, login, password reset, and
profile editing. Users should be in the "Members" group and only see
content in the gated section.
See docs/prompt-guide.md for 40+ prompts organized by task type.
What's Inside
Skills
| Skill | Track | Key Coverage |
|---|---|---|
craftcms | Plugin | Elements, queries, services, controllers, migrations, events, GraphQL, configuration, caching, permissions, CP templates, debugging. 28 reference files. |
craft-php-guidelines | Plugin | PHPDocs, section headers, naming, class organization, ECS/PHPStan. 5 reference files. |
craft-content-modeling | Site | Sections, entry types, fields, Matrix, relations, eager loading, entrification. Reuse-first field workflow. 5 reference files. |
craft-site | Site | Atomic design, component patterns, routing, Vite, auth flows, search, feeds, headless. 17 reference files + 22 plugin references. |
craft-twig-guidelines | Site | Variable naming, null handling, whitespace, include isolation, Craft helpers, collect(). |
craft-garnish | Plugin | Garnish CP JavaScript: class system, UI widgets, drag system, ARIA/focus, Craft.* pattern. 5 reference files. |
ddev | Shared | Commands, services, configuration, Xdebug, troubleshooting. |
craft-project-setup | Shared | Interactive project scaffolding. Generates CLAUDE.md and .claude/rules/. |
8 skills, 82 reference files. Skills load automatically and declare companion skills so related knowledge loads together. See docs/skills-overview.md for the full breakdown.
Agents
| Agent | Model | Purpose |
|---|---|---|
craft-planner | Opus | Break features into scoped steps with runnable verification gates |
craft-feature-builder | Opus | Build plugin code layer by layer with build-verify gates |
craft-site-builder | Opus | Site templates and components with build-verify gates |
craft-debugger | Sonnet | Systematic bug investigation |
craft-code-reviewer | Sonnet | Code review with findings report |
Builder agents enforce layered build-verify gates and mandatory todo lists. The builder and reviewer maintain prevention/detection parity -- 14 prevention rules map to 19 checklist items. See docs/agents.md for details.
Plugin Reference Library
22 Craft plugins with detailed configuration, Twig/PHP API, and common pitfalls:
<details> <summary>View all 22 plugin references</summary>| Plugin | Author | Key Surface |
|---|---|---|
| SEOMatic | nystudio107 | Meta cascade, JSON-LD, sitemaps, GraphQL |
| Blitz | putyourlightson | Static caching, Cloudflare, dynamic content, purgers |
| Formie | verbb | Form rendering, Tailwind theming, submissions, hooks |
| ImageOptimize | nystudio107 | Responsive images, transforms, loading strategies |
| CKEditor | craftcms | Rich text, nested entries, HTML Purifier |
| Sprig | putyourlightson | Reactive Twig components (htmx) |
| Element API | craftcms | JSON API endpoints |
| Retour | nystudio107 | Redirects, 404 tracking |
| Navigation | verbb | Menu node querying, active states |
| Hyper | verbb | Link fields, button integration |
| Colour Swatches | craftpulse | Color palettes, Tailwind class mapping |
| Password Policy | craftpulse | Validation rules, HIBP check |
| Typogrify | nystudio107 | Typography filters, widow prevention |
| Cache Igniter | putyourlightson | CDN cache warming |
| Knock Knock | verbb | Staging password protection |
| Elements Panel | putyourlightson | Debug toolbar, N+1 detection |
| Sherlock | putyourlightson | Security scanning |
| Embedded Assets | spicyweb | oEmbed as assets |
| Amazon SES | putyourlightson | SES mail transport |
| Timeloop | craftpulse | Recurring dates |
| Feed Me | craftcms | Data import from XML/JSON/CSV, CLI automation |
| Imager-X | spacecrafttechnologies | Advanced image transforms, named presets, effects |
Documentation
| Guide | What it covers |
|---|---|
| Getting Started | Installation, project setup, how skills auto-trigger, first steps |
| Skills Overview | All 8 skills with triggers, companion skills, reference counts, boundaries |
| Prompt Guide | 40+ real-world prompts organized by task type |
| Agents | 5 agents with tools, gate patterns, composition examples |
| Contributing | Adding plugin references, improving skills, reporting issues |
Requirements
- Claude Code installed and configured
- DDEV for local Craft CMS development
- Craft CMS 5.x
- Bash (macOS/Linux) for the install script
Roadmap
- Upgrade guide (Craft 3→4, 4→5, 3→5) with deprecated plugin mapping and migration paths
- DDEV skill expansion (Xdebug deep-dive, custom services, production parity)
- Commerce skill (products, variants, orders, carts, payments -- separate skill)
- CKEditor 4→5 migration guide (config conversion, custom styles, plugin mapping, HTML cleanup)
- More plugin references (Neo, Scout, Campaign)
Contributing
Contributions welcome. See docs/contributing.md for how to add plugin references, improve skills, and report issues.
License
MIT -- see LICENSE.