google-workspace

Manage Gmail, Calendar, Drive, Sheets, and Docs through OAuth-authenticated CLI commands.

Updated May 29, 2026
One-click install
npx skills add https://github.com/m4an5you6/aspera-agent --skill google-workspace-m4an5you6
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: google-workspace
Source: https://github.com/m4an5you6/aspera-agent/tree/main/skills/productivity/google-workspace
Command: npx skills add https://github.com/m4an5you6/aspera-agent --skill google-workspace-m4an5you6

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires google-api-python-client, google-auth-oauthlib, google-auth-httplib2, and includes scripts (resource) and references (resource) components.

What problem does it solve? It gives an AI agent authenticated access to Google Workspace services — Gmail, Calendar, Drive, Contacts, Sheets, and Docs — without requiring manual API integration, handling OAuth2 setup, token refresh, and JSON output automatically. ## Core Features & Use Cases - Gmail Operations: Search with Gmail query syntax, read full messages, send plain or HTML email, reply in threads, and manage labels. - Calendar, Drive, Sheets & Docs: List and create calendar events, upload/download/share Drive files, read and write spreadsheet ranges, and create or append to Docs. - Non-Interactive OAuth Setup: A step-by-step setup script works over CLI, Telegram, or Discord, with automatic token refresh and scope validation. - Use Case: Ask the agent to find unread emails from your boss this week, summarize them, create a follow-up calendar event, and save the summary to a Google Doc — all in one conversation. ## Quick Start Ask the agent to check Google Workspace authentication and then search your Gmail for unread messages from the last day.

Frequently Asked Questions about google-workspace

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I search Gmail from the command line?▼

Run the google_api.py script with the gmail search subcommand and a Gmail query string, such as "is:unread newer_than:1d". Results return as a JSON array with id, from, subject, date, and snippet fields.

How do I set up Google Workspace API access with OAuth2?▼

Create a Desktop OAuth client in Google Cloud Console, enable the Gmail, Calendar, Drive, Sheets, Docs, and People APIs, then run setup.py with --client-secret, --auth-url, and --auth-code. The token is stored at ~/.gpucloud/google_token.json and refreshes automatically.

Can I use Gmail with just an app password instead of OAuth?▼

Yes, for email-only needs the himalaya skill works with a Gmail App Password and takes about two minutes to set up. OAuth with this skill is only needed when you also require Calendar, Drive, Sheets, or Docs access.

Why does Google OAuth fail with Error 403 access_denied?▼

Error 403 access_denied means your Google account is not registered as a test user for the OAuth consent screen. Add your account under Audience → Test users in Google Cloud Console, then retry the authorization URL.

Does the gws CLI need a separate login from this skill?▼

No, when gws is installed the google_api.py wrapper points it at the same ~/.gpucloud/google_token.json credentials file. You do not need to run a separate gws auth login flow.

What happens when the Google token is missing scopes?▼

The setup script reports AUTHENTICATED (partial) and lists the missing scopes. New write capabilities like Drive delete or Docs create require re-authorization: run setup.py --revoke, then repeat the auth-url and auth-code steps.