Skip to content

Latest commit

 

History

History
119 lines (92 loc) · 4.84 KB

File metadata and controls

119 lines (92 loc) · 4.84 KB

gogcli

Claude Code skill for interacting with Google services using the gogcli CLI (gog).

Requirements

  • gog CLI installed and on PATH
  • At least one Google account authenticated via gog auth add <email>

Installation

claude plugin marketplace add fprochazka/claude-code-plugins --scope user
claude plugin install gogcli@fprochazka-claude-code-plugins --scope user

Permissions

Add the following to ~/.claude/settings.json to allow the skill to load and auto-approve read-only commands:

{
  "permissions": {
    "allow": [
      "Skill(gogcli)"
    ]
  }
}

The skill's allowed-tools frontmatter auto-allows read-only commands (gmail search, calendar events, drive ls, sheets get, contacts search, etc.) and auth/config commands. Write operations (gmail send, calendar create, drive upload, etc.) require manual approval.

Capabilities

  • Gmail - search threads/messages, send emails, manage labels/drafts/filters, batch operations, email tracking
  • Calendar - list/create/update/delete events, check free/busy, respond to invitations, team calendars
  • Drive - list/search/upload/download files, manage permissions, organize folders
  • Docs - export, read as text, create, write, find-replace
  • Slides - create, export, add/replace slides, manage notes
  • Sheets - read/write/append/format cells, create spreadsheets, export
  • Forms - create forms, get responses
  • Contacts - search/create/update contacts, directory lookup
  • Tasks - manage task lists and tasks
  • People - profile information, directory search
  • Chat - list spaces, send messages (Workspace only)
  • Apps Script - manage projects, run functions

Setting up gog CLI

1. Install gog

# Homebrew
brew install steipete/tap/gogcli

# Or build from source
git clone https://github.com/steipete/gogcli.git
cd gogcli && make
sudo cp ./bin/gog /usr/local/bin/gog

2. Create OAuth credentials in Google Cloud Console

gogcli requires you to bring your own OAuth client — it does not ship a bundled one.

  1. Create a project at https://console.cloud.google.com/projectcreate
  2. Enable the APIs you need:
  3. Configure OAuth consent screen at https://console.cloud.google.com/auth/branding
    • User type: External (allows personal, GSuite, and other Workspace accounts)
    • Fill in app name, support email, and developer contact email
  4. Publish the app at https://console.cloud.google.com/auth/audience
    • Click Publish App to move from Testing to Production
    • Do not submit for verification — just publish
    • This removes the 7-day token expiry and test-user limits
    • Users will see an "unverified app" warning during auth (click Advanced → Go to app)
  5. Create an OAuth client at https://console.cloud.google.com/auth/clients
    • Application type: Desktop app
    • Download the JSON file

3. Store credentials and authenticate

# Store OAuth client credentials
gog auth credentials set ~/Downloads/client_secret_XXXXX.json

# Authorize accounts (opens browser for each)
gog auth add [email protected]
gog auth add [email protected]

# Verify
gog auth list --check

# Set up aliases (optional)
gog auth alias set personal [email protected]
gog auth alias set work [email protected]

# Set timezone
gog config set timezone Europe/Prague

During the OAuth flow, click AdvancedGo to <app name> (unsafe) to proceed past the unverified app warning.

Notes

  • Personal Gmail accounts work immediately with the unverified Production app
  • Google Workspace accounts may require an admin to allowlist your OAuth client ID (Admin Console → Security → API controls → Manage Third-Party App Access)
  • The unverified Production state supports up to 100 Google accounts (lifetime) — plenty for personal use
  • Full OAuth verification requires a CASA security assessment ($500–$75k/year) and is not practical for a personal CLI tool