primarypath

Download

Get Primary Path

Free under Apache-2.0. Every release is signed by the workflow that built it; verify what you download before you run it in production. Release notes and every file are on the releases page.

Try it on one machine

Docker with Compose. It listens on 127.0.0.1 only and runs without authentication, for evaluation. Then run the demos against it.

curl -fsSLO https://github.com/om-er/primarypath-releases/releases/latest/download/docker-compose.yml
docker compose up -d --wait
# open http://127.0.0.1:8123

Everything in a release

WhatGet itFor
Server imagedocker pull ghcr.io/om-er/primarypath:latestlinux/amd64 and linux/arm64. Pin a version, then its digest.
Compose filesdocker-compose.yml, docker-compose.prod.ymlEvaluation, and the production overlay (https, auth required). Install
Helm charthelm install primarypath oci://ghcr.io/om-er/charts/primarypath --version X.Y.ZKubernetes, restricted Pod Security by default. Install
Python SDKpip install primarypath-sdkGovern an agent from Python, sync or async.
Framework integrationspip install primarypath-langgraph
pip install primarypath-openai-agents
pip install primarypath-claude-agent
pip install primarypath-drangue
pip install primarypath-mcp
The framework's own pause, wired to the inbox; the MCP gateway needs no agent changes. Integrations
Verifierpip install primarypath-verifyAuditors: check an exported bundle offline. Verifier guide
Demospip install primarypath-demosThe two walkthroughs from the home page. Demo guide
TypeScript SDKprimarypath-client-X.Y.Z.tgz on the releases pagenpm install the tarball's URL. Install
Grafana dashboardgrafana-dashboard.jsonA starting point for the service's metrics. Metrics
Checksums, SBOMs, signaturesSHA256SUMS, sbom-*.json, *.sigstore.json on the releases pageVerifying a download

Check the proof yourself

A real signed audit bundle from the two demos, the key ring to pin, and a copy in which one fact was rewritten afterwards: the rejected €840 refund turned into €84. The verifier passes the first and names the exact record that changed in the second. No server involved.

pip install primarypath-verify
primarypath-verify bundle.json --pubring pubring.json
primarypath-verify bundle-tampered.json --pubring pubring.json