improve: use global linter
task: require hooks to support --about option