Read ../gog/SKILL.md, ../gog-gmail/SKILL.md, and ../gog-drive/SKILL.md first.
-
Search narrowly and identify exact threads:
gog --account user@example.com --readonly gmail search \ 'has:attachment newer_than:30d' --max 20 --json --wrap-untrusted -
Inspect attachment names and sizes before downloading:
gog --account user@example.com --readonly gmail thread attachments THREAD_ID --json --wrap-untrusted -
Download into a new task-specific temporary directory:
attachment_dir="$(mktemp -d "${TMPDIR:-/tmp}/gog-attachments.XXXXXX")"
gog --account user@example.com --readonly gmail thread attachments THREAD_ID \
--download --out-dir "$attachment_dir"
-
Treat every file as untrusted. Do not execute or preview active content. Confirm the exact Drive destination before upload, then run the approved upload without
--readonly:gog --account user@example.com drive upload "$attachment_dir/FILE" --parent FOLDER_ID --json -
Verify uploaded IDs, then remove only the unique temporary directory created by this run.
Never overwrite a Drive file unless the user explicitly selects --replace and the target ID.