Spaces:
Running
Running
| 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 while the profile is locked β see below) | |
| # REACHY_MINI_CUSTOM_PROFILE="example" | |
| # ---- Personality lock ---- | |
| # The app ships LOCKED to the receptionist profile so a live lobby robot | |
| # can't have its reception flow swapped or broken at runtime (the dashboard's | |
| # Personality Studio shows the editor but Apply is disabled). On a unit you | |
| # own and want to experiment with, set this to true to UNLOCK editing: then | |
| # Advanced -> Personality studio's Save / Apply / "Use on startup" all work. | |
| # Restart required. Leave locked for production. Also togglable from the | |
| # dashboard: Settings -> Advanced. | |
| # RECEPTION_PROFILE_UNLOCK=false | |
| # 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 | |
| # ---- Email delivery (host notifications) ---- | |
| # The send_email tool delivers via EITHER Gmail SMTP or Resend, chosen by | |
| # EMAIL_BACKEND. Leave EMAIL_BACKEND unset to auto-detect: Gmail if its creds | |
| # are set, else Resend, else outbox-only (recorded in the dashboard's Mailbox | |
| # Out panel, but nothing leaves the robot). Also configurable from the | |
| # dashboard: Settings. | |
| # EMAIL_BACKEND=gmail # or "resend" | |
| # -- Gmail SMTP (delivers to ANY recipient β no domain to verify) -- | |
| # Needs a Google App Password (16 chars) with 2-Step Verification enabled: | |
| # https://myaccount.google.com/apppasswords (spaces in the password are OK) | |
| # GMAIL_ADDRESS=you@gmail.com | |
| # GMAIL_APP_PASSWORD=abcd efgh ijkl mnop | |
| # GMAIL_FROM_NAME=Reachy Reception | |
| # -- Resend (transactional HTTP API) -- | |
| # Get a free API key at https://resend.com/api-keys (3000 emails/month free). | |
| # Without RESEND_API_KEY (and no Gmail creds), 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 |