I think hk does do all those things, but it's a bit obscured by the focus on Git hooks in the docs. But the docs are also still in a super early state, so maybe that will be fleshed out more in the future.
- Pre-commit hook setup
- Run locally anytime (`pre-commit run -a`)
- Check in CI (as Nix flake check)
Example repo: https://github.com/srid/haskell-template
The pre-commit configuration: https://github.com/srid/haskell-template/blob/master/nix/mod...