typesafe-client (haileyok)
Unofficial Go and Rust clients for System One that mirror the official SDKs' retries, errors, validation and gateway support.
Overview
This repository provides two unofficial clients for TypeSafe's System One API: a standard-library-only Go module (Go 1.22+) and an async Rust crate, typesafe-system-one, built on reqwest. Both aim to bring the official Python and JavaScript SDK behavior to Go and Rust.
That includes typed questions and answers with structured instructions and ordered Choice options; configuration from TYPESAFE_API_KEY, base URL, default model and log level; the official retry policy for 408, 429, 5xx (including 529), connection failures and timeouts with backoff, jitter and Retry-After; typed errors with request IDs; response validation with dotted field paths that passes future answer types through; model listing; gateway support for OpenRouter, Vercel AI Gateway or your own proxy; and logging with credentials redacted.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Yes / no | Is this true? | yes · no |
| Choice | Which of these options? | — |
| Score | Which level on this scale? | — |
How it works
- Install the Go module or Rust crate.
- Set TYPESAFE_API_KEY.
- Send state with typed questions.
- Read validated typed answers.
Strengths
- Matches official SDK retry and error behavior.
- Go client has no third-party dependencies.
- Works with gateways and proxies.
- Forward-compatible response validation.
Caveats
- Unofficial.
- Requires a TypeSafe or gateway key.
Getting started
go get github.com/haileyok/typesafe-client/go@latest or cargo add typesafe-system-oneAt a glance
- Type
- Library
- Status
- beta
- Language
- Go, Rust
- Runtime
- libraries
- Has code
- yes
Use cases and integrations
How curated lists describe it
Unofficial Go and Rust clients for the TypeSafe AI System One API (Jev).
wh000wh000/awesome-jev-liveUnofficial Go and Rust clients for the TypeSafe AI System One API (Jev).
hellogumbo/awesome-jev
Frequently asked questions
Which languages are covered?
Go and Rust.
Do they support OpenRouter?
Yes, gateway support includes OpenRouter, Vercel AI Gateway and custom proxies.
How are retries handled?
Using the official SDKs' policy with backoff, jitter and Retry-After.
Related projects
Hack 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.
ProjectproductionPHPGo MCP server giving any client typed Jev decisions via OpenRouter or TypeSafe, with validated answers and no paid retries.
MCP serverproductionGoSimon Willison's LLM plugin that adds Jev as a model for yes/no, choice and score questions from the command line.
PluginproductionPython