CtrlK
BlogDocsLog inGet started
Tessl Logo

dmr-from-drf

Migrate an existing Django API from Django REST Framework to django-modern-rest while preserving routes, request/response contracts, auth, permissions, throttling, pagination, and test coverage. Use when replacing APIView/ViewSet/GenericAPIView and DRF serializers/routers with dmr controllers/routers and typed DTOs.

65

Quality

77%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./.agents/skills/dmr-from-drf/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 is a well-structured, actionable migration playbook with required gates and a clean one-level reference, suited to an instruction-only skill. Its main weaknesses are recurring preservation directives that hurt conciseness and an implicit rather than explicit error-recovery loop.

Suggestions

Consolidate the repeated auth/permission/throttle/pagination/parser-renderer parity directives: state them once in Migration Policy and reference that from Translation Rules and Pitfalls instead of restating.

Make the validation feedback loop explicit in step 11/12 (e.g., 'If CI fails, fix and re-run the same entrypoint until green before marking the slice done').

Consider moving the Migration Pitfalls and/or Translation Rules sections into a separate reference file to keep SKILL.md a leaner overview.

DimensionReasoningScore

Conciseness

The body assumes Claude's competence and avoids beginner-concept padding, but preservation directives ('Preserve auth, permissions, and throttle semantics', pagination/parser/renderer parity) recur across Migration Policy, Translation Rules, and Pitfalls and could be consolidated.

3 / 5

Actionability

Concrete named constructs and replacements are given throughout (Controller[...], Body[...]/Query[...]/Path[...]/Headers[...]/Cookies[...], ResponseSpec, validate_responses), with the detailed mapping table offloaded to the reference file; minor gaps in showing full worked code in the body itself.

4 / 5

Workflow Clarity

A clear 12-step sequence includes required gates (step 4 error strategy, step 11 repository-native CI, step 12 finish gate requiring linters/tests/report), but the validate->fix->retry feedback loop is implicit rather than spelled out.

4 / 5

Progressive Disclosure

The SKILL.md acts as an overview with one clearly signaled, one-level-deep reference (references/drf-to-dmr-map.md, a real file) holding the construct-to-construct mapping; some inline rules and pitfalls could be split into separate reference files.

4 / 5

Total

15

/

20

Passed

Description

87%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 specific, trigger-rich, and explicitly pairs a clear 'what' with a concrete 'Use when' clause for a narrow migration niche. The only weakness is a slightly limited set of distinct action verbs, keeping specificity just below the top anchor.

DimensionReasoningScore

Specificity

Names the domain and several concrete actions ('Migrate an existing Django API from Django REST Framework to django-modern-rest while preserving routes, request/response contracts, auth, permissions, throttling, pagination, and test coverage'), but the distinct action verbs are limited to migrate/preserve/replace rather than a broad set.

4 / 5

Completeness

Explicitly answers both what ('Migrate an existing Django API... while preserving...') and when ('Use when replacing APIView/ViewSet/GenericAPIView and DRF serializers/routers with dmr controllers/routers and typed DTOs') with concrete trigger constructs.

5 / 5

Trigger Term Quality

Strong coverage of natural and technical terms a user would say ('Django REST Framework', 'DRF', 'APIView/ViewSet/GenericAPIView', 'serializers/routers', 'dmr controllers/routers', 'typed DTOs'), with a few common variations like 'djangorestframework' or 'DRF to dmr' absent.

4 / 5

Distinctiveness Conflict Risk

A narrow DRF-to-dmr migration niche with distinct, framework-specific triggers makes conflict with other skills minimal.

5 / 5

Total

18

/

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
wemake-services/django-modern-rest
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.