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.
Install with Tessl CLI
npx tessl i github:wshobson/agents --skill api-design-principlesOverall
score
65%
Does it follow best practices?
If you maintain this skill, you can automatically optimize it using the tessl CLI to improve its score:
npx tessl skill review --optimize ./path/to/skillAgent success when using this skill
Validation for skill structure
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.
This description has a solid structure with an explicit 'Use when' clause that clearly defines trigger scenarios. However, it relies on marketing-style language ('delight developers', 'Master') rather than concrete capabilities, and could benefit from more specific trigger terms that users naturally use when discussing API design.
Suggestions
Replace vague qualifiers ('intuitive, scalable, maintainable', 'delight developers') with specific actions like 'define endpoints, structure request/response schemas, handle versioning, design error responses'
Add more natural trigger terms users would say: 'endpoints', 'routes', 'OpenAPI', 'swagger', 'API documentation', 'request/response format'
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (REST and GraphQL API design) and mentions some actions (designing, reviewing, establishing standards), but uses vague qualifiers like 'intuitive, scalable, and maintainable' and 'delight developers' which are abstract rather than concrete capabilities. | 2 / 3 |
Completeness | Clearly answers both what (API design principles for REST and GraphQL) and when (designing new APIs, reviewing specifications, establishing standards) with an explicit 'Use when' clause containing specific triggers. | 3 / 3 |
Trigger Term Quality | Includes relevant keywords like 'REST', 'GraphQL', 'API design', 'API specifications', but misses common variations users might say such as 'endpoints', 'routes', 'schema', 'OpenAPI', 'swagger', or 'API documentation'. | 2 / 3 |
Distinctiveness Conflict Risk | Reasonably specific to API design but could overlap with general coding skills or documentation skills. The REST/GraphQL focus helps distinguish it, but 'API specifications' and 'design standards' are somewhat broad. | 2 / 3 |
Total | 9 / 12 Passed |
Implementation
50%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
The skill provides excellent, executable code examples for both REST and GraphQL APIs, demonstrating strong actionability. However, it suffers from significant verbosity, explaining basic concepts Claude already knows (HTTP methods, what REST is, GraphQL fundamentals). The content would benefit from aggressive trimming and better organization into a workflow rather than a reference document.
Suggestions
Remove the 'Core Concepts' section entirely - Claude knows HTTP methods, REST principles, and GraphQL basics. Jump straight to patterns.
Trim 'When to Use This Skill' to 2-3 bullet points maximum; the current list is exhaustive but unnecessary.
Add a clear workflow section: 'API Design Process: 1. Define resources → 2. Design endpoints → 3. Define error responses → 4. Add pagination → 5. Document with OpenAPI'
Move detailed code examples to referenced files (e.g., references/rest-patterns.md) and keep only minimal examples in the main skill.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | Extremely verbose with extensive explanations of concepts Claude already knows (HTTP methods, REST principles, GraphQL basics). The 'When to Use This Skill' and 'Core Concepts' sections explain fundamentals that don't need explanation. Could be reduced by 60%+ while preserving value. | 1 / 3 |
Actionability | Provides fully executable Python code examples with FastAPI, Pydantic models, and complete GraphQL schema definitions. Code is copy-paste ready with proper imports and realistic implementations. | 3 / 3 |
Workflow Clarity | Patterns are presented as isolated examples rather than a clear workflow for designing an API. No validation checkpoints or sequence for the design process itself. The 'Best Practices' and 'Common Pitfalls' sections are lists without integration into a coherent workflow. | 2 / 3 |
Progressive Disclosure | References external files at the end (references/, assets/, scripts/) which is good, but the main content is a monolithic wall of text with everything inline. The core concepts and patterns sections could be split into separate files with just summaries here. | 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
| Criteria | Description | Result |
|---|---|---|
skill_md_line_count | SKILL.md is long (529 lines); consider splitting into references/ and linking | Warning |
Total | 10 / 11 Passed | |
Table of Contents
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.