Skip to content

jev-mail-triage

Dry-run-first Proton Mail Bridge triage on macOS where Jev answers whether each message is spam or phishing.

Projectbeta

Overview

Jev Mail Triage runs on a Mac, reads new messages through Proton Mail Bridge over IMAP, and asks TypeSafe's Jev model two questions about each one: is it unsolicited spam, and is it a scam or phishing attempt. By default it only records the answers. Moving flagged messages to a Jev Review folder is an explicit opt-in, and nothing is ever deleted.

It targets Proton users who want help spotting junk without giving up control of their mailbox. Secrets such as the Bridge password and the TypeSafe key are stored in macOS Keychain rather than the config file. The README is explicit that sender, subject, a shortened body and link addresses leave Proton's end-to-end encrypted environment when sent to TypeSafe.

What the decision model decides

TypeQuestionAnswers
Yes / noIs this unsolicited spam?yes · no
Yes / noIs this a scam or phishing attempt?yes · no

How it works

  1. Poll new messages through Proton Mail Bridge IMAP
  2. Send sender, subject, shortened body and links to Jev with two yes/no questions
  3. Record answers in dry-run mode
  4. If enabled, move flagged messages to a Jev Review folder; never delete

Strengths

  • Dry-run by default, so nothing changes until you choose
  • Secrets kept in macOS Keychain
  • Apple Mail reflects moves automatically through Bridge

Caveats

  • Message content leaves Proton's end-to-end encrypted environment
  • Mac and Bridge must stay running
  • Requires a TypeSafe API key

Getting started

Clone the repo, create a Python 3.11 venv, pip install -e '.[dev]', copy config.example.toml to ~/.config/jev-mail-triage/config.toml, store secrets with jev-mail-triage secret set, then run jev-mail-triage poll.

At a glance

Type
Project
Status
beta
Language
Python
Runtime
macOS CLI / background service
Has code
yes

Use cases and integrations

How curated lists describe it

Frequently asked questions

What does Jev decide?

Whether each message is unsolicited spam and whether it is a scam or phishing attempt.

Will it delete email?

No. It only records answers by default and can optionally move messages to a review folder.

Is it private?

Not fully; the README warns that sender, subject, shortened body and links are sent to TypeSafe.

Related projects

  • Google Apps Script that labels, archives or trashes Gmail conversations based on Jev answers to your plain-English yes/no questions.

    ProjectbetaJavaScript
  • Chrome/Brave extension that uses Jev to classify, label and safely bulk-clean a Gmail inbox with undo.

    PluginbetaJavaScript
  • Google Apps Script Gmail classifier that applies your own plain-English labels with Jev and archives only high-confidence unwanted mail.

    ServicebetaJavaScript
  • Read-only Chrome extension that badges each Gmail message with Jev's category, priority, spam % and reply %.

    Browser extensionprototypeJavaScript
  • Creator inbox sorter: Jev answers five questions per comment or DM and code decides to notify, draft, like, hide, archive or escalate.

    ProjectprototypeTypeScript
  • Read-only, local Gmail triage that sorts each message into five trays with an urgency score using Jev via Vercel AI Gateway.

    ServicebetaTypeScript