Skip to main content

macOS

On macOS, install the agent with the one-line command from the dashboard's Install Agent page (see Agent Installation). The installer downloads the binary, enrolls the endpoint, writes its configuration and certificates, and registers a launchd service that starts automatically.

Where things land depends on whether the installer runs with sudo (system-wide) or as a regular user (per-user, monitoring only):

System install (sudo)User install
launchd job/Library/LaunchDaemons/io.sielum.agent.plist (LaunchDaemon)~/Library/LaunchAgents/io.sielum.agent.plist (LaunchAgent)
Binary/usr/local/bin/sielum-agent~/.local/bin/sielum-agent
Certificates & config/Library/Application Support/Sielum~/Library/Application Support/Sielum
Firewall enforcement✅ (pf)❌ (monitoring only)

This page covers macOS-specific service management and removal.

Managing the service

The launchd job label is io.sielum.agent in both modes.

# Status (shows the job and its last exit code)
launchctl list io.sielum.agent

# Live logs
log stream --predicate 'process == "sielum-agent"' --info

# Stop / start a system daemon (run with sudo)
sudo launchctl unload /Library/LaunchDaemons/io.sielum.agent.plist
sudo launchctl load -w /Library/LaunchDaemons/io.sielum.agent.plist

# Stop / start a user agent
launchctl unload ~/Library/LaunchAgents/io.sielum.agent.plist
launchctl load -w ~/Library/LaunchAgents/io.sielum.agent.plist

The endpoint appears in Dashboard → Devices on the agent's first check-in. The agent sends its first report right after startup, then checks in on its regular interval (default 5 minutes, see Agent Configuration).

Privileged vs. user mode

A system install (via sudo) runs in privileged mode so the agent can enforce firewall rules through macOS's packet filter (pf), covering both IPv4 and IPv6. A user install runs in user mode (monitoring only). See Agent Installation for the feature comparison.

Uninstall

The installer ships an uninstall script that detects both install modes and removes the launchd job, binary, certificates, and logs:

# System-wide install
curl -fsSL https://app.sielum.io/api/install/uninstall.sh | sudo sh

# Per-user install
curl -fsSL https://app.sielum.io/api/install/uninstall.sh | sh

Useful flags: --dry-run shows what would be removed without touching anything, --yes skips the confirmation prompt, and --mode system / --mode user restricts the scope to a single install.

To remove things by hand instead:

# System daemon
sudo launchctl unload -w /Library/LaunchDaemons/io.sielum.agent.plist
sudo rm /Library/LaunchDaemons/io.sielum.agent.plist
sudo rm /usr/local/bin/sielum-agent
sudo rm -rf "/Library/Application Support/Sielum"

# User agent
launchctl unload -w ~/Library/LaunchAgents/io.sielum.agent.plist
rm ~/Library/LaunchAgents/io.sielum.agent.plist
rm ~/.local/bin/sielum-agent
rm -rf ~/Library/Application\ Support/Sielum

The agent remains visible in the dashboard as offline after a local uninstall. Revoke its registration from Dashboard → Devices if you do not intend to re-enroll the same machine.