Quilr Endpoint Agent — Manual Deployment Guide (macOS)
Subtitle: Hands-on, single-Mac installation of the Quilr Endpoint Agent — trusting the CA chain, installing the pkg, and approving the System Extension and Full Disk Access interactively, with no MDM.
Version: 2026.05.21
Table of Contents
- Overview
- Prerequisites
- Part 1 — Download and Stage the Install Bundle
- Part 2 — Trust the Quilr CA Certificates
- Part 3 — Install the Agent Package
- Part 4 — Approve the System Extension (Content Filter)
- Part 5 — Grant Full Disk Access
- Key Fields and Identifiers
- Validation and Testing
- Troubleshooting
- Uninstall
- Summary
- References
1. Overview
This guide covers installing the Quilr Endpoint Agent for macOS by hand on a single Mac — for a pilot machine, a test/lab device, a developer workstation, or any Mac that is not enrolled in an MDM (Jamf, Kandji, Intune). You run the installer locally and approve macOS security prompts interactively at the keyboard.
How this differs from an MDM rollout. With an MDM, configuration profiles silently pre-trust the CA chain, pre-grant Full Disk Access (PPPC), and pre-approve the System Extension before the agent ever runs — the user sees nothing. Manually, there is no profile to pre-approve anything, so you must perform three approvals yourself:
| What MDM does silently | What you do by hand here |
|---|---|
| Pushes the root + intermediate CA to the System keychain | security add-trusted-cert into /Library/Keychains/System.keychain (Part 2) |
| PPPC profile pre-grants Full Disk Access | Toggle the agent on in System Settings → Privacy & Security → Full Disk Access (Part 5) |
| System Extension payload pre-approves the content filter | Click Allow in System Settings → Privacy & Security, then Allow the network filter dialog (Part 4) |
Order of operations: trust the CA certificates first, then install the pkg, then approve the System Extension and Full Disk Access on first launch. Trusting the CA before the agent runs means its first TLS handshake against the Quilr control plane succeeds — no failed handshake, no retry loop.
You must be physically at the Mac. The System Extension and Full Disk Access approvals require clicking buttons in System Settings — they cannot be done over plain SSH. Use Screen Sharing / a console session if the Mac is remote.
Benefits:
- No MDM required — install on any Mac you have admin rights to.
- Same agent, certs, and pkg as the managed rollouts; only the approval mechanism differs.
- Fully scriptable up to the two GUI approvals (extension + FDA).
- Clean, documented uninstall for re-testing.
2. Prerequisites
| Requirement | Details |
|---|---|
| Local admin | An administrator account on the Mac with sudo rights |
| Physical / console access | Screen Sharing or a logged-in console session to click the System Settings approvals (not plain SSH) |
| macOS version | A current macOS release (Apple Silicon or Intel); System Extension approval lives in System Settings → Privacy & Security on macOS 13+ |
| Signed installer | quilr-endpoint-agent-installer.pkg — Developer ID Installer-signed and notarized (Team ID W8FHSH4RM5) |
| Network egress | The Mac can reach the Quilr distribution host and control plane (see URL Exception List — AI Apps / Non-AI Apps companion guides for SSL-bypass entries) |
| Bundle download | Latest macOS bundle obtained from Quilr support (Part 1) |
3. Part 1 — Download and Stage the Install Bundle
Step A. Obtain the bundle
The install bundle is distributed by Quilr support. Request the download URL and any associated checksum for the current production build (architecture path: mac/silicon).
- Request the bundle URL from Quilr support (
support@quilr.aior your assigned contact). - Download the zip onto the target Mac (or copy it across).
- Verify the checksum provided by Quilr before extracting.
- Unzip into a working directory, e.g.
~/Downloads/quilr/.
Step B. Bundle contents
quilr-endpoint-agent-install-bundle/
├── certs/
│ ├── quilr-ea-intermediate-ca.crt
│ └── quilr-root-ca.crt
├── quilr-endpoint-agent-installer.pkg
├── quilr-endpoint-agent-nw-extension.mobileconfig
└── quilr-endpoint-agent_FullDiskAccess.mobileconfig
| File | Purpose | Used in this guide |
|---|---|---|
certs/quilr-root-ca.crt | Quilr root CA — anchor of trust | Part 2 (trust manually) |
certs/quilr-ea-intermediate-ca.crt | Quilr intermediate CA — chains to the root | Part 2 (trust manually) |
quilr-endpoint-agent-installer.pkg | Installs the agent to /Applications | Part 3 |
*.mobileconfig files | MDM pre-approval payloads | Not used in a manual install — you approve interactively in Parts 4–5 |
The two
.mobileconfigfiles are for MDM rollouts only. In a manual install you do not load them; instead you grant the same permissions by hand. They are useful as a reference for what the agent needs (Full Disk Access + the content-filter System Extension).
4. Part 2 — Trust the Quilr CA Certificates
The Quilr Endpoint Agent validates TLS against Quilr's internal CA, so the System keychain must trust the chain before the agent runs. Add the root as a trusted root and the intermediate so the chain resolves.
Step A. Add the certificates (admin Terminal)
cd ~/Downloads/quilr/quilr-endpoint-agent-install-bundle
# Root CA -> trusted root anchor in the System keychain
sudo security add-trusted-cert -d -r trustRoot \
-k /Library/Keychains/System.keychain certs/quilr-root-ca.crt
# Intermediate CA -> present in the System keychain so the leaf chains to root
sudo security add-trusted-cert -d -r trustAsRoot \
-k /Library/Keychains/System.keychain certs/quilr-ea-intermediate-ca.crt
You will be prompted for the admin password (and possibly a keychain authorization). Both certs land in the System keychain (not login), so trust is machine-wide.
Step B. Verify the chain is trusted
# Expect 2 Quilr certificates in the System keychain
security find-certificate -a /Library/Keychains/System.keychain | grep -i quilr | wc -l
# Validate the agent intercepts a monitored AI host (Claude) (chain should verify cleanly)
openssl s_client -connect claude.ai:443 -servername claude.ai </dev/null
Why both certs: the agent presents a leaf signed by the Quilr intermediate, which chains to the Quilr root. Trust the root so it is an anchor; install the intermediate so macOS can build the path from leaf → intermediate → root. Missing the intermediate is the most common cause of
x509: certificate signed by unknown authorityafter a manual install.
5. Part 3 — Install the Agent Package
The package is Developer ID-signed and notarized, so Gatekeeper allows it without lowering security.
Step A. Install from Terminal (recommended)
sudo installer -pkg quilr-endpoint-agent-installer.pkg -target /
The installer writes QuilrAIProxy.app to /Applications, installs its LaunchDaemon com.sentinel.agent under /Library/LaunchDaemons/, and registers the network System Extension. The agent service starts automatically (the quilrai-proxy child process is spawned by the agent).
Step B. Or install from the GUI
- Double-click
quilr-endpoint-agent-installer.pkg. - Follow the installer; authenticate as an administrator when prompted.
- If Gatekeeper objects (rare for a notarized pkg), right-click → Open, or allow it under System Settings → Privacy & Security.
Step C. Confirm the install landed
ls -d /Applications/QuilrAIProxy.app # app present
sudo launchctl list | grep -i quilrai # com.sentinel.agent loaded
pgrep -lf "quilrai|quilrai-proxy" # process(es) running
On first launch the agent triggers two macOS approval flows — the System Extension (Part 4) and Full Disk Access (Part 5). Until you complete both, the agent runs but cannot intercept traffic or read protected files. Continue to Part 4 immediately.