Skip to content

agent-core / Exports / AbstractPlugin

Class: AbstractPlugin<TOptions, TStats>

Abstract class for all plugins with type parameter support. Provides plugin lifecycle management and common functionality.

Type parameters

NameTypeDescription
TOptionsextends IPluginOptions = IPluginOptionsPlugin options type that extends IPluginOptions
TStatsextends IPluginStats = IPluginStatsPlugin statistics type

Hierarchy

Implements

Table of contents

Constructors

Properties

Methods

Constructors

constructor

new AbstractPlugin<TOptions, TStats>(): AbstractPlugin<TOptions, TStats>

Type parameters

NameType
TOptionsextends IPluginOptions = IPluginOptions
TStatsextends IPluginStats = IPluginStats

Returns

AbstractPlugin<TOptions, TStats>

Properties

name

Readonly Abstract name: string

Implementation of

IPluginContract.name

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:60


version

Readonly Abstract version: string

Implementation of

IPluginContract.version

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:61


enabled

enabled: boolean = true

Implementation of

IPluginContract.enabled

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:62


category

category: PluginCategory = PluginCategory.CUSTOM

Implementation of

IPluginContract.category

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:63


priority

priority: number = PluginPriority.NORMAL

Implementation of

IPluginContract.priority

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:64

Methods

initialize

initialize(options?): Promise<void>

Parameters

NameType
options?TOptions

Returns

Promise<void>

Implementation of

IPluginContract.initialize

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:77


subscribeToModuleEvents

subscribeToModuleEvents(eventEmitter): Promise<void>

Parameters

NameType
eventEmitterIEventEmitterPlugin

Returns

Promise<void>

Implementation of

IPluginContract.subscribeToModuleEvents

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:87


unsubscribeFromModuleEvents

unsubscribeFromModuleEvents(eventEmitter): Promise<void>

Parameters

NameType
eventEmitterIEventEmitterPlugin

Returns

Promise<void>

Implementation of

IPluginContract.unsubscribeFromModuleEvents

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:130


dispose

dispose(): Promise<void>

Returns

Promise<void>

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:139


enable

enable(): void

Returns

void

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:142


disable

disable(): void

Returns

void

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:145


isEnabled

isEnabled(): boolean

Returns

boolean

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:148


getConfig

getConfig(): IPluginConfig

Returns

IPluginConfig

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:151


updateConfig

updateConfig(_config): void

Parameters

NameType
_configIPluginConfig

Returns

void

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:154


getData

getData(): IPluginData

Returns

IPluginData

Implementation of

IPluginContract.getData

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:158


clearData

clearData(): void

Returns

void

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:174


getStatus

getStatus(): Object

Returns

Object

NameType
namestring
versionstring
enabledboolean
initializedboolean
categoryPluginCategory
prioritynumber
subscribedEventsCountnumber
hasEventEmitterboolean

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:176


getStats

getStats(): TStats

Returns

TStats

Implementation of

IPluginContract.getStats

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:198


beforeRun

beforeRun(input, options?): Promise<void>

Parameters

NameType
inputstring
options?IRunOptions

Returns

Promise<void>

Implementation of

IPluginHooks.beforeRun

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:219


afterRun

afterRun(input, response, options?): Promise<void>

Parameters

NameType
inputstring
responsestring
options?IRunOptions

Returns

Promise<void>

Implementation of

IPluginHooks.afterRun

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:220


beforeExecution

beforeExecution(context): Promise<void>

Parameters

NameType
contextIPluginExecutionContext

Returns

Promise<void>

Implementation of

IPluginHooks.beforeExecution

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:221


afterExecution

afterExecution(context, result): Promise<void>

Parameters

NameType
contextIPluginExecutionContext
resultIPluginExecutionResult

Returns

Promise<void>

Implementation of

IPluginHooks.afterExecution

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:222


beforeConversation

beforeConversation(context): Promise<void>

Parameters

NameType
contextIPluginExecutionContext

Returns

Promise<void>

Implementation of

IPluginHooks.beforeConversation

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:226


afterConversation

afterConversation(context, result): Promise<void>

Parameters

NameType
contextIPluginExecutionContext
resultIPluginExecutionResult

Returns

Promise<void>

Implementation of

IPluginHooks.afterConversation

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:227


beforeToolCall

beforeToolCall(toolName, parameters): Promise<void>

Parameters

NameType
toolNamestring
parametersTToolParameters

Returns

Promise<void>

Implementation of

IPluginHooks.beforeToolCall

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:231


beforeToolExecution

beforeToolExecution(context, toolData): Promise<void>

Parameters

NameType
contextIPluginExecutionContext
toolDataIToolExecutionContext

Returns

Promise<void>

Implementation of

IPluginHooks.beforeToolExecution

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:232


afterToolCall

afterToolCall(toolName, parameters, result): Promise<void>

Parameters

NameType
toolNamestring
parametersTToolParameters
resultIToolExecutionResult

Returns

Promise<void>

Implementation of

IPluginHooks.afterToolCall

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:236


afterToolExecution

afterToolExecution(context, toolResults): Promise<void>

Parameters

NameType
contextIPluginExecutionContext
toolResultsIPluginExecutionResult

Returns

Promise<void>

Implementation of

IPluginHooks.afterToolExecution

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:241


beforeProviderCall

beforeProviderCall(messages): Promise<void>

Parameters

NameType
messagesTUniversalMessage[]

Returns

Promise<void>

Implementation of

IPluginHooks.beforeProviderCall

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:245


afterProviderCall

afterProviderCall(messages, response): Promise<void>

Parameters

NameType
messagesTUniversalMessage[]
responseTUniversalMessage

Returns

Promise<void>

Implementation of

IPluginHooks.afterProviderCall

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:246


onStreamingChunk

onStreamingChunk(chunk): Promise<void>

Parameters

NameType
chunkTUniversalMessage

Returns

Promise<void>

Implementation of

IPluginHooks.onStreamingChunk

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:250


onError

onError(error, context?): Promise<void>

Parameters

NameType
errorError
context?IPluginErrorContext

Returns

Promise<void>

Implementation of

IPluginHooks.onError

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:251


onMessageAdded

onMessageAdded(message): Promise<void>

Parameters

NameType
messageTUniversalMessage

Returns

Promise<void>

Implementation of

IPluginHooks.onMessageAdded

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:252


onModuleEvent

onModuleEvent(eventName, eventData): Promise<void>

Parameters

NameType
eventNameTEventName
eventDataIEventEmitterEventData

Returns

Promise<void>

Implementation of

IPluginHooks.onModuleEvent

Defined in

packages/agent-core/src/abstracts/abstract-plugin.ts:253

Released under the MIT License.