一键导入
building-packages
Create and manage Concrete CMS packages. Use this skill when the user asks to create a custom package or manage existing packages.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Create and manage Concrete CMS packages. Use this skill when the user asks to create a custom package or manage existing packages.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
This skill provides instructions and best practices for implementing a CRUD (Create, Read, Update, Delete) interface for Doctrine entities within the Concrete CMS Dashboard, following standard core patterns.
Apply this skill whenever you are writing, reviewing, or modifying PHP code for Concrete CMS (concrete5) — custom blocks, packages, single pages, dashboard or dialog or backend controllers, REST endpoints, Express entities, themes, attribute types, jobs, or anything in concrete/controllers, concrete/blocks, controllers/, blocks/, packages/, src/. Use it even when the user does not say "security" — for example, adding a new endpoint, accepting a POST parameter, rendering a user-supplied string, unserializing block config, fetching a URL server-side, or handling a file upload. Concrete CMS shipped 90+ CVEs over the past four years and the failure modes repeat — admin strings rendered raw, missing CSRF tokens on state-changing GETs, unserialize() on stored data, file uploads validated after writing, sequential IDs without per-object authz, type-juggling guard bypasses, OAuth handlers that skip account-state checks. This skill encodes the patterns behind those CVEs so you do not reproduce them.
Create and manage Concrete CMS block types. Use this skill when the user asks to create or modify custom block types.
This skill provides instructions and best practices for creating and managing single pages in Concrete CMS packages. Use this skill when you need to add custom dashboard pages, specific application logic pages, or any landing pages that don't follow the standard page type/template system.
Customize the appearance of Express forms in Concrete CMS
This skill provides guidance and standard workflows for developing custom themes for Concrete CMS, including directory structure, page templates, asset management, and v9+ features like containers. Use this when creating or modifying Concrete CMS themes.
| name | building-packages |
| description | Create and manage Concrete CMS packages. Use this skill when the user asks to create a custom package or manage existing packages. |
Concrete CMS packages are modular components that extend the functionality of the platform. This skill is essential for developers who want to create custom functionality or integrate third-party services into their Concrete CMS projects.
Follow these steps to develop a custom package in Concrete CMS:
packages/ with a lowercase, underscore-separated name (e.g., packages/my_custom_package).controller.php file in the package root. Define the package handle, version, and basic information.
install() method of your controller, add code to register block types, themes, single pages, or other entities.
building-blocktypes skill.building-singlepages skill.concrete/bin/concrete c5:package:install my_custom_package) to install your package.$pkgVersion in controller.php, implement the upgrade() method, and run the update from the Dashboard or CLI (concrete/bin/concrete c5:package:update my_custom_package).