function defineAgent<TName, TTools, TSchema, TInterrupts>(agent): DefinedAgent<TName, TTools, TSchema, TInterrupts>;Defined in: packages/ai/src/activities/chat/agents/define-agent.ts:100
Define a named child agent. Pass the same object to chat({ subagents }). Pass the agents array to useChat({ subagents }) when you render parts yourself. The hook uses it for types only. It does not call run.
TName extends string
TTools extends readonly SubagentTool[] = readonly []
TSchema extends SchemaInput | undefined = undefined
TInterrupts extends readonly InterruptDefinition<any, any, any, any, any>[] = readonly []
DefinedAgent<TName, TTools, TSchema, TInterrupts>
DefinedAgent<TName, TTools, TSchema, TInterrupts>
const researcher = defineAgent({
name: 'researcher',
description: 'Looks up facts',
run: (ctx) =>
chat({
adapter: openaiText('gpt-5.6'),
messages: ctx.messages,
threadId: ctx.threadId,
runId: ctx.runId,
parentRunId: ctx.parentRunId,
subagentRunId: ctx.subagentRunId,
resume: ctx.resume,
}),
})