OpenViSTAI · Agents · Blockchain · Crypto
Menu
Voice Agents

StreamCore

StreamCore is an open-source Go server that provides realtime media transport and streaming speech infrastructure for custom voice agents. It connects WebRTC, SIP, mobile, backend, CLI and ESP32 endpoints to STT, LLM and TTS pipelines, while handling session state, NAT traversal, adaptive turn-taking, interruption and realtime events.

Independent OpenViST project profile, based on linked sources.

StreamCore — OpenViST project profile in Voice Agents.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use StreamCore when the application needs a custom agent behind a realtime voice interface and the team wants the server to handle media transport, turn-taking, streaming speech and session events.

Who it is for

  • Developers building realtime voice agents
  • Teams that need WebRTC media and streaming speech infrastructure around their own agent logic
  • Builders connecting voice agents to browsers, phones or embedded ESP32 devices
  • Developers exploring local voice-agent operation

Documented uses

  • Transport live audio between clients and an AI agent over WebRTC
  • Run streaming STT, LLM and TTS stages with interruption handling
  • Connect voice agents to SIP telephony or ESP32 endpoints
  • Maintain session state and expose realtime conversation events
  • Provide a local voice pipeline using the named Ollama and VibeVoice path
Before you choose

Requirements & limits

The server is available as an open-source Apache-2.0 Go repository. The documented quick start supports Go 1.25 or Docker; provider API keys are required for the hosted STT, LLM and TTS path, while the repository identifies Ollama and VibeVoice for a fully local path.

  • The project is infrastructure rather than a complete agent: prompts, tools, models and business logic remain with the builder.
  • WebRTC transport uses WHIP and includes built-in Pion STUN/TURN support over UDP and TCP 3478.
  • Adaptive VAD, pause debouncing and barge-in address turn-taking and interruptions in live conversations.
  • The repository identifies browser, mobile, backend, CLI, SIP and ESP32 endpoints.
  • The documented local mode may reduce reliance on hosted speech and model services, but the supplied quick start does not specify every local component.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Set up a browser voice-agent server

Start the documented StreamCore server and connect the TypeScript example client locally.

Before you start

  • Go 1.25 or Docker
  • API keys for an STT provider, LLM provider and TTS provider, or the documented Ollama and VibeVoice local path
  • The StreamCore repository and its TypeScript examples

Steps

  1. Copy config.toml.example to config.toml and add the provider credentials.

  2. Run the Go server with go run .

  3. Clone the examples repository, enter examples/typescript, install its dependencies and start the development client.

  4. Open the local client at http://localhost:3000 and connect it to the server's documented local WHIP endpoint at http://localhost:8080/whip.

Expected outcome

A locally running browser client can connect to the StreamCore server for a realtime voice-agent conversation.

Guide limitations

  • The supplied quick-start text does not document production deployment configuration.
  • The agent logic and provider configuration remain the application's responsibility.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
3 October 2026
Original website title
streamcoreai/streamcore-server · Official homepage title · retained in its source language