Gmcli
Gmail CLI for searching emails, reading threads, sending messages, managing drafts, and...
Install
npx skills add badlogic/pi-skills --skill gmcli -g -a claude-code -y- Repository
- badlogic/pi-skills2.6k
- Category
- Engineering
- Updated
- 5mo ago
- License
- MIT
- Context cost
- Lightabout 432 tokens
- Runs scripts
- No, instructions only
What it does
Gmail CLI for searching emails, reading threads, sending messages, managing drafts, and handling labels/attachments.
Gmail CLI
Command-line interface for Gmail operations.
Installation
npm install -g @mariozechner/gmcli
Setup
Google Cloud Console (one-time)
- Create a new project (or select existing)
- Enable the Gmail API
- Set app name in OAuth branding
- Add test users (all Gmail addresses you want to use)
- Create OAuth client:
- Click "Create Client"
- Application type: "Desktop app"
- Download the JSON file
Configure gmcli
First check if already configured:
gmcli accounts list
If no accounts, guide the user through setup:
- Ask if they have a Google Cloud project with Gmail API enabled
- If not, walk them through the Google Cloud Console steps above
- Have them download the OAuth credentials JSON
- Run:
gmcli accounts credentials ~/path/to/credentials.json - Run:
gmcli accounts add <email>(use--manualfor browserless OAuth)
Usage
Run gmcli --help for full command reference.
Common operations:
gmcli <email> search "<query>"- Search emails using Gmail query syntaxgmcli <email> thread <threadId>- Read a thread with all messagesgmcli <email> send --to <emails> --subject <s> --body <b>- Send emailgmcli <email> labels list- List all labelsgmcli <email> drafts list- List drafts
Data Storage
~/.gmcli/credentials.json- OAuth client credentials~/.gmcli/accounts.json- Account tokens~/.gmcli/attachments/- Downloaded attachments
