@plurnk/plurnk-agui 1.18.0 → 1.19.1

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 (45) hide show
  1. package/.env.defaults +9 -2
  2. package/README.md +2 -1
  3. package/SPEC.md +108 -52
  4. package/dist/AguiPlus.d.ts +2 -8
  5. package/dist/AguiPlus.d.ts.map +1 -1
  6. package/dist/AguiPlus.js +2 -3
  7. package/dist/AguiPlus.js.map +1 -1
  8. package/dist/AguiSurface.d.ts.map +1 -1
  9. package/dist/AguiSurface.js +0 -3
  10. package/dist/AguiSurface.js.map +1 -1
  11. package/dist/BuiltinActions.d.ts +2 -1
  12. package/dist/BuiltinActions.d.ts.map +1 -1
  13. package/dist/BuiltinActions.js +14 -9
  14. package/dist/BuiltinActions.js.map +1 -1
  15. package/dist/MessageAddress.d.ts +9 -0
  16. package/dist/MessageAddress.d.ts.map +1 -0
  17. package/dist/MessageAddress.js +25 -0
  18. package/dist/MessageAddress.js.map +1 -0
  19. package/dist/Module.d.ts +10 -0
  20. package/dist/Module.d.ts.map +1 -1
  21. package/dist/Module.js +57 -24
  22. package/dist/Module.js.map +1 -1
  23. package/dist/Portal.d.ts +2 -11
  24. package/dist/Portal.d.ts.map +1 -1
  25. package/dist/Portal.js +18 -20
  26. package/dist/Portal.js.map +1 -1
  27. package/dist/RunHandler.d.ts +1 -1
  28. package/dist/RunHandler.d.ts.map +1 -1
  29. package/dist/RunHandler.js +16 -17
  30. package/dist/RunHandler.js.map +1 -1
  31. package/dist/Translator.d.ts +2 -6
  32. package/dist/Translator.d.ts.map +1 -1
  33. package/dist/Translator.js +56 -110
  34. package/dist/Translator.js.map +1 -1
  35. package/dist/action-results.d.ts +0 -1
  36. package/dist/action-results.d.ts.map +1 -1
  37. package/dist/action-results.js +1 -26
  38. package/dist/action-results.js.map +1 -1
  39. package/dist/config.d.ts +2 -0
  40. package/dist/config.d.ts.map +1 -1
  41. package/dist/config.js +10 -1
  42. package/dist/config.js.map +1 -1
  43. package/dist/types.d.ts +2 -0
  44. package/dist/types.d.ts.map +1 -1
  45. package/package.json +8 -9
package/.env.defaults CHANGED
@@ -1,7 +1,14 @@
1
- # @plurnk/plurnk-agui — client protocol. Listener address: Core's PLURNK_HOST/PLURNK_PORT.
1
+ # @plurnk/plurnk-agui — client protocol. Listener address: the shared PLURNK_HOST/PLURNK_PORT
2
+ # (@plurnk/plurnk-contracts).
2
3
 
3
- # Bearer required on non-preflight requests; empty = no module-level authentication.
4
+ # Bearer required on non-preflight requests; empty = no module-level authentication. Empty is the
5
+ # package floor, not the shipped posture: a fresh install mints its own token into the operator's
6
+ # `.env` above this ({§agui-http-authorization}), and every client reads it from there. Emptying
7
+ # that line is how an operator turns the perimeter off.
4
8
  PLURNK_AGUI_TOKEN=
9
+ # The origin whose pages a browser lets read replies (CORS): * = any page; one origin = that page
10
+ # only; empty = no CORS headers, so no page reads a reply. The bearer, not this, is the perimeter.
11
+ PLURNK_AGUI_ALLOW_ORIGIN=*
5
12
  # Default run turn cap: empty = no module default; -1 = unlimited; otherwise nonnegative integer.
6
13
  # Core's operator ceiling still applies.
7
14
  PLURNK_AGUI_MAX_TURNS=
package/README.md CHANGED
@@ -22,7 +22,8 @@ delivers it into the parent's log ({§agui-topology-scope}).
22
22
 
23
23
  | Daemon evidence | Client projection |
24
24
  | --- | --- |
25
- | TASK | Replaceable `ACTIVITY_SNAPSHOT` with an ACP Plan; not reasoning. |
25
+ | NOTE | Ordinary operation row containing literal working memory. |
26
+ | WAIT / loop conclusion | Lifecycle signals; delivered SEND replies are assistant speech. |
26
27
  | Live provider reasoning | Standard `REASONING_*` deltas, immediately. Retries have separate identities. |
27
28
  | SEND | Assistant text; already-streamed reasoning is not repeated. |
28
29
  | Other model operations | Standard tool calls and results. |
package/SPEC.md CHANGED
@@ -10,13 +10,18 @@ does not recompute them.
10
10
  - §agui-daemon-client **The module is an in-process plugin of the daemon** — the
11
11
  production host pre-binds its AG-UI+ listener, then daemon activation
12
12
  (`registerModule` → the application port) makes the client interface ready.
