@ApiStatus.Internal
  public static synchronized void executeActionScript() throws IOException {
    Path scriptFile = getActionScriptFile();
    try {
      List<ActionCommand> commands = loadActionScript(scriptFile);
      for (ActionCommand command : commands) {
        command.execute();
      }
    }
    finally {
      // deleting a file should not cause an exception
      Files.deleteIfExists(scriptFile);
    }
  }
@ApiStatus.Internal
  public static synchronized void executeActionScript()