gog

SkillCommunication

Google Workspace CLI for Gmail, Google Calendar events, meetings, schedules, availability, Drive, Contacts, Sheets, and Docs

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the gog skill

What this skill tells your AI

The instructions your AI receives, as published by hybridaione/hybridclaw in skills/gog/SKILL.md and read by ahel’s review.

Use gog for Gmail/Calendar/Drive/Contacts/Sheets/Docs. Requires OAuth setup.

Setup (once)

hybridclaw skill install gog gog
hybridclaw auth login google --client-id <id> --client-secret <secret> --account you@gmail.com
hybridclaw auth status google

HybridClaw stores the Google OAuth client secret and refresh token in encrypted runtime secrets, mints a short-lived access token on the host, and injects only GOG_ACCESS_TOKEN, GOOGLE_WORKSPACE_CLI_TOKEN, and GOG_ACCOUNT into the agent runtime for Google Workspace CLIs.

Common commands

gog supports the commands: calendar, chat, contacts, docs, drive, forms, gmail, groups, people, slides, tasks, sheets

  • Help about a gog command: gog <command> --help

  • 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 search events: gog calendar search <calendarId> "Meeting" --from <iso> --to <iso> --max 10

  • 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 attendees: gog calendar create <calendarId> --summary "Title" --from <iso> --to <iso> --attendees a@b.com,c@d.com --send-updates all

  • 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 colors to see all available event colors (IDs 1-11)
  • Add colors to events with --event-color <id> flag
  • Event color IDs (from gog calendar colors output):
    • 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-file for multi-paragraph messages (or --body-file - for stdin).

  • Same --body-file pattern works for drafts and replies.

  • --body does not unescape \n. If you need inline newlines, use a heredoc or $'Line 1\n\nLine 2'.

  • Use --body-html only 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

  • For scripting, prefer --json plus --no-input.
  • When the user asks for calendar events without naming a calendar ID, gog searches all available calendars.
  • Do not pipe gog ... --json through ad hoc Python filters unless the JSON shape has been inspected first.
  • 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 search returns one row per thread; use gog gmail messages search when you need every individual email returned separately.

Signals

GitHub stars
132
Forks
12
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
gog-hybridaione
Source
github.com/hybridaione/hybridclaw