@ai-ecoverse/slicc-bios 1.53.5 → 1.54.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.
Files changed (2) hide show
  1. package/README.md +1 -0
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -483,6 +483,7 @@ seven can also join a tailnet, with a patched build of Tailscale's wasm client (
483
483
  - **No agent:** with no agent running, or a slicc-agent without page-side webhooks, the delivery is dropped with a warning. The hub has already answered the sender `202`.
484
484
  - **Remote control (`agent`):** a linked CLI can prompt, watch and stop seven's agent (`slicc prompt`, `slicc watch`, `slicc abort`). The page offers cap `agent` to a CLI on this computer always, and to a remote device only after **Control** is turned on for it in Linked devices. That setting is kept per device certificate and cleared by unlinking it. Any other link's agent OPEN gets `EACCES`.
485
485
  - Each `OPEN { kind: 'agent', op }` goes to the agent of the tab that runs the kernel, on its active cone, through slicc-agent's `remoteControl`. `prompt` answers OPENED with how the prompt was delivered (or `RESET EBUSY` for `whenBusy: 'reject'` while busy), then streams NDJSON events from the prompt's own `user` event to its `end` line. A prompt over about 60 KiB comes as `length` bytes after an empty OPENED, and the first line then says how it was delivered. `watch` answers with the transcript `head` (and `gap` when `since` is gone), then streams events. A `watch` OPEN with `busy: true` (`slicc wait`, `slicc prompt --allsettled`) also asks the agent whether it has anything left to do: OPENED then carries `busy: true | false`, and a `{"t":"busy","busy","why"?}` line follows each time that changes. `abort` answers `{ aborted }`.
486
+ - `inventory` (slicc-cli's `slicc agents`, slicc-agent ≥ 7.12.0) answers OPENED with a snapshot of that cone's agents and its live scoops, and with `watch: true` it streams a whole new one as `{"t":"inventory",…}` on each change, at most one every 250 ms, the latest always sent, and the current one again every 30 s; the timers run only while such a stream is open. Each snapshot is `{ v: 1, instance, seq, changedAt, reportedAt, counts, agents }`, built field by field from slicc-agent's, so nothing else gets through: at most 256 agents, and a `provider` or `model` over 128 characters is left out. One line is written at a time; a change while one waits for the CLI to read only marks the latest snapshot to go next. `instance.id` is 16 random bytes minted once per profile into `slicc-os.inventory`, with a second random key beside it that never leaves the page; `instance.name` is the HELLO's name. An agent's `id` and `parent` are the first 16 bytes of HMAC-SHA-256 under that key of slicc-agent's registry id, so they stay the same for the profile and carry no scoop or cone name. An agent without the inventory answers `EOPNOTSUPP: this agent has no inventory`, and a tab without the agent, a follower included, `EOPNOTSUPP: the agent is not running`. Watching agents doesn't count as **Watching**.
486
487
  - A CLI that goes away ends its stream but never aborts the run; aborting is explicit. A `watch` the CLI half-closes right after OPENED, as slicc does, still ends at once when it is later reset or its link closes, so **Watching** clears without waiting for the agent's next event.
487
488
  - Linked devices lists every device that has linked, offline ones too, with its control setting, and shows **Prompting** or **Watching** while a CLI does, also in the header.
488
489
  - A device that reconnects replaces only its own process's link, so `slicc <join> prompt` doesn't drop that machine's `follow`. Control-only links (`caps: []`) get no `.slicc.internal` name and no exit.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-ecoverse/slicc-bios",
3
- "version": "1.53.5",
3
+ "version": "1.54.0",
4
4
  "description": "Slim loader that boots SLICC into OPFS and serves the UI from there",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",