CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

api-security-hardening

REST API security hardening with authentication, rate limiting, input validation, security headers. Use for production APIs, security audits, defense-in-depth, or encountering vulnerabilities, injection attacks, CORS issues.

84

1.37x
Quality

82%

Does it follow best practices?

Impact

96%

1.37x

Average score across 3 eval scenarios

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

72%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 well-structured, executable hardening reference with excellent progressive disclosure and valuable maintenance notes. Its main weaknesses are the missing authentication example (despite being claimed) and the absence of any verification workflow to confirm the hardening layers actually work.

Suggestions

Add an explicit verification step to the workflow (e.g., 'Verify: curl -I https://api.example.com/ should return the security headers; repeated requests should return 429 after the limit'), so the checklist becomes a tested checkpoint rather than an implicit one.

Add a minimal authentication middleware example (or a pointer to one), since both the description and the 'Authentication on all protected routes' checklist item promise it but the body never shows it.

Remove or merge the manual 'Security Headers' middleware with the helmet() block, noting which headers helmet already sets to avoid duplicated configuration.

DimensionReasoningScore

Conciseness

The body is lean and code-first with zero concept explanation and useful maintenance notes (deprecated xss-clean, express-validator v7 escape removal). It misses 5 because the manual 'Security Headers' middleware duplicates headers already set by the helmet() middleware applied earlier — a redundant block that could be trimmed.

4 / 5

Actionability

Executable, configured code throughout (helmet stack, two rate-limit tiers, a complete express-validator chain, header middleware, a checklist). Not 5: the handler ends at a '// Process request' placeholder, and despite 'Authentication on all protected routes' in the checklist and description, no authentication implementation (e.g., JWT/session middleware) is shown.

4 / 5

Workflow Clarity

Sections imply an application order (middleware stack ordering) and the checklist acts as a summary checkpoint, but there is no explicit sequence guidance and no verification steps (e.g., curl -I to confirm headers are present, triggering the limiter to confirm a 429 response). This matches the 3 anchor: sequence present but checkpoints missing or implicit.

3 / 5

Progressive Disclosure

The ~90-line body keeps the primary Express implementation inline with clean section headers, and defers Python/Nginx to a clearly signaled, one-level-deep reference (references/python-nginx.md) whose bullet list accurately describes the actual file contents. This matches the 5 anchor: clear overview with well-signaled references and easy navigation.

5 / 5

Total

16

/

20

Passed

Description

83%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 strong description: concrete capability list plus an explicit, multi-trigger 'Use for' clause covering both what and when. Its only weaknesses are a few missing natural synonyms in the trigger list and slight overlap risk with broader security skills.

DimensionReasoningScore

Specificity

Names the domain and several concrete capabilities ('authentication, rate limiting, input validation, security headers'), matching the 'several specific actions with minor gaps' anchor. It falls short of 5 because the what-clause omits capabilities the body covers (CORS configuration, audit logging, production error handling).

4 / 5

Completeness

Explicitly answers both: the what ('REST API security hardening with authentication, rate limiting, input validation, security headers') and a concrete 'Use for...' trigger list. This matches the 5 anchor with multiple concrete trigger phrases, clearly above the 4 anchor where 'when' is only adequate.

5 / 5

Trigger Term Quality

'production APIs, security audits, defense-in-depth, or encountering vulnerabilities, injection attacks, CORS issues' provides good natural-phrase coverage a user would actually say. Not 5 because common variations like OWASP, penetration testing, XSS, or 'secure my API' are missing.

4 / 5

Distinctiveness Conflict Risk

'REST API security hardening' carves a clear niche with API-specific triggers, but 'security audits' and 'defense-in-depth' are broad enough to overlap with a generic security-audit or web-security skill. Minor overlap risk with closely related skills fits 4 rather than the minimal-conflict 5 anchor.

4 / 5

Total

17

/

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.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

secondsky/claude-skills

Path

plugins/api-security-hardening/skills/api-security-hardening/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.