13
- AG-UI owns the socket throughout. No WebSocket, no separate process.
14
- - §agui-listener-admission **Bound is not ready.** `Module.bind` owns the configured
15
- TCP address before durable-state admission and answers every request with a
16
- retryable 503 until `Module.start` installs the application port. A bind error
17
- rejects with its originating socket failure; there is no unhandled server
18
- error, silent pending promise, or close/rebind window. `Module.init` composes
19
- bind and start for direct in-process use.
13
+ AG-UI mounts the root of the daemon's one listener ({§http-host}) and owns no
14
+ socket of its own under the daemon. No WebSocket, no separate process.
15
+ - §agui-listener-admission **Bound is not ready.** Under the daemon the socket is
16
+ core's ({§startup-listener-admission}): bound before durable-state admission,
17
+ answering a retryable 503 until this module mounts the root at `Module.start`,
18
+ which installs the application port and registers `/` and `/agui`
19
+ ({§http-host}). Standalone, `Module.bind` owns a private TCP address with the
20
+ same admission shape — a retryable 503 until `Module.start`, a bind error that
21
+ rejects with its originating socket failure, and no unhandled server error,
22
+ silent pending promise, or close/rebind window; `Module.init` composes bind
23
+ and start for direct in-process use. `Module.create` is the daemon's door and
24
+ owns no socket.
20
25
  - §agui-thread-binding **A PLURNK workspace is the world; an AG-UI thread is a conversation over it**
21
26
  — the lifecycle vocabulary is defined by service {§lifecycle-terms}. PLURNK's machine model ({§machine-processes}) splits the world (a workspace: one
22
27
  curated workspace) from the CONVERSATION (a worker: a history over that world). AG-UI's workspace
@@ -64,12 +69,12 @@ One accepted Run or daemon notification produces zero-or-more AG-UI events:
64
69
  | schema-valid `RunAgentInput` | `RUN_STARTED` + initial `STATE_SNAPSHOT` |
65
70
  | `forwardedProps.plurnk.mode = "sync"` | Durable conversation `MESSAGES_SNAPSHOT`, then pending interrupt, live observation, or `RUN_FINISHED` {§agui-conversation-sync} |
66
71
  | `log/entry` advancing to a newer turn | `STEP_FINISHED` + `STEP_STARTED` (`turn-<id>`); late updates to earlier receipts retain their row identity without rewinding the step or clearing delivered reasoning. |
67
- | `log/entry` op=TASK (model) | `ACTIVITY_SNAPSHOT` {§agui-plan-activity} + `CUSTOM plurnk.send`; no assistant speech |
68
- | Successful targetless model SEND | Optional readable-reasoning sequence {§agui-readable-reasoning}, then `TEXT_MESSAGE_START/CONTENT/END` + `CUSTOM plurnk.send` (signal/status) |
69
- | Directed or unsuccessful SEND | Ordinary tool-call operation events; never assistant speech |
72
+ | `log/entry` WAIT (model) | `CUSTOM plurnk.send` with the actual wait result; no invented plan or assistant speech |
73
+ | Successful SEND replying to this conversation, including an addressed reply delivered from another worker | Optional readable-reasoning sequence {§agui-readable-reasoning}, then `TEXT_MESSAGE_START/CONTENT/END` + `CUSTOM plurnk.send` (signal/status) |
74
+ | Other directed or unsuccessful SEND | Ordinary tool-call operation events; never assistant speech |
70
75
  | `log/entry` other op (model) | `TOOL_CALL_START/ARGS/END` (+ `TOOL_CALL_RESULT` when rx exists) |
71
76
  | `log/entry` actionless `kind=emissionAttempt` | Forensic row only; no assistant speech or reasoning replay. |
72
- | `log/entry` READ of `reasoning:///…` or `ops:///…` | An ordinary operation receipt, not a reasoning stream. Standard reasoning delivery and replay retain original provider evidence under {§agui-readable-reasoning}. |
77
+ | `log/entry` READ of `reasoning://<worker>/…` or `ops://<worker>/…` | An ordinary operation receipt, not a reasoning stream. Standard reasoning delivery and replay retain original provider evidence under {§agui-readable-reasoning}. |
73
78
  | `log/entry` origin≠model | `CUSTOM plurnk.ambient` (foists, deltas, narrations) |
74
79
  | client-owned `loop/proposal` | `TOOL_CALL_START/ARGS/END`, `STEP_FINISHED` when a turn step is active, then `RUN_FINISHED` with an interrupt outcome; its resume Run reopens the continued turn with `STEP_STARTED` after `RUN_STARTED` and initial state |
75
80
  | `loop/packet` | `STATE_DELTA` replacing the bound thread's loop id, lifecycle, and exact packet count |
@@ -79,19 +84,17 @@ One accepted Run or daemon notification produces zero-or-more AG-UI events:
79
84
  | `reasoning/event` | Standard live `REASONING_START` → `REASONING_MESSAGE_START` → one or more `REASONING_MESSAGE_CONTENT` → `REASONING_MESSAGE_END` → `REASONING_END` {§agui-readable-reasoning} |
80
85
  | `stream/event` + `stream/concluded` | `CUSTOM plurnk.stream` + `ACTIVITY_SNAPSHOT` (the standard background-activity channel: `activityType` = the scheme, replace-snapshot, §475). A conclusion preserves its exact universal `result`, including RFC 9457 Problem Details; AG-UI does not reconstruct failure from a status or summary. |
81
86
 
82
- §agui-plan-activity **Task inventory is replaceable PLAN activity, not reasoning.** PLAN activity is the
83
- ACP projection of the model's latest TASK {§plan-value} installment, produced only at
84
- this standards boundary under {§plan-acp-projection}. Provider reasoning is a
85
- separate channel, so PLAN never projects into AG-UI `REASONING_*` events. The thread-stable
86
- `<threadId>/plan` identity makes every live update replace the prior activity;
87
- reattach includes only the newest model inventory. The same ACP projection replaces
88
- `tx.body` on every client-facing TASK row, whether delivered by `CUSTOM plurnk.row`,
89
- `CUSTOM plurnk.ambient`, or `log.read`; all other row and transaction fields remain intact:
87
+ §agui-lifecycle-projection **Lifecycle, memory and speech remain distinct.** Live
88
+ events, replay and `log.read` preserve literal native bodies. No task inventory
89
+ or ACP plan is inferred from prose.
90
90
 
