Macos jamf
Deploy the AgentKeeper browser extension to Jamf-managed Macs. This path uses a Jamf Configuration Profile to force-install the extension in Chrome and a separate Managed Preferences profile to...
Jamf Pro · Configuration Profiles
Deploy the AgentKeeper browser extension to Jamf-managed Macs. This path uses a Jamf Configuration Profile to force-install the extension in Chrome and a separate Managed Preferences profile to deliver the org API key.
Prerequisites
- Jamf Pro with configuration profile support
- Chrome deployed to managed Macs
- An org API key from Settings → Access → API keys (starts with
ak_live_)
The AgentKeeper Chrome extension ID is lllalmnahkbikalapoancgfkiegfoiim (shared by Chrome, Edge, Brave, and Arc). It is already filled into the templates below.
Step 1: Create the Chrome extension profile
- In Jamf Pro, go to Computers → Configuration Profiles → New.
- General: give it a name (e.g.,
AgentKeeper Browser Extension). - Add a Custom Settings payload with:
- Preference Domain:
com.google.Chrome - Property List:
- Preference Domain:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>ExtensionInstallForcelist</key>
<array>
<string>lllalmnahkbikalapoancgfkiegfoiim;https://clients2.google.com/service/update2/crx</string>
</array>
</dict>
</plist>
- Scope: assign to your target Macs or smart group.
- Save and distribute.
Step 2: Create the managed config profile
Create a second configuration profile to deliver the org API key and user email.
- Add a new Custom Settings payload with:
- Preference Domain:
com.google.Chrome.extensions.lllalmnahkbikalapoancgfkiegfoiim - Property List:
- Preference Domain:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>orgApiKey</key>
<string>ak_live_xxxxxxxx</string>
<key>backendUrl</key>
<string>https://www.agentkeeper.dev/api</string>
<key>userEmail</key>
<string>{EmailAddress}</string>
</dict>
</plist>
Replace:
ak_live_xxxxxxxx: your organization API key{EmailAddress}: Jamf substitutes this with the user's email from the device record
backendUrl is optional. The extension already defaults to https://www.agentkeeper.dev/api. Set it to your own host only for on-premises deployments.
Note on {EmailAddress}: This substitution uses the email address from the Jamf device's assigned user. Ensure devices are assigned to users in Jamf for this to resolve correctly. If the device has no assigned user, userEmail will be empty and user binding will fall back to the next MDM sync cycle.
Edge, Brave, Arc, Dia, Vivaldi
The extension ID and update URL are identical across every Chromium browser. Only the macOS preference domain changes by browser. To extend the profile above, add a Custom Settings payload for each browser using its bundle ID:
| Browser | Preference domain |
|---|---|
| Edge | com.microsoft.Edge |
| Brave | com.brave.Browser |
| Arc | company.thebrowser.Browser |
| Dia | company.thebrowser.dia |
| Vivaldi | com.vivaldi.Vivaldi |
To cover several browsers at once, use the generated multi-browser profile instead of editing the file by hand. See macOS: Multi-browser.
Verifying the rollout
After the profile deploys (typically within 5 minutes of the next Jamf check-in):
- On a managed Mac, open
chrome://policy. ConfirmExtensionInstallForcelistshows the AgentKeeper entry and managed config keys appear. - Open
chrome://extensions. AgentKeeper shows "Installed by your administrator". - The extension popup reads "Paired".
See Verifying deployment for the full checklist including dashboard confirmation.