← Back to Skills Marketplace
bilalmohamed187-cpu

gcal-pro - Google Calendar

cross-platform ✓ Security Clean
1607
Downloads
1
Stars
1
Active Installs
1
Versions
Install in OpenClaw
/install gcal-pro-calendar
Description
Google Calendar integration for viewing, creating, and managing calendar events. Use when the user asks about their schedule, wants to add/edit/delete events, check availability, or needs a morning brief. Supports natural language like "What's on my calendar tomorrow?" or "Schedule lunch with Alex at noon Friday." Free tier provides read access; Pro tier ($12) adds create/edit/delete and morning briefs.
README (SKILL.md)

gcal-pro

Manage Google Calendar through natural conversation.

Quick Reference

Action Command Tier
View today python scripts/gcal_core.py today Free
View tomorrow python scripts/gcal_core.py tomorrow Free
View week python scripts/gcal_core.py week Free
Search events python scripts/gcal_core.py search -q "meeting" Free
List calendars python scripts/gcal_core.py calendars Free
Find free time python scripts/gcal_core.py free Free
Quick add python scripts/gcal_core.py quick -q "Lunch Friday noon" Pro
Delete event python scripts/gcal_core.py delete --id EVENT_ID -y Pro
Morning brief python scripts/gcal_core.py brief Pro

Setup

First-time setup required:

  1. User must create Google Cloud project and OAuth credentials
  2. Save client_secret.json to ~/.config/gcal-pro/
  3. Run authentication:
    python scripts/gcal_auth.py auth
    
  4. Browser opens → user grants calendar access → done

Check auth status:

python scripts/gcal_auth.py status

Tiers

Free Tier

  • View events (today, tomorrow, week, month)
  • Search events
  • List calendars
  • Find free time slots

Pro Tier ($12 one-time)

  • Everything in Free, plus:
  • Create events
  • Quick add (natural language)
  • Update/reschedule events
  • Delete events
  • Morning brief via cron

Usage Patterns

Viewing Schedule

When user asks "What's on my calendar?" or "What do I have today?":

cd /path/to/gcal-pro
python scripts/gcal_core.py today

For specific ranges:

  • "tomorrow" → python scripts/gcal_core.py tomorrow
  • "this week" → python scripts/gcal_core.py week
  • "meetings with Alex" → python scripts/gcal_core.py search -q "Alex"

Creating Events (Pro)

When user says "Add X to my calendar" or "Schedule Y":

Option 1: Quick add (natural language)

python scripts/gcal_core.py quick -q "Lunch with Alex Friday at noon"

Option 2: Structured create (via Python)

from scripts.gcal_core import create_event, parse_datetime

create_event(
    summary="Lunch with Alex",
    start=parse_datetime("Friday noon"),
    location="Cafe Roma",
    confirmed=True  # Set False to show confirmation prompt
)

Modifying Events (Pro)

⚠️ CONFIRMATION REQUIRED for destructive actions!

Before deleting or significantly modifying an event, ALWAYS confirm with the user:

  1. Show event details
  2. Ask "Should I delete/reschedule this?"
  3. Only proceed with confirmed=True or -y flag after user confirms

Delete:

# First, find the event
python scripts/gcal_core.py search -q "dentist"
# Shows event ID

# Then delete (with user confirmation)
python scripts/gcal_core.py delete --id abc123xyz -y

Finding Free Time

When user asks "When am I free?" or "Find time for a 1-hour meeting":

python scripts/gcal_core.py free

Morning Brief (Pro + Cron)

Set up via Clawdbot cron to send daily agenda:

from scripts.gcal_core import generate_morning_brief
print(generate_morning_brief())

Cron setup example:

  • Schedule: 8:00 AM daily
  • Action: Run python scripts/gcal_core.py brief
  • Delivery: Send output to user's messaging channel

Error Handling

Error Cause Solution
"client_secret.json not found" Setup incomplete Complete Google Cloud setup
"Token refresh failed" Expired/revoked Run python scripts/gcal_auth.py auth --force
"requires Pro tier" Free user attempting write Prompt upgrade or explain limitation
"Event not found" Invalid event ID Search for correct event first

Timezone Handling

  • All times are interpreted in user's local timezone (default: America/New_York)
  • When user specifies timezone (e.g., "2 PM EST"), honor it
  • Display times in user's local timezone
  • Store in ISO 8601 format with timezone

Response Formatting

For event lists, use this format:

📅 **Monday, January 27**
  • 9:00 AM — Team standup
  • 12:00 PM — Lunch with Alex 📍 Cafe Roma
  • 3:00 PM — Client call

📅 **Tuesday, January 28**
  • 10:00 AM — Dentist appointment 📍 123 Main St

For confirmations:

✓ Event created: "Lunch with Alex"
  📅 Friday, Jan 31 at 12:00 PM
  📍 Cafe Roma

For morning brief:

☀️ Good morning! Here's your day:
📆 Monday, January 27, 2026

You have 3 events today:
  • 9:00 AM — Team standup
  • 12:00 PM — Lunch with Alex
  • 3:00 PM — Client call

👀 Tomorrow: 2 events

File Locations

