Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Manages Fastmail email and calendar via JMAP and CalDAV APIs. Use for emails (read, send, reply, search, organize, bulk operations, threads) or calendar (events, reminders, RSVP invitations). Timezone auto-detected from system.
Manages Fastmail email and calendar via JMAP and CalDAV APIs. Use for emails (read, send, reply, search, organize, bulk operations, threads) or calendar (events, reminders, RSVP invitations). Timezone auto-detected from system.
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run.
Invoke tools via CLI: # Install dependencies first cd .opencode/skills/fastmail && bun install # Email: List mailboxes bunx fastmail list_mailboxes # Email: Send bunx fastmail send_email \ '{"to": [{"email": "user@example.com"}], "subject": "Hi", "text_body": "Message"}' # Calendar: List events bunx fastmail list_events \ '{"start_date": "2024-01-01", "end_date": "2024-01-31"}' # Calendar: Create event with reminder bunx fastmail create_event_with_reminder \ '{"title": "Meeting", "start": "2024-01-15T10:00:00", "end": "2024-01-15T11:00:00", "reminder_minutes": [15, 60]}' # List all available tools bunx fastmail --list
๐ง Check inbox or search emails ๐ง Send, reply, or move emails ๐ท๏ธ Apply labels or organize mailbox ๐ View calendar or events ๐ Create, update, or delete events ๐ Set event reminders or alarms
ToolPurposelist_mailboxesList all folderslist_emailsList emails in mailboxget_emailGet full email contentget_threadGet all emails in a conversation threadsearch_emailsSearch by text querysend_emailSend new emailreply_emailReply to emailmove_emailMove to folderset_labelsApply labels ($seen, $flagged)delete_emailDelete (move to trash)
ToolPurposebulk_move_emailsMove multiple emails at oncebulk_set_labelsApply labels to multiple emailsbulk_delete_emailsDelete multiple emails at once
ToolPurposelist_calendarsList all calendarslist_eventsList events by date rangeget_eventGet event detailscreate_eventCreate new eventupdate_eventUpdate existing eventdelete_eventDelete eventsearch_eventsSearch by title/descriptioncreate_recurring_eventCreate repeating eventlist_invitationsList calendar invitationsrespond_to_invitationAccept/decline/maybe invitations
ToolPurposeadd_event_reminderAdd reminder to eventremove_event_reminderRemove reminder(s)list_event_remindersList reminders for eventcreate_event_with_reminderCreate event + reminder in one call
# Check inbox (limit 10) bunx fastmail list_emails '{"limit": 10}' # Search for emails bunx fastmail search_emails '{"query": "invoice"}' # Get specific email content bunx fastmail get_email '{"email_id": "xxx"}' # Get email thread/conversation bunx fastmail get_thread '{"email_id": "xxx"}' # Bulk operations bunx fastmail bulk_move_emails '{"email_ids": ["id1", "id2"], "target_mailbox_id": "archive"}' bunx fastmail bulk_delete_emails '{"email_ids": ["id1", "id2", "id3"]}' # Create recurring event (daily for 10 days) bunx fastmail create_recurring_event \ '{"title": "Standup", "start": "2024-01-01T09:00:00", "end": "2024-01-01T09:30:00", "recurrence": "daily", "recurrence_count": 10}' # Calendar invitations bunx fastmail list_invitations bunx fastmail respond_to_invitation '{"event_id": "xxx", "response": "accept"}'
Need to manage email? List/search โ list_emails or search_emails Read content โ get_email View conversation โ get_thread Send/reply โ send_email or reply_email Organize โ move_email, set_labels, delete_email Bulk actions โ bulk_move_emails, bulk_set_labels, bulk_delete_emails Need to manage calendar? View โ list_calendars or list_events Create โ create_event or create_recurring_event Modify โ update_event Delete โ delete_event Invitations โ list_invitations, respond_to_invitation Need reminders? Add to existing event โ add_event_reminder Create event + reminder โ create_event_with_reminder (faster) Manage โ list_event_reminders, remove_event_reminder
All tools return JSON: { "success": true, "data": { /* tool-specific response */ }, "timestamp": "2024-01-15T10:00:00+07:00" }
VariablePurposeRequiredFASTMAIL_API_TOKENEmail via JMAPYes (for email)FASTMAIL_USERNAMECalendar via CalDAVYes (for calendar)FASTMAIL_PASSWORDCalendar app passwordYes (for calendar)FASTMAIL_TIMEZONECalendar timezone (IANA format)No (auto-detected) Setup: export FASTMAIL_API_TOKEN="your-api-token" export FASTMAIL_USERNAME="your-email@fastmail.com" export FASTMAIL_PASSWORD="your-app-password" # Optional: Override timezone (defaults to system local timezone) export FASTMAIL_TIMEZONE="America/New_York" # or "Asia/Bangkok", "Europe/London", etc.
โฐ Configurable calendar timezone Default: Auto-detects your system's local timezone Override: Set FASTMAIL_TIMEZONE environment variable Uses IANA timezone identifiers (e.g., America/New_York, Asia/Bangkok, Europe/London) Input times assumed in configured timezone Output times shown in configured timezone Stored internally as UTC Handles Daylight Saving Time (DST) automatically
Detailed reference: .opencode/skills/fastmail/references/TOOLS.md Full guide: .opencode/skills/fastmail/README.md Setup help: Fastmail Settings โ Privacy & Security โ Integrations
Workflow acceleration for inboxes, docs, calendars, planning, and execution loops.
Largest current source with strong distribution and engagement signals.