Skip to main content
A Harnest release bundles three matching parts: the native CLI, the Python runtime wheel, and uv. The installer verifies the release checksum before it changes your machine.

Install

Verify the CLI and managed runtime:

Installer properties

You run harnest; you do not activate the private runtime or call python -m harnest.cli.
If no Python 3.10 or newer is available, embedded uv installs a pinned CPython 3.12 under the Harnest data directory. It does not modify the system Python.

Upgrade

Run the installer again to replace the CLI and its matching managed runtime. Then upgrade each project separately:
The first upgrade is a read-only plan. Apply verifies the planned source hashes and writes backups before changing project files.

Compatibility

Each Harnest release declares the ADK and LangGraph versions it supports. Project environments use those tested ranges; authored dependencies live in the project’s pyproject.toml and lock in uv.lock.

Publish a release

Release publishing is a maintainer workflow:
1

Run the complete gate

2

Prepare release notes and version metadata

Keep the native CLI, embedded wheel, and compatibility metadata on the same version.
3

Tag the release

The release workflow builds the supported macOS and Linux archives, creates checksums.txt, and publishes the artifacts.
4

Verify a clean install

Test the public installer and run harnest doctor on at least one supported platform.
Do not publish a CLI with a wheel from another version. The executable rejects mismatched embedded metadata.