Small decisions. Interesting possibilities.Submit contentSubmit

How it uses Jev

When the optional Jev binding is armed, guest TypeScript can submit an arbitrary state and one or more named Noul, Choice, or Score questions through jev.ask. The host sends the request and returns typed answers to guest code; the repository defines the transport and shapes, but no product-specific decision consumer or fixed question set, so the example below is an explicitly illustrative request shape.

What Jev decides

Example: ask whether a support message needs escalationExample answers · not a recorded Jev response · Source ↗
Question 1 · urgent
YOUR APP
INSTRUCTION

Escalate?

STATE

The pinned client test uses state “Customer is angry” and one keyed Noul question. The test uses a mocked response; this is not a captured live Jev call.

JEV · NOUL
YesNo

App workflow

  1. Arm the capability

    The host conditionally exposes jev in guest bindings when an API-backed Jev client is configured.

  2. Build the guest request

    The agent writes TypeScript state and Noul, Choice, or Score questions; the code is type-checked before running.

  3. Send and consume answers

    The guest jev.ask call forwards state and questions to the client. Typed answers return to the same guest execution, where its code can use them alongside tool results.

Why it is interesting

It makes typed probabilistic classification an optional primitive inside a sandboxed tool-calling agent. Guest code can pair Jev with discovered MCP tools in one execution, while the host controls whether the capability is available.