Files
platform/seed/tasks/sync-gmail-inbox/TASK.md
T
2026-02-24 21:47:36 +00:00

29 lines
1.2 KiB
Markdown

---
name: Sync Gmail Inbox
description: Download all emails from the user's Gmail account and save them as files.
version: 1
author: pastilhas
tags:
- email
- gmail
- sync
tools:
- gmail
inputs: []
---
# Sync Gmail Inbox
Download all emails from the user's Gmail account and save each one as an `.eml` file in `$OFFICER_USER_ROOT/Gmail/emails/`.
## Steps
1. Create the `$OFFICER_USER_ROOT/Gmail/emails` directory if it doesn't already exist.
2. Call `gmail` with `action=get_profile` to confirm the account is connected and note the total message count.
3. Determine the current year and month.
4. Loop **month by month**, starting from the current month and going backwards:
- Call `gmail` with `action=sync_inbox`, `output_dir=$OFFICER_USER_ROOT/Gmail/emails`, and `query=after:YYYY/MM/01 before:YYYY/MM+1/01` (adjust the dates for each month).
- Report the result for that month (e.g. "February 2026: saved 47 emails").
- If **3 consecutive months** return 0 saved emails and 0 already existing, stop — you've likely reached the beginning of the account.
5. When finished, count the total `.eml` files in `$OFFICER_USER_ROOT/Gmail/emails` and report the final total.