From pysmith
Use when a Python project needs pre-commit hooks for security scanning, linting, and formatting, or when migrating from black/isort/flake8 to ruff
npx claudepluginhub jugrajsingh/skillgarden --plugin pysmithThis skill is limited to using the following tools:
Create optimized .pre-commit-config.yaml for Python projects.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Generates original PNG/PDF visual art via design philosophy manifestos for posters, graphics, and static designs on user request.
Create optimized .pre-commit-config.yaml for Python projects.
Ruff replaces: black, autopep8, autoflake, isort, flake8, flake8-bandit
Still needed:
Dropped:
Glob: .pre-commit-config.yaml
If exists, ask via AskUserQuestion:
If existing config contains black, isort, flake8, autopep8, autoflake, or bandit, ask:
question: "Detected tools that ruff replaces. Migrate to ruff?"
header: "Migration"
options:
- label: "Yes, replace with ruff"
description: "Remove black/isort/flake8/bandit, use ruff instead"
- label: "No, keep existing"
description: "Keep current setup unchanged"
Read the base config from references/pre-commit-base.yaml and use it as the starting template.
Customizations to apply based on project context:
chart/ directory, remove the exclude: '^chart/templates/' from check-yamlCopy the base config to .pre-commit-config.yaml with applicable sections uncommented.
Created .pre-commit-config.yaml
Hook ordering (autofix first to minimize retries):
1. Security: gitleaks, pip-audit, detect-private-key
2. Autofix: whitespace fixers (end-of-file, trailing, line-ending)
3. Ruff: ruff-format THEN ruff --fix (format before lint)
4. Validation: check-ast, check-yaml/json/toml, debug-statements
5. Git quality: no-commit-to-branch, check-merge-conflict
6. Commits: conventional-pre-commit (commit-msg stage)
Ruff replaces: black, isort, flake8, bandit, autopep8
Install: pre-commit install
Run all: pre-commit run --all-files
Update: pre-commit autoupdate
Check latest versions before generating: gitleaks, ruff-pre-commit, pre-commit-hooks, pip-audit (all on GitHub releases).