- Notifications
You must be signed in to change notification settings - Fork1.2k
Open-source framework for conversational voice AI agents
License
TEN-framework/ten-framework
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
Table of Contents
- Welcome to TEN
- Agent Examples
- Quick Start with Agent Examples
- Agent Examples Self-Hosting
- Stay Tuned
- TEN Ecosystem
- Questions
- Contributing
TEN is an open-source framework for real-time multimodal conversational AI.
TEN Ecosystem includesTEN Framework,Agent Examples,VAD,Turn Detection andPortal.
Multi-Purpose Voice Assistant — This low-latency, high-quality real-time assistant supports both RTC andWebSocket connections, and you can extend it withMemory,VAD,Turn Detection, and other extensions.
See theExample code for more details.
Doodler — A doodle board that turns spoken or typed prompts into simple hand-drawn sketches, complete with a crayon palette and real-time drawing.
Speaker Diarization — Real-time diarization that detects and labels speakers, the Who Likes What game shows an interactive use case.
Lip Sync Avatars — Works with multiple avatar vendors, the main character features Kei, an anime character with MotionSync-powered lip sync, and also supports realistic avatars from Trulience, HeyGen, and Tavus.
See theExample code for different Live2D characters.
SIP Call — SIP extension that enables phone calls powered by TEN.
Transcription — A transcription tool that transcribes audio to text.
ESP32-S3 Korvo V3 — Runs TEN agent example on the Espressif ESP32-S3 Korvo V3 development board to integrate LLM-powered communication with hardware.
See theintegration guide for more details.
| Category | Requirements |
|---|---|
| Keys | • AgoraApp ID andApp Certificate •OpenAI API key •Deepgram ASR •ElevenLabs TTS |
| Installation | •Docker /Docker Compose •Node.js (LTS) v18 |
| Minimum System Requirements | • CPU >= 2 cores • RAM >= 4 GB |
cd ai_agentscp ./.env.example ./.envAGORA_APP_ID=AGORA_APP_CERTIFICATE=# Deepgram (required for speech-to-text)DEEPGRAM_API_KEY=# OpenAI (required for language model)OPENAI_API_KEY=# ElevenLabs (required for text-to-speech)ELEVENLABS_TTS_KEY=
docker compose up -d
dockerexec -it ten_agent_dev bashCheck theagents/examples folder for additional samples.Start with one of these defaults:
# use the chained voice assistantcd agents/examples/voice-assistant# or use the speech-to-speech voice assistant in real timecd agents/examples/voice-assistant-realtime
Runtask build if you changed any local source code. This step is required for compiled languages (for example, TypeScript or Go) and not needed for Python.
task installtask run
Once the agent example is running, you can access the following interfaces:
| localhost:49483 | localhost:3000 |
|---|---|
![]() | ![]() |
- TMAN Designer:localhost:49483
- Agent Examples UI:localhost:3000
- Openlocalhost:49483.
- Right-click the STT, LLM, and TTS extensions.
- Open their properties and enter the corresponding API keys.
- Submit your changes, now you can see the updated Agent Example inlocalhost:3000.
TEN also provides a transcriber app that you can run from TEN Manager without using Docker.
Check thequick start guide for more details.
GitHub offers free Codespaces for each repository. You can run Agent Examples in Codespaces without using Docker. Codespaces typically start faster than local Docker environments.
Check outthis guide for more details.
Once you have customized your agent (either by using the TMAN Designer or editingproperty.json directly), you can deploy it by creating a release Docker image for your service.
Note: The following commands need to be executed outside of any Docker container.
cd ai_agentsdocker build -f agents/examples/<example-name>/Dockerfile -t example-app.
docker run --rm -it --env-file .env -p 3000:3000 example-app
You can split the deployment into two pieces when you want to host TEN on providers such asVercel orNetlify.
Run the TEN backend on any container-friendly platform (a VM with Docker, Fly.io, Render, ECS, Cloud Run, or similar). Use the example Docker image without modifying it and expose port
8080from that service.Deploy only the frontend to Vercel or Netlify. Point the project root to
ai_agents/agents/examples/<example>/frontend, runpnpm install(orbun install) followed bypnpm build(orbun run build), and keep the default.nextoutput directory.Configure environment variables in your hosting dashboard so that
AGENT_SERVER_URLpoints to the backend URL, and add anyNEXT_PUBLIC_*keys the UI needs (for example, Agora credentials you surface to the browser).Ensure your backend accepts requests from the frontend origin — via open CORS or by using the built-in proxy middleware.
With this setup, the backend handles long-running worker processes, while the hosted frontend simply forwards API traffic to it.
Get instant notifications for new releases and updates. Your support helps us grow and improve TEN!
| Project | Preview |
|---|---|
| ️TEN Framework Open-source framework for conversational AI Agents. | ![]() |
| TEN VAD Low-latency, lightweight and high-performance streaming voice activity detector (VAD). | ![]() |
| ️ TEN Turn Detection TEN Turn Detection enables full-duplex dialogue communication. | ![]() |
| TEN Agent Examples Usecases powered by TEN. | ![]() |
| TEN Portal The official site of the TEN Framework with documentation and a blog. | ![]() |
TEN Framework is available on these AI-powered Q&A platforms. They can help you find answers quickly and accurately in multiple languages, covering everything from basic setup to advanced implementation details.
| Service | Link |
|---|---|
| DeepWiki | |
| ReadmeX |
We welcome all forms of open-source collaboration! Whether you're fixing bugs, adding features, improving documentation, or sharing ideas, your contributions help advance personalized AI tools. Check out our GitHub Issues and Projects to find ways to contribute and show your skills. Together, we can build something amazing!
Tip
Welcome all kinds of contributions 🙏
Join us in building TEN better! Every contribution makes a difference, from code to documentation. Share your TEN Agent projects on social media to inspire others!
Connect with one of the TEN maintainers@elliotchen200 on 𝕏 or@cyfyifanchen on GitHub for project updates, discussions, and collaboration opportunities.
Contributions are welcome! Please read thecontribution guidelines first.
The entire TEN framework (except for the folders explicitly listed below) is released pursuant the Apache License, Version 2.0, with additional restrictions. For details, please refer to theLICENSE file located in the root directory of the TEN framework.
The components within the
packagesdirectory are released under the Apache License, Version 2.0. For details, please refer to theLICENSEfile located in each package's root directory.The third-party libraries used by the TEN framework are listed and described in detail. For more information, please refer to thethird_party folder.
About
Open-source framework for conversational voice AI agents
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.














