dograh/ui
Flowentlabs 94dce42209
feat(tts): add websocket transport option for xAI TTS (#548)
* feat(tts): add websocket transport option for xAI TTS

xAI's pipecat service ships two implementations: XAIHttpTTSService
(batch REST, used by the existing xAI integration) and XAITTSService
(realtime WebSocket streaming). This adds a transport field on
XAITTSConfiguration ("http", default, unchanged behavior | "websocket")
and wires the latter into create_tts_service(), so live voice calls can
opt into lower time-to-first-byte streaming instead of request/response.

Originally built and battle-tested independently against v1.41.0 in a
production deployment (7 live Telnyx calls, 2026-07-15) before this PR
existed; ported onto current main and given a config toggle instead of
a second provider entry so it composes with the existing xAI HTTP path
rather than duplicating it.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* refactor(tts): use websocket-only xAI TTS, drop the transport toggle

---------

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
Co-authored-by: Sabiha Khan <sabihak89@gmail.com>
2026-07-21 11:30:49 +05:30
..
public embed cal and chatwoot bubble missing fix (#483) 2026-06-29 23:02:55 +05:30
scripts feat: refactor node spec and add mcp tools (#244) 2026-04-21 07:56:16 +05:30
src feat: add vici dial controls from UI (#563) 2026-07-20 21:57:34 +05:30
.dockerignore Initial Commit 🚀 🚀 2025-09-09 14:37:32 +05:30
.env.example chore: redirect to APP_URL from superadmin 2026-07-17 11:32:45 +05:30
.gitignore chore: setup worktree script 2026-06-30 15:59:18 +05:30
.pre-commit-config.yaml Initial Commit 🚀 🚀 2025-09-09 14:37:32 +05:30
AGENTS.md fix: support object and array parameters in custom HTTP tools (#373) 2026-06-02 11:35:38 +05:30
CLAUDE.md Chore/add setup and contributing docs (#90) 2025-12-27 09:25:20 +05:30
components.json Initial Commit 🚀 🚀 2025-09-09 14:37:32 +05:30
Dockerfile chore: bump ui image to node 22 2026-07-14 18:28:22 +05:30
eslint.config.mjs feat: agent versioning and model configurations override (#227) 2026-04-08 19:20:31 +05:30
next.config.ts chore: improve upon mcp prompts (#494) 2026-07-03 18:14:03 +05:30
openapi-ts.config.ts chore: improve upon mcp prompts (#494) 2026-07-03 18:14:03 +05:30
package-lock.json feat(tts): add websocket transport option for xAI TTS (#548) 2026-07-21 11:30:49 +05:30
package.json chore(main): release dograh 1.42.0 (#502) 2026-07-15 20:10:29 +05:30
postcss.config.mjs Initial Commit 🚀 🚀 2025-09-09 14:37:32 +05:30
README.md Initial Commit 🚀 🚀 2025-09-09 14:37:32 +05:30
sentry.edge.config.ts chore: fix ui and add "Get Help" button (#27) 2025-10-07 17:40:01 +05:30
sentry.server.config.ts chore: fix ui and add "Get Help" button (#27) 2025-10-07 17:40:01 +05:30
tsconfig.json Initial Commit 🚀 🚀 2025-09-09 14:37:32 +05:30
vercel.json chore: disable automatic deployment on vercel 2026-07-18 14:58:59 +05:30
vitest.config.mts fix: fix org scoped access for resources (#517) 2026-07-09 23:04:33 +05:30

This is a Next.js project bootstrapped with create-next-app.

Getting Started

First, run the development server:

npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev

Login Flow

  1. The redirection happens server side using ui/src/stack.tsx after the user has logged in.

Sentry and PostHog

  1. Initialized in ui/src/instrumentation-client.ts