receptionist-app / .env.example
mukul-chauhan-methdai's picture
Initial release: MethdAI Receptionist v1.0
06a1901
OPENAI_API_KEY=
MODEL_NAME="gpt-realtime-2"
# Local vision model (only used with --local-vision CLI flag)
# By default, vision is handled by gpt-realtime when the camera tool is used
LOCAL_VISION_MODEL=HuggingFaceTB/SmolVLM2-2.2B-Instruct
# Cache for local VLM (only used with --local-vision CLI flag)
HF_HOME=./cache
# Hugging Face token for accessing datasets/models
HF_TOKEN=
# Profile selection (ignored when LOCKED_PROFILE is set in config.py)
# REACHY_MINI_CUSTOM_PROFILE="example"
# Skip loading .env if you prefer environment-only configuration.
# REACHY_MINI_SKIP_DOTENV=1
# Optional external profile/tool directories
# REACHY_MINI_EXTERNAL_PROFILES_DIRECTORY=external_content/external_profiles
# REACHY_MINI_EXTERNAL_TOOLS_DIRECTORY=external_content/external_tools
# Optional: discover and auto-load all tools found in REACHY_MINI_EXTERNAL_TOOLS_DIRECTORY,
# even if they are not listed in the selected profile's tools.txt.
# This is convenient for downloaded tools used with built-in/default profiles.
# AUTOLOAD_EXTERNAL_TOOLS=1
# Resend transactional email API for the send_email tool.
# Get a free API key at https://resend.com/api-keys (3000 emails/month free).
# Without RESEND_API_KEY, send_email writes to the in-memory outbox only
# (visible in the dashboard's Mailbox Out panel, but nothing actually leaves
# the robot).
#
# RESEND_FROM defaults to "onboarding@resend.dev" β€” Resend's sandbox sender
# that ONLY delivers to the email address registered on your Resend account.
# For production / arbitrary recipients, verify a domain at
# https://resend.com/domains and set RESEND_FROM to an address on that
# domain (e.g. "noreply@methdai.com").
RESEND_API_KEY=
RESEND_FROM=onboarding@resend.dev
# ---- Reception calendar (Google Calendar via iCal) ----
# Set this to enable scheduled-visitor flow. The receptionist pulls today's
# appointments live from this URL (cached ~5 min). When unset, the bot
# serves walk-in visitors only β€” they say "I'm here to see X" and the bot
# routes via the employee directory (managed from the dashboard's
# Employees panel). There is no hardcoded demo schedule.
#
# To get a URL: in Google Calendar, create a calendar (e.g. "MethdAI
# Reception") -> Settings and sharing -> Integrate calendar ->
# "Public address in iCal format". Paste it below.
#
# Event title convention: "<Visitor name> with <Host name>"
# - "Rohan Verma with Mukul"
# - "Sara Khan with Priya β€” product demo follow-up"
# Host name matches the employee directory (employees.py); aliases work.
# An optional " β€” note" suffix after the host becomes the appointment note;
# alternatively put it in the event's DESCRIPTION field.
# RECEPTION_ICS_URL=https://calendar.google.com/calendar/ical/.../public/basic.ics
# Timezone used to display iCal event times on the dashboard and to the LLM.
# Must be a valid IANA tz name. Defaults to Asia/Kolkata (pilot deployment
# is in India). Set this when the robot OS is in a different tz than your
# operators expect to see times in. Common values:
# Asia/Kolkata India (IST, UTC+5:30)
# America/New_York US East Coast
# Europe/London UK
# Asia/Tokyo Japan
# RECEPTION_TIMEZONE=Asia/Kolkata
# ---- Privacy retention ----
# Guest face crops in guests/*.png older than this many days are deleted
# at app startup. Set to 0 to disable (keep faces forever until FIFO
# capacity eviction kicks in at 100).
FACE_TTL_DAYS=30
# Visit rows in visitor_log.db older than this many days are deleted at
# app startup. Set to 0 to disable (unbounded growth).
VISITOR_LOG_RETENTION_DAYS=90
# LBPH face-recognition strictness. LOWER = stricter (fewer false matches,
# more "I don't recognise you, please tell me your name" prompts).
# 50 - 75 recommended for production (default 75)
# 75 - 100 permissive (some lighting/angle variance OK)
# 100 - 110 old default β€” produces frequent false matches
# If returning guests stop being recognised, raise by 10 and re-test.
# If strangers get greeted as someone else, lower by 10.
FACE_LBPH_THRESHOLD=75