Install any skill in seconds. Free to start, no credit card required.
Get Started Free →vellum-ai/google-calendar
View, create, and manage Google Calendar events and check availability
5 of 23 test cases passed with the skill.
Tokens, turns and time describe resource use, not a dollar price.
Lift withheld: 7 comparable cases; this report requires 8.
One of 3 test cases the skill fixed. Same model, same prompt, with and without the skill.
When running the calendar list command for [email protected], the CLI returned 'invalid_grant: Token has been expired or revoked'. What immediate command should be executed to recover?
| Checked | Without skill | With skill |
|---|---|---|
| Runs assistant oauth ping google to attempt silent reconnection | Missed | Passed |
The instructions your model reads when the skill loads.
All operations use a single CLI script that returns JSON:
{ "ok": true, "data": ... }{ "ok": false, "error": "..." }| Script | Subcommand | Description |
|---|---|---|
scripts/gcal.ts | list | List events within a date range |
scripts/gcal.ts | get | Get full details of a specific event |
scripts/gcal.ts | create | Create a new event (requires user confirmation) |
scripts/gcal.ts | availability | Check free/busy times across calendars |
scripts/gcal.ts | rsvp | Respond to an event invitation (accepted, declined, tentative) |
# List events in a date range
bun scripts/gcal.ts list --time-min "2024-01-15T00:00:00Z" --time-max "2024-01-22T00:00:00Z"
# Get full details of a specific event
bun scripts/gcal.ts get --event-id "abc123"
# Create a new event (gates on assistant ui confirm)
bun scripts/gcal.ts create --summary "Team Meeting" --start "2024-01-15T09:00:00-05:00" --end "2024-01-15T10:00:00-05:00" --timezone "America/New_York"
# Check availability for a day
bun scripts/gcal.ts availability --time-min "2024-01-15T00:00:00Z" --time-max "2024-01-15T23:59:59Z"
# RSVP to an event invitation
bun scripts/gcal.ts rsvp --event-id "abc123" --response accepted
# Target a specific connected account (see "Multiple Accounts" below)
bun scripts/gcal.ts list --time-min "2024-01-15T00:00:00Z" --time-max "2024-01-22T00:00:00Z" --account "[email protected]"
Every subcommand accepts --account <email> to select which connected Google account the request runs against. When omitted, the request runs against a single account chosen automatically — safe only when exactly one Google account is connected. Each JSON envelope echoes the queried account in an account field when it is reported by the OAuth layer, so an empty result is self-describing (e.g. No events found in the specified time range for [email protected].).
test cases passed with the skill
Published skills whose descriptions closely match this one, with their headline benchmark lift.
More skills from the same source and nearby in the registry, with their headline benchmark lift.