CtrlK
BlogDocsLog inGet started
Tessl Logo

laravel-best-practices

Laravel framework skill for writing, reviewing, and testing PHP applications built with Laravel. Use whenever working on Laravel-specific patterns: controllers, FormRequests, Eloquent models, service/action classes, Blade templates, jobs, events, policies, observers, or Artisan commands. Also applies to Inertia frontends (React or Vue) embedded inside a Laravel project — covering useForm, usePage, Link navigation, partial reloads, page component naming (PostsIndexPage), and shadcn wrapper conventions. Trigger any time someone mentions Laravel, Eloquent, Artisan, Blade, FormRequest, Inertia within Laravel, N+1 queries in a Laravel app, inline controller validation, where business logic should live in a Laravel controller, or asks to follow best practices in a Laravel codebase. Does not apply to plain PHP scripts without Laravel, Rails, Django, standalone Next.js, or non-Laravel frameworks.

65

Quality

82%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

61%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A well-organized, lean body that points to a comprehensive rulebook and clearly signals its reference files, but it stops short of full actionability and workflow rigor: detection/refactor specifics and the helper scripts are not wired in, and the workflows lack explicit verification checkpoints.

Suggestions

Wire the helper scripts into the relevant workflows — e.g. instruct Claude to run scripts/detect-laravel-context.php to confirm a Laravel context before applying rules, and scripts/review-diff.sh as the entry point for diff reviews — so the body surfaces executable steps rather than only referencing rulebook.json.

Add an explicit verification checkpoint to the Review workflow (e.g. '4) Re-run the impacted Pest/PHPUnit tests and confirm findings reproduce before finalizing the report') to lift workflow_clarity above 3.

Reference references/laravel-best-practices-summary.md from the body (or remove it) so every bundle file is reachable from the overview, closing the progressive-disclosure gap.

DimensionReasoningScore

Conciseness

The body is lean — mostly bullet lists of principles and numbered workflows, with no padding explaining what Laravel or basic programming concepts are, and it assumes Claude's competence. Not 5 because a few sections could be tightened, e.g. the 'Recommended output (JSON)' block duplicates the outputs already listed in frontmatter metadata, and the Core principles lightly echo rules that live in rulebook.json.

4 / 5

Actionability

Gives some concrete guidance (file-layout proposals like 'Controller + FormRequest + Service/Action + Model scopes', an output JSON schema, rule-id ranges to apply, and a test-type list), but the actual detection signals and refactor patterns are deferred to rulebook.json and the two provided helper scripts (review-diff.sh, detect-laravel-context.php) are not wired into the body. Matches the 'some concrete guidance but incomplete' anchor; not 4 because key executable specifics and the scripts are not surfaced here.

3 / 5

Workflow Clarity

The Review, Generate code, and Generate tests workflows are each clearly numbered and sequenced, but checkpoints are missing or only implicit — e.g. the Review workflow has no explicit validate/verify step (re-run tests, confirm findings against behavior) before emitting results. Fits the 'steps listed but validation gaps; checkpoints missing or implicit' anchor rather than 4, which requires most checkpoints present.

3 / 5

Progressive Disclosure

Good structure with well-signaled one-level-deep references (rulebook.json as source of truth, plus inertia-react-summary.md, inertia-react.md, inertia-vue.md, all verified to exist) and the bulk detail split out appropriately. Not 5 because three bundle files exist but are never referenced from the body (references/laravel-best-practices-summary.md, scripts/detect-laravel-context.php, scripts/review-diff.sh), leaving them orphaned and not navigable.

4 / 5

Total

14

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

An excellent description: it states concrete capabilities, enumerates natural trigger phrases users would actually say, explicitly answers both what and when, and carves out a distinct Laravel-only niche with an exclusion list. Third-person voice is maintained throughout, so no person-voice penalty applies.

DimensionReasoningScore

Specificity

Names three concrete actions ("writing, reviewing, and testing") and enumerates a comprehensive set of concrete Laravel patterns (controllers, FormRequests, Eloquent models, service/action classes, Blade templates, jobs, events, policies, observers, Artisan commands) plus specific Inertia mechanics (useForm, usePage, Link navigation, partial reloads, PostsIndexPage naming). Matches the 'multiple specific concrete actions; comprehensive coverage' anchor rather than 4, which would require noticeable coverage gaps.

5 / 5

Completeness

Explicitly answers both what ("writing, reviewing, and testing PHP applications built with Laravel" with enumerated patterns) and when ("Use whenever working on Laravel-specific patterns...", "Trigger any time someone mentions..."), with concrete trigger phrases and an explicit negative boundary. Clearly satisfies the 'both what AND when with concrete triggers' anchor.

5 / 5

Trigger Term Quality

Surfaces natural user phrases including synonyms and concrete scenarios — "Laravel, Eloquent, Artisan, Blade, FormRequest, Inertia within Laravel, N+1 queries in a Laravel app, inline controller validation, where business logic should live in a Laravel controller, best practices in a Laravel codebase." These are phrases a user would actually say, matching the comprehensive-synonym anchor; not 4 because common variations are well covered.

5 / 5

Distinctiveness Conflict Risk

Occupies a clear Laravel-only niche with distinct triggers and an explicit exclusion list ("Does not apply to plain PHP scripts without Laravel, Rails, Django, standalone Next.js, or non-Laravel frameworks"), yielding minimal conflict risk. Matches the 'clear niche with distinct triggers; minimal conflict risk' anchor.

5 / 5

Total

20

/

20

Passed

Validation

81%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 13 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

metadata_field

'metadata' should map string keys to string values

Warning

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

13

/

16

Passed

Repository
masterfermin02/laravel-agent-skill
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.