pyhelm3
Python library for managing Helm releases using Helm 3 and later (i.e. Tiller-less Helm).
What it is and what it does
pyhelm3 wraps the Helm 3+ command-line tool to let you manage Kubernetes Helm releases from Python code. Instead of shelling out to `helm` commands manually, you instantiate a Client object (pointing to your kubeconfig and context) and call methods to list, install, upgrade, or uninstall releases. It handles chart fetching from repositories, revision tracking, and status inspection, all through an async-friendly API.
The library is built on pydantic for data validation, pyyaml for configuration parsing, and semver for version handling. It's designed for automation workflows—CI/CD pipelines, infrastructure-as-code tools, or Kubernetes operators—where you need programmatic control over Helm deployments without spawning shell processes directly.
Use it for:
- Automate Helm chart deployments in CI/CD pipelines by installing or upgrading releases programmatically
- Build infrastructure-as-code tools that manage Kubernetes applications through a Python API
- Monitor and list deployed Helm releases across multiple namespaces in a single Python script
- Implement custom Kubernetes operators or controllers that need to manage Helm releases
- Fetch and inspect chart metadata and README files before deciding whether to deploy them
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
pyhelm3 is a Python library for programmatically managing Helm releases in Kubernetes clusters using Helm 3 and later, supporting installation, upgrades, listing, and uninstallation of releases.
Yes, if you need to manage Helm releases from Python code. The library has low install friction, active maintenance, permissive licensing, and no known vulnerabilities. The main prerequisite is having Helm 3+ installed on your system and Python 3.10+. It's well-suited for automation and infrastructure tooling.
Install
pyhelm3 on PyPI
pip
pip install pyhelm3uv
uv add pyhelm3poetry
poetry add pyhelm3Installing pyhelm3
Before you install
Low install friction with three lightweight runtime dependencies (pydantic, pyyaml, semver). Active maintenance with a recent release 11 days ago. Requires Python 3.10 or later and the Helm executable to be available on the system.
License in practice
Licensed under Apache-2.0 (permissive), allowing commercial and private use with minimal restrictions—suitable for most deployment scenarios.
Quickstart
pip install pyhelm3
from pyhelm3 import Client
client = Client()
releases = await client.list_releases(all=True, all_namespaces=True)
Requires Helm 3 or later executable to be installed and on the PATH (or specify a custom path via the executable parameter). Requires Python 3.10 or later.
Verify before relying
- Whether the package supports async/await patterns throughout or only in specific methods
- Compatibility with Helm 4 when it becomes available, beyond the atomic parameter note
- Performance characteristics for large numbers of releases or namespaces
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — pydantic, pyyaml, semver |
| Maintenance | actively maintained — 11 days since the last release |
| First released | |
| Downloads | 162,479/month — #10,600 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pyhelm3-0.5.4-py3-none-any.whl
Tags
More Distributed Computing packages
gRPC Python is an HTTP/2-based RPC framework…
permissive · top 100 on PyPI
execnetexecnet lets you spawn and communicate with…
permissive · top 1,000 on PyPI
cloudpickleCloudpickle extends Python's standard pickle…
permissive · top 1,000 on PyPI
smart-openProvides a unified, open()-compatible Python…
permissive · top 1,000 on PyPI
portalockerPortalocker provides cross-platform file…
permissive · top 1,000 on PyPI
rayRay is a distributed computing framework that…
permissive · top 1,000 on PyPI
epik8s-toolsAutomates project structure, Helm chart, and…
permissive · top 15,000 on PyPI
aws-cdk.lambda-layer-kubectl-v35Provides a Lambda Layer packaging kubectl…
permissive · top 15,000 on PyPI
aws-cdk.asset-kubectl-v20Provides a Lambda Layer containing kubectl…
permissive · top 5,000 on PyPI
pulumi-kubernetesPulumi Kubernetes Resource Provider lets you…
permissive · top 5,000 on PyPI
pykube-ngpykube-ng is a Python client library for…
permissive · top 15,000 on PyPI
kubernetesProvides a Python interface to the Kubernetes…
permissive · top 1,000 on PyPI
portforwardProvides Python bindings for Kubernetes…
permissive · top 15,000 on PyPI
kfp-server-apiProvides Python client bindings for the…
permissive · top 5,000 on PyPI
kr8sA Python client library for Kubernetes that…
permissive · top 5,000 on PyPI
flux-localflux-local provides CLI tools and a Python…
permissive · top 15,000 on PyPI