원클릭으로
laravel-expert
Laravel/PHP gotchas and decision criteria. Covers N+1 prevention, Eloquent traps, and migration safety.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Laravel/PHP gotchas and decision criteria. Covers N+1 prevention, Eloquent traps, and migration safety.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
CRITICAL: MUST run for EVERY message. Detects agent, complexity, AND model automatically. Without this, tasks route to wrong agents and use wrong models, degrading quality and wasting tokens.
5 techniques for different problem types. Use when stuck or facing complex challenges.
Structured thinking process for complex analysis. Supports revision, branching, and dynamic adjustment.
Angular 17+ gotchas and decision criteria. Covers signals vs observables, standalone patterns, and common pitfalls Claude gets wrong.
Designs RESTful APIs with endpoint naming, versioning strategies (URL path, header-based), pagination (offset and cursor), error response schemas, and OpenAPI conventions. Use when the user asks about REST API design, creating endpoints, URL structure, API versioning, status codes, Swagger, or OpenAPI specs.
Fast bug fixes with root cause investigation + TDD. Enforces 'no fix without root cause' discipline and verification protocol. Without this skill, fixes are applied at symptoms instead of sources, and bugs return.
| name | laravel-expert |
| description | Laravel/PHP gotchas and decision criteria. Covers N+1 prevention, Eloquent traps, and migration safety. |
| autoInvoke | false |
| priority | high |
| triggers | ["laravel","php","eloquent","artisan"] |
| paths | ["**/*.php","composer.json","artisan","config/*.php"] |
| allowed-tools | Read, Grep, Glob, Edit, Write |
| user-invocable | false |
AI-consumed reference. Optimized for Claude to read during execution. Human-readable explanation: see docs/architecture/HIERARCHICAL_PLANNING.md or docs/getting-started/ depending on topic.
Use Context7 for full Laravel docs.
decisions[4]{choice,use_when}:
Form Request vs inline,"Form Request for reusable validation. Inline for one-off simple checks"
Service vs Action class,"Service for stateless business logic. Action (single __invoke) for discrete operations"
Event/Listener vs direct,"Events for decoupling (notifications/logging). Direct for tightly coupled ops"
Eloquent vs Query Builder,"Eloquent for domain models with relationships. Query Builder for reports/bulk ops"
with() eager load. Use preventLazyLoading() in AppServiceProvider to catch in devreadonly DTOs (PHP 8.2+): readonly class UserData { public function __construct(public string $name) {} }updateOrCreate is NOT atomic — race condition possible. Use DB transaction for critical ops$model->save() returns bool, not the model — don't chain. Model::create() returns the model$fillable whitelist or $guarded = [] (never use $guarded = [] with user input)firstOrFail() throws ModelNotFoundException (404). first() returns null silentlyShouldQueue. Without it, runs synchronously despite dispatch()Carbon::now() in tests: use $this->travel() or Carbon::setTestNow() for deterministic tests