Skip to content
Rod Christiansen edited this page Oct 8, 2026 · 4 revisions

ReportMate macOS Client

reportmate-client-mac is the macOS endpoint agent for ReportMate. It is a native Swift 6 package that collects device telemetry — hardware, system, security, network, identity, applications, managed installs, MDM state and peripherals — and POSTs it as a single JSON payload to /api/v1/events on the ReportMate API.

Data comes from osquery (with the macadmins osquery extension) wherever a table exists, and from system_profiler, ioreg, dscl, profiles, mdmclient and other command-line tools where it does not. The client only runs an osquery binary that is root-owned and carries osquery's own signature, and every module falls back to shell collection when no such binary is available, so a Mac without osquery still reports.

Collection is scheduled by LaunchDaemons on staggered intervals, plus a Munki postflight hook that reports managed installs immediately after every managedsoftwareupdate run. On install, the package sends a check-in so the device appears within seconds, then runs a full collection.

The latest release is 2026.10.07.2024, published as an unsigned ReportMate-2026.10.07.2024.pkg with a SHA-256 sidecar on the repo's Releases page.

What ships in the package

Component Path Role
managedreportsrunner /Applications/Utilities/Managed Reports Runner.app/Contents/MacOS/ CLI collector; must run as root
ReportMateApp same bundle SwiftUI GUI with Prefs, Run and Logs tabs
ReportMateHelper same bundle, started by com.github.reportmate.helper Privileged XPC helper the GUI uses to run collections and write system preferences
reportmate-appusage /usr/local/reportmate/ Persistent watcher recording application launches and focus time
macadmins_extension.ext /usr/local/reportmate/ Bundled macadmins osquery extension

Pages

Page Contents
Getting Started Install, point at an API, verify a check-in
Installation Package layout, LaunchDaemons, privacy profile, Munki integration
Configuration Every preference key, defaults, precedence, MDM profile delivery
Modules Every collection module, its sources and its output shape
Architecture Targets, collection flow, payload format, caching
Command Line Reference Every flag on every binary
Managed Reports Runner App The GUI and its privileged helper
Logging Log files, rotation, verbosity levels
Building and Releasing build.sh, signing, notarization, CI
Troubleshooting Failure modes visible in the code and their fixes
Development Clone, build, test, run locally

Other ReportMate repos

Repo wiki What it is
reportmate-api FastAPI ingest + query backend
reportmate-app-web Next.js dashboard
reportmate-client-win Windows agent (C# / .NET)
reportmate-cli Cross-platform admin CLI
reportmate-mcp MCP server exposing the fleet to AI agents
terraform-azurerm-reportmate Azure deployment module
terraform-aws-reportmate AWS deployment module
selfhosted-docker-reportmate Docker Compose stack + Packer appliance
reportmate-website Marketing site, reportmate.app

Clone this wiki locally