🎁 Get the FREE AI Skills Starter Guide β€” Subscribe β†’
BytesAgainBytesAgain
πŸ¦€ ClawHub

Show Booking

by @danielfoch

Book real estate showing tours from emailed or pasted listing details, including extracting listing data, preparing outbound call jobs, coordinating a callin...

Versionv0.1.0
Downloads1,160
Installs1
TERMINAL
clawhub install show-booking

πŸ“– About This Skill


name: show-booking description: Book real estate showing tours from emailed or pasted listing details, including extracting listing data, preparing outbound call jobs, coordinating a calling sub-agent, creating calendar invites, and returning confirmations. Use when the user asks to book showings for one or more properties, coordinate preferred windows for a client, or automate office calls instead of manual BrokerBay login flows.

Show Booking

Overview

Execute an end-to-end workflow for showing requests: 1. Parse intake from free-form prompt or email text. 2. Build per-listing call jobs. 3. Hand off call execution to the tour-booking sub-agent. 4. Generate calendar invite files from confirmed slots. 5. Return a concise confirmation summary.

Inputs

Collect these fields before running outbound calls:

  • Client full name.
  • Listings (address, listing ID if present, office phone, listing office/agent name if present).
  • Preferred windows and timezone.
  • Booking constraints (lockbox notes, occupants, minimum notice).
  • Confirmation target (email/SMS destination for status updates).
  • If any listing is missing a phone number, flag it as blocked and do not place calls for that listing.

    Workflow

    1) Parse intake

    Run:

    python3 scripts/intake_request.py --input-file /path/to/intake.txt --output /tmp/showing-intake.json
    

    Or pass inline text:

    python3 scripts/intake_request.py --input-text "Book showings for ..." --output /tmp/showing-intake.json
    

    2) Build call queue

    Run:

    python3 scripts/orchestrate_showings.py --intake /tmp/showing-intake.json --output /tmp/showing-plan.json
    

    This produces:

  • call_queue: listings with phone numbers ready for calls.
  • blocked: listings missing required data.
  • calendar_candidates: records ready for invite creation after call confirmation.
  • 3) Delegate calling to tour-booking

    For each call_queue record, invoke tour-booking/scripts/place_outbound_call.py with:

  • Listing metadata.
  • Preferred windows.
  • Client identity.
  • Callback instructions.
  • If live calling is not approved, run with --dry-run and return the generated payload.

    4) Create invites for confirmed slots

    When a listing returns a confirmed date/time:

    python3 scripts/create_invite_ics.py \
      --input /tmp/confirmed-showings.json \
      --output-dir /tmp/showing-invites
    

    The script emits one .ics file per confirmed showing. Import into Google Calendar or send directly as attachments.

    5) Return status

    Report:

  • Confirmed showings with time, address, and invite file path.
  • Pending callbacks.
  • Blocked listings and the missing field(s).
  • Total calls attempted and success/failure counts.
  • Guardrails

  • Explicitly identify the caller as an AI assistant acting for the brokerage/realtor.
  • Respect local telemarketing and consent requirements.
  • Keep a full audit trail: request payload, call result, booking outcome, and timestamps.
  • Never claim a showing is confirmed until the call result explicitly indicates confirmation.