Coding

Jev Skill

Try it

Build typed Jev and local-model decision harnesses

What it does

Jev turns application state and typed questions into structured answers that code can consume. It is a decision layer, not a replacement for a chat model: keep policy, thresholds, routing, calculations, and side effects in code.

The skill document

Jev Skill

Jev turns application state and typed questions into structured answers that code can consume. It is a decision layer, not a replacement for a chat model: keep policy, thresholds, routing, calculations, and side effects in code.

Start with the live docs

The documentation index is the source of truth and may change:

Read the targeted primitive, pattern, SDK, or cookbook page before writing a version-sensitive integration. Use research-notes.md for the current design map and links to the most relevant pages.

Core workflow

  1. Define the action the application must take. Work backward to the smallest semantic judgments needed for that action.
  2. Put the evidence in state. Prefer a named JSON object when the judgment depends on multiple fields or relationships; keep content and supporting facts in state rather than hiding them in question wording.
  3. Choose the question type by meaning:
    • noul: whether a condition holds; returns the probability of yes.
    • choice: one option from a defined set; include a no-match option when nothing should fit.
    • score: an ordered, bounded scale whose levels describe concrete cases.
  4. Write one narrow judgment per question. Give instructions and criteria enough context to stand alone. IDs are local response keys and are not sent to the model.
  5. Ask independent questions over the same state together. If a later question depends on an earlier answer or newly fetched evidence, make a second request instead of pretending the questions can see each other.
  6. Consume typed answers in code. Use probabilities and confidence to decide whether to act, review, broaden the route, or escalate; do not treat confidence as proof of correctness.
  7. Test representative and adversarial cases against a labeled golden set. Tune thresholds for the actual cost of false positives and false negatives, and compare Jev with the current model or deterministic baseline.

Current API contract

  • Endpoint: POST https://api.typesafe.ai/v1/systemone
  • Header: Authorization: Bearer $TYPESAFE_API_KEY
  • Model: explicitly use jev-latest unless the user asks for another currently documented model.
  • Request fields: state, model, and a named questions map.
  • Keep API keys server-side; never commit, expose, or print them.

Minimal request shape:

{
  "state": {
    "message": "I was charged twice and need help today.",
    "account_tier": "pro"
  },
  "model": "jev-latest",
  "questions": {
    "is_urgent": {
      "type": "noul",
      "instructions": "Does the message express time-sensitive urgency?"
    },
    "team": {
      "type": "choice",
      "instructions": "Which team should handle this request?",
      "criteria": {
        "billing": "Charges, refunds, invoices, or subscriptions",
        "technical": "Bugs, outages, or integration failures",
        "sales": "Pricing, upgrades, or buying questions",
        "other": "None of the above"
      }
    },
    "frustration": {
      "type": "score",
      "instructions": "How frustrated does the customer appear?",
      "criteria": [
        "Calm and factual",
        "Frustrated but civil",
        "Very angry or hostile"
      ]
    }
  }
}

Response handling is type-specific: read answer.noul for a Noul; read answer.choice, answer.probabilities, and answer.confidence for a Choice; read answer.score, answer.legend, answer.probabilities, and answer.confidence for a Score. A Noul has no separate confidence field: its yes probability is the signal.

State and question design rules

  • Jev currently accepts text, JSON objects, or arrays of text values. Images, audio, and video are not supported by the documented state interface.
  • State is the evidence; questions are the judgments. Do not put changing policy or hidden context only in an instruction.
  • Criteria must cover the real candidates. A Choice cannot select an option that was omitted.
  • Score levels must be ordered, concrete, and independently understandable.
  • Use one Noul per independently useful yes/no condition when several labels may apply; do not force multi-label behavior into one Choice.
  • Keep speculative questions independent and explicitly state their premise.
  • Prefer code-controlled composition of answers to asking Jev to explain its own result in prose.

Patterns to reach for

  • Intent routing: classify intent and complexity, then send the item to deterministic logic, a specialist model, or a human.
  • Confidence-gated routing: use the answer to choose what to do and confidence to decide whether it is safe to act automatically.
  • Fan-out: ask several independent dimensions in one request when they share the same state.
  • Composite scoring: keep atomic Scores and combine them with weights in code.
  • Verification: check a claim or extracted field against evidence and escalate uncertain cases.

Evaluation and operational guardrails

Before production, measure accuracy, latency, token usage, and cost on a representative golden set. Keep questions and thresholds in one reviewable module. Log request IDs and non-sensitive metadata, not API keys or raw customer data unless the application's privacy policy permits it. Handle 401, 429, and 529 explicitly; use the SDK's default exponential-backoff retry policy when possible. Do not retry a side effect just because a model request was retried.

Run the included harness

For a reproducible typed evaluation, use scripts/jev_harness.py with a JSON question map and JSONL cases. Start with --validate-only, then set TYPESAFE_API_KEY and run the same golden set with --output report.json. The harness supports concurrent independent cases, bounded retries for 429/529, exact answer accuracy by primitive, raw Noul probabilities, Choice/Score confidence, latency, and token totals. Read harness.md for the input schema and commands.

When a task needs current SDK syntax, limits, model aliases, or cookbook details, read the live page linked above instead of relying on this summary.

Related skills

Join a video meeting as an AI bot with voice, avatar, and screenshare across four operating modes.

by johnpatternai21 installs8 stars

Stores durable facts in a categorized, plain-markdown vault on disk, alongside your agent's built-in memory.

by Iván555 installs18 stars

Generate and edit Draw.io, Mermaid, and Excalidraw diagrams from natural language using a structured JSON spec.

by nssa.io1.0k installs47 stars

Query and manage Linear issues, projects, teams, cycles, labels, and comments through a managed OAuth GraphQL endpoint.

by byungkyu518 installs18 stars

Adaptive web scraping in Python that bypasses anti-bot systems and scales from single requests to concurrent crawls.

by d4vinci399 installs28 stars

Find why your productivity system keeps failing, then apply the smallest fix — capacity math, bottleneck routing, durable local notes.

by Iván854 installs69 stars

More from aiwithenoch

Browse all skills

Design, audit, diagnose, and improve Meta/Facebook/Instagram lead generation funnels for service businesses that sell through applications, booking pages, nu...

by aiwithenoch5 installs

Edit AI-assisted drafts without flattening the writer's voice, detect named AI-writing patterns without rewriting, or generate deliberately exaggerated AI copy for satire and before-and-after examples. Use when the user wants writing clearer, more direct, more opinionated, or less AI-sounding; asks whether a draft reads as AI; or explicitly requests intentionally bad AI-style copy.

by aiwithenoch3 installs

Save durable memory without secrets

by aiwithenoch6 installs1 stars

Create or edit books with the Enoch Book Engine, including strict B5 pages, inline SVG diagrams, and mandatory screenshot-based visual QA.

by aiwithenoch1 installs