| name | python-typing |
| description | Migrate Python codebases to strict type checking with pyright. Use when user wants to add types, fix type errors, set up strict mode, or run a typing migration. Provides setup automation, fix patterns, discipline enforcement, and optional iteration loop support. |
Python Typing
Migrate Python codebases to strict type checking using pyright.
Onboarding
On first invocation, run the setup flow:
1. Determine Strictness Level
If user explicitly said "strict typing", use strict. Otherwise ask:
What level of type checking?
A) strict - Maximum type safety (recommended for new projects)
B) standard - Balanced (recommended for existing codebases)
C) basic - Minimal, just obvious bugs
Run pyright at each level to show baselines:
npx pyright --outputjson 2>/dev/null | jq '.summary.errorCount'
npx pyright -p pyrightconfig-standard.json --outputjson 2>/dev/null | jq '.summary.errorCount'
2. Choose Setup Type
Setup options:
A) Recommended - Full setup with tracking and rules
B) Minimal - Just pyright config and rules
C) Custom - Choose each component
3. Run Setup
For Recommended (A):
python3 <SKILL_PATH>/scripts/init_typing.py --level {strict|standard|basic} --full
This installs:
- pyrightconfig-{level}.json
- .long-task-harness/ with typing rules
- typing-findings.md
- Pre-commit hook
- long-task-harness (if not present)
- ralph-wiggum plugin (Claude Code only)
For Minimal (B):
python3 <SKILL_PATH>/scripts/init_typing.py --level {strict|standard|basic}