91
91
  | Projection | Standard representation |
92
92
  | ---------- | ----------------------- |
93
- | live | `ACTIVITY_SNAPSHOT { messageId: "<threadId>/plan", activityType: "PLAN", content: AcpPlan, replace: true }` |
94
- | reattach | The newest `ActivityMessage { id: "<threadId>/plan", role: "activity", activityType: "PLAN", content: AcpPlan }` at its chronological position inside `MESSAGES_SNAPSHOT` |
93
+ | NOTE | Ordinary tool-call operation and durable row, not assistant speech, PLAN activity, or a substitute reasoning stream |
94
+ | WAIT | Durable row and lifecycle signal; its text does not become a response |
95
+ | SEND response | Assistant message through {§loop-response-messages}; delivery and completion remain independent |
96
+ | Completion | Standard run lifecycle without an invented message |
97
+ | Replay | Delivered messages in chronological order; no synthetic latest-plan replacement |
95
98
 
96
99
  §agui-readable-reasoning **Readable provider reasoning uses AG-UI's standard
97
100
  reasoning channel.** A core `{§notifications-reasoning-event}` for the thread's
@@ -102,26 +105,27 @@ the failed request's partial reasoning. Foreign-worker and BARE reasoning never
102
105
  enter the thread. Failed or rejected requests may therefore leave honest
103
106
  transient reasoning that is not replayed.
104
107
 
105
- Core also derives optional complete `reasoning` on admitted SEND and disposition
108
+ Core also derives optional complete `reasoning` on admitted SEND, NOTE and disposition
106
109
  rows from their durable packet ({§methods-readable-reasoning}). When that value
107
110
  was not already delivered by the completed live stream, projection emits it
108
- atomically before the turn's first speech or inventory under `<OP identity>/reasoning`.
111
+ atomically before the turn's first corresponding row under `<OP identity>/reasoning`.
109
112
  Subsequent rows in the same turn do not repeat it. A standard interrupt may divide one durable Loop across consecutive
110
113
  AG-UI Runs; the Run B projection inherits Run A's delivered-reasoning evidence
111
114
  before the stopped operation is released. Reattach replaces transient attempt presentation with the durable
112
- accepted `ReasoningMessage` once per turn, before its speech or inventory in
113
- `MESSAGES_SNAPSHOT`. Empty evidence emits nothing, PLAN never substitutes for
114
- reasoning ({§agui-plan-activity}), and the SEND row still precedes its text
115
+ accepted `ReasoningMessage` once per turn in
116
+ `MESSAGES_SNAPSHOT`. Empty evidence emits nothing, NOTE never substitutes for
117
+ reasoning ({§agui-lifecycle-projection}), and a response row still precedes its text
115
118
  sequence.
116
119
 
117
120
  - **An op row IS a tool call** — its `coordinate` is the `toolCallId`, its tx the args (one
118
121
  delta: a dispatched plurnk op is atomic), its rx the result. The log-shaped richness the
119
122
  core vocabulary can't hold (curation metadata, tags, coordinates) stays on the row inside
120
123
  `plurnk.ambient`/`TOOL_CALL_RESULT` payloads.
121
- - §agui-encrypted-reasoning **Opaque provider state is not a client conversation.**
122
- AG-UI emits no encrypted-reasoning events or message values. Original provider
123
- evidence retains those fields under {§encrypted-reasoning-carrier}; readable
124
- reasoning streams and conversation replay remain {§agui-readable-reasoning}.
124
+ - §agui-encrypted-reasoning **The encrypted-reasoning interface is not implemented.**
125
+ AG-UI defines encrypted-reasoning events and message values; plurnk emits none and
126
+ stores none ({§provider-open-reasoning}). Implementing a transport for bytes the
127
+ service cannot read would add surface without adding capability. Readable reasoning
128
+ streams and conversation replay remain {§agui-readable-reasoning}.
125
129
  - §agui-custom-namespace **The custom namespace** — plurnk-specific metadata rides
126
130
  `CUSTOM` events named `plurnk.*` (`plurnk.send`, `plurnk.ambient`,
127
131
  `plurnk.notice`, `plurnk.stream`, `plurnk.terminated` — the full loop
@@ -142,14 +146,17 @@ the client hops to a child rather than watching it).
142
146
  never recomputes the daemon's gauge or promotes accounting into application
143
147
  state paths that could be mistaken for standard AG-UI fields.
144
148
 
149
+ §agui-state-patches Each Run's `STATE_SNAPSHOT` precedes its `STATE_DELTA`s.
150
+ Deltas use RFC 6902 `replace` on existing snapshot paths; replay yields the
151
+ current gauge without clients inventing missing fields.
152
+
145
153
  | AG-UI state location | Daemon source | Meaning |
146
154
  |:--------------------------------------------|:-----------------------------------------|:--------|
147
155
  | `snapshot.plurnk.providers[*].inputCapacity` | `providers.list.aliases[*]` | Each provider alias's derived physical input capacity, or `null` when unknown. |
148
156
  | `snapshot.plurnk.status.model` | `ApplicationPort.readWorkerModel` | The bound Worker's durable resolved model route, including its alias when selected. |
