MCPcopy Index your code
hub / github.com/LingByte/SoulNexus

github.com/LingByte/SoulNexus @v1.0.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.0.0 ↗ · + Follow
9,971 symbols 30,497 edges 1,153 files 3,427 documented · 34%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

SoulNexus - Intelligent Voice Interaction Platform

LingEcho Logo

Intelligent Voice Interaction Platform - Giving AI a Real Voice

Go Version React TypeScript License Build Status Live Demo

English | 中文

🌐 Live Demo

Experience LingEcho online: https://lingecho.com


📖 Project Overview

LingEcho is an enterprise-grade intelligent voice interaction platform based on Go + React, providing a complete AI voice interaction solution. It integrates advanced speech recognition (ASR), text-to-speech (TTS), large language models (LLM), and real-time communication technologies, supporting real-time calls, voice cloning, knowledge base management, workflow automation, device management, alerting, billing, and other enterprise-level features.

✨ Core Features

  • AI Character Real-time Calls - Real-time voice calls with AI characters based on WebRTC technology, supporting high-quality audio transmission and low-latency interaction
  • Voice Cloning & Training - Support for custom voice training and cloning, allowing AI assistants to have exclusive voice characteristics for personalized voice experiences
  • Workflow Automation - Visual workflow designer with multiple trigger types (API, Event, Schedule, Webhook, Assistant), supporting complex business process automation
  • Knowledge Base Management - Powerful knowledge base management system supporting document storage, retrieval, and AI analysis, providing intelligent knowledge services
  • Application Integration - Quick integration of new applications through JS injection, API gateway, and key management, enabling seamless integration
  • Device Management - Complete device management system with OTA firmware updates, device monitoring, and remote control
  • Alert System - Comprehensive alerting system with rule-based monitoring, multi-channel notifications, and alert management
  • Billing System - Flexible billing and usage tracking system with detailed usage records, bill generation, and quota management
  • Organization Management - Multi-tenant organization management with group collaboration, member management, and resource sharing
  • Key Management & API Platform - Enterprise-level key management system and API development platform
  • VAD Voice Activity Detection - Standalone SileroVAD service supporting PCM and OPUS formats
  • Voiceprint Recognition Service - ModelScope-based voiceprint recognition service supporting speaker identification
  • ASR-TTS Service - Standalone ASR (Whisper) and TTS (edge-tts) service supporting speech recognition and text-to-speech synthesis
  • MCP Service - Model Context Protocol service supporting SSE and stdio transports
  • Hardware Device Support - Support for xiaozhi protocol hardware devices with complete WebSocket communication

Workflow Automation

Workflow Designer

Visual workflow designer with drag-and-drop interface

Voice Cloning

Voice Cloning

Voice cloning and training interface

Assistant Debug

Assistant Debug

AI assistant debugging and testing interface

JS Template Integration

JS Template

JavaScript template for application integration


🏗️ Technical Architecture

LingEcho Core Architecture

Service Architecture

Service Port Tech Stack Description
Main Service 7072 Go + Gin Core backend service with RESTful API and WebSocket support
VAD Service 7073 Python + FastAPI Voice activity detection service (SileroVAD)
Voiceprint Service 7074 Python + FastAPI Voiceprint recognition service (ModelScope)
ASR-TTS Service 7075 Python + FastAPI ASR (Whisper) and TTS (edge-tts) service
MCP Service 3001 Go Model Context Protocol service (SSE transport, optional)
Frontend Service 5173 React + Vite Development frontend (Vite dev server)

For detailed architecture documentation, see Architecture Documentation.


🚀 Quick Start

Requirements

  • Go >= 1.24.0
  • Node.js >= 18.0.0
  • npm >= 8.0.0 or pnpm >= 8.0.0
  • Git
  • Python >= 3.10 (for optional services: VAD, Voiceprint, ASR-TTS)
  • Docker & Docker Compose (for containerized deployment, recommended)

Installation Methods

Method 1: Docker Compose (Recommended)

The easiest way to get started with LingEcho is using Docker Compose:

docker run -d --name neo4j \
  -p 7474:7474 -p 7687:7687 \
  -e NEO4J_AUTH=neo4j/admin123 \
  neo4j:latest
# Clone the project
git clone https://github.com/your-username/LingEcho.git
cd LingEcho

# Copy environment configuration
cp server/env.example .env

# Edit .env file and configure your settings
# At minimum, set: SESSION_SECRET, LLM_API_KEY

# Start services with Docker Compose
docker-compose up -d

# View logs
docker-compose logs -f lingecho

Access the Application: - Frontend Interface: http://localhost:7072 - Backend API: http://localhost:7072/api - API Documentation: http://localhost:7072/api/docs

Optional Services:

# Start with PostgreSQL database
docker-compose --profile postgres up -d

# Start with Redis cache
docker-compose --profile redis up -d

