CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

pennant-development

Use when working with Laravel Pennant the official Laravel feature flag package. Trigger whenever the query mentions Pennant by name or involves feature flags or feature toggles in a Laravel project. Tasks include defining feature flags checking whether features are active creating class based features in `app/Features` using Blade `@feature` directives scoping flags to users or teams building custom Pennant storage drivers protecting routes with feature flags testing feature flags with Pest or PHPUnit and implementing A B testing or gradual rollouts with feature flags. Do not trigger for generic Laravel configuration authorization policies authentication or non Pennant feature management systems.

77

1.00x
Quality

89%

Does it follow best practices?

Impact

100%

1.00x

1 of 3 eval scenarios. Add 2 more for a full score.

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

76%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.

The body is a clean, lean API reference with executable code for the core Pennant operations, held back by a vague Verification section that gives no concrete checking commands and an unexplained 'search-docs' pointer. Strengthening the verification guidance into concrete, runnable checks would raise both workflow clarity and actionability.

Suggestions

Make the Verification section concrete and executable, e.g. show a Pest test example like `it('activates the dashboard for admins', fn () => expect(Feature::for($admin)->active('new-dashboard'))->toBeTrue());` instead of the generic 'Check that the feature flag is defined'.

Add the missing deactivate example to the 'Activating and deactivating' section (`Feature::deactivate('new-dashboard');` / `Feature::forget('new-dashboard');`) so the header matches the content.

Clarify the 'search-docs' reference — either name the actual file/tool and how to invoke it, or remove the pointer if no such resource ships with the skill.

DimensionReasoningScore

Conciseness

The body is lean with zero padding — no explanation of what feature flags are or how Laravel works, just '## Documentation', four tight code sections, a two-item '## Verification', and a two-item '## Common pitfalls'. Every line either shows executable code or states a directly useful caution, matching the anchor 'Lean and efficient; assumes Claude's competence; every token earns its place'. It is not a 4 because there is no over-explanation to trim anywhere in the body.

5 / 5

Actionability

The PHP and Blade examples are executable and copy-paste ready ('Feature::define(...)', 'Feature::for($user)->active(...)', '@feature(...)'), but there are minor gaps: the '### Activating and deactivating' section only demonstrates activate() with no deactivate() example, and 'Use `search-docs` for detailed Pennant patterns' names a tool without saying what it is or how to invoke it. This matches 'Mostly executable guidance; concrete code or commands with minor gaps' rather than 5, whose anchor requires the examples to fully cover the common cases.

4 / 5

Workflow Clarity

The '## Verification' section lists steps ('1. Check that the feature flag is defined 2. Test with different scopes and users') but they are generic directives with no concrete commands or expected outcomes — no example test, no way to actually check definition, fitting 'Steps listed but validation gaps; sequence present but checkpoints missing or implicit'. It is not a 2 because the body's usage sections do present a coherent define-then-check flow; it is not a 4 because the verification checkpoints lack any concrete mechanism, and a reader cannot execute the check as written. The skill is non-destructive, so no batch/destructive cap applies.

3 / 5

Progressive Disclosure

The body is well organized into Documentation / Basic usage (with subsections) / Verification / Common pitfalls at ~60 lines with all content appropriately inline for a skill this size, matching 'Good structure; most content is appropriately placed; references mostly clear; minor organization gaps'. It is not a 5 because the single reference — 'Use `search-docs` for detailed Pennant patterns and documentation' — is not clearly signaled as a file or tool (no bundle files exist in references/, scripts/, or assets/ to back it), leaving navigation from the overview slightly ambiguous.

4 / 5

Total

16

/

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.

The description is a strong example of the form: it names the exact package, enumerates comprehensive concrete capabilities, provides explicit positive and negative trigger guidance, and uses natural user-facing terminology with synonyms. It stays in third person and makes no over-claims.

DimensionReasoningScore

Specificity

The description lists ten-plus concrete actions — 'defining feature flags checking whether features are active creating class based features in `app/Features` using Blade `@feature` directives scoping flags to users or teams building custom Pennant storage drivers protecting routes with feature flags testing feature flags with Pest or PHPUnit and implementing A B testing or gradual rollouts' — which is comprehensive coverage of the package's surface, matching the anchor for multiple specific concrete actions. It is not a 4 because there are no meaningful gaps in the enumerated capabilities; every major Pennant task area is named.

5 / 5

Completeness

It explicitly answers both questions: 'what' via 'Tasks include defining feature flags...' and 'when' via 'Use when working with Laravel Pennant' plus 'Trigger whenever the query mentions Pennant by name or involves feature flags or feature toggles in a Laravel project'. It is not a 4 because the 'when' is fully explicit with concrete trigger phrases rather than merely present; it also adds a negative boundary ('Do not trigger for...') reinforcing the when.

5 / 5

Trigger Term Quality

It comprehensively covers the natural terms a Laravel developer would say: 'Laravel Pennant', 'feature flags', 'feature toggles', 'A B testing', 'gradual rollouts', 'Blade @feature', and 'Pest or PHPUnit', including the primary synonym pair flags/toggles. It is not a 4 because no commonly used natural variation is missing — the trigger phrase set is essentially exhaustive for this domain.

5 / 5

Distinctiveness Conflict Risk

It carves out a clear niche — the official Laravel feature flag package — and explicitly disclaims adjacent skills: 'Do not trigger for generic Laravel configuration authorization policies authentication or non Pennant feature management systems'. It is not a 4 because the negative boundary removes even the minor overlap risk with closely related Laravel skills (authorization, configuration).

5 / 5

Total

20

/

20

Passed

Validation

93%

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

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

Total

15

/

16

Passed

Repository

laravel/boost

Path

.ai/pennant/skill/pennant-development/SKILL.md

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.