Plugin skeleton