jev-agent-guardrail
Python guardrail with a Streamlit dashboard that sends agent tool calls to Jev and allows, blocks or asks for clarification.
Overview
Agent Safety Guardrail with Jev is a small Python project that intercepts an AI agent's tool calls, sends the current agent state and proposed tool details to Jev, and enforces the result: allow when approved with high confidence, block when rejected or low confidence, suggest an alternative if provided, or request clarification when uncertain. It includes a Jev client wrapper, example agents for simple and file-operation tools, a quick demo script and an interactive Streamlit monitoring dashboard.
It is a learning-oriented example of a tool-call guardrail. The README's description of the primitives is not accurate: it describes Noul as no decision or uncertainty, whereas in Jev a Noul is a yes/no probability, and it describes Score as a 0-1 confidence. Readers should check the code for how answers are actually mapped. The README also suggests putting the API key in config.py, which risks committing it.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Choice | Should this tool call be approved, rejected or replaced with an alternative? | Approved · Rejected · Suggested Alternative |
How it works
- Intercept the agent's tool call
- Send state and tool details to Jev
- Allow on high-confidence approval, block on rejection or low confidence
- Suggest alternatives or ask for clarification when uncertain
- Monitor decisions in the Streamlit dashboard
Strengths
- Simple, readable example of a tool-call gate
- Interactive dashboard for watching decisions
Caveats
- README misdescribes Noul and Score semantics
- Suggests storing the key in config.py
- Prototype without stated tests or licence
Getting started
`pip install -r requirements.txt`, `export JEV_API_KEY=...`, then `python demo.py` or `streamlit run streamlit_app.py`.At a glance
- Type
- App
- Status
- prototype
- Language
- Python
- Runtime
- library, Streamlit dashboard
- Has code
- yes
Use cases and integrations
How curated lists describe it
A real-time safety guardrail and interactive monitoring dashboard for AI agent…
wh000wh000/awesome-jev-live
Frequently asked questions
What does the guardrail decide?
Whether to approve, reject or suggest an alternative for each agent tool call.
Is the README's explanation of Noul correct?
No. In Jev a Noul is a yes/no probability, not an absence of decision.
Is there a UI?
Yes, a Streamlit dashboard at localhost:8501.
Related projects
Local guard layer for coding agents that blocks dangerous tool calls by deterministic rules, with optional Jev judgments.
CLIbetaTypeScriptAuditable Zig terminal agent pairing Codex for coding with Jev typed preflight and postflight checks under deterministic policy gates.
CLIproductionZigGateway that checks agent tool calls with policy plus Jev evidence, then binds approval to a single-use permit for that exact action.
MCP serverbetaTypeScriptMCP proxy and hooks that screen agent tool calls before they run and their results before the agent reads them, using Jev judgments.
MCP serverbetaTypeScriptXano backend template where Jev judges each agent tool call as safe, needs review or dangerous, and uncertain calls wait for a human.
ProjectbetaXanoScriptOpenAI-compatible endpoint that answers an agent's command-approval call with APPROVE, DENY or ESCALATE from a Jev Choice, failing closed.
ProxybetaPython