# Start with Nginx reverse proxy
docker-compose --profile nginx up -d

# Start frontend development server
docker-compose --profile dev up -d

Method 2: Manual Installation

brew install pkg-config
brew install opus opusfile

# Clone the project
git clone https://github.com/your-username/LingEcho.git
cd LingEcho

# Backend setup
cd server
go mod tidy
cp env.example .env
# Edit .env file with your configuration

# Frontend setup
cd ../web
npm install  # or pnpm install
npm run build  # For production
# OR
npm run dev    # For development (runs on port 5173)

# Start backend (from server directory)
cd ../server
go run ./cmd/server/main.go -mode=dev

Access the Application: - Frontend Interface: http://localhost:5173 (dev) or http://localhost:7072 (production) - Backend API: http://localhost:7072/api - API Documentation: http://localhost:7072/api/docs

Optional Services (if needed):

# Start VAD service
cd services/vad-service
docker-compose up -d
# Or manually: python vad_service.py

# Start Voiceprint service
cd services/voiceprint-api
docker-compose up -d
# Or manually: python -m app.main

# Start ASR-TTS service
cd services/asr-tts-service
docker-compose up -d
# Or manually: python -m app.main

# Start MCP service (optional)
cd server
go run ./cmd/mcp/main.go --transport sse --port 3001

For detailed installation instructions, see Installation Guide.


📚 Documentation


🤝 Contributing

We welcome all forms of contributions! Please check our Development Guide for details.

Quick Contribution Steps

  1. Fork the Project - Click the Fork button in the top right corner
  2. Create a Branch - git checkout -b feature/your-feature
  3. Commit Changes - git commit -m 'Add some feature'
  4. Push Branch - git push origin feature/your-feature
  5. Create PR - Create a Pull Request on GitHub

Our Team

A core team of four full-stack engineers focused on innovation and application of AI voice technology.

Member Role Responsibilities
chenting Full-stack Engineer + Project Manager Responsible for overall project architecture design and full-stack development, leading product direction and technology selection
jianghaotian Full-stack Engineer Responsible for backend service development and system optimization, ensuring platform stability and performance
quenanlin Full-stack Engineer Responsible for frontend interface development and user experience optimization, ensuring product usability
wangyueran Full-stack Engineer Responsible for feature development and quality assurance, ensuring code quality and product reliability

📧 Contact Us

  • Email: 19511899044@163.com

⭐ Star History

Star History Chart


Extension points exported contracts — how you extend this code

LLMHandler (Interface)
LLMHandler common llm hanlder interface [8 implementers]
pkg/llm/types.go
SynthesisHandler (Interface)
SynthesisHandler 流式合成处理器接口(与 synthesis 包兼容) [10 implementers]
pkg/voiceclone/types.go
Pipeline (Interface)
pipeline architecture for asr handler handle data by: audio input -> VAD -> echo filter -> ASR -> sensitive filter -> ou [12 …
pkg/voice/sessions/pipeline.go
PipelineComponent (Interface)
PipelineComponent is a minimal processing stage. It mirrors the hardware ASR pipeline shape but is SIP-focused: input is [8 …
pkg/sip/asr/pipeline.go
TranscriberConfig (Interface)
TranscriberConfig 统一的配置接口 [14 implementers]
pkg/recognizer/factory.go
ExecutableNode (Interface)
ExecutableNode unify all concrete nodes [15 implementers]
pkg/workflow/node_base.go
Cache (Interface)
Cache defines the cache interface [5 implementers]
pkg/cache/cache.go
MediaPacket (Interface)
MediaPacket types - represents media data packets [4 implementers]
pkg/media/types.go

Core symbols most depended-on inside this repo

Fail
called by 1292
pkg/response/response.go
Error
called by 867
pkg/utils/errors.go
String
called by 753
pkg/media/types.go
Unlock
called by 509
pkg/utils/distributed_lock.go
Lock
called by 472
pkg/utils/distributed_lock.go
showAlert
called by 408
web/src/utils/notification.ts
Success
called by 390
pkg/response/response.go
Contains
called by 317
pkg/utils/bloom/bloom.go

Shape

Function 5,001
Method 2,930
Struct 1,001
Interface 889
TypeAlias 58
Class 52
FuncType 26
Enum 14

Languages

Go65%
TypeScript35%

Modules by API surface

admin/src/services/adminApi.ts169 symbols
internal/handler/admins.go88 symbols
internal/handler/auth.go83 symbols
pkg/media/session.go80 symbols
static/admin/app.js77 symbols
web/src/types/cache.ts59 symbols
admin/src/types/cache.ts59 symbols
static/admin/widget.js56 symbols
internal/handler/voice.go56 symbols
static/js/client.js52 symbols
internal/models/users.go50 symbols
internal/models/assistant.go41 symbols

Datastores touched

(mysql)Database · 1 repos

For agents

$ claude mcp add SoulNexus \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact