AI-powered hotel concierge for East African SMEs, it automates room bookings and guest queries via WhatsApp(wip), Telegram, and Web(wip), featuring integrated M-Pesa payment processing.
# Concierge AI — Smart Hotel Assistant Platform
> AI-powered hotel concierge for East African SMEs. Handles room bookings, M-Pesa payments, and guest queries across WhatsApp, Telegram, and web chat.
## Architecture
```
Hotel Guest ──► WhatsApp/Telegram/Web ──► CF Worker (Ingress)
│
┌─────────┼─────────┐
▼ ▼ ▼
Orchestrator Sub-Agent Booking
(Durable Obj) (Durable) Workflow
│
▼
M-Pesa STK Push (via A2A)
```
- **Runtime**: Cloudflare Workers + Durable Objects
- **Database**: D1 (SQLite) + KV + R2
- **AI**: Workers AI (Llama 3.1 8B)
- **Payments**: M-Pesa via Agent-to-Agent (A2A) protocol
- **Channels**: WhatsApp Business API, Telegram, Web Chat
## Domain: Hotel
## Project Structure
```
concierge-ai/ # Monorepo root
├── .codex/ # Codex agent configuration
│ ├── config.toml # Multi-agent + hooks config
│ ├── setup.sh # Sandbox bootstrap
│ ├── hooks.json # Quality gate hooks
│ ├── hooks/stop_verify.py # Verification gate script
│ ├── agents/ # Custom subagent definitions
│ └── rules/project.rules # Command safety rules
├── docs/ # Architecture docs, sequence diagrams
├── infra/ # Terraform — D1, KV, R2, Queues, Access, Rate Limits
│ ├── main.tf # Provider + R2 state backend
│ ├── scripts/inject-tf-outputs.sh # Auto-patches wrangler.jsonc with resource IDs
│ └── Makefile # make plan/apply/inject/deploy
├── packages/
│ ├── worker/ # Backend: Cloudflare Worker + Durable Objects
│ │ ├── src/
│ │ │ ├── index.ts # Worker entry point (Hono)
│ │ │ ├── config/ # Hotel domain configuration
│ │ │ ├── orchestrator/ # DomainOrchestratorDO (conversation state)
│ │ │ ├── routes/ # Hono route modules (a2a, admin, chat, daraja, mcp, onboarding, webhooks) …