What problem does it solve? Google API operations (reading spreadsheets, uploading to Drive, running Apps Script, fetching Chat messages) fail when OAuth tokens are missing, expired, or lack required scopes. This Skill provides a shared authentication module that handles the full OAuth2 flow, token persistence, automatic refresh, and scope merging so other skills and scripts can call Google APIs without re-implementing auth. ## Core Features & Use Cases - Unified token management: Stores all scopes in a single persistent token file at ~/.config/gcloud/google_token.json, automatically merging newly requested scopes with existing ones and re-authenticating only when needed. - Two authentication flows: A local-server flow (default port 9123) for normal environments, and a --manual copy-paste flow that works in containers or environments where ports are unavailable. - Dual CLI and library usage: Run scripts/google_auth.py from the command line for interactive auth, or import get_credentials() from other skills to obtain auto-refreshed credentials programmatically. - Use Case: A spreadsheet-reading skill hits a 403 insufficient-scopes error. Run the auth script with the drive.file and spreadsheets scopes, approve in the browser once, and all subsequent Google API calls across skills reuse the merged token. ## Quick Start Ask the AI to authenticate Google API access with the drive and spreadsheets scopes using the google-auth skill's script, then approve the shown URL in your browser.