MailClassification.jev
.NET app that classifies Outlook, Gmail and IMAP mail into your categories with Jev, preview-first with a hard cost cap, all local.
Overview
MailClassification reads one or more mailboxes, asks Jev through OpenRouter which of your own categories each message belongs to, and writes that one category back as an Outlook category, Gmail label or IMAP keyword. It never deletes, marks as junk or sends; archiving is optional, separately gated and off by default. Runs preview by default and have a hard cost cap, and everything runs on your machine.
There are three ways to use it, sharing one local program and state: a local dashboard for setting up mailboxes and categories, preview runs and large batches; a CLI for scripting and scheduled runs across several mailboxes; and an Outlook add-in task pane for classifying the open message or a quick Inbox batch, which the README notes has been built and tested against the local server but not yet validated end to end in a real Outlook client. It started as a C#/.NET 10 port of jevMail for Microsoft Graph, with the same decision logic, playbooks and safety model, then extended to Gmail and IMAP. Tests and a documentation site are included.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Choice | Which of your categories does this message belong to? | — |
How it works
- Configure mailboxes and categories in the dashboard
- Run a preview to see proposed categories and cost
- Jev classifies each message via OpenRouter
- Write the category back as a label, category or keyword
- Optionally archive, if separately enabled
Strengths
- Works across Outlook, Gmail and IMAP
- Never deletes or sends
- Hard cost cap and preview by default
- Dashboard, CLI and add-in options
Caveats
- Outlook add-in not yet validated end to end
- Requires an OpenRouter key
- Message content sent to the model provider
Getting started
Follow the Install and step-by-step setup sections, starting with an OpenRouter key.At a glance
- Type
- Library
- Status
- beta
- Language
- C#
- Runtime
- .NET 10 local app, CLI and Outlook add-in
- Has code
- yes
- Has tests
- yes
Use cases and integrations
How curated lists describe it
Semantic classification of Outlook, Gmail and IMAP mailboxes with Jev…
wh000wh000/awesome-jev-live
Frequently asked questions
Which mailboxes are supported?
Microsoft 365 and Outlook.com, Gmail, and any IMAP server.
Can it delete mail?
No, it only applies categories; archiving is optional and off by default.
How is it related to jevMail?
It began as a .NET port of jevMail with the same logic and safety model.
Related projects
Google Apps Script Gmail classifier that applies your own plain-English labels with Jev and archives only high-confidence unwanted mail.
ServicebetaJavaScriptFree Claude Code skill where Jev sorts and Claude writes: classify, pre-route items so Claude reads only unsure ones, and gate tool calls.
ProjectbetaPythonOpen-source AI email assistant; listed as using Jev as an optional classifier for email intent and triage.
ProjectproductionTypeScriptPrivacy-first personal knowledge management system, listed as integrating Jev for document classification and tag routing.
PluginproductionTypeScriptConfig-driven IMAP inbox classifier with a terminal UI where Jev answers yes/no per category to tag, move, flag or notify.
ProjectbetaPythonCalibre plugin that asks Jev yes/no questions to suggest genre and subject tags for books, with per-tag thresholds and review.
PluginbetaPython