CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

perl-patterns

Modern Perl 5.36+ idioms, best practices, and conventions for building robust, maintainable Perl applications. Use when writing or reviewing modern Perl 5.36+ code.

Quality

76%

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

Fix and improve this skill with Tessl

tessl review fix ./skills/perl-patterns/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

71%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 highly actionable, code-dense reference with excellent Good/Bad contrast and tooling coverage, but it over-explains a few Perl basics and inlines all content into one long file instead of splitting reference material out. Restructuring into bundled reference files and trimming beginner-level sections would raise both weak dimensions.

Suggestions

Move the OO (Moo/roles/Corinna), regex, and tooling sections into references/ files (e.g. references/oo.md, references/tooling.md) and keep SKILL.md as a concise overview with one-level-deep pointers.

Cut or compress the 'Context Sensitivity' section and the elementary parts of 'References and Safe Deep Access' — Claude already knows these Perl fundamentals.

Add a short feedback loop to 'How It Works', e.g. 'after applying patterns, run perlcritic to confirm compliance', to strengthen workflow clarity.

DimensionReasoningScore

Conciseness

Most of the ~500 lines are lean, high-value code with Good/Bad pairs and a legacy-to-modern table, but sections like 'Context Sensitivity' ('Understand scalar vs list context — a core Perl concept' with elementary examples) and parts of 'References and Safe Deep Access' re-teach Perl fundamentals Claude already knows. This fits 'mostly efficient but includes some unnecessary explanation' — below 4 because those basic-teaching sections are genuine over-explanation, above 2 because padding is localized rather than pervasive.

3 / 5

Actionability

The body is dominated by copy-paste-ready, executable Perl: complete Moo classes, signed subroutines, regex patterns, three-arg open, plus concrete tooling configs (.perltidyrc, .perlcriticrc, cpanfile) and commands (carton install). Good/Bad pairs and the Quick Reference table directly cover common cases, matching 'fully executable; copy-paste ready'.

5 / 5

Workflow Clarity

This is a reference/patterns skill with no multi-step process to sequence, so organization substitutes for workflow: 'How It Works' states the application principle, and sections are cleanly scoped with no ambiguity about what to apply where. It does not reach 5 because there are no explicit feedback loops (e.g., run perlcritic after applying patterns), but nothing requires validation and the structure has no gaps.

4 / 5

Progressive Disclosure

Sections are well-organized and no broken or nested references exist (no bundle files at all), but the skill is a single monolithic ~500-line SKILL.md whose OO, regex, and tooling blocks are exactly the bulk that belongs in one-level-deep reference files. This fits 'some structure but could be better organized; content that should be separate is inline' — above 2 because headers and navigation are clear, below 4 because nothing is split out.

3 / 5

Total

15

/

20

Passed

Description

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

A solid description with an explicit 'Use when' clause, a distinct version-qualified niche, and natural trigger phrasing. Its main weaknesses are category-noun capabilities instead of concrete action verbs and a 'when' clause narrower than the skill's actual scope.

Suggestions

Replace the capability nouns with 2-3 concrete actions, e.g. 'Write typed Moo classes, refactor legacy Perl to v5.36 idioms, configure perltidy/perlcritic' to lift specificity.

Broaden the 'Use when' clause to include the body's other triggers: 'Use when writing, reviewing, refactoring, or migrating Perl code (pre-5.36 to modern)'.

Add common synonyms such as 'Perl modules', 'scripts', or 'CPAN' to catch more natural user phrasings.

DimensionReasoningScore

Specificity

The description names the domain ('Modern Perl 5.36+') and capability nouns ('idioms, best practices, and conventions for building robust, maintainable Perl applications'), but these are category labels rather than several concrete actions like 'refactor legacy code' or 'write typed Moo classes'. It sits at 'names domain and 1-2 concrete actions' — below 4 because no specific action list is given, above 2 because the domain and purpose are precise, not generic.

3 / 5

Completeness

Both 'what' (idioms, best practices, conventions for robust, maintainable Perl applications) and an explicit 'when' ('Use when writing or reviewing modern Perl 5.36+ code') are present. Not 5 because the 'when' clause covers only two triggers, omitting scenarios the body itself targets (refactoring legacy Perl, migrating pre-5.36 code, designing module architecture); not 3 because 'when' is explicit, not merely implied.

4 / 5

Trigger Term Quality

Natural trigger phrases are present — 'writing or reviewing modern Perl 5.36+ code', 'Perl applications' — which a user would plausibly say. It falls short of 5 because common synonyms and extensions ('Perl module', 'script', '.pl', 'CPAN') are absent, but coverage is good rather than partial, so it is above 3.

4 / 5

Distinctiveness Conflict Risk

A clear, narrow niche — modern Perl 5.36+ — with version-qualified triggers that no other language's skill would match. Minimal conflict risk, matching the 'clear niche with distinct triggers' anchor.

5 / 5

Total

16

/

20

Passed

Validation

87%

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

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (506 lines); consider splitting into references/ and linking

Warning

metadata_version

'metadata.version' is missing

Warning

Total

14

/

16

Passed

Repository

affaan-m/ECC

Path

skills/perl-patterns/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.