skillfed

shellcheck-py

Python wrapper around invoking shellcheck (https://www.shellcheck.net/)

shellcheck-py v0.11.0.1 4.9M downloads/30d#2,211 on PyPI238
Permissive license MIT Active released

What it is and what it does

shellcheck-py wraps shellcheck as a Python package, downloading and installing a pre-built binary for your platform so you can use it without a separate system dependency. After installation, the shellcheck command is available directly in your environment, making it easy to integrate into Python-based workflows and CI/CD pipelines.

The package is designed for developers who want shellcheck available as a pip dependency rather than managing it through system package managers. It supports macOS (both Intel and ARM), Linux, and Windows, and integrates cleanly with pre-commit hooks for automated linting in version control workflows.

Use it for:

  • Lint scripts in CI/CD pipelines without requiring system-level installation.
  • Set up pre-commit hooks to automatically check scripts for common errors before commits.
  • Include as a development dependency in Python projects that also contain shell scripts.
  • Run on Windows where native shell tooling is less common.
  • Ensure consistent script quality across macOS and Linux development environments.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides a pip-installable shellcheck binary that works across macOS, Linux, and Windows without requiring a separate system installation.

Yes, if you need shellcheck in a Python environment or CI/CD pipeline and want to avoid system package management. The package is actively maintained, has no runtime dependencies, and carries permissive licensing. Medium install friction from platform-specific binaries is a minor trade-off for convenience. Not worth installing if you already have shellcheck available system-wide and don't need it as a Python dependency.

Install

shellcheck-py on PyPI

pip

pip install shellcheck-py

uv

uv add shellcheck-py

poetry

poetry add shellcheck-py

Installing shellcheck-py

Before you install

Medium install friction due to platform-specific binary downloads, but the package is actively maintained with recent releases and no runtime dependencies to manage.

License in practice

MIT license is permissive; you can use this package freely in commercial and private projects with minimal restrictions.

Quickstart

pip install shellcheck-py
shellcheck script.sh

Requires Python 3.9 or later; the binary is downloaded during installation and must match your platform (macOS x86_64, macOS ARM64, Linux x86_64, or Windows x86_64).

Verify before relying

  • Whether the pre-built binary includes all upstream features and matches the latest release.
  • Support for platforms beyond the four listed wheel distributions (e.g., Linux ARM, Alpine).
  • How frequently the bundled binary is updated relative to upstream releases.

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.9)
Install friction medium — platform-specific wheel
Runtime dependencies none
Maintenance actively maintained — 370 days since the last release
Last repo commit
First released
Downloads 4,864,108/month — #2,211 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: shellcheck_py-0.11.0.1-py2.py3-none-macosx_10_9_x86_64.whl; shellcheck_py-0.11.0.1-py2.py3-none-macosx_11_0_arm64.whl; shellcheck_py-0.11.0.1-py2.py3-none-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl; shellcheck_py-0.11.0.1-py2.py3-none-win_amd64.whl

Programming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPy

Tags

shell script lintingshellcheck pip installscript syntax validationcross-platform shellcheckpre-commit shellcheck hookshell code qualitylinting tool
shell-lintingpre-commit-hookcross-platform

More Quality Assurance packages