Handcrafted Persona Engine
An AI-powered interactive avatar engine using Live2D, LLM, ASR, TTS, and RVC. Ideal for VTubing, streaming, and virtual assistant applications.
Install / Use
npx skills add elevenyellow/handcrafted-persona-engineInstalls into whichever agent you are using.
README
At a glance
| What it is | What you need | How long to first pixel | | :---: | :---: | :---: | | Voice-driven Live2D character with LLM brain, real-time TTS, and streaming-ready output. | Windows x64, NVIDIA GPU with CUDA, ~16 GB free disk. | Download → double-click → pick a profile. |
</div><details> <summary><b>Table of contents</b></summary>
- Overview
- See it in action
- Getting started
- Install profiles
- Screenshots
- Features
- How it works
- Use cases
- Deeper docs
- Community
- Contributing
- Support
<a id="overview"></a>Overview
Persona Engine listens through your microphone, thinks with an LLM guided by a personality file, speaks back with real-time TTS (optionally voice-cloned), and drives a Live2D avatar in sync. You can watch the character inside the built-in transparent overlay, or pipe it into OBS over Spout for streaming.
The included Aria model is rigged for the engine's lip-sync and expression pipeline out of the box. You can bring your own model too — see the Live2D Integration Guide.
[!IMPORTANT] Persona Engine feels most natural with a fine-tuned LLM trained on the engine's communication format. Standard OpenAI-compatible models (Groq, OpenAI, Ollama, …) work too, but you'll want to put care into
personality.txt. A template (personality_example.txt) ships in the repo, and the fine-tuned model is available in Discord.
<a id="demo"></a>See it in action
<div align="center"> <a href="https://www.youtube.com/watch?v=4V2DgI7OtHE" target="_blank"> <img src="assets/demo_1.png" alt="Persona Engine demo video" width="620"> </a> <p><i>Click to watch the demo on YouTube.</i></p><video src="https://github.com/user-attachments/assets/e1a68bd7-c8d7-4821-b60c-05032179a982"></video>
</div><a id="installation-guide"></a>Getting started
[!IMPORTANT] Requires NVIDIA GPU with CUDA (Windows x64). ASR, TTS, and RVC all run on CUDA via ONNX Runtime — CPU/AMD/Intel are not supported.
- Download
PersonaEngine-<version>-win-x64.zipfrom Releases. - Extract somewhere with ≥ 16 GB free. Models land in a
Resources/folder next to the exe. - Double-click
PersonaEngine.exeand pick an install profile when prompted. Models and the NVIDIA runtime are downloaded, hash-verified, and installed automatically.
Re-run the picker
PersonaEngine.exe --reinstall
<details>
<summary><b>Other CLI flags</b></summary>
| Flag | Purpose |
|------|---------|
| --profile=try\|stream\|build | Skip the picker and use the named profile |
| --repair | Re-download anything that fails hash verification |
| --verify | Re-hash installed assets and report mismatches (no downloads) |
| --offline | Refuse to touch the network — fail fast if assets are missing |
| --non-interactive | Treat any prompt as fatal (pair with --profile=…) |
| --skip-gpu-check | Bypass the GPU capability gate (not recommended) |
The asset directory layout changed when the in-app installer landed. Existing Resources/Models/ and Resources/Live2D/Avatars/ trees from older builds are ignored — the installer re-downloads into the new locations on first launch. Free up ~16 GB before starting; delete the old folders once the bootstrapper finishes.
<a id="profiles"></a>Install profiles
<div align="center">| | Try it out | Stream with it | Build with it | | --- | :---: | :---: | :---: | | Best for | First look, small downloads | Everyday streaming | Production, highest quality | | Listening (Whisper) | Tiny | Small | Large-v3 Turbo | | Voice (TTS) | Kokoro | Kokoro | Kokoro + Qwen3 expressive | | Lip-sync | VBridger | VBridger | VBridger + Audio2Face | | Approx. download | Smallest | Mid | Largest (≈ 16 GB) |
</div>[!TIP] Picked Build-with-it? You still have to flip the switches. The profile downloads the bigger models, but the UI defaults keep the light ones active until you toggle them:
- Voice panel → set mode to Expressive (Qwen3)
- Listening panel → pick the Accurate Whisper template
- Avatar panel → enable Audio2Face lip-sync
Full walkthrough in INSTALLATION.md.
<a id="screenshots"></a>Screenshots
<div align="center"> <table> <tr> <td align="center"> <img src="./assets/dashboard.png" alt="Dashboard with presence strip" width="440"><br> <sub><b>Dashboard</b> — presence strip, LLM probe, quick toggles.</sub> </td> <td align="center"> <img src="./assets/voice.png" alt="Voice panel" width="440"><br> <sub><b>Voice</b> — Clear / Expressive modes, RVC, audition.</sub> </td> </tr> <tr> <td align="center"> <img src="./assets/listening.png" alt="Listening panel" width="440"><br> <sub><b>Listening</b> — Whisper template chips, VAD tuning.</sub> </td> <td align="center"> <img src="./assets/avatar.png" alt="Avatar & lip-sync panel" width="440"><br> <sub><b>Avatar</b> — VBridger / Audio2Face lip-sync, emotions.</sub> </td> </tr> <tr> <td align="center" colspan="2"> <img src="./assets/overlay.png" alt="Transparent overlay on desktop" width="560"><br> <sub><b>Overlay</b> — transparent, always-on-top, drag to reposition.</sub> </td> </tr> </table> </div><a id="features"></a>Features
<div align="center"> <img src="assets/mascot_wand.png" width="140" alt="Mascot with wand"> </div> <table> <tr> <td width="50%" valign="top"> <h4>Live2D avatar</h4> Real-time rendering with emotion-driven motions and VBridger lip-sync. Includes the rigged Aria model; custom models supported. </td> <td width="50%" valign="top"> <h4>LLM conversation</h4> Any OpenAI-compatible endpoint (local or cloud). Personality driven by <code>personality.txt</code>, with a built-in connection probe. </td> </tr> <tr> <td valign="top"> <h4>Voice in (ASR)</h4> Dual-Whisper pipeline via Silero VAD: a fast model for barge-in detection, a large model for accurate transcription. </td> <td valign="top"> <h4>Voice out (TTS)</h4> Two engines: <b>Kokoro</b> (clear, fast) and <b>Qwen3</b> (expressive). Optional real-time RVC voice cloning on top. </td> </tr> <tr> <td valign="top"> <h4>Lip-sync</h4> VBridger by default, or the higher-fidelity <b>Audio2Face</b> solver for Build-with-it setups. </td> <td valign="top"> <h4>Built-in overlay</h4> Transparent, always-on-top window that mirrors the avatar. No OBS needed for desktop use. </td> </tr> <tr> <td valign="top"> <h4>OBS-ready output</h4> Dedicated Spout streams for avatar, subtitles, and roulette — no window capture required. </td> <td valign="top"> <h4>Control panel</h4> Dashboard, per-subsystem panels, live metrics (LLM / TTS / audio latency), conversation viewer, theming. </td> </tr> <tr> <td valign="top"> <h4>In-app installer</h4> Profile picker, SHA-256 verification, repair and verify modes. Ships CUDA 12.4 + cuDNN 9.1.1 + CUDA 13 redists. </td> <td valign="top"> <h4>Extras</h4> Subtitle rendering, interactive roulette wheel, experimental screen awareness, keyword + ML profanity filtering. </td> </tr> </table><a id="architecture"></a>How it works
A single turn flows through these stages:
- Listen — microphone audio, Silero VAD picks out speech.
- Understand — fast Whisper watches for barge-in; accurate Whisper transcribes the final utterance.
- Contextualize (optional) — Vision module reads text from a chosen window.
- Think — transcription + history + context +
personality.txtgo to the LLM. - Respond — LLM streams text, optionally tagged with emotions like
[EMOTION:😊]. - Filter (optional) — keyword + ML profanity pass.
- Speak — TTS (Kokoro or Qwen3) synthesize
Related Skills
gortex
1.1kHigh-performance code-intelligence engine for AI agents and IDE, supports 257 languages, multi repositories, based on graph, with access via CLI, MCP Server, and API. AI coding agents teammate - expose only needed information, cutting token usage up to 50x. 100% local.
techrogue
TechRogue – Roguelike technical quiz for engineers. Usage: /techrogue | /techrogue build | /techrogue settings
cc-switch
125.5kA cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io
cc-switch
125.6kA cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io
