echokit_server

echokit_server

Open Source Voice Agent Platform

Stars: 293

Visit
 screenshot

Echokit_server is a lightweight and efficient server-side implementation of the Amazon Alexa Voice Service (AVS) SDK. It allows developers to easily integrate Alexa voice capabilities into their own applications or devices. The server handles the communication with the Alexa Voice Service API, manages user interactions, and processes voice commands. Echokit_server provides a simple and flexible solution for adding voice-controlled features to a wide range of projects, such as smart home devices, IoT applications, and voice-enabled services.

README:

Setup the EchoKit server

You will need an EchoKit device, or create your own ESP32 device with the EchoKit firmware.

Build

git clone https://github.com/second-state/echokit_server

Edit config.toml to customize the VAD, ASR, LLM, TTS services, as well as prompts and MCP servers. You can see many examples.

cargo build --release

Configure AI services

The config.toml can use any combination of open-source or proprietary AI services, as long as they offer OpenAI-compatible API endpoints. Here are instructions to start open source AI servers for the EchoKit server.

Alternatively, you could use Google Gemini Live services for VAD + ASR + LLM, and even optionally, TTS. See config.toml examples.

You can also configure MCP servers to give the EchoKit server tool use capabilities.

Configure the voice prompt

The hello.wav file on the server is sent to the EchoKit device when it connects. It is the voice prompt the device will say to tell the user that it is ready.

Run the EchoKit server

export RUST_LOG=debug
nohup target/release/echokit_server &

Test on a web page

Go here: https://echokit.dev/chat/

Click on the link to save the index.html file to your local hard disk.

Double click the local index.html file and open it in your browser.

In the web page, set the URL to your own EchoKit server address, and start chatting!

Configure a new device

Go to web page: https://echokit.dev/setup/ and use Bluetooth to connect to the GAIA ESP332 device.

Bluetooth connection

Configure WiFi and server

  • WiFi SSID (e.g., MyHome)
  • WiFi password (e.g., MyPassword)
  • Web Socket server URL for echokit_server
    • US: ws://indie.echokit.dev/ws/
    • Asia: ws://hk.echokit.dev/ws/

Configure Wifi

Use the device

Chat: press the K0 button once or multiple times util the screen shows "Listening ...". You can now speak and it will answer.

Record: long press the K0 until the screen shows "Recording ...". You can now speak and the audio will be recorded on the server.

Config: press RST. While it is restarting, press and hold K0 to enter the configuration mode. Then open the configuration UI to connect to the device via BT.

For Tasks:

Click tags to check more tools for each tasks

For Jobs:

Alternative AI tools for echokit_server

Similar Open Source Tools

For similar tasks

For similar jobs