CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

async-python-patterns

Master Python asyncio, concurrent programming, and async/await patterns for high-performance applications. Use when building async APIs, concurrent systems, or I/O-bound applications requiring non-blocking operations.

60

Quality

75%

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 ./plugins/python-development/skills/async-python-patterns/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

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

A well-structured, fully executable pattern library with a genuine one-level-deep reference file and a helpful sync-vs-async decision guide. Its weaknesses are redundant textbook material (Core Concepts, duplicate Quick Start/Pattern 1) that spends tokens on concepts Claude already knows, and the absence of an explicit usage sequence tying decision, patterns, pitfalls, and testing together.

Suggestions

Cut the 'Core Concepts' section (event loop, coroutines, tasks, futures explanations) — this is textbook asyncio knowledge Claude already has — and keep at most a one-line pointer to terms.

Merge 'Quick Start' and 'Pattern 1: Basic Async/Await', which demonstrate the same hello-world with asyncio.sleep, into a single minimal example.

Add a short explicit workflow at the top (decide sync vs async via the table, pick a pattern, consult Common Pitfalls, verify with the Testing section) and move the references/details.md pointer into that navigation section so it is not buried after Pattern 5.

DimensionReasoningScore

Conciseness

Mostly efficient code-first content, but several sections explain concepts Claude already knows: the 'Core Concepts' section is textbook asyncio ('The event loop is the heart of asyncio...', 'Coroutines ... can be paused and resumed'), and 'Quick Start' and 'Pattern 1: Basic Async/Await' are near-duplicates. This matches anchor 3 (mostly efficient, some unnecessary explanation) rather than anchor 2's pervasive padding, since the decision table, patterns 2-5, and pitfalls are lean.

3 / 5

Actionability

Fully executable, copy-paste-ready Python throughout: runnable snippets with asyncio.run() entry points covering the common cases — gather() for concurrency, create_task management, return_exceptions=True error handling, wait_for timeouts, cancellation with re-raise, and pytest-asyncio tests. Matches anchor 5 exactly.

5 / 5

Workflow Clarity

The useful 'Sync vs Async Decision Guide' table and 'Key Rule' provide decision guidance, but the body is a pattern catalog with no explicit usage sequence or checkpoints (e.g. 'decide sync vs async, pick a pattern, check pitfalls, test') — the flow is only implied by section order, matching anchor 3 (sequence present but implicit, checkpoints missing).

3 / 5

Progressive Disclosure

Good split: fundamentals inline, advanced material (patterns 6-10, real-world applications, performance practices) in a real, one-level-deep references/details.md, explicitly signaled with a conditional read cue. Minor gaps: the pointer is buried mid-document after Pattern 5 instead of a clear navigation section, and the ~290-line inline body (including the textbook Core Concepts section) is more than an overview, so anchor 4 fits better than 5.

4 / 5

Total

15

/

20

Passed

Description

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

A solid description: it explicitly states both what the skill covers and when to use it, with natural trigger terms for the async-Python niche and low conflict risk. Its main weakness is that the 'what' is phrased as topics to 'master' rather than a list of concrete capabilities, and it misses a few natural trigger terms like framework names.

Suggestions

Replace the soft verb 'Master ... patterns' with concrete actions, e.g. 'Implement asyncio concurrency with gather, tasks, timeouts, and error handling' so the 'what' enumerates capabilities.

Add commonly-named trigger terms users actually say, such as framework names (FastAPI, aiohttp) or 'event loop', to the 'Use when' clause.

DimensionReasoningScore

Specificity

Names the domain clearly ('Python asyncio, concurrent programming, and async/await patterns') and concrete application contexts ('async APIs, concurrent systems, or I/O-bound applications requiring non-blocking operations'), but the soft verb 'Master ... patterns' lists topics rather than concrete actions, matching anchor 3 rather than the several-specific-actions of anchor 4.

3 / 5

Completeness

Both parts are explicit: the 'what' ('Master Python asyncio, concurrent programming, and async/await patterns for high-performance applications') and an explicit 'Use when building async APIs, concurrent systems, or I/O-bound applications...' trigger clause. Not 5 because the 'what' is topic-listing with the padded phrase 'for high-performance applications' rather than an enumeration of concrete capabilities.

4 / 5

Trigger Term Quality

Good natural-term coverage: 'Python asyncio', 'async/await', 'concurrent systems', 'I/O-bound', 'non-blocking', 'async APIs'. A few natural terms users would say are missing, such as framework names (FastAPI, aiohttp) and 'event loop', so it falls just short of the comprehensive synonym coverage of anchor 5.

4 / 5

Distinctiveness Conflict Risk

A clear Python-async niche with distinctive terms (asyncio, async/await, non-blocking), but 'concurrent programming' and 'high-performance applications' create minor overlap risk with multiprocessing/threading or performance-optimization skills, matching anchor 4 ('mostly distinct; minor overlap risk').

4 / 5

Total

15

/

20

Passed

Validation

100%

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

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

wshobson/agents

Path

plugins/python-development/skills/async-python-patterns/SKILL.md

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.