Skip to content

go-jev

Go SDK for TypeSafe Jev with a jev-cli built for UNIX pipelines, supporting single and batched typed questions.

CLIbetaMIT

Overview

go-jev is a Go SDK for TypeSafe's Jev that returns typed answers (yes/no probability, choice, score) instead of text, plus jev-cli, a command-line tool built on it for UNIX pipelines. Client.Ask sends one question and returns an answer; Client.Evaluate sends a map of questions in one request, and state may be any JSON value. Options preserve choice order, and a nil description is sent as null.

The client is configured through functional options for API key, model (default jev-latest), endpoint URL, per-request timeout including retries, HTTP client and retry count on 429 and 529 responses. The package deliberately reads no environment variables itself. Without an API key no Authorization header is sent, and the default endpoint is TypeSafe's /v1/systemone, which can be changed to point at compatible servers.

What the decision model decides

TypeQuestionAnswers
ChoiceWhich team should handle this?billing · technical · sales
Yes / noIs this urgent?yes · no
ScoreHow frustrated?Calm · Frustrated · Very angry

How it works

  1. go get github.com/mattn/go-jev
  2. Create a client with options
  3. Call Ask or Evaluate
  4. Use typed answers or pipe jev-cli output

Strengths

  • Idiomatic Go API
  • Pipeline-friendly CLI
  • Explicit configuration, no hidden env reads

Caveats

  • Community SDK

Getting started

go get github.com/mattn/go-jev, then jev.NewClient(jev.WithAPIKey(os.Getenv("TYPESAFE_API_KEY"))).

At a glance

Type
CLI
Status
beta
Language
Go
Runtime
library + CLI
Has code
yes
License
MIT

Use cases and integrations

How curated lists describe it

Frequently asked questions

Does it read TYPESAFE_API_KEY automatically?

No, the package reads no environment variables; pass the key explicitly.

Can I batch questions?

Yes, with Client.Evaluate.

Is there a CLI?

Yes, jev-cli for UNIX pipelines.

Related projects

  • Hack Club's lightweight LLM proxy, listed for adding a Jev forwarding endpoint behind its auth, limits and usage logging.

    MCP serverproductionTypeScript
  • Ax, a DSPy-style multi-language LLM framework, listed with a native TypeSafe provider for Boolean, Choice, Score and raw Jev questions.

    PluginproductionTypeScript
  • Effect TypeScript library whose @effect/ai-typesafe package maps classify, probability and rating operations to Jev questions.

    ProjectproductionTypeScript
  • PHP monorepo whose Polyglot module adds a TypeSafe driver for typed Noul, Choice and Score decisions alongside LLM inference.

    ProjectproductionPHP
  • Go MCP server giving any client typed Jev decisions via OpenRouter or TypeSafe, with validated answers and no paid retries.

    MCP serverproductionGo
  • Simon Willison's LLM plugin that adds Jev as a model for yes/no, choice and score questions from the command line.

    PluginproductionPython