Member Junction
    Preparing search index...

    Abstract base class for agent management actions. Provides common functionality for validating permissions, loading entities, and managing agent metadata. Only the Agent Manager agent should be able to execute these actions.

    Hierarchy (View Summary)

    Index

    Constructors

    Methods

    • Get database provider with transaction support validation

      Returns { error?: ActionResultSimple; provider?: DatabaseProviderBase }

      // Example usage for implementing transactions in actions:
      const providerResult = this.getTransactionProvider();
      if (providerResult.error) return providerResult.error;
      const provider = providerResult.provider!;

      // Begin transaction for multi-record operations
      await provider.BeginTransaction();

      try {
      // Perform multiple database operations
      const agent = await md.GetEntityObject<MJAIAgentEntity>('MJ: AI Agents', contextUser);
      await agent.Save();

      const prompt = await md.GetEntityObject<MJAIPromptEntity>('MJ: AI Prompts', contextUser);
      await prompt.Save();

      // Commit transaction - all operations succeeded
      await provider.CommitTransaction();

      return { Success: true, ResultCode: 'SUCCESS', Message: 'All operations completed successfully' };

      } catch (transactionError) {
      // Rollback transaction on any error
      await provider.RollbackTransaction();
      throw transactionError; // Re-throw to be caught by outer try-catch
      }