agentwheel 0.17.0 → 0.18.0
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.
- package/AGENT.md +29 -3
- package/README.md +55 -42
- package/dist/{chunk-24IUHC3D.js → chunk-UQLRZV5W.js} +1 -0
- package/dist/{identify-G3TXOHNS.js → identify-ZL46CENS.js} +1 -1
- package/dist/index.js +2517 -690
- package/install.md +12 -5
- package/llms.txt +7 -1
- package/openpack.json +1 -1
- package/package.json +4 -4
- package/skills/agentwheel/SKILL.md +65 -33
- package/skills/agentwheel-discovery/SKILL.md +1 -1
- package/skills/agentwheel/references/ct111-selfhost-instruction-activation.md +0 -24
- package/skills/agentwheel/references/fleet-control-cleanup-ct107-node-and-effective-adapters.md +0 -39
- package/skills/agentwheel/references/fleet-plugin-rollouts.md +0 -69
- package/skills/agentwheel/references/harness-path-map-rules-2026-06-13.md +0 -98
- package/skills/agentwheel/references/hermes-profile-scoped-skill-rollout.md +0 -43
package/AGENT.md
CHANGED
|
@@ -18,7 +18,7 @@ plugin directories to complete an Agentwheel change.
|
|
|
18
18
|
## Standard Flow
|
|
19
19
|
|
|
20
20
|
```bash
|
|
21
|
-
agentwheel add github:owner/agent-pack --adapter codex --
|
|
21
|
+
agentwheel add github:owner/agent-pack --adapter codex --local --mode tracking
|
|
22
22
|
agentwheel plan
|
|
23
23
|
agentwheel install
|
|
24
24
|
agentwheel status
|
|
@@ -35,9 +35,35 @@ Use explicit scope when the target matters:
|
|
|
35
35
|
```bash
|
|
36
36
|
agentwheel install github:owner/agent-pack --adapter claude --user
|
|
37
37
|
agentwheel install github:owner/agent-pack --adapter codex --local
|
|
38
|
-
agentwheel install
|
|
38
|
+
agentwheel install --fleet example-fleet --profile daily --dry-run
|
|
39
39
|
```
|
|
40
40
|
|
|
41
|
+
`--user`, `--local`, and `--fleet <fleet-id>` select separate desired-state scopes. Named fleets
|
|
42
|
+
are optional. Do not merge scopes or assume a fleet has priority over user or local state.
|
|
43
|
+
|
|
44
|
+
Register and inspect a schema-v3 fleet only after its canonical root, matching `fleetId`, and
|
|
45
|
+
required packages exist:
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
agentwheel fleet register example-fleet --root /srv/agentwheel/fleets/example-fleet --required-package core-agent-pack
|
|
49
|
+
agentwheel fleet list
|
|
50
|
+
agentwheel fleet show example-fleet
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
If a configured runtime path is owned by another scope, stop and use the separate plan-first
|
|
54
|
+
normalization workflow. Review its digest before apply; matching content is not permission to take
|
|
55
|
+
ownership.
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
agentwheel fleet normalize example-fleet --from user --package core-agent-pack --json
|
|
59
|
+
agentwheel fleet normalize example-fleet --from user --package core-agent-pack --plan-digest <reviewed-sha256> --apply
|
|
60
|
+
agentwheel fleet normalize example-fleet --from user --recover
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
Named fleets require a schema-v3-capable CLI. Upgrade Agentwheel first and verify
|
|
64
|
+
`agentwheel fleet --help` before creating, registering, reading, or planning fleet state. Do not
|
|
65
|
+
downgrade the config, strip fleet fields, or run a planning/mutation command with the old CLI.
|
|
66
|
+
|
|
41
67
|
## Companion Skills
|
|
42
68
|
|
|
43
69
|
Install the Agentwheel companion skill when the user wants Agentwheel guidance inside the runtime:
|
|
@@ -69,7 +95,7 @@ agentwheel install clawhub:@openclaw/package-name --adapter openclaw --local
|
|
|
69
95
|
Use the catalogue for browsing and copy-ready commands:
|
|
70
96
|
|
|
71
97
|
```text
|
|
72
|
-
https://
|
|
98
|
+
https://www.nestdev.it/agentwheel/catalogue.html
|
|
73
99
|
```
|
|
74
100
|
|
|
75
101
|
Draft a public catalogue submission without editing the registry by hand:
|
package/README.md
CHANGED
|
@@ -26,7 +26,7 @@ forward explicitly; installs make the current declaration true.
|
|
|
26
26
|
```bash
|
|
27
27
|
npm i -g agentwheel
|
|
28
28
|
agentwheel init
|
|
29
|
-
agentwheel add github:your-org/agent-pack --adapter codex --
|
|
29
|
+
agentwheel add github:your-org/agent-pack --adapter codex --local --mode tracking
|
|
30
30
|
agentwheel plan
|
|
31
31
|
agentwheel install
|
|
32
32
|
```
|
|
@@ -65,10 +65,6 @@ agentwheel install github:NestDevLab/agentwheel --adapter codex --local --skill
|
|
|
65
65
|
agentwheel install github:NestDevLab/agentwheel --adapter codex --local --skill agentwheel-discovery
|
|
66
66
|
```
|
|
67
67
|
|
|
68
|
-
> **Status: early (v0.12).** The public CLI vocabulary is package-manager style:
|
|
69
|
-
> `add`, `install`, `update`, and `uninstall`. A hidden `sync` shim remains for old bootstrapped
|
|
70
|
-
> skills; use `install` in all new docs and scripts.
|
|
71
|
-
|
|
72
68
|
## Supported runtimes & resources
|
|
73
69
|
|
|
74
70
|
agentwheel installs OpenPack resources into five built-in runtimes and into custom harnesses.
|
|
@@ -106,10 +102,10 @@ Fragments are Agentwheel composition inputs, not runtime file-drop targets.
|
|
|
106
102
|
| `agentwheel install` | Reconcile configured packages into the current target or selected fleet. Uses the graph lock as input by default. |
|
|
107
103
|
| `agentwheel install <name-or-source>` | Ensure semantics: configured name/source scopes the install; a new source is added and installed. |
|
|
108
104
|
| `agentwheel update [name]` | Re-resolve tracking packages, then apply. A configured name preserves artifacts owned by other roots; `--dependency <name-or-source>` moves one tracking dependency while unrelated graph nodes stay locked. |
|
|
109
|
-
| `agentwheel skill update <name>` | Resolve the owning configured package and reconcile only
|
|
105
|
+
| `agentwheel skill update <name>` | Resolve the owning configured package and reconcile only that skill plus genuine transitive composition inputs; sibling artifacts stay byte-identical and retain manifest/lock state. |
|
|
110
106
|
| `agentwheel uninstall <name-or-source>` | Remove a configured package from runtimes and config. |
|
|
111
107
|
| `agentwheel uninstall <name> --keep-files` | Remove from config/manifest while leaving runtime files unmanaged. |
|
|
112
|
-
| `agentwheel status` | Show configured packages, manifest/lock presence, and install state.
|
|
108
|
+
| `agentwheel status` | Show configured packages, manifest/lock presence, and install state. For a named fleet, use `--fleet <fleet-id> --profile <name>`; `--fleet <fleet-id> --all` uses profile `all` when present. |
|
|
113
109
|
| `agentwheel ownership handoff <type/name>` | Transfer one manifest entry to a different workspace root after exact owner, hash, and revision checks; runtime content is not rewritten. |
|
|
114
110
|
| `agentwheel mcp retire <package>` | Preview removal of one exact legacy MCP contribution under an explicitly selected install-state key; add `--apply` only after review. |
|
|
115
111
|
| `agentwheel doctor` | Check runtime setup and suggest explicit companion/selected skill install commands when they are missing. |
|
|
@@ -314,45 +310,45 @@ agentwheel install github:your-org/agent-pack --adapter codex,claude
|
|
|
314
310
|
```
|
|
315
311
|
|
|
316
312
|
Use `--local` for the current directory or `-t/--target-root <project>` for another
|
|
317
|
-
project/workspace. Use `--user`, `--local`, or
|
|
318
|
-
scope
|
|
319
|
-
skills install into
|
|
313
|
+
project/workspace. Use exactly one of `--user`, `--local`, or `--fleet <fleet-id>` when desired
|
|
314
|
+
state scope matters. `-i/--installation-type <type>` selects the runtime's install layout inside
|
|
315
|
+
that scope. For example, Codex local skills install into `.agents/skills`, while Codex user skills
|
|
316
|
+
install into `~/.agents/skills`. Named fleets are optional; ordinary user and local work does not
|
|
317
|
+
require a fleet registry.
|
|
320
318
|
|
|
321
319
|
When adding a new source this way, Agentwheel saves one package entry per adapter so later installs
|
|
322
320
|
do not collapse Codex and Claude state into the same config entry.
|
|
323
321
|
|
|
324
|
-
For a control-plane setup,
|
|
325
|
-
|
|
322
|
+
For a control-plane setup, register a named fleet and define its agents and profiles in that fleet's
|
|
323
|
+
config. A fleet is selected explicitly with `--fleet <fleet-id>`; no fleet has global priority and
|
|
324
|
+
Agentwheel never merges desired state from user, local, and fleet scopes.
|
|
326
325
|
|
|
327
326
|
```jsonc
|
|
328
327
|
{
|
|
328
|
+
"schemaVersion": 3,
|
|
329
|
+
"fleetId": "example-fleet",
|
|
330
|
+
"packages": [
|
|
331
|
+
{
|
|
332
|
+
"name": "core-agent-pack",
|
|
333
|
+
"source": "github:example-org/core-agent-pack",
|
|
334
|
+
"driver": "git",
|
|
335
|
+
"adapter": "codex",
|
|
336
|
+
"installationType": "local",
|
|
337
|
+
"mode": "tracking"
|
|
338
|
+
}
|
|
339
|
+
],
|
|
329
340
|
"agents": {
|
|
330
|
-
"lab-
|
|
331
|
-
"remote-codex": {
|
|
341
|
+
"lab-codex": {
|
|
332
342
|
"adapter": "codex",
|
|
333
343
|
"installationType": "local",
|
|
334
344
|
"root": "/workspace/project",
|
|
335
|
-
"transport": "
|
|
336
|
-
"host": "agent-host.example",
|
|
337
|
-
"user": "agent",
|
|
338
|
-
"port": 22,
|
|
339
|
-
"identityFile": "~/.ssh/id_ed25519"
|
|
340
|
-
},
|
|
341
|
-
"tirrenia": {
|
|
342
|
-
"adapter": "openclaw",
|
|
343
|
-
"installationType": "local",
|
|
344
|
-
"root": "/home/openclaw-tirrenia",
|
|
345
|
-
"transport": "ssh",
|
|
346
|
-
"host": "ct110",
|
|
347
|
-
"user": "openclaw-tirrenia",
|
|
348
|
-
"reloadCommands": [["systemctl", "restart", "openclaw-gateway-tirrenia.service"]]
|
|
345
|
+
"transport": "local"
|
|
349
346
|
}
|
|
350
347
|
},
|
|
351
348
|
"profiles": {
|
|
352
349
|
"daily": {
|
|
353
350
|
"runtimes": [
|
|
354
|
-
{ "agent": "lab-
|
|
355
|
-
{ "agent": "remote-codex" }
|
|
351
|
+
{ "agent": "lab-codex" }
|
|
356
352
|
]
|
|
357
353
|
}
|
|
358
354
|
}
|
|
@@ -360,24 +356,41 @@ For a control-plane setup, define named agents in config. Global config lives at
|
|
|
360
356
|
```
|
|
361
357
|
|
|
362
358
|
```bash
|
|
363
|
-
agentwheel
|
|
364
|
-
agentwheel
|
|
365
|
-
|
|
366
|
-
agentwheel
|
|
367
|
-
agentwheel
|
|
359
|
+
agentwheel fleet register example-fleet \
|
|
360
|
+
--root /srv/agentwheel/fleets/example-fleet \
|
|
361
|
+
--required-package core-agent-pack
|
|
362
|
+
agentwheel fleet list
|
|
363
|
+
agentwheel fleet show example-fleet
|
|
364
|
+
agentwheel install --fleet example-fleet --agent lab-codex
|
|
365
|
+
agentwheel install --fleet example-fleet --all
|
|
366
|
+
agentwheel update --fleet example-fleet --profile daily --dry-run
|
|
367
|
+
agentwheel install --fleet example-fleet --profile daily
|
|
368
|
+
agentwheel status --fleet example-fleet --profile daily
|
|
368
369
|
agentwheel install --all-detected
|
|
369
370
|
```
|
|
370
371
|
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
To scaffold a control-plane example:
|
|
372
|
+
If another scope already owns an intended runtime path, the plan fails closed even when the bytes
|
|
373
|
+
match. Use the separate normalization command to preview an explicit ownership transfer, review its
|
|
374
|
+
plan digest, and apply only that same plan. Fleet selection never implies takeover.
|
|
376
375
|
|
|
377
376
|
```bash
|
|
378
|
-
agentwheel
|
|
377
|
+
agentwheel fleet normalize example-fleet --from user --package core-agent-pack --json
|
|
378
|
+
agentwheel fleet normalize example-fleet --from user --package core-agent-pack \
|
|
379
|
+
--plan-digest <reviewed-sha256> --apply
|
|
380
|
+
agentwheel fleet normalize example-fleet --from user --recover
|
|
379
381
|
```
|
|
380
382
|
|
|
383
|
+
Recovery restores the source side from a pending normalization journal after verifying that the
|
|
384
|
+
recorded configs, manifests, and graph locks have not changed outside the transaction.
|
|
385
|
+
|
|
386
|
+
Configuration with named fleets requires a schema-v3-capable Agentwheel CLI. Upgrade the CLI first,
|
|
387
|
+
verify `agentwheel --version` and `agentwheel fleet --help`, then create the fleet config and
|
|
388
|
+
register it. Do not edit the config to an older schema or run an older CLI against it.
|
|
389
|
+
|
|
390
|
+
SSH targets use the same manifest and drift model as local targets. Planning reads the remote
|
|
391
|
+
install manifest and hashes remote files before deciding whether a file is up to date, drifted, or
|
|
392
|
+
conflicting. SSH hosts need `ssh`, `tar`, and `node` available on `PATH`.
|
|
393
|
+
|
|
381
394
|
Target resolution order is exact: `--target-root` wins, then `--agent`, then auto-detect from the
|
|
382
395
|
current directory, then fallback to the current directory. `--all-detected` is an explicit escape hatch
|
|
383
396
|
for applying to every runtime marker found in the current directory or `--target-root`; `--all` remains
|
|
@@ -742,7 +755,7 @@ Built-in runtime targets:
|
|
|
742
755
|
- [`docs/fleet-config.md`](docs/fleet-config.md) — named agents, SSH targets, and profiles.
|
|
743
756
|
- [`docs/design/federated-fleet-clusters.md`](docs/design/federated-fleet-clusters.md) — federating autonomous workspaces under one doctor/update control plane.
|
|
744
757
|
- [`docs/design/artifact-harness-compatibility.md`](docs/design/artifact-harness-compatibility.md) — artifact/harness compatibility matrix and rule semantics.
|
|
745
|
-
- Resource catalogue: https://
|
|
758
|
+
- Resource catalogue: https://www.nestdev.it/agentwheel/catalogue.html.
|
|
746
759
|
- [`DESIGN.md`](DESIGN.md) — architecture and module layout.
|
|
747
760
|
- [`LIFECYCLE.md`](LIFECYCLE.md) — publish, install, update, and customization model.
|
|
748
761
|
|