API design principles and decision-making. REST vs GraphQL vs tRPC selection, response formats, versioning, pagination.
60
41%
Does it follow best practices?
Impact
92%
1.14xAverage score across 3 eval scenarios
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/antigravity-api-patterns/SKILL.mdQuality
Discovery
47%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 provides decent keyword coverage for API design topics but reads as a list of subject areas rather than concrete capabilities. It critically lacks a 'Use when...' clause, making it unclear when Claude should select this skill. Adding explicit trigger guidance and action-oriented language would significantly improve it.
Suggestions
Add a 'Use when...' clause, e.g., 'Use when the user asks about designing APIs, choosing between REST/GraphQL/tRPC, or needs guidance on API versioning, pagination, or response format decisions.'
Rewrite with action verbs to describe concrete capabilities, e.g., 'Guides API architecture decisions, evaluates trade-offs between REST, GraphQL, and tRPC, recommends versioning strategies and pagination patterns.'
Add additional trigger terms users might say, such as 'endpoint design', 'API architecture', 'HTTP API', 'rate limiting', or 'API best practices'.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (API design) and lists several specific topics (REST vs GraphQL vs tRPC selection, response formats, versioning, pagination), but these read more like topic areas than concrete actions. No action verbs like 'design', 'evaluate', or 'implement' are used. | 2 / 3 |
Completeness | Describes 'what' at a topic level but completely lacks a 'Use when...' clause or any explicit trigger guidance for when Claude should select this skill. Per rubric guidelines, a missing 'Use when...' clause caps completeness at 2, and the 'what' is also weak (topics rather than actions), warranting a 1. | 1 / 3 |
Trigger Term Quality | Includes strong natural keywords users would say: 'API design', 'REST', 'GraphQL', 'tRPC', 'versioning', 'pagination', 'response formats'. These are terms developers naturally use when seeking API design guidance. | 3 / 3 |
Distinctiveness Conflict Risk | The mention of specific technologies (REST, GraphQL, tRPC) and specific concerns (versioning, pagination) provides some distinctiveness, but 'API design principles' is broad enough to potentially overlap with general backend development or architecture skills. | 2 / 3 |
Total | 8 / 12 Passed |
Implementation
35%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This skill functions primarily as a table of contents and checklist rather than a substantive guide. While the organization and content map are well-structured, the complete absence of actionable content—no code examples, no concrete decision criteria, no executable guidance—means Claude would need to rely entirely on referenced files that don't exist in the bundle. The anti-patterns and checklist sections are too generic to provide meaningful value without the supporting files.
Suggestions
Add a concrete decision tree or flowchart directly in SKILL.md for REST vs GraphQL vs tRPC selection (e.g., 'If TypeScript monorepo with single team → tRPC; If public API with diverse consumers → REST; If complex nested data with multiple clients → GraphQL').
Include at least one executable code example, such as a minimal REST endpoint with proper response envelope format, to make the skill immediately actionable even without bundle files.
Provide the referenced bundle files (api-style.md, rest.md, response.md, etc.) or inline the most critical content—currently the skill is an empty shell pointing to nonexistent resources.
Replace the generic anti-patterns with specific, concrete examples showing the wrong way and the right way (e.g., 'Bad: GET /getUsers → Good: GET /users; Bad: { error: true } → Good: { error: { code: "NOT_FOUND", message: "..." } }').
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The content is mostly efficient with a clean table-based content map, but includes some unnecessary filler like the motivational tagline 'Learn to THINK, not copy fixed patterns', the boilerplate 'When to Use' and 'Limitations' sections that add little value, and the 'Selective Reading Rule' which is somewhat redundant for Claude. | 2 / 3 |
Actionability | The skill provides no concrete code, commands, or executable examples for API design. It's essentially a table of contents pointing to other files plus a checklist of questions to ask—there's no actual guidance on how to design an API, choose between styles, or implement any pattern. The anti-patterns section is vague ('use appropriate status codes' without specifying which ones). | 1 / 3 |
Workflow Clarity | The decision checklist provides a reasonable sequence of considerations before designing an API, and the content map gives clear guidance on when to read each file. However, there's no actual workflow with validation steps—no feedback loop for verifying API design decisions, and the script reference lacks context on when/how to use it in the process. | 2 / 3 |
Progressive Disclosure | The content map table is well-structured with clear 'When to Read' guidance, and references are one level deep. However, no bundle files were provided, meaning all 10 referenced files (api-style.md, rest.md, response.md, etc.) are missing, making the skill essentially an empty shell that cannot deliver on its promises. The related skills references are also unverifiable. | 2 / 3 |
Total | 7 / 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 |
|---|---|---|
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 10 / 11 Passed | |
95574f3
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.