Install
openclaw skills install @aididmyhomework/tutacomSend, read, and manage emails via Tuta (formerly Tutanota) encrypted email service. Use when user asks to send emails, check inbox, read mail, or do any email operations through their Tuta account. Triggers on phrases like email, send email, check inbox, Tuta, Tutanota, mail, read email, compose email.
openclaw skills install @aididmyhomework/tutacomInteract with Tuta (Tutanota) encrypted email via the undocumented REST API at https://app.tuta.com/rest/.
All content is E2E encrypted — the client handles crypto locally.
Python 3 with: requests, pycryptodome, bcrypt, argon2-cffi.
Install if missing:
python3 -m pip install --break-system-packages requests pycryptodome bcrypt argon2-cffi
Store in openclaw.json under skills.entries.tuta-mail.env:
TUTA_EMAIL — Tuta email addressTUTA_PASSWORD — account passwordAll commands via scripts/tuta_client.py (resolve path relative to this skill directory).
python3 scripts/tuta_client.py login \
--email "$TUTA_EMAIL" --password "$TUTA_PASSWORD" \
--session-file /tmp/tuta_session.json
Saves session (access token + decrypted keys) to the session file. Reuse until it expires.
python3 scripts/tuta_client.py inbox \
--session-file /tmp/tuta_session.json --count 20
Returns JSON array with id, subject, sender, date, unread for each mail.
python3 scripts/tuta_client.py read \
--mail-id "listId/elementId" \
--session-file /tmp/tuta_session.json
Use the id from inbox listing. Returns decrypted subject, sender, date, body.
python3 scripts/tuta_client.py send \
--to "recipient@example.com" \
--subject "Subject line" \
--body "Email body text" \
--sender-name "Display Name" \
--session-file /tmp/tuta_session.json
Sends non-confidential email to external (non-Tuta) recipients. Creates draft then sends.
/tmp/tuta_session.jsonv header is set to 84; may need updating if Tuta changes their API version.