Sources & lineage
familiar didn’t spring from nothing — it’s the newest branch of a family tree of open projects, and this page is the map back to its ancestors. (For the complete license-level credits of everything vendored or linked, see the repository README.)
The StackChan family — the body’s ancestors
- stack-chan/stack-chan — the original. Shinya Ishikawa’s “JavaScript-driven M5Stack-embedded super-kawaii robot” started the whole palm-sized-companion genre; every StackChan descends from this design and its open hardware.
- m5stack/StackChan — M5Stack’s
official open-source StackChan: the hardware poppet runs on and the base
application
poppet/main/is built from. - BrettKinny/StackChan — the
fork whose firmware work (the
dotty/ firmware branches) poppet directly derives from: the HAL, avatar, servo, and personality layers grew from here.
The XiaoZhi family — the mind’s ancestors
- 78/xiaozhi-esp32 — the
MCP-based ESP32 voice-assistant firmware. poppet’s conversational core is
a pruned in-tree fork of it (v2.2.4, at
poppet/vendor/stackchan-esp32/) with all cloud endpoints removed. - howecheung/StackChan-XiaoZhi — a kindred ancestor: StackChan body, xiaozhi mind, with a focus on companionship (touch, motion, mood lights, servos). Itself derived from mo-hantang/Stackchan-HtSz. familiar walks the same StackChan-marries-xiaozhi path.
- xinnan-tech/xiaozhi-esp32-server — the self-hosted backend for xiaozhi devices. grimoire replaces it for this project: same seat at the table, new wire protocol, LAN-only by design.
The engines
The heavy lifting inside grimoire is other people’s brilliant work:
- whisper.cpp — hearing (ASR), run in-process.
- Kokoro via Kokoro-FastAPI — the voice (TTS).
- Any OpenAI-compatible LLM server — the thinking; we run ours through llama-swap.
- microWakeWord (Open Home Foundation) — the wake-word architecture behind “Hey Artemis”, with ESPMicroSpeechFeatures as the audio frontend.
And this site
The docs’ ink-and-parchment look riffs on the ensō documentation theme, steered a few shades witchier.