\

zclaw: personal AI assistant in under 888 KB, running on an ESP32

39 points - today at 12:37 PM

Source
  • GTP

    today at 10:31 PM

    I have a couple ESP32 with a very small OLED display, I'm now thinking I could make an "intelligent" version of the Tamagotchi with this. Do you HN crowd have other cool ideas?

    • roxolotl

      today at 10:31 PM

      This is a great example of how silly this whole thing is. There’s next to nothing to these claws. Turns out that if you give an llm the ability to call APIs they will.

      • alexalx666

        today at 10:37 PM

        I think you can use C++ on esp32, that would make the code more readable

        • throwa356262

          today at 8:35 PM

          "LLM backends: Anthropic, OpenAI, OpenRouter."

          And here I was hoping that this was local inference :)

            • micw

              today at 8:51 PM

              Sure. Why purchase a H200 if you can go with an ESP32 ^^

                • sigmoid10

                  today at 10:30 PM

                  Blowing more than 800kb on essentially an http api wrapper is actually kinda bad. The original Doom binary was 700kb and had vastly more complexity. This is in C after all, so by stripping out nonessential stuff and using the right compiler options, I'd expect something like this to come in under 100kb.

                    • pitched

                      today at 10:39 PM

                      Doom had the benefit of an OS that included a lot of low-level bits like a net stack. This doesn’t! That 800kB includes everything it would need from an OS too.

                      • __tnm

                        today at 10:38 PM

                        yeah i sandbagged the size just a little to start (small enough to fit on the c3, 888 picked for good luck & prosperity; I even have a build that pads to get 888 exactly), so i can now try reduce some of it as an exercise etc.

                        but 100kb you’re not gonna see :) this has WiFi, tls, etc. doom didn’t need those

                • __tnm

                  today at 9:29 PM

                  haha well I got something ridiculous coming soon for zclaw that will kinda work on board.. will require the S3 variant tho, needs a little more memory. Training it later today.

                  • today at 8:40 PM

                    • peterisza

                      today at 9:06 PM

                      right, 888 kB would be impossible for local inference

                      however, it is really not that impressive for just a client

                        • Dylan16807

                          today at 9:20 PM

                          It's not completely impossible, depending on what your expectations are. That language model that was built out of redstone in minecraft had... looks like 5 million parameters. And it could do mostly coherent sentences.

                  • yauneyz

                    today at 10:00 PM

                    Genuinely curious - did you use a coding agent for most of this or does this level if performance take hand written code?

                    • v9v

                      today at 9:49 PM

                      Relevant: https://github.com/sipeed/picoclaw

                      • theturtletalks

                        today at 9:09 PM

                        Is there a heartbeat alternative? I feel like this is the magic behind OpenClaw and what gives it the "self-driven" feel.

                        • bensyverson

                          today at 10:02 PM

                          This is absolutely glorious. We used to talk about "smart devices" and IoT… I would be so curious to see what would happen if these connected devices had a bit more agency and communicative power. It's easy to imagine the downsides, and I don't want my email to be managed from an ESP23 device, but what else could this unlock?

                          • g947o

                            today at 8:49 PM

                            Serious question: why? What are the use cases and workflows?

                              • eleventyseven

                                today at 10:06 PM

                                The various *claws are just a pipe between LLM APIs and a bunch of other API/CLIs. Like you can have it listen via telegram or Whatsapp for a prompt you send. Like to generate some email or social post, which it sends to the LLM API. Get back a tool call that claw then makes to hit your email or social API. You could have it regularly poll for new emails or posts, generate a reply via some prompt, and send the reply.

                                The reason people were buying a separate Mac minis just to do open claw was 1) security, as it was all vibe coded, so needs to be sandboxed 2) relay iMessage and maybe 3) local inference but pretty slowly. If you don't need to relay iMessage, a raspberry pi could host it on its own device. So if all you need is the pipe, an ESP32 works.

                                • grzracz

                                  today at 9:39 PM

                                  I don't fully get it either. At least agents build stuff, claws just run around pretending to be alive?

                                    • codazoda

                                      today at 10:32 PM

                                      They do build things. The same things.

                                  • milar

                                    today at 8:50 PM

                                    for fun!

                                • johnea

                                  today at 8:24 PM

                                  I don't really need any assistance...

                                    • throwa356262

                                      today at 8:38 PM

                                      Me neither.

                                      But I have 10-15 ESP32's just waiting for a useful project. Does HN have better suggestions?

                                    • iwontberude

                                      today at 9:21 PM

                                      No, no, but we insist!