recipe-create-events-from-sheet: a Google Workspace CLI skill for Claude
Makes Claude read event rows from a Google Sheet and create a Calendar event for each row.
- Installs
- 30.4K
- on skills.sh
- Stars
- 32K
- on GitHub
- Updated
- Oct 2026
- last repo commit
recipe-create-events-from-sheet is a 2-step recipe for Claude. It reads a range of event data from a sheet, then creates one calendar event per row with a title, start, end and attendees. The example reads Events!A2:D and creates a 9:00 "Team Standup" on 2026-01-20, so point Claude at your own sheet and columns.
It needs the gws command-line tool installed and signed in to your Google account, plus these skills, which the install box adds: gws-shared, gws-sheets, gws-calendar. Claude runs the gws commands in your terminal, so it works in an agent that can run shell commands. Ask for the job in plain words and give your own names, dates and addresses.
Good for
- People who plan events in a spreadsheet first
- Coordinators who bulk-create meetings or sessions
- Claude Code or Codex users who already run the gws command-line tool
Install recipe-create-events-from-sheet
Claude Code
- 1
Copy this prompt.
Install the recipe-create-events-from-sheet skill in Claude Code. Run this command: npm install -g @googleworkspace/cli Then check that it loaded and tell me how to use it.
- 2
Paste it into Claude Code. It shows the change and asks before running it.
Requires Node.js 18 or newer.
Read-only mode: Add --dry-run to a gws command to check the request without calling the API.
Run all three steps in order. The skills only drive the gws program, so it must be installed and signed in first. The skills CLI adds 4 skills: gws-shared, gws-sheets, gws-calendar, recipe-create-events-from-sheet. At sign-in, choose only the Google services this skill needs, for example gws auth login -s drive,gmail,sheets. The README warns that the full recommended scope list fails for unverified apps, and gives a manual OAuth route if gcloud is not available. The Claude app is not covered: the README does not document it, and gws has to run on your own computer.
From the project README. Source.
What's in the skill
When it loads
Read event data from a Google Sheets spreadsheet and create Google Calendar entries for each row.
Sections in SKILL.md
- Steps
Key facts
- License
- Apache-2.0
- Skill version
- 0.22.5
- Installs on skills.sh
- 30,395 as of 2026-11-02
- GitHub stars
- 32,038 as of 2026-11-02 (whole repo)
- Last repo commit
- 2026-10-30
- Files
- 1 file: SKILL.md
- skills.sh audits
- Gen Agent Trust Hub pass, Socket pass, Snyk warn
What it includes
Claude loads the listed skills before it starts
SKILL.md opens with a note to load gws-sheets and gws-calendar to run this recipe.
Prerequisite: load gws-sheets and gws-calendarReads the event rows from your sheet
The example range is Events!A2:D, which skips the header row.
Runs code ·
Step 1: Read event dataAdds one event per row with times and attendees
The example event has a title, start, end and two attendee addresses.
Runs code ·
Step 2: Create a calendar event for each row
From the official docs
Permissions
Medium risk
It creates one calendar event per row. Sign in with only the Google service this skill needs, and ask Claude to confirm each change before it runs.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only mode
Watch out for
It creates one calendar event per row
A long sheet means many events with attendees on them. Run it on a few rows first and check the calendar before doing the rest. github.com
Sign in with only the Google service you need
gws signs in with OAuth through a Google Cloud project, and your choice at gws auth login decides what it can reach. The README says the full recommended preset has 85+ scopes and fails for unverified apps. github.com
gws is not an official Google product
The README says so, and warns to expect breaking changes before v1.0. Its npm route downloads the gws binary from GitHub Releases. github.com
Technical details
| Turning on read-only | gws has a --dry-run flag that validates a request locally without calling the API. |
|---|---|
| Talks to | Google Workspace APIs, called by the gws program. Google Discovery Service, which gws reads at runtime |
| Sign-in and keys | gws signs in with Google OAuth. The README says credentials are encrypted at rest (AES-256-GCM), with the key in your OS keyring, or in ~/.config/gws/.encryption_key when the file backend is chosen. |
| Scopes |
|
Questions
What do I get from recipe-create-events-from-sheet?
One calendar event for each row in the range you point at, with the title, times and attendees from your columns. The sheet range, times and addresses in SKILL.md are examples.
How do I install recipe-create-events-from-sheet?
Use the install box at the top of this page. It adds recipe-create-events-from-sheet, gws-shared and gws-sheets and gws-calendar with the skills CLI. You also need the gws program installed and signed in to Google, which the first two steps in the box cover. The README lists Node.js 18+ for the npm install and a Google Cloud project for sign-in.
Do I need a Google Cloud project or an API key?
You need a Google Cloud project for sign-in. The README describes OAuth sign-in with a Google account, and it also supports a service account file or a pre-obtained access token. gws auth setup creates the project for you but needs the gcloud CLI. Without gcloud, the README has a manual OAuth route. In testing mode Google limits an unverified app to about 25 scopes, so pick individual services at sign-in.
Is recipe-create-events-from-sheet safe to run?
Use it with care. It creates one calendar event per row. The gws-shared skill tells the agent to confirm write and delete commands with you and to prefer --dry-run for destructive operations. The README says gws is not an officially supported Google product and that breaking changes are expected before v1.0. Watch the first run yourself.
Does recipe-create-events-from-sheet work in the Claude app or Codex?
The install box has Claude Code and Codex tabs that use the skills CLI. The README does not document the Claude app, and the skill only drives a gws program installed on your own computer. The README also documents OpenClaw and a Gemini CLI extension for the repo's skills.
Why does my sheet range fail in zsh?
The gws-shared skill warns that zsh treats the ! in ranges like Sheet1!A1 as history expansion. It says to wrap the range in double quotes, as this recipe does.
Information
updated Nov 2, 2026
- Repository
- googleworkspace/cli
- Folder
skills/recipe-create-events-from-sheet
Sources
Docs, issue trackers and discussions this page is built from.
Show all 5Hide
- googleworkspace/cli README · github.com
- gws-shared SKILL.md · github.com
- recipe-create-events-from-sheet SKILL.md · github.com
- gws-sheets SKILL.md · github.com
- gws-calendar SKILL.md · github.com