Extract actionable tasks from emails using Python
Project description
mail2task
Extract actionable tasks from messy emails using Python.
Features
- Extract task-like sentences
- Detect due dates
- Detect priority levels
- Clean JSON output
- CLI support
Installation
pip install mail2task
Usage
Python
from mail2task import extract_tasks
email = """
Please submit the compliance report by Friday.
Schedule the onboarding meeting tomorrow.
"""
tasks = extract_tasks(email)
print(tasks)
CLI
Create a text file:
Please submit the report by Friday.
Schedule the client call tomorrow.
Run:
mail2task sample_email.txt
Output:
[
{
"title": "submit the report by Friday.",
"due_date": "2026-05-29T00:00:00",
"priority": "normal",
"confidence": 0.9
}
]
Pretty Output
mail2task sample_email.txt --pretty
Save Output
mail2task sample_email.txt --output tasks.json
Export Formats
JSON
mail2task sample_email.txt --format json
CSV
mail2task sample_email.txt --format csv
Markdown
mail2task sample_email.txt --format markdown
Example Use Cases
- Email automation
- Productivity apps
- AI assistants
- CRM workflows
- Task management systems
NLP Features
- Sentence splitting
- Greeting/signature filtering
- Due date extraction
- Priority detection
- Confidence scoring
NLP Engine
mail2task uses spaCy for:
- sentence segmentation
- tokenization
- action verb detection
- lightweight NLP parsing
.eml Email Support
mail2task can process raw email files directly.
mail2task sample_email.eml --pretty
Project Structure
mail2task/
├── src/
├── tests/
├── README.md
├── pyproject.toml
License
MIT License
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
mail2task-0.7.0.tar.gz
(4.6 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mail2task-0.7.0.tar.gz.
File metadata
- Download URL: mail2task-0.7.0.tar.gz
- Upload date:
- Size: 4.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c5b6733f329a073df74663effa44bce1650ffbe52b511ee67a8c597aa77aad47
|
|
| MD5 |
3fffa3c8da7121a6c0b87b6b19525b98
|
|
| BLAKE2b-256 |
451c01c3e06da08b024ff9ce107347fdc4321a7576550deec68a25bd43853111
|
File details
Details for the file mail2task-0.7.0-py3-none-any.whl.
File metadata
- Download URL: mail2task-0.7.0-py3-none-any.whl
- Upload date:
- Size: 5.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
425970c930df191e50f446e37de7a476e21a606aa8d9fc105253951f9b0f0dce
|
|
| MD5 |
096d354b9951f57af3ff9c6b7f76f8ea
|
|
| BLAKE2b-256 |
03d026ea51bdcc5ae1a83e34d4b37c497148ed47d9d20b5ae5348003c3225cc1
|