CtrlK
BlogDocsLog inGet started
Tessl Logo

backend-dev-guidelines

You are a senior backend engineer operating production-grade services under strict architectural and reliability constraints. Use when routes, controllers, services, repositories, express middleware, or prisma database access.

40

Quality

38%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

—

The risk profile of this skill

Fix and improve this skill with Tessl

tessl review fix ./skills/backend-dev-guidelines/SKILL.md

The canonical home for this skill is backend-dev-guidelines in sickn33/agentic-awesome-skills

SKILL.md
Quality
Evals
Security

Quality

Content

27%Scale 1-3

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

This skill is a comprehensive but overly verbose backend development guideline that tries to cover too much in a single file. While it provides useful concrete code examples and clear architectural rules, it suffers from significant token waste through explanations of concepts Claude already understands, redundant sections, and a custom scoring framework (BFRI) of questionable value. The monolithic structure and lack of progressive disclosure make it inefficient as a context-window resource.

Suggestions

Remove or drastically shorten the BFRI section—it adds ~40 lines of overhead for a scoring framework that Claude can assess intuitively; replace with a simple 'assess risk before proceeding' note.

Split into SKILL.md (concise overview with key rules and examples) plus reference files like ARCHITECTURE.md, ANTI_PATTERNS.md, and DIRECTORY_STRUCTURE.md to improve progressive disclosure.

Remove redundant content: the duplicate 'When to Use' sections, the 'Skill Status' section, explanations of what controllers/services are, and the introductory paragraph about what the skill defines.

Provide actual implementations or file paths for BaseController, asyncErrorWrapper, and unifiedConfig rather than just referencing them—these are the most actionable pieces and currently missing.

DimensionReasoningScore

Conciseness

The skill is extremely verbose at ~250+ lines. It explains concepts Claude already knows (layered architecture, DI, what controllers do), includes a custom scoring framework (BFRI) that adds significant overhead, has redundant sections (two 'When to Use' sections, anti-patterns that repeat earlier rules), and includes meta-commentary like 'This skill defines how backend code must be written, not merely suggestions' and status badges that waste tokens.

1 / 3

Actionability

The skill provides concrete TypeScript code examples for most patterns (routes, controllers, Zod validation, DI, error handling), which is good. However, many examples are incomplete fragments rather than fully executable code, and key pieces like BaseController, asyncErrorWrapper, and unifiedConfig are referenced but never defined, making them not copy-paste ready without additional context.

2 / 3

Workflow Clarity

The validation checklist at the end provides a clear sequence of checks, and the layered architecture flow is well-defined. However, there are no explicit validation checkpoints or feedback loops for the development process itself—no 'validate then fix then retry' pattern. For a skill involving database operations and destructive changes, the absence of verification steps in the workflow caps this at 2.

2 / 3

Progressive Disclosure

The entire skill is a monolithic wall of text with 14 numbered sections all inline. There are no bundle files, yet the content is long enough to warrant splitting (e.g., BFRI could be a separate reference, anti-patterns could be a checklist file, directory structure could be separate). Section 12 references other skills but provides no links or paths. The content would benefit significantly from being split into overview + reference files.

1 / 3

Total

6

/

12

Passed

Description

50%Scale 1-3

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 a backend engineering domain with specific technology references (Express, Prisma) but fails to articulate concrete actions the skill performs. It uses a persona-based framing ('You are a senior backend engineer') rather than describing capabilities in third person. The trigger terms cover some relevant keywords but miss many common user phrasings for backend development tasks.

Suggestions

Replace the persona framing with concrete action descriptions in third person, e.g., 'Creates and modifies Express routes, controllers, service layers, and repository patterns. Implements Prisma database schemas, queries, and migrations.'

Expand trigger terms to include natural user language like 'API', 'REST endpoint', 'database query', 'Node.js', 'backend', 'CRUD', 'ORM', and 'schema'.

Make the 'Use when' clause more explicit about scenarios, e.g., 'Use when the user asks to build or modify backend APIs, create database models, add middleware, or work with Express/Prisma projects.'

DimensionReasoningScore

Specificity

The description names the domain ('senior backend engineer operating production-grade services') and mentions some specific components (routes, controllers, services, repositories, middleware, prisma), but does not list concrete actions like 'create endpoints', 'write migrations', or 'implement CRUD operations'. It describes what the skill relates to, not what it does.

2 / 3

Completeness

It has a 'Use when' clause which addresses the 'when' question, and the opening sentence loosely addresses 'what' (operating production-grade services). However, the 'what' is vague — it describes a persona rather than concrete capabilities, and the 'when' clause is just a list of components without explaining what actions are performed.

2 / 3

Trigger Term Quality

Includes relevant technical keywords like 'routes', 'controllers', 'services', 'repositories', 'express middleware', and 'prisma database access' that users might mention. However, it misses common natural variations like 'API', 'REST', 'endpoint', 'database query', 'backend', 'Node.js', or 'ORM' that users would naturally say.

2 / 3

Distinctiveness Conflict Risk

The mention of Express middleware and Prisma provides some specificity to a particular tech stack, which helps distinguish it. However, terms like 'routes', 'controllers', 'services', and 'repositories' are very broad backend concepts that could overlap with skills for other frameworks or languages.

2 / 3

Total

8

/

12

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.

Validation — 10 / 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
popey/claude-code-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.