Install

No Rust and no Node needed to run it — the installer pulls a prebuilt binary sized for your OS and architecture, verifies its SHA-256, and puts it on your PATH.

Quick install (recommended)

curl -fsSL https://raw.githubusercontent.com/nio-labs/nio-de/main/install.sh | bash

Re-running the same command upgrades you to the newest version. Prefer reading scripts before piping them into a shell? Also reasonable:

curl -fsSL https://raw.githubusercontent.com/nio-labs/nio-de/main/install.sh -o install.sh
less install.sh
bash install.sh

Run with npm

With Node.js installed, start the server without a global installation:

npx @nio-labs/nio-de

Or install the server and NioAI CLI globally:

npm install -g @nio-labs/nio-de @nio-labs/nio-ai
nio-de

The commands are nio-de for the server and nio for NioAI. The server installers automatically install NioAI if it is missing.

Options

Command / envEffect
VERSION=0.5.2 bash install.shPin a specific version
bash install.sh --dry-runPrint what would happen, change nothing
bash install.sh --forceReinstall even when the version matches
NIO_DE_INSTALL_DIR=…Install directory (default ~/.local/bin, or /usr/local/bin when run as root)

Supported platforms

OSArchitectureNotes
Linuxx86_64, aarch64aarch64 targets Raspberry Pi / ARM servers
macOSx86_64, aarch64Apple Silicon supported
Windowsx86_64binary: nio-de-windows-x86_64.exe
Android (Termux)aarch64native binary; see Termux section below

Run in a GitHub Codespace

The smoothest path: a full Linux box, free within your monthly quota, with port forwarding that hands you a wss:// URL automatically.

  1. Create a Codespace and open its terminal (any repo works, even a blank one).
  2. Install & start. Run the curl install then nio-de.
  3. Forward port 1421. Codespaces suggests it; copy the wss://…app.github.dev URL.
  4. Pair the app. Set Server URL to that wss:// and enter the pairing code.
Codespace machines pause when idle — restart the server after it wakes (nio-de prints a fresh pairing code each time).

Termux (Android)

nio-de is a native binary and runs on aarch64 devices — Termux works. For better performance with Nio chat, run it inside an AndroNix proot (Ubuntu CLI only) instead (a full Linux distro with a real glibc + Node.js toolchain); avoid third-party “Proot Distro” installers, which are slower and less reliable.

Manual & from source

Manual (checksum verified)

curl -fLO https://github.com/nio-labs/nio-de/releases/latest/download/nio-de-linux-x86_64
curl -fLO https://github.com/nio-labs/nio-de/releases/latest/download/SHA256SUMS
sha256sum -c SHA256SUMS --ignore-missing
chmod +x nio-de-linux-x86_64
sudo mv nio-de-linux-x86_64 /usr/local/bin/nio-de
nio-de --version

Build from source

git clone https://github.com/nio-labs/nio-de
cd nio-de
cargo build --release --locked
./target/release/nio-de

Requires a Rust toolchain. Release builds use LTO + stripping (opt-level=s, strip=true). The source is MIT licensed.

Run it

nio-de

On startup it prints a fresh pairing code plus a scannable ASCII QR, and listens on 0.0.0.0:1421.

Options

Flag / envEffect
(none)Pairing (default). One-time XXXX-XXXX code + QR.
--token <value> or NIO_DE_TOKEN=…Fixed token that survives restarts.
--no-authAccept unauthenticated connections. Development / CI only.
NIO_DE_WS_ADDR=0.0.0.0:1421Bind address and port.