lefthook-bypass-guard
lefthook.yml runs:
- pre-commit: client format, server/plugin goimports, proto buf-lint, python ruff
- pre-push: client tsc, server golangci-lint, plugin golangci-lint
The hooks are fast (parallel) and stage_fixed: true for formatters means
they auto-stage their fixes. There is essentially no legitimate reason to
bypass them in normal development.
What to do
- If a hook fails, read the error and fix the underlying issue — that's the entire point.
- If a hook is broken (not the user's code, the hook itself), surface that distinction to the user and offer to fix the hook config rather than bypassing.
- If lefthook isn't installed (
command not found), apply thehermit-toolingskill —bin/activate-hermitfirst, thenjust install-hooks.
What to avoid
- Do not run
git commit --no-verifyor-norgit push --no-verifyunless the user has explicitly asked for it and acknowledged the tradeoff. - Do not edit
lefthook-local.yml(or suggest it) to permanently disable a check.