jev (virolea)
Ruby gem for the Jev API with ask (Noul), choose (Choice) and score (Score) builders and a uniform result accessor.
Overview
Jev (virolea) is a Ruby client for TypeSafe's Jev API, installed as a gem. You set an API key once, create a query over a piece of state, and add questions with three builders: ask for a Noul that returns the probability a statement is true (with optional true/false criteria to scope it), choose for a Choice among up to 255 named options, and score for a rubric of 2 to 10 ordered levels. All questions in a query are evaluated in parallel, and the README advises several narrow questions over one broad one.
Every answer exposes a result to branch on: a thresholded boolean for Noul, the chosen option for Choice, and a probability-weighted score for Score, with the underlying probabilities and confidence also available. Examples use support-ticket urgency, department routing and customer frustration. It is aimed at Ruby and Rails developers and is MIT licensed.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Yes / no | Does this convey urgency? | — |
| Choice | Which team should handle this? | billing · technical · sales |
| Score | How frustrated is the customer? | Calm · Frustrated · Very angry |
How it works
- Set Jev.api_key
- Build a Query over state
- Add ask, choose and score questions
- Read typed results and probabilities
Strengths
- Idiomatic Ruby API
- Uniform result accessor across question types
- Encourages narrow, batched questions
Caveats
- Thin client; no retries or policies described in the excerpt
- Requires a TypeSafe key
Getting started
bundle add jev (or gem install jev), then set Jev.api_key.At a glance
- Type
- Library
- Status
- beta
- Language
- Ruby
- Runtime
- Ruby gem
- Has code
- yes
- License
- MIT
Use cases and integrations
How curated lists describe it
Ruby client for the typesafe AI Jev model
logicrw/awesome-jev-projectsRuby client for the typesafe AI Jev model.
hellogumbo/awesome-jev
Frequently asked questions
How do I install it?
bundle add jev or gem install jev.
What does result return for a Score?
The probability-weighted score, such as 1.05.
How many options can a Choice have?
Up to 255.
Related projects
Local service to define, test and publish versioned Jev judgment functions, callable over HTTP by backends and over MCP by agents.
MCP serverbetaTypeScriptRuby gem that stores Jev Noul, Choice and Score answers about a record's text as ordinary ActiveRecord columns you can query.
LibrarybetaRubyUnofficial Go client for TypeSafe System One with generics that bind each choice, score and noul answer to a declared Go type.
ProjectbetaGoPython dialect that adds a '~' operator and jev/case blocks so a branch can ask Jev a yes/no, scale or choice question.
ProjectprototypePythonProvider-independent .NET decision engine with a separate TypeSafe Jev provider package mapping Choice, Score and Noul to /v1/systemone.
LibrarybetaC#Elixir/OTP library treating Jev as a peer process whose answers arrive as messages you pattern match in GenServer clauses.
LibrarybetaElixir