Skip to content

jeff

Go CLI for Jev that returns numbers to shell scripts, with threshold exit codes and a weighted multi-dimension rank command.

CLIbeta

Overview

jeff by saembit is a Go command-line client for Jev, built with cobra so Jev can be used from shell scripts, CI jobs or agents without writing a client each time. State comes from a flag, a file, stdin or a pipe, with JSON sent as structured state. Commands cover noul, choice and score, an eval command that runs a YAML file of questions against one state, and models to list what the account can use; every command supports JSON output and pinning a versioned model.

The rank command is the main reason the tool exists. A YAML spec lists items, weighted dimensions each with a rubric, and shared context; jeff sends one Score question per item per dimension in a single request and sums weight times score in code, so Jev never sees the weights and changing one is just a rerun of the arithmetic. Thresholds such as --fail-under turn probabilities into exit code 10 for scripting. The README includes a section on what Jev is bad at.

What the decision model decides

TypeQuestionAnswers
Yes / noDoes this commit describe a user facing change?yes · no
ChoiceWhich team handles this?billing · technical · sales
ScoreHow frustrated is the customer?Calm · Frustrated · Very angry

How it works

  1. Pipe or pass state to a jeff command
  2. Jev answers the question(s) in one request
  3. Threshold flags map results to exit codes
  4. rank sums weight x score per item in code

Strengths

  • Direct use from shell and CI via exit codes
  • Weights applied in code, so reweighting costs nothing
  • Single request for N items x M dimensions

Caveats

  • Requires Go and a TypeSafe key
  • Author calls it imperfect but useful

Getting started

`go install github.com/saembit/jeff-cli/cmd/jeff@latest`, `export TYPESAFE_API_KEY=...`, then e.g. `jeff noul "..." --fail-under 0.7`.

At a glance

Type
CLI
Status
beta
Language
Go
Runtime
CLI
Has code
yes

Use cases and integrations

How curated lists describe it

  • Developer tooling: Go CLI whose rank command asks one Jev `Score` per item per weighted dimension of a YAML spec in a single request and sums weight times score in code to order the items, with noul, choice and score commands that turn a threshold into exit code 10 for shell scripts and CI.

    yibie/awesome-jev
  • Go CLI where Jev scores each item on each weighted dimension of a YAML spec in one request and code sums the weights into a ranking, with noul, choice and score commands whose thresholds become exit codes for shell and CI.

    cobanov/awesome-jev

Frequently asked questions

What does jeff rank do?

Scores every item on every weighted dimension in one Jev request and sums weight times score in code.

How do I use it in CI?

Use threshold flags like --fail-under, which make jeff exit with code 10 when the gate fails.

Does Jev see my weights?

No, weights are applied in code after scoring.

Related projects

  • Pipe-friendly CLI that lets shell scripts and agents ask Jev typed questions and gate on the answers with exit codes.

    ProjectbetaGo
  • Modular JDK 21 client for System One with typed record mapping, a CLI uber-jar for CI, and a testkit module.

    LibrarybetaJava
  • Chinese-documented CLI that turns content into script-ready Jev judgments via noul, choice, score and classify commands.

    CLIbetaPython
  • SysOneScript language, Go System One client, semlint semantic code checks and a VS Code Studio for building with Jev judgments.

    LibrarybetaGo
  • Shell command, jev, that asks Jev noul, choice and score questions about piped text and prints numbers.

    CLIbetaTypeScript
  • Orchvia: local engine with TS and Python SDKs that runs Claude Code and Codex agents as a team, routing tasks by code and typed decisions.

    LibrarybetaTypeScript