CtrlK
BlogDocsLog inGet started
Tessl Logo

dto-contract

Defines DTO structure, lifecycle, and transformation rules across the application

58

Quality

67%

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 ./.claude/skills/dto-contract/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

85%

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 lean, well-structured contract definition with executable PHP examples and clear decision guidance for when DTOs apply. Its only weakness is mild verbosity in the repeated getter/setter boilerplate.

DimensionReasoningScore

Conciseness

The body is mostly efficient with crisp MUST/MUST NOT lists, but the full three-property getter/setter code block repeats boilerplate that could be tightened to one or two properties to illustrate the pattern.

2 / 3

Actionability

It provides a complete, executable PHP DTO class plus concrete transformer calls ('InvoiceTransformer::fromModel($invoice)', 'fromArray($data)'), giving copy-paste-ready guidance.

3 / 3

Workflow Clarity

As a single-purpose rules skill it gives unambiguous decision guidance (when DTOs are required vs. not) and a clear construction direction ('Model/Array -> Transformer -> DTO -> Service'); no destructive/batch operations require validation checkpoints.

3 / 3

Progressive Disclosure

The skill is a single self-contained file with no need for external references, organized into seven well-signaled numbered sections, satisfying the well-organized-sections bar for progressive disclosure.

3 / 3

Total

11

/

12

Passed

Description

50%

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 clearly identifies the DTO domain and its concerns but stays abstract and lacks any 'Use when' trigger guidance. It is competent but not exemplary, scoring 2 across all dimensions.

Suggestions

Add an explicit trigger clause, e.g. 'Use when designing data transfer objects, converting models/arrays to structured output, or stabilizing data shape across service boundaries.'

Replace abstract verbs with concrete actions the skill performs, e.g. 'Defines, structures, and transforms DTOs' alongside concrete verbs like 'generate', 'map', or 'enforce'.

Include natural user-facing terms such as 'data transfer object', 'model-to-DTO mapping', and 'transformers' to improve trigger coverage.

DimensionReasoningScore

Specificity

The description names the DTO domain and a few actions ('Defines DTO structure, lifecycle, and transformation rules') but the actions are abstract rather than concrete; it does not reach the multiple-specific-actions bar of a 3.

2 / 3

Completeness

It states what the skill does but provides no 'Use when...' or equivalent trigger guidance, so per the guideline completeness is capped at 2.

2 / 3

Trigger Term Quality

'DTO structure, lifecycle, and transformation rules' includes the relevant term 'DTO' but is jargon-heavy and omits common variations a user would actually say (e.g. 'data transfer object', 'model to DTO', 'transform').

2 / 3

Distinctiveness Conflict Risk

The DTO niche is somewhat specific, but without explicit triggers and with the generic 'across the application' phrasing it could still overlap with adjacent architecture/data skills.

2 / 3

Total

8

/

12

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.

Validation15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

Total

15

/

16

Passed

Repository
Bottelet/DaybydayCRM
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.