harper-cli
A PyPI package that bundles the pre-built harper-cli binary from
Automattic/harper so it can be
installed with pip/uv. Automattic authors and builds the binary; this
repository only handles fetching/packaging it for distribution on PyPI.
This project is not affiliated with, endorsed by, or an official mirror of
Automattic/harper.
Installation
Install from PyPI with pip:
pip install harper-cli
or with uv:
uv add harper-cli
Usage
Run harper lint on one or more files, or pipe text through standard input.
See harper --help and harper lint --help for the full set of options
(output format, dialect, ignore/only rules, etc.) exposed by the underlying
harper-cli binary.
As a one-off tool, without installing
uvx --from harper-cli harper lint README.md
Inside a project virtual environment
If harper-cli is a project dependency (installed via pip install/uv add
above), run it directly once the venv is active:
harper lint README.md
Or, without activating the venv, via uv run:
uv run harper lint README.md
As a pre-commit hook
Since this package only wraps a binary, there's no dedicated pre-commit
hook repo to point to. Declare it as a local hook instead:
# .pre-commit-config.yaml
repos:
- repo: local
hooks:
- id: harper-lint
name: harper lint
entry: uvx --from harper-cli harper lint
language: system
types: [markdown,python]
License
See LICENSE and NOTICE for full attribution
details. In short: the bundled harper-cli binary is Copyright 2024 Elijah
Potter and licensed under Apache-2.0 by the Automattic/harper project. The
packaging code in this repository is separately Copyright 2026 Thierry Jean,
also under Apache-2.0.
Metadata
Release files for harper-cli 2.9.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| harper_cli-2.9.1-py3-none-win_amd64.whl | Python 3 | none | Windows x86-64 | Details |
| harper_cli-2.9.1-py3-none-manylinux2014_x86_64.whl | Python 3 | none | Linux glibc 2.17+ x86-64 | Details |
| harper_cli-2.9.1-py3-none-manylinux2014_aarch64.whl | Python 3 | none | Linux glibc 2.17+ ARM64 | Details |
| harper_cli-2.9.1-py3-none-macosx_11_0_arm64.whl | Python 3 | none | macOS 11.0+ ARM64 | Details |
| harper_cli-2.9.1-py3-none-macosx_10_12_x86_64.whl | Python 3 | none | macOS 10.12+ x86-64 | Details |
Total release size: 55.6 MB
Release files / harper_cli-2.9.1-py3-none-win_amd64.whl
| Download URL | harper_cli-2.9.1-py3-none-win_amd64.whl |
|---|---|
| Size | 12.6 MB |
| Tags | Python 3 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
8e55267b965eba7c8e58154b22c1980f32eb541b1ae1933f950b28972a805d9d
|
|
BLAKE2b-256 checksum How to use checksums |
81f73c8be9cc864182a9f4e44a48670c2d9ce9a424df9fde8df63a13abe5a88c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.7 {"installer":{"name":"uv","version":"0.12.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / harper_cli-2.9.1-py3-none-manylinux2014_x86_64.whl
| Download URL | harper_cli-2.9.1-py3-none-manylinux2014_x86_64.whl |
|---|---|
| Size | 13.1 MB |
| Tags | Linux glibc 2.17+ x86-64 Python 3 |
|
SHA-256 checksum How to use checksums |
1cca3a84166b927a7f205e830e934394dba12c869bd869b389ad932af041ec5a
|
|
BLAKE2b-256 checksum How to use checksums |
7bf7ea787013384f9279ff0a0917a7c075beaa1fb7f2960e85b6b3ebd580bf3c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.7 {"installer":{"name":"uv","version":"0.12.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / harper_cli-2.9.1-py3-none-manylinux2014_aarch64.whl
| Download URL | harper_cli-2.9.1-py3-none-manylinux2014_aarch64.whl |
|---|---|
| Size | 8.7 MB |
| Tags | Linux glibc 2.17+ ARM64 Python 3 |
|
SHA-256 checksum How to use checksums |
4cc67b031ac5b895243688b4166389e803a3ffb76d90b3eed619cfd2735ab5e7
|
|
BLAKE2b-256 checksum How to use checksums |
494772964a895057f5313f53b4bb99752fea6728355c88c715b7bb7228772445
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.7 {"installer":{"name":"uv","version":"0.12.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / harper_cli-2.9.1-py3-none-macosx_11_0_arm64.whl
| Download URL | harper_cli-2.9.1-py3-none-macosx_11_0_arm64.whl |
|---|---|
| Size | 8.5 MB |
| Tags | Python 3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
896180840b4ac755e9a1f151a693fcddc1e96e6e1d1e6fbb480084b816ec932a
|
|
BLAKE2b-256 checksum How to use checksums |
3e931ea74e5c965e8d383dae6f3f1881cc31e642aaff35966a6ee06108986a3f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.7 {"installer":{"name":"uv","version":"0.12.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / harper_cli-2.9.1-py3-none-macosx_10_12_x86_64.whl
| Download URL | harper_cli-2.9.1-py3-none-macosx_10_12_x86_64.whl |
|---|---|
| Size | 12.6 MB |
| Tags | Python 3 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
af019404a170166f5a5caa14d96f5196cdaeacb80ca7e342e470d7a6fe69151d
|
|
BLAKE2b-256 checksum How to use checksums |
d948edd22029accd97957294b13cceba57662969ef20ed3b7d09b1e81df25754
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.7 {"installer":{"name":"uv","version":"0.12.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|