worker: add --restart option