Skip to content
Development
Skill

/ia-python-services

Python patterns for CLI tools, async concurrency, and backend services. Use when working with Python code, building CLI apps, FastAPI services, async with asyncio, background jobs, or configuring uv, ruff, ty, pytest, or pyproject.toml.

From plugin
whetstone
3333 skills19 agents38 commands1 MCP
Install
$ npx -y skills add iliaal/whetstone --skill ia-python-services --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/ia-python-services

Context preview

The summary Claude sees to decide when to auto-load this skill.

Python patterns for CLI tools, async concurrency, and backend services. Use when working with Python code, building CLI apps, FastAPI services, async with asyncio, background jobs, or configuring uv, ruff, ty, pytest, or pyproject.toml.

SKILL.md

ia-python-services.SKILL.md
name: ia-python-services
class: language
description: >-
  Python patterns for CLI tools, async concurrency, and backend services. Use
  when working with Python code, building CLI apps, FastAPI services,
  async with asyncio, background jobs, or configuring uv, ruff, ty, pytest, or
  pyproject.toml.
paths: "**/*.py,**/pyproject.toml,**/ruff.toml,**/uv.lock"

Python Services & CLI

Working rules

  • Validate external inputs and responses at boundaries; preserve exception causes.
  • Keep simple sequential work synchronous. Bound concurrent work, preserve cancellation, and keep task references.
  • Give network calls timeouts; retry only failures and operations whose semantics permit it.
  • Enforce job idempotency with atomic writes and database constraints.
  • Preserve published API behavior and shared migration history.
  • Match telemetry to an operational question and verify its output.

Discipline

  • Simplicity first -- every change as simple as possible, impact minimal code
  • Only touch what's necessary -- avoid introducing unrelated changes
  • No hacky workarounds -- if a fix feels wrong, step back and implement the clean solution
  • Before adding a new abstraction, verify it appears in 3+ places. If not, inline it.
  • Verify: see Verify section below -- pass all checks with zero warnings before declaring done
  • Coverage target: 80%+ (`uv run pytest --cov --cov-report=html`)

Verify

  • `uv run pytest` passes with zero failures
  • `uv run ruff check .` passes with zero warnings
  • `uv run ty check .` passes with zero errors
  • Coverage target: 80%+ (`uv run pytest --cov`)

Task-specific references

Read the relevant reference before implementing or reviewing the matching behavior:

  • For packaging, environment configuration, CLI setup, or pytest behavior: [tooling-and-tests.md](./references/tooling-and-tests.md).
  • For asyncio, background jobs, retries, pooling, timeouts, or health checks: [concurrency-and-resilience.md](./references/concurrency-and-resilience.md).
  • For APIs, validation, errors, migrations, logging, metrics, or traces: [service-boundaries.md](./references/service-boundaries.md).

Existing specialized references, when the corresponding topic applies:

  • [cli-tools.md](./references/cli-tools.md).
  • [fastapi.md](./references/fastapi.md).
Read more
Ships withwhetstone

A Claude Code plugin that makes AI coding agents follow engineering discipline. Plan before coding. Verify before claiming done. Find root cause before patching. Review before merge. Skills activate based on file type and task signals, not manual toggling.

Get the whole plugin

Other skills on whetstone.