run — Execute Checks Manually
# staged files only (default, cached) $ metis run # check just the diff (staged files, cached) $ metis run --diff-only # all tracked files (no cache) $ metis run --all-files # specific files $ metis run src/main.cpp include/foo.hpp # dry-run (list files without executing) $ metis run --dry-run --all-files # verbose (print each shell command) $ metis run --verbose --all-files # format mode (run clang-format instead of checks) $ metis run --format --all-files # bypass the check result cache $ metis run --no-cache
Options
| Flag | Alias | Description |
|---|---|---|
--all-files | Check all tracked files, not just staged | |
--diff-only | Check just the diff (staged files), with cache enabled | |
--verbose | -V | Print each shell command before executing |
--dry-run | -n | List files without executing checks |
--format | -f | Run clang-format instead of checks |
--no-cache | Bypass the check result cache |
Caching
The cache only helps on a diff: successful staged/explicit-file check results are cached in .metis-cache/ and reused when the check config and inputs are unchanged, so unchanged files are skipped on repeat runs. --diff-only runs just the diff with the cache enabled. A full sweep (--all-files) always re-checks everything and never uses the cache.
Exit code: 0 if all checks pass, non-zero if any check fails.