{"id":44494134,"url":"https://github.com/memovai/mimiclaw","last_synced_at":"2026-02-16T13:00:48.330Z","repository":{"id":336411430,"uuid":"1149403151","full_name":"memovai/mimiclaw","owner":"memovai","description":"MimiClaw: Run OpenClaw on a $5 chip. No OS(Linux). No Node.js. No Mac mini. No Raspberry Pi. No VPS.😗Local-first memory. Shareable. Portable. Privacy-first.","archived":false,"fork":false,"pushed_at":"2026-02-12T14:08:15.000Z","size":4078,"stargazers_count":1431,"open_issues_count":32,"forks_count":167,"subscribers_count":16,"default_branch":"main","last_synced_at":"2026-02-12T15:17:22.674Z","etag":null,"topics":["ai","assistant","clawdbot","edge-ai-agents","memory","openclaw"],"latest_commit_sha":null,"homepage":"https://www.mimiclaw.io","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/memovai.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-04T04:25:33.000Z","updated_at":"2026-02-12T15:16:05.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/memovai/mimiclaw","commit_stats":null,"previous_names":["memovai/mimiclaw"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/memovai/mimiclaw","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/memovai%2Fmimiclaw","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/memovai%2Fmimiclaw/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/memovai%2Fmimiclaw/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/memovai%2Fmimiclaw/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/memovai","download_url":"https://codeload.github.com/memovai/mimiclaw/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/memovai%2Fmimiclaw/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29455594,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-14T15:52:44.973Z","status":"ssl_error","status_checked_at":"2026-02-14T15:52:11.208Z","response_time":53,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","assistant","clawdbot","edge-ai-agents","memory","openclaw"],"created_at":"2026-02-13T05:00:20.133Z","updated_at":"2026-02-14T21:00:40.272Z","avatar_url":"https://github.com/memovai.png","language":"C","funding_links":[],"categories":["Community Projects","框架与衍生项目","Setup Methods (1-10 Minutes)","Bare Metal","Edge And Embedded Directions","Hardware And Wearables","🗂️ Projects","Main Projects","Ecosystem","Lightweight Alternatives \u0026 Forks","By Category","C","Alternative Architekturen","Uncategorized","⚡ Alternative Clients \u0026 Runtimes","Lightweight \u0026 Embedded Claws","Table of Contents"],"sub_categories":["Deployment \u0026 Infrastructure","Recommended","📋 Project Overview","Context Management","Embedded / Edge","Uncategorized","Comparison Table"],"readme":"# MimiClaw: Pocket AI Assistant on a $5 Chip\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n[![DeepWiki](https://img.shields.io/badge/DeepWiki-mimiclaw-blue.svg)](https://deepwiki.com/memovai/mimiclaw)\n[![Discord](https://img.shields.io/badge/Discord-mimiclaw-5865F2?logo=discord\u0026logoColor=white)](https://discord.gg/r8ZxSvB8Yr)\n[![X](https://img.shields.io/badge/X-@ssslvky-black?logo=x)](https://x.com/ssslvky)\n\n**[English](README.md) | [中文](README_CN.md) | [日本語](README_JA.md)**\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"assets/banner.png\" alt=\"MimiClaw\" width=\"480\" /\u003e\n\u003c/p\u003e\n\n**The world's first AI assistant(OpenClaw) on a $5 chip. No Linux. No Node.js. Just pure C**\n\nMimiClaw turns a tiny ESP32-S3 board into a personal AI assistant. Plug it into USB power, connect to WiFi, and talk to it through Telegram — it handles any task you throw at it and evolves over time with local memory — all on a chip the size of a thumb.\n\n## Meet MimiClaw\n\n- **Tiny** — No Linux, no Node.js, no bloat — just pure C\n- **Handy** — Message it from Telegram, it handles the rest\n- **Loyal** — Learns from memory, remembers across reboots\n- **Energetic** — USB power, 0.5 W, runs 24/7\n- **Lovable** — One ESP32-S3 board, $5, nothing else\n\n## How It Works\n\n![](assets/mimiclaw.png)\n\nYou send a message on Telegram. The ESP32-S3 picks it up over WiFi, feeds it into an agent loop — the LLM thinks, calls tools, reads memory — and sends the reply back. Supports both **Anthropic (Claude)** and **OpenAI (GPT)** as providers, switchable at runtime. Everything runs on a single $5 chip with all your data stored locally on flash.\n\n## Quick Start\n\n### What You Need\n\n- An **ESP32-S3 dev board** with 16 MB flash and 8 MB PSRAM (e.g. Xiaozhi AI board, ~$10)\n- A **USB Type-C cable**\n- A **Telegram bot token** — talk to [@BotFather](https://t.me/BotFather) on Telegram to create one\n- An **Anthropic API key** — from [console.anthropic.com](https://console.anthropic.com), or an **OpenAI API key** — from [platform.openai.com](https://platform.openai.com)\n\n### Install\n\n```bash\n# You need ESP-IDF v5.5+ installed first:\n# https://docs.espressif.com/projects/esp-idf/en/v5.5.2/esp32s3/get-started/\n\ngit clone https://github.com/memovai/mimiclaw.git\ncd mimiclaw\n\nidf.py set-target esp32s3\n```\n\n### Configure\n\nMimiClaw uses a **two-layer config** system: build-time defaults in `mimi_secrets.h`, with runtime overrides via the serial CLI. CLI values are stored in NVS flash and take priority over build-time values.\n\n```bash\ncp main/mimi_secrets.h.example main/mimi_secrets.h\n```\n\nEdit `main/mimi_secrets.h`:\n\n```c\n#define MIMI_SECRET_WIFI_SSID       \"YourWiFiName\"\n#define MIMI_SECRET_WIFI_PASS       \"YourWiFiPassword\"\n#define MIMI_SECRET_TG_TOKEN        \"123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11\"\n#define MIMI_SECRET_API_KEY         \"sk-ant-api03-xxxxx\"\n#define MIMI_SECRET_MODEL_PROVIDER  \"anthropic\"     // \"anthropic\" or \"openai\"\n#define MIMI_SECRET_SEARCH_KEY      \"\"              // optional: Brave Search API key\n#define MIMI_SECRET_PROXY_HOST      \"\"              // optional: e.g. \"10.0.0.1\"\n#define MIMI_SECRET_PROXY_PORT      \"\"              // optional: e.g. \"7897\"\n```\n\nThen build and flash:\n\n```bash\n# Clean build (required after any mimi_secrets.h change)\nidf.py fullclean \u0026\u0026 idf.py build\n\n# Find your serial port\nls /dev/cu.usb*          # macOS\nls /dev/ttyACM*          # Linux\n\n# Flash and monitor (replace PORT with your port)\n# USB adapter: likely /dev/cu.usbmodem11401 (macOS) or /dev/ttyACM0 (Linux)\nidf.py -p PORT flash monitor\n```\n\n\u003e **Important: Plug into the correct USB port!** Most ESP32-S3 boards have two USB-C ports. You must use the one labeled **USB** (native USB Serial/JTAG), **not** the one labeled **COM** (external UART bridge). Plugging into the wrong port will cause flash/monitor failures.\n\u003e\n\u003e \u003cdetails\u003e\n\u003e \u003csummary\u003eShow reference photo\u003c/summary\u003e\n\u003e\n\u003e \u003cimg src=\"assets/esp32s3-usb-port.jpg\" alt=\"Plug into the USB port, not COM\" width=\"480\" /\u003e\n\u003e\n\u003e \u003c/details\u003e\n\n### CLI Commands\n\nConnect via serial to configure or debug. **Config commands** let you change settings without recompiling — just plug in a USB cable anywhere.\n\n**Runtime config** (saved to NVS, overrides build-time defaults):\n\n```\nmimi\u003e wifi_set MySSID MyPassword   # change WiFi network\nmimi\u003e set_tg_token 123456:ABC...   # change Telegram bot token\nmimi\u003e set_api_key sk-ant-api03-... # change API key (Anthropic or OpenAI)\nmimi\u003e set_model_provider openai    # switch provider (anthropic|openai)\nmimi\u003e set_model gpt-4o             # change LLM model\nmimi\u003e set_proxy 127.0.0.1 7897  # set HTTP proxy\nmimi\u003e clear_proxy                  # remove proxy\nmimi\u003e set_search_key BSA...        # set Brave Search API key\nmimi\u003e config_show                  # show all config (masked)\nmimi\u003e config_reset                 # clear NVS, revert to build-time defaults\n```\n\n**Debug \u0026 maintenance:**\n\n```\nmimi\u003e wifi_status              # am I connected?\nmimi\u003e memory_read              # see what the bot remembers\nmimi\u003e memory_write \"content\"   # write to MEMORY.md\nmimi\u003e heap_info                # how much RAM is free?\nmimi\u003e session_list             # list all chat sessions\nmimi\u003e session_clear 12345      # wipe a conversation\nmimi\u003e restart                  # reboot\n```\n\n## Memory\n\nMimiClaw stores everything as plain text files you can read and edit:\n\n| File | What it is |\n|------|------------|\n| `SOUL.md` | The bot's personality — edit this to change how it behaves |\n| `USER.md` | Info about you — name, preferences, language |\n| `MEMORY.md` | Long-term memory — things the bot should always remember |\n| `2026-02-05.md` | Daily notes — what happened today |\n| `tg_12345.jsonl` | Chat history — your conversation with the bot |\n\n## Tools\n\nMimiClaw supports tool calling for both Anthropic and OpenAI — the LLM can call tools during a conversation and loop until the task is done (ReAct pattern).\n\n| Tool | Description |\n|------|-------------|\n| `web_search` | Search the web via Brave Search API for current information |\n| `get_current_time` | Fetch current date/time via HTTP and set the system clock |\n\nTo enable web search, set a [Brave Search API key](https://brave.com/search/api/) via `MIMI_SECRET_SEARCH_KEY` in `mimi_secrets.h`.\n\n## Also Included\n\n- **WebSocket gateway** on port 18789 — connect from your LAN with any WebSocket client\n- **OTA updates** — flash new firmware over WiFi, no USB needed\n- **Dual-core** — network I/O and AI processing run on separate CPU cores\n- **HTTP proxy** — CONNECT tunnel support for restricted networks\n- **Multi-provider** — supports both Anthropic (Claude) and OpenAI (GPT), switchable at runtime\n- **Tool use** — ReAct agent loop with tool calling for both providers\n\n## For Developers\n\nTechnical details live in the `docs/` folder:\n\n- **[docs/ARCHITECTURE.md](docs/ARCHITECTURE.md)** — system design, module map, task layout, memory budget, protocols, flash partitions\n- **[docs/TODO.md](docs/TODO.md)** — feature gap tracker and roadmap\n\n## License\n\nMIT\n\n## Acknowledgments\n\nInspired by [OpenClaw](https://github.com/openclaw/openclaw) and [Nanobot](https://github.com/HKUDS/nanobot). MimiClaw reimplements the core AI agent architecture for embedded hardware — no Linux, no server, just a $5 chip.\n\n## Star History\n\n[![Star History Chart](https://api.star-history.com/svg?repos=memovai/mimiclaw\u0026type=Date)](https://star-history.com/#memovai/mimiclaw\u0026Date)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmemovai%2Fmimiclaw","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmemovai%2Fmimiclaw","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmemovai%2Fmimiclaw/lists"}