~/.config/gcal-pro/
├── client_secret.json   # OAuth app credentials (user provides)
├── token.json           # User's access token (auto-generated)
└── license.json         # Pro license (if purchased)

Integration with Clawdbot

This skill works with:

  • Cron: Schedule morning briefs
  • Memory: Store calendar preferences
  • Messaging: Deliver briefs via Telegram/WhatsApp/etc.

Upgrade Prompt

When a Free user attempts a Pro action, respond:

⚠️ Creating events requires gcal-pro Pro ($12 one-time).

Pro includes: Create, edit, delete events + morning briefs.

👉 Upgrade: [gumroad-link]

For now, I can show you your schedule (free) — want to see today's events?

Usage Guidance
This package appears to do what it claims: manage your Google Calendar after you run the OAuth flow. Before installing: (1) review the code yourself or from a trusted source because the registry source is "unknown"; (2) keep your client_secret.json and token.json private — the skill stores them at ~/.config/gcal-pro; (3) be aware the Pro license check is local (no Gumroad verification) so purchases may be enforced client-side only — verify the payment/activation flow before paying; (4) the revoke command requires the requests package but requirements.txt doesn't list it (you may need to pip install requests); and (5) if you will integrate this with a messaging service or cron, confirm that those integrations require their own credentials and the skill will not magically obtain them. If you don't trust the unknown source, run the scripts in a controlled environment or inspect/modify them before authenticating with your Google account.
Capability Analysis
Type: OpenClaw Skill Name: gcal-pro-calendar Version: 1.0.0 The OpenClaw AgentSkills bundle for 'gcal-pro' is classified as benign. The skill's code (`gcal_auth.py`, `gcal_core.py`, `gcal_license.py`) and documentation (`SKILL.md`, `README.md`, `docs/GOOGLE_CLOUD_SETUP.md`) consistently describe and implement a Google Calendar integration. There is no evidence of data exfiltration, malicious execution (e.g., `curl|bash`, `eval`/`exec` of untrusted input), persistence mechanisms beyond a user-configured cron for morning briefs, or prompt injection attempts against the agent. Sensitive files like `client_secret.json` and `token.json` are handled securely in `~/.config/gcal-pro/` with appropriate file permissions (`0o600`). All network calls are to legitimate Google OAuth and Calendar API endpoints, and requested scopes are appropriate for calendar management.
Capability Assessment
Purpose & Capability
The name/description (Google Calendar read/write, morning brief, cron) match the included scripts and docs. The skill asks the user to supply Google OAuth client_secret.json and stores tokens in ~/.config/gcal-pro — which is expected for this purpose. The Pro license checks are local to the skill (no external license service), which fits the described one-time $12 model but is an implementation choice rather than an access inconsistency.
Instruction Scope
SKILL.md instructs only calendar-related operations (list, search, create, update, delete, free/busy, morning brief) and local setup steps. It references integration with Clawdbot messaging/cron but does not instruct reading unrelated system files or network exfiltration. The upgrade prompt points to a placeholder gumroad link and the license activation is performed locally (no Gumroad API calls).
Install Mechanism
This is instruction-only (no remote download/install spec). Dependencies are declared in requirements.txt and are standard Google API client packages on PyPI. No archive downloads or external code hosts are used by the install spec.
Credentials
The skill requests no environment variables and only uses user-supplied OAuth client_secret.json and local token/license files under ~/.config/gcal-pro — appropriate for calendar access. Two practical notes: (1) revoke_credentials uses the requests library but 'requests' is not listed in requirements.txt (runtime error risk), and (2) license activation is a local format check (no server-side verification), so 'Pro' status can be faked by writing license.json locally.
Persistence & Privilege
The skill stores token.json and license.json under its own config directory (~/.config/gcal-pro). It does not request always:true or attempt to modify other skills' configs. Storing OAuth tokens locally is expected for this functionality; the skill sets file permissions where possible.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install gcal-pro-calendar
  3. After installation, invoke the skill by name or use /gcal-pro-calendar
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release
Metadata
Slug gcal-pro-calendar
Version 1.0.0
License
All-time Installs 1
Active Installs 1
Total Versions 1
Frequently Asked Questions

What is gcal-pro - Google Calendar?

Google Calendar integration for viewing, creating, and managing calendar events. Use when the user asks about their schedule, wants to add/edit/delete events, check availability, or needs a morning brief. Supports natural language like "What's on my calendar tomorrow?" or "Schedule lunch with Alex at noon Friday." Free tier provides read access; Pro tier ($12) adds create/edit/delete and morning briefs. It is an AI Agent Skill for Claude Code / OpenClaw, with 1607 downloads so far.

How do I install gcal-pro - Google Calendar?

Run "/install gcal-pro-calendar" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is gcal-pro - Google Calendar free?

Yes, gcal-pro - Google Calendar is completely free (open-source). You can download, install and use it at no cost.

Which platforms does gcal-pro - Google Calendar support?

gcal-pro - Google Calendar is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created gcal-pro - Google Calendar?

It is built and maintained by bilalmohamed187-cpu (@bilalmohamed187-cpu); the current version is v1.0.0.

💬 Comments