# Python Tooling

> Configure Python tooling, dependency surfaces, static analysis, and verification gates. Use when editing `pyproject.toml`, `requirements.txt`, `pytest.ini`, `ruff`, `pyright`, CI, or Python release checks.

- Skill: `hoangnguyen0403/python-tooling` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add hoangnguyen0403/python-tooling`
- Raw SKILL.md: https://api.skillmd.com/api/skills/hoangnguyen0403/python-tooling/raw
- Safety review: PASS (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: HoangNguyen0403 (https://skillmd.com/u/hoangnguyen0403)
- Updated: 2026-08-19
- Page: https://skillmd.com/skills/hoangnguyen0403/python-tooling

---


# Python Tooling

## **Priority: P1 (HIGH)**

## Rules

- Keep one authoritative dependency surface per environment and audit every tracked requirements file.
- Prefer `ruff` for lint plus import hygiene; use `pyright` or `basedpyright` for type feedback.
- Run `pytest` plus `python -m compileall` for runtime Python changes.
- Add smoke or security gates when the change touches workflow/runtime behavior.

## Verification Workflow

1. **Lint** with `ruff check`.
2. **Type-check** with `pyright` or `basedpyright` where configured.
3. **Run focused pytest scope** for changed behavior.
4. **Run `python -m compileall -q ...`** for changed runtime trees.
5. **Run security or smoke gates** when auth, workflow runtime, or dependency surfaces change.

## Anti-Patterns

- **No untracked requirements files** outside the audit list.
- **No format-only green claim** for runtime changes.
- **No stale SBOM or audit artifacts** in release gates.
- **No local-only fix without CI parity** when changing gates.

## References

- [Framework Map](../references/framework-map.md)
- [Tooling Gates](references/tooling-gates.md)

