
Radar check
What we found when we opened it. Every bar is one fact, with its date.
Last code pushed 25 Oct 2026, 2 days before this check.
No releases published on GitHub; the code date above is the one to trust.
Public since October 2026, 1 months.
62 stars and 11 forks.
4 commits and 1 new issues in the last 90 days.
1 contributor. No pull requests merged in 90 days; changes go in directly. A small team carries it.
No security policy file says how to report a problem. No published security advisories.
How the bars are scored
- Alive. Days since the last code push: a week or less 100, a month 90, three months 70, six months 50, a year 30, eighteen months 15, older 0.
- Releases. Age of the latest GitHub release, on a similar scale; no bar when the project publishes no releases.
- Maturity. Age of the project: eight years 100, five 90, three 70, two 55, one 40, six months 25, younger 10.
- Adoption. Stars on a log scale: 100,000 stars is 100, 10,000 is 80, 1,000 is 60, 100 is 40.
- Activity. Commits in the last 90 days: 300 or more 100, 100 85, 30 65, 10 45, any 25.
- Community. People who have contributed: 100 or more 100, 30 80, 10 60, 5 40, 2 25, one 10.
- Security. A published security policy 80, none 40; published advisories are listed, not scored.
Checked by Repo Radar on 28 Oct 2026 from the repository on GitHub.
In simple English
This project lets you run an animated 3D character on your computer. You can speak to her using a microphone, and she answers out loud with a voice and facial expressions. She remembers past chats and changes her mood based on what you say. You can run her brain completely on your own computer or connect her to a cloud service. She is intended for adult users, as she can flirt when she likes you.
What it is
OpenSakura is a Python and JavaScript application that combines speech recognition, text-to-speech, language models, and a 3D browser stage. It runs a local voice and ear server while letting you choose between a local language model or a cloud API for the brain.
What it is good for
This is good for solo builders who want to experiment with local AI companions, voice agents, or 3D web characters without building the whole voice and animation stack from scratch.
Summary (Key Points)from the README
Key features
- Emotional state: 26 emotions, a favorability score and per-user memory shape how she reacts, and negative feelings fade about three times faster than positive ones.
- Spoken replies: speech recognition runs locally, and her voice answers out loud with an emotion tag such as `【shy1】`.
- Avatar acting: a three.js VRM avatar plays one of 26 motions picked by a second LLM call, then returns to an idle loop.
- Input options: hands-free voice activity detection, push-to-talk with ⏺ or Space, or typed text.
- Choice of brain: OpenRouter (default `google/gemini-2.5-flash`) or Ollama with `qwen3:8b` or `qwen3:4b`, set per role.
- Cost ledger: every OpenRouter call records its exact billed cost, and the State tab shows session and lifetime totals per role.
- Custom avatars and motions: any VRM file works, and GLB or FBX motion clips can be listed in `web/assets/clips.json` with per-clip flags.
- Measured speed: on an RTX 5070 with OpenRouter, speech recognition takes about 0.06 s, a text reply about 1 s and voice is ready about 1.9 s after the reply starts.
Ways to install
| Platform or method | What it needs | Effort |
|---|---|---|
| Fully local (Ollama brain, GPU voice) | Windows 10/11, NVIDIA RTX (16 GB VRAM recommended, 8–12 GB uses the 4B model), 16 GB RAM, ~20 GB disk | Highest: voice setup plus Ollama install and model pull |
| Semi-local (OpenRouter brain, GPU voice) | Windows 10/11, NVIDIA RTX with 6 GB VRAM, 16 GB RAM, ~15 GB disk, OpenRouter key | Medium: voice setup plus a key in `.env` |
| Fully online (text only) | Any Windows, macOS or Linux PC with Python 3.11+, a WebGL browser, an OpenRouter key, no GPU | Lowest: no voice install, text-only launch |
Important
- Adults only: she is 18+ oriented. At high favorability she flirts and can be sexually suggested (never explicit), and `reply.intimacy_mode` turns the flirting off.
- Legacy prototype: this is the harness, voice and memory stack from her Discord run, released as-is and not representative of MekaHime's newest technology.
- Discord mode is not available: the bot process has not been ported, and selecting Discord mode only disables the Play tab.
- GPU needed for voice: voice and speech recognition require a local NVIDIA GPU. Linux and macOS are untested.
- Python versions: the backend needs Python 3.11+, and the voice server needs 3.11 or 3.12.
- Voice license: the voice model is for personal, hobbyist use only, for 18+ users, with no training of other models, no re-hosting and visible MekaHime credit in posts or streams.
- Usage costs: the README gives about $0.003 per turn, about $0.08/h of text chat and $0.31–0.36/h of continuous voice on semi-local setups, based on billing from 2026-10-24.
- Slow on 12 GB cards: fully local with the 8B model takes about 7.6 s for a text reply and about 12 s for voice, so the 4B model is recommended there.
- Sensitive words: a hit does not censor anything; Sakura calls the word out in character.
Written by an AI model from the project’s README; not part of the review, and it can be wrong.
- Completely open-source Python harness with an MIT licence for the core code.
- Supports both local offline models via Ollama and cloud models via OpenRouter.
- Includes a 3D browser stage with motion clips and facial expressions that sync with speech.
- High system requirements for local voice and speech recognition, needing a capable NVIDIA graphics card with at least 8 to 16 GB of memory.
- Complex installation process with large model downloads and specific Python version requirements.
- Adult-oriented persona with flirting mechanics that may not suit all users.
building a custom 3D avatar voice assistant from scratch
Ollama
- oobabooga/textgen48k stars
A popular local web interface for running language models, though it lacks built-in 3D avatars and real-time voice pipelines.
- vllm-project/vllm96k stars
A serving engine that makes one graphics card answer many requests at once.
- infiniflow/ragflow93k stars
A question-answering system built on a document collection, with the sources shown beside every answer.
- basicmachines-co/basic-memory4.3k stars
Gives an AI assistant a memory that is stored as plain text files you can read.
git clone https://github.com/zeekk0/OpenSakura.git cd OpenSakura powershell -ExecutionPolicy Bypass -File scripts\setup_windows.ps1 python scripts\setup_tts.py