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
| Name | Type | Description |
|---|---|---|
TOptions | extends IPluginOptions = IPluginOptions | Plugin options type that extends IPluginOptions |
TStats | extends IPluginStats = IPluginStats | Plugin statistics type |
Hierarchy
AbstractPlugin
Implements
IPluginContract<TOptions,TStats>IPluginHooks
Table of contents
Constructors
Properties
Methods
- initialize
- subscribeToModuleEvents
- unsubscribeFromModuleEvents
- dispose
- enable
- disable
- isEnabled
- getConfig
- updateConfig
- getData
- clearData
- getStatus
- getStats
- beforeRun
- afterRun
- beforeExecution
- afterExecution
- beforeConversation
- afterConversation
- beforeToolCall
- beforeToolExecution
- afterToolCall
- afterToolExecution
- beforeProviderCall
- afterProviderCall
- onStreamingChunk
- onError
- onMessageAdded
- onModuleEvent
Constructors
constructor
• new AbstractPlugin<TOptions, TStats>(): AbstractPlugin<TOptions, TStats>
Type parameters
| Name | Type |
|---|---|
TOptions | extends IPluginOptions = IPluginOptions |
TStats | extends IPluginStats = IPluginStats |
Returns
AbstractPlugin<TOptions, TStats>
Properties
name
• Readonly Abstract name: string
Implementation of
Defined in
packages/agent-core/src/abstracts/abstract-plugin.ts:60
version
• Readonly Abstract version: string
Implementation of
Defined in
packages/agent-core/src/abstracts/abstract-plugin.ts:61
enabled
• enabled: boolean = true
Implementation of
Defined in
packages/agent-core/src/abstracts/abstract-plugin.ts:62
category
• category: PluginCategory = PluginCategory.CUSTOM
Implementation of
Defined in
packages/agent-core/src/abstracts/abstract-plugin.ts:63
priority
• priority: number = PluginPriority.NORMAL
Implementation of
Defined in
packages/agent-core/src/abstracts/abstract-plugin.ts:64
Methods
initialize
▸ initialize(options?): Promise<void>
Parameters
| Name | Type |
|---|---|
options? | TOptions |
Returns
Promise<void>
Implementation of
Defined in
packages/agent-core/src/abstracts/abstract-plugin.ts:77
subscribeToModuleEvents
▸ subscribeToModuleEvents(eventEmitter): Promise<void>
Parameters
| Name | Type |
|---|---|
eventEmitter | IEventEmitterPlugin |
Returns
Promise<void>
Implementation of
IPluginContract.subscribeToModuleEvents
Defined in
packages/agent-core/src/abstracts/abstract-plugin.ts:87
unsubscribeFromModuleEvents
▸ unsubscribeFromModuleEvents(eventEmitter): Promise<void>
Parameters
| Name | Type |
|---|---|
eventEmitter | IEventEmitterPlugin |
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
Defined in
packages/agent-core/src/abstracts/abstract-plugin.ts:151
updateConfig
▸ updateConfig(_config): void
Parameters
| Name | Type |
|---|---|
_config | IPluginConfig |
Returns
void
Defined in
packages/agent-core/src/abstracts/abstract-plugin.ts:154
getData
▸ getData(): IPluginData
Returns
Implementation of
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
| Name | Type |
|---|---|
name | string |
version | string |
enabled | boolean |
initialized | boolean |
category | PluginCategory |
priority | number |
subscribedEventsCount | number |
hasEventEmitter | boolean |
Defined in
packages/agent-core/src/abstracts/abstract-plugin.ts:176
getStats
▸ getStats(): TStats
Returns
TStats
Implementation of
Defined in
packages/agent-core/src/abstracts/abstract-plugin.ts:198
beforeRun
▸ beforeRun(input, options?): Promise<void>
Parameters
| Name | Type |
|---|---|
input | string |
options? | IRunOptions |
Returns
Promise<void>
Implementation of
Defined in
packages/agent-core/src/abstracts/abstract-plugin.ts:219
afterRun
▸ afterRun(input, response, options?): Promise<void>
Parameters
| Name | Type |
|---|---|
input | string |
response | string |
options? | IRunOptions |
Returns
Promise<void>
Implementation of
Defined in
packages/agent-core/src/abstracts/abstract-plugin.ts:220
beforeExecution
▸ beforeExecution(context): Promise<void>
Parameters
| Name | Type |
|---|---|
context | IPluginExecutionContext |
Returns
Promise<void>
Implementation of
Defined in
packages/agent-core/src/abstracts/abstract-plugin.ts:221
afterExecution
▸ afterExecution(context, result): Promise<void>
Parameters
| Name | Type |
|---|---|
context | IPluginExecutionContext |
result | IPluginExecutionResult |
Returns
Promise<void>
Implementation of
Defined in
packages/agent-core/src/abstracts/abstract-plugin.ts:222
beforeConversation
▸ beforeConversation(context): Promise<void>
Parameters
| Name | Type |
|---|---|
context | IPluginExecutionContext |
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
| Name | Type |
|---|---|
context | IPluginExecutionContext |
result | IPluginExecutionResult |
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
| Name | Type |
|---|---|
toolName | string |
parameters | TToolParameters |
Returns
Promise<void>
Implementation of
Defined in
packages/agent-core/src/abstracts/abstract-plugin.ts:231
beforeToolExecution
▸ beforeToolExecution(context, toolData): Promise<void>
Parameters
| Name | Type |
|---|---|
context | IPluginExecutionContext |
toolData | IToolExecutionContext |
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
| Name | Type |
|---|---|
toolName | string |
parameters | TToolParameters |
result | IToolExecutionResult |
Returns
Promise<void>
Implementation of
Defined in
packages/agent-core/src/abstracts/abstract-plugin.ts:236
afterToolExecution
▸ afterToolExecution(context, toolResults): Promise<void>
Parameters
| Name | Type |
|---|---|
context | IPluginExecutionContext |
toolResults | IPluginExecutionResult |
Returns
Promise<void>
Implementation of
IPluginHooks.afterToolExecution
Defined in
packages/agent-core/src/abstracts/abstract-plugin.ts:241
beforeProviderCall
▸ beforeProviderCall(messages): Promise<void>
Parameters
| Name | Type |
|---|---|
messages | TUniversalMessage[] |
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
| Name | Type |
|---|---|
messages | TUniversalMessage[] |
response | TUniversalMessage |
Returns
Promise<void>
Implementation of
IPluginHooks.afterProviderCall
Defined in
packages/agent-core/src/abstracts/abstract-plugin.ts:246
onStreamingChunk
▸ onStreamingChunk(chunk): Promise<void>
Parameters
| Name | Type |
|---|---|
chunk | TUniversalMessage |
Returns
Promise<void>
Implementation of
Defined in
packages/agent-core/src/abstracts/abstract-plugin.ts:250
onError
▸ onError(error, context?): Promise<void>
Parameters
| Name | Type |
|---|---|
error | Error |
context? | IPluginErrorContext |
Returns
Promise<void>
Implementation of
Defined in
packages/agent-core/src/abstracts/abstract-plugin.ts:251
onMessageAdded
▸ onMessageAdded(message): Promise<void>
Parameters
| Name | Type |
|---|---|
message | TUniversalMessage |
Returns
Promise<void>
Implementation of
Defined in
packages/agent-core/src/abstracts/abstract-plugin.ts:252
onModuleEvent
▸ onModuleEvent(eventName, eventData): Promise<void>
Parameters
| Name | Type |
|---|---|
eventName | TEventName |
eventData | IEventEmitterEventData |
Returns
Promise<void>