Apps

Mini tools, already wired.

Each card opens the playground with a state and questions filled in. Change the words, then run.

Support

Ticket triage

Choice of team, a noul for urgency, a score for frustration. One round trip.

Agents

Tool guard

Before a refund, a send, or a delete: allow, confirm, review, or deny.

Agents

Task router

proceed_fast, deep_review, split_task, or block.

Research

Citation check

Supported, mixed, unsupported, or not enough evidence. Jev does not browse.

Ops

Invoice coding

Software, fees, split, or human review — from a vendor memo.

Context

Keep or drop

Three snippets, three choices. What stays verbatim for the current goal.

HTTP

Preset API

The same ideas as endpoints, if you would rather POST fields than build questions.

Agents

MCP tools

Six tools an agent can call at a decision boundary.

What each one returns

Same state, different branches

Ticket triage

State is the customer note plus a one-line policy. Questions: a choice of team, a noul for urgency, a score for frustration. Route on the team only when confidence is high enough for that queue. Use urgency to jump the line. Use frustration to pick the tone of the reply, which a writer model can draft after the decision exists.

Tool guard

State is the tool name, the arguments, why the agent wants to run it, and the policy. The choice is allow, confirm, review, or deny. A second noul asks whether the effect is hard to undo. A score asks how expensive a wrong run is. Your code maps those three onto the actual call. Jev does not send the refund.

Task router

One paragraph of task, four ways to handle it. proceed_fast is a lookup or a clear edit. deep_review spends a slower model. split_task means the paragraph hides more than one decision. block means the text is unsafe or too thin to act on. An ambiguity noul sits beside the choice so a confident-looking label can still be treated as soft.

Citation check

Claim and passage, nothing else. Supported means the passage backs the sentence. Mixed means a piece of it does. Unsupported means the passage cuts against it. Insufficient means you brought the wrong text. There is no browse step inside the call. If the passage is off topic, on_topic on the preset API says so separately.

Invoice coding

Vendor, memo, amount. The choice is software, fees, split, or review. needs_split is a noul for memos that mention two kinds of cost, like seats plus a late fee. The amount is not extracted by the model. Your ledger already has the number. The model only says which account the words belong to.

Keep or drop

A goal and three snippets. Each snippet gets its own choice: keep verbatim, truncate, or drop. The answers are independent, so a stack trace can stay while an avatar change goes. Anything you keep is copied from the input by your code. The model never rewrites the line.

Open any card above to land in the playground with that preset loaded. Change the state before you run. The questions are yours to edit: add a noul, rename an option, tighten a level. The request panel updates as you type.