shopware-admin-crud-module について
Shopware の DAL エンティティ向けに Administration CRUD モジュールを作成するスキルです。プロジェクトの参照パターンに沿って、モジュール設定、一覧・詳細ページ、ACL、検索、フィルター、ローカライズファイルを案内します。
主な機能
- 01モジュール登録とファイル構成
- 02一覧・詳細ページのパターン
- 03ACL 権限マッピング
- 04検索とフィルターの設定
- 05ローカライズスニペットの作成
活用シーン
- 01DAL エンティティの管理モジュールを作成
- 02エンティティの一覧・詳細ページを追加
- 03モジュールの ACL 権限を設定
- 04管理画面の翻訳ファイルを準備
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ friendsofshopware/ agent-skills --skill shopware-admin-crud-moduleインストール後、Claude Code で/shopware-admin-crud-moduleを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/_sections.md_template.mdacl-privileges.mdmodule-registration.mdmodule-search-configuration.mdpage-detail.mdpage-list.mdsnippet-structure.md詳細
Shopware 管理 CRUD モジュール
適用する場面
- Shopware DAL エンティティ用の新しい管理モジュールを作成する場合
- 管理画面にエンティティの一覧、詳細、作成ページを追加する場合
- 管理モジュールの ACL 権限を設定する場合
- エンティティ一覧に検索、フィルター、インライン編集を追加する場合
- 新しいモジュール用の管理画面 i18n スニペットを作成する場合
優先度別のルールカテゴリ
| 優先度 | カテゴリ | プレフィックス | 説明 |
|---|---|---|---|
| CRITICAL | モジュール設定 | module- | モジュール登録、ファイル構成、命名規則 |
| CRITICAL | ページ | page- | 一覧ページと詳細/作成ページのパターン |
| HIGH | ACL と検索 | acl- | ACL 権限の対応付けと検索設定 |
| MEDIUM | スニペットとフィルター | snippet- | i18n スニペットの構成とフィルター設定 |
使用方法
このスキルを呼び出したときは、次の情報をユーザーに確認します。
- エンティティ名(DAL エンティティ。例:
webhook)。引数に指定されていない場合 - 一覧と詳細に表示するフィールド(または EntityDefinition PHP クラスから自動的に読み取ります)
- 使用するモジュールプレフィックス(デフォルト:
frosh-tools-<entity>)
次に、references/ ディレクトリから関連するリファレンスファイルを読み込み、そこに記載されたパターンに従ってすべてのファイルを生成します。管理画面のソースルートは src/Resources/app/administration/src/ です。
命名規則
- モジュール名:
frosh-tools-<entity>(ハイフン区切り) - ルートプレフィックス:
frosh.tools.<entity>(ドット区切り)。モジュール名のハイフンをドットに置き換えて導出します - ACL キー:
frosh_tools_<entity>(アンダースコア区切り)
ファイル構成
module/<module-name>/
index.js # Module registration + search type + lazy component loading
default-search-configuration.js # Search ranking config
acl/
index.js # ACL privilege mapping
snippet/
en-GB.json
de-DE.json
page/
<module-name>-list/
index.js
template.html.twig
<module-name>-detail/
index.js
template.html.twig
さらに、main.js に import './module/<module-name>'; を追加します。
外部リファレンス
コメント
Markdown 対応