CtrlK
BlogDocsLog inGet started
Tessl Logo

api-design-principles

Master REST and GraphQL API design principles to build intuitive, scalable, and maintainable APIs that delight developers. Use when designing new APIs, reviewing API specifications, or establishing API design standards.

72

1.13x
Quality

41%

Does it follow best practices?

Impact

93%

1.13x

Average score across 6 eval scenarios

SecuritybySnyk

Passed

No known issues

Optimize this skill with Tessl

npx tessl skill review --optimize ./plugins/backend-development/skills/api-design-principles/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Discovery

67%

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 has a solid structure with an explicit 'Use when...' clause and identifies its domain clearly. However, it relies on aspirational/marketing language ('delight developers') instead of listing concrete capabilities, and its trigger terms could be more comprehensive to cover the natural vocabulary users would employ when needing API design help.

Suggestions

Replace vague aspirational language ('intuitive, scalable, and maintainable APIs that delight developers') with specific concrete actions like 'define resource naming, design pagination, structure error responses, plan versioning strategies, create OpenAPI/GraphQL schemas'.

Expand trigger terms to include common variations users would naturally say: 'endpoints', 'routes', 'OpenAPI', 'Swagger', 'schema design', 'API versioning', 'request/response format'.

DimensionReasoningScore

Specificity

Names the domain (REST and GraphQL API design) and mentions some actions ('designing new APIs, reviewing API specifications, establishing API design standards'), but the core description uses vague aspirational language ('intuitive, scalable, and maintainable APIs that delight developers') rather than listing concrete specific actions like 'define resource naming conventions, design pagination schemes, structure error responses'.

2 / 3

Completeness

Clearly answers both 'what' (REST and GraphQL API design principles) and 'when' with an explicit 'Use when...' clause covering three trigger scenarios: designing new APIs, reviewing API specifications, or establishing API design standards.

3 / 3

Trigger Term Quality

Includes some relevant keywords like 'REST', 'GraphQL', 'API design', 'API specifications', and 'API design standards', but misses common natural variations users might say such as 'endpoints', 'routes', 'OpenAPI', 'Swagger', 'schema design', 'API versioning', 'request/response format', or 'API documentation'.

2 / 3

Distinctiveness Conflict Risk

The focus on REST and GraphQL API design is somewhat specific, but 'designing new APIs' and 'reviewing API specifications' could overlap with general coding skills, backend development skills, or architecture skills. The phrase 'Master REST and GraphQL API design principles' is broad enough to potentially conflict with more specific API-related skills.

2 / 3

Total

9

/

12

Passed

Implementation

14%

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

This skill reads like a textbook chapter on API design rather than an actionable skill for Claude. It is excessively verbose, explaining fundamental concepts Claude already knows (HTTP methods, REST principles, what GraphQL is), while lacking a clear workflow for actually designing an API. The content would benefit enormously from being condensed to key decision points and non-obvious patterns, with detailed code examples moved to separate reference files.

Suggestions

Remove all explanations of concepts Claude already knows (HTTP method semantics, what REST/GraphQL are, basic definitions) and focus only on opinionated decisions and non-obvious patterns.

Add a clear step-by-step workflow for API design (e.g., 1. Identify resources → 2. Define endpoints → 3. Design error responses → 4. Validate against OpenAPI spec) with explicit validation checkpoints.

Split the monolithic content into separate files: a concise SKILL.md overview with references to REST_PATTERNS.md, GRAPHQL_PATTERNS.md, and ERROR_HANDLING.md.

Make code examples truly executable by either providing complete working examples or explicitly noting which functions need implementation, rather than referencing undefined helpers like build_query() and fetch_users().

DimensionReasoningScore

Conciseness

Extremely verbose at ~400+ lines. Explains basic concepts Claude already knows well (REST methods, HTTP status codes, what GraphQL is, resource-oriented architecture). The 'When to Use This Skill' section, 'Core Concepts' explaining GET/POST/PUT/PATCH/DELETE semantics, and 'Common Pitfalls' bullet points are all things Claude inherently understands. Much of this is textbook content that wastes tokens.

1 / 3

Actionability

Contains concrete Python/FastAPI code examples and GraphQL schema definitions that are mostly executable, but many rely on undefined helper functions (build_query, fetch_users, count_users, fetch_user_by_id, etc.) making them not truly copy-paste ready. The code serves more as illustrative patterns than executable guidance.

2 / 3

Workflow Clarity

There is no clear workflow or sequenced process for designing an API. The content is a reference dump of patterns and best practices without any step-by-step process for how to approach API design, no validation checkpoints, and no decision framework for choosing between approaches. For a skill about 'designing APIs,' there should be a clear workflow (e.g., define resources → design endpoints → add pagination → validate with OpenAPI spec).

1 / 3

Progressive Disclosure

Monolithic wall of text with no references to external files and no bundle files. All content—REST patterns, GraphQL patterns, DataLoader implementation, best practices—is crammed into a single file. The GraphQL schema, resolver patterns, and DataLoader code could easily be split into separate reference files with the SKILL.md serving as a concise overview.

1 / 3

Total

5

/

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.

Validation10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (519 lines); consider splitting into references/ and linking

Warning

Total

10

/

11

Passed

Repository
wshobson/agents
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.