Skip to content

nu_plugin_jev

Nushell plugin that asks Jev noul, choice and score questions about a state or each table row, returning typed answers to filter.

Pluginbeta

Overview

nu_plugin_jev brings TypeSafe Jev decisions into Nushell. Nu builds the state and processes the answers; the plugin only sends the request. Commands include jev ask (several named questions about one state in one request), jev annotate (the same questions for each table row, streamed with bounded concurrency), jev models, and constructors for noul, choice and score questions.

Answers keep confidence and full probability distributions, and the caller chooses thresholds with native Nu commands like where, sort-by and group-by; the plugin never decides what counts as true. Question constructors and --dry-run work offline without a key. It targets Nushell 0.116.x, requires HTTP/2 by default with an HTTP/1.1 build option, and reads the key from TYPESAFE_API_KEY or a private NUON file. It suits shell users triaging messages, logs or tables.

What the decision model decides

TypeQuestionAnswers
Yes / noIs this unsolicited?true · false
ChoiceMessage kind?normal · promo · spam
ScoreReview urgency?later · today · now

How it works

  1. Build questions with jev question noul/choice/score.
  2. Pipe a record or table into jev ask or jev annotate.
  3. Receive answers with probabilities and metadata.
  4. Filter and sort with native Nu commands using your own thresholds.

Strengths

  • Composes with Nushell's structured data.
  • Per-row annotation streams with bounded concurrency.
  • Offline dry-run for building questions.

Caveats

  • Requires a TypeSafe key for live requests.
  • Tied to Nushell 0.116.x; HTTP/2 required by default.

Getting started

cargo install --path . --locked; plugin add ~/.cargo/bin/nu_plugin_jev; plugin use jev; help jev

At a glance

Type
Plugin
Status
beta
Language
Rust
Runtime
Nushell plugin
Has code
yes

Use cases and integrations

How curated lists describe it

Frequently asked questions

Does the plugin apply thresholds?

No, it returns probabilities and you filter with native Nu commands.

Can I label every row of a table?

Yes, jev annotate asks the same questions for each row.

Can I test without a key?

Question constructors and --dry-run work offline.

Related projects

  • Unofficial Symfony bundle with a typed Jev client, Noul and Choice validator constraints, Workflow guards and a profiler panel.

    LibrarybetaPHP
  • Python batching proxy that asks the same Jev questions about many states and streams answers back as Apache Arrow tables.

    ProxyprototypePython
  • Community Java 17 SDK for Jev with typed Ask declarations, enum-backed choices and a Spring Boot starter.

    LibrarybetaJava
  • Small idiomatic Elixir client for Jev via TypeSafe or OpenRouter, with boolean ask? and analyze helpers.

    LibrarybetaElixir
  • Command-line tool for Laya typed decisions with presets, batch streaming, shortlisting, evaluation and a resident daemon.

    CLIbetaPython
  • VGI worker that exposes System One choice, noul and score as DuckDB table functions you can LATERAL join to classify whole tables.

    LibrarybetaPython