Recently, my organization's Compliance and Security Operations teams requested visibility into how macOS apps are patched. They needed a report showing deployed apps via Jamf and their version status. After two manual reports, I knew there had to be a better way and developed a Python script for automation. Initially, I didn't plan to share the code publicly, thinking it might not be helpful to others. However, a friend, Chris Ball, encouraged me to release it—leading to the creation of Patcher. Manual reporting takes time away from critical tasks like CVE remediation and
policy setup. Automating these processes allows MacAdmins to focus on more pressing matters. The time saved with Patcher has been invaluable for myself, and I hope others will benefit from it too.
What does Patcher do?
Patcher leverages the Jamf Pro API to automate patch management reporting, transforming data into actionable insights. Designed as a Command Line Interface (CLI), it integrates easily with LaunchAgents running on macOS, enabling scheduled report generation. Assuming the organization you work for is called AnyOrg, a generated report could look like the following:
Installation
Patcher is distributed via the Python Packaging Index (PyPI) and can be installed by executing in Terminal. To verify installation was successful, execute . This will show a list of all options that can be passed to Patcher.
The tool simplifies the process by automatically creating Excel spreadsheets and PDFs with minimal input. For instance, saving reports to the Desktop is as easy as running:
Without the flag, only an Excel file will be generated. Upon successful completion, you’ll find a “Patch Reports” directory with your reports inside.
Single Sign On (SSO) Usage
As the Jamf Pro API does not support SSO, an API role and API client will need to be manually created to be able to pass to Patcher. This is only if your organization uses SSO for Jamf Pro accounts. For specific instructions on creating API Roles and Clients for Patcher, reference the documentation found on Patcher’s website.
Upcoming Features
Functionality we are hoping to introduce in upcoming versions of Patcher include (but are not limited to) the following:
Patch Title Analyzation - identifying which software titles may need more attention than the others.
Automate Patch Reporting 3Installomator Support - determine software titles that have Installomator
labels (AutoPKG recipes to come). CSV Import Support - Analyzing installed/approved applications from CSV
files. Further PDF Customization: Adding branding options, including logos and custom font colors.
Conclusion
Thank you for exploring Patcher. Chris and I appreciate your interest in the project. We believe diverse ideas improve products, so we welcome feedback through pull requests, issue reporting, or feature suggestions. Join the conversation on the MacAdmins Slack channel —your input will help shape the future of this
tool.