Jev + Cursor
Cursor is great at editing code. Jev is great at bounded decisions. Combine them: let Cursor plan and patch, and call Jev when the agent needs a typed gate — risk, route, keep/drop — instead of parsing another chat paragraph.
Pattern
Before a destructive tool call or a costly frontier request, POST a compact state to /api/v1/decide. Branch on noul/choice. Only continue the Cursor agent loop when the gate allows (or ask the human when confidence is low).
Minimal HTTP call
Store JEV_API_KEY as a Cursor/OS env secret. From a script or MCP tool wrapper:
curl https://jevtypesafe.org/api/v1/decide \
-H "Authorization: Bearer $JEV_API_KEY" \
-H "Content-Type: application/json" \
-d '{"state":"rm -rf ./dist after tests passed","questions":{"safe":{"type":"noul","instructions":"Is this shell command safe to auto-run?"}}}'MCP route
If you prefer tools inside the agent, expose decide as an MCP tool (see /integrations/mcp/ and /agent-skill/). Cursor can then call Jev without pasting curl into the chat.
FAQ
- Why add Jev inside Cursor?
- Cursor’s model is generative. Jev returns calibrated gates so you can fail closed on risky actions without hoping the chat model stays on-schema.