go には色々静的解析ツールがあり、独自ツールも気軽に作れる(とのこと)。そして最近ではモジュール化できる。
Goにおける静的解析のモジュール化について | メルカリエンジニアリング
モジュールは下記のように実行する。
$ go vet -vettool=$(which [toolname]) [packagename]
例えば下記の nilerr
の場合、下記のようなに実行する。
gostaticanalysis/nilerr: Analyzer: nilerr checks returning nil when err is not nil
$ go vet -vettool=$(which nilerr) ./repository/...
※ パスが通っている前提