Intent File (/etc/agentic-route/intent.json)
Read by agentic-route-reconcile and agentic-route-daemon (override with
AGENTIC_ROUTE_INTENT). Not to be confused with routes.json, the full spec
read by the agentic-route CLI — see Configuration for
both schemas side by side.
{
"version": 1,
"forbidden_rules": [
{ "prio": 31580, "match": "suppress_prefixlength 0", "reason": "ProtonVPN capture rule" },
{ "match": "100.64.0.0/10 lookup main", "reason": "Never route the mesh via main" }
],
"pinned_routes": [
{ "dst": "default", "via": "192.0.2.1", "dev": "eth0", "reason": "Keep fallback egress" }
],
"custom_rules": [
{ "prio": 32765, "selector": "not from all fwmark 0xe1f1", "action": "lookup 205" }
]
}
forbidden_rules[].matchis a literal substring of the live rule’sselector actiontext, optionally scoped toprio. No regex.pinned_routesare re-added tomainwhenever a VPN client removes them.custom_rulesare added on top of the rules the reconciler discovers.
Full field reference: Configuration. Example:
etc/intent.json.example.