CommunityJev Tools & CLIs
TypeSafe Jev Crate
Rust docs for typesafe-jev 0.2.0, a blocking client that sends one state and a set of Choice, Score, and Noul questions and prices input tokens at list rate.
- Format
- Docs
- Published by
- Community
- Author
- thehumanworks
- Last verified
- Sep 2026
Works forJev for Classification
Used inJev for Software & DevTools
Highlights
- Crate 0.2.0, documented 21 September 2026, MIT OR Apache-2.0. Client::from_env reads TYPESAFE_API_KEY.
- Questions keep the order you add them. A response has one answer per id.
- ask retries connection failures and transient HTTP statuses, honours Retry-After, and returns auth errors immediately.
- Usage::cost_usd prices input tokens at the list constant. Calls are blocking and share one pool.
Quickstart
rust
let client = Client::from_env(Config::default())?;
let response = client.ask(ticket, &questions)?;
let department = response.choice("department")?;Watch out
Third-party crate docs, not TypeSafe's manual. The worked ticket prints illustrative numbers from the doc example.
Questions about this entry
Short answers drawn from the linked project or page.
Third party. It is a community crate maintained by thehumanworks, dual-licensed MIT OR Apache-2.0, and this is its docs.rs page rather than TypeSafe's manual. Vendor behaviour can change without a crate release, so read it as one implementation's reading of the API.
Not as written. It sits on ureq 3.0 and the docs describe calls as blocking and sharing one pool, which is fine in a sync service and awkward inside a tokio task. You'd want to wrap it or reach for an async HTTP client against the same endpoint.
ask retries connection failures and transient HTTP statuses and honours Retry-After, while auth errors return immediately rather than burning retries on a bad key. The docs.rs listing page does not document the attempt cap or backoff shape, so check those before relying on it under load.
Questions keep the order you add them, backed by indexmap, and a response carries one answer per id. Usage::cost_usd prices input tokens against a list constant compiled into the crate, which is the number most likely to drift from your actual invoice.
Yes. Client::with_transport takes any Transport, including a closure from the request body to a Reply, so you can return a canned JSON body and assert on the decoded answer. The docs show exactly that, building a client whose transport returns a fixed noul answer of 0.5.
ask returns Error::TokenLimit, and the caller is expected to split the state and retry; a 422 from a body the API refuses as malformed comes back as Error::InvalidRequest. Rejected credentials return at once as Error::Auth, and a key or Config no request could be sent with is reported by Client::new, not retried.
An AdaptiveLimiter caps concurrency and halves it whenever the API throttles, growing it back as requests succeed. The client is Send plus Sync and shares one connection pool, so you can call it from as many threads as Config::pool_size. Calls are blocking because it sits on ureq.
More Jev resources like this
An Elasticsearch-compatible autoindex search layer that optionally sends top hits to TypeSafe Jev and reorders results by relevance scores.
Jev Tools & CLIs#community#rust#search
Community
xerj-org/xerjRust
Rust coding-agent harness (MIT, ~20k stars) whose crates/jcode-base/src/jev.rs is a typed TypeSafe Jev decision transport, used for memory pruning (memory_jev.rs), browser navigation (browser_jev.rs), and voice routing (voice_intent.rs) with separate provider selectors per purpose.
Jev Tools & CLIs#community#rust#coding-agent
Community
1jehuang/jcodeRust
A Go-based team workspace with optional Jev AI for agent auto-routing, task auto-fill, auto-assign, and automation condition nodes.
Jev Tools & CLIs#community#go#agents
Community
Paca-AI/pacaGo
Python harness for GUI grounding: it divides a screenshot into grid tiles, has a vision model describe each tile neutrally, then asks typesafe-ai/jev to choose among the descriptions. Local confidence and margin gates decide whether to descend or refuse, and it emits only a point and bounding box.
Jev Tools & CLIs#community#gui-grounding#computer-use
Community
ZihuaEvan/GUI_JEVPython
Go CLI for Jev with noul, choice, score, eval, rank, and models commands: rank sends one Score question per item per weighted YAML dimension in a single request and sums weight times score in code, while threshold flags turn a failed gate into exit code 10 for scripts and CI.
Jev Tools & CLIs#community#cli#go
Community
saembit/jeff-cliGo
Multi-agent trading research with optional Jev screening of StockTwits and Reddit posts for company relevance before sentiment analysis runs.
Jev Tools & CLIs#community#python#trading
Community
TauricResearch/TradingAgentsPython
From the Jev guides
Original write-ups on what this entry is for.
The request shape barely changes across surfaces; the surrounding contract does. When to call the API directly and when a gateway, a Worker binding, or a router entry earns its extra hop.
Jev Tools & CLIs#gateway#vercel#cloudflare
Read article
Taking a decision checkpoint out of Python: what the GGUF and browser WebGPU exports preserve, what they change, and the parity evidence the model cards publish.
Jev Tools & CLIs#open-models#local#onnx
Read article
Jev labels a record that already exists. Code moves, flags, or holds it. How the document, mail, and transfer tools keep the action out of the model.
Jev Tools & CLIs#classification#email#security
Read article
From the Jev community
Posts from builders shipping with Jev right now.