MemberJunction actions for AI agent management. This package provides the base action class and type definitions used by agent management actions, enabling programmatic creation, modification, and validation of AI agents through MemberJunction’s action system.
graph TD
A["BaseAgentManagementAction<br/>(Abstract Base)"] -->|extends| B["BaseAction<br/>(@memberjunction/actions)"]
A -->|provides| C["Permission<br/>Validation"]
A -->|provides| D["Parameter Extraction<br/>(String, UUID, Object)"]
A -->|provides| E["Entity Loading<br/>(Agents, Types)"]
A -->|provides| F["Prompt Creation<br/>+ Association"]
A -->|provides| G["Transaction<br/>Management"]
style A fill:#7c5295,stroke:#563a6b,color:#fff
style B fill:#2d6a9f,stroke:#1a4971,color:#fff
style C fill:#2d8659,stroke:#1a5c3a,color:#fff
style D fill:#2d8659,stroke:#1a5c3a,color:#fff
style E fill:#2d8659,stroke:#1a5c3a,color:#fff
style F fill:#2d8659,stroke:#1a5c3a,color:#fff
style G fill:#2d8659,stroke:#1a5c3a,color:#fff
Permission Validation : Ensures agent management actions are called with proper user context
Parameter Extraction : Type-safe extraction and validation of string, UUID, and object parameters
Entity Loading : Helper methods for loading AI Agent and AI Agent Type entities with error handling
Prompt Management : Create prompts and associate them with agents in a single operation
Transaction Support : Database transaction management for multi-record operations with rollback
Error Handling : Consistent error reporting via ActionResultSimple pattern
UUID Validation : Built-in UUID format validation for entity references
npm install @memberjunction/ai-agent-manager-actions
import { BaseAgentManagementAction } from ' @memberjunction/ai-agent-manager-actions ' ;
import { RunActionParams, ActionResultSimple } from ' @memberjunction/actions-base ' ;
import { RegisterClass } from ' @memberjunction/global ' ;
import { BaseAction } from ' @memberjunction/actions ' ;
@RegisterClass (BaseAction, ' My Agent Action ' )
export class MyAgentAction extends BaseAgentManagementAction {
protected async InternalRunAction ( params : RunActionParams ) : Promise < ActionResultSimple > {
const permError = await this . validateAgentManagerPermission (params);
if (permError) return permError;
// Extract typed parameters
const agentId = this . getUuidParam (params , ' AgentID ' );
if (agentId . error ) return agentId . error ;
const agentResult = await this . loadAgent (agentId . value , params . ContextUser );
if (agentResult . error ) return agentResult . error ;
// Perform action logic with the loaded agent
const agent = agentResult . agent ;
return { Success: true , ResultCode: ' SUCCESS ' , Message: ' Done ' };
const providerResult = this . getTransactionProvider ();
if (providerResult . error ) return providerResult . error ;
const provider = providerResult . provider ;
await provider . BeginTransaction ();
// Multiple database operations
await provider . CommitTransaction ();
await provider . RollbackTransaction ();
Type Description ParameterResult<T>Result wrapper for parameter extraction (value or error) EntityLoadResult<T>Result wrapper for entity loading operations AgentLoadResultSpecialized result for AI Agent loading AgentTypeValidationResultResult for agent type validation PromptCreationResultResult for prompt creation and association ObjectParameterRecord<string, unknown> for object parameters
Method Description validateAgentManagerPermissionValidates user context for permissions getStringParamExtract and validate a string parameter getUuidParamExtract and validate a UUID parameter getObjectParamExtract and validate an object parameter loadAgentLoad an AI Agent entity by ID validateAgentTypeValidate that an agent type ID exists createAndAssociatePromptCreate a prompt and link it to an agent getTransactionProviderGet database provider with transaction support handleErrorConsistent error logging and result creation
@memberjunction/actions - BaseAction class
@memberjunction/actions-base - Action parameter and result types
@memberjunction/core - Metadata, RunView, entity operations
@memberjunction/core-entities - AI Agent entity types
@memberjunction/ai-core-plus - Extended AI entity types