> gog
Google Workspace CLI for Gmail, Calendar, Drive, Contacts, Sheets, and Docs. Use when the user asks to send an email, check inbox, search Gmail, create or list calendar events, search Google Drive files, look up contacts, read or update spreadsheets, or export Google Docs. Handles OAuth-authenticated access to Google services via the gog command-line tool.
curl "https://skillshub.wtf/elizaOS/eliza/gog?format=md"gog
Use gog for Gmail/Calendar/Drive/Contacts/Sheets/Docs. Requires OAuth setup.
Setup (once)
gog auth credentials /path/to/client_secret.jsongog auth add you@gmail.com --services gmail,calendar,drive,contacts,docs,sheetsgog auth list
Common commands
- Gmail search:
gog gmail search 'newer_than:7d' --max 10 - Gmail messages search (per email, ignores threading):
gog gmail messages search "in:inbox from:ryanair.com" --max 20 --account you@example.com - Gmail send (plain):
gog gmail send --to a@b.com --subject "Hi" --body "Hello" - Gmail send (multi-line):
gog gmail send --to a@b.com --subject "Hi" --body-file ./message.txt - Gmail send (stdin):
gog gmail send --to a@b.com --subject "Hi" --body-file - - Gmail send (HTML):
gog gmail send --to a@b.com --subject "Hi" --body-html "<p>Hello</p>" - Gmail draft:
gog gmail drafts create --to a@b.com --subject "Hi" --body-file ./message.txt - Gmail send draft:
gog gmail drafts send <draftId> - Gmail reply:
gog gmail send --to a@b.com --subject "Re: Hi" --body "Reply" --reply-to-message-id <msgId> - Calendar list events:
gog calendar events <calendarId> --from <iso> --to <iso> - Calendar create event:
gog calendar create <calendarId> --summary "Title" --from <iso> --to <iso> - Calendar create with color:
gog calendar create <calendarId> --summary "Title" --from <iso> --to <iso> --event-color 7 - Calendar update event:
gog calendar update <calendarId> <eventId> --summary "New Title" --event-color 4 - Calendar show colors:
gog calendar colors - Drive search:
gog drive search "query" --max 10 - Contacts:
gog contacts list --max 20 - Sheets get:
gog sheets get <sheetId> "Tab!A1:D10" --json - Sheets update:
gog sheets update <sheetId> "Tab!A1:B2" --values-json '[["A","B"],["1","2"]]' --input USER_ENTERED - Sheets append:
gog sheets append <sheetId> "Tab!A:C" --values-json '[["x","y","z"]]' --insert INSERT_ROWS - Sheets clear:
gog sheets clear <sheetId> "Tab!A2:Z" - Sheets metadata:
gog sheets metadata <sheetId> --json - Docs export:
gog docs export <docId> --format txt --out /tmp/doc.txt - Docs cat:
gog docs cat <docId>
Calendar Colors
- Use
gog calendar colorsto see all available event colors (IDs 1-11) - Add colors to events with
--event-color <id>flag - Event color IDs (from
gog calendar colorsoutput):- 1: #a4bdfc
- 2: #7ae7bf
- 3: #dbadff
- 4: #ff887c
- 5: #fbd75b
- 6: #ffb878
- 7: #46d6db
- 8: #e1e1e1
- 9: #5484ed
- 10: #51b749
- 11: #dc2127
Email Formatting
-
Prefer plain text. Use
--body-filefor multi-paragraph messages (or--body-file -for stdin). -
Same
--body-filepattern works for drafts and replies. -
--bodydoes not unescape\n. If you need inline newlines, use a heredoc or$'Line 1\n\nLine 2'. -
Use
--body-htmlonly when you need rich formatting. -
HTML tags:
<p>for paragraphs,<br>for line breaks,<strong>for bold,<em>for italic,<a href="url">for links,<ul>/<li>for lists. -
Example (plain text via stdin):
gog gmail send --to recipient@example.com \ --subject "Meeting Follow-up" \ --body-file - <<'EOF' Hi Name, Thanks for meeting today. Next steps: - Item one - Item two Best regards, Your Name EOF -
Example (HTML list):
gog gmail send --to recipient@example.com \ --subject "Meeting Follow-up" \ --body-html "<p>Hi Name,</p><p>Thanks for meeting today. Here are the next steps:</p><ul><li>Item one</li><li>Item two</li></ul><p>Best regards,<br>Your Name</p>"
Notes
- Set
GOG_ACCOUNT=you@gmail.comto avoid repeating--account. - For scripting, prefer
--jsonplus--no-input. - Sheets values can be passed via
--values-json(recommended) or as inline rows. - Docs supports export/cat/copy. In-place edits require a Docs API client (not in gog).
- Confirm before sending mail or creating events.
gog gmail searchreturns one row per thread; usegog gmail messages searchwhen you need every individual email returned separately.
> related_skills --same-repo
> yara-rule-authoring
Guides authoring of high-quality YARA-X detection rules for malware identification. Use when writing, reviewing, or optimizing YARA rules. Covers naming conventions, string selection, performance optimization, migration from legacy YARA, and false positive reduction. Triggers on: YARA, YARA-X, malware detection, threat hunting, IOC, signature, crx module, dex module.
> weather
Get current weather and forecasts (no API key required). Use when the user asks about the weather, temperature, forecast, wind, humidity, or climate conditions for a city or location. Fetches real-time weather data from free services using curl.
> wacli
Send WhatsApp messages to other people or search/sync WhatsApp history via the wacli CLI (not for normal user chats). Use when the user asks to send a WhatsApp message, text someone on WhatsApp, search WhatsApp chat history, sync WhatsApp conversations, backfill message history, or forward a file via WhatsApp to a third party.
> voice-call
Initiates, manages, and inspects voice calls through the Otto voice-call plugin using Twilio, Telnyx, Plivo, or mock providers. Supports starting outbound calls, continuing conversations, speaking messages, ending calls, and checking call status. Use when the user wants to make a phone call, dial a number, place a voice call, check call status, send a voice message, or speak to someone over the phone.