Back to list
krishagel

google-workspace

by krishagel

Personal AI infrastructure built on Claude Code

2🍴 0📅 Jan 24, 2026

SKILL.md


name: google-workspace description: Unified Google Workspace integration for managing email, calendar, files, and communication across multiple accounts triggers:

Gmail

  • "check email"
  • "read email"
  • "send email"
  • "search email"
  • "list emails"
  • "unread emails"
  • "inbox"

Calendar

  • "check calendar"
  • "schedule meeting"
  • "create event"
  • "what's on my calendar"
  • "free time"
  • "upcoming meetings"

Drive

  • "find file"
  • "search drive"
  • "list documents"
  • "open document"
  • "create document"

Docs/Sheets/Slides

  • "create doc"
  • "create spreadsheet"
  • "create presentation"
  • "edit document"

Tasks

  • "google tasks"
  • "task list"

Chat

  • "send chat"
  • "check chat" allowed-tools: Read, Bash version: 0.1.0

Google Workspace Skill

Overview

Unified Google Workspace integration for managing email, calendar, files, and communication across three accounts:

AliasPurposeEmail
psdWorkPSD district email
khPersonalPersonal Gmail
hrgBusinessConsulting & real estate

Account Selection

Explicit

  • "check my psd email"
  • "send email from hrg"
  • "kh calendar for tomorrow"

Inferred

Geoffrey will infer the appropriate account from context:

  • Work-related → psd
  • Personal matters → kh
  • Business/real estate → hrg

Available Operations

Gmail

ScriptDescriptionExample
list_messages.jsList inbox, unread, by label"show unread psd emails"
read_message.jsGet full message content"read that email"
send_message.jsCompose and send"send email to John about..."
search_messages.jsSearch with Gmail operators"find emails from Sarah last week"

Calendar

ScriptDescriptionExample
list_events.jsGet upcoming events"what's on my calendar today"
create_event.jsSchedule new events"schedule meeting tomorrow at 2pm"
update_event.jsModify existing events"move that meeting to 3pm"
search_events.jsFind by criteria"find meetings with Mike"

Drive

ScriptDescriptionExample
list_files.jsBrowse/search files"find budget spreadsheet"
read_file.jsGet file content"show me that document"
create_file.jsCreate new docs/sheets"create a new spreadsheet"
upload_file.jsUpload local file"upload this to drive"

Tasks

ScriptDescriptionExample
list_tasks.jsGet task lists"show my google tasks"
create_task.jsAdd new task"add task to google tasks"
complete_task.jsMark done"complete that task"

Chat

ScriptDescriptionExample
list_spaces.jsGet available spaces"list chat spaces"
send_message.jsPost to space"send message to team chat"
read_messages.jsGet chat history"show recent chat messages"

Usage Patterns

Running Scripts

All scripts use the token_manager for authentication:

const { getAuthClient } = require('./auth/token_manager');

async function main() {
  const account = process.argv[2] || 'psd';
  const auth = await getAuthClient(account);

  // Use auth with Google API
  const gmail = google.gmail({ version: 'v1', auth });
  // ...
}

Output Format

All scripts return JSON:

{
  "success": true,
  "account": "psd",
  "data": { ... },
  "metadata": {
    "timestamp": "2024-01-15T10:30:00Z",
    "count": 5
  }
}

Error Handling

{
  "error": "Token expired",
  "account": "psd",
  "action": "Run: node token_manager.js refresh psd"
}

Setup Required

Before using this skill:

  1. Complete Google Cloud Console setup (see auth/GOOGLE_CLOUD_SETUP.md)
  2. Add credentials to ~/Library/Mobile Documents/com~apple~CloudDocs/Geoffrey/secrets/.env
  3. Authenticate all three accounts
  4. For PSD account: allowlist OAuth app in Google Admin

Cross-Account Operations

Some operations work across accounts:

  • "Forward this to my personal email"
  • "Copy this file to my work drive"
  • "Add to both calendars"

Gmail Search Operators

Support standard Gmail search:

  • from: - sender
  • to: - recipient
  • subject: - subject line
  • has:attachment - with attachments
  • after: / before: - date range
  • is:unread - unread only
  • label: - by label

Example: "search psd email for from:boss@psd.org after:2024-01-01 has:attachment"

Notes

  • Access tokens expire after 1 hour (auto-refreshed)
  • Refresh tokens don't expire unless revoked
  • All API calls are rate-limited by Google
  • Keep API has limited availability (may not be enabled)

Score

Total Score

60/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon