Pult Presence Docs
Pult AgentMDM Deployment

MDM Deployment Overview

Deploy the Pult Agent at scale using your MDM system.

For organizations managing devices centrally, the Pult Agent can be deployed via your MDM system. This automates both the installation and the enrollment process so employees don't need to install or sign in manually.

Deployment Steps

A typical MDM deployment involves three parts:

  1. Install the agent -- Upload the Pult Agent installer (.pkg for macOS, .msi for Windows) to your MDM and deploy it to target devices.
  2. Provision the bootstrap token -- Deploy the bootstrap token to each device so the agent can enroll automatically. Depending on your MDM, this may be done via MSI properties, a post-install script, or file-based deployment.
  3. Approve device requests -- As devices enroll, review and approve the device authentication requests in the Pult Dashboard.

Platform-Specific Guides

Windows

  • Microsoft Intune Deployment -- Complete guide using PSAppDeployToolkit for Intune Win32 App deployment.
  • For other MDMs that run installers in user context, use MSI properties directly:
msiexec /i pult-agent.msi BOOTSTRAP_TOKEN="your-token" AUTOLAUNCHAPP=1

macOS

For macOS MDMs (Jamf, Kandji, etc.):

  1. Deploy the .pkg installer through your MDM.
  2. Configure a post-install script to provision the bootstrap token (via CLI or file-based method).
  3. Set up managed login items to ensure the agent auto-starts.

Auto-Start Configuration

Windows

The MSI installer registers the agent for auto-start via a registry entry (HKLM\Software\Microsoft\Windows\CurrentVersion\Run) by default (AUTOSTART_ALLUSERS=1).

macOS

macOS requires a separate MDM configuration profile to ensure the agent starts automatically and cannot be disabled by the user. See Managed Login Items.

Version Detection

Use these scripts in your MDM to detect the installed agent version (useful for triggering automatic updates):

macOS:

#!/bin/bash
APP_PATH="/Applications/Pult Agent.app"
REQUIRED_VERSION="0.2.9"

if [[ ! -d "$APP_PATH" ]]; then
    exit 1
fi

INSTALLED_VERSION=$(/usr/bin/defaults read "$APP_PATH/Contents/Info.plist" CFBundleShortVersionString 2>/dev/null)

if [[ "$INSTALLED_VERSION" == "$REQUIRED_VERSION" ]]; then
    exit 0
else
    exit 1
fi

Windows (PowerShell):

$AgentPath = "C:\Program Files\Pult Agent\pult-agent.exe"
$RequiredVersion = "0.2.9"

if (-not (Test-Path $AgentPath)) {
    exit 1
}

$InstalledVersion = (Get-Item $AgentPath).VersionInfo.FileVersion

if ($InstalledVersion -eq $RequiredVersion) {
    exit 0
} else {
    exit 1
}

Exit code 0 = compliant (correct version), exit code 1 = non-compliant (triggers re-install).

Last updated on Apr 8, 2026, 11:52 PM

On this page