Check and book Tennis and Pickleball Courts at Bay Club Gateway

PassAudited by ClawScan on May 10, 2026.

Overview

This skill appears purpose-aligned for booking Bay Club courts, but users should understand it runs local browser automation, uses Bay Club credentials, and can optionally write Google Calendar events.

This skill looks coherent for Bay Club court booking. Before installing, be comfortable giving it Bay Club login credentials and allowing it to run browser automation. If you enable Google Calendar, use a dedicated or narrowly shared calendar and protect the service-account key. Review dependencies and the install source before running npm install.

Findings (5)

Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.

What this means

When you ask it to check or book courts, it will run local code and launch browser automation on your machine or OpenClaw host.

Why it was flagged

The skill explicitly tells the agent to execute local TypeScript through the shell. This is expected for browser automation, but it means installing the skill gives it local code-execution capability when invoked.

Skill content
Use the `shell` tool to run the implementation script... `NODE_ENV=development STAGEHAND_ENV=LOCAL HEADLESS=true npx ts-node --transpile-only {baseDir}/bayclub_skills.ts`
Recommendation

Install only after reviewing the included code and dependencies, and run it in an environment where browser automation is acceptable.

What this means

The skill can act as your Bay Club account to check availability and make court bookings.

Why it was flagged

The skill logs into Bay Club using credentials supplied through environment variables. This matches the booking purpose, but the registry metadata declares no required env vars or primary credential.

Skill content
process.env.BAYCLUB_USERNAME!,
    process.env.BAYCLUB_PASSWORD!
Recommendation

Provide credentials only through a trusted secrets mechanism, and update/review metadata or setup docs so this credential requirement is clear before installation.

What this means

A mistaken or overly broad booking request could reserve a court on your account.

Why it was flagged

The skill performs an account-changing booking action when invoked with sport, day, and time parameters. This is the stated purpose, but it is still a real-world reservation action.

Skill content
const success = await bot.bookCourt(params.time);
Recommendation

Use clear booking requests, verify date/time before asking it to book, and consider adding an explicit confirmation step before reservations are finalized.

What this means

If configured, the skill can add events to the selected Google Calendar.

Why it was flagged

The optional Google Calendar integration uses a service-account credential with calendar write scope. The README discloses this feature, and the code only creates booking events, but the permission is sensitive.

Skill content
scopes: ['https://www.googleapis.com/auth/calendar']
Recommendation

Use a dedicated calendar or narrowly shared calendar when possible, protect the service-account JSON key, and remove the credential if you do not want calendar writes.

What this means

Following the README may install code and packages outside the registry artifact review path.

Why it was flagged

The README describes installing from an external GitHub repository and npm dependencies, while the registry has no install spec and source/homepage are not provided.

Skill content
git clone https://github.com/elizabethsiegle/bayclub-pb-tennis-openclaw-bot.git bayclub_manager
cd bayclub_manager
npm install
Recommendation

Prefer the reviewed registry package when available, inspect the GitHub repository and package lock before running npm install, and avoid installing unreviewed updates blindly.