A hand arranges paper inputs beside a wooden decision selector beneath the headline JEV: BUILT TO CHOOSE.

AI-generated editorial illustration.

Six days after TypeSafe announced Jev, a directory called Jevable listed 194 projects built around the model. There were games, browser tools, research utilities and experiments with robots. A model that does not write prose had already given developers plenty to talk about.

One project lets Jev select the next browser action. Another asks it to rank search results. A third uses it to select lines in a research paper, then copies those lines into a review table. The applications look different, but the division of work is similar. Jev chooses among possibilities. Other software supplies those possibilities and does something with the result.

That is the product TypeSafe introduced on September 15. Jev is its first public model in a category the company calls System One. It takes supplied information and returns constrained decisions rather than newly written prose. TypeSafe says a new training method and parallel output system make this much faster and cheaper for the tasks it targets. Its launch announcement describes early access, not a finished replacement for general-purpose language models.

The distinction matters to an engineering manager deciding what to build. A support queue does not always need an eloquent answer. It may first need a category, a severity estimate or a decision about which document deserves attention. If such judgments become cheap enough to call repeatedly, software can make more of them before asking a person to intervene.

Jevable offers a place to inspect that proposition through working designs, including source code that shows which jobs the model leaves to other software.

This article examines the public product documentation and early project repositories as of September 21, 2026. No paid inference tests or independent performance benchmark were run for it. Prices are published rates; project timings are their authors’ reports. Cost examples below are calculations with stated assumptions.

A $40 million bet against the chat interface

TypeSafe entered public view with a sizable financing announcement. On September 15, DCVC said it was leading a $40 million seed round. The investor’s announcement describes a San Francisco company building models for automation. It is evidence of the financing and the investor’s thesis, not independent confirmation of the model’s advertised performance.

The company’s founders are CEO Diogo Almeida, COO Sasha Sheng and CTO Erik Gafni. Almeida’s research background is relevant: he appears among the authors of OpenAI’s InstructGPT work. TypeSafe is therefore making its argument about the limitations of chat-oriented models with leadership that helped develop instruction-following systems. That history explains the starting point. It does not settle whether the new approach will win.

For a software company, a general language model is both attractive and awkward. It can interpret messy language, propose code and explain a result. Those abilities are useful when a person is reading the output. Inside an application, however, the program may need something much narrower: one of five categories, a ranking against a rubric, or a probability that a condition holds.

Free-form text makes that integration flexible. It also creates work. The application has to parse the response, handle unexpected values and decide what to do when the result cannot be used. Developers can reduce those problems with constrained output formats. They still pay for the model and still have to judge the meaning of its answers.

TypeSafe makes a more restrictive bargain. According to its System One documentation, Jev takes text or structured data and does not generate replies, code or explanations. Developers define the possible answers. Images, audio and video need preprocessing before they fit this interface.

That restriction is a product decision with commercial consequences. TypeSafe is not initially selling the place where an employee writes a long request and reads a polished response. It is selling a dependency that a developer can put inside another product. If it works, the end user might never learn the model’s name.

Distribution has begun to reflect that choice. Vercel announced Jev support in AI Gateway on September 16. Its evaluation interface is separate from ordinary text generation. OpenRouter has a Jev 1.13 listing. Cloudflare’s model catalog also lists Jev, explicitly as a third-party model. That listing does not establish that TypeSafe’s model weights run on Cloudflare’s global edge network.

These integrations lower the effort required to try a new provider. They do not prove that customers have moved important workloads. For TypeSafe, an early challenge is converting developer curiosity into repeated usage after the demonstration is over. A model API can be easy to add and just as easy to stop calling.

The same distribution can make comparison easier for a buyer. A team already using a gateway can try a specialized evaluator without replacing every generative feature in its product. TypeSafe could win a small, frequently called part of that product while another provider continues writing the answers. That is a plausible route to revenue, though the reviewed public material does not establish retained usage or customer spending.

Funding gives TypeSafe time to attempt that conversion. Jevable shows developers taking the first step.

What a Jev call actually returns

The native API contract uses three main inputs: a model, a shared state and a set of questions. State is the material to be evaluated. Questions define the judgments to make and the permitted answer types. The response includes typed answers, the concrete model version and token usage.

Consider a document entering an application. The program can ask which category fits it or how it scores against specified levels. It receives answers to those questions without asking the model to write a paragraph first.

The three primitives return numbers with different meanings.

