laravel について
Laravel 開発タスクを関連資料へ振り分け、プロジェクトの設計規約に沿うよう導くスキルです。機能開発、修正、アップグレードに利用できます。
主な機能
- 01タスクに応じた参照ファイルの選択
- 02スタックと依存バージョンの確認
- 03コントローラーと API Resource の規約
- 04モデルとクエリのガードレール
- 05対象を絞った検証方法の選択
活用シーン
- 01プロジェクト規約に沿った Laravel 機能の実装
- 02特定サブシステムの参照資料の選定
- 03Laravel バージョンアップの計画
- 04範囲を絞ったコード変更の検証
MCP 対応
Laravel MCP サーバーや、アプリのツール、リソース、プロンプトを AI クライアントに公開する方法の参照資料を含みます。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ ulpi-io/ skills --skill laravelインストール後、Claude Code で/laravelを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/ai-sdk.mdapi-docs.mdapi-resources.mdauth.mdboost.mdcaching.mdcontroller-pattern.mddatabase.mddocker.mdeloquent-models.mderror-handling.mdfilament.mdfile-storage.mdfolder-structure.mdform-requests.mdlogging.mdmcp.mdnotifications-mail.mdobservability.mdqueues-jobs.mdrouting.mdscheduling.mdsecurity.mdservice-layer.mdstack.mdtesting.mdupgrading.md詳細
必須ルール:
- まず
references/stack.mdを読み込み、その後、タスクに関連する参照資料のみを読み込みます。 - バージョン固有の API を適用する前に、
composer.jsonとcomposer.lockを確認します。新規アプリケーションと明示的なアップグレードでは Laravel 13 を推奨し、既存のアプリケーションを無関係な作業の最中に黙ってアップグレードしてはいけません。 - コントローラーにビジネスロジックを記述してはいけません。 コントローラーの役割は、バリデーション(Form Request)、委譲(Action)、レスポンスの返却(API Resource)のみです。それ以外は行いません。
- Eloquent モデルを直接返してはいけません。 すべてのレスポンスで API Resource を経由します。
- インラインバリデーションを行ってはいけません。 すべてのバリデーションは Form Request クラスに記述します。
$guarded = []は使用しません。 すべてのモデルで明示的に$fillableを指定します。- 生のクエリは使用しません。 Eloquent またはパラメーター束縛を使用するクエリビルダーを使います。
queue:workを単独で実行してはいけません。 すべてのキュー処理で Horizon を使用します。Model::shouldBeStrict()をAppServiceProvider::boot()で有効にする必要があります。
laravel
入力
$request:作業対象の Laravel タスク、バグ、機能、またはサブシステム
目標
Laravel の作業を適切なプロジェクト規約に沿って進め、汎用的なフレームワークのデフォルトではなく、既存のバックエンドアーキテクチャに従って実装します。
ステップ 0:スタックの仕様を読む
必ず最初に以下を読みます。
references/stack.md
この資料に、この Laravel の領域で固定されているランタイム、パッケージ、アーキテクチャの選択が記載されています。
新規アプリケーション、フレームワークのバージョン決定、または Laravel 12 から 13 へのアップグレードの場合は、以下も読みます。
references/upgrading.md
成功基準:実装を始める前に、プロジェクトの Laravel スタックの選択が明確になっていること。
ステップ 1:関連するリファレンスだけを読み込む
ルーティング表を使って、実際のタスクに合ったリファレンスファイルを選んでください。リファレンスツリー全体をまとめて読み込まないでください。
| タスク | 読み込むファイル |
|---|---|
| セッションの開始/スタックの把握 | references/stack.md |
| 新規アプリケーション、フレームワークのバージョン選定、Laravel 12 から 13 へのアップグレード | references/upgrading.md |
| ファイルの作成や変更、フォルダーの規約 | references/folder-structure.md |
| API ルート、バージョニング、ミドルウェア | references/routing.md |
| コントローラーの作成や編集 | references/controller-pattern.md |
| リクエストへのバリデーション追加 | references/form-requests.md |
| モデル、リレーション、スコープの作成や編集 | references/eloquent-models.md |
| API レスポンスの変換、ページネーション、フィルタリング | references/api-resources.md |
| ビジネスロジック、Actions、DTO、サービスプロバイダー | references/service-layer.md |
| 認証、トークン、ロール、ポリシー | references/auth.md |
| マイグレーション、シーダー、ファクトリー、クエリ最適化 | references/database.md |
| エラーレスポンス、例外処理 | references/error-handling.md |
| ロギングの設定、構造化ロギング | references/logging.md |
| Redis キャッシュ、キャッシュ無効化、TTL 戦略 | references/caching.md |
| ジョブ、キュー、イベント、Horizon、ブロードキャスト | references/queues-jobs.md |
| テストの作成(機能テストまたはユニットテスト) | references/testing.md |
| セキュリティ強化、CORS、レート制限、Webhook | references/security.md |
| API ドキュメントの生成 | references/api-docs.md |
| Telescope、Horizon ダッシュボード、Pulse、ヘルスチェック | references/observability.md |
| Laravel/Filament の統合境界 | references/filament.mdを読み、その後 Filament コードには laravel-filament スキルを使用 |
| Docker のセットアップ、CI/CD、デプロイ | references/docker.md |
| 通知、メール、SMS | references/notifications-mail.md |
| ファイルのアップロード、S3、メディアライブラリ | references/file-storage.md |
| タスクスケジューリング、cron ジョブ | references/scheduling.md |
| AI エージェント、テキスト/画像/音声の生成、エンベディング、RAG | references/ai-sdk.md |
| AI 支援開発、Boost のセットアップ、ガイドライン、スキル | references/boost.md |
| MCP サーバー、AI クライアントへのアプリの公開、ツール/リソース/プロンプト | references/mcp.md |
複数のタスクがある場合は、複数のファイルを読み込んでください。各リファレンスは単独で参照できる内容になっています。
成功基準:タスクに関連する Laravel の規約だけが適用されています。
ステップ 2:Laravel の基本ガードレールに沿って実装する
次のルールを常に適用してください。
- コントローラーはバリデーションを行い、処理を委譲して、結果を返します
- レスポンスには API リソースを使用します
- 一覧エンドポイントにはページネーションを適用します
- モデルには明示的な
$fillableを指定します - データの変更には適切な Action またはトランザクションパターンを使用します
- キューにはプロジェクトのキューおよび Horizon の規約を使用します
成功基準:フレームワークのデフォルトの近道ではなく、プロジェクトの Laravel アーキテクチャに合った変更になっています。
ステップ 3:必要最小限の関連チェックで検証する
タスクに合った、最小限の検証ループを使用してください。
- PHPUnit または Pest のテスト
- 対象を絞った Artisan またはフレームワークのチェック
- リポジトリのワークフローにすでに含まれている場合は、静的解析またはリンティング
- フレームワークのアップグレードでは、
references/upgrading.mdに記載された依存関係とリグレッションのチェック
成功基準:この Laravel プロジェクトで期待される方法で変更が検証されています。
ガードレール
- Laravel のハンドブック全体を
SKILL.mdにインラインで記載しないでください。 references/stack.mdを省略しないでください。- Eloquent モデルをそのまま返さないでください。
- ビジネスロジックをコントローラーに記述しないでください。
- タスクにアップグレードが含まれない限り、Laravel 12 プロジェクトに Laravel 13 専用の API を適用しないでください。
- 現在の Laravel パッチリリースを固定しないでください。サポートされている
^13.0制約とロックファイルを使用してください。 disable-model-invocationを追加しないでください。これは通常のドメインスキルです。
リファレンスを読み込むタイミング
-
references/stack.md常に読み込みます。 -
次に、
references/内のタスクに関連するファイルだけを読み込みます
出力契約
以下を報告してください。
- 検出された Laravel のメジャーバージョンと、Laravel 13 が推奨されたか、すでに使用されていたか
- 読み込まれた Laravel のリファレンス
- 選択されたアーキテクチャパターン
- 行った変更
- 実施した検証