Skip to main content

Module hooks

Module hooks 

Source
Expand description

One module per ported hook. Phase 1 of docs/rust-migration.md moves them across one at a time; each keeps a shim at its original path so the existing .zsh suite exercises the Rust implementation unchanged.

Modules§

ban_terms
pre-commit-ban-terms — refuse focused/debug leftovers in staged JS/TS.
branch_pattern
pre-push-branch-pattern — reject branch names that don’t follow the convention, unless the branch is already on the remote.
branch_protect
pre-push-branch-protect — refuse a direct push to a protected branch.
commit_msg
commit-msg — validate the summary line and reformat the message.
common
Shared plumbing for the linter-orchestration hooks.
k8s
The three Kubernetes hooks: argo-lint, kube-linter, kubeconform.
lint_js
pre-commit-lint-js — ESLint over staged JS/TS, scoped to repos that lint.
lint_json_yaml
pre-commit-lint-json-yaml — parse staged JSON/YAML so a syntax error never reaches the repo. Both linters soft-fail when absent: warn, don’t block.
merge_conflict
pre-commit-merge-conflict — refuse staged files still carrying conflict markers.
package_lock
pre-commit-package-lock — keep package.json and its lockfile in step.
prepare_commit_msg
prepare-commit-msg — append the issue id found in the branch name.
prettier
pre-commit-prettier — format check over staged files, scoped to repos that actually opt into prettier.
pull_rebase
pre-push-pull-rebase — sync a branch with ITS OWN upstream before pushing, and warn (never act) when the default branch has moved ahead.
python_tools
pre-commit-ruff and pre-commit-pyright — the two Python hooks.
run_tests
pre-push-run-tests-js — run each touched JS package’s gate before pushing.
rust_tools
The three Rust hooks: cargo fmt --check, cargo clippy, cargo test.
usual_name
pre-commit-usual-name — warn the first time an author commits under a given name/email, so a misconfigured user.name is noticed at the first commit rather than after twenty.
yamllint
pre-commit-yamllint — strict YAML lint, but only where a repo has opted in.