Skip to content

bodhi-realtime-agent / InteractiveSubagentConfig

Interface: InteractiveSubagentConfig ​

Defined in: src/agent/subagent-session.ts:56

Extends SubagentConfig with interactive session options.

Extends ​

Properties ​

createInstance? ​

optional createInstance?: () => SubagentConfig

Defined in: src/types/agent.ts:111

Optional factory that returns an isolated subagent config instance per handoff. Use this when tool state must not be shared across concurrent background runs.

Returns ​

SubagentConfig

Inherited from ​

SubagentConfig.createInstance


dispose? ​

optional dispose?: () => void | Promise<void>

Defined in: src/types/agent.ts:113

Optional cleanup function called when the subagent run ends (success, error, or abort).

Returns ​

void | Promise<void>

Inherited from ​

SubagentConfig.dispose


inputTimeout? ​

optional inputTimeout?: number

Defined in: src/agent/subagent-session.ts:60

Timeout per waitForInput() call in ms. Default: 120_000 (2 min).


instructions ​

instructions: string

Defined in: src/types/agent.ts:85

System instructions for the subagent's LLM call.

Inherited from ​

SubagentConfig.instructions


interactive? ​

optional interactive?: boolean

Defined in: src/agent/subagent-session.ts:58

Whether this subagent supports interactive user input.

Overrides ​

SubagentConfig.interactive


lifetime? ​

optional lifetime?: SubagentLifetimeMode

Defined in: src/types/agent.ts:119

Subagent lifetime mode.

  • 'ephemeral' (default): one instance per tool call, disposed after completion.
  • 'persistent_session': instance persists across multiple tool calls within the same VoiceSession.

Inherited from ​

SubagentConfig.lifetime


maxInputRetries? ​

optional maxInputRetries?: number

Defined in: src/agent/subagent-session.ts:62

Max retries before cancellation on timeout. Default: 3.


maxSteps? ​

optional maxSteps?: number

Defined in: src/types/agent.ts:89

Maximum number of LLM steps before stopping (default 5).

Inherited from ​

SubagentConfig.maxSteps


model? ​

optional model?: string

Defined in: src/types/agent.ts:104

Deprecated ​

A model name, kept so configs that set it still compile. It is accepted but ignored, as it was by the builds that declared it: the subagent runs on reasoningModel when set, otherwise on the session default, and a session logs one warning per subagent that sets model without reasoningModel. Set reasoningModel instead.

Inherited from ​

SubagentConfig.model


name ​

name: string

Defined in: src/types/agent.ts:83

Unique name identifying this subagent configuration.

Inherited from ​

SubagentConfig.name


persistentFactory? ​

optional persistentFactory?: PersistentSubagentFactory

Defined in: src/types/agent.ts:126

Optional factory for runtime-managed persistent instances.

Used by actor-mode orchestration when lifetime is 'persistent_session'. If unset, the runtime falls back to normal handoff execution.

Inherited from ​

SubagentConfig.persistentFactory


reasoningModel? ​

optional reasoningModel?: LanguageModelV1

Defined in: src/types/agent.ts:96

Optional Vercel AI SDK text model for this subagent’s generateText relay. When omitted, the session default (VoiceSessionConfig.model) is used.

Inherited from ​

SubagentConfig.reasoningModel


timeout? ​

optional timeout?: number

Defined in: src/types/agent.ts:91

Timeout in milliseconds for the entire subagent run.

Inherited from ​

SubagentConfig.timeout


tools ​

tools: Record<string, unknown>

Defined in: src/types/agent.ts:87

Vercel AI SDK tool() definitions available to the subagent.

Inherited from ​

SubagentConfig.tools

Built with VitePress