CtrlK
BlogDocsLog inGet started
Tessl Logo

design-patterns

Select and apply structural design patterns (Strategy, Factory, Adapter, Observer, etc.) to reduce complexity in class design. Use when evaluating whether a pattern solves a concrete problem, refactoring conditional logic, dealing with too many if/else statements or code smells, resolving inheritance problems, or deciding how to structure classes.

64

Quality

75%

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/software-engineering/design-principles/design-patterns/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

67%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 delivers a genuinely useful decision workflow, sharp anti-pattern guidance with reasoned WHY clauses, and concrete search commands. Its main weakness is token efficiency: an extensive catalog of textbook pattern examples that Claude already knows sits inline while well-organized reference files are underused.

Suggestions

Replace the per-pattern before/after code blocks in 'Common Patterns' with a compact use-when table (pattern, trigger, cost/benefit) and point to references/detailed-examples.md for the full code, cutting the body roughly in half.

Integrate reference links contextually (e.g., under the Anti-Corruption Layer section, link references/adapt-anti-corruption-layer.md) instead of a flat list at the end, so each reference is discoverable at the point of need.

Add a short feedback loop to Step 3 of the workflow: what to do when the applied pattern fails its stated win condition (revert vs. try the next candidate pattern).

DimensionReasoningScore

Conciseness

The 'Common Patterns' section (~160 lines of before/after TypeScript for Strategy, Factory, Adapter, Observer, Anti-Corruption Layer, Humble Object) re-demonstrates textbook Gang-of-Four patterns Claude already knows, fitting the 'mostly efficient but includes some unnecessary explanation or could be tightened' anchor. It is not a 2 because there is no padded prose and the anti-pattern WHY rationales and selection workflow add genuine non-obvious value; it is not a 4 because the pattern catalog could be collapsed to use-when triggers with details delegated to references/detailed-examples.md.

3 / 5

Actionability

Concrete, near-executable TypeScript examples per pattern, copy-paste rg commands for candidate discovery ("rg -n \"if.*type.*==|switch.*\(type\)|instanceof\" src"), and fill-in templates with worked examples match 'mostly executable guidance; concrete code or commands with minor gaps'. Not a 5 because several examples are skeletal ({ /* ... */ } bodies, undefined Email/User types) rather than fully copy-paste ready.

4 / 5

Workflow Clarity

The three-step Pattern Selection Workflow is clearly sequenced with an explicit Output artifact per step, a measurability requirement ('ensure the win condition is measurable, not aspirational'), and a documentation template that includes a Validation line — matching 'clear sequence with most checkpoints present; minor validation gaps'. Not a 5 because there is no feedback loop for when a chosen pattern fails its win condition or fit questions; not a 3 because checkpoints are explicit rather than implicit. The destructive/batch cap does not apply since this is a decision-making skill.

4 / 5

Progressive Disclosure

The body is well-sectioned and all 11 referenced files under 'Pattern Reference Files' exist as one-level-deep markdown files with no nested references, matching 'good structure; most content appropriately placed; references mostly clear'. Not a 5 because the references are listed as a flat end-of-file catalog rather than contextually signaled from the relevant sections, and the inlined pattern catalog is content that could itself live in the existing detailed-examples.md reference.

4 / 5

Total

15

/

20

Passed

Description

83%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 strong description that clearly states what the skill does and provides an explicit, multi-trigger 'Use when' clause with natural user language. Trigger coverage and distinctiveness are good rather than comprehensive, with a couple of overlap-prone generic phrases.

DimensionReasoningScore

Specificity

"Select and apply structural design patterns (Strategy, Factory, Adapter, Observer, etc.) to reduce complexity in class design" names the domain plus concrete actions and specific pattern names, matching the 'several specific actions; minor gaps' anchor. It falls short of a 5 because the action verbs are limited to select/apply rather than a comprehensive action inventory, and above a 3 because coverage goes beyond 1-2 generic actions.

4 / 5

Completeness

It explicitly answers both: what ("Select and apply structural design patterns ... to reduce complexity in class design") and when ("Use when evaluating ... refactoring conditional logic ... resolving inheritance problems, or deciding how to structure classes") with concrete trigger phrases. Clearly matches the top anchor; neither component is missing or merely implied.

5 / 5

Trigger Term Quality

Natural user phrases are present — "refactoring conditional logic", "too many if/else statements", "code smells", "resolving inheritance problems", "deciding how to structure classes" — giving good keyword coverage with only a few variants missing (e.g., switch statements, duplication). Not a 5 because synonyms are not comprehensive and it leans slightly formal ("evaluating whether a pattern solves a concrete problem") over the phrasing a user would naturally type.

4 / 5

Distinctiveness Conflict Risk

The niche is clear (structural design patterns at the class level) with distinct triggers like if/else chains and inheritance problems, so it is mostly distinguishable from related skills. Not a 5 because broad phrases like "code smells" and "reduce complexity" could overlap with general refactoring or SOLID-principles skills, though the pattern-specific triggers keep conflict risk minor.

4 / 5

Total

17

/

20

Passed

Validation

100%

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

Validation16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
pantheon-org/tekhne
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.