I think one extra parameter called state could be used that is a mix between an object and a dict to have a nicer syntax or maybe ctx.state.new where the state is initialized for each plugin that is registered?