Installation¶

Getting Patcher onto your Mac in a single command.


Patcher ships as a single package (patcherctl) that includes both the CLI and the importable Python library. Pick whichever one fits your workflow.

Prerequisites¶

macOS (13+)

Patcher is macOS-only, sorry Windows users!

Python 3.11+

From Python.org or install and use uv

Jamf Pro Access

For OAuth client credential creation and patch title management

Install¶

$ uv pip install patcherctl
$ python3 -m pip install patcherctl

Adding to Environment Path¶

If patcherctl --version returns command not found, your Python user-base directory isn’t set on your environment path.

Adjust the profile path for your shell if you’re not using zsh (e.g. ~/.bashrc).¶
$ echo 'export PATH=$(python3 -m site --user-base)/bin:$PATH' >> ~/.zshrc && source ~/.zshrc

SSL Verification¶

Patcher uses httpx with truststore to bridge TLS verification to your macOS Keychain. Any CA your MDM installs at the OS level is automatically trusted (no Python-specific configuration required), and TLS-inspecting proxies (Zscaler, Netskope, Cloudflare Gateway, Palo Alto GlobalProtect) work transparently.

Changed in version 2.4.1

The HTTP transport migrated from subprocess-curl to httpx. This is an internal change; patcherctl and PatcherClient behavior is unchanged for end users.

If you encounter certificate errors anyway, see TLS / Corporate Proxies on the Troubleshooting page for diagnostic steps.