# Hooks call mise tasks, so a hook runs the same command as CI. mise.dev.toml
# installs them through its postinstall hook; CI never loads that file, so no
# runner has them and no hook needs a CI skip.
pre-commit:
commands:
# TODO(CTC-018): remove once a mise release includes jdx/mise#14316.
warm-remote-tasks:
priority: 1
run: env -u GIT_INDEX_FILE mise tasks ls >/dev/null
format:
# *.rs matches every depth; **/*.rs misses files at the root.
glob: "*.rs"
run: mise run format
staged-secrets:
run: mise run hooks:secrets:staged
commit-msg:
commands:
# TODO(CTC-018): remove once a mise release includes jdx/mise#14316.
warm-remote-tasks:
priority: 1
run: env -u GIT_INDEX_FILE mise tasks ls >/dev/null
committed:
run: mise run commit-msg {1}
pre-push:
commands:
lockfile:
run: mise install --locked
commits:
run: mise run commits
verify:
run: mise run verify
full-history-secrets:
run: mise run hooks:secrets:history