149
- | `snapshot.plurnk.status.loopId` | latest `ApplicationLoopProjection.id` | Latest durable work Loop for the bound Worker, or `null` before one exists. Maintenance-only loops are excluded by Core under {§application-loop-observation}. |
157
+ | `snapshot.plurnk.status.loopId` | representative `ApplicationLoopProjection.id` | Selected under {§application-worker-observation}: live work precedes terminal history; `null` when none exists. Maintenance-only loops are excluded by Core under {§application-loop-observation}. |
150
158
  | `snapshot.plurnk.status.packetCount` | latest `ApplicationLoopProjection.packetCount` | Exact packet-bearing Turn count; packetless Turns and provider retries do not contribute. |
151
159
  | `snapshot.plurnk.status.lifecycle` | latest `ApplicationLoopProjection.status` | Queued `100` is `queued`, not executing or WAITing. Running `102`, parked `202`, and terminal states retain their ordinary lifecycle meanings. |
152
- | `snapshot.plurnk.status.{scheduledAt,intervalMinutes,recurrenceId}` | {§application-loop-observation} | Scheduled-task timing, initialized to `null` when absent. Packet deltas refresh it and clear an ordinary task's absent timing. |
153
160
  | `snapshot.plurnk.status.children` | `ApplicationPort.listWorkers({ parentWorkerId })` | The bound Worker's alive direct children — `queued`, `running`, or `parked` under {§loop-lifecycle-vocabulary}; a parked child still owes a result. Computed by the daemon for every snapshot and whole-gauge replacement, and republished as `STATE_DELTA /plurnk/status/children` only when it changes: after another worker's `loop/terminated` or `loop/packet` (it may be a child), or after the bound Worker's own `WORK`, `FORK`, or `KILL` row lands (it spawned or killed one). Clients render the number and never poll the directory for it ({§agui-status-children}). |
154
161
  | `STATE_DELTA /plurnk/status/*` | packet, termination, and derivation events | Replaceable lifecycle, packet chronology, and transient activity. Reattachment snapshots carry current derivation activity through the same projection, without polling or duplicate routine Notices. Clients never reconstruct packet count from row or STEP traffic. |
155
162
  | `snapshot.budget` | Run initialization | Creates all four gauge fields as `null`, so subsequent RFC 6902 `replace` operations always address existing values. |
@@ -170,8 +177,8 @@ every other daemon surface.
170
177
 
171
178
  - §agui-row-channel **The row channel** — every log row ALSO rides `CUSTOM plurnk.row`
172
179
  carrying the complete client-facing row (curation metadata, durable tags, coordinate)
173
- alongside its core projection. TASK `tx.body` follows {§agui-plan-activity}; rich clients
174
- (TUI/nvim) never receive the internal Plan extension. Generic clients ignore this metadata
180
+ alongside its core projection. Literal bodies follow {§agui-lifecycle-projection}; rich clients
181
+ never receive the internal Plan extension. Generic clients ignore this metadata
175
182
  channel.
176
183
  - **The gauge starts true** — `RUN_STARTED` is followed by a `STATE_SNAPSHOT` carrying the
177
184
  daemon's provider, bound-Worker model, latest Loop, and exact packet-count truth, then
@@ -181,7 +188,7 @@ every other daemon surface.
181
188
  - §agui-replay **Unoriented reattach replays once** — a rediscovered thread (the module restarted, a second
182
189
  frontend arrived) whose Run input carries none of the log's durable assistant identities attaches
183
190
  to its existing workspace by name→id and opens ORIENTED: durable
184
- prompt rows replay as user messages, the model worker's current PLAN activity and SEND speech
191
+ arrival rows replay as user messages, named by their source when another actor caused them ({§message-causal-source}), the model worker's current PLAN activity and SEND speech
185
192
  replay chronologically, and the one validated current Run user message follows them under a
186
193
  Run-owned identity in the authoritative `MESSAGES_SNAPSHOT`. Client-claimed earlier history is not
187
194
  imported. A client already carrying any durable assistant identity receives no repeated snapshot.
@@ -202,26 +209,40 @@ every other daemon surface.
202
209
 
203
210
  ## §agui-first-party-client-conformance First-party client conformance
204
211
 
205
- The one-shot CLI, interactive terminal, and Neovim plugin consume one AG-UI+
206
- semantic contract. Each client verifies the contracts-owned conformance corpus
212
+ §agui-official-client-conformance The ordinary integration gate runs the official
213
+ `@ag-ui/client` 0.0.59 against the real daemon and a deterministic HTTP model fixture.
214
+ Its verifier and message builder exercise lifecycle, state, streaming reasoning,
215
+ assistant speech, PLAN activity, and provider refusals. The optional real-model test adds provider
216
+ evidence; it does not substitute for the deterministic gate. Wire shapes derive
217
+ from the installed `@ag-ui/core` schemas ({§agui-run-authority}).
218
+
219
+ The one-shot CLI and interactive terminal consume one AG-UI+
220
+ semantic contract. Each surface verifies the contracts-owned conformance corpus
207
221
  through its production transport and separately verifies the presentation its
208
222
  host owns; decoration and layout are not cross-client protocol facts.
209
223
 
