v0.4.13

j178/prekv0.4.13Aug 10, 2026by github-actions[bot]

AI Summary

This release introduces `mise` language support for hook tools and a new `prek exec` subcommand for running commands in hook environments. It also adds native filename pattern hooks and improves performance.

Key Highlights

  • New `language: mise` support allows hooks to install tools using mise in an isolated environment.
  • New `prek exec` subcommand enables running explicit commands in a configured hook's prepared environment.
  • Added `deny-filename-pattern` and `require-filename-pattern` hooks for native pattern matching.
  • Performance improvements include avoiding env cache scans for skipped hooks and caching Node version queries.

New Features

  • mise language support
  • deny-filename-pattern hook
  • require-filename-pattern hook
  • prek exec subcommand

Full Release Notes

## Release Notes

Released on 2026-08-10.

### Highlights

#### Manage hook tools with mise

The new `language: mise` support lets hooks install tools using
[`mise`](https://mise.jdx.dev/) in an isolated environment:

```yaml
repos:
  - repo: local
    hooks:
      - id: golangci-lint
        name: golangci-lint
        language: mise
        additional_dependencies: ["aqua:golangci/golangci-lint@2"]
        entry: golangci-lint run --fast-only ./...
        pass_filenames: false
```

#### Run commands in hook environments

The new `prek exec` subcommand can run an explicit command in a configured
hook's prepared environment. For example, the hook above makes its managed
binary available to this command:

```console
$ prek exec golangci-lint -- golangci-lint --version
```

### Enhancements

- Add `mise` language support ([#2540](https://github.com/j178/prek/pull/2540))
- Add `deny-filename-pattern` and `require-filename-pattern` hooks ([#2488](https://github.com/j178/prek/pull/2488))
- Add `prek exec` for running commands in a hook environment ([#2478](https://github.com/j178/prek/pull/2478))
- Add `yaml-language-server:` comment to YAML sample config ([#2486](https://github.com/j178/prek/pull/2486))
- Make `prek cache size` output terminal-aware ([#2508](https://github.com/j178/prek/pull/2508))
- Match file regexes against path bytes ([#2541](https://github.com/j178/prek/pull/2541))
- Show hook aliases in run output ([#2497](https://github.com/j178/prek/pull/2497))
- Show hook descriptions in run output ([#2490](https://github.com/j178/prek/pull/2490))

### Performance

- Avoid env cache scans for skipped hooks ([#2502](https://github.com/j178/prek/pull/2502))
- Cache Node version queries ([#2500](https://github.com/j178/prek/pull/2500))

### Bug fixes

- Fix Node hook installation with npm 11 ([#2487](https://github.com/j178/prek/pull/2487))
- Isolate dependency installs from inherited Git repository state ([#2506](https://github.com/j178/prek/pull/2506))

### Documentation

- Document combined group filtering ([#2495](https://github.com/j178/prek/pull/2495))
- Explain what prek does in README ([#2507](https://github.com/j178/prek/pull/2507))
- Refresh "Why prek" highlights ([#2474](https://github.com/j178/prek/pull/2474))

### Contributors

- @will-wright-eng
- @Repiteo
- @j178

## Install prek 0.4.13

### Install prebuilt binaries via shell script

```sh
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/j178/prek/releases/download/v0.4.13/prek-installer.sh | sh
```

### Install prebuilt binaries via powershell script

```sh
powershell -ExecutionPolicy Bypass -c "irm https://github.com/j178/prek/releases/download/v0.4.13/prek-installer.ps1 | iex"
```

### Install prebuilt binaries via Homebrew

```sh
brew install prek
```

## Download prek 0.4.13

|  File  | Platform | Checksum |
|--------|----------|----------|
| [prek-aarch64-apple-darwin.tar.gz](https://github.com/j178/prek/releases/download/v0.4.13/prek-aarch64-apple-darwin.tar.gz) | Apple Silicon macOS | [checksum](https://github.com/j178/prek/releases/download/v0.4.13/prek-aarch64-apple-darwin.tar.gz.sha256) |
| [prek-x86_64-apple-darwin.tar.gz](https://github.com/j178/prek/releases/download/v0.4.13/prek-x86_64-apple-darwin.tar.gz) | Intel macOS | [checksum](https://github.com/j178/prek/releases/download/v0.4.13/prek-x86_64-apple-darwin.tar.gz.sha256) |
| [prek-aarch64-pc-windows-msvc.zip](https://github.com/j178/prek/releases/download/v0.4.13/prek-aarch64-pc-windows-msvc.zip) | ARM64 Windows | [checksum](https://github.com/j178/prek/releases/download/v0.4.13/prek-aarch64-pc-windows-msvc.zip.sha256) |
| [prek-i686-pc-windows-msvc.zip](https://github.com/j178/prek/releases/download/v0.4.13/prek-i686-pc-windows-msvc.zip) | x86 Windows | [checksum](https://github.com/j178/prek/releases/download/v0.4.13/prek-i686-pc-windows-msvc.zip.sha256) |
| [prek-x86_64-pc-windows-msvc.zip](https://github.com/j178/prek/releases/download/v0.4.13/prek-x86_64-pc-windows-msvc.zip) | x64 Windows | [checksum](https://github.com/j178/prek/releases/download/v0.4.13/prek-x86_64-pc-windows-msvc.zip.sha256) |
| [prek-aarch64-unknown-linux-gnu.tar.gz](https://github.com/j178/prek/releases/download/v0.4.13/prek-aarch64-unknown-linux-gnu.tar.gz) | ARM64 Linux | [checksum](https://github.com/j178/prek/releases/download/v0.4.13/prek-aarch64-unknown-linux-gnu.tar.gz.sha256) |
| [prek-i686-unknown-linux-gnu.tar.gz](https://github.com/j178/prek/releases/download/v0.4.13/prek-i686-unknown-linux-gnu.tar.gz) | x86 Linux | [checksum](https://github.com/j178/prek/releases/download/v0.4.13/prek-i686-unknown-linux-gnu.tar.gz.sha256) |
| [prek-riscv64gc-unknown-linux-gnu.tar.gz](https://github.com/j178/prek/releases/download/v0.4.13/prek-riscv64gc-unknown-linux-gnu.tar.gz) | RISCV Linux | [checksum](https://github.com/j178/prek/releases/download/v0.4.13/prek-riscv64gc-unknown-linux-gnu.tar.gz.sha256) |
| [prek-s390x-unknown-linux-gnu.tar.gz](https://github.com/j178/prek/releases/download/v0.4.13/prek-s390x-unknown-linux-gnu.tar.gz) | S390x Linux | [checksum](https://github.com/j178/prek/releases/download/v0.4.13/prek-s390x-unknown-linux-gnu.tar.gz.sha256) |
| [prek-x86_64-unknown-linux-gnu.tar.gz](https://github.com/j178/prek/releases/download/v0.4.13/prek-x86_64-unknown-linux-gnu.tar.gz) | x64 Linux | [checksum](https://github.com/j178/prek/releases/download/v0.4.13/prek-x86_64-unknown-linux-gnu.tar.gz.sha256) |
| [prek-armv7-unknown-linux-gnueabihf.tar.gz](https://github.com/j178/prek/releases/download/v0.4.13/prek-armv7-unknown-linux-gnueabihf.tar.gz) | ARMv7 Linux | [checksum](https://github.com/j178/prek/releases/download/v0.4.13/prek-armv7-unknown-linux-gnueabihf.tar.gz.sha256) |
| [prek-aarch64-unknown-linux-musl.tar.gz](https://github.com/j178/prek/releases/download/v0.4.13/prek-aarch64-unknown-linux-musl.tar.gz) | ARM64 MUSL Linux | [checksum](https://github.com/j178/prek/releases/download/v0.4.13/prek-aarch64-unknown-linux-musl.tar.gz.sha256) |
| [prek-i686-unknown-linux-musl.tar.gz](https://github.com/j178/prek/releases/download/v0.4.13/prek-i686-unknown-linux-musl.tar.gz) | x86 MUSL Linux | [checksum](https://github.com/j178/prek/releases/download/v0.4.13/prek-i686-unknown-linux-musl.tar.gz.sha256) |
| [prek-x86_64-unknown-linux-musl.tar.gz](https://github.com/j178/prek/releases/download/v0.4.13/prek-x86_64-unknown-linux-musl.tar.gz) | x64 MUSL Linux | [checksum](https://github.com/j178/prek/releases/download/v0.4.13/prek-x86_64-unknown-linux-musl.tar.gz.sha256) |
| [prek-arm-unknown-linux-musleabihf.tar.gz](https://github.com/j178/prek/releases/download/v0.4.13/prek-arm-unknown-linux-musleabihf.tar.gz) | ARMv6 MUSL Linux (Hardfloat) | [checksum](https://github.com/j178/prek/releases/download/v0.4.13/prek-arm-unknown-linux-musleabihf.tar.gz.sha256) |
| [prek-armv7-unknown-linux-musleabihf.tar.gz](https://github.com/j178/prek/releases/download/v0.4.13/prek-armv7-unknown-linux-musleabihf.tar.gz) | ARMv7 MUSL Linux | [checksum](https://github.com/j178/prek/releases/download/v0.4.13/prek-armv7-unknown-linux-musleabihf.tar.gz.sha256) |

## Verifying GitHub Artifact Attestations

The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the [GitHub CLI](https://cli.github.com/manual/gh_attestation_verify):
```sh
gh attestation verify <file-path of downloaded artifact> --repo j178/prek
```

You can also download the attestation from [GitHub](https://github.com/j178/prek/attestations) and verify against that directly:
```sh
gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>
```