PrimitiveDeveloper suppliesResult meansEasy misreading
ChoiceA finite set of named alternativesA selected option and a probability distribution over the optionsA permitted answer must be the correct answer
ScoreOrdered descriptions of levelsA probability-weighted position on that rubricA score is an objective measurement or accuracy percentage
NoulA yes-or-no questionThe probability assigned to yesA value near one-half means half the intensity of a property

Choice is useful when an application needs a category or action from a known menu. The caller still has to supply a sensible menu. If all the relevant documents are missing from a candidate list, selecting one of its members cannot recover the missing evidence. Adding an explicit insufficient-information alternative may be more useful than demanding a winner.

Score uses ordered criteria. In TypeSafe’s example, probabilities of zero, 0.57 and 0.43 across levels zero, one and two produce a score of 1.43. That number is a weighted average of rubric positions. It is not a measurement taken from the outside world, and it is not a 143% confidence estimate.

That difference matters in apparently ordinary features. A product manager might want to sort support tickets by urgency. A decimal score can help order a queue. Before allowing the same score to trigger an urgent response, the team needs to know which descriptions define the levels and how the model handles ambiguous reports. A smooth-looking number can conceal an awkwardly written rubric.

Noul returns a probability for yes. A hypothetical question might be whether a supplied document contains an explicit cancellation request. The probability is about that question, not how strongly the customer feels about the product. Changing the question changes the task, even if the surrounding code still receives a number between zero and one.

Choice and Score also include a separate confidence field. TypeSafe’s confidence documentation says it summarizes how concentrated the returned distribution is. Noul has no separate confidence field. A developer should not treat all these values as interchangeable percentages with the same threshold.

Several questions can share the same state. The introduction describes them as independent judgments against that material. They are not a miniature conversation in which question two reads question one’s newly generated answer. If a later decision requires an earlier result, the application needs another step or explicit code.

An array is still shared state, the state guide explains. It does not automatically become a batch of independent records. Dumping hundreds of unrelated documents into one array is therefore different from evaluating each document separately.

These constraints make the surrounding program more important. Somebody has to choose what the model sees, define the answer space and preserve the relationship between an answer and its source. Jev can reduce the cost of making a judgment within that design. It cannot decide what the application should have asked in the first place.

Jevable puts early applications in view

Jevable’s site metadata describes an independent curated collection and names Nikunj, linking to @nikunj, as its creator. No formal relationship with TypeSafe is established by that disclosure.

On September 21, the directory’s six pages contained 194 unique project entries across 11 categories. Games had 39 entries, developer tools 34 and productivity 31. These are counts of listings in one observed snapshot, not active users, paying customers or applications that have passed a production review.

The submission interface asks for an X post URL and says projects are reviewed before inclusion. Some cards display social-view counts. Those counters measure attention to a post, not the quality of the software. The useful next step is to leave the card and inspect the project’s own documentation.

Jev Search, built by Search1API, uses the model to choose sources, time ranges and search terms, then rank retrieved results. The output is links and snippets rather than a newly generated answer. Its repository explicitly describes the project as independent of TypeSafe.

That arrangement separates two jobs that many AI search interfaces combine. Retrieval finds candidate material. Model judgments help decide which material is relevant. The application can retain a familiar search-results page while changing how its filters and ordering are chosen.

This could appeal to a user who wants the original sources rather than a summary. It also leaves recognizable failure modes. A relevant page can be absent from the search provider’s results. A fresh but weak page can outrank an older authoritative one. A relevance score says something about the model’s assessment of a query-result pair; it does not establish that the page is true.

Search1API also supplies the retrieval service used by the project. Running it requires retrieval as well as model inference, so Jev’s token bill covers only part of the search.

Jev Reviewer takes another route. Its repository describes a document-review application in which Jev selects line identifiers. Code copies the corresponding text verbatim, with page references, for a person to check and export. The files remain in the browser, but extracted document text and questions are sent through a relay to TypeSafe. Local file storage does not mean the content never leaves the device.

Selecting an existing line reduces one particular problem: the model does not need to compose a quotation. It can still select an irrelevant passage, miss a qualification or attach an answer to the wrong study. The reviewer is left with a narrower and more inspectable task, not a guarantee of correct research extraction.

For a team building an internal tool, that is a useful design choice. A generated explanation can be difficult to inspect because wording and evidence arrive together. A selected passage gives the reviewer something concrete to accept or reject. The tool’s value would depend on whether that check is faster and whether important omissions remain visible.

Testing that benefit would require measuring omissions as well as the passages selected. A clean table can make an unanswered question less visible than a marked-up paper. Reviewers need a way to see what the tool failed to find, alongside the material it presents confidently.

