An action can run like a process and don't stop until it needs to.

Instead of returning EActionStatus.Success, you want to return EActionStatus.Running as below.

using SGOAP;

public class FooAction : Action
{
	public override bool PrePerform(){}

	public override EActionStatus Perform()
  {
		// Returning success will automatically finishes the action.
		return EActionStatus.Running;
  }

  public override bool PostPerform(){}
}