LiveKit docs › Models › Virtual avatar › TruGen

---

# TruGen.AI realtime avatar integration guide

> How to use the TruGen.AI realtime avatar plugin for LiveKit Agents.

Available in:
- [x] Node.js
- [x] Python

## Overview

[TruGen](https://www.trugen.ai/) enables developers and enterprises to build realtime AI video applications that support low-latency, bidirectional audio and video interactions between users and AI agents. You can use the open source TruGen integration for LiveKit Agents to add realtime avatars to your voice AI app.

### Installation

**Python**:

```shell
uv add "livekit-agents[trugen]~=1.5"

```

---

**Node.js**:

```shell
pnpm add @livekit/agents-plugin-trugen

```

### Authentication

The TruGen.AI plugin requires a [TruGen API key](https://app.trugen.ai).

Set `TRUGEN_API_KEY` in your `.env` file.

### Usage

Use the plugin in an `AgentSession`. For example, you can use this avatar in the [Voice AI quickstart](https://docs.livekit.io/agents/start/voice-ai.md).

**Python**:

```python
from livekit import agents
from livekit.agents import AgentServer, AgentSession
from livekit.plugins import trugen

server = AgentServer()

@server.rtc_session()
async def my_agent(ctx: agents.JobContext):
   session = AgentSession(
      # ... stt, llm, tts, etc.
   )

   avatar = trugen.AvatarSession(
      avatar_id="...",  # ID of the TruGen stock avatar to use
   )

   # Start the avatar and wait for it to join
   await avatar.start(session, room=ctx.room)

   # Start your agent session with the user
   await session.start(
      # ... room, agent, room_options, etc....
   )

```

---

**Node.js**:

```typescript
import { voice } from '@livekit/agents';
import * as trugen from '@livekit/agents-plugin-trugen';

const session = new voice.AgentSession({
   // ... stt, llm, tts, etc.
});

const avatar = new trugen.AvatarSession({
   avatarId: '...',  // ID of the TruGen stock avatar to use
});

// Start the avatar and wait for it to join
await avatar.start(session, room);

// Start your agent session with the user
await session.start({
   // ... room, agent, room_options, etc.
});

```

Preview the avatar in the [Agent Console](https://docs.livekit.io/agents/start/console.md) or a frontend [starter app](https://docs.livekit.io/agents/start/frontend.md#starter-apps) that you build.

### Parameters

This section describes some of the available parameters. See the [plugin reference](https://docs.livekit.io/reference/python/livekit/plugins/trugen/index.html.md#livekit.plugins.trugen.AvatarSession) for a complete list of all available parameters.

- **`avatar_id`** _(string)_ (optional) - Default: `7d881c1b`: ID of the TruGen stock avatar to use. Learn more at [Stock Avatars](https://docs.trugen.ai/docs/avatars/overview).

- **`avatar_participant_identity`** _(string)_ (optional) - Default: `trugen-avatar`: The identity of the participant to use for the avatar.

- **`avatar_participant_name`** _(string)_ (optional) - Default: `Trugen Avatar`: The name of the participant to use for the avatar.

## Additional resources

The following resources provide more information about using TruGen.AI realtime avatars with LiveKit Agents.

- **[TruGen.AI docs](https://docs.trugen.ai)**: TruGen.AI Docs

- **[Agent Console](https://docs.livekit.io/agents/start/console.md)**: A virtual workbench to test your avatar agent.

- **[Frontend starter apps](https://docs.livekit.io/agents/start/frontend.md#starter-apps)**: Ready-to-use frontend apps with avatar support.

---

This document was rendered at 2026-06-07T11:35:51.485Z.
For the latest version of this document, see [https://docs.livekit.io/agents/models/avatar/plugins/trugen.md](https://docs.livekit.io/agents/models/avatar/plugins/trugen.md).

To explore all LiveKit documentation, see [llms.txt](https://docs.livekit.io/llms.txt).