jev (Go client)
Provider-neutral Unix CLI for Jev: pipe state in, ask one Noul, Choice or Score question, get JSON out for scripts and CI.
Overview
stefafafan/jev is an unofficial Unix command-line client for Jev written in Go, supporting TypeSafe, Cloudflare and Vercel as providers. State always comes from stdin, each invocation asks exactly one question through a noul, choice or score subcommand, and the answer is printed as JSON. The exit code reports whether evaluation succeeded, and the tool deliberately does not turn judgements into policy: thresholds go downstream, for example with jq.
Examples include piping a git diff to ask whether a change could introduce a regression, classifying a diff as safe, needs-review or unsafe, and scoring a kubectl diff for deployment risk. A companion setup-jev action installs the binary on GitHub Actions runners, and the repository's own workflow sends pull request diffs to Jev through Cloudflare and applies a merge-risk label.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Yes / no | Could this change introduce a regression? | — |
| Choice | How should this change be classified? | safe · needs-review · unsafe |
| Score | How risky is this deployment? | low · medium · high |
How it works
- Pipe state into jev on stdin
- Choose a noul, choice or score subcommand with the question
- Read JSON output
- Apply thresholds downstream (for example jq) and act in CI
Strengths
- Composable with shell pipelines
- Provider-neutral
- GitHub Actions setup available
Caveats
- One question per invocation
- Unofficial
Getting started
`go install github.com/stefafafan/jev@latest`, then `echo "some state" | jev --provider typesafe noul "Is this safe?"`.At a glance
- Type
- Library
- Status
- beta
- Language
- Go
- Runtime
- CLI
- Has code
- yes
Use cases and integrations
How curated lists describe it
An unofficial, provider-neutral Unix client for Jev from TypeSafe AI. Written in Go.
hellogumbo/awesome-jevProvider-neutral Unix client: a question in, a typed answer out, for shells and scripts. `go install`.
MrJev/awesome-jev
Frequently asked questions
How do I pass state?
Through stdin, for example piping a git diff.
Does it apply thresholds?
No, it outputs JSON; you threshold downstream.
Which providers work?
TypeSafe, Cloudflare and Vercel.
Related projects
Typed Rust client for System One with async reqwest or blocking ureq backends and observable retries.
LibrarybetaRustZero-dependency Node bridge that exposes Jev through an OpenAI-compatible API, plus a CLI, code-audit tool and auto-fix loop.
CLIbetaJavaScriptHack Club's lightweight LLM proxy, listed for adding a Jev forwarding endpoint behind its auth, limits and usage logging.
MCP serverproductionTypeScriptAx, a DSPy-style multi-language LLM framework, listed with a native TypeSafe provider for Boolean, Choice, Score and raw Jev questions.
PluginproductionTypeScriptEffect TypeScript library whose @effect/ai-typesafe package maps classify, probability and rating operations to Jev questions.
ProjectproductionTypeScriptPHP monorepo whose Polyglot module adds a TypeSafe driver for typed Noul, Choice and Score decisions alongside LLM inference.
ProjectproductionPHP