defineCustomAgent<State> method

Agent<State> defineCustomAgent<State>({
  1. required String name,
  2. String? description,
  3. SchemanticType<State>? stateSchema,
  4. SessionStore? store,
  5. ClientTransform? clientTransform,
  6. required AgentFn<State> fn,
})

Registers a multi-turn custom agent action capable of maintaining persistent state.

Use this when you need full control over the agent turn loop. For the common prompt-driven case, use defineAgent.

Implementation

Agent<State> defineCustomAgent<State>({
  required String name,
  String? description,
  SchemanticType<State>? stateSchema,
  SessionStore? store,
  ClientTransform? clientTransform,
  required AgentFn<State> fn,
}) {
  return agent_lib.defineCustomAgent<State>(
    registry,
    name: name,
    description: description,
    stateSchema: stateSchema,
    store: store,
    clientTransform: clientTransform,
    fn: fn,
  );
}