Skip to content

bodhi-realtime-agent / ServerConfig

Interface: ServerConfig

Defined in: config/server-config.ts:11

Properties

apiKey

apiKey: string

Defined in: config/server-config.ts:19

Gemini API key (required for gemini; also used for image/video subagents when provider is openai).


auth

auth: object

Defined in: config/server-config.ts:31

Authentication configuration

apiKey?

optional apiKey: string

enabled

enabled: boolean

jwtSecret?

optional jwtSecret: string

method

method: "api_key" | "jwt" | "oauth" | "supabase" | "anonymous"

oauth?

optional oauth: object

oauth.clientId

clientId: string

oauth.clientSecret

clientSecret: string

oauth.tokenEndpoint

tokenEndpoint: string

supabase?

optional supabase: object

supabase.anonKey

anonKey: string

supabase.serviceRoleKey?

optional serviceRoleKey: string

Service role key for server-side Supabase client (history store, bypass RLS).

supabase.url

url: string


cleanupIntervalMs

cleanupIntervalMs: number

Defined in: config/server-config.ts:29

Cleanup interval in milliseconds


host

host: string

Defined in: config/server-config.ts:15

WebSocket server host


llmProvider

llmProvider: LLMProvider

Defined in: config/server-config.ts:17

Which live voice transport to use (default: gemini).


logging

logging: object

Defined in: config/server-config.ts:55

Logging configuration

format

format: "text" | "json"

level

level: "error" | "warn" | "debug" | "info"


maxSessionsPerUser

maxSessionsPerUser: number

Defined in: config/server-config.ts:23

Maximum concurrent sessions per user


maxTotalSessions

maxTotalSessions: number

Defined in: config/server-config.ts:25

Maximum total concurrent sessions


openaiApiKey?

optional openaiApiKey: string

Defined in: config/server-config.ts:21

OpenAI API key (required when llmProvider is openai).


port

port: number

Defined in: config/server-config.ts:13

WebSocket server port


rateLimiting

rateLimiting: object

Defined in: config/server-config.ts:49

Rate limiting configuration

connectionsPerMinute

connectionsPerMinute: number

enabled

enabled: boolean

requestsPerMinute

requestsPerMinute: number


sessionTimeoutMs

sessionTimeoutMs: number

Defined in: config/server-config.ts:27

Session idle timeout in milliseconds


twilio?

optional twilio: object

Defined in: config/server-config.ts:60

Twilio inbound phone call bridge (optional — disabled when absent).

defaultAgentProfile

defaultAgentProfile: string

Fallback agent profile for inbound calls (default: standard).

inboundEnabled

inboundEnabled: boolean

numberAgentProfiles

numberAgentProfiles: Record<string, string>

Optional E.164 number -> agent profile map (digits only key).

webhookUrl

webhookUrl: string

Public HTTPS URL (nginx/ngrok) used in TwiML so Twilio connects back to us.

Built with VitePress