Getting Started

Go from zero to running local AI in under five minutes.

TTS Server

Local Text-to-Speech. Real-time audio synthesis via HTTP API.

STT Server

Local Speech-to-Text. Streaming transcription via HTTP API.

Agents SDK

C++ framework for agentic AI. Autonomous voice agents, orchestration, and more.

Prerequisites

Supported Platforms

  • macOS Apple Silicon (arm64)
  • Linux x64 (Ubuntu 22.04+)
  • Linux ARM64 (Jetson, RPi 5)

What You Need

Quick Install (Recommended)

The installer downloads pre-built binaries and default models for your platform, verifies SHA-256 checksums, and generates launcher scripts.

curl -fsSL https://get.runedge.ai/install.sh | bash -s -- --api-key <YOUR_KEY>

Replace YOUR_KEY with the API key from your dashboard.

Installer Options

FlagDefaultDescription
--api-key <key>noneAPI key stored for auto-authentication later
--products <list>allComma-separated: tts, stt, agents-sdk
--skip-modelsfalseSkip downloading AI models (binaries only)
--servicesfalseInstall as launchd (macOS) or systemd (Linux) services
--dir <path>~/.edgeaiCustom install directory

Examples:

# Install only TTS
curl -fsSL https://get.runedge.ai/install.sh | bash -s -- \
  --api-key <YOUR_KEY> --products tts
# Install TTS + STT and register as system services
curl -fsSL https://get.runedge.ai/install.sh | bash -s -- \
  --api-key <YOUR_KEY> --products tts,stt --services

Running Your First Request

1

Start the TTS server

~/.edgeai/bin/edgeai-tts

Starts the server on port 9999 with the default English voice model.

2

Synthesize speech

curl -X POST http://localhost:9999/synthesize \
  -H "Authorization: Bearer <YOUR_KEY>" \
  -H "Content-Type: application/json" \
  -d '{"text": "Hello from EdgeAI!"}' \
  --output hello.wav

Returns a WAV audio file. The first request may take a moment while the model loads.

3

Play it

# macOS
afplay hello.wav

# Linux
aplay hello.wav

API Endpoints

POST
/synthesizeConvert text to audio (WAV)
GET
/healthServer health check
GET
/metricsPrometheus metrics (no auth required)

Running as a Background Service

Pass --services during installation to register TTS and STT as system services that start on boot.

macOS (launchd)

# Check status
launchctl list | grep runedge

# Stop TTS
launchctl unload ~/Library/LaunchAgents/ai.runedge.tts.plist

# Restart TTS
launchctl load ~/Library/LaunchAgents/ai.runedge.tts.plist

# View logs
tail -f ~/.edgeai/logs/tts.log

Linux (systemd)

# Check status
systemctl --user status edgeai-tts edgeai-stt

# Stop TTS
systemctl --user stop edgeai-tts

# Restart TTS
systemctl --user restart edgeai-tts

# View logs
journalctl --user -u edgeai-tts -f

Troubleshooting

"Permission denied" when running the installer

Make sure to pipe through bash: curl ... | bash -s -- --api-key KEY. If downloading manually, run chmod +x install.sh first.

"Model not found" when starting TTS or STT

Models are downloaded separately from binaries. Re-run the installer without --skip-models, or download models manually from the dashboard.

"Connection refused" on port 9999 or 8888

The server may still be loading models. Wait a few seconds and retry. Check logs for errors with: tail -f ~/.edgeai/logs/tts.log

Linux: "libportaudio.so.2: cannot open shared object"

Install the PortAudio runtime: sudo apt-get install libportaudio2

Linux: "libopenblas.so.0: cannot open shared object"

Install OpenBLAS runtime: sudo apt-get install libopenblas0

Next Steps