vet across managed macOS and Linux endpoints. After vet is in place, you can add a separate MDM task to collect endpoint inventory and sync it to SafeDep Cloud.
This guide works with any MDM that can deploy a package or run shell commands, such as Jamf, Intune, JumpCloud, Mosyle, or Kandji.
Use this guide for two jobs:
- Make
vetavailable on each managed endpoint. - Run optional endpoint inventory on a schedule.
Installing
vet does not require a SafeDep account. SafeDep Cloud credentials are required only when you want endpoint inventory in SafeDep Cloud.Before you start
You need:- An MDM policy that can run a shell command, or deploy a package.
- Administrator access on the target endpoints.
- A small test device group for the first deployment.
- A selected install method: Homebrew, npm, or a pre-built binary.
vet in a system path or make sure the MDM job can resolve vet from PATH. The pre-built binary is the most predictable option for this case.
Install vet
Choose the method that matches the software already managed on your endpoints.- Pre-built binary
- Homebrew (macOS and Linux)
- npm
Use this for the most predictable MDM deployment.Download the archive for each operating system and architecture from vet releases. Verify it with the published
checksums.txt file, then add the extracted vet binary to your MDM package.Install the binary in a system path:- macOS
- Linux
Verify the install
Assign the install policy to your test group first. After the policy runs, verify the installation:vet path. The second command must return the installed version.
Update vet
Updatevet through the same MDM policy and install method:
- Pre-built binary
- Homebrew (macOS and Linux)
- npm
Download and verify the required release, then replace the managed
vet binary in your MDM package. Re-run the install policy to replace /usr/local/bin/vet on macOS and Linux.vet version after the update and confirm that it reports the expected version.
Uninstall vet
Disable any MDM tasks that runvet before you remove the CLI. Then use the uninstall command that matches the install method.
- Pre-built binary
- Homebrew (macOS and Linux)
- npm
command -v vet after removal. It must not return a path.
Run endpoint inventory with your MDM
Installingvet makes the CLI available, but it does not schedule scans. Deploy endpoint inventory as a separate MDM task. This keeps installation, credentials, and schedules independent.
The current fleet script is vet_endpoint_scan.sh. It supports macOS and Linux. The script runs vet endpoint scan and collects AI tools, coding agents, MCP servers, and agent skills.
1
Deploy the script
Download the script from the The script expects
vet repository and deploy it to a managed path on each endpoint. Make the file executable.vet to already be installed on the endpoint.2
Choose local-only or cloud sync
Run the script with no credentials for local-only inventory:For SafeDep Cloud sync, create an API key and get your Tenant ID from SafeDep Cloud settings. Store both values in your MDM secret store, then pass them as environment variables:Cloud sync starts only when both variables are set. If neither variable is set, the script runs local-only. Do not set only one variable.
3
Choose the execution context
Run the script as root to scan every local human account on the machine. Use this mode for shared devices or when you want endpoint-wide coverage.Run the script as the logged-in user to scan only that user. Use this mode when you want the user’s full
PATH, especially for CLI tool discovery on macOS.4
Add optional scan flags
Pass extra flags at the end when you want to narrow the inventory or reduce output. The script forwards them to
vet endpoint scan.5
Assign a schedule
Assign the inventory policy to your test group first. Then choose the schedule that matches how often you want the inventory refreshed.Keep this policy separate from the install policy. The script continues to the next user if one user scan fails and reports the final result in the MDM job output.
6
Verify the result
Review the MDM job output and confirm that the script found
vet and scanned the expected users.If Cloud sync is enabled, open SafeDep Cloud, select Endpoints, open the endpoint, and select the Inventory tab. Confirm that the endpoint and its discovered items appear.vet.
vet installation options
Source of truth for supported installation methods.
vet MDM scripts
Source of truth for current macOS and Linux fleet scripts.
Endpoints inventory
Configure inventory sync and review discovered items.

