Google OAuth
Authenticate against the user's own Google account (Gmail, Drive, Calendar, Sheets, etc.) via the installed-application OAuth 2.0 flow and make authenticated…
Skill by lordmacu
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/lordmacu-google-oauth
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: spreadsheets, security, productivity
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/google-oauth
What's inside
- Skill name
Google OAuth- Description
- Authenticate against the user's own Google account (Gmail, Drive, Calendar, Sheets, etc.) via the installed-application OAuth 2.0 flow and make authenticated HTTP calls.
- License
- Apache-2.0
- Instructions
- 175 lines in SKILL.md · view on GitHub
Agent Skills spec issues
- name: only lowercase letters, digits and single hyphens allowed
- name: "Google OAuth" does not match folder "google-auth"
Files (1)
- SKILL.md
SKILL.md (first lines)
# Google OAuth
Drives the agent's access to the user's Google services — Gmail,
Drive, Calendar, Sheets, Photos, YouTube Data, Tasks, and every other
`*.googleapis.com` endpoint. Backed by 4 tools (`google_auth_start`,
`google_auth_status`, `google_call`, `google_auth_revoke`) that wrap a
real OAuth 2.0 installed-application flow with a loopback callback and
persistent refresh tokens.
## Use when
- "Read my last 10 Gmail emails"
- "Create a Calendar event for tomorrow at 3pm"
- "Find the 'Q4 budget' document in my Drive"
- "Add a row to my expenses Sheet"
- "Delete the videos I uploaded to YouTube this month"
## Do not use when
- **Google apps that do not belong to this user** (an admin's Drive,
someone else's Gmail) — each agent can only access the account that
granted consent.
- **Free actions that do not require account auth** (public search,
no-account maps, etc.) — use dedicated tools (`ext_wikipedia_search`,
etc.) that do not consume Google API quota.
- **Gemini / AI Studio** — that path does not use OAuth; it uses
direct API-key auth (`GEMINI_API_KEY`).
## Canonical workflow
First turn where the user asks for a Google action:
```
1. google_auth_status()
→ { authenticated: false, reason: "no tokens on file" }
2. google_auth_start()
→ { ok: true, url: "https://accounts.google.com/o/oauth2/v2/auth?...",
redirect_uri: "http://127.0.0.1:8765/callback",
instructions: "Open this URL..." }
3. Send this to the user in chat:
"To let me read your Gmail, open this link and approve permissions:
<url>. If you're connected through a remote server, use an SSH
tunnel: `ssh -L 8765:127.0.0.1:8765 <host>`. Tell me when you're done."
4. Wait for the user's next message. DO NOT retry tools meanwhile.
5. When the user replies "done" (or similar):
google_auth_status()
→ { authenticated: true, expires_in_secs: 3589, has_refresh: true,
scopes: [...] }
6. Now run `google_call(...)` for the user's requested task.
```
All following calls (including future sessions days later) only need
direct **`google_call`**. The persisted refresh token automatically
renews access tokens — the user does not see consent again unless they
revoke access.
## Tool reference
| Tool | When to call |
|---|---|
| `google_auth_status` | Before the first Google operation in each session. Fast diagnostic — no network calls. |
| `google_auth_start` | Only if `status.authenticated == false`. Requires human action (click + browser consent). No retries/polling by the LLM — wait for the next user message. |
| `google_call` | The workhorse. 99% of your calls. |
| `google_auth_revoke` | Only if the user explicitly asks to disconnect Google. Invalidates the token in Google. |
## `google_call` — API examples
### Gmail
```json
{ "method": "GET",
"url": "https://gmail.googleapis.com/gmail/v1/users/me/messages?maxResults=10" }
{ "method": "GET",
"url": "https://gmail.googleapis.com/gmail/v1/users/me/messages/{id}?format=full" }
{ "method": "POST",
"url": "https://gmail.googleapis.com/gmail/v1/users/me/messages/send",
"body": { "raw": "<base64-encoded RFC 2822 message>" } }
```
Required scope: `gmail.readonly` (read) or `gmail.modify` (send/trash).
### Calendar
```json
{ "method": "GET",
"url": "https://www.googleapis.com/calendar/v3/calendars/primary/events?timeMin=2026-04-24T00:00:00Z" }
{ "method": "POST",
"url": "https://www.googleapis.com/calendar/v3/calendars/primary/events",
"body": {
"summary": "Dentist",
"start": {"dateTime": "2026-04-25T15:00:00-05:00"},
"end": {"dateTime": "2026-04-25T16:00:00-05:00"}
} }
```
Scope: `calendar.readonly` or `calendar.events`.
### Drive
```json
{ "method": "GET",
"url": "https://www.googleapis.com/drive/v3/files?pageSize=50&q=name contains 'budget'" }
{ "method": "GET",
"url": "https://www.googleapis.com/drive/v3/files/{fileId}?fields=*" }
```
Scope: `drive.readonly` or `drive`.
### SheetsFrom lordmacu/nexo-rs, Apache-2.0.
More from lordmacu/nexo-rs
- 0.522score
Cloudflare
lordmacu
Manage Cloudflare zones, DNS records, and cache via API token.
SkillCFreshness: C★ 8Claude Code +9 - 0.522score
Google
lordmacu
Gmail, Calendar, Tasks, Drive, Contacts (People), and Photos via Google APIs with OAuth refresh tokens.
SkillCFreshness: C★ 8Claude Code +9 - 0.522score
OpenStreetMap
lordmacu
Forward and reverse geocoding via Nominatim (no API key, ~1 req/sec).
SkillCFreshness: C★ 8Claude Code +9 - 0.522score
DNS Tools
lordmacu
Resolve DNS records (A, AAAA, MX, TXT, CNAME, NS, SOA, SRV, CAA), PTR reverse, and WHOIS.
SkillCFreshness: C★ 8Claude Code +9 - 0.522score
Fetch URL
lordmacu
HTTP GET/POST utility with size cap, SSRF guard, retries, and circuit breaker.
SkillCFreshness: C★ 8Claude Code +9 - 0.522score
1Password
lordmacu
Read 1Password secrets via the `op` CLI with a service-account token.
SkillCFreshness: C★ 8Claude Code +9 - 0.522score
OpenAI Whisper
lordmacu
Transcribe audio files (≤25 MB) to text via OpenAI-compatible Whisper API.
SkillCFreshness: C★ 8Claude Code +9 - 0.522score
PDF Extract
lordmacu
Extract plain UTF-8 text from local PDF files; pipeline input for summarize.
SkillCFreshness: C★ 8Claude Code +9 - 0.522score
Remember
lordmacu
Memory hygiene workflow to classify, deduplicate, and promote durable knowledge across local memory layers.
SkillCFreshness: C★ 8Claude Code +9 - 0.522score
Browser
lordmacu
Drive a managed Chrome session via CDP.
SkillCFreshness: C★ 8Claude Code +9 - 0.522score
Endpoint Check
lordmacu
HTTP probe (status + latency) and TLS certificate inspection (expiry, issuer, SANs).
SkillCFreshness: C★ 8Claude Code +9 - 0.522score
GitHub
lordmacu
Read pull requests, issues and CI checks via GitHub REST API.
SkillCFreshness: C★ 8Claude Code +9
Signals
- Stars
- 8
- Forks
- 4
- Open issues
- 0
- Last commit (this folder)
- Apr 25, 2026 (6 months ago)
- Last release
- May 11, 2026 (5 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- Repository
- github.com/lordmacu/nexo-rs
- Website
- lordmacu.github.io/nexo-rs/
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from lordmacu
- 0.522score
Google
lordmacu
Gmail, Calendar, Tasks, Drive, Contacts (People), and Photos via Google APIs with OAuth refresh tokens.
SkillCFreshness: C★ 8Claude Code +9 - 0.522score
Cloudflare
lordmacu
Manage Cloudflare zones, DNS records, and cache via API token.
SkillCFreshness: C★ 8Claude Code +9 - 0.522score
DNS Tools
lordmacu
Resolve DNS records (A, AAAA, MX, TXT, CNAME, NS, SOA, SRV, CAA), PTR reverse, and WHOIS.
SkillCFreshness: C★ 8Claude Code +9 - 0.522score
Fetch URL
lordmacu
HTTP GET/POST utility with size cap, SSRF guard, retries, and circuit breaker.
SkillCFreshness: C★ 8Claude Code +9 - 0.522score
OpenStreetMap
lordmacu
Forward and reverse geocoding via Nominatim (no API key, ~1 req/sec).
SkillCFreshness: C★ 8Claude Code +9 - 0.522score
Browser
lordmacu
Drive a managed Chrome session via CDP.
SkillCFreshness: C★ 8Claude Code +9
Cite this page
Google OAuth skill. Agent Mart. https://agentmart.dev/skills/lordmacu-google-oauth (last updated 2026-10-24)