Most AI agents live in the cloud. They continuously depend on large language models to make decisions.
That works for chatbots.
But what about physical systems?
Should turning off a heater depend on a remote server? Should automation stop working if WiFi drops?
This project explores a different model.
LLM-assisted, locally autonomousWireClaw runs on an ESP32 microcontroller (~520 KB RAM).
It uses an LLM (via OpenRouter, Ollama, etc.) to interpret natural language and generate automation rules.
Here’s the key:
Once the rule is created, it runs entirely on-device.
No model inference is needed at runtime.
The ESP32 executes deterministic logic locally - even offline.
How it works- You send a message in natural language (Telegram, Serial, or NATS)
- WireClaw forwards the request to an LLM (cloud or local - your choice)
- The LLM returns structured intent
- WireClaw converts that into a deterministic rule
- The rule is stored in persistent memory
- From then on, the microcontroller runs it locally
No cloud dependency after rule creation. Reboot-safe. Offline-capable.
What I show in the demoIn the video, I:
- Talk to the ESP32 in plain English
- Register a temperature sensor in one sentence
- Create an automation rule: “tell me when it gets too hot”
- Trigger it live with a soldering iron
- Reboot the device
- Show that the agent remembers
The LLM is used only to understand intent - not to continuously control hardware.
Talk once, automate foreverThis is different from “AI controlling hardware.”
Instead, AI compiles human intent into embedded logic.
After that:
- execution is deterministic
- no inference latency
- no token cost
- no cloud dependency
- no hidden decision-making
It combines the flexibility of natural language with the reliability of embedded systems.
The full source code is available on GitHub: https://github.com/M64GitHub/WireClaw
Try it yourself!
All you need is an ESP32 and a browser. No toolchain, no compiling.
Go to wireclaw.io/flash and click "Install WireClaw." Select the serial port for your ESP32. The flash process takes about 2 minutes and includes the filesystem.
Connect to WireClaw-SetupAfter flashing, the device reboots into AP mode. The LED pulsates light blue. Connect to the WireClaw-Setup WiFi network. A captive portal opens automatically - if it doesn't, open http://192.168.4.1 in your browser.
Enter your WiFi credentials, API key, and model.
Note: "API Base URL" is only needed for local LLMs (Ollama, llama.cpp, etc.) - leave it blank when using OpenRouter.
Hit save. The device reboots, connects to your WiFi, and starts the dual-loop agent. You're done - talk to it via Telegram, serial, or NATS.











Comments