Releases: ahmadatallah/fast-classifier
Releases · ahmadatallah/fast-classifier
Release list
fast-classifier v0.1.0
The first release of fast-classifier — a deterministic, rule-first email classifier for Fastmail: sweep newsletters, file everything into labels, flag what needs action. Dry-run first. Never deletes.
Born from a live session that organized a real 6,551-email inbox (3,849 newsletters swept, 5,573 emails filed into 14 labels, 87% rule coverage) — hardened into a typed, tested library with a CLI and an MCP server.
📚 Docs: https://ahmadatallah.github.io/fast-classifier/
Highlights
- Safety as architecture — mutating commands are dry-run until
--execute; the provider interface has no delete methods and the JMAP layer runtime-asserts nodestroyever leaves the process; >100 planned mutations prompt for confirmation; append-only TSV audit gives resumable runs. - Build your rules from your own inbox —
analyze→suggest(generic domain catalog + interactive unknown-domain walk,--writescaffolds your config) →plan(coverage % + top unmatched senders) → iterate. - Two transports — JMAP direct (default, full power) and Fastmail's official MCP endpoint, behind one
MailProviderinterface with an in-memory provider for tests. - MCP server mode —
fast-classifier-mcpexposes 11 tools over stdio for agents; writes gated behind--allow-execute, forced dry-runs markedforcedDryRun: true. - Needs-action scoring — weighted keyword language packs (English default, German opt-in), unread and personal-sender-awaiting-reply heuristics.
- Report tooling — every report as JSON, CSV (
--csv,--csv-field), or a terminal table (--viewvia tennis).
381 tests, no network in any test. Install from a clone (bun ≥ 1.1) — see the quickstart. npm package planned.