Risuai is a cross-platform, open-source AI chat and roleplay client, written in TypeScript with Svelte and Tauri and licensed under GPL-3.0, for people who want to run character-driven conversations against the language model of their choice instead of a single vendor's locked-down chat window.
What it is
Risuai, or Risu for short, is a cross-platform AI chatting software and web application. It lives in the LLM front-end ecosystem: the layer of tools that sits between a user and a model API, holding the character definitions, prompt construction, chat history and presentation. The project is built as a web application first, packaged for the desktop through Tauri, and distributed both as a hosted site and as a self-hostable Docker image. The stack is modern and explicit in the README badges: Svelte 5, TypeScript 5.9, Tauri 2.5, Vite 8 and Tailwind CSS 4.
The concrete problem it solves is fragmentation of the chat interface. Model providers each ship their own narrow chat UI, and a roleplayer who wants to switch between OpenAI, Claude, Gemini, DeepInfra, Ooba and OpenRouter normally has to rebuild their character, memory and prompt scaffolding in each one. Risuai replaces that per-provider chat window with a single client that fronts many providers, keeps assets, lore and prompting rules in one place, and lets the user shape the output through regex scripts, prompting order and memory systems. It also acts as an MCP client, so external tool servers can be attached to a conversation.
Key capabilities
- Multiple API support across OpenAI, Claude, Gemini, DeepInfra, Ooba, OpenRouter and others from one client.
- Emotion Images: displays the image of the current character according to his or her expressions.
- Group Chats: multiple characters in one conversation.
- Regex Script: modifies the model's output by regex, which can be used to build a custom GUI and other transformations.
- Lorebook, also known as world infos or memory book, letting a character remember more than the context window alone allows.
- Long-term memory systems including HypaMemoryV2/V3 memory compression and SupaMemory for context management.
- Plugins for adding features and providers, plus TTS for turning output text into voice, and Additional Assets for embedding images, audio and video into a bot as chat or background content.
Who uses it and how
- Web hosters run the Docker image and reach the interface at
http://localhost:6001, which the README calls particularly useful for web hosting.
- Desktop users install the packaged build through the Risuai website or GitHub Releases, where Tauri provides the native shell around the same Svelte application.
- Writers and roleplayers who want a character to retain history across a long session lean on Lorebook, HypaMemoryV2/V3 and SupaMemory rather than re-priming the model by hand.
- Plugin and provider authors extend the client and share the results, since plugins are described as addable and simply shareable.
- Users working across languages combine the translator feature with any supported provider so they can roleplay without knowing the model's language.
Getting started
The README recommends the hosted option at the Risuai website, with GitHub Releases as the packaged alternative. For self-hosting, run curl -L https://raw.githubusercontent.com/kwaroran/Risuai/refs/heads/main/docker-compose.yml | docker compose -f - up -d and open http://localhost:6001; building from source needs Node.js 20.19+ or 22.12+ and pnpm.
How it compares
No list of paid products that Risuai replaces is provided in the facts, and no comparable open-source chat client is named either. On the evidence available, Risuai stands alone in this registry: it is indexed here on its own rather than as an alternative to another catalogued tool.
When to use it — and when not to
A self-hoster takes on running the Docker container and supplying their own credentials or compatible endpoint for whichever provider they choose, so anyone who wants a managed service with no setup should look elsewhere. The README points to a wiki that is explicitly marked Work in Progress, and the repository carries 160 open issues, so users who need complete documentation and a quiet tracker may find the project harder to adopt than its feature list suggests. The GPL-3.0 licence is clear, but anyone intending to build a closed derivative should read it before committing.