Inanimate Tech has dropped an open-source project called Resident that brings a hot-reloadable Lua sandbox to ESP32 devices, complete with websocket connectivity and hardware IO support. The MIT-licensed framework targets developers building AI agents that need to push code into the physical world—think of it as giving humble microcontrollers a safe space for user-generated scripts. It works with both esp-idf and Arduino frameworks, so your existing firmware ecosystem isn't left behind.
How the Sandbox Works
The architecture splits into four moving parts: your ESP32 device hosts everything; custom C++ drivers expose approved peripherals like displays, IMUs, or LEDs to the sandbox; a Lua runtime handles hot-reloading over websocket connections; and JSON events flow between hardware and your code. Resident leans on Courier for Wi-Fi provisioning and message routing, which means you're not reinventing the connectivity stack from scratch. The whole setup lives in your device's loop(), calling sandbox.loop() alongside whatever else you've got running.
Hot Reload Changes the Game
Traditional embedded development cycles involve compile → flash → pray → repeat. Resident breaks that cycle by letting you push Lua apps over the network while the device is running. Their Claude Code skills handle app creation, validation, and deployment from your terminal—you can literally run 'resident:push-app' with a natural language prompt like "give me a lil guy on my m5stick" and watch it appear on screen. The websocket-based approach means iteration happens in seconds rather than minutes.
AI Agents Meet Physical Hardware
The real pitch here is agents. Inanimate Tech explicitly frames Resident as infrastructure for the coming wave of AI systems that need to interact with the real world beyond APIs and filesystems. Instead of just controlling software, agents can now manipulate physical devices—update a display, read sensor data, toggle outputs—with code that loads, runs, and updates without touching the underlying firmware. The design notes admit there's no edge AI happening on-device; this is purely about giving agents a foothold in hardware space.
Try It Without Buying Hardware
Resident includes an in-browser M5StickS3 simulator with the sandbox pre-flashed. You can drag and drop Lua apps onto a virtual device running right now—no ESP32, no cables, no setup. The recommended prototyping hardware is M5Stack's M5StickS3, which bundles an ESP32-S3 with a 135×240 LCD, buttons, buzzer, IMU, and battery in a pocket-sized form factor. It's solid advice for anyone wanting to prototype physical computing projects without soldering.
Key Takeaways
- Resident is MIT-licensed and works with esp-idf or Arduino frameworks on ESP32
- Hot-reload Lua sandbox runs over websocket—no reflashing required during development
- Built-in Claude Code skills automate app creation, validation, and deployment
- C++ drivers expose hardware peripherals (display, IMU, buttons) to the sandbox safely
- In-browser M5StickS3 simulator lets you test without buying physical hardware
The Bottom Line
Resident is a clever piece of infrastructure that fills a real gap—giving AI agents a sandboxed execution environment on resource-constrained hardware. Whether you're prototyping embedded projects or building systems where generative UI meets the physical world, this is worth keeping on your radar. The open-source stance and existing Claude Code integration suggest Inanimate Tech is playing the long game here.