Skip to main content

oneagentgraph

Compose agents into a graph over oneharness and onejudge, and merge their outputs into one NDJSON event stream.

One config file and one CLI call: the graph names an oneharness config per role and side, and oneagentgraph prepares each member's launch, supervises liveness, and emits every turn, tool call, fallback, and settle as an event you can pipe into anything.

Install

pip install oneagentgraph-cli      # prebuilt binary, no Rust toolchain
npm install -g oneagentgraph-cli   # the same binary, via npm
cargo install oneagentgraph        # from crates.io, compiled locally

To install a revision that has not been released yet, build it from the repository:

cargo install --git https://github.com/nickderobertis/oneagentgraph --locked

Prebuilt archives for Linux (x86-64, arm64), macOS (Intel, Apple silicon), and Windows (x86-64) are attached to every release, with sha256 checksums.

onejudge is a library dependency, linked into this binary — there is nothing to install for it. run, smoke, and interrupt drive the oneharness CLI, so that has to be on PATH; health, validate, history, persona, trigger, reset-timer, cancel, and sweep need nothing at all — health reads oneharness's own identity sweep through its library, in this process. ONEAGENTGRAPH_ONEHARNESS_BIN names a pinned install instead.

What it does

oneagentgraph run graph.yaml --task "add the retry" --output json

A graph is YAML — members, the oneharness config each side uses, personas, schedules, and dependencies:

version: 6
name: node-scope
members:
  worker:
    kind: onejudge
    base_config: ./onejudge.base.yaml
    agent: { oneharness_config: ./oneharness.toml }
    judge: { oneharness_config: ./oneharness.judge.toml }
    mode: bypass

run streams one envelope per line. Exit 0 means every member settled, 1 that one failed or died, 2 that the config is invalid.

When a member's turn goes the wrong way, oneagentgraph interrupt RUN MEMBER --input "do this instead" redirects it in place instead of discarding it the way cancel does. Exit 3 means there was no controllable turn in flight, and says which — a fact, not an error.

Under disk pressure, oneagentgraph sweep --dry-run says what scratch exists, what is reclaimable, and what it could not examine; without --dry-run it reclaims what it proves is dead. What counts as proof is the liveness rules in the contract, which is where they are stated.

oneagentgraph owns no harness, model, or fallback logic. oneharness keeps owning identity chains, fallback, model pins, and quota classification; onejudge keeps owning the two-party conversation. This composes them.

Develop

just bootstrap   # from a clean clone; installs the oneharness CLI
just check       # the deterministic gate: format, clippy, tests, coverage, docs
just gate        # check + the LLM-judge tier; the pre-push bar

Licence

MIT. See LICENSE.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

oneagentgraph_cli-0.2.14-py3-none-win_amd64.whl (2.9 MB view details)

Uploaded Python 3Windows x86-64

oneagentgraph_cli-0.2.14-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.9 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

oneagentgraph_cli-0.2.14-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.7 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

oneagentgraph_cli-0.2.14-py3-none-macosx_11_0_arm64.whl (2.6 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

oneagentgraph_cli-0.2.14-py3-none-macosx_10_12_x86_64.whl (2.8 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

Details for the file oneagentgraph_cli-0.2.14-py3-none-win_amd64.whl.

File metadata

File hashes

Hashes for oneagentgraph_cli-0.2.14-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 c9b1f8f429d303acabcf282ffa4c5af1d866a3cf19c6de333192d4904035bb53
MD5 afe315d3f0c8da3d850ba8b512f0ba09
BLAKE2b-256 2dda6401c44faedf94328b4fca18e50ea590c78b5deafccf40a86e627c92b56d

See more details on using hashes here.

File details

Details for the file oneagentgraph_cli-0.2.14-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for oneagentgraph_cli-0.2.14-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3b6fd65ae83ffcb1b2004317e5a6aaf4c8444675fb37d6362355af8c09d43b6e
MD5 ecc72d139b35c5a4456e4a5bc5762a0e
BLAKE2b-256 f660ecc4e5032743d61c9275e5281eb49423959e48e9df0e2b220995cd1dd921

See more details on using hashes here.

File details

Details for the file oneagentgraph_cli-0.2.14-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for oneagentgraph_cli-0.2.14-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 26710ef567de2e3cb240f7e20adbdfe6c11b86cabebaece4b1f0015fd0dd8242
MD5 a1a5da388be687ed88885b12c7a43bd0
BLAKE2b-256 93ea22007515e66f5a8710a0c8e05981abc9e739b21cfe7e08e3d92358ee64ba

See more details on using hashes here.

File details

Details for the file oneagentgraph_cli-0.2.14-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for oneagentgraph_cli-0.2.14-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 077ca14b90e0c8aa565eeb25af0c29953a30009f36e5847ecd690fbde77f29fb
MD5 5da936236a5296a7f53cbb628d37377c
BLAKE2b-256 180b290908dc3da219cf65bd8f07223178d3621bff023058f37637fd59386e57

See more details on using hashes here.

File details

Details for the file oneagentgraph_cli-0.2.14-py3-none-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for oneagentgraph_cli-0.2.14-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 58d3c17bba08eafd7d0c27622a2ded26ae544d56bd515558ea9ce4a5e356bd22
MD5 844c18f270ae8b3c811b9d8b4b303f09
BLAKE2b-256 86a6da6acb1aa1735a1b3f65f461766abc93e77681622993a3720ce094fdceaa

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page