CtrlK
BlogDocsLog inGet started
Tessl Logo

fastapi-templates

Create production-ready FastAPI projects with async patterns, dependency injection, and comprehensive error handling. Use when building new FastAPI applications or setting up backend API projects.

75

1.21x
Quality

62%

Does it follow best practices?

Impact

100%

1.21x

Average score across 3 eval scenarios

SecuritybySnyk

Passed

No known issues

Optimize this skill with Tessl

npx tessl skill review --optimize ./tests/ext_conformance/artifacts/agents-wshobson/api-scaffolding/skills/fastapi-templates/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Discovery

75%

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 is well-structured with a clear 'Use when' clause and targets a specific framework (FastAPI), giving it good completeness and distinctiveness. However, it could be stronger in listing concrete actions (e.g., route generation, middleware setup, database integration) and including more natural trigger terms users might use when requesting FastAPI help.

Suggestions

Add more specific concrete actions like 'generate route handlers, configure middleware, set up Pydantic models, create database integrations' to improve specificity.

Include additional trigger terms users might naturally say, such as 'REST API', 'Python API', 'web server', 'endpoints', 'ASGI', or 'uvicorn'.

DimensionReasoningScore

Specificity

Names the domain (FastAPI) and some architectural patterns (async patterns, dependency injection, error handling), but doesn't list specific concrete actions like 'generate route handlers', 'configure middleware', or 'set up database models'. The actions are more about qualities than discrete tasks.

2 / 3

Completeness

Clearly answers both what ('Create production-ready FastAPI projects with async patterns, dependency injection, and comprehensive error handling') and when ('Use when building new FastAPI applications or setting up backend API projects') with an explicit 'Use when' clause.

3 / 3

Trigger Term Quality

Includes 'FastAPI', 'backend API', and 'API projects' which are relevant keywords. However, it misses common variations users might say like 'REST API', 'Python API', 'web server', 'endpoints', or 'ASGI'.

2 / 3

Distinctiveness Conflict Risk

FastAPI is a specific framework, making this clearly distinguishable from general Python skills, Django skills, or Flask skills. The trigger terms are narrow enough to avoid conflicts with other backend or API-related skills.

3 / 3

Total

10

/

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 comprehensive, executable FastAPI code patterns that are immediately usable, which is its primary strength. However, it is excessively verbose for a skill file — much of the content (project structure explanation, core concepts bullets, best practices, common pitfalls) restates knowledge Claude already has. The lack of a clear sequential workflow for project setup and the monolithic inline code that could be offloaded to referenced files weaken its effectiveness as a skill.

Suggestions

Remove the 'Core Concepts', 'Best Practices', and 'Common Pitfalls' sections entirely — Claude already knows these patterns. This alone would cut ~40 lines of zero-value content.

Add a clear numbered workflow at the top: 1) Generate config, 2) Set up database, 3) Create models, 4) Build repository layer, 5) Add services, 6) Wire up endpoints, 7) Run tests to verify — with explicit validation at each step.

Move the detailed code patterns (repository, service, auth, testing) into the referenced bundle files (e.g., references/fastapi-architecture.md) and keep only the main.py pattern and a minimal endpoint example in SKILL.md.

Trim the 'When to Use This Skill' section to a single line or remove it — the skill title and description already convey this.

DimensionReasoningScore

Conciseness

Extremely verbose at ~400+ lines. Explains concepts Claude already knows well (what dependency injection is, what async patterns are, what CRUD is). The 'When to Use This Skill' and 'Core Concepts' sections are largely unnecessary padding. The bullet lists under 'Core Concepts' just name things without adding value (e.g., 'Async route handlers, Async database operations'). The 'Common Pitfalls' and 'Best Practices' sections state obvious software engineering principles.

1 / 3

Actionability

The code examples are concrete, executable, and copy-paste ready. Complete patterns are provided for the application entry point, repository layer, service layer, endpoints, authentication, and testing with proper imports and type hints. The code is production-quality and immediately usable.

3 / 3

Workflow Clarity

The patterns are presented as independent code blocks without a clear sequenced workflow for setting up a project from scratch. There's no step-by-step process like 'first create config, then set up database, then create models, then repositories, then services, then endpoints.' No validation checkpoints are provided (e.g., verifying the database connection works before proceeding, running tests after each layer).

2 / 3

Progressive Disclosure

References to external files are listed in the Resources section (references/fastapi-architecture.md, async-best-practices.md, etc.), which is good structure. However, no bundle files are actually provided, so these references are unverifiable. The main content is monolithic — the full repository pattern, service layer, and auth code could be split into referenced files, keeping SKILL.md as a concise overview with the main.py pattern only.

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.

Validation10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

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

Warning

Total

10

/

11

Passed

Repository
Dicklesworthstone/pi_agent_rust
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.