gog
Search, send, and draft Gmail messages, manage Google Calendar events, query Drive and Contacts, and read/write Google Sheets and Docs via the gog CLI.
Skill by Bitterbot-AI
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/bitterbot-ai-gog
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, spreadsheets, writing, productivity, email, scheduling, file-management
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/gog
What's inside
- Skill name
gog- Description
- Search, send, and draft Gmail messages, manage Google Calendar events, query Drive and Contacts, and read/write Google Sheets and Docs via the gog CLI. Use when the user asks to send email, check their calendar, search Drive files, read a spreadsheet, or export a Google Doc.
- License
- MIT
- Instructions
- 94 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# gog
Use `gog` for Gmail/Calendar/Drive/Contacts/Sheets/Docs. Requires OAuth setup.
Setup (once)
- `gog auth credentials /path/to/client_secret.json`
- `gog auth add you@gmail.com --services gmail,calendar,drive,contacts,docs,sheets`
- `gog 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 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):
```bash
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):
```bash
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.com` to avoid repeating `--account`.
- For scripting, prefer `--json` plus `--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 search` returns one row per thread; use `gog gmail messages search` when you need every individual email returned separately.From Bitterbot-AI/bitterbot-desktop, MIT.
More from Bitterbot-AI/bitterbot-desktop
- 0.797score
slack
Bitterbot-AI
Use when you need to control Slack from Bitterbot via the slack tool, including reacting to messages or pinning/unpinning items in Slack channels or DMs.
SkillAFreshness: A★ 2.5KClaude Code +9 - 0.797score
things-mac
Bitterbot-AI
Manage Things 3 via the `things` CLI on macOS (add/update projects+todos via URL scheme; read/search/list from the local Things database).
SkillAFreshness: A★ 2.5KClaude Code +9 - 0.797score
discord
Bitterbot-AI
Send, read, edit, delete, and search Discord messages, reactions, polls, pins, and threads via the message tool.
SkillAFreshness: A★ 2.5KClaude Code +9 - 0.797score
forage-economy
Bitterbot-AI
Use when anyone asks about bounties (or "forge"), agent earnings, the agent economy, marketplace skills, A2A activity or your network reputation.
SkillAFreshness: A★ 2.5KClaude Code +9 - 0.797score
curiosity-loop
Bitterbot-AI
Use when the user asks what you are curious about or do not know, wants dream-synthesized insights, or after you investigate an exploration target.
SkillAFreshness: A★ 2.5KClaude Code +9 - 0.797score
healthcheck
Bitterbot-AI
Host security hardening and risk-tolerance configuration for Bitterbot deployments.
SkillAFreshness: A★ 2.5KClaude Code +9 - 0.797score
food-order
Bitterbot-AI
Reorder previous Foodora orders, preview cart contents, and track delivery ETA/status with ordercli.
SkillAFreshness: A★ 2.5KClaude Code +9 - 0.797score
moltbook
Bitterbot-AI
Participate in Moltbook — the social network for AI agents.
SkillAFreshness: A★ 2.5KClaude Code +9 - 0.797score
notte
Bitterbot-AI
Deploy browser automations as scheduled, API-callable serverless Functions — plus stealth sessions, vault-backed login, captcha solving, and natural-language…
SkillAFreshness: A★ 2.5KClaude Code +9 - 0.797score
peekaboo
Bitterbot-AI
Capture screenshots, inspect UI elements, drive mouse/keyboard input, and manage macOS apps and windows with the Peekaboo CLI.
SkillAFreshness: A★ 2.5KClaude Code +9 - 0.797score
pre-action-interceptors
Bitterbot-AI
Use when a tool error begins with "INTERCEPTOR:", a sent message was silently hedged or rewritten, or the user asks about active guards or blocked actions.
SkillAFreshness: A★ 2.5KClaude Code +9 - 0.797score
wallet-payments
Bitterbot-AI
Use when web_fetch returns HTTP 402, an API offers a paid tier or micro-toll, another agent charges USDC, or the user asks you to pay, tip or buy.
SkillAFreshness: A★ 2.5KClaude Code +9
Compare and alternatives
Featured in
Signals
- Stars
- 2,478
- Forks
- 422
- Open issues
- 5
- Last commit (this folder)
- Apr 22, 2026 (6 months ago)
- Last release
- Oct 22, 2026 (5 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Website
- bitterbot.ai
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from Bitterbot-AI
- 0.797score
curiosity-loop
Bitterbot-AI
Use when the user asks what you are curious about or do not know, wants dream-synthesized insights, or after you investigate an exploration target.
SkillAFreshness: A★ 2.5KClaude Code +9 - 0.797score
discord
Bitterbot-AI
Send, read, edit, delete, and search Discord messages, reactions, polls, pins, and threads via the message tool.
SkillAFreshness: A★ 2.5KClaude Code +9 - 0.797score
forage-economy
Bitterbot-AI
Use when anyone asks about bounties (or "forge"), agent earnings, the agent economy, marketplace skills, A2A activity or your network reputation.
SkillAFreshness: A★ 2.5KClaude Code +9 - 0.797score
food-order
Bitterbot-AI
Reorder previous Foodora orders, preview cart contents, and track delivery ETA/status with ordercli.
SkillAFreshness: A★ 2.5KClaude Code +9 - 0.797score
moltbook
Bitterbot-AI
Participate in Moltbook — the social network for AI agents.
SkillAFreshness: A★ 2.5KClaude Code +9 - 0.797score
notte
Bitterbot-AI
Deploy browser automations as scheduled, API-callable serverless Functions — plus stealth sessions, vault-backed login, captcha solving, and natural-language…
SkillAFreshness: A★ 2.5KClaude Code +9
Cite this page
gog skill. Agent Mart. https://agentmart.dev/skills/bitterbot-ai-gog (last updated 2026-10-24)