Games in the directory help explain the early enthusiasm. A game often already has an enumerated set of moves and an observable state. A model that picks a legal move can participate without writing an essay about its intentions. That makes a good playground for the interface. A playful demo, however, can tolerate mistakes that a payment or employment decision cannot.

Search results remain search results. A review table still points back to a paper. These builders are testing a new way to make judgments inside familiar interfaces, and Jevable lets other developers inspect the variety before there is evidence of a mature market.

A browser task exposes the rest of the system

A browser must wait for the page. Controls have to be found, and a selected action has to affect the intended element. That makes it a useful place to look beyond the model’s response time.

In Browser Use’s Jev Ultrafast project, Jev selects from dynamically supplied operations and page targets. A separate language model supplies text when typing is required. A finite set of choices can constrain the action selector, but it cannot generate the arbitrary city name that a search field needs.

The text helper stays in the system. Jev handles selection, then browser code performs the interaction. Removing generated prose from one part of the task leaves a job for it elsewhere.

The project’s performance report describes a Google Flights recording completed in 7.073 seconds. Its separate matched comparison uses six alternating runs of one task, with three runs for each runtime version. Median completion time falls from 9.450 seconds to 7.092 seconds. Both versions use Jev and the same text helper, so this measures runtime changes, not Jev defeating a competing model.

The authors also disclose the clock’s boundaries. Browser setup, initial navigation and independent post-run verification are excluded. Three pairs are too few for a strong statistical conclusion. Their reported text-helper charge is not the full task cost: TypeSafe responses in the record provide token counts rather than a billed dollar amount, and browser costs are excluded.

The comparison gives a prospective builder a specific result to investigate: the same models finished sooner after the browser runtime changed.

A browser application can spend time outside inference even when the model is quick. It may repeatedly inspect the page, discard a decision after the page changes, wait for suggestions or re-resolve a target. Reducing those delays can matter as much as choosing a faster model. The benchmark question has to follow the whole task.

An application might include a purchase button among the available controls. That does not authorize a purchase. Choosing a listed target answers a question about the interface; the program still needs to enforce what the user asked it to do.

This is where typed decisions have a practical advantage without acquiring magical properties. They make it easier to limit the model to a defined set of operations. They do not ensure that the set is safe, current or complete. A developer can constrain a model perfectly to the wrong menu.

A wooden selector connects a highlighted document passage to a matching review card inspected through a magnifying glass.

AI-generated editorial illustration. Selecting a source passage and checking what it means are separate steps.

For an engineering manager, this changes the experiment to commission. A demonstration should preserve the preparation and verification work rather than hide it. The team needs to know whether the system completed the right task, how often it failed and what it cost to recover. Model latency belongs in that record, but it is only one line.

Forty-two dollars buys a billion input tokens

TypeSafe’s current model page lists Jev at $42 per billion input tokens, or $0.042 per million. Output is priced at zero. At the time of review, the concrete model is jev-1.13.0. The native limits allow 64,000 tokens across state and all questions, but only 32,000 across state and the longest individual question. A gateway’s simpler 32K listing should not be read as the full native request contract.

Consider an illustrative workload of 100,000 requests, each using 2,000 billed input tokens. That is 200 million input tokens. At the published native rate, the model-input charge is $8.40. This is a calculation, not a measured deployment or a promise about a particular application’s bill.

Now add a hypothetical review policy. Suppose one percent of those requests needs one minute of human checking. That produces 1,000 minutes of review. At an assumed loaded labor rate of $30 an hour, the review costs $500. The assumptions are invented for illustration; they are not observed Jev error rates or staffing costs.

In this example, review costs nearly sixty times the input-token charge. Different review assumptions would change that comparison. A buyer comparing two models needs to compare them at an acceptable error level, including the work that each sends back to people.

Questions can share input state, so the unit of purchase also needs care. A request may contain several judgments. Counting every question as a separate full-document call would overstate cost in one design. Counting every business case as one request would understate it in a design that retrieves evidence, asks follow-up questions or retries.

TypeSafe’s parallel-questions cookbook illustrates this distinction. It compares 13 questions batched together with the same questions submitted individually, using an older Jev version. Its speed comparison is against sequential calls to itself. It is not evidence that Jev is ten times faster than every alternative or that concurrency offers no benefit elsewhere.

An application budget should begin with the amount of state repeatedly sent. Large documents, verbose criteria and repeated retries can change that figure. Retrieval and parsing can add separate charges. So can the text-generating model used alongside Jev. Storage, observability, support and ordinary engineering work do not become free because output tokens are.

