[TASK] add setting and preference