mirrormate

orangekame3MIT更新放缓

把智能魔镜变成可自托管的私人语音助手,本地跑 LLM 推理,支持树莓派部署,无需依赖云端服务。

Self-hosted personalized AI in a mirror.

v0.1.13发布于 2026-01-06 16:57 UTC495star29fork同步于 2026-11-07 07:28 UTC

怎么上手

由 README 提炼,执行前请确认
docker run -p 3000:3000 -e OPENAI_API_KEY=sk-xxx -e LLM_PROVIDER=openai -e TTS_PROVIDER=openai ghcr.io/orangekame3/mirrormate:latest
硬件要求按 README 说明

README 未给出具体显存要求;完整本地方案需 Raspberry Pi 加半透镜显示器,并搭配 Mac Studio 或其他 GPU 机器运行 Ollama、VOICEVOX 和 Whisper;最小方案仅需 Raspberry Pi 加 OpenAI API。

有 Docker 镜像
下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

把语音优先的本地 AI 装进镜子,用 Ollama 和 VOICEVOX 自托管,随时对话

把智能魔镜变成可自托管的私人语音助手,本地跑 LLM 推理,支持树莓派部署,无需依赖云端服务。

核心能力

  • 用唤醒词「Hey Mira」激活语音对话
  • 基于 RAG 自动提取并检索个人记忆
  • 唇形同步头像含 8 种动画状态
  • LLM/TTS/STT/Embedding 均可切换本地或云端
  • 插件系统支持传感器与自定义组件

容易踩的坑

全本地模式需先用 ollama pull qwen2.5:14b 拉取模型,否则无法启动;VOICEVOX 默认占 50021 端口、Whisper 占 8080 端口,需与主服务分开部署;项目仍为 Work in progress,功能可用但存在粗糙之处。

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v0.1.13
  1. v0.1.13最新正式版2026-01-06 · 2026-01-06 16:57 UTC

    What's Changed

    New Features 🎉

    Full Changelog: https://github.com/orangekame3/mirrormate/compare/v0.1.12...v0.1.13

  2. v0.1.122026-01-05 · 2026-01-05 03:35 UTC
    查看更新说明

    What's Changed

    New Features 🎉

    Full Changelog: https://github.com/orangekame3/mirrormate/compare/v0.1.11...v0.1.12

  3. v0.1.112026-01-04 · 2026-01-04 10:23 UTC
    查看更新说明

    What's Changed

    New Features 🎉

    Full Changelog: https://github.com/orangekame3/mirrormate/compare/v0.1.10...v0.1.11

  4. v0.1.102026-01-04 · 2026-01-04 07:52 UTC
    查看更新说明

    What's Changed

    New Features 🎉

    Full Changelog: https://github.com/orangekame3/mirrormate/compare/v0.1.9...v0.1.10

  5. v0.1.92026-01-04 · 2026-01-04 07:06 UTC
    查看更新说明

    What's Changed

    New Features 🎉

    Full Changelog: https://github.com/orangekame3/mirrormate/compare/v0.1.8...v0.1.9

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    https://github.com/user-attachments/assets/e0f1f067-6b71-4022-afb3-f13d48e87a9b


    Why a mirror?

    A mirror is something you already live with. You glance at it in the morning. You check yourself before heading out. In those few seconds, you could ask about the weather, check your schedule, or just chat.

    MirrorMate puts AI into that everyday object. No phone to pull out. No laptop to open. Just talk to the mirror.

    What it is

    • A voice-first AI designed to live in a mirror
    • Runs entirely local with Ollama + VOICEVOX (no cloud required)
    • Buildable with Raspberry Pi + half mirror
    • Remembers you through RAG-based memory

    What it is not

    • Not a smart display
    • Not a cloud-dependent assistant
    • Not another chat UI in a browser

    Architecture

    ┌─────────────────────────────────────────────────────────────────┐
    │                        Raspberry Pi                             │
    │  ┌───────────────┐  ┌────────────┐  ┌────────────────────────┐  │
    │  │  Browser      │  │  Next.js   │  │  SQLite                │  │
    │  │  (Chrome)     │◄─┤  App       │◄─┤  (Memory, Sessions)    │  │
    │  │  + Mic/Cam    │  │  Port 3000 │  │                        │  │
    │  └───────────────┘  └─────┬──────┘  └────────────────────────┘  │
    │         ▲                 │                                     │
    │         │                 │ Tailscale VPN                       │
    └─────────┼─────────────────┼─────────────────────────────────────┘
              │                 ▼
              │   ┌─────────────────────────────────────────────────┐
              │   │                  Mac Studio                     │
              │   │  ┌────────────┐ ┌──────────────┐ ┌───────────┐  │
              │   │  │  Ollama    │ │  VOICEVOX    │ │  Whisper  │  │
              │   │  │  LLM/VLM   │ │  TTS         │ │  STT      │  │
              │   │  │  Embedding │ │  Port 50021  │ │  Port 8080│  │
              │   │  └────────────┘ └──────────────┘ └───────────┘  │
              │   └─────────────────────────────────────────────────┘
              │
              └── Half Mirror + Monitor
    

    Minimal setup: Raspberry Pi + OpenAI API only

    Full local setup: Combine with Mac Studio (or any GPU machine) as shown above


    Quick Start

    With OpenAI API (easiest):

    docker run -p 3000:3000 \
      -e OPENAI_API_KEY=sk-xxx \
      -e LLM_PROVIDER=openai \
      -e TTS_PROVIDER=openai \
      ghcr.io/orangekame3/mirrormate:latest
    

    Open http://localhost:3000 in Chrome.

    Fully local (Ollama + VOICEVOX):

    # 1. Pull a model with Ollama
    ollama pull qwen2.5:14b
    
    # 2. Start MirrorMate
    git clone https://github.com/orangekame3/mirrormate.git
    cd mirrormate
    docker compose up -d
    

    Wake word: Say "Hey Mira" to activate.


    Features

    Voice-First Interaction

    Activate with a wake word. Choose from Web Speech API, OpenAI Whisper, or local Whisper for speech recognition.

    Personalized Memory

    Automatically extracts and stores information about you from conversations. Uses RAG to retrieve relevant memories and generate personalized responses.

    Expressive Avatar

    Lip-synced avatar speaks responses. Eight animation states (Idle, Listening, Thinking, Speaking, etc.) show what it's doing at a glance.

    Multi-Provider Support

    ComponentOptions
    LLMOpenAI, Ollama
    TTSOpenAI, VOICEVOX
    STTWeb Speech API, OpenAI Whisper, Local Whisper
    EmbeddingOllama, PLaMo-Embedding-1B

    Built-in Integrations

    • Weather (Open-Meteo)
    • Calendar (Google Calendar)
    • Web search (Tavily)
    • Reminders
    • Discord sharing

    Plugin System

    Add your own widgets or sensor integrations. The Vision Companion plugin detects eye contact and greets you automatically.


    Tech Stack

    • Frontend: Next.js 15 / React 19 / Three.js
    • Backend: Node.js / SQLite (Drizzle ORM)
    • AI: Ollama / OpenAI / VOICEVOX / faster-whisper
    • Infra: Docker / Tailscale

    Development

    bun install
    bun run dev
    

    See Documentation for details.


    Status

    Work in progress. Core features work, but rough edges remain.

    If you're into local AI, self-hosted systems, or physical interfaces, give it a try.


    License

    MIT