HEMRA

Install

HEMRA runs on Linux and macOS. The hemra command is built from source with Cargo. The Mac app is a separate download.

The command line

You need Rust 1.80 or later (install it with rustup). Then build hemra and hemra-driver, the program that runs agent CLIs and ACP agents as harnesses:

cargo install --git https://github.com/UmaiTech/hemra hemra-cli hemra-drivers
hemra --version
hemra doctor

hemra doctor lists what this machine can run: Docker, Harbor, the agent CLIs it finds, and every sandbox with the protections it enforces.

To work from a clone instead, which also gives you the examples these docs use:

git clone https://github.com/UmaiTech/hemra
cd hemra
cargo build --release
export PATH="$PWD/target/release:$PATH"

Optional pieces

You want toInstall
Run harnesses in a container (the default sandbox), or score tasks with their own verifierDocker
Run Harbor agents or pin harbor: datasetsHarbor 0.24 (pip install harbor==0.24.0, Python 3.12+)
Pin swebench: datasets (other than a local .json or .jsonl file)pip install swebench==5.0.2
Run an agent through its CLIThe agent itself: Claude Code, Codex or Pi
Run an ACP agentThe agent or its ACP adapter, such as Gemini CLI, Goose, OpenCode or claude-agent-acp
Use the SDK drivers, the TypeScript SDK, the dashboard or the managed sandboxesNode.js 22 or later, then npm ci && npm run build in a clone
Run in Modal, a Fly.io Machine or a Fly SpriteAn account and token for that provider (see Sandboxes)

hemra doctor reports Docker, Harbor, the agent CLIs and the sandbox bridges as found or missing, so you can install only what a run needs.

The store

HEMRA keeps everything in one directory, the store: .hemra in the current directory, or $HEMRA_STORE, or --store <dir>. Pinned datasets, runs, attempts, event logs and artifacts all live there. Nothing is sent anywhere. Treat a store as being as sensitive as the most sensitive prompt or file a run touched (Trust and privacy).

The Mac app

The download page has the signed, notarized universal DMG once a release is published. The app opens a store, starts runs and works the queue, with no server to start. See Mac app.

Edit this page on GitHub