plugins/parseltongue/skills/python-async/SKILL.md
Async Python patterns via asyncio and aiohttp for I/O-bound concurrency. Use when adding async APIs, handling concurrent I/O, or debugging async code.
npx skillsauth add athola/claude-night-market python-asyncInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
asyncio and async/await patterns for Python applications.
import asyncio
async def main():
print("Hello")
await asyncio.sleep(1)
print("World")
asyncio.run(main())
This skill uses progressive loading. Content is organized into focused modules:
modules/basic-patterns.md - Core async/await, gather(), and task managementmodules/concurrency-control.md - Semaphores and locks for rate limitingmodules/error-handling-timeouts.md - Error handling, timeouts, and cancellationmodules/advanced-patterns.md - Context managers, iterators, producer-consumermodules/testing-async.md - Testing with pytest-asynciomodules/real-world-applications.md - Web scraping and database operationsmodules/pitfalls-best-practices.md - Common mistakes and best practicesLoad specific modules based on your needs, or reference all for detailed guidance.
RuntimeError: no current event loop
Use asyncio.run() as the entry point. Avoid get_event_loop() in Python 3.10+.
Blocking call in async context
Move sync I/O to asyncio.to_thread() or loop.run_in_executor().
Tests hang indefinitely
Ensure pytest-asyncio is installed and test functions are decorated with @pytest.mark.asyncio.
tools
Detect friction signals; graduate patterns into rules. Use for session retrospectives.
testing
Use when you need a diff-derived test plan for an MR — reads the diff, groups changes by area, runs targeted verifications, and proves revert-tests are genuine guards, not dead assertions.
development
Curate the web-capture index. Use when the capture backlog grows, captures sit unprocessed at seedling/pending, or to surface stored research during work.
testing
Probe memory/summary clarity via dual anchor questions: task progress, info gaps. Use when verifying session state or summary before handoff or compression.