gog is a command-line client for Google Workspace services such as Gmail, Calendar, Drive, Docs, and Sheets. It is used by people, scripts, continuous-integration jobs, and coding agents that need account selection, structured output, and permission controls from a terminal.
Borrowing it
Nothing to install: this file belongs to openclaw/gogcli. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/openclaw/gogcli/main/.agents/skills/gog/SKILL.mdgit clone --depth 1 https://github.com/openclaw/gogcliWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/openclaw/gogcli/gog)<a href="https://agentmods.dev/skills/openclaw/gogcli/gog"><img src="https://agentmods.dev/badge/skills/openclaw/gogcli/gog/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/openclaw/gogcli/gog"><img src="https://agentmods.dev/badge/skills/openclaw/gogcli/gog.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to high
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- high Privilege Escalation · line 48 Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.Fix: Remove references to credential paths. Use environment variables or secrets managers. For docs, use placeholder paths (e.g., /path/to/config). Never load .env or token files in production code paths.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00021 | $0.02852 |
| Opus 5.5 | $0.00008 | $0.01141 |
| Sonnet 5.5 | $0.00004 | $0.00570 |
| Haiku 4.5 | $0.00002 | $0.00285 |
Grade A, and why
gog scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 272 lines — stays where its author put it; the contents beside it link to each section on GitHub.
gog
Use gog when built-in Google connectors are missing a feature, when shell
automation needs stable JSON, or when you need to inspect local Google auth
state before acting.
Fast Path
gog --version
gog auth list --check --json --no-input
gog auth doctor --check --json --no-input
GOG_HELP=agent gog --help
gog schema --json
GOG_HELP=agent makes root help emit a compact automation contract and common
read-only recipes; commands and behavior stay unchanged. Machine output,
non-interactive behavior, stable exit codes, command guards, and
untrusted-content wrapping apply across the CLI. schema exposes command
syntax, stable exit codes, and effective safety state for automation.
For JSON output projection, --fields is accepted as an alias for --select on
commands that do not define their own API field-mask --fields; commands with a
local field-mask flag keep that command-specific meaning.
--results-only unwraps the primary result before --select projects it. For
lists, select item-relative fields: --results-only --select id. Dot paths do
not broadcast through nested arrays (--select items.id selects nothing).
Unmatched object fields are omitted.
Pick the account explicitly for API work:
gog --readonly --account [email protected] gmail search 'newer_than:7d' --json --wrap-untrusted
Prefer --json --wrap-untrusted for agent parsing when reading Google content.
Human hints and progress should stay on stderr; stdout is for data.
Safety Rules
- Do not print access tokens, refresh tokens, OAuth client secrets, or keyring passwords.
- If
GOG_KEYRING_PASSWORDis provided by a shell startup file or service environment, use the matching shell/entrypoint sogogcan unlock the file keyring non-interactively. Do not print the value. - In headless/service agents, verify the service environment, not just the login
shell.
GOG_KEYRING_BACKEND=file,GOG_KEYRING_PASSWORD, andHOMEmust be present in the process that launchesgog. - Use
--no-inputin automation so auth/keyring prompts fail clearly. - Use
--dry-runfirst where commands support it. - Use
--readonlyfor tasks that must not mutate Google data; remove it only for the exact write the user approved. - Destructive commands require
--force; do not add it unless the user asked for that exact mutation. - Use
--gmail-no-sendorGOG_GMAIL_NO_SEND=1unless sending mail is the requested task. - For shared agent environments, prefer a baked readonly or agent-safe binary
from
docs/safety-profiles.md.
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 6d ago Changed · +5 lines 2d07403dca21
- 1mo ago First seen · 267 lines · 21 tokens per session scan A 84c6e8cc6a29
gog is a skill published in the GitHub repository openclaw/gogcli (8,542 stars, last pushed 2d ago), licensed MIT. It adds 21 tokens to every session and 2,852 once invoked, about $0.0001 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
gmail
Send, read, and manage Gmail messages and email attachments automatically.
gog
Operate Google Workspace from the terminal via the gog CLI (gogcli). Use for checking and replying to Gmail, managing Google Tasks, reading and creating Calendar events, Google Chat (spaces/DMs/messages), Meet spaces, Contacts, Drive/Docs/Sheets, and more. Triggers on /gog, /gog mail, /gog tasks, /gog events, /gog…
triage
Work a Gmail inbox with mailwarden — search, bulk actions, snooze, unsubscribe and recurring checks, with the rules that keep a bulk action from touching mail the user never meant to touch. Use when the user asks to triage, clean up, archive, label, snooze or unsubscribe from mail through mailwarden, before any…
google-workspace
Google Workspace integration - Gmail, Calendar, Drive operations via Google APIs.
managing-google-workspace
Manages Google Workspace operations across 12 services (Gmail, Drive, Calendar, Docs, Sheets, Slides, Forms, Tasks, Contacts, Chat, Apps Script, Custom Search). Supports MCP tools or the workspace-cli client. Provides tool routing, workflows, and parameter guidance for every tool. Triggers for "check my email", "find…
gmail-tool
Gmail integration tool. Performs unread check, body retrieval, and draft creation via Gmail API using OAuth2. Use when: Use when: you need to check received emails, read email bodies, create drafts, search the inbox, or work with labeled emails.