Small decisions. Interesting possibilities.Submit contentSubmit

How it uses Jev

SemDecide maps piped text or JSONL to Jev typed judgments through `is`, `choose`, and `score`; `filter` annotates matching records, while `guard` asks narrow safety questions and applies deterministic local allow/escalate/block logic.

What Jev decides

Predicate requestExample answers · not a recorded Jev response · Source ↗
Question 1 · result
YOUR APP
INSTRUCTION

Does the supplied value satisfy the caller-provided criterion?

STATE

The caller supplies the value to judge as state; the criterion text comes from the caller. This describes the generic predicate path, not a captured invocation.

JEV · NOUL
YesNo

App workflow

  1. Provide bounded input

    Read one text source from stdin, --text, or --file; reject empty, binary, invalid, oversized, or malformed input locally.

  2. Choose a typed operation

    Run a predicate, named-option route, rubric score, JSONL filter, or the agent-safety guard recipe.

  3. Evaluate with Jev

    Send the semantic question and input to the configured model with timeout and retry controls.

  4. Consume a stable result

    Emit JSON or text and a documented process exit code; guard maps narrow signals to allow, escalate, or block.

Why it is interesting

It packages semantic judgments as predictable Unix inputs, structured outputs, thresholds, and exit codes, so shell scripts and CI can branch on uncertainty without parsing generated prose.