Documentation Index
Fetch the complete documentation index at: https://docs.runlayer.com/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
- Mosyle admin access
- Devices enrolled via User-Approved MDM or Automated Device Enrollment (for Full Disk Access)
Deployment Steps
Deploy PPPC Profile
Detect needs to read MCP config files in TCC-protected directories (Desktop, Documents, Application Support). Without a PPPC profile, macOS shows a permission dialog on every scan.Download the PPPC profile from the Detect configuration page in the Runlayer dashboard (Settings → Shadow MCPs), or use the button below:
The profile targets a dedicated
runlayer-scan wrapper binary so that Full Disk Access is scoped to the scan process only — not to general-purpose tools like uvx.- Switch to the Management tab in Mosyle
- Look for Certificates / Custom Profiles. If it is not available, click Activate New Profile Type and then click Activate under “Certificates / Custom Profiles”
- Click Add New Profile
- Provide a Name (e.g., “AI Watch Detect - Full Disk Access”) and click Select the file to upload the downloaded
.mobileconfig - Click Add Assignment to assign to target machines. It is recommended to assign to all devices, but must include all devices that will have Detect deployed
- Click Save
Get Deployment Artifacts
In the Runlayer dashboard, go to Settings → Shadow MCPs. Under the Detect section, click Configure and select your MDM platform. This opens a setup dialog that auto-generates an API key and renders the deployment script.
Create a Custom Command
- Under the Management tab, select Custom Commands
- Click Add new profile
- Provide a Name (e.g., “AI Watch Detect”), check Enable variables for this profile (use
%Email%for username,%DeviceName%for device name), and paste the generated script into the code box - Switch to the Execution Settings tab and configure the execution frequency (at least daily recommended)
Verification
Verify in Runlayer
Navigate to Shadow in the Runlayer dashboard and confirm devices appear in the Detect data.
Log Locations
| Platform | Log Location |
|---|---|
| macOS | /var/log/runlayer/ai_watch_detect.log |
| macOS (fallback) | /tmp/runlayer-ai_watch_detect.log |
The fallback log location is used when the primary path (
/var/log/runlayer/) cannot be written to due to permissions.Exit Codes
| Code | Meaning |
|---|---|
| 0 | Success |
| 1 | General failure (no user logged in, missing config, credential storage failed) |
| 2 | Network failure (cannot reach PyPI) |
| 3 | Installation failure (uv or CLI install failed) |