calendar-crab

Google Calendar CLI — list, create, move, and delete events. Zero dependencies, just Node.js + Google OAuth.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "calendar-crab" with this command: npx skills add clawbob/calendar-crab

Calendar Crab

Google Calendar management via a single Node.js script. No npm install needed.

Prerequisites

  • Node.js 18+
  • Google Cloud project with Calendar API enabled
  • OAuth credentials + refresh token saved to ~/.openclaw/secrets/ (see Setup below)

Commands

List upcoming events

node calendar-crab.js list --days=7 --max=20

Create an event

node calendar-crab.js create \
  --title="Team Sync" \
  --date=2026-03-20 \
  --time=10:00 \
  --duration=30 \
  --location="Zoom" \
  --attendees="alice@co.com,bob@co.com" \
  --description="Weekly sync" \
  --tz="America/Los_Angeles"

Move an event

# By date + time
node calendar-crab.js move --date=2026-03-20 --from=10:00 --to=14:00

# By event ID
node calendar-crab.js move --id="EVENT_ID" --to="2026-03-20T14:00:00-07:00"

Delete an event

node calendar-crab.js delete --id="EVENT_ID"
node calendar-crab.js delete --date=2026-03-20 --time=10:00

Configuration

Env varDefaultDescription
CALENDAR_CRAB_SECRETS~/.openclaw/secretsDirectory containing OAuth + token JSON files
CALENDAR_CRAB_TZSystem localDefault timezone for events
CALENDAR_CRAB_CALENDARprimaryGoogle Calendar ID

Timezone can also be set per-command with --tz=America/Los_Angeles.

Execution rules

  1. Always list first to verify the target event exists and is unique.
  2. move and delete auto-notify all attendees (sendUpdates=all).
  3. On failure, the raw Google API error is returned for debugging.

Setup

  1. Go to Google Cloud Console and create a project.
  2. Enable the Google Calendar API.
  3. Create OAuth 2.0 credentials (Desktop app type).
  4. Save the credentials as ~/.openclaw/secrets/google-calendar-oauth.json:
    {
      "client_id": "YOUR_CLIENT_ID",
      "client_secret": "YOUR_CLIENT_SECRET"
    }
    
  5. Obtain a refresh token via the OAuth flow and save as ~/.openclaw/secrets/google-calendar-token.json:
    {
      "refresh_token": "YOUR_REFRESH_TOKEN",
      "access_token": "",
      "expires_in": 0,
      "obtained_at": ""
    }
    
    The script auto-refreshes the access token using the refresh token.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

Google Workspace CLI (gog)

Google Workspace CLI for Gmail, Calendar, Drive, Contacts, Sheets, and Docs.

Registry Source
8.8K11Profile unavailable
Automation

Google Suite Skill

Provides unified access to Gmail, Google Calendar, and Drive APIs for managing emails, calendar events, and files with OAuth2 authentication.

Registry SourceRecently Updated
5220Profile unavailable
Coding

office secretary

A digital administrative assistant for Microsoft 365 (Outlook & OneDrive).

Registry SourceRecently Updated
1.2K0Profile unavailable
Coding

Google Calendar (via gcalcli)

Google Calendar via gcalcli: today-only agenda by default, bounded meaning-first lookup via agenda scans, and fast create/delete with verification--optimized for low tool calls and minimal output.

Registry SourceRecently Updated
14.7K10Profile unavailable