- HTTP method.
- URI, host, and path.
- User agent.
- Content type.
- Model field when present.
- Body length.
- Parsed request body.
Decisions
Policy rules produce one of three decisions:
Blocked responses include the request ID, decision, rule ID, rule version, reason, and match metadata when available.
Rule matching
Rules are checked in order. The first matching rule wins. Supported condition types include:Local default policy
Rye starts with a local default policy so enforcement works before remote sync completes. The default policy:- Denies obvious SSH private-key exfiltration patterns.
- Denies oversized payloads above 2 MB.
- Allows common LLM and AI coding tool domains.
- Requires approval for requests that do not match an allow rule.
Remote policy sync
When connected, the daemon syncs policy snapshots over gRPC. Remote policy snapshots are:- Validated before use.
- Stored locally in SQLite.
- Applied atomically.
- Acknowledged to the control plane.
- Reused from cache when the network is unavailable.
Inspect policy effects
Userye status and rye doctor to verify daemon and policy state:
Rye policy is external to the assistant. Prompt instructions such as “do not send secrets” can guide behavior, but Rye policy can block a request before it leaves the workstation.