210
- | Shared semantic fact | One-shot CLI | Interactive terminal | Neovim | Intentional host-owned divergence |
211
- | -------------------- | ------------ | -------------------- | ------ | --------------------------------- |
212
- | lifecycle, model, packet status | structured output and Unix status trace | mutable prompt status | editor statusline and winbar | process, terminal, and editor lifecycle idioms |
213
- | PLAN and reasoning | structured record and trace | streaming waterfall blocks | buffer blocks and folds | host-native persistence and navigation |
214
- | operation receipts and turn disposition | stdout plus structured operation record | scrollback waterfall | worker waterfall buffer | Unix streams versus durable visual surfaces |
215
- | cancellation, proposals, and interactions | explicit noninteractive policy and exit | terminal review or input | editor review, selection, and input | each host owns human interaction |
216
- | Problems and Notices | RFC 9457 JSON or stderr | terminal rows | editor diagnostics | presentation only; exact semantics survive |
217
- | MCP, Skills, and A2A Functionality | state commands | slash commands | `:AI` commands | one `worker.{mcp,skills,agents}.*` action contract |
224
+ | Shared semantic fact | One-shot CLI | Interactive terminal | Intentional host-owned divergence |
225
+ | -------------------- | ------------ | -------------------- | --------------------------------- |
226
+ | lifecycle, model, packet status | structured output and Unix status trace | mutable prompt status | process and terminal lifecycle idioms |
227
+ | PLAN and reasoning | structured record and trace | streaming waterfall blocks | host-native persistence and navigation |
228
+ | operation receipts and turn disposition | stdout plus structured operation record | scrollback waterfall | Unix streams versus visual surfaces |
229
+ | cancellation, proposals, and interactions | explicit noninteractive policy and exit | terminal review or input | each host owns human interaction |
230
+ | Problems and Notices | RFC 9457 JSON or stderr | terminal rows | presentation only; exact semantics survive |
231
+ | MCP, Skills, and A2A Functionality | state commands | slash commands | one Functionality action contract |
218
232
 
219
- One installed-platform journey exercises all three public entry paths against
233
+ One installed-platform journey exercises both public entry paths against
220
234
  the same packed daemon release. It asserts semantic outcomes rather than exact
221
235
  glyphs or pixels and names any permitted divergence by its owning host.
222
236
  Unexpected Problems fail a successful journey, including asynchronous startup
223
237
  failures. A deterministic rejected-provider journey asserts the exact cause,
224
238
  one provider request, and failed status after subsequent management reads.
239
+ Independent terminal-client connections verify shared workspace state and its
240
+ persistence across daemon restart.
241
+
242
+ The installed-client gate resolves `PLURNK_CLIENT_CHECKOUT` relative to the
243
+ invocation directory, defaulting to `../plurnk` beside the service checkout.
244
+ The selected checkout and its installed dependencies are required; an invalid
245
+ explicit path fails rather than falling back or skipping conformance.
225
246
 
226
247
  ## §agui-proposal-resolve Client-owned stop-the-world interactions
227
248
 
@@ -242,6 +263,9 @@ settle Run A before the interrupt is emitted. Concurrent descendant gates are
242
263
  presented one Worker at a time; resolving one re-surfaces the next without admitting a new prompt.
243
264
  Sibling and unrelated conversations never receive one another's gates. A resume containing foreign, partial, unknown, duplicate, or multi-worker
244
265
  interrupt sets fails before any stopped operation is released.
266
+ Loop terminals received while a resume is being validated or resolved are held:
267
+ successful resolution delivers the bound Loop's terminal once; rejected resolution
268
+ emits its exact `RUN_ERROR`, never success from the previously interrupted Loop.
245
269
 
246
270
  An interrupt is an AG-UI Run boundary, not a Plurnk turn boundary. Before Run A's interrupt
247
271
  terminal, the projection closes any active `turn-<id>` step. Run B emits `RUN_STARTED`, its
@@ -395,9 +419,9 @@ a parser fact.
395
419
  Parser failures use `stage: "parsing"`; action-shape failures use
396
420
  `stage: "action-validation"`. Both are non-retryable.
397
421
 
398
- The observation resolves as the thread's conversation worker, so `log:///`,
399
- `reasoning:///`, and `ops:///` read as the model sees them; `workerId` pins another workspace worker, the
400
- way `entry.read` does. The closed observation segment stays on the connection's own
422
+ The observation resolves `log:///` as the thread's conversation worker; `workerId`
423
+ pins another workspace worker. Explicit resource authorities retain their identity
424
+ under {§turn-source-resources}. The closed observation segment stays on the connection's own
401
425
  worker: a look never adds a loop to the conversation, so its lifecycle, packet count, and
402
426
  history are unchanged by inspection.
403
427
 
