Jack The Butler is an AI concierge that handles guest communication across WhatsApp, SMS, email, and web chat. Single Docker container, single SQLite database, deploy in 5 minutes.
Tech stack: Node.js, TypeScript, Hono, SQLite + sqlite-vec for embeddings, React dashboard. Supports Claude, GPT, Ollama, or fully local AI via Transformers.js (zero API costs).
Key design decisions: - SQLite for everything including vector search (sqlite-vec) — no Postgres, no Redis, one file to backup - Kernel/adapter architecture — core logic is channel-agnostic, channels and AI providers are swappable adapters - Setup wizard — hotel managers (non-technical users) need to go from docker run to working chatbot in under 5 minutes - Escalation engine — AI handles the easy 80%, smoothly hands off the hard 20% to staff with full context
One-click deploy on Railway/Render/Zeabur, or:
docker run -d -p 3000:3000 -v jack-data:/app/data ghcr.io/jackthebutler/jackthebutler:latest
Would appreciate feedback on the architecture and UX. Happy to answer questions."And I won't bother to verify you. I am just going to trust you're that customer, because no-one would ever try to trick me into messing with another customer's booking!"