jev-mail-classifier
Config-driven inbox classifier that tags, moves, flags and notifies from typed answers.
```
██╗███████╗██╗ ██╗ ███╗ ███╗ █████╗ ██╗██╗
██║██╔════╝██║ ██║ ████╗ ████║██╔══██╗██║██║
██║█████╗ ██║ ██║ ██╔████╔██║███████║██║██║
██ ██║██╔══╝ ╚██╗ ██╔╝ ██║╚██╔╝██║██╔══██║██║██║
╚█████╔╝███████╗ ╚████╔╝ ██║ ╚═╝ ██║██║ ██║██║███████╗
╚════╝ ╚══════╝ ╚═══╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚═╝╚══════╝
```
**Your inbox, judged in milliseconds.**
[](https://www.python.org/)
[](LICENSE)
[](https://typesafe.ai)
[](https://github.com/textualize/textual)
*Tag, move, flag, and notify -- no LLM prompt engineering, no JSON parsing, no per-email API bill that adds up.*
https://github.com/user-attachments/assets/4604d2ff-6e59-4938-983e-305d355be5d2
</div>
---
## Why
Classifying email with a normal LLM means writing a prompt, hoping it returns valid
JSON, and paying full chat-completion prices for what is really just "does this apply:
yes or no." [Jev](https://typesafe.ai), TypeSafe's **System One model**, skips all of
that: you send it your inbox state and a set of yes/no questions, and it hands back
calibrated probabilities directly -- typically in well under a second, for a fraction of
a cent per email.
### What makes Jev different from calling an LLM
Chat LLMs are trained with RLHF to produce fluent, human-pleasing *text* -- great for
conversation, but that same optimization is what makes them mode-drop, hedge, and
overstate confidence when what you actually need is a reliable decision buried inside
software. Jev is TypeSafe's first **System One model**: instead of generating a
sentence you have to parse, it's trained with **Reinforcement Learning for Calibrated
Decisions (RLCD)** to output typed, calibrated probabilities directly -- "more like
code: reliable, fast, self-consistent, and type-safe" than like a chatbot reply.
Th