MacOS
View all Worklets
MacOSmacOS

macOS - Configuration - Ensure the SentinelOne Agent is Running

Verify the SentinelOne agent is running on macOS endpoints and restart the launchd service if it has stopped

Worklet Details

What the macOS SentinelOne agent verifier does

This Automox Worklet™ verifies that the SentinelOne EDR agent is registered with launchd and actively protecting a macOS endpoint, and restarts the launchd service when sentinelctl reports it is not running. The Worklet checks whether system/com.sentinelone.sentineld is loaded with launchctl print, then reads sentinelctl status to confirm the agent is reporting a healthy state. An endpoint where launchctl print fails is treated as not having SentinelOne installed and is left untouched.

When the launchd service is registered but sentinelctl status returns a non-zero exit, the endpoint is flagged non-compliant and remediated in the same policy run. The Worklet does not deploy or reinstall SentinelOne; pair it with your existing SentinelOne deployment Worklet for net-new endpoints, and use this Worklet to keep installed agents continuously active. A final sentinelctl status call decides the remediation exit code, so any daemon that refuses to come back up surfaces in the Automox Activity report instead of silently passing the policy.

Why enforce SentinelOne agent uptime on every Mac

A SentinelOne agent that is installed but not running leaves the endpoint without real-time threat detection, behavioral AI, or rollback while the security console may still treat it as protected. Common causes on macOS include a system extension that lost approval after an OS upgrade, an end user with admin rights who killed the agent, a crash on a beta macOS build, and a failed agent self-update that left sentineld in a half-bootstrapped state.

Run this Worklet against your macOS endpoint group on the same cadence as your hardening sweep. The next launchctl print call catches the regression, launchctl start re-launches the service, and the agent comes back online in the same policy window rather than waiting on a SentinelOne console alert.

How SentinelOne agent verification works on macOS

  1. Evaluation phase: The Worklet runs launchctl print system/com.sentinelone.sentineld to confirm the SentinelOne launchd service is registered. If that call fails, the endpoint is treated as not having SentinelOne installed and the Worklet exits 0 without scheduling remediation. If the service is registered, the Worklet runs sentinelctl status and exits 0 when sentinelctl returns success. Any non-zero sentinelctl exit marks the endpoint non-compliant and schedules the remediation script.

  2. Remediation phase: The remediation script re-runs the same launchctl print and sentinelctl status checks. When the service is registered but sentinelctl status fails, it runs launchctl start system/com.sentinelone.sentineld to relaunch the daemon and then sentinelctl protect to re-enable protection. A final sentinelctl status call decides the outcome: the script exits 0 when sentinelctl returns success and exits 1 with a guidance message pointing to the Automox Activity report and amagent logs when the daemon refuses to come back up.

SentinelOne verification requirements on macOS

  • macOS 10.15 Catalina or later; macOS 11 Big Sur and newer load SentinelOne as a system extension rather than a kernel extension

  • SentinelOne agent already installed and registered with launchd as system/com.sentinelone.sentineld; this Worklet does not install the agent

  • sentinelctl available on PATH (installed alongside the SentinelOne agent)

  • Root privileges for the Automox agent so launchctl print, launchctl start, and sentinelctl protect can target the system domain; the default Automox agent context already meets this

  • System extension and Full Disk Access approval for SentinelOne already granted via MDM (JAMF, Kandji, Mosyle, Intune); without MDM approval the agent cannot enter a protecting state even after the service restarts

  • Network reachability from the endpoint to the SentinelOne management console so the restarted agent can re-check in

Expected SentinelOne state after remediation

After a successful run, launchctl print system/com.sentinelone.sentineld returns the service definition, sentinelctl status exits 0, and the SentinelOne management console shows the endpoint checking in within minutes. The Worklet is idempotent: the next scheduled evaluation finds the agent already running and exits 0 without taking action, so there is no drift loop and no extra noise in Automox Activity.

Validate remediation by running sentinelctl status from a terminal on the endpoint and confirming the agent reports a healthy state. For audit evidence, capture the sentinelctl status output, the launchctl print system/com.sentinelone.sentineld response, and the Automox policy run identifier together. This package supports the malicious-code-protection expectations in NIST 800-53 SI-3, the endpoint-protection evidence requirements in SOC 2 CC6.6, and the anti-malware guidance in the current CIS macOS Benchmark.

When remediation fails, the most common root causes are an unapproved system extension after a macOS upgrade, a corrupt SentinelOne installation that needs a reinstall, or an agent version that has been deprecated by the SentinelOne console. Check the Automox Activity report for the policy run, review the amagent logs on the endpoint, and confirm with sentinelctl that the agent is reachable before re-running this Worklet.

View in app
evalutation image
remediation image

Consider Worklets your easy button

What's a Worklet?

A Worklet is an automation script, written in Bash or PowerShell, designed for seamless execution on endpoints – at scale – within the Automox platform. Worklets deploy named-CVE mitigations within hours of disclosure, perform configuration, remediation, and install or remove applications and settings across Windows, macOS, and Linux.

do more with worklets