Skip to main content

onepipeline-ui

The read API and browser view for onepipeline runs: an axum server wrapping the onepipeline SDK, plus the frontend that reads it.

The contract

docs/contract.md is the source of truth, quoted verbatim from the task that commissioned this repository. tests/contract.rs reconciles the code against it, so a route that exists in one and not the other fails the gate.

GET /healthz
GET /api/v2/runs                      # list w/ session attribution
GET /api/v2/runs/{run}                ?include_conversations=bool
GET /api/v2/runs/{run}/timeline       ?scope=run|node&node=ID
GET /api/v2/runs/{run}/conversations/{id}
GET /api/v2/runs/{run}/artifacts/{id}
GET /api/v2/events                    # SSE; fresh snapshot per connection
GET /api/v2/projects                  # runs grouped by project, as `onepipeline runs` groups them
GET /api/v2/projects/{project}
GET /api/v2/runs/{run}/channel        # the channel, consuming nothing
POST /api/v2/runs/{run}/channel/next  # claim the next surface
POST /api/v2/runs/{run}/channel/reply # the envelope's bytes, verbatim; ?correlation=C
POST /api/v2/runs/{run}/channel/surface
POST /api/v2/runs/{run}/attest
POST /api/v2/runs/{run}/stop          # as the session `--session` names
POST /api/v2/runs/{run}/adopt         # retains this binary as the driver
GET /api/v2/runs/{run}/watch          # SSE over `onepipeline watch`
GET /api/v2/unwatched
GET /api/v2/host
GET /api/v2/runs/{run}/status
GET /api/v2/runs/{run}/results
GET /api/v2/goals
GET /api/v2/runs/{run}/goals
GET /api/v2/runs/{run}/transcript     ?node=ID
GET /api/v2/runs/{run}/telemetry

The first seven are the read surface the browser view was written against; the rest are every verb the onepipeline CLI has once a plan is running, wrapped — each a thin call into onepipeline::verbs, never a re-implementation and never the binary. Launching a plan and driving the planning stage are outside this API; a reply on any run's channel is inside it. The server acts as one launching session (--session ID, else ONEPIPELINE_LAUNCHER_SESSION), which is what its stops and adoptions are judged by.

Every successful response carries the schema-version preamble — api_version, telemetry_schema_version (18), observed_at — with the payload flattened alongside it. Every failure carries {"error": {"code", "message"}}.

Payloads themselves come from the onepipeline SDK. Anything presentation-worthy lands there first, so the agent reading the CLI sees at least what the human in the UI sees; this crate owns the envelope, not the records.

The view

apps/dag-ui is the DAG Observatory: the browser view of the same runs, reading nothing but the contract above. It declares no schema, event name, or API path of its own — packages/dag-model holds the contract's client half, packages/telemetry-client is the only thing that speaks HTTP, and packages/dag-layout is the graph geometry. docs/dag-ui.md is its design record.

Install

Two deliverables, split by what they contain.

The read API, as the same prebuilt binary on three registries:

cargo install onepipeline-ui --locked  # from crates.io
pip install onepipeline-api-cli        # prebuilt wheel, no Rust toolchain
npm install -g onepipeline-api-cli     # prebuilt binary, no Rust toolchain

All three install one command, onepipeline-api:

onepipeline-api serve --runs-root ./runs

The view, as a static bundle on npm alone:

npm install onepipeline-ui             # the built frontend under dist/

That package installs no command — it is dist/, to be served statically.

Prebuilt archives and their .sha256 checksums are also attached to every GitHub Release.

Develop

just bootstrap        # from a clean clone
just check            # the deterministic gate, every project
just gate             # `check` plus the llmlint LLM-judge tier — the pre-push bar
just dag-ui-screens   # photograph the view at every viewport into a gallery

just --list is the full command surface. AGENTS.md is the durable instruction layer for humans and agents working here.

License

MIT. See LICENSE.

Release files for onepipeline-api-cli 0.10.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for onepipeline-api-cli 0.10.1
File
onepipeline_api_cli-0.10.1-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
onepipeline_api_cli-0.10.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl Python 3 none Linux glibc 2.17+ x86-64 Details
onepipeline_api_cli-0.10.1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
onepipeline_api_cli-0.10.1-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details
onepipeline_api_cli-0.10.1-py3-none-macosx_10_12_x86_64.whl Python 3 none macOS 10.12+ x86-64 Details

Total release size: 53.2 MB

Release files / onepipeline_api_cli-0.10.1-py3-none-win_amd64.whl

Download URL onepipeline_api_cli-0.10.1-py3-none-win_amd64.whl
Size 11.6 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
27aca2133939c12c3f292c146a0d05e97326ccd0f4dc7942dde5bb807196f8fb
BLAKE2b-256 checksum
How to use checksums
4763c343a990504b12ab2ad19d6d328e29050f95135911c2766127ae6f5d5dee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / onepipeline_api_cli-0.10.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL onepipeline_api_cli-0.10.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 10.9 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
8ddc31f1b483782eb6266b300017bed7be28e66bd9b45ec37750af2c95f9e698
BLAKE2b-256 checksum
How to use checksums
46345fb168fd22630ceac7733dd4557ad08927cc1f1f15821e4c8c6c266a9ab8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / onepipeline_api_cli-0.10.1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL onepipeline_api_cli-0.10.1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 10.1 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
6154622aac8eb2c769333789c0908fb490ed9bd20334999bb83e2a32904d7dbe
BLAKE2b-256 checksum
How to use checksums
3cbe951a680aca94ccb0543efd9ec6023ee9271d46ace5e1de738428ea08c862
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / onepipeline_api_cli-0.10.1-py3-none-macosx_11_0_arm64.whl

Download URL onepipeline_api_cli-0.10.1-py3-none-macosx_11_0_arm64.whl
Size 9.9 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
dab14bf4240cbfdabf80a97fe2179ed68946b0850bf6e02429b4e72315db6dcf
BLAKE2b-256 checksum
How to use checksums
3daf5988e4511a6c03574704281e1bddddcb7349577eb302e1d8116762e8ecda
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / onepipeline_api_cli-0.10.1-py3-none-macosx_10_12_x86_64.whl

Download URL onepipeline_api_cli-0.10.1-py3-none-macosx_10_12_x86_64.whl
Size 10.6 MB
Tags Python 3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
541b9f8a23b6c5968706d5159ad321c6566a7b4e17c9d92d0d1efaea19f75cda
BLAKE2b-256 checksum
How to use checksums
7c60379593c081660c9aaf35697d7fd3ad43f7581a1f8fdbb0347cc109581731
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

0.13.0

5 release files

0.12.1

5 release files

0.11.2

5 release files

0.11.1

5 release files

0.11.0

5 release files

This release

0.10.1 This release

5 release files

0.9.0

5 release files

0.8.0

5 release files

0.7.3

5 release files

0.7.2

5 release files

0.7.1

5 release files

0.7.0

5 release files

0.6.5

5 release files

0.6.4

5 release files

0.6.3

5 release files

0.6.2

5 release files

0.6.1

5 release files

0.6.0

5 release files

0.5.0

5 release files

0.4.0

5 release files

0.3.4

5 release files

0.3.3

5 release files

0.3.2

5 release files

0.3.1

5 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page