pi-typesafe-jev
Pi extension exposing Jev as five narrow tools (noul, choice, score, evaluate, pinned ask) while code keeps thresholds and actions.
Overview
pi-typesafe-jev exposes TypeSafe Jev judgments as five Pi tools so a model can make narrow semantic judgments while your code and users keep control of thresholds, weights and actions. typesafe_noul asks a yes/no question, typesafe_choice picks from fixed options, typesafe_score rates along ordered levels, typesafe_evaluate runs several independent questions over one state in one request, and typesafe_ask uses a question pinned in a local YAML or JSON file so each call supplies only the facts.
The tools call /v1/systemone directly with native fetch and no SDK runtime dependency. The extension does no network access and reads no credentials at load time; the key is stored by /typesafe setup in your Pi agent directory and only read when a tool or command runs. Setup asks before replacing an existing key and reports corrupt config files. Development uses typecheck and fully offline tests.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Yes / no | A yes/no question passed to typesafe_noul | yes · no |
| Choice | Pick one of a fixed set of options | — |
| Score | Rate along ordered levels | — |
How it works
- /typesafe setup to store a key.
- Model calls one of the five tools with state and question.
- Extension posts to /v1/systemone.
- Host code applies thresholds and actions.
Strengths
- Pinned questions keep schemas stable.
- No SDK dependency; no network at load.
- Clear separation of judgment and action.
Caveats
- Requires a TypeSafe key.
- Thresholds and actions must be implemented by you.
Getting started
pi install npm:pi-typesafe-jev, then /typesafe setup.At a glance
- Type
- Plugin
- Status
- beta
- Language
- TypeScript
- Runtime
- Pi extension
- Has code
- yes
- Has tests
- yes
Use cases and integrations
How curated lists describe it
Coding agents: exposes System One judgments as five Pi tools so a model makes narrow semantic judgments while code and users keep control of thresholds, weights, and actions.
yibie/awesome-jevA Pi extension exposing TypeSafe judgments as five narrow tools, keeping threshold and action control in host code.
logicrw/awesome-jev-projectsA pi extension that exposes TypeSafe (Jev, System One) judgments as five pi tools, so a model can make narrow semantic judgments while your code and your users keep control of thresholds, weights, and actions.
hellogumbo/awesome-jev
Frequently asked questions
What is typesafe_ask?
A tool that uses a question pinned in a local file so calls only supply facts.
Does it load an SDK?
No, it uses native fetch.
Who decides what to do with answers?
Your code and users, via thresholds and actions.
Related projects
Minimal Pi extension and TypeScript client registering a jev_evaluate tool for noul, choice and score across five Jev platforms.
ProjectbetaTypeScriptSimon Willison's LLM plugin that adds Jev as a model for yes/no, choice and score questions from the command line.
PluginproductionPythonGo integration bringing TypeSafe Choice, Score and Noul to Google's adk-go agents, with a typed client, routing agent and callbacks.
ProjectbetaGoRuby gem for probabilistic conditionals like Feelings(msg).like?("urgent"), answered by Jev or other decision models.
ProjectbetaRubyRust CLI and library that asks Jev typed questions via OpenRouter and combines the probabilities with fuzzy-logic rules into decisions.
CLIbetaRustElixir DSL (Gut.feel) that picks an Elixir value for a subject and question, with a Jev evaluation adapter among LLM options.
ProjectbetaElixir