gmail-organizelisted
Install: claude install-skill hec-ovi/gmail-skill
# gmail-organize
```bash
gmail label list | create <name> | delete <name>
gmail modify <id...> [--add L] [--remove L] [--action archive|read|star|...]
[--trash] [--untrash] [--thread] [--create] [--dry-run]
```
`--json` gives the Envelope. `modify` takes many ids at once.
## Gmail has no folders
Everything is a label, including the states that look like something else. `modify`
exposes the readable verb and performs the underlying edit:
| `--action` | What Gmail actually does |
|---|---|
| `archive` | remove `INBOX` |
| `unarchive` | add `INBOX` |
| `read` / `unread` | remove / add `UNREAD` |
| `star` / `unstar` | add / remove `STARRED` |
| `spam` / `unspam` | add / remove `SPAM` |
`--action` repeats, and composes with `--add` and `--remove`:
```bash
gmail modify 1932ab... --action read --action archive
gmail modify 1932ab... 1932cd... --add work --remove INBOX
```
Labels resolve by name, case-insensitively, or by id. A name that does not exist is an
error, never a silent no-op, so a typo cannot quietly apply nothing to a hundred messages.
Pass `--create` when you mean to create it:
```bash
gmail modify 1932ab... --add follow-up --create
```
Nested labels use a slash: `clients/acme`.
## Threads
`--thread` treats the ids as thread ids and acts on every message in the conversation.
That is usually what a user means by "archive that thread".
```bash
gmail modify 1932ab... --thread --action archive
```
## Deleting
`--trash` moves to Trash, wher