google-workspace
This skill should be used when the user asks to "check my email", "read Gmail", "list calendar events", "check my schedule", "list Drive files", "upload to…
Skill by ar90n
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/ar90n-google-workspace
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: documents, spreadsheets, 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-workspace
What's inside
- Skill name
google-workspace- Description
- This skill should be used when the user asks to "check my email", "read Gmail", "list calendar events", "check my schedule", "list Drive files", "upload to Drive", "read spreadsheet", "create a Google Doc", "send an email", or needs to interact with any Google Workspace service (Gmail, Calendar, Drive, Sheets, Docs, Chat).
- License
- MIT
- Instructions
- 109 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Google Workspace
Interact with Google Workspace services via the `gws` CLI.
Requires authentication: run `bin/claude-inbox-setup gws-login` first.
## Command Syntax
```bash
gws <service> <method> --params '{"key":"value"}'
```
Output is JSON. Parse with `jq`.
## Gmail
```bash
# List recent messages
gws gmail users.messages.list --params '{"userId":"me","maxResults":10}'
# Get a specific message (full body)
gws gmail users.messages.get --params '{"userId":"me","id":"MSG_ID","format":"full"}'
# Search messages
gws gmail users.messages.list --params '{"userId":"me","q":"from:someone@example.com","maxResults":5}'
# List labels
gws gmail users.labels.list --params '{"userId":"me"}'
```
### Sending Email
To send email, construct a base64url-encoded RFC 2822 message:
```bash
raw=$(printf 'To: recipient@example.com\r\nSubject: Hello\r\nContent-Type: text/plain; charset=utf-8\r\n\r\nMessage body here' | base64 -w0 | tr '+/' '-_' | tr -d '=')
gws gmail users.messages.send --params "{\"userId\":\"me\",\"requestBody\":{\"raw\":\"$raw\"}}"
```
## Calendar
```bash
# List upcoming events
gws calendar events.list --params '{"calendarId":"primary","timeMin":"2026-03-05T00:00:00Z","maxResults":10,"singleEvents":true,"orderBy":"startTime"}'
# Get a specific event
gws calendar events.get --params '{"calendarId":"primary","eventId":"EVENT_ID"}'
# Create an event
gws calendar events.insert --params '{"calendarId":"primary","requestBody":{"summary":"Meeting","start":{"dateTime":"2026-03-06T10:00:00+09:00"},"end":{"dateTime":"2026-03-06T11:00:00+09:00"}}}'
# List calendars
gws calendar calendarList.list
```
## Drive
```bash
# List files
gws drive files.list --params '{"pageSize":10,"q":"trashed=false","fields":"files(id,name,mimeType,modifiedTime)"}'
# Search files by name
gws drive files.list --params '{"q":"name contains '\''report'\'' and trashed=false","pageSize":10}'
# Get file metadata
gws drive files.get --params '{"fileId":"FILE_ID","fields":"id,name,mimeType,size,modifiedTime,webViewLink"}'
# Download file content (text-based)
gws drive files.export --params '{"fileId":"FILE_ID","mimeType":"text/plain"}'
```
## Sheets
```bash
# Read cell range
gws sheets spreadsheets.values.get --params '{"spreadsheetId":"SHEET_ID","range":"Sheet1!A1:D10"}'
# Write to cells
gws sheets spreadsheets.values.update --params '{"spreadsheetId":"SHEET_ID","range":"Sheet1!A1","valueInputOption":"USER_ENTERED","requestBody":{"values":[["Header1","Header2"],["val1","val2"]]}}'
# Append rows
gws sheets spreadsheets.values.append --params '{"spreadsheetId":"SHEET_ID","range":"Sheet1!A1","valueInputOption":"USER_ENTERED","requestBody":{"values":[["new1","new2"]]}}'
```
## Docs
```bash
# Get document content
gws docs documents.get --params '{"documentId":"DOC_ID"}'
# Create a new document
gws docs documents.create --params '{"requestBody":{"title":"New Document"}}'
```
## Workflow
1. Run the appropriate `gws` command
2. Parse the JSON output with `jq`
3. Present results to the user in a readable format
4. For multi-step operations (e.g., "summarize my latest emails"), chain commands
## Error Handling
- **Not authenticated**: Report that Google Workspace is not configured and suggest running `bin/claude-inbox-setup gws-login`
- **API error**: Report the error message from the response
- **Permission denied**: The OAuth scope may not cover this API. Suggest re-running `gws auth login` with the needed scope
- **Rate limit**: Wait and retry onceFrom ar90n/claude-inbox, MIT.
More from ar90n/claude-inbox
- 0.385score
browser-use
ar90n
This skill should be used when the user asks to "browse a website", "fill out a form", "click a button", "automate browser actions", "log into a site"…
SkillDFreshness: DClaude Code +9 - 0.385score
switchbot
ar90n
This skill should be used when the user asks to "turn on the light", "turn off the AC", "open the curtain", "lock the door", "check room temperature", "list…
SkillDFreshness: DClaude Code +9 - 0.385score
url-watch
ar90n
This skill should be used when the user asks to "watch a URL", "monitor a webpage", "notify me when something changes", "track releases", "watch for updates"…
SkillDFreshness: DClaude Code +9 - 0.385score
web-collect
ar90n
This skill should be used when the user asks to "collect tech news", "get today's HN top stories", "fetch GitHub trending", "gather daily digest", or needs…
SkillDFreshness: DClaude Code +9 - 0.385score
manage-inbox
ar90n
This skill should be used when the user asks to "show task status", "list pending/failed tasks", "cancel a task", "retry a failed task", "list cron jobs"…
SkillDFreshness: DClaude Code +9 - 0.385score
notebooklm
ar90n
This skill should be used when the user asks to "create a podcast", "generate audio overview", "make a NotebookLM episode", or needs to convert text/articles…
SkillDFreshness: DClaude Code +9 - 0.385score
schedule-task
ar90n
This skill should be used when the user asks to "schedule a task", "set up a cron job", "run something every day/hour/week", "create a recurring task", or…
SkillDFreshness: DClaude Code +9 - 0.382score
create-task
ar90n
This skill should be used when the agent needs to "submit a follow-up task", "queue a new task", "chain another step", or when the current task's result…
SkillDFreshness: DClaude Code +9 - 0.382score
notify-slack
ar90n
This skill should be used when the agent needs to "send a message on Slack", "notify via Slack", or "post to Slack channel".
SkillDFreshness: DClaude Code +9 - 0.382score
notify-telegram
ar90n
This skill should be used when the agent needs to "send a message on Telegram", "notify me", "share results via Telegram", "reply to the user on Telegram".
SkillDFreshness: DClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Mar 5, 2026 (7 months ago)
- Last release
- Mar 11, 2026 (7 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/ar90n/claude-inbox
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from ar90n
- 0.385score
browser-use
ar90n
This skill should be used when the user asks to "browse a website", "fill out a form", "click a button", "automate browser actions", "log into a site"…
SkillDFreshness: DClaude Code +9 - 0.385score
switchbot
ar90n
This skill should be used when the user asks to "turn on the light", "turn off the AC", "open the curtain", "lock the door", "check room temperature", "list…
SkillDFreshness: DClaude Code +9 - 0.385score
url-watch
ar90n
This skill should be used when the user asks to "watch a URL", "monitor a webpage", "notify me when something changes", "track releases", "watch for updates"…
SkillDFreshness: DClaude Code +9 - 0.385score
web-collect
ar90n
This skill should be used when the user asks to "collect tech news", "get today's HN top stories", "fetch GitHub trending", "gather daily digest", or needs…
SkillDFreshness: DClaude Code +9 - 0.385score
manage-inbox
ar90n
This skill should be used when the user asks to "show task status", "list pending/failed tasks", "cancel a task", "retry a failed task", "list cron jobs"…
SkillDFreshness: DClaude Code +9 - 0.385score
notebooklm
ar90n
This skill should be used when the user asks to "create a podcast", "generate audio overview", "make a NotebookLM episode", or needs to convert text/articles…
SkillDFreshness: DClaude Code +9
Cite this page
google-workspace skill. Agent Mart. https://agentmart.dev/skills/ar90n-google-workspace (last updated 2026-10-24)