simplify file watcher protocol