sundial-org/awesome-openclaw-skills

google-calendar

Interact with Google Calendar via the Google Calendar API – list upcoming events, create new events, update or delete them. Use this skill when you need programmatic access to your calendar from OpenClaw.

First seen Mar 9, 2026

Installation

$ npx skills add sundial-org/awesome-openclaw-skills --skill google-calendar

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from sundial-org/awesome-openclaw-skills · top by installs.

npx skills add sundial-org/awesome-openclaw-skills

Browse all from sundial-org/awesome-openclaw-skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 660
License LICENSE
Default branch main
Open issues 12
Status Active

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 3,025 B
  • docs SUMMARY.md 229 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 10 installs

SKILL.md

Google Calendar Skill

Overview

This skill provides a thin wrapper around the Google Calendar REST API. It lets you:

  • list upcoming events (optionally filtered by time range or query)
  • add a new event with title, start/end time, description, location, and attendees
  • update an existing event by its ID
  • delete an event by its ID

The skill is implemented in Python (scripts/google_calendar.py). It expects the following environment variables to be set (you can store them securely with openclaw secret set):

GOOGLE_CLIENT_ID=…
GOOGLE_CLIENT_SECRET=…
GOOGLE_REFRESH_TOKEN=…   # obtained after OAuth consent
GOOGLE_CALENDAR_ID=primary   # or the ID of a specific calendar

The first time you run the skill you may need to perform an OAuth flow to obtain a refresh token – see the Setup section below.

Commands

google-calendar list [--from <ISO> --to <ISO> --max <N>]
google-calendar add   --title <title> [--start <ISO> --end <ISO>]
                     [--desc <description> --location <loc> --attendees <email1,email2>]
google-calendar update --event-id <id> [--title <title> ... other fields]
google-calendar delete --event-id <id>

All commands return a JSON payload printed to stdout. Errors are printed to stderr and cause a non‑zero exit code.

Setup

  1. Create a Google Cloud project and enable the Google Calendar API.
  2. Create OAuth credentials (type Desktop app). Note the clientid and clientsecret.
  3. Run the helper script to obtain a refresh token:

``bash GOOGLECLIENTID=… GOOGLECLIENTSECRET=… python3 -m googlecalendar.auth ` It will open a browser (or print a URL you can open elsewhere) and ask you to grant access. After you approve, copy the refreshtoken` it prints.

  1. Store the credentials securely:

``bash openclaw secret set GOOGLECLIENTID <value> openclaw secret set GOOGLECLIENTSECRET <value> openclaw secret set GOOGLEREFRESHTOKEN <value> openclaw secret set GOOGLECALENDARID primary # optional ``

  1. Install the required Python packages (once):

``bash pip install --user google-auth google-auth-oauthlib google-api-python-client ``

How it works (brief)

The script loads the credentials from the environment, refreshes the access token using the refresh token, builds a service = build('calendar', 'v3', credentials=creds), and then calls the appropriate API method.

References


Note: This skill does not require a GUI; it works entirely via HTTP calls, so it is suitable for headless servers.