@@ -419,7 +443,7 @@ The `discover` action returns the complete schema-bearing
419
443
  type Discovery = {
420
444
  schemaVersion: 1;
421
445
  actions: Record<string, {
422
- scope: "worldless" | "workspace";
446
+ scope: "worldless" | "workspace" | "worker";
423
447
  inputSchema: JsonSchema;
424
448
  outputSchema: JsonSchema;
425
449
  }>;
@@ -432,7 +456,7 @@ type Discovery = {
432
456
  ({§client-display-capabilities}). AG-UI adds no fallback, font, theme, or packet
433
457
  policy.
434
458
 
435
- `actions` contains the 30 built-ins in the table plus every registered module
459
+ `actions` contains the 25 built-ins in the table plus every registered module
436
460
  action. `notifications` contains exactly these externally projected daemon
437
461
  event families:
438
462
 
@@ -440,6 +464,7 @@ event families:
440
464
  |--------------|
441
465
  | `log/entry` |
442
466
  | `loop/terminated` |
467
+ | `loop/packet` |
443
468
  | `loop/proposal` |
444
469
  | `loop/interaction` |
445
470
  | `notice/event` |
@@ -528,6 +553,7 @@ values for direct in-process composition. The listener address remains service-o
528
553
  | ---------------------------------- | ------- | -------------------------------------- | ----------------------------------- | ------ |
529
554
  | `PLURNK_HOST` / `PLURNK_PORT` | Service | Invalid at service boot | Service-valid host and port | Service binds the address through `Module.bind`; direct compositions may use `Module.init`. |
530
555
  | `PLURNK_AGUI_TOKEN` | AG-UI | No module-level bearer requirement | Any string | A non-empty value requires the exact bearer on every non-preflight request. |
556
+ | `PLURNK_AGUI_ALLOW_ORIGIN` | AG-UI | Empty: no CORS headers; absent: invalid | `*` or one origin | The origin whose pages a browser lets read replies ({§agui-cors}). |
531
557
  | `PLURNK_AGUI_MAX_TURNS` | AG-UI | No module-level default | `-1` or a non-negative safe integer | Supplies `maxTurns` only when the Run does not carry its own value. |
532
558
  | `PLURNK_AGUI_HEARTBEAT_MS` | AG-UI | Invalid; the package floor is required | Integer `0` through `2147483647` | SSE comment-frame cadence in milliseconds; `0` disables it. |
533
559
 
@@ -541,11 +567,41 @@ one `data:` line per event, ending after `RUN_FINISHED`/`RUN_ERROR`. Multimodal
541
567
  is rejected until the model-loop seam supports it deliberately. Proposal
542
568
  disposition remains Core policy; the module forwards it without reinterpretation.
543
569
 
570
+ §agui-run-source The run's user message is the causal actor behind its inbound SEND
571
+ ({§message-causal-source}). The module supplies its canonical address as the loop's `source`:
572
+ `agui://<principal>/threads/<threadId>/messages/<messageId>`, every segment
573
+ URI-encoded, the principal `anonymous` until the authorization layer names one. The frontend's
574
+ self-identification never enters the address ({§client-metadata}). The arrival row renders that
575
+ source, so a model tells an operator's message from a worker's or a schedule's by address
576
+ rather than by absence. Message identity belongs to the conversation, not a transport run;
577
+ the run ID remains envelope provenance. Accepted text remains available through ordinary
578
+ READ, FIND and COPY after log curation, run conclusion, disconnect and daemon restart.
579
+ `loop.inject` normalizes its prompt into a user message with a server-generated message ID
580
+ and the injecting Run's thread/envelope; it follows this same source and reply contract.
581
+ The source is immutable: EDIT, MOVE and KILL cannot mutate an accepted message.
582
+ SEND to this exact address answers this message under {§send-response-receipt}; it does
583
+ not create another inbound request. Standard AG-UI assistant messages and history replay
584
+ carry the reply, independently of whether the loop can yet conclude.
585
+
544
586
  §agui-http-authorization When `PLURNK_AGUI_TOKEN` is non-empty, every
545
587
  non-preflight request must carry that exact value as an
546
588
  `authorization: Bearer <token>` header. Authorization precedes request-body
547
589
  reading. A missing or mismatched credential returns the stable 401
548
- `bearer-token-required` Problem.
590
+ `bearer-token-required` Problem. A fresh install **mints its own** into the
591
+ operator's file ({§operator-config-discovery}), which every client reads
592
+ through the same cascade, so the shipped posture is authenticated: the empty
593
+ value that means *no check* is an operator's deliberate choice, never a
594
+ default. This is the perimeter because a daemon is one trust domain and on
595
+ loopback the operator's browser is inside it — any page they visit can reach
596
+ the port, and only the bearer tells the two apart.
597
+
598
+ §agui-cors Every response carries `access-control-allow-origin` with the value
599
+ of `PLURNK_AGUI_ALLOW_ORIGIN`, and allows the `content-type` and
600
+ `authorization` request headers; an empty value sends neither header, so no
601
+ browser page can read a reply. CORS narrows which pages may *read*; it does
602
+ not authenticate a request and is no substitute for the bearer
603
+ ({§agui-http-authorization}). A preflight is answered `204` before
604
+ authorization.
549
605
 
550
606
  §agui-http-failure Failures before SSE headers are sent use
551
607
  `application/problem+json` with exact
@@ -1,4 +1,5 @@
1
1
  import { type AguiEvent, type ProposalNotification } from "./types.ts";
2
+ import type { JsonPatch } from "@ag-ui/core";
2
3
  import type { Interrupt, ResumeEntry } from "@ag-ui/core";
3
4
  import { type LoopLifecycle } from "@plurnk/plurnk-contracts";
4
5
  import type { ApplicationLoopProjection, ClientInteractionProjection, ClientInteractionResolution, ModelRoute, ProblemDetails } from "@plurnk/plurnk-contracts";
@@ -61,9 +62,6 @@ export interface AguiStatusState {
61
62
  readonly loopId: number | null;
62
63
  readonly packetCount: number;
63
64
  readonly activity: AguiStatusActivity | null;
64
- readonly scheduledAt: string | null;
65
- readonly intervalMinutes: number | null;
66
- readonly recurrenceId: number | null;
67
65
  readonly children: number;
68
66
  }
69
67
  export declare const ALIVE_LIFECYCLES: ReadonlySet<LoopLifecycle>;
@@ -79,11 +77,7 @@ export interface AguiBudgetState {
79
77
  readonly contextCapacity: number | null;
80
78
  }
81
79
  export declare const stateSnapshot: (s: AguiPlusState) => AguiEvent;
82
- export declare const stateDelta: (patches: Array<{
83
- op: string;
84
- path: string;
85
- value?: unknown;
86
- }>) => AguiEvent;
80
+ export declare const stateDelta: (patches: JsonPatch) => AguiEvent;
87
81
  export interface ActionRequest {
88
82
  kind: string;
89
83
  params: Record<string, unknown>;
@@ -1 +1 @@
1
- {"version":3,"file":"AguiPlus.d.ts","sourceRoot":"","sources":["../src/AguiPlus.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AguiPlus.d.ts","sourceRoot":"","sources":["../src/AguiPlus.ts"],"names":[],"mappings":"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"}
package/dist/AguiPlus.js CHANGED
@@ -126,9 +126,6 @@ export const statusState = (model, loop, activity = null, children = 0) => ({
126
126
  loopId: loop?.id ?? null,
127
127
  packetCount: loop?.packetCount ?? 0,
128
128
  activity,
129
- scheduledAt: loop?.scheduledAt ?? null,
130
- intervalMinutes: loop?.intervalMinutes ?? null,
131
- recurrenceId: loop?.recurrenceId ?? null,
132
129
  children,
133
130
  });
134
131
  const EMPTY_BUDGET = Object.freeze({
@@ -141,6 +138,8 @@ export const stateSnapshot = (s) => ({
141
138
  type: EventType.STATE_SNAPSHOT,
142
139
  snapshot: { plurnk: s, budget: EMPTY_BUDGET },
143
140
  });
141
+ // {§agui-daemon-client} — AG-UI 1.0 types STATE_DELTA as a real RFC 6902 patch, so the
142
+ // operation union is the parameter type rather than a loose object shape.
144
143
  export const stateDelta = (patches) => ({ type: EventType.STATE_DELTA, delta: patches });
145
144
  export const parseAction = (forwardedProps) => {
146
145
  const action = forwardedProps?.plurnk?.action;
@@ -1 +1 @@
1
- {"version":3,"file":"AguiPlus.js","sourceRoot":"","sources":["../src/AguiPlus.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AguiPlus.js","sourceRoot":"","sources":["../src/AguiPlus.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"AguiSurface.d.ts","sourceRoot":"","sources":["../src/AguiSurface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAM3D,KAAK,eAAe,GAAG,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;AAE5D,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC;IACjC,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC;CACrC;AAED,MAAM,WAAW,wBAAwB;IACrC,QAAQ,CAAC,aAAa,EAAE,UAAU,CAAC;CACtC;AA6DD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;EAiFwB,CAAC;AA6B1D,eAAO,MAAM,kBAAkB;;;;;;;;;;EAkEgC,CAAC"}
1
+ {"version":3,"file":"AguiSurface.d.ts","sourceRoot":"","sources":["../src/AguiSurface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAM3D,KAAK,eAAe,GAAG,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;AAE5D,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC;IACjC,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC;CACrC;AAED,MAAM,WAAW,wBAAwB;IACrC,QAAQ,CAAC,aAAa,EAAE,UAAU,CAAC;CACtC;AA6DD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;EAiFwB,CAAC;AA6B1D,eAAO,MAAM,kBAAkB;;;;;;;;;;EA+DgC,CAAC"}
@@ -182,9 +182,6 @@ export const AGUI_NOTIFICATIONS = Object.freeze({
182
182
  workerId: POSITIVE,
183
183
  loopId: POSITIVE,
184
184
  packetCount: POSITIVE,
185
- scheduledAt: NONEMPTY,
186
- intervalMinutes: POSITIVE,
187
- recurrenceId: POSITIVE,
188
185
  }, ["workerId", "loopId", "packetCount"])),
189
186
  "loop/proposal": notification(ref("ProposalProjection")),
190
187
  "loop/interaction": notification(ref("ClientInteractionProjection")),
@@ -1 +1 @@
1
- {"version":3,"file":"AguiSurface.js","sourceRoot":"","sources":["../src/AguiSurface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AguiSurface.js","sourceRoot":"","sources":["../src/AguiSurface.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { type ActionOutcome } from "./AguiPlus.ts";
2
2
  import { type AguiDiscovery, type ApplicationPort, type ClientEnvelope } from "@plurnk/plurnk-contracts";
3
+ import type { RunAgentInput } from "./types.ts";
3
4
  export default class BuiltinActions {
4
5
  #private;
5
6
  constructor({ seam, capabilities, envelope, requireWorkspace }: {
@@ -11,6 +12,6 @@ export default class BuiltinActions {
11
12
  }>;
12
13
  requireWorkspace: (kind: string, env: ClientEnvelope | null) => ClientEnvelope;
13
14
  });
14
- executeBuiltin(kind: string, p: Readonly<Record<string, unknown>>, env: ClientEnvelope | null, conversationWorkerId?: number): Promise<ActionOutcome>;
15
+ executeBuiltin(kind: string, p: Readonly<Record<string, unknown>>, input: RunAgentInput, env: ClientEnvelope | null, conversationWorkerId?: number): Promise<ActionOutcome>;
15
16
  }
16
17
  //# sourceMappingURL=BuiltinActions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BuiltinActions.d.ts","sourceRoot":"","sources":["../src/BuiltinActions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAyC,KAAK,aAAa,EAAE,KAAK,eAAe,EAAyB,KAAK,cAAc,EAAkE,MAAM,0BAA0B,CAAC;AAyCvO,MAAM,CAAC,OAAO,OAAO,cAAc;;IAM/B,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,EAAE,EAAE;QAC5D,IAAI,EAAE,MAAM,eAAe,CAAC;QAC5B,YAAY,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC;QAC3C,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC;YAAE,GAAG,EAAE,cAAc,CAAC;YAAC,UAAU,EAAE,OAAO,CAAA;SAAE,CAAC,CAAC;QAC3H,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI,KAAK,cAAc,CAAC;KAClF,EAKA;IAKK,cAAc,CAChB,IAAI,EAAE,MAAM,EACZ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EACpC,GAAG,EAAE,cAAc,GAAG,IAAI,EAC1B,oBAAoB,CAAC,EAAE,MAAM,GAC9B,OAAO,CAAC,aAAa,CAAC,CAsXxB;CAEJ"}
1
+ {"version":3,"file":"BuiltinActions.d.ts","sourceRoot":"","sources":["../src/BuiltinActions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAyC,KAAK,aAAa,EAAE,KAAK,eAAe,EAAyB,KAAK,cAAc,EAAkE,MAAM,0BAA0B,CAAC;AAGvO,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAuChD,MAAM,CAAC,OAAO,OAAO,cAAc;;IAM/B,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,EAAE,EAAE;QAC5D,IAAI,EAAE,MAAM,eAAe,CAAC;QAC5B,YAAY,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC;QAC3C,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC;YAAE,GAAG,EAAE,cAAc,CAAC;YAAC,UAAU,EAAE,OAAO,CAAA;SAAE,CAAC,CAAC;QAC3H,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI,KAAK,cAAc,CAAC;KAClF,EAKA;IAKK,cAAc,CAChB,IAAI,EAAE,MAAM,EACZ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EACpC,KAAK,EAAE,aAAa,EACpB,GAAG,EAAE,cAAc,GAAG,IAAI,EAC1B,oBAAoB,CAAC,EAAE,MAAM,GAC9B,OAAO,CAAC,aAAa,CAAC,CA2XxB;CAEJ"}
@@ -2,8 +2,8 @@
2
2
  import {} from "./AguiPlus.js";
3
3
  import { PlurnkParser } from "@plurnk/plurnk-parser";
4
4
  import { Problems, UNKNOWN_POSITION, Validator } from "@plurnk/plurnk-contracts";
5
- import { actionFailure, problemFromError } from "./action-results.js";
6
- import Translator from "./Translator.js";
5
+ import { actionFailure } from "./action-results.js";
6
+ import MessageAddress from "./MessageAddress.js";
7
7
  const operationOutcome = (result) => {
8
8
  const exact = Validator.assertOperationResult(result);
9
9
  return exact.problem === undefined
@@ -35,7 +35,7 @@ export default class BuiltinActions {
35
35
  // The built-in implementation half of the declarative registry. The registry
36
36
  // owns membership, scope, admission, projection, and discovery; this dispatch
37
37
  // owns only the corresponding daemon operation.
38
- async executeBuiltin(kind, p, env, conversationWorkerId) {
38
+ async executeBuiltin(kind, p, input, env, conversationWorkerId) {
39
39
  try {
40
40
  // Worldless actions never bind or forge a workspace.
41
41
  switch (kind) {
@@ -102,16 +102,21 @@ export default class BuiltinActions {
102
102
  ...(Object.hasOwn(p, "turnSeq") ? { turnSeq: p.turnSeq } : {}),
103
103
  ...(Object.hasOwn(p, "sequence") ? { sequence: p.sequence } : {}),
104
104
  });
105
- return { ok: true, result: { entries: entries.map((entry) => Translator.projectRow(entry).entry) } };
105
+ return { ok: true, result: { entries } };
106
106
  }
107
107
  case "loop.inject": {
108
108
  if (typeof p.prompt !== "string" || p.prompt.length === 0) {
109
109
  return actionFailure("invalid-action-parameters", "loop.inject requires a non-empty prompt.", 400, { field: "prompt", recovery: "Provide the prompt to inject." });
110
110
  }
111
- const ack = await this.#seam().runLoop({ workspaceId: world.workspaceId, workerId: conversationWorkerId ?? await this.#seam().ensureModelWorker(world.workspaceId), prompt: p.prompt });
111
+ const ack = await this.#seam().runLoop({
112
+ workspaceId: world.workspaceId,
113
+ workerId: conversationWorkerId ?? await this.#seam().ensureModelWorker(world.workspaceId),
114
+ prompt: p.prompt,
115
+ ...MessageAddress.submission(input, { id: crypto.randomUUID(), role: "user", content: p.prompt }),
116
+ });
112
117
  return operationOutcome(ack);
113
118
  }
114
- // The stop button (TUI /stop + Ctrl-C, nvim :PlurnkStop): abort the model
119
+ // The stop control (TUI /stop + Ctrl-C): abort the model
115
120
  // worker's active drain. Mirrors the SSE-hangup abort, addressable as a verb.
116
121
  case "loop.cancel": return { ok: true, result: { cancelled: this.#seam().cancelDrain(conversationWorkerId ?? await this.#seam().ensureModelWorker(world.workspaceId), typeof p.reason === "string" ? p.reason : undefined) } };
117
122
  case "workspace.prompts": return {
@@ -253,8 +258,8 @@ export default class BuiltinActions {
253
258
  }
254
259
  // LOOK is the client's observation with a matcher body; on the seam it is a READ whose
255
260
  // heading pattern is that matcher ({§read-pattern}): the matching lines, no log row.
256
- // It resolves as the conversation worker — `log:///`, `reasoning:///`, and `ops:///` as the
257
- // model sees them — while the observation segment stays on the connection's own worker (plurnk#68).
261
+ // Local log coordinates resolve as the conversation worker; explicit resource authorities
262
+ // keep their identity. The observation segment stays on the connection's own worker ({§op-look}).
258
263
  const { body: matcher, ...look } = item.statement;
259
264
  const statement = { ...look, op: "READ", matcher, body: null };
260
265
  return operationOutcome(await this.#seam().look({
@@ -326,7 +331,7 @@ export default class BuiltinActions {
326
331
  }
327
332
  }
328
333
  catch (err) {
329
- const problem = problemFromError(err);
334
+ const problem = Problems.fromError(err);
330
335
  if (problem !== null)
331
336
  return { ok: false, problem };
332
337
  console.error(`AG-UI action '${kind}' failed:`, err);