feature: watch prototype