craft-cloud
Craft Cloud — Pixel & Tonic's serverless hosting platform for Craft CMS. Covers craft-cloud.yaml configuration, the Build →…
fortrabbit (fortrabbit.com) — managed PHP hosting with a Craft CMS software template. Covers git push-to-deploy through the fortrabbit GitHub App, the build and post-deploy commands of the Craft template (migrate/all, project-config/apply, clear-caches/all), the merge deployment
Claude Code
$ npx -y skills add michtio/craftcms-claude-skills --skill craft-fortrabbit --agent claude-code
Codex
$ npx skills add michtio/craftcms-claude-skills --skill craft-fortrabbit -a codex -y
Cursor
$ npx skills add michtio/craftcms-claude-skills --skill craft-fortrabbit -a cursor -y
Gemini CLI
$ npx skills add michtio/craftcms-claude-skills --skill craft-fortrabbit -a gemini-cli -y
GitHub Copilot
$ npx skills add michtio/craftcms-claude-skills --skill craft-fortrabbit -a github-copilot -y
OpenCode
$ npx skills add michtio/craftcms-claude-skills --skill craft-fortrabbit -a opencode -y
Windsurf
$ npx skills add michtio/craftcms-claude-skills --skill craft-fortrabbit -a windsurf -y
name: craft-fortrabbit description: "fortrabbit (fortrabbit.com) — managed PHP hosting with a Craft CMS software template. Covers git push-to-deploy through the fortrabbit GitHub App, the build and post-deploy commands of the Craft template (migrate/all, project-config/apply, clear-caches/all), the merge deployment strategy with the /config/project replace pattern, the deploy file (.fortrabbit/deploy.yml) and its replace-by-default trap, the CRAFT_* ENV vars mapped from FORTRABBIT_DB_* platform variables, production settings (dev mode, admin changes, updates off), the persistent storage for asset volumes and rsync sync, MySQL over SSH and an SSH tunnel, the Craft queue and image transforms in a worker job, crons, platform limits (no root, no sendmail, heavy binaries in jobs only), and DDEV local development." when_to_use: "Triggers on: .fortrabbit/deploy.yml, .fortrabbit/deploy.yaml, .fortrabbit/deploy.json, FORTRABBIT_DB_HOST, FORTRABBIT_DB_NAME, FORTRABBIT_ENVIRONMENT_NAME, FORTRABBIT_MAIN_DOMAIN, *.frbit.app, *.frbit.cloud, ssh.<region>.frbit.app, an en-xxxxxx environment ID, the frbit CLI or fortrabbit MCP server in a Craft project, the fortrabbit jobs component or worker job, deploy Craft to fortrabbit, host Craft on fortrabbit. Do NOT trigger for Craft Cloud (craft-cloud skill), Servd (servd skill), generic Craft deployment on Forge, Ploi or bare metal (craftcms/deployment.md), or DDEV setup unrelated to a fortrabbit project (ddev)."
Reference for running Craft CMS 5 on fortrabbit (fortrabbit.com), a managed PHP hosting platform. Covers git deployment and the Craft software template, the deploy file, ENV vars, the persistent storage and asset volumes, MySQL access over SSH, the Craft queue and image transforms in worker jobs, platform limits, and local development with DDEV.
This skill is scoped to **Craft on fortrabbit specifically**: what differs from running Craft yourself on Forge or bare metal. For generic Craft deployment, see the `craftcms` skill's `deployment.md`. For Craft Cloud, see `craft-cloud`; for Servd, see `servd`.
Authoritative sources (fortrabbit's own docs):
Any page is available as Markdown: insert `/raw` after the host and append `.md`, e.g. `https://docs.fortrabbit.com/raw/guides/craft-cms/setup.md`.
**Current values beat this skill.** Template commands, ENV vars and the deploy file format change over time. Read the live values before writing a deploy file or changing settings, fetching the docs pages with `WebFetch`: the environment itself (`get_environment` or `frbit environments get <env> --json`), the Craft setup page above (rendered from fortrabbit's platform definitions), and the deploy file page. See `references/deploy-and-environments.md`. Last verified against the docs on 2026-11-06.
Each row is a place self-hosted habits will mislead you.
| Concern | Self-hosted | fortrabbit | |---|---|---| | Objects | One server | An **app** has one or more **environments** (`en-xxxxxx`), e.g. production and staging. Each has its own code, database, ENV vars, SSH access and default domain `<env>.<region>.frbit.app` | | Deploy | Whatever you've wired | **Git push** to the connected branch, through the fortrabbit GitHub App. Composer runs in the build; post-deploy commands run once the code is live | | Deploy config | Deploy script | The **Craft software template** sets root path `web`, build and post-deploy commands, strategy. Edit in the dashboard, or commit a **deploy file** `.fortrabbit/deploy.yml` | | `craft up` | Add it to the deploy script | Template post-deploy commands run migrations, project config apply and a cache clear | | Filesystem | Local disk | **Persistent storage**: survives deployments and restarts. Local asset volumes work. The **merge** strategy keeps uploads in place | | Env vars | `.env` on the server | Dashboard ENV vars per environment. The template maps `CRAFT_DB_*` to platform variables `${FORTRABBIT_DB_*}`. No `.env` on the server | | Production config | Yours to set | Template sets `CRAFT_DEV_MODE=false`, `CRAFT_ALLOW_ADMIN_CHANGES=false`, `CRAFT_ALLOW_UPDATES=false` | | Database | Whatever you installed | **MySQL** only, one database per environment, reached from inside the environment or over SSH | | Queue | Daemon via supervisor | Default web-triggered queue. A **worker job** in the jobs component runs `php craft queue/listen` | | Cron | `crontab` | **Cron jobs** in the jobs component, configured in the dashboard, times in UTC | | SSH | Root or sudo | `ssh <env>@ssh.<region>.frbit.app`, **no root**, nothing installable at runtime | | Mail | Local MTA | No `sendmail`: PHP `mail()` fails. Use SMTP or a transactional mail provider |
fortrabbit has three first-party routes besides the dashboard. Use them to look up IDs, read deployment logs and change ENV vars instead of asking the user to copy values out of the dashboard.
| Task | MCP server | `frbit` CLI | |---|---|---| | Find the app and environment of this repo | `list_git_repositories`, `list_environments` | `frbit environments list --json` | | Read an environment's settings and ENV vars | `get_environment` | `frbit
Production-ready Claude Code skills, agents, and project templates for Craft CMS 5 development. Built and maintained by michtio.
Craft Cloud — Pixel & Tonic's serverless hosting platform for Craft CMS. Covers craft-cloud.yaml configuration, the Build →…
Craft CMS 5 content modeling — sections, entry types, fields, Matrix, relations, project config, and content architecture…
Garnish — Craft CMS's built-in JavaScript UI toolkit for the control panel. ALWAYS load when writing, editing, or reviewing…
Testing Craft CMS 5 plugins and modules with Pest — test isolation, database safety, and the markhuot/craft-pest-core harness.…
Craft CMS 5 PHP coding standards and conventions. ALWAYS load when writing, editing, reviewing, or discussing any PHP in a Craft…
Releasing Craft CMS plugins — tagging, Packagist propagation, GitHub releases, branch promotion, shared-library ordering, history…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.