jev_gate_action
Assess an action before execution to judge its destructiveness, outward-facing scope, and blast radius, then return allow, confirm, or block to prevent costly mistakes.
Instructions
Advisory pre-flight check on an action you are about to take: judges whether it is destructive, outward-facing, in scope for what the user asked, and whether it touches credentials, plus how wide its blast radius is — then returns allow / confirm / block from a deterministic policy in code.
NOT A SECURITY BOUNDARY. It is a judgment layer that catches plausible mistakes, and Jev is not hardened against adversarial text: an action or context written to argue for its own approval can shift the result. Never rely on it to contain untrusted input, and never let allow stand in for a real permission check.
Use it just before something you cannot cheaply undo: deleting or overwriting files, git history rewrites, installs, deploys, sending messages, spending money, anything touching an external system.
Pass action as the concrete thing you are about to do, including tool name and arguments — not a paraphrase. Pass user_request in the user's own words.
confirm means ask the user first. block means it looks both out of scope and consequential; re-read the request rather than retrying.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | Exactly what you are about to do, including the tool name and its arguments. | |
| context | No | Optional short context: the task, the relevant prior step. | |
| thresholds | No | Override the server's configured gating thresholds for this call only. | |
| user_request | Yes | What the user actually asked for, in their words. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | The versioned model id that actually answered. | |
| usage | Yes | Token usage. Jev charges for input tokens only. | |
| reasons | Yes | Which policy rules fired, in plain language. | |
| signals | Yes | Raw P(yes) for each signal. Near 0.5 means the model is unsure. | |
| decision | Yes | allow: proceed. confirm: ask the user first. block: do not run it. | |
| latency_ms | Yes | Wall-clock time for the underlying API call(s), including retries. | |
| thresholds | Yes | ||
| blast_radius | Yes | How far the effects reach. 0 = read-only, 3 = production or other people. | |
| signal_leans | Yes | How each signal was read: yes / no / uncertain, using the auto threshold. |