Persona is a cross-platform desktop application that gives real-time voice conversations a visual identity by displaying an expressive 3D character that reacts to audio output from other applications.

Stars

410

7-day growth

No data

Forks

36

Open issues

0

License

NOASSERTION

Last updated

2026-07-28

AI repository intelligence
FR-AI / ANALYSIS

Why it is worth attention

It combines a privacy-first design (no microphone, no network) with per-process audio capture and a rich character animation system, all in an open-source MIT-licensed package that runs on Linux, Windows, and macOS.

Who it is for

  • Developers building voice-interactive desktop applications
  • Streamers and content creators wanting a reactive mascot
  • Users who prefer a visual companion during voice calls or focused work
  • Hobbyists exploring real-time 3D character rendering from system audio

Use cases

  • Visualizing voice assistant responses with a character on screen
  • Adding a reactive avatar to live streams or video calls
  • Creating an ambient, non-intrusive desktop companion for productivity
  • Developing and testing custom VRM/VRMA character integrations

Strengths

  • Cross-platform builds for Linux, Windows, and macOS with native audio capture
  • Privacy-focused: no microphone access, no audio recording, and no network transmission
  • Supports multiple expressive animations (idle, talk, greet, celebrate, dance) via VRMA files
  • Open source under MIT License with a clear asset replacement workflow for redistribution

Considerations

  • Requires Node.js 24+, hardware-accelerated graphics, and specific OS versions (Windows 20348+, macOS 14.2+)
  • Character media is not included and must be replaced before publishing; distribution requires careful license management
  • Window has no built-in controls (close/minimize must be done via window manager) and only captures audio playback, not microphone input

README quick start

Persona

Persona brings an expressive character to realtime voice conversations.

It is a cross-platform desktop experience that gives voice interactions a recognizable visual identity alongside your work.

Platform support

PlatformAutomatic voice output listenerDistribution
LinuxPipeWire process-stream captureAppImage and DEB
WindowsWASAPI process-loopback captureNSIS installer
macOS 14.2+Core Audio process tapDMG and ZIP, arm64 and x64

Linux requires pw-dump and pw-record on PATH. Windows process-loopback requires Windows 10 build 20348 or newer. macOS asks once for System Audio Recording permission.

Each listener is scoped to the supported application's playback process. Persona does not capture the microphone, save audio, produce speech, transcribe content, or send audio over the network.

Try Persona locally

Requirements:

  • Node.js 24 or newer
  • npm
  • A desktop session with hardware-accelerated graphics

Character media is not part of the repository. Before launching, place local test media or redistributable media in the exact slots documented below.

npm install
npm run demo

Demo mode drives the production character view with a synthetic level. To run normal automatic detection:

npm run build
npm start

For a background launch:

npm start -- --background

The window intentionally contains no controls:

  • Scroll to zoom.
  • Left-drag to orbit.
  • Right-drag to pan.
  • Use your window manager's move gesture to reposition the window.

On Hyprland, Persona also applies floating, pinned, topmost, full-opacity, no-blur, no-shadow, and decoration-free properties. macOS uses an all-Spaces topmost window. Other desktops use the strongest supported Electron window hints.

Build native packages

Build on the operating system you are targeting:

npm run dist:linux
npm run dist:windows
npm run dist:mac

Outputs are written to release/. Windows needs Visual Studio Build Tools with the C++ desktop workload. macOS needs Xcode Command Line Tools and macOS 14.2+ SDK support.

GitHub Actions runs the full JavaScript, renderer, native compile, and native self-test suite on Linux, Windows, and macOS. Prerelease tags shaped like v0.1.0-beta.0 create native packages and a checksum file, but only after the asset release gate passes. See [Releas

Description

Bringing real-time voice to life.

Related repositories

Similar projects matched by category, topics, and programming language.

react
Featured
react GitHub avatar

react

React is a JavaScript library for building user interfaces with declarative, component-based, and cross-platform design.

Web DevelopmentFrontend Frameworks
246,741
tandpfun
Featured
tandpfun GitHub avatar

wardrobe

A GPT‑image powered app that extracts individual garment cutouts from photos, organizes them into a digital wardrobe, and generates modeled outfit previews.

JavaScript
1,570
mshumer
Featured
mshumer GitHub avatar

Claude-of-Duty

A browser-based first-person shooter built entirely with procedural generation and orchestrated AI agents, featuring 55k lines of Three.js/WebGL2 code and no art assets.

AI & Machine LearningAI Agents
1,234