"It is the little grey cells, mon ami, that solve the great problems."
A themed AI chatbot that channels the personality of Agatha Christie's legendary detective. Powered by Xiaomi's MiMo language models, it responds in Poirot's distinctive voice — complete with his meticulous reasoning, Belgian mannerisms, and signature flair for deduction.
Replies as Hercule Poirot with personality, wit, and his signature style
Switch between `mimo-v2.5-pro` (reasoning) and `mimo-v2.5` (vision-capable)
Upload, paste, or drag-and-drop images for visual analysis (vision model)
Toggle Tavily-powered web search for up-to-date information
Rich formatted responses with syntax-highlighted code blocks
Persistent chat sessions saved in your browser's localStorage
Elegant dark UI with gold accents inspired by the Art Deco era
`Enter` to send, `Shift+Enter` for newline, `Ctrl+B` to toggle sidebar
git clone https://github.com/TechDaydreamer/hercule-poirot-chatbot.git
cd hercule-poirot-chatbot
npm install
cp .env.example .env
# Then open .env and fill in your API keys:
MIMO_API_KEY=your_actual_api_key_here
TAVILY_API_KEY=your_tavily_key_here # optional
node server.js
.\poirot.ps1
This will start the server (if not already running) and open the chatbot in your browser automatically.
The chatbot uses a lightweight proxy architecture:
The Node.js server acts as a proxy to keep API keys secure on the server side — they are never exposed to the browser.
| Endpoint | Method | Description |
|---|---|---|
/api/chat |
POST | Send chat messages to MiMo |
/api/models |
GET | List available AI models |
/api/search |
POST | Perform Tavily web searches |
poirot-chatbot/
├── index.html # Frontend — single-page chat UI (HTML/CSS/JS)
├── server.js # Backend — Node.js proxy server for API calls
├── poirot.ps1 # PowerShell launch script (Windows)
├── package.json # Node.js project config
├── .env.example # Environment variable template
├── .env # Your local API keys (git-ignored)
└── README.md # This file
Hercule Poirot is a fictional Belgian detective created by Agatha Christie. This chatbot is designed to embody his:
Breaking problems into ordered steps
Occasional French phrases and reminders of his heritage
Confident but not cruel, with dramatic reveals
Reasoning over brute force, always
"I do not need to go to the scene of the crime. I need only to think."
— Hercule Poirot