Install
$ agentstack add skill-intellectronica-agent-skills-gog-cli ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
gogcli (gog)
gog is a fast, script-friendly CLI for Google services. It is JSON-first, supports multiple accounts/OAuth clients, and has explicit guardrails for agent and CI usage.
Authoritative upstream: https://github.com/steipete/gogcli
This skill was refreshed against upstream gog v0.13.0 (2026-04-20). When exact syntax matters, run gog --help or gog schema --json; the command surface moves quickly, rather inconveniently for anyone fond of stale notes.
Operating rules
- Prefer
gog --json ... | jq ...for inspection and scripting. - Use
--plainonly when stable TSV is more convenient than JSON. - Use
--dry-runfor supported mutating operations when preparing a change or when user intent is ambiguous. - Use
--no-inputin automation so commands fail instead of prompting. - Use
--forceonly when the user asked for the destructive/public/send/admin operation or after you have clearly explained the effect. - Do not repair OAuth, consent, keyring, or Workspace delegation problems silently. Show the exact command the user should run.
- Do not export tokens, print secrets, open public shares, add delegates/forwarding, send mail, suspend users, or permanently delete data unless the user explicitly requested that action.
- For agent runs that must not send mail, add
--gmail-no-send, setGOG_GMAIL_NO_SEND=1, or configuregog config no-send set.
Install and auth
brew install gogcli
gog auth credentials set ~/Downloads/client_secret_....json
gog auth add you@example.com --services gmail,calendar,drive
gog auth list --check
Notes:
- Homebrew now uses
brew install gogcli; old tap examples are obsolete. gog auth adddefaults to--services user. Request the services needed for the task.--services allis accepted only as a backwards-compatible alias foruser; do not use it when you need every API.- Use
--readonly,--drive-scope readonly|file|full, and--gmail-scope readonly|fullfor least privilege. - Keep and Admin require Workspace service-account/domain-wide delegation. Google Chat, Groups, directory, and Classroom also have Workspace restrictions.
- For headless/CI, consider
--manual,--remote,--access-token, orGOG_AUTH_MODE=adc.
Read references/authentication.md for full auth patterns.
Global flags
--account, -a # account selection
--client # named OAuth client/token bucket
--access-token # direct short-lived token; also GOG_ACCESS_TOKEN
--json, -j # machine-readable JSON
--plain, -p # stable TSV
--results-only # JSON primary result only
--select # best-effort JSON projection
--dry-run, -n # preview supported writes
--force, -y # skip confirmations
--no-input # never prompt
--enable-commands # allowlist top-level or dotted commands
--disable-commands # denylist top-level or dotted commands
--gmail-no-send # block Gmail send operations
--verbose, -v # debug logging
Useful command aliases:
gog send ... # alias for gog gmail send
gog ls # alias for gog drive ls
gog search "budget" # alias for gog drive search
gog download # alias for gog drive download
gog upload ./file.pdf # alias for gog drive upload
gog me # alias for gog people me
gog status # alias for gog auth status
gog open # best-effort Google web URL, offline
High-value workflows
Account selection
gog auth alias set work you@company.com
gog --account work gmail search 'is:unread newer_than:2d'
GOG_ACCOUNT=work gog calendar events primary --today
gog --client work auth credentials set ~/Downloads/work-client.json
gog --client work auth add you@company.com --services gmail,calendar
Gmail
gog --json gmail search 'is:unread newer_than:7d' | jq -r '.threads[].id'
gog gmail messages search 'from:alice@example.com has:attachment' --include-body
gog gmail messages search 'subject:report newer_than:30d' --full
gog gmail thread get --download --out-dir ./attachments
gog gmail labels modify --add Project --remove INBOX
gog gmail messages modify --add STARRED
gog gmail send --to user@example.com --subject "Hello" --body-file ./body.txt
gog gmail forward --to user@example.com --note "FYI"
For forwarding, autoreply, watch/Pub/Sub, filters, delegates, send-as, label colours, batch operations, and tracking, read references/gmail.md.
Calendar
gog calendar calendars
gog calendar events primary --today --weekday
gog calendar events --all --from "2026-04-25T00:00:00+02:00" --to "2026-04-26T00:00:00+02:00"
gog calendar freebusy --cal primary --from "2026-04-25T09:00:00+02:00" --to "2026-04-25T17:00:00+02:00"
gog calendar create primary --summary "Planning" --from "2026-04-25T14:00:00+02:00" --to "2026-04-25T14:30:00+02:00" --attendees "alice@example.com,bob@example.com" --with-meet
gog calendar respond primary --status accepted --send-updates all
Use RFC3339 with timezone offsets for generated datetimes. Read references/calendar.md for aliases, subscriptions, secondary calendars, extended properties, Focus Time, OOO, working locations, team calendars, and conflict detection.
Drive, Docs, Sheets, Slides, Forms, Apps Script
gog drive search "invoice filetype:pdf" --max 20
gog drive upload ./report.md --convert-to doc --parent
gog drive upload ./deck.pdf --replace --name "Board Deck.pdf"
gog drive share --to user --email editor@example.com --role commenter
gog docs write --file ./brief.md --replace --markdown
gog docs sed 's/status/{b c=green}approved/g' --dry-run
gog sheets update 'Sheet1!A1' '[["Name","Score"],["Ada",98]]'
gog sheets chart list
gog slides thumbnail --out ./slide.png
gog forms responses list --max 20
gog appscript run myFunction --params '["arg1", 123]'
Read references/drive-docs.md for current file/content commands. For Docs sed formatting, read references/sedmat.md.
Other services
gog contacts search "Ada"
gog tasks lists
gog tasks add --title "Weekly review" --due "2026-04-27" --repeat weekly
gog chat messages send spaces/ --text "Build complete"
gog groups members engineering@example.com
gog admin users list --domain example.com
gog keep search "receipt"
Read references/other-services.md for Chat, Classroom, Contacts, Tasks, People, Groups, Admin, Keep, and time utilities.
Scripting patterns
# Inspect shape first
gog --json gmail search 'is:unread' --max 3 | jq .
# Use pagination/all-pages where available
gog --json calendar events primary --from today --to tomorrow --all-pages
# Fail cleanly when a supported list command has no results
gog --json calendar events primary --query "unlikely query" --fail-empty
# Batch with xargs after checking output
gog --json gmail search 'older_than:1y label:newsletter' --max 200 | \
jq -r '.threads[].id' | \
xargs -n 50 gog gmail labels modify --remove INBOX
# Agent-safe command surface
GOG_ENABLE_COMMANDS=calendar.events,calendar.freebusy,tasks \
gog --no-input --json calendar events primary --today
Reference map
references/command-reference.md- generated command index fromgog schema --jsonreferences/authentication.md- OAuth clients, service accounts, scopes, keyrings, headless authreferences/configuration.md- config keys, environment variables, output modes, safety switchesreferences/gmail.md- Gmail search, read, send, labels, settings, watch, tracking, autoreplyreferences/calendar.md- Calendar listing, event writes, scheduling, special events, aliasesreferences/drive-docs.md- Drive, Docs, Sheets, Slides, Forms, Apps Scriptreferences/sedmat.md- Docs sed/formatting DSLreferences/other-services.md- Chat, Classroom, Contacts, Tasks, People, Groups, Admin, Keep
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: intellectronica
- Source: intellectronica/agent-skills
- License: CC0-1.0
- Homepage: https://skills.sh/intellectronica/agent-skills
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.