Skip to content
yw0namPublic

About

Desktop VRM companion that gives any OpenAI-compatible agent backend a body, voice, and presence.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

16 stars

Watchers

0 watching

Forks

Latest commit

 

History

968 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

YUI

Make your own waifu live on your desktop.

Not a chatbot in a tab. A character who is actually there — standing on your window, watching the cursor, talking when she has something to say.

License: PolyForm Noncommercial 1.0.0 Docs Discussions CI

Quickstart · Demo video · Docs · Discussions · 日本語

YUI — a VRM character standing over a browser window as a transparent, always-on-top overlay: her head and eyes follow the mouse cursor, then she answers a typed question about what is on screen in a speech bubble

  • She lives on your desktop. A VRM character of your choice stands on top of your windows, follows the cursor with her eyes, and walks, sits, and jumps between them.
  • You choose her brain. A local model, a hosted API, or your own agent: whatever you plug in thinks for her, so her smarts and personality are up to you.
  • She speaks first, with restraint. She greets you, checks in when you go quiet, and notices what you are doing, then stays silent when there is nothing worth saying.

Named after Yui from* Sword Art Online*: an AI who stopped being a program and became someone you come home to.

Quickstart

You need a Mac with Apple Silicon or a Windows x64 PC, a coding agent (Claude Code, Codex, OpenCode, Cursor), and a chat model: an OpenAI or Groq API key, or Ollama or LM Studio running locally.

  1. Paste this into your coding agent:

    Install https://github.com/yw0nam/YUI following https://raw.githubusercontent.com/yw0nam/YUI/main/docs/guide/install.md
    

    It installs what YUI needs, connects your chat model, and checks that it works, asking you only for what it cannot find, such as an API key.

  2. Ask the agent to start her (pnpm tauri dev), or run that yourself in the YUI folder. The first start takes a few minutes, then she appears on your screen.

  3. Press / (or Cmd/Ctrl+Shift+Y) and say hello.

To talk by voice, also set up speech recognition and a voice in Settings → Connection (right-click her to open Settings). You can change the chat model there too. OpenAI, Ollama, LM Studio, and Groq use the Chat Completions format, which needs a model with tool-calling support: for example gpt-5-mini on OpenAI, qwen3 on Ollama, or llama-3.3-70b-versatile on Groq.

What she does

She lives on your windows

YUI walking along the bottom of the screen, climbing the side of the screen, jumping onto a window top and sitting on its edge, and falling to the floor after being dropped in mid-air

She perches on a window top, peeks around a side edge, strolls the floor and window tops, and jumps between windows. Drop her in mid-air and she falls to the first surface below and lands.

She reacts with her face, body, and voice

YUI laughing with a hand over her mouth and her eyes closed in a happy expression, above a speech bubble that reads: The build passed. Want me to open the pull request for review?

Her brain picks an expression, a gesture, and a tone of voice for each reply, so she laughs, sulks, or gets embarrassed instead of only printing text. Her mouth moves with her speech, and she reacts when you tap or pat her.

She speaks first, with restraint

The Proactive settings tab: screen watch, loop reactions after 5, 10, and 30 minutes of inactivity, scheduled greetings at 09:00, 12:00, 18:00, and 23:00, a 10-minute proactive gap, and hourly limits of 24 cues and 40 self-started turns

She greets you at set times, checks in after you have been idle, and, if you turn it on, notices when you switch apps. You set how often she may speak up on her own, and she says nothing when nothing is worth saying.

And more: your own VRM model, voice chat you can interrupt, image attachments, a chat history, English, Japanese, and Korean UI, and tools your agent can use on your computer. See the full feature list.

How it works

YUI is the body; the model or agent you plug in is the brain. YUI notices what happens (you sending a message, going idle, switching apps) and passes it to the brain, which decides whether and what to say. YUI then gives that answer a face, a voice, and a gesture.

Bring your own brain

YUI ships no model of its own. Pick each provider in Settings → Connection.

Providers
Chat OpenAI · Ollama · LM Studio · Groq · Hermes Agent · any OpenAI-compatible endpoint
Voice (TTS) Irodori (Japanese) · OpenAI · Fish Audio
Speech recognition Any OpenAI-compatible transcription endpoint · Groq
Provider details

Chat

Provider Protocol (chat_api) Hosting Example model
OpenAI chat_completions Hosted, API key gpt-5-mini
Ollama chat_completions Local qwen3
LM Studio chat_completions Local Any tool-calling model
Groq chat_completions Hosted, API key llama-3.3-70b-versatile
Hermes Agent push, responses Self-hosted The model the agent runs
Custom endpoint chat_completions, responses, push Any server that speaks the protocol Tool-calling model on chat_completions

TTS

Provider Hosting Default model Voices
Irodori Self-hosted irodori-tts The server's voices and imported reference clips, Japanese only
OpenAI Hosted, API key gpt-4o-mini-tts 13 built-in voices
Fish Audio Hosted, API key s2.1-pro-free Your account's voice models, imported clips, and any library voice id

STT

Provider Hosting Setup
Any OpenAI-compatible transcription endpoint (/audio/transcriptions) Local or hosted stt_base_url
Groq Hosted, API key stt_base_url and stt_model, for example whisper-large-v3-turbo

The connection guide covers each setup. Missing a provider? Ask in Discussions or send a PR.

Known limitations

  • Supported on macOS with Apple Silicon and Windows x64. Intel Macs and Linux are not officially supported.
  • Installing with a coding agent is the only supported path for now; the installers on the Releases page are early and unsigned.
  • Climbing up window sides and onto the monitor above is marked as in development in the app.
  • Irodori TTS speaks Japanese only.

Documentation

Using YUI

Developing YUI

Community

  • Questions, ideas, and show-and-tell: GitHub Discussions
  • Bugs and feature requests: open an issue
  • If YUI made your desktop a little warmer, a ⭐ helps others find her.

Credits

Motions come from Mate Engine by Shiny, necocoya's EmoteSet_Free_v130, and Mixamo. The default character is Sendagaya Shino by pixiv Inc., converted to VRM 1.0 by Coatie.

Full asset credits and terms

The motion assets (public/motions/*.vrma) come from three sources.

Most clips are extracted from the Mate Engine project by Shiny, used under Mate Engine's non-commercial terms: free for personal, study, and non-revenue use with attribution to Shiny; commercial use requires separate permission from Shiny.

The sulk clip (suneru.vrma) is from necocoya's EmoteSet_Free_v130 (Unity Humanoid 06_suneru, 拗ね = sulk/pout), attribution to necocoya. Modification, conversion, and bundling-with-credit are permitted; standalone resale of the raw file is prohibited.

The locomotion clips walk, jump, falling, landing, the climb set (climb_up, climb_up_done, climb_down, climb_down_landing), sit_down and stand_up are from Mixamo, royalty-free under the Mixamo terms.

The bundled default VRM model (resources/vrms/Sendagaya_Shino.vrm) is Sendagaya Shino, originally by pixiv Inc. (VRoid Project, CC0), converted to VRM 1.0 by Coatie. Neither license requires attribution — see resources/vrms/Sendagaya_Shino.PROVENANCE.md for the full notice.

License

YUI is source-available. Its source code is licensed under the PolyForm Noncommercial License 1.0.0 — free for noncommercial use, modification, and redistribution with attribution. Commercial use requires permission from the author (https://github.com/yw0nam).

The bundled motion assets (public/motions/*.vrma) are not covered by this license; each follows its original author's terms — see Credits above.

About

Desktop VRM companion that gives any OpenAI-compatible agent backend a body, voice, and presence.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

16 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages