Skip to main content

Platform & Availability

OpenHuman is a native desktop application built with React + Tauri v2, paired with a Rust core that is small, fast, and doesn't disrupt your workflow.

Supported Platforms

PlatformArchitectureDistribution
macOSIntel, Apple Silicon.dmg installer, Homebrew
Windowsx64, ARM64.msi installer
Linuxx64AppImage, .deb, AUR package (openhuman-bin)

Linux AppImage Note

The Linux AppImage is built for x64 desktops and may fail to launch on newer distributions with stricter unprivileged user namespaces or AppArmor defaults enabled. Common symptoms:

  • unlink: write failed /proc/self/uid_map: Operation not permitted
  • Interpreter not found!
  • cannot execute binary file

When this occurs, prefer the .deb package on Debian/Ubuntu systems.

Why Native App

OpenHuman chose native desktop over web wrapper for three reasons:

Small size. Much smaller than typical communication tools. Starts in under a second with minimal memory footprint.

Fast startup. No need to initialize a browser engine. Immediately ready to accept requests.

System-level security. Credentials are stored in the platform keychain — macOS Keychain, Windows Credential Manager, Linux Secret Service. Sensitive data is never stored in browser storage or plaintext files.

System Architecture Overview

┌──────────────────────────────────────────────────┐
│ Tauri shell - window management, system integration │
└──────────────────────────────────────────────────┘
│ JSON-RPC ↕
┌──────────────────────────────────────────────────┐
│ Rust core (`openhuman` sidecar) │
│ • Memory tree, integrations, auto-fetch │
│ • Model routing, TokenJuice, native tools │
│ • Voice (STT input, TTS output, meeting assistant) │
└──────────────────────────────────────────────────┘

┌──────────────────────────────────────────────────┐
│ React frontend - interface, navigation │
└──────────────────────────────────────────────────┘

The shell is the delivery vehicle (windowing, process lifecycle, IPC). All product logic lives in the Rust core. The React frontend communicates with the core via JSON-RPC.

Remote/Headless Usage

Linux servers can host the Rust core without a desktop session. The production form is a remote openhuman-core JSON-RPC service, plus a local desktop client configured with that core's URL and bearer token.

A private browser UI can be implemented via the Vite frontend dev/preview server, but desktop-only features (system tray, native deep links, CEF account scanning, system keychain access, window/screen integration) still require the Tauri app.

Real-time Communication

The desktop app maintains a persistent connection to the OpenHuman backend. Responses stream as they're generated; output is displayed progressively rather than waiting for completion.

Offline Behavior

Your local state is saved on device. Preferences, configuration, and connection source configuration remain available offline. The memory tree is fully accessible; you can browse your Obsidian vault and read existing notes without network connectivity.

Auto-fetch and real-time LLM calls require network. After network recovery, the next 20-minute tick resumes from where it left off.

Auto Updates

The desktop shell auto-updates via Tauri's updater plugin against a manifest published on GitHub Releases. The OpenHuman core sidecar is bundled in the same package, so shell updates upgrade both simultaneously.

Next Steps