Skip to content
System One

Jev with Pi: extensions, auto mode and routers

To use Jev with Pi, install a third-party extension such as pi-typesafe, pi-warden, or pi-jev-router with pi install npm:<package>, then set TYPESAFE_API_KEY and run its slash command, for example /typesafe login or /warden enable. No official TypeSafe or Pi integration exists yet; every extension is independently authored and requires Pi 0.85 or newer.

Updated

Pi has no built-in Jev support. Seven third-party extensions plug it in instead: a shared TypeSafe client, a supervision layer that flags risky or stalled agent behavior, a router that has Jev pick which model handles a task, a proposed auto-mode permission layer, and three separate tool-call gates where Jev judges, scores, or blocks actions inside a Pi session.

What the integration does

Pi is an open-source, terminal-based coding agent built by Mario Zechner (GitHub handle badlogic). He built it after using Claude Code since April 2025, frustrated by its instability under feature churn, and put pi-mono on GitHub in August 2025. He joined Earendil Inc. with Armin Ronacher on 8 April 2026. It supports 15 or more model providers, including Anthropic, OpenAI, and Google.

Jev is TypeSafe’s System One model, a small, fast classification model that answers typed questions like Choice, Score, and Noul, rather than a general-purpose AI model that generates text. See Choice, Score, and Noul for what those calls return.

pi-typesafe is the shared client most others build on: one authenticated TypeSafe connection, a typesafe_evaluate tool that batches classify, triage, compare, and score calls into one request, and a terminal playground for testing without spending agent context.

pi-warden is a supervision layer on top of pi-typesafe. It watches for irreversible or off-task calls, a stuck agent loop, unverified “done” claims, and low-quality output, then reports back to the agent instead of interrupting you.

pi-jev-router uses Jev, via the Vercel AI Gateway, to pick a model and reasoning effort once per task and pin that choice for the session. This is model and intent routing, not generation: the work still runs on your own Pi provider and credentials.

pi-jev-auto-mode adds a permission layer to a tool that, per its own repo, has none. It checks a fixed allow and deny list first, then has Jev judge escalated bash, write, or edit calls, blocking low-confidence actions on thresholds the repo calls “recorded real-API calibration.”

pi-typesafe-jev exposes five raw judgment tools: Noul, Choice, Score, a batched evaluate call, and an “ask” tool pinned to a YAML or JSON file, via fetch with no SDK. TheoOliveira’s pi-jev adds semantic tool routing and skill selection plus typed Choice, Noul, and Score calls. y0usaf’s pi-jev is narrower: a jev_ask gate for destructive actions, exfiltration, or scope creep.

Official support

There is no official TypeSafe integration for Pi, and no official Pi or Earendil integration for Jev. Zechner has not built or endorsed any extension here. Every one is third-party code maintained outside both companies. Treat install steps and thresholds as claims from each repo, not as anything TypeSafe or Earendil has reviewed.

Setup

  1. Run Pi 0.85 or newer (0.85.1+ for pi-jev-router) and Node 22.19 or newer. Get Pi from badlogic/pi-mono, Zechner’s repo. Its npm package name is inconsistent between sources, so confirm on npm before installing.
  2. Get a TypeSafe API key from console.typesafe.ai/settings/keys (see how to get Jev access). TypeSafe’s docs say the base API needs a TYPESAFE_API_KEY variable, which matches pi-typesafe’s login flow.
  3. Install pi-typesafe: pi install npm:pi-typesafe, then /typesafe login to save your key to ~/.pi/agent/pi-typesafe/auth.json. Or set TYPESAFE_API_KEY and PI_TYPESAFE_ENABLED=1 directly, plus optional daily caps like PI_TYPESAFE_MAX_REQUESTS_PER_DAY.
  4. Install pi-warden: pi install npm:pi-warden, then /warden enable (key optional) and /warden test. Press ctrl+shift+w for the trace view. Rules go in pi-warden.md at the project root, falling back to README.md, CLAUDE.md, or AGENTS.md.
  5. Install pi-jev-router: pi install npm:pi-jev-router or pi install git:github.com/mejiasd3v/pi-jev-router. Needs a Vercel AI Gateway key. Add a jevRouter.options block to ~/.pi/agent/settings.json with model IDs such as openai-codex/gpt-5.6-luna and openai-codex/gpt-6-astra, plus a fallback, then /reload.
  6. The other four (pi-jev-auto-mode, pi-typesafe-jev, TheoOliveira’s pi-jev, y0usaf’s pi-jev) have no confirmed install command, but follow the same pi install npm:<package> or pi install git:github.com/<owner>/<repo> pattern. Check each repo for the exact name.

What people built with Jev and Pi

The linked repos below are third-party projects that wired Jev into Pi for supervision, routing, and tool-call gating.

Limits and gotchas

Every extension here is unaffiliated with TypeSafe, Zechner, and Earendil, and none has been reviewed by them.

pi-jev-auto-mode fails closed, so a miscalibrated or slow Jev call can stall work a human would have approved instantly.

pi-jev-router pins one model choice per session, so it will not adapt if the task changes partway through.

Three extensions expose overlapping Choice, Score, and Noul tools with no clear default. Read each repo before picking one.

FAQ

Does Pi support Jev officially?

No. There is no official TypeSafe integration for Pi, and no official Pi or Earendil integration for Jev. Every extension here, including pi-typesafe, pi-warden, and pi-jev-router, is third-party code maintained outside both companies.

Do I need a TypeSafe API key to use Jev with Pi?

Yes, for most of these extensions. pi-typesafe needs a key from console.typesafe.ai, saved through /typesafe login or set as TYPESAFE_API_KEY. pi-warden’s key is optional, and pi-jev-router skips TypeSafe entirely, using a Vercel AI Gateway key instead.

What does Jev decide inside Pi?

Jev decides different things per extension. pi-jev-router has it pick the model and reasoning effort for a task. pi-jev-auto-mode and y0usaf’s pi-jev use it to judge whether a bash, write, or edit call is safe. pi-typesafe-jev and TheoOliveira’s pi-jev expose direct Choice, Score, and Noul judgments.

Is it free to use Jev with Pi?

No. Pi itself is open source and free, but every Jev extension calls TypeSafe’s paid API, which needs a TYPESAFE_API_KEY. pi-jev-router adds a second cost, a Vercel AI Gateway key. See Jev’s speed and pricing for TypeSafe’s rates.

Examples for Pi

Tool

DevMortimer/pi-typesafe

Pi extension that gives the agent and other extensions one key-managed TypeSafe client. A batched typesafe_evaluate tool hands classify, triage, compare and score judgments to Jev in a single call, and a terminal playground runs requests without touching the model's context.

Tool

legacybridge-tech/pi-typesafe-jev

Pi extension that exposes System One judgments as five tools: a yes/no Noul, a Choice over a fixed set, a Score over ordered levels, a batched evaluate for several questions about one state, and an ask for a question pinned in a local YAML or JSON file. The tools call the API directly with fetch and carry no SDK dependency.

ChoiceScoreNoul

Related guides