HackNight #5: Jev-a-thonTue 10 Nov 2026 · 17:30Event page ↗

/ jev lab

Watch Jev make a call.

Jev is TypeSafe's decision model. Instead of generating text, it answers typed questions about whatever you give it: pick one of these labels, rate this on a rubric, yes or no. Every answer comes back with calibrated probabilities. This is exactly how projects on the wall get their category.

Try:

Answers appear here

Four questions, one request: a category choice, two yes/no checks and a scope score.

The code behind it

One systemOne call through Netlify AI Gateway. No API key in the code, no prompt parsing, no JSON repair.

import "server-only";
import { choice, noul, score, TypeSafeClient } from "@typesafe-ai/sdk";

// Credentials come from Netlify AI Gateway; send plain JSON through the proxy.
const typesafe = new TypeSafeClient({ compression: false });

const { answers } = await typesafe.systemOne({
  model: "jev-latest",
  state: { project_name, pitch },
  questions: {
    category: choice("What kind of decision does this hackathon project make?", {
      moderation: "Flagging, filtering or reviewing user content…",
      lead_scoring: "Qualifying, ranking or prioritising leads…",
      routing: "Triaging tickets, emails or requests…",
      handoff: "Deciding when an AI agent should escalate to a human",
      // …
      other: null,
    }),
    decisionPowered: noul("Does this app rely on an AI model to make a decision?"),
    needsHuman: noul("Would a human need to review this app's decisions?"),
    scope: score("How big is the scope of this idea for a hack night?", [
      "Tiny", "Focused", "Ambitious", "Moonshot",
    ]),
  },
});

answers.category.choice;        // "routing"
answers.category.probabilities; // { routing: 0.81, handoff: 0.09, … }
answers.decisionPowered.noul;   // 0.94