@ouispec/agent-react 0.4.0 → 0.7.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/README.md CHANGED
@@ -7,6 +7,7 @@ npm install @ouispec/agent-react
7
7
  ```
8
8
 
9
9
  - `AgentProvider` and `useAgent`: the conversation, its messages and tool calls, sending a turn, and the turn's stream. The socket is a seam (`realtime.createSocket`), so a product supplies its own connection and credentials.
10
+ - `stopTurn`, `isStopping` and `acceptedTurnId` on `useAgent`: the person's Stop for the turn in progress, and the turn whose UI requests the tab runs now (give it to the tab's OUI runtime: `accept: acceptCurrentTurn(agent.acceptedTurnId)`). A message sent while a turn runs supersedes it; a stopped turn's message keeps what it had said, marked `stopped`.
10
11
  - `ApprovalCard`: shows what an irreversible call will do and takes the person's decision. It can't be bound to the agent: only a person's click approves.
11
12
  - `useFeedback`, `storedToAgentMessages`, and the view annotations.
12
13
 
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { AgentProvider, useAgent } from './provider/AgentProvider.js';
1
+ export { AgentProvider, useAgent, STOP_CONFIRM_TIMEOUT_MS } from './provider/AgentProvider.js';
2
2
  export { useFeedback } from './hooks/useFeedback.js';
3
3
  export { storedToAgentMessages } from './provider/stored-messages.js';
4
4
  export { ApprovalCard } from './approvals/ApprovalCard.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAEtE,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAEtE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,YAAY,EACV,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,EACtB,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,6BAA6B,CAAC;AAErC,YAAY,EACV,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,aAAa,EACb,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,WAAW,EACX,aAAa,EACb,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,wBAAwB,EACxB,uBAAuB,EACvB,gBAAgB,EAChB,uBAAuB,EACvB,mBAAmB,EACnB,wBAAwB,EACxB,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,YAAY,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAE/F,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAEtE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,YAAY,EACV,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,EACtB,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,6BAA6B,CAAC;AAErC,YAAY,EACV,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,aAAa,EACb,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,WAAW,EACX,aAAa,EACb,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,wBAAwB,EACxB,uBAAuB,EACvB,gBAAgB,EAChB,uBAAuB,EACvB,mBAAmB,EACnB,wBAAwB,EACxB,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,YAAY,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC"}
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- export { AgentProvider, useAgent } from './provider/AgentProvider.js';
1
+ export { AgentProvider, useAgent, STOP_CONFIRM_TIMEOUT_MS } from './provider/AgentProvider.js';
2
2
  export { useFeedback } from './hooks/useFeedback.js';
3
3
  export { storedToAgentMessages } from './provider/stored-messages.js';
4
4
  // Approvals (ADR-0228): the card where the person approves an irreversible call.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAEtE,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,iFAAiF;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAuB3D,8BAA8B;AAC9B,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,WAAW,EACX,aAAa,EACb,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAa3B,2CAA2C;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAEzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAE/F,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,iFAAiF;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAuB3D,8BAA8B;AAC9B,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,WAAW,EACX,aAAa,EACb,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAa3B,2CAA2C;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAEzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC"}
@@ -1,6 +1,8 @@
1
1
  import React from 'react';
2
2
  import type { AgentClientConfig } from '@ouispec/agent-core';
3
3
  import type { AgentContextValue } from './types.js';
4
+ /** How long a stop may go unconfirmed by the turn's end before the turn is shown as stopped (ADR-0252 §2.14). */
5
+ export declare const STOP_CONFIRM_TIMEOUT_MS = 10000;
4
6
  /**
5
7
  * AgentProvider — turnkey provider that handles the complete agent lifecycle.
6
8
  *
@@ -1 +1 @@
1
- {"version":3,"file":"AgentProvider.d.ts","sourceRoot":"","sources":["../../src/provider/AgentProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAA8E,MAAM,OAAO,CAAC;AACnG,OAAO,KAAK,EACV,iBAAiB,EAKlB,MAAM,qBAAqB,CAAC;AAY7B,OAAO,KAAK,EAEV,iBAAiB,EAOlB,MAAM,YAAY,CAAC;AA2EpB;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,aAAa,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE;IAAE,MAAM,EAAE,iBAAiB,CAAC;IAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,iFAi0B3G;AAED,wBAAgB,QAAQ,IAAI,iBAAiB,CAI5C"}
1
+ {"version":3,"file":"AgentProvider.d.ts","sourceRoot":"","sources":["../../src/provider/AgentProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAA8E,MAAM,OAAO,CAAC;AACnG,OAAO,KAAK,EACV,iBAAiB,EAKlB,MAAM,qBAAqB,CAAC;AAa7B,OAAO,KAAK,EAEV,iBAAiB,EAOlB,MAAM,YAAY,CAAC;AAepB,iHAAiH;AACjH,eAAO,MAAM,uBAAuB,QAAS,CAAC;AAiE9C;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,aAAa,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE;IAAE,MAAM,EAAE,iBAAiB,CAAC;IAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,iFA4+B3G;AAED,wBAAgB,QAAQ,IAAI,iBAAiB,CAI5C"}
@@ -1,5 +1,5 @@
1
1
  import React, { createContext, useContext, useState, useCallback, useEffect, useRef } from 'react';
2
- import { APPROVAL_DECIDE_EVENT } from '@ouispec/agent-core';
2
+ import { APPROVAL_DECIDE_EVENT, TURN_STOP_EVENT } from '@ouispec/agent-core';
3
3
  import { ALL_AGENT_SOCKET_EVENTS, parseSocketEvent } from '@ouispec/agent-core';
4
4
  import { browserTimeZone } from './time-zone.js';
5
5
  import { createSocketIOSocket } from './socketio.js';
@@ -13,6 +13,12 @@ const DEFAULT_ACTIVE_CONVERSATION_KEY = 'agent-sdk.activeConversation';
13
13
  const HISTORY_PAGE_SIZE = 20;
14
14
  /** How long the card waits for the approval store to answer a click. */
15
15
  const APPROVAL_DECIDE_TIMEOUT_MS = 10_000;
16
+ /** How long the server's answer to a Stop is waited for before the platform's API is asked instead. */
17
+ const STOP_ACK_TIMEOUT_MS = 3_000;
18
+ /** How long a stop may go unconfirmed by the turn's end before the turn is shown as stopped (ADR-0252 §2.14). */
19
+ export const STOP_CONFIRM_TIMEOUT_MS = 10_000;
20
+ /** How many ended turns the tab remembers, to ignore what they still send. */
21
+ const ENDED_TURNS_REMEMBERED = 20;
16
22
  /**
17
23
  * The tab's remembered active conversation, in `sessionStorage` so a reload
18
24
  * returns to it and a new tab starts fresh. Storage can be missing or throw
@@ -121,6 +127,9 @@ export function AgentProvider({ config, children }) {
121
127
  const [pendingApproval, setPendingApproval] = useState(null);
122
128
  const [approvalDeciding, setApprovalDeciding] = useState(false);
123
129
  const [approvalError, setApprovalError] = useState(null);
130
+ // The turn the person asked to stop, from their Stop until its end arrives (ADR-0252 §2.14).
131
+ const [isStopping, setIsStopping] = useState(false);
132
+ const stoppingRef = useRef(null);
124
133
  const socketRef = useRef(null);
125
134
  const unsubscribeRef = useRef(null);
126
135
  // The room of the turn in progress and its token. A reconnect gives the
@@ -214,6 +223,58 @@ export function AgentProvider({ config, children }) {
214
223
  const liveTurnRef = useRef({ starting: false, turnId: null });
215
224
  const turnStartsRef = useRef(0);
216
225
  const heldEndsRef = useRef([]);
226
+ /**
227
+ * Whether an event of turn `turnId` belongs to the turn the tab is running. While a new turn has
228
+ * no id yet, nothing does: whatever still arrives is the turn before it, which a new message has
229
+ * superseded (ADR-0252 §2.5), and its text and calls are no longer shown as in progress.
230
+ */
231
+ const ofLiveTurn = (turnId) => {
232
+ const { starting, turnId: live } = liveTurnRef.current;
233
+ if (starting)
234
+ return false;
235
+ if (turnId !== undefined && endedTurnsRef.current.has(turnId))
236
+ return false;
237
+ return live === null || turnId === undefined || turnId === live;
238
+ };
239
+ /**
240
+ * The turns the tab has shown as ended. A turn shown as stopped because its stop was never
241
+ * confirmed, or superseded by a new message, may have a worker still streaming: the text, calls
242
+ * and approval cards it sends after that are not shown as in progress again (`ofLiveTurn`). Its
243
+ * end is still read, since an end is safe to apply twice: for a turn that is not the tab's it
244
+ * only finishes that turn's own message, and for no turn at all it changes nothing.
245
+ */
246
+ const endedTurnsRef = useRef(new Set());
247
+ const rememberEnded = (turnId) => {
248
+ if (!turnId)
249
+ return;
250
+ const ended = endedTurnsRef.current;
251
+ ended.add(turnId);
252
+ // The last few are all that can still be sending.
253
+ if (ended.size > ENDED_TURNS_REMEMBERED)
254
+ ended.delete(ended.values().next().value);
255
+ };
256
+ /** The assistant message and running calls of a turn that ended by being stopped, as the panel shows them. */
257
+ const markStopped = (prev, turnId, reason) => {
258
+ const msgId = `msg_${turnId}`;
259
+ const marked = prev.map((m) => {
260
+ if (m.id === msgId)
261
+ return { ...m, isStreaming: false, stopped: reason };
262
+ if (m.toolCall?.status === 'running')
263
+ return { ...m, toolCall: { ...m.toolCall, status: 'stopped' } };
264
+ return m.isStreaming ? { ...m, isStreaming: false } : m;
265
+ });
266
+ // A turn stopped before it said anything still shows that it was stopped.
267
+ return marked.some((m) => m.id === msgId)
268
+ ? marked
269
+ : [...marked, { id: msgId, role: 'assistant', content: '', timestamp: Date.now(), stopped: reason }];
270
+ };
271
+ /** A stop is no longer waited on: its turn ended, or the tab moved on. */
272
+ const clearStopping = () => {
273
+ if (stoppingRef.current?.timer)
274
+ clearTimeout(stoppingRef.current.timer);
275
+ stoppingRef.current = null;
276
+ setIsStopping(false);
277
+ };
217
278
  /** Whether an end of turn `turnId` is the end of the turn the tab is running. */
218
279
  const endsLiveTurn = (turnId) => {
219
280
  const live = liveTurnRef.current.turnId;
@@ -232,6 +293,9 @@ export function AgentProvider({ config, children }) {
232
293
  case 'token': {
233
294
  if (!event.content)
234
295
  break;
296
+ // Text a superseded turn still sends is not the turn in progress's.
297
+ if (!ofLiveTurn(event.turnId))
298
+ break;
235
299
  streamBufferRef.current += event.content;
236
300
  // Snapshot the accumulated content BEFORE enqueueing the state update.
237
301
  // React batches updates and runs the setMessages callback later; if the
@@ -273,6 +337,8 @@ export function AgentProvider({ config, children }) {
273
337
  // Don't update message content — leave the existing text visible.
274
338
  break;
275
339
  case 'intent_call':
340
+ if (!ofLiveTurn(event.turnId))
341
+ break;
276
342
  setMessages(prev => [...prev, {
277
343
  id: `tool_${event.id}`,
278
344
  role: 'tool',
@@ -296,6 +362,9 @@ export function AgentProvider({ config, children }) {
296
362
  : m));
297
363
  break;
298
364
  case 'approval_required': {
365
+ // A card for a turn the person has moved on from is not shown: its approval is withdrawn.
366
+ if (!ofLiveTurn(event.turnId))
367
+ break;
299
368
  // The card renders it; only the user's click on it decides.
300
369
  const { type: _type, ...request } = event;
301
370
  setPendingApproval(request);
@@ -309,12 +378,39 @@ export function AgentProvider({ config, children }) {
309
378
  // message is finished, and nothing of the turn in progress is touched — not its streaming
310
379
  // state, its id, its room or its text.
311
380
  const earlier = `msg_${event.turnId}`;
312
- setMessages(prev => prev.map(m => (m.id === earlier && m.isStreaming ? { ...m, isStreaming: false } : m)));
381
+ rememberEnded(event.turnId);
382
+ setMessages(prev => prev.map(m => m.id === earlier ? { ...m, isStreaming: false, ...(event.stopReason ? { stopped: event.stopReason } : {}) } : m));
313
383
  addDebugLog('info', 'agent:state', 'An earlier turn completed after the next one started; the turn in progress continues', {
314
384
  turnId: event.turnId,
315
385
  });
316
386
  break;
317
387
  }
388
+ if (event.stopReason) {
389
+ // The turn was stopped: what it had said stays, marked. Stopped by a message from another
390
+ // window, the conversation has moved on without this tab, so it is read again.
391
+ const reason = event.stopReason;
392
+ const asked = stoppingRef.current?.turnId === event.turnId;
393
+ rememberEnded(event.turnId);
394
+ streamBufferRef.current = '';
395
+ roundPrefixRef.current = '';
396
+ setMessages(prev => markStopped(prev, event.turnId, reason));
397
+ setIsStreaming(false);
398
+ setCurrentTurnId(null);
399
+ liveTurnRef.current = { starting: false, turnId: null };
400
+ activeRoomRef.current = null;
401
+ if (unsubscribeRef.current) {
402
+ unsubscribeRef.current();
403
+ unsubscribeRef.current = null;
404
+ }
405
+ clearStopping();
406
+ setPendingApproval(null);
407
+ addDebugLog('info', 'agent:state', `Turn stopped: ${reason}`, { turnId: event.turnId, reason });
408
+ if (reason === 'superseded' && !asked)
409
+ supersededElsewhereRef.current?.();
410
+ break;
411
+ }
412
+ clearStopping();
413
+ rememberEnded(event.turnId);
318
414
  // Finalize all streaming messages. Drop any assistant streaming bubble
319
415
  // that ended up truly empty (e.g. token_clear wiped it and no text was
320
416
  // re-emitted). Preserve tool messages (which legitimately have null content).
@@ -325,7 +421,8 @@ export function AgentProvider({ config, children }) {
325
421
  return finalized.filter(m => {
326
422
  // Only drop assistant bubbles that are empty (null or empty string).
327
423
  // Tool messages have null content by design — keep them.
328
- if (m.role === 'assistant' && (m.content === null || m.content === '')) {
424
+ // A stopped turn's message is kept even when it had said nothing: it says the turn was stopped.
425
+ if (m.role === 'assistant' && (m.content === null || m.content === '') && !m.stopped) {
329
426
  return false;
330
427
  }
331
428
  return true;
@@ -373,9 +470,12 @@ export function AgentProvider({ config, children }) {
373
470
  unsubscribeRef.current();
374
471
  unsubscribeRef.current = null;
375
472
  }
473
+ clearStopping();
376
474
  break;
377
475
  }
378
476
  }, []);
477
+ // Set once conversations can be loaded (below): what a turn superseded from another window does.
478
+ const supersededElsewhereRef = useRef(null);
379
479
  // --- Join a turn room ---
380
480
  // The realtime server requires a signed room token for a turn room and
381
481
  // denies the join without one — the socket stays connected, the
@@ -480,6 +580,16 @@ export function AgentProvider({ config, children }) {
480
580
  }
481
581
  // Any choice still on screen belongs to the previous turn.
482
582
  setPresentedOptions(null);
583
+ // A message sent while a turn runs supersedes it (ADR-0252 §2.5): the platform stops that turn,
584
+ // and here it is shown as stopped at once. Its room is left when the new turn's is joined, so
585
+ // its own end may never arrive to say so.
586
+ const superseded = approval ? null : liveTurnRef.current.turnId;
587
+ if (superseded) {
588
+ rememberEnded(superseded);
589
+ setMessages(prev => markStopped(prev, superseded, 'superseded'));
590
+ roundPrefixRef.current = '';
591
+ clearStopping();
592
+ }
483
593
  setIsStreaming(true);
484
594
  // From here the tab's turn is this one, though it has no id until the request returns: the end
485
595
  // of any earlier turn no longer ends it.
@@ -544,6 +654,70 @@ export function AgentProvider({ config, children }) {
544
654
  }
545
655
  }, [collectContext, subscribeToRoom, addDebugLog, setActiveConversation, handleProtocolEvent]);
546
656
  const sendMessage = useCallback((content, attachments) => startTurn(content, attachments), [startTurn]);
657
+ // --- The person's Stop (ADR-0252 §2.14) ---
658
+ // Asked over the socket, from the turn's room: the server takes it only from there. The turn's
659
+ // worker hears it, stores what it had, and sends the turn's end with why. If the socket cannot
660
+ // ask, or the end has not arrived in time, the platform's API is asked instead and the turn is
661
+ // shown as stopped: the person pressed Stop, and the panel must not go on saying "working".
662
+ const stopTurn = useCallback(async () => {
663
+ const turnId = liveTurnRef.current.turnId;
664
+ if (!turnId || stoppingRef.current)
665
+ return;
666
+ const entry = { turnId, timer: null };
667
+ stoppingRef.current = entry;
668
+ setIsStopping(true);
669
+ addDebugLog('info', 'agent:api', 'Stopping the turn', { turnId });
670
+ let askedThroughApi = false;
671
+ const askApi = async () => {
672
+ const stop = configRef.current.stopTurn;
673
+ if (!stop || askedThroughApi)
674
+ return;
675
+ askedThroughApi = true;
676
+ try {
677
+ await stop({ turnId, conversationId: conversationIdRef.current });
678
+ }
679
+ catch (err) {
680
+ addDebugLog('warn', 'agent:api', `The API could not be asked to stop the turn: ${reasonOf(err)}`, { turnId });
681
+ }
682
+ };
683
+ const stillWaiting = () => stoppingRef.current === entry;
684
+ // Not confirmed in time: ask the API (once), and show the turn as stopped.
685
+ entry.timer = setTimeout(() => {
686
+ void (async () => {
687
+ if (!stillWaiting())
688
+ return;
689
+ await askApi();
690
+ if (!stillWaiting())
691
+ return;
692
+ addDebugLog('warn', 'agent:state', 'The stop was not confirmed in time; the turn is shown as stopped', { turnId });
693
+ handleProtocolEvent({ type: 'done', turnId, stopReason: 'user_stop' });
694
+ })();
695
+ }, STOP_CONFIRM_TIMEOUT_MS);
696
+ const socket = socketRef.current;
697
+ const room = activeRoomRef.current?.room;
698
+ const answer = socket?.connected && room
699
+ ? await new Promise(resolve => {
700
+ const timer = setTimeout(() => resolve({ ok: false, reason: 'unavailable' }), STOP_ACK_TIMEOUT_MS);
701
+ socket.emit(TURN_STOP_EVENT, { turnId, room }, (result) => {
702
+ clearTimeout(timer);
703
+ resolve(result && typeof result === 'object' && 'ok' in result ? result : { ok: false, reason: 'unavailable' });
704
+ });
705
+ })
706
+ : { ok: false, reason: 'unavailable' };
707
+ if (!answer.ok) {
708
+ // The socket could not ask (not connected, or a realtime server from before the event).
709
+ addDebugLog('warn', 'agent:socket', `The stop could not be asked over the socket: ${answer.reason}`, { turnId });
710
+ if (stillWaiting())
711
+ await askApi();
712
+ }
713
+ }, [addDebugLog, handleProtocolEvent]);
714
+ /** The turn whose UI requests the tab runs now: none while starting, none once a stop is asked. */
715
+ const acceptedTurnId = useCallback(() => {
716
+ const { starting, turnId } = liveTurnRef.current;
717
+ if (starting || !turnId)
718
+ return null;
719
+ return stoppingRef.current?.turnId === turnId ? null : turnId;
720
+ }, []);
547
721
  // --- The user's decision on an approval card (ADR-0228 §2.2.3) ---
548
722
  // Only the card calls this: it is not on the context `useAgent` returns, so
549
723
  // nothing an app binds for the assistant can reach it.
@@ -604,6 +778,7 @@ export function AgentProvider({ config, children }) {
604
778
  turnStartsRef.current += 1;
605
779
  liveTurnRef.current = { starting: false, turnId: null };
606
780
  heldEndsRef.current = [];
781
+ clearStopping();
607
782
  }, []);
608
783
  /**
609
784
  * Show a stored conversation. The latest request wins: a load that finishes
@@ -650,6 +825,13 @@ export function AgentProvider({ config, children }) {
650
825
  pendingLoadRef.current = load;
651
826
  return load;
652
827
  }, [addDebugLog, setActiveConversation]);
828
+ // A turn of this tab superseded by a message sent from another window: the conversation has
829
+ // moved on there, so it is read again here.
830
+ supersededElsewhereRef.current = () => {
831
+ const id = conversationIdRef.current;
832
+ if (id)
833
+ void loadConversation(id, { restoring: false });
834
+ };
653
835
  // Return to the tab's conversation after a reload.
654
836
  useEffect(() => {
655
837
  const remembered = readRemembered(sessionKeyOf(configRef.current));
@@ -833,6 +1015,9 @@ export function AgentProvider({ config, children }) {
833
1015
  open: useCallback(() => setIsOpen(true), []),
834
1016
  close: useCallback(() => setIsOpen(false), []),
835
1017
  sendMessage,
1018
+ stopTurn,
1019
+ isStopping,
1020
+ acceptedTurnId,
836
1021
  messages,
837
1022
  isStreaming,
838
1023
  isProcessing: isStreaming,
@@ -1 +1 @@
1
- {"version":3,"file":"AgentProvider.js","sourceRoot":"","sources":["../../src/provider/AgentProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentProvider.js","sourceRoot":"","sources":["../../src/provider/AgentProvider.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"stored-messages.d.ts","sourceRoot":"","sources":["../../src/provider/stored-messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAY/C;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,kBAAkB,EAAE,GAAG,YAAY,EAAE,CAiC3F"}
1
+ {"version":3,"file":"stored-messages.d.ts","sourceRoot":"","sources":["../../src/provider/stored-messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsC,KAAK,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAClG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAY/C;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,kBAAkB,EAAE,GAAG,YAAY,EAAE,CA2C3F"}
@@ -1,4 +1,4 @@
1
- import { displayedToolCall } from '@ouispec/agent-core';
1
+ import { displayedToolCall, turnStoppedNote } from '@ouispec/agent-core';
2
2
  /** A stored tool result as the live stream carried it: parsed JSON when it is JSON. */
3
3
  function parseResult(content) {
4
4
  if (content == null)
@@ -29,8 +29,18 @@ export function storedToAgentMessages(stored) {
29
29
  for (const m of stored) {
30
30
  const timestamp = Date.parse(m.createdAt) || 0;
31
31
  if (m.role === 'user' || m.role === 'assistant') {
32
- if (m.content) {
33
- messages.push({ id: m.id, role: m.role === 'user' ? 'user' : 'assistant', content: m.content, timestamp });
32
+ // A stopped turn's last message keeps its mark; one that has only the mark
33
+ // (the turn was stopped before it said anything) shows as stopped, with no text.
34
+ const stopped = m.role === 'assistant' && m.stopped ? m.stopped.reason : undefined;
35
+ const onlyTheMark = stopped !== undefined && m.content === turnStoppedNote({ reason: stopped });
36
+ if (m.content || stopped) {
37
+ messages.push({
38
+ id: m.id,
39
+ role: m.role === 'user' ? 'user' : 'assistant',
40
+ content: onlyTheMark ? '' : (m.content ?? ''),
41
+ timestamp,
42
+ ...(stopped ? { stopped } : {}),
43
+ });
34
44
  }
35
45
  for (const call of m.toolCalls ?? []) {
36
46
  const shown = displayedToolCall(call);
@@ -1 +1 @@
1
- {"version":3,"file":"stored-messages.js","sourceRoot":"","sources":["../../src/provider/stored-messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAA2B,MAAM,qBAAqB,CAAC;AAGjF,uFAAuF;AACvF,SAAS,WAAW,CAAC,OAAsB;IACzC,IAAI,OAAO,IAAI,IAAI;QAAE,OAAO,SAAS,CAAC;IACtC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAC;IACjB,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAqC;IACzE,MAAM,QAAQ,GAAmB,EAAE,CAAC;IACpC,MAAM,cAAc,GAAmB,EAAE,CAAC;IAE1C,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAChD,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;gBACd,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;YAC7G,CAAC;YACD,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;gBACrC,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBACtC,MAAM,WAAW,GAAiB;oBAChC,EAAE,EAAE,QAAQ,IAAI,CAAC,EAAE,EAAE;oBACrB,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,IAAI;oBACb,SAAS;oBACT,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE;iBAC5H,CAAC;gBACF,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC3B,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC7B,MAAM,KAAK,GAAG,CAAC,CAAC,UAAU;gBACxB,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC,UAAU,CAAC;gBAChE,CAAC,CAAC,CAAC,CAAC;YACN,MAAM,MAAM,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC3E,IAAI,MAAM,EAAE,QAAQ,EAAE,CAAC;gBACrB,MAAM,CAAC,QAAQ,GAAG,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3E,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"stored-messages.js","sourceRoot":"","sources":["../../src/provider/stored-messages.ts"],"names":[],"mappings":"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"}
@@ -2,13 +2,14 @@
2
2
  * Re-export the config type for convenience.
3
3
  */
4
4
  export type { AgentClientConfig } from '@ouispec/agent-core';
5
- import type { ApprovalRequiredProtocolEvent, SocketLike, AgentConversationChanges, AgentConversationFilter, AgentConversationSummary } from '@ouispec/agent-core';
5
+ import type { ApprovalRequiredProtocolEvent, SocketLike, AgentConversationChanges, AgentConversationFilter, AgentConversationSummary, TurnStopReason } from '@ouispec/agent-core';
6
6
  export interface AgentToolCallState {
7
7
  id: string;
8
8
  name: string;
9
9
  /** What the assistant called it with: a session's record can be replayed from it (ADR-0244 §2.7). */
10
10
  arguments?: Record<string, unknown>;
11
- status: 'running' | 'complete' | 'error';
11
+ /** `stopped`: the turn was stopped before this call's result arrived here. */
12
+ status: 'running' | 'complete' | 'error' | 'stopped';
12
13
  result?: unknown;
13
14
  }
14
15
  export interface AgentMessage {
@@ -18,6 +19,11 @@ export interface AgentMessage {
18
19
  timestamp: number;
19
20
  toolCall?: AgentToolCallState;
20
21
  isStreaming?: boolean;
22
+ /**
23
+ * Set on the assistant message of a turn that was stopped (ADR-0252): by
24
+ * the person, or by a newer message. What it had said is kept.
25
+ */
26
+ stopped?: TurnStopReason;
21
27
  }
22
28
  export type DebugLogLevel = 'info' | 'warn' | 'error' | 'event' | 'socket';
23
29
  /**
@@ -164,9 +170,29 @@ export interface AgentContextValue {
164
170
  toggle: () => void;
165
171
  open: () => void;
166
172
  close: () => void;
173
+ /**
174
+ * Sends the person's message. While a turn is running this is a barge-in
175
+ * (ADR-0252 §2.5): the platform stops the running turn and this message
176
+ * runs next. The tab's turn is the new one from this call on.
177
+ */
167
178
  sendMessage: (content: string, attachments?: File[]) => Promise<{
168
179
  turnId: string;
169
180
  }>;
181
+ /**
182
+ * Stops the turn in progress (ADR-0252 §2.14). What it had produced is
183
+ * kept. Does nothing when no turn is running or a stop is already asked.
184
+ */
185
+ stopTurn: () => Promise<void>;
186
+ /** True from the person's Stop until the turn's end arrives. */
187
+ isStopping: boolean;
188
+ /**
189
+ * The turn whose UI requests this tab runs now, or null: read when a request
190
+ * arrives, not at render. Null while no turn runs, while a new turn has no
191
+ * id yet, and from the moment a stop is asked, so a request a stopped or
192
+ * superseded turn sends late is refused. Give it to the tab's OUI runtime:
193
+ * `accept: acceptCurrentTurn(agent.acceptedTurnId)`.
194
+ */
195
+ acceptedTurnId: () => string | null;
170
196
  messages: AgentMessage[];
171
197
  isStreaming: boolean;
172
198
  currentTurnId: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/provider/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/provider/types.ts"],"names":[],"mappings":"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"}
package/dist/version.d.ts CHANGED
@@ -1,3 +1,3 @@
1
1
  export declare const SDK_PACKAGE = "@ouispec/agent-react";
2
- export declare const SDK_VERSION = "0.4.0";
2
+ export declare const SDK_VERSION = "0.7.0";
3
3
  //# sourceMappingURL=version.d.ts.map
package/dist/version.js CHANGED
@@ -1,4 +1,4 @@
1
1
  // Written by scripts/write-version.mjs from package.json. Not committed.
2
2
  export const SDK_PACKAGE = "@ouispec/agent-react";
3
- export const SDK_VERSION = "0.4.0";
3
+ export const SDK_VERSION = "0.7.0";
4
4
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ouispec/agent-react",
3
- "version": "0.4.0",
3
+ "version": "0.7.0",
4
4
  "description": "React bindings — view annotations, execution engine, agent UI components",
5
5
  "homepage": "https://github.com/wesreid/oui/tree/main/packages/agent-react#readme",
6
6
  "bugs": {
@@ -32,7 +32,7 @@
32
32
  },
33
33
  "dependencies": {
34
34
  "socket.io-client": "^4.7.0",
35
- "@ouispec/agent-core": "^0.4.0"
35
+ "@ouispec/agent-core": "^0.7.0"
36
36
  },
37
37
  "devDependencies": {
38
38
  "@testing-library/react": "^16",
@@ -42,7 +42,7 @@
42
42
  "react-dom": "^19.0.0",
43
43
  "typescript": "^5.8.0",
44
44
  "vitest": "^3.2.0",
45
- "oui-spec": "0.8.0"
45
+ "oui-spec": "0.10.0"
46
46
  },
47
47
  "publishConfig": {
48
48
  "access": "public",