Skip to main content

Overview

The moorcheh-edge voice commands run speech-to-text (Whisper), text-to-speech (Piper), and a voice RAG loop on the same machine as Moorcheh Edge - for example an Arduino UNO Q with a USB mic and speaker.
Voice commands require Linux with ALSA audio. They are not supported on Windows or macOS. On a PC demo, use browser-based voice in your app instead.

Prerequisites

  1. Moorcheh Edge running with RAG: moorcheh-edge up --with-llm --warm-llm -y
  2. One-time voice setup: moorcheh-edge voice setup
  3. Optional: moorcheh-edge voice cache-holding for kiosk welcome audio

Command groups

CommandPurpose
setupInstall Whisper, Piper, whisper.cpp, and audio deps
cache-holdingPre-generate the fixed kiosk holding WAV
checkList ALSA devices and probe mic/speaker
listenRecord from mic and print transcribed text
speakSynthesize and play text on the speaker
transcribeTranscribe an existing WAV file
askRecord → RAG answer → speak (local kiosk loop)
serveHTTP server on :8766 for remote UIs (mic/speaker on device)

Typical workflow (UNO Q)

source ~/moorcheh-venv/bin/activate
moorcheh-edge up --with-llm --warm-llm -y
moorcheh-edge voice setup
moorcheh-edge voice cache-holding
moorcheh-edge voice check
Terminal 1 - Moorcheh Edge (already running from up). Terminal 2 - voice HTTP server for a remote display PC:
moorcheh-edge voice serve --port 8766
Or test locally without HTTP:
moorcheh-edge voice ask --kiosk-mode --query "What are your hours?"

HTTP API

When you run voice serve, the CLI starts a small HTTP server (default http://0.0.0.0:8766) documented in Voice server API.