Darkatse/TauriTavern
The classic Sillytavern, now has been rewritten in Tauri/Rust.
TauriTavern – A native desktop & mobile client for SillyTavern
What it is – TauriTavern bundles the SillyTavern web UI (a popular front‑end for chat‑based AI agents) inside a Tauri v2 application. The Node.js backend of the original project is rewritten in Rust, so the whole stack runs as a true native program – no Node runtime, no command‑line setup, just install‑and‑run.
Why it matters – It lets you keep all the SillyTavern features (character cards, chat history, world‑books, extensions) while gaining:
- Cross‑platform native binaries for Windows, macOS, Linux, Android and iOS.
- Local‑only data storage (or portable mode) for full privacy.
- Built‑in Git‑style extension manager and a LAN‑encrypted sync system (TT‑Sync v2) for moving data between devices.
- An Agent framework that supports tool‑calling, skills and sub‑agents, exposed through the optional Tauri Pilot debugging plugin.
Key Features (as listed in the README)
- Full‑platform native app – one code base runs on desktop and mobile.
- Exact SillyTavern UI compatibility – front‑end synced to upstream v1.18.0, same file layout.
- Native extension ecosystem – install, update and switch branches from the UI (Node‑only plugins are not supported).
- Multi‑device sync – LAN encrypted pairing or cloud‑backed TT‑Sync v2.
- Agent framework – tool calls, skills, child agents, runtime timelines (still evolving).
- One‑click migration – export script from SillyTavern + in‑app import.
- Performance engineering – staged start‑up and virtual‑DOM chat rendering keep long histories smooth.
- Data autonomy – everything stored locally; portable mode works without installation.
Supported Platforms
| Platform | Install method |
|---|---|
| Windows | Installer, Scoop bucket, portable zip (requires WebView2) |
| macOS | Homebrew Cask |
| Linux | AUR (tauritavern-bin), script (install‑linux.sh), Nix, Flatpak |
| Android | Direct APK from the download page |
| iOS | TestFlight (iOS 16+) |
Quick Installation (stable channel)
# Linux (any distro)
curl -fsSL https://raw.githubusercontent.com/Darkatse/TauriTavern/main/scripts/install-linux.sh | sh
# macOS via Homebrew
brew install --cask tauritavern
# Windows via Scoop
scoop bucket add Darkatse https://github.com/Darkatse/Scoop-Darkatse.git
scoop install Darkatse/TauriTavern
Canary builds (daily) are available for users who want the newest features; they are installed the same way but with the --channel canary flag.
Architecture Overview
- Rust backend – a clean‑architecture Cargo workspace (
src-tauri/crates/) split into:tauritavern– Tauri host and command layertt-application,tt-ports,tt-domain,tt-contracts– use‑cases, ports, domain models, cross‑crate contractstt-adapter-*– concrete adapters for storage, HTTP, media, sync, extensions, tokenisation, etc.
- Frontend – the upstream SillyTavern UI plus a Tauri injection layer (
src/tauri/main/). Communication happens through a globalwindow.__TAURITAVERN__ABI. - Optional tooling – Tauri Pilot plugin enables AI agents to drive the UI via accessibility snapshots (used for debugging agents, not enabled in normal releases).
Development Quick‑Start
git clone https://github.com/Darkatse/TauriTavern.git
cd TauriTavern
pnpm install # installs JS deps & Tauri CLI
pnpm run tauri:dev # launch desktop dev mode
pnpm run tauri:build # produce release binaries
Additional scripts exist for Android/iOS dev, portable builds, and the FasTools toolbox.
License & Community
- License: AGPL‑3.0 (same as SillyTavern). The code is fully open‑source.
- Community: Telegram group, Discord server, GitHub issues, and a contributors list displayed via
contrib.rocks. - Contributing: Follow
CONTRIBUTING.md; PRs target thedevbranch unless they are urgent fixes.
Bottom line
TauriTavern gives AI‑enthusiasts a native, privacy‑first client for the SillyTavern chat platform, with multi‑device sync, an emerging agent framework, and a modern Rust/Tauri code base that can be extended or compiled for any major desktop or mobile OS.
Related
- Project
- Project
- Project
- Project
- Project