Mail

Reading and managing Apple Mail via JXA. Use when working with email, archiving messages, or processing the inbox. Use when this capability is needed.

tomevault-io Updated

File contents

Mail

Apple Mail automation via JXA (osascript -l JavaScript).

Archiving

Mail.app delete() moves messages to Trash, not Archive. There is no archiveMailbox property — find the archive mailbox by name per account.

See archiving.md for account detection, mailbox lookup, and batch archive patterns.

Reading

var app = Application("Mail");
var inbox = app.inbox();
var messages = inbox.messages();

Key properties: subject(), sender(), dateReceived(), content(), mailbox().account().

Notes

  • JXA arrays from Mail may lack .map()/.filter() — use Array.from() or for-loops
  • .whose() selectors fail on child mailbox arrays — use for-loops
  • Launch Mail first if not running: open -g -a "Mail"

Converted and distributed by TomeVault — claim your Tome and manage your conversions.

tomevault-io/skills-registry/tree/main/bendrucker--claude--mail commit 45f4826b68

Frequently asked questions

npx skillmds@latest add tomevault-io/mail