title: Server. Agent Executor

A2A Node SDK - v0.1.0 / Modules / Server / AgentExecutor

Interface: AgentExecutor

Server.AgentExecutor

Interface for executing agent tasks

This interface defines the contract for executing tasks on behalf of agents. Implementations are responsible for handling task execution, cancellation, and lifecycle management.

Example

class CustomAgentExecutor implements AgentExecutor {
  async execute(context: RequestContext, eventQueue: EventQueue): Promise<void> {
    // Custom execution logic
    console.log(`Executing task ${context.task.id}`);
    
    // Publish events
    eventQueue.publish({
      type: 'task.updated',
      payload: { taskId: context.task.id, status: 'working' }
    });
  }
  
  async cancel(context: RequestContext, eventQueue: EventQueue): Promise<void> {
    // Custom cancellation logic
    console.log(`Canceling task ${context.task.id}`);
  }
}

Implemented by

Table of contents

Methods

Methods

cancel

cancel(context, eventQueue): Promise<void>

Cancel an ongoing task execution

Parameters

NameTypeDescription
contextRequestContextRequest context including task details
eventQueueEventQueueEvent queue for publishing cancellation events

Returns

Promise<void>


execute

execute(context, eventQueue): Promise<void>

Execute a task with the given context

Parameters

NameTypeDescription
contextRequestContextRequest context including task details
eventQueueEventQueueEvent queue for publishing task events

Returns

Promise<void>