CtrlK
BlogDocsLog inGet started
Tessl Logo

python-patterns

Python development principles and decision-making. Framework selection, async patterns, type hints, project structure. Teaches thinking, not copying.

61

Quality

73%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./.agents/skills/python-patterns/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

71%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.

The content is well-organized with tables, decision trees, and runnable code that mostly assume Claude's intelligence, scoring well on conciseness and actionability. Its main weakness is progressive disclosure: a long single-file skill with no bundle references that should split framework-specific detail into separate files.

Suggestions

Move detailed per-framework guidance (Django Principles, FastAPI Principles) into referenced files like DJANGO.md and FASTAPI.md, keeping SKILL.md as a concise overview with clear one-level-deep links.

Add a brief validation step to the Decision Checklist (e.g. 'Verify the chosen async/sync mix against actual library support before coding') to add a feedback checkpoint.

Trim the repeated 'How to Use This Skill' guidance and the closing 'Remember' note, since the same decision-making ethos is already conveyed by the checklist and anti-patterns sections.

DimensionReasoningScore

Conciseness

The body is largely efficient: decision trees, compact tables, and terse code blocks assume Claude's competence and avoid explaining what a framework or async is. It leans slightly verbose only in repeated 'How to Use' guidance and the closing reminder, which could be trimmed, keeping it just below a 5.

4 / 5

Actionability

It provides concrete, executable guidance via comparison tables, named libraries, a runnable pytest-asyncio example, and a copy-paste FastAPI/Pydantic snippet, with only minor gaps (e.g. some decision-tree branches are principles rather than runnable code).

4 / 5

Workflow Clarity

The 'Decision Checklist' gives a clear pre-implementation sequence and the framework/async sections lay out ordered decision trees, but there are no explicit validation checkpoints or feedback loops; since this skill is decision-making rather than destructive/batch operations, it stays above 3 but below 5.

4 / 5

Progressive Disclosure

There are no references/, scripts/, or assets/ bundle files, and the body inlines all 11 sections in one monolithic file with section headers but no one-level-deep references; while under-50-line simple skills can score 5, this ~440-line skill would benefit from splitting detail into referenced files, so it sits at the 'some structure, could be better organized' anchor.

3 / 5

Total

15

/

20

Passed

Description

75%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.

The description is specific and uses third person, naming multiple concrete capability areas with good trigger keywords. It falls short of a 5 because the 'when to use' trigger guidance lives in a separate frontmatter field rather than being explicit within the description itself, and it lacks synonyms and file extensions for full trigger coverage.

Suggestions

Add an explicit 'Use when ...' trigger clause directly inside the description string so the when-guidance is self-contained, e.g. 'Use when selecting Python frameworks, adding type hints, or structuring a Python project.'

Include a few natural synonyms or named tools users would say (e.g. FastAPI, Django, Flask, pytest) to broaden trigger-term coverage.

Tighten the action framing from topic lists to concrete operations (e.g. 'Choose between FastAPI, Django, and Flask') to push specificity toward comprehensive coverage.

DimensionReasoningScore

Specificity

Names the domain and several concrete action areas ("Framework selection, async patterns, type hints, project structure"), which is multiple specific capabilities, though the actions are framed as topics rather than discrete operations like 'extract text' or 'fill forms', leaving minor gaps in coverage granularity.

4 / 5

Completeness

Provides a clear 'what' (Python development principles and decision-making across named areas) and a 'when' is present separately in the when_to_use field rather than in the description itself; the description's own 'when' is only weakly implied, so it does not reach the explicit trigger-phrases bar of 5.

4 / 5

Trigger Term Quality

Contains natural terms a user might say ("Python", "framework", "async", "type hints", "project structure") with good keyword coverage, though it lacks synonyms or file extensions and does not enumerate common phrasings like 'FastAPI' or 'Django'.

4 / 5

Distinctiveness Conflict Risk

The "Teaches thinking, not copying" framing and the specific topic list carve a reasonably distinct niche for Python decision-making, though the broad Python scope means minor overlap risk with general Python coding skills.

4 / 5

Total

16

/

20

Passed

Validation

87%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

allowed_tools_field

'allowed-tools' contains unusual tool name(s)

Warning

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

14

/

16

Passed

Repository
vudovn/ag-kit
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.