booking-notify · git:20260214.2f497e3 · 2026-02-14 · sha256 4de762f63b380a23
booking-notify git:20260214.2f497e3A
Immutable. This exact content is served forever at /api/v1/blob/4de762f63b380a23.
---
name: booking-notify
description: Scheduled booking sync with Telegram notifications. Fetches new bookings, cancellations, and upcoming reminders. TRIGGERS - booking sync, booking digest, booking notifications, upcoming bookings, calendar sync, booking reminder.
allowed-tools: Read, Bash, Grep, Glob
---
# Booking Notifications (Scheduled Sync)
Automated booking sync running every 6h via launchd. Fetches recent bookings, detects changes, sends notifications to Telegram.
## Mandatory Preflight
### Step 1: Check Sync Script Exists
```bash
ls -la "$HOME/.claude/plugins/marketplaces/cc-skills/plugins/calcom-commander/scripts/sync.ts" 2>/dev/null || echo "SCRIPT_NOT_FOUND"
```
### Step 2: Verify Environment
```bash
echo "CALCOM_OP_UUID: ${CALCOM_OP_UUID:-NOT_SET}"
echo "TELEGRAM_BOT_TOKEN: ${TELEGRAM_BOT_TOKEN:+SET}"
echo "TELEGRAM_CHAT_ID: ${TELEGRAM_CHAT_ID:-NOT_SET}"
echo "HAIKU_MODEL: ${HAIKU_MODEL:-NOT_SET}"
```
**All must be SET.** If any are NOT_SET, run the setup command first.
### Step 3: Verify Cal.com 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"
```
**If BINARY_NOT_FOUND**: Build it:
```bash
cd "$HOME/.claude/plugins/marketplaces/cc-skills/plugins/calcom-commander/scripts/calcom-cli" && bun install && bun run build
```
## Notification Categories
| Category | Examples |
| ------------ | ------------------------------------------------ |
| NEW BOOKING | New interview scheduled, new consultation booked |
| CANCELLATION | Booking cancelled by attendee, host cancelled |
| UPCOMING | Booking starting in 1 hour, today's schedule |
| RESCHEDULED | Booking moved to new time, date changed |
## Running Manually
```bash
cd ~/own/amonic && bun run "$HOME/.claude/plugins/marketplaces/cc-skills/plugins/calcom-commander/scripts/sync.ts"
```
## Sync Behavior
1. Fetches bookings from Cal.com API (last 6h window)
2. Compares against last-known state (file-based)
3. Detects new bookings, cancellations, and reschedules
4. Sends Telegram notification for each change
5. Updates state file for next sync cycle
6. Circuit breaker prevents cascade failures on API errors
## References
- [notification-templates.md](./references/notification-templates.md) — Telegram message templates
- [sync-config.md](./references/sync-config.md) — Sync interval and state management
## Post-Change Checklist
- [ ] YAML frontmatter valid (no colons in description)
- [ ] Trigger keywords current
- [ ] Path patterns use $HOME not hardcoded paths