Agent skill
kirby-plugin-development
Builds or extends Kirby plugins using hooks, extensions, blocks, KirbyTags, and shared templates/controllers. Use when creating reusable features or integrating Panel customizations.
Install this agent skill to your Project
npx add-skill https://github.com/bnomei/kirby-mcp/tree/main/skills/kirby-plugin-development
SKILL.md
Kirby Plugin Development
KB entry points
kirby://kb/scenarios/04-share-templates-controllers-via-pluginkirby://kb/scenarios/05-kirbytext-kirbytags-hookskirby://kb/scenarios/15-custom-blocks-nested-blockskirby://kb/scenarios/17-extend-kirbytagskirby://kb/scenarios/59-monolithic-plugin-setupkirby://kb/scenarios/60-plugin-workflow-local-testing
Required inputs
- Plugin id (vendor/name) and scope.
- Extension points (hooks/fields/tags/blocks/sections).
- Distribution plan (project-only or composer package).
Minimal plugin skeleton
Kirby::plugin('vendor/name', [
'hooks' => [],
'blueprints' => [],
'snippets' => [],
]);
Local testing
- Use the local workflow guide to test without publishing.
- Render affected pages and verify plugin registration.
Common pitfalls
- Using inconsistent plugin ids or folder names.
- Registering hooks that assume Panel or API is always enabled.
Workflow
- Define the plugin id (vendor/name), feature scope, and whether it must be reusable across projects.
- Call
kirby:kirby_initand readkirby://rootsto locate plugin roots. - Inspect existing plugins to avoid duplication:
kirby:kirby_plugins_index. - Use extension and hook references:
kirby://extensionsandkirby://extension/{name}kirby://hooksandkirby://hook/{name}
- Search the KB with
kirby:kirby_search(examples: "kirbytext hooks", "extend kirbytags", "custom blocks", "share templates via plugin", "monolithic plugin setup"). - Implement the plugin with a minimal
index.phpregistration, then add blueprints/snippets/assets as needed. - Verify by rendering affected pages with
kirby:kirby_render_pageand confirming the plugin loads without errors.
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
kirby-i18n-workflows
Manages Kirby multi-language workflows, translations, and localized labels. Use when dealing with languages, translation keys, placeholders, or importing/exporting translations.
kirby-security-and-auth
Secures Kirby sites with access restriction, user roles, permissions, and protected downloads. Use when implementing login/role-based access, permissions, or file protection.
kirby-headless-api
Exposes Kirby content to headless clients using the API, KQL, and JSON representations. Use when building API endpoints, KQL queries, or headless frontends.
kirby-performance-and-media
Improves Kirby performance and media delivery (cache tuning, CDN, responsive images, lazy loading). Use when optimizing page speed, caching, or image handling.
kirby-panel-and-blueprints
Designs Kirby blueprints and Panel UI, including blueprint reuse/extends, programmable blueprints, and custom Panel fields/sections/areas. Use when changing the Panel experience or schema.
kirby-upgrade-and-maintenance
Upgrades Kirby and maintains dependencies safely using composer audit, plugin compatibility checks, and official docs. Use when updating Kirby versions or making maintenance changes that affect runtime.
Didn't find tool you were looking for?