// Get started

Up and running in a few commands.

Install with a single command on Linux — or, any time you want full control, the manual path below takes about five minutes.

Linux quick install

$ curl -fsSL https://kenzy.ai/install.sh | bash

// installs Kenzy from PyPI into a per-user virtualenv, scaffolds your config home, and sets up systemd user services. It asks what to install (a room node, the server stack, or everything). When it finishes, open the dashboard at http://<server>:8770 — rooms, keys, and settings are all manageable from there. Prefer to do it by hand? Use the manual setup below.

Runtime

Python 3.11+

The whole stack runs on modern Python. A virtualenv keeps it tidy.

On a Pi / Debian

PortAudio

sudo apt-get install libportaudio2 portaudio19-dev for the room node's audio.

Optional keys

Bring your own

OpenAI for hosted TTS/LLM, Home Assistant for smart-home control. Go fully local and you need neither.

01 Manual setup

Install the pieces you need.

Every service is an optional extra. Put the lightweight node on each room device and the rest on a server — or install everything on one box to start.

Step 1 · Virtualenv

Create a clean environment

$ python3 -m venv ~/.venvs/kenzy
$ source ~/.venvs/kenzy/bin/activate

Step 2 · Install from PyPI

Pick your extras

# a room node only
$ pip install "kenzy[node]"

# the full server stack
$ pip install "kenzy[server,stt,tts,llm,speaker]"

Working from source instead? Clone the repo and pip install -e ".[…]".

Step 3 · Models

Download once

# wake-word + speaker-ID models
$ kenzy-setup

Fetches the openWakeWord and SpeechBrain models — needed on node and speaker installs.

Step 4 · Configure

Scaffold & edit

$ kenzy-init # creates ~/.config/kenzy
# edit ~/.config/kenzy/.env
# and ~/.config/kenzy/configs/*.yaml

kenzy-init drops default configs and a .env into your config home — point the LLM at a local or cloud model and add any keys.

02 Run it

Start the services.

Each service reads its settings from your config home (~/.config/kenzy). Start the server first — the node finds it automatically over your network.

  the stack
$ kenzy-server      # WebSocket hub + orchestrator
$ kenzy-stt         # speech-to-text
$ kenzy-llm         # LLM + skills
$ kenzy-tts         # text-to-speech
$ kenzy-speaker     # speaker identification
$ kenzy-node        # on each room device

// useful helpers: kenzy-enroll (add a speaker) · kenzy-devices (find your mic)

03 · GO FURTHER

Deploy across the house

Once one node works, roll out the rest with kenzy-deploy — it installs Kenzy, writes systemd units, and manages services across every host over SSH.

  • SSH key auth + passwordless sudo on each host
  • init → install → upgrade
  configs/deploy.yaml
$ kenzy-deploy init
$ kenzy-deploy install
$ kenzy-deploy upgrade

// Need the details?

The docs have every step.

Full configuration reference, the skill-writing guide, speaker enrollment, and deployment — all documented.