Skip to content
Back to skills

Booking Config

CSecurity

Cal.com event types, schedules, and availability configuration. TRIGGERS - event type, booking page, schedule

  • 75 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added May 27, 2026
toolspythonshellbashapi

Works with

  • cli
  • api

Security analysis

C63/100
  • criticalExfiltrates credentials via HTTP — exact pattern from Snyk ToxicSkills study
  • criticalSends environment variables or credentials to an external URL
  • criticalDownloads and executes remote scripts — classic supply chain attack

Pro scans all 2 files and shows the line behind each finding

Scanned October 4, 2026

npx -y skills add terrylica/cc-skills --skill booking-config --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Booking Config?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Booking Config
[![Security: C — Skills Directory](https://www.skillsdirectory.com/api/skills/terrylica-booking-config/badge)](https://www.skillsdirectory.com/skills/terrylica-booking-config)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: booking-config
description: Cal.com event types, schedules, and availability configuration. TRIGGERS - event type, booking page, schedule
allowed-tools: Read, Bash, Grep, Glob, Write, AskUserQuestion
---

# Booking Configuration

Configure Cal.com event types, schedules, and availability windows via CLI.

> **Self-Evolving Skill**: This skill improves through use. If instructions are wrong, parameters drifted, or a workaround was needed — fix this file immediately, don't defer. Only update for real, reproducible issues.

## Mandatory Preflight

### Step 1: Check CLI Binary

```bash
ls -la "$HOME/.claude/plugins/marketplaces/cc-skills/plugins/calcom-commander/scripts/calcom-cli/calcom" 2>/dev/null || echo "BINARY_NOT_FOUND"
```

### Step 2: Verify Environment

```bash
echo "CALCOM_OP_UUID: ${CALCOM_OP_UUID:-NOT_SET}"
echo "CALCOM_API_URL: ${CALCOM_API_URL:-NOT_SET}"
```

**All must be SET.** If any are NOT_SET, run the setup command first.

### Step 3: Test API Access

```bash
CALCOM_CLI="$HOME/.claude/plugins/marketplaces/cc-skills/plugins/calcom-commander/scripts/calcom-cli/calcom"
$CALCOM_CLI event-types list 2>&1 | head -3
```

## Event Type Management

### Create Event Type

Use AskUserQuestion to collect required fields:

```
AskUserQuestion({
  questions: [{
    question: "What type of booking page do you want to create?",
    header: "Event Type",
    options: [
      { label: "30-min Meeting", description: "Standard 30-minute meeting slot" },
      { label: "60-min Interview", description: "Full hour interview session" },
      { label: "15-min Quick Call", description: "Brief check-in call" },
      { label: "Custom", description: "Specify custom duration and details" }
    ],
    multiSelect: false
  }]
})
```

```bash
CALCOM_CLI="$HOME/.claude/plugins/marketplaces/cc-skills/plugins/calcom-commander/scripts/calcom-cli/calcom"

# Create event type with collected details
$CALCOM_CLI event-types create \
  --title "30min Interview" \
  --slug "interview-30" \
  --length 30 \
  --description "Screening interview for VA candidates"
```

### Update Event Type

```bash
# Update title
$CALCOM_CLI event-types update <id> --title "Updated Title"

# Update duration
$CALCOM_CLI event-types update <id> --length 45

# Disable event type
$CALCOM_CLI event-types update <id> --hidden true
```

## Schedule Management

### List Schedules

```bash
$CALCOM_CLI schedules list
```

### Create Schedule

```bash
# Create a weekday schedule (9am-5pm)
$CALCOM_CLI schedules create \
  --name "Business Hours" \
  --timezone "America/New_York" \
  --availability '[
    {"days": [1,2,3,4,5], "startTime": "09:00", "endTime": "17:00"}
  ]'
```

### Check Availability

```bash
# Check available slots for a specific date range
$CALCOM_CLI availability check \
  --event-type-id <id> \
  --start "2026-02-15" \
  --end "2026-02-20"
```

## Common Booking Page Patterns

### Candidate Screening Interview

```bash
$CALCOM_CLI event-types create \
  --title "VA Screening Interview" \
  --slug "va-screening" \
  --length 30 \
  --description "BruntWork virtual assistant candidate screening" \
  --requires-confirmation true
```

### Open Office Hours

```bash
$CALCOM_CLI event-types create \
  --title "Office Hours" \
  --slug "office-hours" \
  --length 15 \
  --description "Drop-in office hours for team questions"
```

## Webhook Management

Manage Cal.com webhooks for real-time Pushover notifications via the webhook relay.

### List Webhooks

```bash
CALCOM_API_KEY=$(op item get "$CALCOM_OP_UUID" --vault "Claude Automation" --fields password --reveal)

curl -s "https://api.cal.com/v1/webhooks?apiKey=$CALCOM_API_KEY" | python3 -m json.tool
```

### Register Webhook

```bash
curl -s -X POST "https://api.cal.com/v1/webhooks?apiKey=$CALCOM_API_KEY" \
  -H "Content-Type: application/json" \
  -d "{\"subscriberUrl\":\"$WEBHOOK_RELAY_URL\",\"eventTriggers\":[\"BOOKING_CREATED\",\"BOOKING_RESCHEDULED\",\"BOOKING_CANCELLED\"],\"active\":true}"
```

### Delete Webhook

```bash
curl -s -X DELETE "https://api.cal.com/v1/webhooks/<webhook-id>?apiKey=$CALCOM_API_KEY"
```

**Prerequisites**: `WEBHOOK_RELAY_URL` must be set in the environment (`~/gh/vjspc/amonic/.env.launchd` for the daemons, or exported in your shell). Deploy the relay first via the `infra-deploy` skill.

## Post-Change Checklist

- [ ] YAML frontmatter valid (no colons in description)
- [ ] Trigger keywords current
- [ ] Path patterns use $HOME not hardcoded paths

## Post-Execution Reflection

After this skill completes, reflect before closing the task:

0. **Locate yourself.** — Find this SKILL.md's canonical path before editing.
1. **What failed?** — Fix the instruction that caused it.
2. **What worked better than expected?** — Promote to recommended practice.
3. **What drifted?** — Fix any script, reference, or dependency that no longer matches reality.
4. **Log it.** — Evolution-log entry with trigger, fix, and evidence.

Do NOT defer. The next invocation inherits whatever you leave behind.

Files in this skill

  • SKILL.md4.8 KB
  • references/evolution-log.md683 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…