onepipeline-cli 0.1.1__py3-none-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- onepipeline_cli-0.1.1.data/scripts/onepipeline.exe +0 -0
- onepipeline_cli-0.1.1.dist-info/METADATA +126 -0
- onepipeline_cli-0.1.1.dist-info/RECORD +6 -0
- onepipeline_cli-0.1.1.dist-info/WHEEL +4 -0
- onepipeline_cli-0.1.1.dist-info/licenses/LICENSE +21 -0
- onepipeline_cli-0.1.1.dist-info/sboms/onepipeline.cyclonedx.json +2529 -0
|
Binary file
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: onepipeline-cli
|
|
3
|
+
Version: 0.1.1
|
|
4
|
+
Classifier: Development Status :: 3 - Alpha
|
|
5
|
+
Classifier: Environment :: Console
|
|
6
|
+
Classifier: Intended Audience :: Developers
|
|
7
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
8
|
+
Classifier: Operating System :: OS Independent
|
|
9
|
+
Classifier: Programming Language :: Rust
|
|
10
|
+
Classifier: Topic :: Software Development :: Build Tools
|
|
11
|
+
License-File: LICENSE
|
|
12
|
+
Summary: Execute a task DAG over oneagentgraph and onevcs, merging their event streams into one.
|
|
13
|
+
Keywords: orchestration,dag,agents,cli,ndjson
|
|
14
|
+
Home-Page: https://github.com/nickderobertis/onepipeline
|
|
15
|
+
Author: Nick DeRobertis
|
|
16
|
+
License: MIT
|
|
17
|
+
Requires-Python: >=3.9
|
|
18
|
+
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
|
|
19
|
+
Project-URL: Homepage, https://github.com/nickderobertis/onepipeline
|
|
20
|
+
Project-URL: Repository, https://github.com/nickderobertis/onepipeline
|
|
21
|
+
|
|
22
|
+
# onepipeline
|
|
23
|
+
|
|
24
|
+
Execute a task DAG over [`oneagentgraph`](https://github.com/nickderobertis/oneagentgraph)
|
|
25
|
+
and [`onevcs`](https://github.com/nickderobertis/onevcs), merging their event
|
|
26
|
+
streams into one.
|
|
27
|
+
|
|
28
|
+
`onepipeline` is the composition layer. It owns the plan — a dependency graph
|
|
29
|
+
mixing direct agent nodes, repository lifecycle nodes, and explicit human actions
|
|
30
|
+
— schedules it in rounds, dispatches each node through a pluggable **executor
|
|
31
|
+
seam**, and keeps a live channel open to the planner supervising the run. The
|
|
32
|
+
agents come from `oneagentgraph`; the clones, worktrees, gates, and change
|
|
33
|
+
requests come from `onevcs`. Dependency direction is one-way: neither sibling
|
|
34
|
+
depends on this crate.
|
|
35
|
+
|
|
36
|
+
The public types, traits, config schemas, and CLI surface are the approved
|
|
37
|
+
contract in [`docs/contract.md`](docs/contract.md), compiled — and implemented
|
|
38
|
+
behind it. `onepipeline` composes its two siblings by running their CLIs, so a
|
|
39
|
+
build of either that still refuses will make the dispatches this crate starts
|
|
40
|
+
refuse too; the composition layer itself is complete.
|
|
41
|
+
|
|
42
|
+
## Install
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
pip install onepipeline-cli # prebuilt binary, no Rust toolchain
|
|
46
|
+
npm install -g onepipeline-cli # the same binary, via npm
|
|
47
|
+
cargo install onepipeline # from crates.io, compiled locally
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
To install a revision that has not been released yet — which today is every
|
|
51
|
+
revision, since the crate depends on its siblings by git and a git dependency
|
|
52
|
+
cannot be published — build it from the repository:
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
cargo install --git https://github.com/nickderobertis/onepipeline --locked
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
Prebuilt archives for Linux (x86-64, arm64), macOS (Intel, Apple silicon), and
|
|
59
|
+
Windows (x86-64) are attached to every release, with `sha256` checksums.
|
|
60
|
+
|
|
61
|
+
## What it does
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
onepipeline start plan.json --round-budget 14400 --heartbeat-interval 1800
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
`start` launches the run's **dag-scope agent graph** — a shipped default of an
|
|
68
|
+
`orchestrator` member driving the engine, and a resettable-cron `check-in` member
|
|
69
|
+
that surfaces a status when nobody has reported one for a while. Attached, it
|
|
70
|
+
returns when the run settles; exit `3` means nothing is driving the run, and
|
|
71
|
+
`onepipeline adopt RUN` attaches a fresh driver to the intact ledger.
|
|
72
|
+
|
|
73
|
+
The planner supervises over the channel:
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
onepipeline next run-1 # read the next surface
|
|
77
|
+
onepipeline reply run-1 <<<'{"version":1,"commands":[ # edit the live graph
|
|
78
|
+
{"op":"retry","id":"failed","node":{"id":"retry","task":"..."}}]}'
|
|
79
|
+
onepipeline attest run-1 design-approval # complete a human action
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
Every edit is applied or rejected with a reason: `reply` exits `0` when the
|
|
83
|
+
reconciler applied it, `1` when it is queued but not yet reconciled, and `2` when
|
|
84
|
+
it was refused.
|
|
85
|
+
|
|
86
|
+
Read-only views — `runs`, `status`, `host`, `monitor`, `results`, `goals`,
|
|
87
|
+
`telemetry` — report unread surfaces, driver liveness, and provider health
|
|
88
|
+
without touching a run.
|
|
89
|
+
|
|
90
|
+
## Where a dispatch runs
|
|
91
|
+
|
|
92
|
+
The [executor seam](docs/contract.md) decides. v1 ships the local executor only;
|
|
93
|
+
the trait and the rules grammar are shaped so a dispatch-server or Kubernetes
|
|
94
|
+
executor is a config change rather than a code change.
|
|
95
|
+
|
|
96
|
+
```yaml
|
|
97
|
+
executors:
|
|
98
|
+
- {name: local, type: local, max_load1: 8.0, min_free_mem: 2GiB}
|
|
99
|
+
rules:
|
|
100
|
+
- when: {executor_has_capacity: local}
|
|
101
|
+
use: local
|
|
102
|
+
- use: local
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
Ordered: the first rule whose `when` holds decides, and a rule with no `when` is
|
|
106
|
+
the fallback. A `when` tests an executor's capacity, the node's own labels
|
|
107
|
+
(`when: {node_label: {persona: reviewer}}`), or both — several conditions in one
|
|
108
|
+
`when` all have to hold.
|
|
109
|
+
|
|
110
|
+
## Development
|
|
111
|
+
|
|
112
|
+
```bash
|
|
113
|
+
just bootstrap # from a clean clone
|
|
114
|
+
just check # the deterministic gate
|
|
115
|
+
just gate # check + the diff-scoped llmlint tier
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
`just --list` is the full command surface.
|
|
119
|
+
[`docs/contract-divergences.md`](docs/contract-divergences.md) records every place
|
|
120
|
+
the code could not compile the contract exactly as written, and what the planner
|
|
121
|
+
who owns the contract ruled on each.
|
|
122
|
+
|
|
123
|
+
## License
|
|
124
|
+
|
|
125
|
+
MIT.
|
|
126
|
+
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
onepipeline_cli-0.1.1.data/scripts/onepipeline.exe,sha256=TVpm5-_tEN5JfoFZ0o_Ovw04agwrmRpjuc_pVk-mEHM,2862592
|
|
2
|
+
onepipeline_cli-0.1.1.dist-info/METADATA,sha256=J9FzHv_F18COLWDHIPW2pB37iT8XcAlmWRTZyw8yWw4,4930
|
|
3
|
+
onepipeline_cli-0.1.1.dist-info/WHEEL,sha256=2zDlIYIdD4m4N3p5DVEG3iJhGLdhsBQgdH-FqVkAur8,94
|
|
4
|
+
onepipeline_cli-0.1.1.dist-info/licenses/LICENSE,sha256=JeBGdcXIUkoTZEHhkKd-FmKgdgumkH509Ob1QWJomVE,1072
|
|
5
|
+
onepipeline_cli-0.1.1.dist-info/sboms/onepipeline.cyclonedx.json,sha256=dtUhe1_vbj8ZwgQFWMV9pU8Uf1Ej-ipjoEXn6iU4c6c,80202
|
|
6
|
+
onepipeline_cli-0.1.1.dist-info/RECORD,,
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Nick DeRobertis
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|