CtrlK
BlogDocsLog inGet started
Tessl Logo

nodejs-best-practices

Node.js development principles and decision-making. Framework selection, async patterns, security, and architecture. Teaches thinking, not copying.

41

Quality

41%

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 ./plugins/AI-Agents-Safe-Coding-Skills/skills/nodejs-best-practices/SKILL.md

The canonical home for this skill is nodejs-best-practices in administrakt0r/AI-Agents-Safe-Coding-Skills

SKILL.md
Quality
Evals
Security

Quality

Content

42%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

This skill provides a broad overview of Node.js decision-making principles but suffers from low actionability—it explicitly avoids concrete code examples in favor of conceptual diagrams and tables that largely restate knowledge Claude already possesses. The decision trees are a useful structural element, but the skill would benefit significantly from executable examples, concrete commands, and references to detailed supporting files. Much of the content (HTTP status codes, async patterns, layered architecture) is common knowledge that doesn't need to be taught to Claude.

Suggestions

Add executable code examples for at least the key patterns (e.g., a Hono hello-world, a Fastify route with validation, centralized error handling middleware) to improve actionability from conceptual to concrete.

Remove or drastically condense sections that explain concepts Claude already knows well (HTTP status codes, what async/await does, what layered architecture means) to improve conciseness.

Extract detailed content (security checklist, testing strategies, framework comparisons) into separate bundle files and reference them from the main SKILL.md to improve progressive disclosure.

Add concrete validation steps to the decision checklist—e.g., 'Run `npm audit` after dependency selection' or 'Verify cold start time with `time node index.js`'—to improve workflow clarity.

DimensionReasoningScore

Conciseness

The skill is moderately efficient but includes unnecessary explanations Claude already knows (e.g., what layered architecture is, why testability matters, what each HTTP status code means). The ASCII decision trees are a nice format but some sections like the security checklist and error response philosophy restate common knowledge. The 'How to Use This Skill' meta-section and the closing quote are also unnecessary padding.

3 / 5

Actionability

The skill explicitly teaches 'thinking, not copying' and provides almost no executable code—just ASCII diagrams and tables of concepts Claude already understands. While the decision trees provide some structure, there are no concrete code examples, commands, or copy-paste ready snippets for any of the frameworks, patterns, or tools mentioned. The few code-fenced blocks are pseudo-diagrams, not executable code.

2 / 5

Workflow Clarity

The decision checklist at the end provides a rough workflow, and the decision trees give some sequencing for framework selection. However, there are no validation checkpoints, no feedback loops, and no concrete step-by-step processes for actually implementing any of the decisions. The architecture section describes layers but doesn't show how to set them up or verify correctness.

3 / 5

Progressive Disclosure

The content is organized into clear numbered sections with headers, which aids navigation. However, there are no references to external files despite several sections (security checklist, testing patterns, framework comparisons) that could benefit from separate detailed documents. The content is somewhat monolithic at ~250 lines with no bundle files to support it.

3 / 5

Total

11

/

20

Passed

Description

41%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 identifies the domain (Node.js) and lists topic areas but lacks concrete actions, explicit trigger guidance, and natural user-facing keywords. The philosophical framing ('Teaches thinking, not copying') is distinctive but doesn't help Claude determine when to select this skill. It needs a 'Use when...' clause and more specific, actionable language.

Suggestions

Add an explicit 'Use when...' clause with trigger phrases like 'Use when the user asks about Node.js best practices, choosing a framework (Express, Fastify, Koa), handling async/await patterns, or designing Node.js application architecture.'

Replace abstract topic labels with concrete actions, e.g., 'Guides framework selection between Express/Fastify/Koa, explains async/await and callback patterns, recommends security practices for Node.js APIs.'

Include natural synonyms and related terms users would say: 'backend JavaScript', 'server-side JS', 'npm', 'REST API design', 'middleware', 'event loop'.

DimensionReasoningScore

Specificity

Names the domain (Node.js development) and lists several areas (framework selection, async patterns, security, architecture), but these are topic areas rather than concrete actions. No specific verbs describing what the skill actually does beyond 'teaches thinking.'

3 / 5

Completeness

Has a partial 'what' (Node.js development principles covering framework selection, async patterns, security, architecture) but no explicit 'when' clause. The absence of a 'Use when...' clause caps this at 3 per guidelines, and the 'what' is vague enough to warrant a 2.

2 / 5

Trigger Term Quality

Includes relevant keywords like 'Node.js', 'framework selection', 'async patterns', 'security', and 'architecture', but misses natural user phrases like 'Express', 'npm', 'middleware', 'REST API', 'backend', or 'server-side JavaScript'. The terms are somewhat abstract.

3 / 5

Distinctiveness Conflict Risk

Specifying 'Node.js' helps distinguish it from generic coding skills, but 'security' and 'architecture' are broad enough to overlap with many other development skills. The 'principles and decision-making' framing is somewhat distinctive but could still conflict with general backend or JavaScript skills.

3 / 5

Total

11

/

20

Passed

Validation

90%

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

Validation10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

Total

10

/

11

Passed

Repository
administrakt0r/AI-Agents-Safe-Coding-Skills
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.