Google Calendar Manager
Manage Google Calendar events and view your upcoming agenda.
Installation
- Make sure Claude is on your device and in your terminal.
Skills load from
~/.claude/skills/when Claude Code starts up — so you need it on your machine first. If you don't have it yet, install it once with the command below, then runclaudein any terminal to verify.One-time setupnpm i -g @anthropic-ai/claude-codeAlready have it? Skip ahead.
- Paste into Claude Code or into your terminal.
This copies the whole skill folder into
~/.claude/skills/gws-calendar-googleworkspace/— the SKILL.md plus any scripts, reference docs, or templates the skill ships with. Safe default: works for every skill.Faster alternative (instruction-only skills)
Skips the clone and grabs only the SKILL.md file. Don't use this if the skill ships Python scripts, reference markdowns, or asset templates — they won't be downloaded and the skill will fail when it tries to load them.
Quick install (SKILL.md only)Sign up to copy - Restart Claude Code.
Quit and reopen Claude Code (or any other agent that loads from
~/.claude/skills/). New skills are picked up on startup. - Just ask Claude.
Skills auto-activate when your request matches the skill's description — no slash command needed. Trigger phrases live in the skill's own frontmatter; you can read them in the “What this skill does” section above.
Prefer to read the source first? Open on GitHub.
When Claude uses it
Google Calendar: Manage calendars and events.
What this skill does
calendar (v3)
PREREQUISITE: Read
../gws-shared/SKILL.mdfor auth, global flags, and security rules. If missing, rungws generate-skillsto create it.
gws calendar <resource> <method> [flags]
Helper Commands
| Command | Description |
|---|---|
+insert | create a new event |
+agenda | Show upcoming events across all calendars |
API Resources
acl
delete— Deletes an access control rule.get— Returns an access control rule.insert— Creates an access control rule.list— Returns the rules in the access control list for the calendar.patch— Updates an access control rule. This method supports patch semantics.update— Updates an access control rule.watch— Watch for changes to ACL resources.
calendarList
delete— Removes a calendar from the user's calendar list.get— Returns a calendar from the user's calendar list.insert— Inserts an existing calendar into the user's calendar list.list— Returns the calendars on the user's calendar list.patch— Updates an existing calendar on the user's calendar list. This method supports patch semantics.update— Updates an existing calendar on the user's calendar list.watch— Watch for changes to CalendarList resources.
calendars
clear— Clears a primary calendar. This operation deletes all events associated with the primary calendar of an account.delete— Deletes a secondary calendar. Use calendars.clear for clearing all events on primary calendars.get— Returns metadata for a calendar.insert— Creates a secondary calendar. The authenticated user for the request is made the data owner of the new calendar.
Note: We recommend to authenticate as the intended data owner of the calendar. You can use domain-wide delegation of authority to allow applications to act on behalf of a specific user. Don't use a service account for authentication. If you use a service account for authentication, the service account is the data owner, which can lead to unexpected behavior.
patch— Updates metadata for a calendar. This method supports patch semantics.update— Updates metadata for a calendar.
channels
stop— Stop watching resources through this channel
colors
get— Returns the color definitions for calendars and events.
events
delete— Deletes an event.get— Returns an event based on its Google Calendar ID. To retrieve an event using its iCalendar ID, call the events.list method using the iCalUID parameter.import— Imports an event. This operation is used to add a private copy of an existing event to a calendar. Only events with an eventType of default may be imported. Deprecated behavior: If a non-default event is imported, its type will be changed to default and any event-type-specific properties it may have will be dropped.insert— Creates an event.instances— Returns instances of the specified recurring event.list— Returns events on the specified calendar.move— Moves an event to another calendar, i.e. changes an event's organizer. Note that only default events can be moved; birthday, focusTime, fromGmail, outOfOffice and workingLocation events cannot be moved.patch— Updates an event. This method supports patch semantics.quickAdd— Creates an event based on a simple text string.update— Updates an event.watch— Watch for changes to Events resources.
freebusy
query— Returns free/busy information for a set of calendars.
settings
get— Returns a single user setting.list— Returns all user settings for the authenticated user.watch— Watch for changes to Settings resources.
Discovering Commands
Before calling any API method, inspect it:
# Browse resources and methods
gws calendar --help
# Inspect a method's required params, types, and defaults
gws schema calendar.<resource>.<method>
Use gws schema output to build your --params and --json flags.
Related skills
Meeting Intelligence
Prat011
Generate meeting prep materials and agendas by gathering Notion context and research.
Google Calendar Tool
nanocoai
Add Google Calendar integration to manage events and check availability.
Google Calendar Event Creator
googleworkspace
Create a new event in Google Calendar with title, start time, and end time.
Google Calendar Agenda
googleworkspace
Show your upcoming events across all Google calendars.