Gateway billing deserves its own check. During this research, Vercel’s single-model catalog page displayed a $0.04 input rate per million tokens, while its provider listing displayed Free. The cause of that discrepancy was not verified. The numerical examples here use TypeSafe’s explicit native rate, not an inferred promotion.

For a startup, low inference cost may make an otherwise marginal feature worth prototyping. Search results can receive more detailed relevance judgments. A document tool can offer an initial review table before a researcher begins reading. A game can ask for a move often enough that waiting does not dominate the experience.

Those are plausible opportunities, not demonstrated business returns. The commercial test comes after somebody uses the feature repeatedly. Did the result save time? Did the extra automation increase support work? Was the feature useful enough to keep paying for after the first curious visit?

Cheap calls can also encourage excessive calls. If deterministic code can compare dates or add numbers, sending the same task to a model adds a dependency without an obvious benefit. A sensible implementation buys semantic judgment where rules are brittle, while keeping exact operations in code.

Maintenance belongs in the budget too. TypeSafe’s Python SDK changelog records a change to Score criteria in version 0.6.0, followed by serialization and typing changes in 0.7.0 on September 18. That is normal early-product development, but it means a copied example and a newly installed package may belong to different contracts. A team testing a September demo should retain the versions that produced its results.

When calls fail, the application also needs a plan. The native API documents rate-limit and overload responses. A cheap request that cannot be served still leaves work waiting. For an internal queue, the simplest fallback may be the existing manual process, with the attempted model call recorded separately. Retrying indefinitely would turn an availability problem into a larger bill and a longer wait.

TypeSafe’s advantage, if it holds under a buyer’s conditions, would be the freedom to use those judgments in more places. The company’s revenue opportunity depends on enough valuable uses surviving the experimentation phase. A directory can help people discover those uses. It cannot provide the retention data.

Testing confidence outside the launch demo

The strongest claim in TypeSafe’s positioning concerns trustworthy decisions, not just speed. Its homepage uses the phrase “Zero Hallucinations.” The launch’s explanation ties its zero-percent figure to guaranteed schema matching, not an empirical finding that Jev never makes a factual mistake.

Constrained structure is useful, but it was not invented last week. OpenAI’s August 2024 Structured Outputs announcement described schema-constrained output and explicitly warned that values inside a valid object could still be wrong. The comparison with Jev therefore cannot stop at whether the response parses. It has to examine decision quality, probability behavior, speed and cost on the same task.

There is a practical argument for keeping an existing general-purpose model: the application may need free-form text on most requests anyway. Splitting one task between a decision model and a text model introduces another interface to maintain. A specialized service earns that complexity when the measured benefit is large enough. A small saving on an infrequent classification call might not justify it.

TypeSafe publishes a helpful counterweight to its promotional language. Its Jev 1.13 limitations page lists weaknesses in counting, arithmetic, dates, multi-step indirection and noisy state. It also describes vulnerability to adversarial instructions in the supplied material. None of those problems disappears because the final answer belongs to a permitted list.

One example on that page gives different answers to a refund question depending on its representation: Noul returns 0.22, while a yes-or-no Choice assigns 0.01 to yes. Another example assigns probabilities of 0.72 and 0.47 to a question and its negation. Independent answers do not necessarily satisfy the identities a developer might expect from a single coherent probability model.

Changing a primitive or rewriting a rubric can change the task behind a threshold. Rerun the relevant tests. A version change is another reason to repeat them rather than silently treating an alias as a stable specification.

Calibration is a property to evaluate across predictions. Guo and colleagues’ 2017 calibration paper explains the distinction between predicted confidence and observed correctness. In plain terms, predictions assigned similar probabilities should succeed at roughly the corresponding rate on an appropriate test population. That does not identify which particular prediction is wrong.

There is a further distinction within Jev’s own interface. The confidence field summarizes a distribution’s concentration. It is not automatically the probability that the selected answer will be accepted by a human reviewer. An application should test the field it actually uses, under the definitions its users care about.

TypeSafe’s public workflow evaluations compare four fixed workflows and assume the harness is correct. Reference answers average GPT-6 Astra and Claude Fable 5.1 judgments at high thinking settings; other models use provider-default reasoning. The resulting agreement measure uses model-generated references, not independently adjudicated human labels or observed customer error rates.

