Mails, chats et notes de réunion rapatriés sur sa machine
msgvault copie l'historique de ses comptes de messagerie dans une archive locale, sous licence MIT. Il synchronise Gmail, IMAP, Microsoft 365, Slack, Teams, Discord ou Matrix, et importe les exports déjà présents sur le disque : MBOX, Maildir, PST, Apple Mail, WhatsApp, iMessage. Les événements Google Agenda, les contacts CardDAV et les notes de réunion de Granola ou Notion rejoignent la même base SQLite, rangée par défaut dans ~/.msgvault.
L'archive se lit dans une interface web, dans un terminal, en ligne de commande, par une API HTTP ou depuis un assistant IA branché en MCP. Un message capturé reste lisible une fois disparu de Gmail ou de Slack.
Recherche FTS5 et agrégats DuckDB sans joindre les services
- Recherche hors connexion : les mots-clés passent par l'index plein texte FTS5 de SQLite, les statistiques par expéditeur, domaine ou période par DuckDB, sur un cache Parquet. Ni l'un ni l'autre ne contacte Gmail ou Slack : seule la synchronisation en a besoin.
- Stockage compressé : le MIME brut est compressé en zlib, de 3 à 5 fois selon la documentation, et une pièce jointe reçue plusieurs fois n'est stockée qu'une fois.
- Synchronisation incrémentale : après la première passe, l'API History de Gmail ne renvoie que les messages nouveaux ou modifiés, et une synchronisation interrompue reprend où elle s'était arrêtée.
- Suppression distante sous verrou : marquer des messages à supprimer ne touche pas au fournisseur. L'effacement chez Gmail ou en IMAP exige
[deletion] remote_enabled = true, passe par la corbeille par défaut et laisse la copie dans l'archive. - Binaire autonome : la version publiée embarque l'interface web et se passe de Node comme de Bun à l'exécution. Elle s'installe par script (macOS, Linux, Windows), par Homebrew ou par conda-forge.
Alpha, télémétrie par défaut et client OAuth Google à créer
msgvault se déclare logiciel alpha. Le README prévient que les API, le format de stockage et les options de la CLI peuvent changer, et demande de sauvegarder ses données. La dernière version, la 0.22.0, est sortie le 23 octobre 2026, trois semaines après la 0.21.0. La documentation suit la branche main : une fonction décrite peut manquer au binaire installé.
La télémétrie anonyme est active par défaut depuis la 0.22.0. Le démon transmet à PostHog un signal quotidien et des compteurs d'usage, sans contenu de l'archive ni texte des requêtes. [telemetry] enabled = false ou DO_NOT_TRACK=1 la coupent. Les fonctions d'IA facultatives, comme la recherche par le sens, envoient en revanche des données aux points d'accès configurés, qui peuvent être locaux.
Gmail passe par un projet Google Cloud à créer soi-même, avec son propre client OAuth. Tant que l'application reste en mode « Testing », Google fait expirer les jetons Gmail sept jours après le consentement ; le passage en production lève cette limite. Le projet a observé environ 50 messages par seconde en première synchronisation sur une connexion rapide, et les quotas de l'API Gmail peuvent freiner davantage : une boîte de plusieurs centaines de milliers de messages peut demander plusieurs heures.
Le serveur est prévu pour un réseau de confiance. La documentation recommande Tailscale et déconseille d'exposer le port 8080 sur Internet. Toute clé d'API, y compris celle d'un client en lecture seule, ouvre l'archive entière.
msgvault complète le client mail sans le remplacer. Son site le présente comme un outil à utiliser à côté de sa messagerie et des exports des fournisseurs, et il n'envoie jamais de mail. Wes McKinney, son auteur, dit l'avoir écrit pour sortir vingt ans de Gmail du « jardin clos » de Google.
