August 15, 2026
Installing the monitoring agent is one command, copied and pasted into a terminal. It downloads the agent, sets it up to run in the background, and starts monitoring — no settings file to edit. Here's what that one command actually does, and one access detail worth knowing before you go looking for it.
The page that hands you your install command requires the view_billing permission,
since it displays your license key. On a team account, that permission belongs to exactly one
role: Billing. A Billing team member's access is limited to billing — they don't have permission to
view devices, which means after installing the agent from this page, they can't then open the
Devices tab to confirm it registered. If you're setting up a new device on someone else's behalf,
make sure they're the account owner or have the Billing role, and plan for someone else to confirm
the device actually showed up.
Only an active subscription's license key is ever offered on this page — a canceled subscription's key won't appear, and using an old one would be rejected at registration anyway. The key is baked directly into the install command you copy; there's no separate step to enter it.
| Platform | Command |
|---|---|
| Windows (PowerShell, as administrator) | irm "…/api/agent/install.php?key=…&format=ps1" | iex |
| macOS (Terminal) | curl -sL "…/api/agent/install.php?key=…" -o /tmp/vf-install.sh && sudo bash /tmp/vf-install.sh |
| Linux (terminal) | Same command as macOS |
| Chrome OS (Linux terminal) | Same command as macOS/Linux, as "Step 2" |
The … marks stand in for your account's own server address and license key, which this
article can't show — don't copy these commands as written. Copy the real, complete command from
your dashboard's Setup page instead.
Chrome OS runs the agent inside Chrome OS's built-in Linux environment — there's no separate
Chrome-OS-specific installer. Before the install command, run "Step 1":
sudo apt-get install -y curl.
Chrome OS Terminal's bracketed paste mode can occasionally append a stray ~ to a pasted
command, which shows up as an error like bash~ or curl~. If that happens,
type — don't paste — this line first, then paste the install command normally:
bind 'set enable-bracketed-paste off' |
Every platform registers two things: the agent itself, and a separate daily updater that checks for new agent versions at 3 AM.
vf-agent. The updater runs from a
daily cron entry at 3:00 AM.com.verifyfiltering.agent. The
updater is a second LaunchDaemon, com.verifyfiltering.updater, also scheduled for
3:00 AM.The device shows up on your dashboard after its first successful check-in with our servers — usually within a minute. If your account is already at its device limit, that first check-in is rejected and the device won't appear; you'll need to free up a slot or upgrade your plan first.
Once your device appears, see reading your device list for what each status badge means while it settles in.