skills/python-quality-gate/SKILL.md
Runs Python code quality checks. Use when checking Python quality, linting, type checking, running tests, validating Python code, or running python checks. Covers formatting and linting with ruff, type checking with mypy, and test execution with pytest.
npx skillsauth add philoserf/claude-code-setup skills/python-quality-gateInstall 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.
Run a standardized set of Python quality checks. Auto-fix what's fixable, report the rest with specific locations.
Verify these tools are available before running checks. All run via uvx — no global installs needed.
ruff — formatter and linter (uvx ruff)mypy — static type checker (uvx mypy)pytest — test runner (uv run pytest)Run checks in this order. Formatting first so later tools analyze clean code.
Run uvx ruff format . — report which files were modified. If no files changed, report "formatting clean."
Run uvx ruff check --fix . — apply safe auto-fixes. Report which rules were fixed and in which files.
Run uvx ruff check . — report remaining issues with file, line, rule code, and message. If a pyproject.toml or ruff.toml exists, it's picked up automatically.
Run uvx mypy . or uvx mypy src/ depending on project layout. If no type hints exist in the project, skip this step and note it in the summary. If mypy config exists in pyproject.toml, it's picked up automatically.
Run uv run pytest — if a pyproject.toml with [tool.pytest] or a pytest.ini/conftest.py exists. Use -x for fail-fast only if the user requests it. Report pass/fail counts. If no tests exist, note it in the summary.
After all checks complete, present a summary table:
| Check | Status | Details |
|-------------|--------|--------------------|
| ruff format | FIXED | 3 files formatted |
| ruff fix | FIXED | 5 auto-fixes |
| ruff check | WARN | 2 issues remaining |
| mypy | PASS | |
| pytest | FAIL | 8 passed, 2 failed |
Then list specific issues grouped by file, with line numbers and rule codes. Offer to fix reported issues if the user wants.
pyproject.toml with [project] — use uv run for pytestuv run --scriptuvx against .py filesbash-quality-gate, go-quality-gate, or typescript-quality-gaterefactor-cleandiff-reviewtesting
Audits ~/.claude/skills/ for unused entries, duplicate names, missing descriptions, and the longest descriptions. Use when trimming the user-level skill set, asking which skills are unused, finding duplicates, or auditing skill hygiene.
tools
Publishes and manages Flowershow sites with the `fl` CLI (the Go-based successor to the deprecated `@flowershow/publish` npm package). Use when publishing a note or folder to Flowershow, syncing updates to an existing site, managing auth, listing or deleting sites, or installing/upgrading the CLI.
tools
Copy edits prose while preserving voice and register. Use when asked to edit, copy edit, line edit, proofread, revise, polish, tighten, rewrite, or clean up essays, articles, drafts, or fiction. Flags wordiness, passive voice, clichés, hedging, and nominalizations with bracket markup or clean rewrites.
tools
Improves CLAUDE.md by analyzing conversation patterns. Use when Claude keeps repeating a mistake, when teaching a new preference, or when consolidating guidance from repeated instructions. Captures recurring corrections and style preferences into project instructions.