CtrlK
BlogDocsLog inGet started
Tessl Logo

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.

76

0.98x
Quality

66%

Does it follow best practices?

Impact

96%

0.98x

Average score across 3 eval scenarios

SecuritybySnyk

Advisory

Suggest reviewing before use

Optimize this skill with Tessl

npx tessl skill review --optimize ./plugins/python-development/skills/async-python-patterns/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Discovery

89%

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 is a solid description with explicit 'Use when' guidance and good trigger term coverage for the Python async programming domain. Its main weakness is that the capability description leans slightly toward high-level framing ('Master Python asyncio') rather than listing concrete actions the skill performs. The word 'Master' also reads more like a tutorial title than a functional description of what the skill does.

Suggestions

Replace 'Master Python asyncio...' with specific concrete actions like 'Implements Python asyncio event loops, manages coroutines and tasks, structures async/await code, handles async generators and context managers'.

DimensionReasoningScore

Specificity

Names the domain (Python asyncio, concurrent programming) and mentions some actions/patterns (async/await patterns, async APIs, concurrent systems), but doesn't list multiple specific concrete actions like 'create event loops, manage coroutines, implement task groups, handle async context managers'.

2 / 3

Completeness

Clearly answers both 'what' (Master Python asyncio, concurrent programming, async/await patterns) and 'when' (explicit 'Use when building async APIs, concurrent systems, or I/O-bound applications requiring non-blocking operations').

3 / 3

Trigger Term Quality

Good coverage of natural terms users would say: 'asyncio', 'async/await', 'concurrent', 'async APIs', 'I/O-bound', 'non-blocking'. These are terms developers naturally use when seeking help with Python async programming.

3 / 3

Distinctiveness Conflict Risk

Clearly scoped to Python asyncio and async/await patterns specifically, which is a distinct niche unlikely to conflict with general Python skills or other language-specific concurrency skills. The trigger terms are specific enough to avoid false matches.

3 / 3

Total

11

/

12

Passed

Implementation

42%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

This skill is a comprehensive but excessively verbose reference on async Python patterns. While the code examples are high-quality and executable, the document suffers from explaining concepts Claude already knows, presenting everything in a single monolithic file, and lacking workflow guidance for composing patterns into real applications. It reads more like a tutorial for human developers than a concise skill for Claude.

Suggestions

Cut the 'Core Concepts' section entirely and the 'When to Use This Skill' list—Claude knows what asyncio is and when to use it. This alone would remove ~40 lines of padding.

Split into SKILL.md (quick start + decision guide + common pitfalls) with references to separate files like PATTERNS.md (fundamental patterns), ADVANCED.md (producer-consumer, locks, semaphores), and REAL_WORLD.md (scraping, DB, WebSocket examples).

Remove explanatory comments like '# Simulate I/O' and docstrings that restate the obvious (e.g., '"""Fetch data from URL asynchronously."""') to reduce token count.

Add a workflow section for debugging async issues: how to identify blocking calls, verify concurrency is actually happening, and validate that tasks complete correctly.

DimensionReasoningScore

Conciseness

Extremely verbose at ~500+ lines. Explains concepts Claude already knows well (what an event loop is, what coroutines are, what futures are, what async context managers are). The 'Core Concepts' section is pure padding. Many patterns use simulated/placeholder code (asyncio.sleep) that adds bulk without real value. The decision guide table and 'When to Use' list are largely unnecessary for Claude.

1 / 3

Actionability

All code examples are fully executable Python with proper imports, type hints, and complete function definitions. Patterns are copy-paste ready and cover real scenarios like web scraping with aiohttp, producer-consumer queues, semaphore rate limiting, and testing with pytest-asyncio.

3 / 3

Workflow Clarity

Patterns are individually clear and well-sequenced, but there's no overarching workflow for building an async application. The skill presents a catalog of patterns without guidance on how to compose them or validate that an async implementation is correct. No validation checkpoints or feedback loops for debugging async issues.

2 / 3

Progressive Disclosure

Monolithic wall of text with no references to external files. All content is inline in a single massive document. The 'Real-World Applications' and 'Advanced Patterns' sections could easily be split into separate reference files. No navigation aids or cross-references to help find specific patterns quickly.

1 / 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.

Validation10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

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

Warning

Total

10

/

11

Passed

Repository
wshobson/agents
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.