HalCalPal Guide

Your AI scheduling assistant — book test sessions, get pre-meeting briefings with auto-research, and coordinate across Slack, shared channels, and email.

🔗

First-time setup — connect your Google Calendar

Each team member connects their own Google account once. Your calendar data stays private — scheduling only checks free/busy status, never event details.

Run this in any Slack channel, or click Sign in with Google in the web app:

/calpal-setup
📅

Booking Meetings

Three ways to create a booking page — web app, Slack thread, or Slack + email
🖥️

From the web app

1
Scheduler tab → search for participants

Find each person in the workspace directory and click to select them.

2
Set duration → Find time or Create Booking Page

Click Find time to see mutual free slots immediately, or Create Booking Page to generate a shareable poll link. The poll page lets each attendee vote on which times work — you finalize the winner once everyone has responded.

3
Share the link

Copy the booking URL and paste it into Slack, email, or anywhere else. Visitors don't need a HalCalPal account to respond.

4
Watch responses in My Pages

The My Pages tab shows every booking page you've created, who has visited, and which slots each attendee selected. The card highlights green when everyone has responded.

Email external invitees — in the Create Booking Page modal, check Email External Invitees to enter addresses and an optional message. Invites are sent automatically after the page is created.

💬

From a Slack thread

/booking-create
All internal teammates — run inside a thread to automatically include everyone who has posted there. HalCalPal resolves their emails from Slack profiles, checks all calendars, and posts the booking URL back in the thread.
/booking-create 60
Custom duration — any number is rounded to the nearest 15-minute increment (15–120 min). Default is 30 min.
/booking-create vendor@co.com
Add external participants — people not on Slack. Thread participants are included automatically; the emails you type are added on top. Mix emails and a duration freely: /booking-create vendor@co.com 60
/booking-status
Check a poll — scans the current channel for any booking page links and posts a live summary: how many people have responded, which dates they selected, and a View poll button. Works in shared channels too.
Shared channels/booking-create works the same way in shared channels with partner orgs. Emails are resolved from Slack profiles regardless of which workspace the participant belongs to.

@mention scheduling (quick slots)

@HalCalPal schedule 30 min with @alice
Posts up to 5 mutual free slots as buttons. For 1-on-1s either person clicks to book instantly. For groups, everyone votes and the best slot wins automatically.
/find-time alice@company.com [minutes]
Same as @mention but as a slash command. Returns a list of free slots for the next 5 business days.
📋

Meeting Briefings

Meeting summary + automatic LinkedIn and news research on new attendees
/briefing
Smart briefing — current meeting if one is running, otherwise your next upcoming meeting. Attendees are classified by relationship history (see badges below).
/briefing-next
Next meeting only — focused briefing for the single next event on your calendar.
Auto-research on new attendees — both commands automatically run LinkedIn lookup and news research on any external attendees you haven't met before, and post the results immediately after the briefing. Requires an Anthropic API key (Settings tab).
Auto-briefing DMs — 5 minutes before any meeting with new external attendees, HalCalPal DMs you with meeting details and LinkedIn profiles. Configure the toggle and lead time in the Settings tab.
🔍

Contact Research

On-demand LinkedIn lookup and news search via Claude
/research-meeting
All external attendees — researches everyone outside your company domain in your current or next meeting.
/research-meeting new
New attendees only — same as above but scoped to first-time contacts only.
/research-someone alice@company.com
One person — research any individual at any time, not just before a meeting.
🏷️

Attendee Classification

How HalCalPal labels the people in your meetings
🟡 New — first time meeting
🔵 Known — met before, below Frequent Flyer threshold
🟣 Frequent Flyer — 25+ total meetings, 5+ in last 2 months
Internal — same domain as you
Thresholds for Frequent Flyer status are configurable in the Settings tab. The Reconnects panel in Briefings surfaces people you haven't met in N months.
💡

Good to Know

🔒
Your calendar, your data. Each team member signs in with their own Google account. Briefings and scheduling use only your own calendar — no one else can see your events.
Working hours. Scheduling only suggests slots within your configured business hours and days. Set timezone, start/end time, and working days in the Settings tab.
📆
5-business-day window. Availability searches cover the next 5 working days based on your schedule — weekends and non-working days are skipped automatically.
🗳️
Poll pages vs. instant booking. A booking page with two or more participants becomes a poll — each person votes, and you finalize the winner from My Pages. A single-participant page lets the visitor pick and book a slot directly.
🤖
Auto-schedule timer. For @mention / /find-time polls, if not everyone responds the most popular slot is booked automatically after a timeout (default 30 min, adjustable in Settings).
🔄
My Pages auto-refreshes. The My Pages tab refreshes every 60 seconds so you can watch responses arrive without reloading. The card turns green when all expected attendees have submitted their availability.