Skip to main content
Linux Device Agent route enforcement is local network enforcement for headless hosts, developer VMs, and server-style rollouts. It is useful for proving bounded destination controls from a Linux endpoint, but it does not have every browser, account, product, and model fact that other Forge control points can observe.
Linux devices omit an entire route rule when a condition cannot be enforced exactly. They do not drop the unsupported condition and enforce a broader rule.
Use these cases when you need a reliable Linux proof point:

Supported local route selectors

Linux local enforcement supports route rules that can be represented as bounded network facts: Endpoint-route policies must include an executable route anchor. Use an AI product, provider, destination domain, destination IP, or exact destination port so Forge can emit a route rule. For Linux endpoint validation, prefer explicit destination.domain, destination.ip, or exact destination.port conditions because they produce the clearest local evidence.

AI product and provider targeting

product.id and provider.id are valid Access policy fields. On endpoint routes, Forge can lower them only when the selected catalog target has active host or API identifiers, or when the policy also includes a concrete destination. If no endpoint route identifiers are available, Forge records a coverage-gap diagnostic and emits no endpoint rule. For a Linux proof, avoid a product-only policy unless the generated endpoint artifact shows a concrete rule in ruleSummaries. A stronger policy example is:
That keeps the product story visible while giving Linux a concrete destination to enforce.

Unsupported Linux local conditions

The following fields are not reliable Linux local route selectors. Depending on the full policy, Forge rejects endpoint-route activation or omits the Linux local route rule instead of broadening it: Do not use browser account, browser extension, local model, source health, or classification-state scenarios as the primary Linux endpoint proof. Use a macOS, Windows, browser, gateway, provider, or inline source that can observe and enforce those facts.

Unsupported condition shapes

Linux follows the endpoint-route projection rules. These policies are rejected or omitted rather than broadened:

Action behavior on Linux

When multiple matching policies apply, the strongest action wins: block, then require_approval, then review or allow.

Inspect the delivered Linux artifact

After saving a policy and waiting for the device to refresh, inspect the local configuration:
ruleSummaries shows route rules Linux can enforce locally. routeDiagnostics explains omitted rules and coverage gaps. Useful runtime evidence:

Linux test examples

Domain block

Create an Access policy with destination.domain eq example.com, action block, and endpoint-route enforcement. Then run:
Expected: HTTPS traffic to example.com is blocked. Domain-only Linux route blocks default to TCP 443.

Exact IP block

Create an Access policy with these conditions:
Then run:
Expected: TCP traffic to 1.1.1.1:443 is blocked. Other ports are outside this policy unless another rule matches them.

Process-narrowed block

Create an Access policy with destination.domain eq api.openai.com and process.name in ["python", "python3"], action block, and endpoint-route enforcement. Then run:
Expected: the Python request is blocked. The curl request is allowed unless another policy blocks the same destination.

Unsupported browser account condition

Create an Access policy with destination.domain eq chatgpt.com and browser.account_state eq personal_account, action block, and endpoint-route enforcement. Then run:
Expected on Linux: no local generic chatgpt.com block is emitted. Inspect routeDiagnostics for the unsupported browser-account field. Test this policy with a browser or account-aware source instead.

Content policies on Linux

Content policies are not Linux route rules. They run where the agent, gateway, MCP, or model surface provides the prompt, tool, result, response, or classification checkpoint. Linux coding-agent workflows can still be good Content policy use cases when the governed agent integration emits those checkpoints. Use these Linux-safe Content policy use cases: If a Content policy does not fire on Linux, check whether the tested agent path emits the selected checkpoint. Do not diagnose it as a Linux eBPF route issue.