The evaluation is still worth inspecting. A buyer can see a proposed division between judgments and deterministic operations. The invoice workflow, for example, exposes several rounds of questions while leaving exact business logic in code. The material gives developers a starting point for their own tests without establishing that every workflow should be organized the same way.

For a serious comparison, the buyer should keep the application and accepted outcome fixed. If one model gets a longer context, a different helper or more retries, report that difference. If a slower model produces fewer costly mistakes, a latency-only ranking can select the more expensive system. Conversely, an expensive model may add no useful quality for a simple routing task.

Frequent, recoverable judgments could be enough to support a useful product. Sorting a queue and proposing a search filter leave room for correction. Jev can earn its place in those tasks without first demonstrating that it can handle every kind of reasoning.

A useful test includes ambiguous cases, missing alternatives and misleading source material, as well as the easy examples that make a demonstration look smooth. Measure how often the application withholds an action through a threshold or an explicit insufficient-information choice, and how much human work follows. Abstention needs to be designed into the application.

Choosing the work before choosing the model

Start with a piece of work. A team asked to “put Jev somewhere” can build an impressive demo without learning whether the model solves a recurring problem. A queue with a repeated judgment and an observable result gives the experiment an end that can be checked.

For example, a company could test whether a model routes ordinary support requests to the right team. The initial trial could run without changing the live queue. Human labels would provide a comparison. The application could retain uncertain or unsupported cases for review rather than force every request into an automatic action. This is a proposed evaluation design, not a reported TypeSafe customer deployment.

Before judging the model, let the support staff classify a sample themselves. Disagreement may reveal overlapping team responsibilities or a category that combines several problems. Automating that ambiguity does not resolve it. The test should retain disputed labels, record how they were resolved and give the people receiving the routed work a say in the acceptance criteria.

This selection guide draws on the interface and early projects. It proposes what to test, without rating the projects’ quality.

Candidate taskPotential contribution from JevWork that remains outside itFirst useful acceptance measure
Sort an incoming queueChoose a category or score against a rubricDefine categories, resolve ambiguity, correct routingCorrect routes among automatically handled cases
Rank retrieved materialJudge relevance to a stated requestRetrieve sources, remove duplicates, assess evidenceUseful results found without missing required sources
Extract a supported passageSelect from existing candidate linesParse documents, copy text, inspect contextCorrect passage selection and time to verify it
Control a browserSelect an operation and current targetGenerate text, enforce authority, execute and verifyCorrect completed tasks, including recovery time

Each row puts an outcome after the model call. That order prevents a team from confusing a valid response with a completed job. It also makes comparison with non-model software possible. A simple rule may be the right baseline for a stable category. A small classifier may be another candidate. Jev has to earn its place against the least complicated adequate alternative.

For an initial evaluation, record the concrete model version, input preparation, questions, permitted answers and decision thresholds. Keep a held-out set separate from the cases used to tune the prompt. Measure latency through verified completion, including retries and fallback, and report a slow-tail measure alongside the median. Count the cases that never complete.

Keep the origin of the test cases visible. A threshold that works on short English tickets may behave differently on longer messages or another language. Report the results for those groups separately before broadening automatic handling. An overall average can hide the part of the queue that creates the most correction work.

Then calculate cost per accepted result: the total cost of all attempts divided by the number of accepted results. Include model inputs, retrieval, any helper model, infrastructure and review, including the money spent on failures. Where the system abstains, count the human work needed to finish the task.

Some judgments need a much higher bar. A low-priced model that ranks documents is not, on that basis, ready to reject job applicants. A typed score does not validate the rubric or establish fair treatment. Those decisions need evidence about the screening criteria, missed candidates and consequences, beyond a count of documents processed.

For the people building these tools, the work shifts toward defining choices and testing consequences. A domain specialist must say what counts as the right answer. An engineer must make the source material and available actions reliable. Someone has to examine the failures after the application encounters cases absent from the initial examples.

That work can be worthwhile. Narrow interfaces may make it easier to locate an error than a system that writes an entire explanation and action plan in one response. If the model selects the wrong passage, there is a specific selection to inspect. If the passage is right but the action is wrong, the problem may be in the rules that follow it.

For now, Jevable is most useful as a collection of designs to investigate. TypeSafe has supplied an inexpensive way to ask bounded questions; developers are finding places to ask them. Repeated usage and independently checked outcomes will tell more than the launch-week recordings.

An evaluator can begin with one queue and keep the old process available. At the end of the trial, put the routed cases, corrected mistakes and unfinished work beside the bill. The decision to keep Jev should be easier to make than the decisions it was hired to handle.