CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

nestjs-patterns

NestJS architecture patterns for modules, controllers, providers, DTO validation, guards, interceptors, config, and production-grade TypeScript backends.

Quality

80%

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 ./.kiro/skills/nestjs-patterns/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

82%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 tight, highly actionable pattern reference with executable code and directive guidance that respects token budget — it never explains what Claude already knows. Its weaknesses are minor: a few fragmentary snippets and a monolithic single-file layout where a couple of sections could be split into reference files.

Suggestions

Complete the fragmentary snippets — define the @Roles() decorator and AuthenticatedRequest type in the auth example, and add at least one assertion to the testing example.

Move the full HttpExceptionFilter implementation and the test-harness boilerplate into a references/ file (e.g. references/testing.md) with a one-line pointer, keeping SKILL.md as a leaner overview.

Drop the 'When to Activate' section or fold it into the description/trigger guidance, since it duplicates the frontmatter's job and adds tokens without new information.

DimensionReasoningScore

Conciseness

The body is lean throughout: every section is a compact code example followed by terse directive bullets ('Controllers should stay thin', 'Validate env at boot, not lazily'), with no explanation of concepts Claude already knows about NestJS or TypeScript. It matches the 5 anchor — every token earns its place — and is clearly not the 4 anchor, which reserves room for trimmable over-explanation that is absent here.

5 / 5

Actionability

Most guidance is copy-paste-ready executable code covering the common cases (bootstrap with global pipes, module/controller/service wiring, DTO decorators, exception filter, config validation, test setup). It falls short of the 5 anchor on minor gaps: the auth snippet uses undefined '@Roles()' and 'AuthenticatedRequest', and the testing example has no assertions — fragments rather than fully self-contained examples.

4 / 5

Workflow Clarity

Sections are logically sequenced from project structure through bootstrap, module wiring, DTOs, auth, errors, config, persistence, and testing to production defaults, and directive bullets act as per-topic checkpoints ('Terminate on invalid env/config instead of booting partially'). It is not a 5 because this is a pattern reference rather than a multi-step process, so there are no explicit step sequences or validate-fix-retry loops; it is above the 3 anchor since nothing here involves destructive or batch operations that would require validation checkpoints.

4 / 5

Progressive Disclosure

No bundle files exist, so this is a single-file skill; its ~230 lines are organized into clear, well-named sections that are easy to navigate. It sits at the 4 anchor ('good structure; most content appropriately placed; minor organization gaps') rather than 5 because some near-complete implementations (the exception filter, the test harness setup) could live in one-level-deep reference files to keep SKILL.md as a leaner overview, and the 'When to Activate' section partially duplicates the frontmatter description.

4 / 5

Total

17

/

20

Passed

Description

70%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 specific, well-scoped description that clearly identifies the NestJS niche with strong trigger vocabulary, but it omits any 'when to use' trigger guidance, which caps its completeness. Adding an explicit activation clause would raise it to the top tier.

Suggestions

Append a trigger clause such as 'Use when building or refactoring NestJS APIs and services, or when the user mentions NestJS, modules, providers, guards, or interceptors.'

Include natural trigger variations users actually say, e.g. 'NestJS API', 'Nest service', or '.ts backend', to broaden keyword coverage.

Mention the testing and database/persistence coverage the body actually provides so the description fully represents the skill's scope.

DimensionReasoningScore

Specificity

The description enumerates concrete subject areas — 'modules, controllers, providers, DTO validation, guards, interceptors, config' — giving several specific capabilities with only minor gaps (e.g., testing and persistence are not named). It falls short of the 5 anchor because these are noun-listed domains rather than explicit actions ('Extract text and tables...'), and above the 3 anchor because coverage goes well beyond 1-2 actions.

4 / 5

Completeness

The 'what' is clearly stated (NestJS architecture patterns across listed areas), but there is no 'Use when...' clause or equivalent explicit trigger guidance — the judging guidelines explicitly cap completeness at 3 in that case. It is not a 2 because the 'what' is specific and comprehensive.

3 / 5

Trigger Term Quality

Strong natural keywords: 'NestJS', 'TypeScript backends', 'guards', 'interceptors', 'DTO validation', 'config' — terms a user working in this framework would naturally say. A few natural variations are missing ('Nest JS', 'NestJS API/service', 'backend', file extensions like .ts), so it sits between the 4 anchor and the comprehensive 5 anchor, closer to 4.

4 / 5

Distinctiveness Conflict Risk

'NestJS' plus framework-specific terms ('guards', 'interceptors', 'DTO validation', 'providers') establish a clear niche with distinct triggers and minimal conflict risk with generic TypeScript or backend skills. It clearly matches the 5 anchor rather than the 4 anchor, whose overlap risk applies to broader multi-domain descriptions.

5 / 5

Total

16

/

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

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository

affaan-m/ECC

Path

.kiro/skills/nestjs-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.