MimiClaw – An OpenClaw-like AI assistant for ESP32-S3 boards
MimiClaw is an OpenClaw-inspired AI assistant designed for ESP32-S3 boards, which acts as a gateway between the Telegram messaging application and Claude online LLM to control the hardware by just chatting to it.
MimiClaw highlights:
- Written in C; relies on the ESP-IDF 5.5 framework
- System requirements – ESP32-S3 board with 16 MB flash and 8 MB PSRAM, such as the LILYGO T7-S3, FireBeetle 2 ESP32-S3, ESP32-S3-DevKitC-1-N16R8, Seeed Studio’s XIAO ESP32S3 Plus, and others.
- Integrates with the Telegram app and Claude, requiring a @BotFather bot token and Anthropic API key
- Remember across reboots
- Low-power – 0.5 Watt power consumption
The way it works is explained in the diagram below. The user sends a message on Telegram, which is picked up by the ESP32-S3 over WiFi, and fed into an agent loop connecting to Claude. You can ask it high-level tasks like reminding you of an appointment, but the most interesting part here is that you can control the hardware (GPIO, sensors, actuators…), for example, to read temperatures, flip switches (lights, fans…), and so on, all within Telegram.
Data is stored in text files on the board, which you can access or edit as needed:
- SOUL.md – The bot’s personality. Default file:
I am MimiClaw, a personal AI assistant running on an ESP32–S3 microcontroller.Personality:– Helpful and friendly– Concise and to the point– Curious and eager to learn
- USER.md – Info about you — name, preferences, language
- MEMORY.md – Long-term memory (things the bot should always remember)
- Date formatted files like “2026-02-14.md” – Daily notes
- tg_12345.jsonl – Chat history
If you want to give it a try, you’ll need a machine with ESP-IDF 5.5 or greater, and get the code as follows:
|
git clone https://github.com/memovai/mimiclaw.git
cd mimiclaw
idf.py set–target esp32s3
|
Before building it, you’ll probably want to edit the main/mimi_secrets.h file with your WiFi credentials and Telegram/Claude/Brave Search (optional) API keys:
|
#define MIMI_SECRET_WIFI_SSID “YourWiFiName”
#define MIMI_SECRET_WIFI_PASS “YourWiFiPassword”
#define MIMI_SECRET_TG_TOKEN “123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11”
#define MIMI_SECRET_API_KEY “sk-ant-api03-xxxxx”
#define MIMI_SECRET_SEARCH_KEY “” // optional: Brave Search API key
#define MIMI_SECRET_PROXY_HOST “” // optional: e.g. “10.0.0.1”
#define MIMI_SECRET_PROXY_PORT “” // optional: e.g. “7897
|
Time to build and flash MimiClaw to your ESP32-S3 board (replace /dev/ttyACM0 with your actual device):
|
idf.py fullclean && idf.py build
idf.py –p /dev/ttyACM0 flash monitor
|
There are also CLI commands to change the parameters defined in main/mimi_secrets.h and debug commands for wifi status, free memory, and more. You’ll find detailed instructions to get started and the code, released under an MIT license, on GitHub. The project’s website may have a few more details, as well as a waiting list, which is for people wanting to purchase an ESP32-S3 board preloaded with MimiClaw.



