Mailslide
A Windows + Outlook Classic automation tool for turning repetitive email work into reliable workflows. Use configurable jobs and optional LLM plugins to classify, route, summarize, and structure email processing.
Language: English | Traditional Chinese
Warning: AI reads your emails. Make sure emails processed by AI do not contain personal privacy data or business confidential information, or use a local model for processing.
Disclaimer: This project is provided as-is and does not guarantee the security of data processed by third-party or local AI models. The project authors are not liable for any data breach, confidential information leakage, or related damages resulting from user inputs or model services. Users are responsible for risk assessment and compliance with organizational policies and applicable laws.
Why Mailslide
- Standardize Outlook processing with repeatable job-based workflows.
- Go beyond classification: move folders, create appointments, export JSON/CSV/Excel.
- Keep deployment flexible: OpenAI-compatible APIs or local models (Ollama, llama.cpp).
- Friendly for non-developers: initialize and edit configs directly in the TUI.
Typical use cases
- Operations and assistants: triage meeting requests, alerts, and routine inbox traffic.
- PMs and sales: convert email streams into trackable events and summaries.
- Engineering and support: auto-tag and prioritize incoming threads.
Recent workflow updates
- Home -> Stop now halts a running job from the Home tab.
- Configuration -> General -> Reload rereads
config/config.yamlfrom disk. - Plugin settings now support prompt profiles, and renaming a profile key tries to keep related job references in sync.
30-second start (End users)
uv tool install mailslide
mailslide-tui
After first launch, open About and click Initialize Config.
Upgrade:
uv tool upgrade mailslide
Pre-release compatibility (LLM path):
- Canonical LLM dependency policy is defined in
pyproject.tomlunderproject.optional-dependencies.llm. - Current incident-closure policy for LLM execution path is
httpx<1. - Release-candidate validation evidence lives in
docs/releases/evidence/(see the file matching the target RC tag, e.g.X.Y.Z-rcN.md).
When a release changes config schema, the app auto-migrates config/config.yaml on load and writes a timestamped backup (for example: config.yaml.bak.20260327_153000).
30-second start (Developers / source mode)
uv sync
uv run app.py
Then in TUI:
- Open About and click Initialize Config.
- Open Configuration and set Jobs / LLM / Plugins.
- Return to Home and run a job (
Preserve RE/FWisONby default and can be toggled on Home).
Import Path Migration
- Canonical path:
mailslide - Legacy path:
outlook_mail_extractor(deprecated, planned removal in the next major release)
| Legacy | New |
|---|---|
from outlook_mail_extractor import load_config |
from mailslide import load_config |
python -m outlook_mail_extractor |
python -m mailslide |
uv run outlook_mail_extractor |
uv run mailslide |
Screenshots
Plugin Capability Matrix
| Plugin | Primary purpose | LLM required | Typical output |
|---|---|---|---|
add_category |
Classify emails and add categories | Yes | Outlook category tags |
move_to_folder |
Decide and move target folders | Yes | Folder move result |
create_appointment |
Create calendar items from email content | Yes | Outlook calendar items |
event_table |
Extract event data into a table | Yes | output/events.xlsx |
summary_file |
Generate summaries and priorities | Yes | output/email_summaries.csv |
write_file |
Export raw email data | No | output/*.json |
Full Guide
- English:
GUIDE.en.md - Traditional Chinese:
GUIDE.md
The TUI Guide tab now prefers GUIDE.en.md / GUIDE.md and falls back to README files for compatibility.
Requirements
- Windows
- Outlook Classic (not New Outlook)
- Outlook must stay open while running
License
GPL-3.0-or-later. See LICENSE.
Release files for mailslide 0.5.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mailslide-0.5.0.tar.gz | 136.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mailslide-0.5.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 312.7 kB
Release files / mailslide-0.5.0.tar.gz
| Download URL | mailslide-0.5.0.tar.gz |
|---|---|
| Size | 136.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6178f1fe9c5c939f34b96ee0c3cb807afbf6b02885b56d4d7d1e60f6b969a593
|
|
BLAKE2b-256 checksum How to use checksums |
0bb8ec3407c9cb13bbf049e21046be4042a83a581a448e1a8dc9bede251a0515
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 10, 2026.
Transparency logRelease files / mailslide-0.5.0-py3-none-any.whl
| Download URL | mailslide-0.5.0-py3-none-any.whl |
|---|---|
| Size | 175.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
78de22768d3190dedc468d67bc3669fc9105d703a1cc1f6d27d42431ceffc248
|
|
BLAKE2b-256 checksum How to use checksums |
d14d8907f49c7e22017f4972ab4704b61af708a98c853b4de40db2ec22322359
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 10, 2026.
Transparency log