@blocksdiy/react-common 1.18.0 → 1.20.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.
@@ -1,5 +1,6 @@
1
1
  import { ReactNode, SetStateAction } from "react";
2
2
  import { type VoiceCallMessage } from "../hooks/use-voice-call.js";
3
+ export declare const ASK_USER_TOOL_NAME = "ask_user";
3
4
  export interface Attachment {
4
5
  url: string;
5
6
  fileType: string;
@@ -24,9 +25,52 @@ export interface LegacyMessagePayload {
24
25
  payload: Record<string, any>;
25
26
  hiddenContent?: string;
26
27
  }
28
+ export type AskUserQuestionType = "text" | "single_select" | "multi_select";
29
+ export interface AskUserQuestionOption {
30
+ id: string;
31
+ label: string;
32
+ description?: string;
33
+ }
34
+ export interface AskUserQuestion {
35
+ id: string;
36
+ label: string;
37
+ type: AskUserQuestionType;
38
+ required?: boolean;
39
+ placeholder?: string;
40
+ options?: AskUserQuestionOption[];
41
+ choices?: string[];
42
+ allowOther?: boolean;
43
+ otherLabel?: string;
44
+ presentation?: "chips" | "cards";
45
+ }
46
+ export interface AskUserPayload {
47
+ questions?: AskUserQuestion[];
48
+ }
49
+ export interface AskUserSubmittedAnswer {
50
+ questionId: string;
51
+ question: string;
52
+ type: AskUserQuestionType;
53
+ value?: string;
54
+ values?: string[];
55
+ label?: string;
56
+ labels?: string[];
57
+ other?: string;
58
+ }
59
+ export interface ToolResumeInput {
60
+ toolCallId?: string;
61
+ toolName?: string;
62
+ type?: string;
63
+ skipped?: boolean;
64
+ [key: string]: unknown;
65
+ }
66
+ export interface SubmitAskUserAnswersInput extends ToolResumeInput {
67
+ type?: "ask_user";
68
+ answers: AskUserSubmittedAnswer[];
69
+ }
27
70
  type CopilotMessageMetadata = {
28
71
  version?: 1;
29
72
  hiddenPrompt?: string;
73
+ kind?: "tool-resume";
30
74
  };
31
75
  type CopilotToolCall = {
32
76
  id?: string;
@@ -71,6 +115,8 @@ export interface AgentChatContextValue {
71
115
  threadIds: string[];
72
116
  agentChatData?: AgentChatData;
73
117
  sendMessage: (message: Omit<LegacyMessagePayload, "id" | "role" | "type" | "payload">) => Promise<void>;
118
+ submitToolResume: (input: ToolResumeInput) => Promise<void>;
119
+ submitAskUserAnswers: (input: SubmitAskUserAnswersInput) => Promise<void>;
74
120
  sendFromInputs: () => Promise<void>;
75
121
  addMessages: (newMessages: MessageItem[]) => void;
76
122
  addAttachments: (attachments: Attachment[]) => void;
@@ -88,6 +134,9 @@ export interface AgentChatContextValue {
88
134
  chatId?: string;
89
135
  noPersistency?: boolean;
90
136
  }
137
+ export declare const formatAskUserAnswerSummary: (answers: AskUserSubmittedAnswer[]) => string;
138
+ export declare const buildToolResumeHiddenContent: ({ toolName, type, skipped, ...resumePayload }: ToolResumeInput) => string;
139
+ export declare const buildAskUserAnswersHiddenContent: (input: SubmitAskUserAnswersInput) => string;
91
140
  export declare const useAgentChat: () => AgentChatContextValue;
92
141
  export interface ToolCardContextValue {
93
142
  open: boolean;
@@ -165,6 +214,41 @@ export interface AgentChatRootProps {
165
214
  useDynamicUI?: boolean;
166
215
  }
167
216
  export type ResolvedAgentChatConfig = Pick<AgentChatRootProps, "agentBlockId" | "agentHarness" | "agentChatData" | "shortTermMemory" | "useDynamicUI">;
217
+ interface HitlResumeRequestBodyInput {
218
+ appId: string;
219
+ agentBlockId?: string;
220
+ agentChatId?: string;
221
+ chatId?: string;
222
+ currentThreadId?: string;
223
+ noPersistency?: boolean;
224
+ shortTermMemory: {
225
+ isEnabled: boolean;
226
+ isPersistent?: boolean;
227
+ };
228
+ chatContextFiles?: Attachment[];
229
+ chatContext: unknown;
230
+ requestMessages: CopilotMessage[];
231
+ messageId: string;
232
+ input: ToolResumeInput;
233
+ }
234
+ export declare const buildHitlResumeRequestBody: ({ appId, agentBlockId, agentChatId, chatId, currentThreadId, noPersistency, shortTermMemory, chatContextFiles, chatContext, requestMessages, messageId, input, }: HitlResumeRequestBodyInput) => {
235
+ appId: string;
236
+ agentBlockId: string | undefined;
237
+ agentChatId: string | undefined;
238
+ chatId: string | undefined;
239
+ threadId: string | undefined;
240
+ noPersistency: boolean | undefined;
241
+ shortTermMemory: {
242
+ isEnabled: boolean;
243
+ isPersistent?: boolean;
244
+ };
245
+ chatContextFiles: Attachment[] | undefined;
246
+ chatContext: string | undefined;
247
+ files: never[];
248
+ messages: CopilotMessage[];
249
+ messageId: string;
250
+ hitlResume: ToolResumeInput;
251
+ };
168
252
  export declare const AgentChatRoot: ({ appId, token, agentBlockId, agentHarness, useAgentBlockDirectChat, agentChatId, children, chatId, noPersistency, defaultThreadId, chatContext, chatContextFiles, agentChatData, memoryEnabled, shortTermMemory, useDynamicUI, }: AgentChatRootProps) => import("react/jsx-runtime").JSX.Element | null;
169
253
  export interface AgentChatVoiceContextValue {
170
254
  isConnected: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-chat.d.ts","sourceRoot":"","sources":["../../src/components/agent-chat.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-chat.d.ts","sourceRoot":"","sources":["../../src/components/agent-chat.tsx"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ const CHAT_AGENT_CALL_ACTION_BLOCK_ID = "688ed4d77b454b1fdaf5cf2d";
15
15
  const MAX_FILE_SIZE_MB = 5;
16
16
  const MAX_FILE_SIZE_BYTES = MAX_FILE_SIZE_MB * 1024 * 1024;
17
17
  const DEFAULT_SHORT_TERM_MEMORY = { isEnabled: true, isPersistent: true };
18
+ export const ASK_USER_TOOL_NAME = "ask_user";
18
19
  const validateAndConvertFiles = (files) => {
19
20
  if (files.length === 0) {
20
21
  return null;
@@ -36,11 +37,92 @@ const generateId = (length = 10) => {
36
37
  .toString(36)
37
38
  .substring(2, 2 + length);
38
39
  };
40
+ export const formatAskUserAnswerSummary = (answers) => {
41
+ const lines = answers.map((answer) => {
42
+ const selectedValues = answer.values !== undefined ? [...(answer.labels || []), answer.other].filter(Boolean).join(", ") : undefined;
43
+ const value = selectedValues || answer.other || answer.label || answer.value || "No answer";
44
+ return `- ${answer.question}: ${value}`;
45
+ });
46
+ return lines.join("\n");
47
+ };
48
+ export const buildToolResumeHiddenContent = ({ toolName = "tool", type = "tool", skipped, ...resumePayload }) => [
49
+ `The user submitted a resume payload to ${toolName}.`,
50
+ JSON.stringify({
51
+ type: "tool_resume",
52
+ status: skipped ? "skipped" : "answered",
53
+ resumeType: type,
54
+ toolName,
55
+ skipped,
56
+ ...resumePayload,
57
+ }, null, 2),
58
+ ].join("\n\n");
59
+ export const buildAskUserAnswersHiddenContent = (input) => buildToolResumeHiddenContent({
60
+ ...input,
61
+ toolName: input.toolName ?? ASK_USER_TOOL_NAME,
62
+ type: "ask_user",
63
+ });
64
+ const isToolResumeHiddenContent = (hiddenContent) => typeof hiddenContent === "string" && hiddenContent.includes('"tool_resume"');
65
+ const isToolResumeCopilotMessage = (message) => message.metadata?.kind === "tool-resume" || isToolResumeHiddenContent(message.metadata?.hiddenPrompt);
66
+ /**
67
+ * Suppress the synthetic `TOOL_CALL_START` / `TOOL_CALL_ARGS` / `TOOL_CALL_END`
68
+ * events that the AGUI LangGraph agent re-emits when a previously-streamed
69
+ * tool resumes from a LangGraph `interrupt()` (e.g. the `ask_user` HITL flow).
70
+ *
71
+ * On resume the model is NOT re-invoked for the tool args — it just continues
72
+ * from the checkpoint — so `has_function_streaming` resets to False and the
73
+ * AGUI agent dispatches a synthetic START/ARGS/END pair before the real
74
+ * `TOOL_CALL_RESULT`. Applied client-side by `@ag-ui/client`'s default reducer
75
+ * those events:
76
+ * 1. Create a synthetic empty assistant message (parent_message_id maps to
77
+ * the new ToolMessage's id, which doesn't exist yet → new bubble pushed).
78
+ * 2. Append the full args JSON onto the original assistant message's
79
+ * already-complete tool call args (corrupting them so `parseMaybeJson`
80
+ * fails and the `AskUserPart` can't render the form input).
81
+ *
82
+ * Both effects flash as empty bubbles in the chat until the run-end
83
+ * `MESSAGES_SNAPSHOT` reconciles them. Suppressing the duplicate START (and
84
+ * its paired ARGS/END) at the subscriber layer keeps the original tool call
85
+ * intact and lets `TOOL_CALL_RESULT` resolve it cleanly through the existing
86
+ * `normalizeCopilotToolCall` pairing logic.
87
+ */
88
+ const createDuplicateToolCallSuppressor = () => {
89
+ const suppressedToolCallIds = new Set();
90
+ return {
91
+ onToolCallStartEvent: ({ event, messages }) => {
92
+ const toolCallId = event.toolCallId;
93
+ if (!toolCallId) {
94
+ return undefined;
95
+ }
96
+ const alreadyPresent = messages.some((message) => message.role === "assistant" &&
97
+ Array.isArray(message.toolCalls) &&
98
+ message.toolCalls.some((tc) => tc.id === toolCallId));
99
+ if (alreadyPresent) {
100
+ suppressedToolCallIds.add(toolCallId);
101
+ return { stopPropagation: true };
102
+ }
103
+ return undefined;
104
+ },
105
+ onToolCallArgsEvent: ({ event }) => {
106
+ if (event.toolCallId && suppressedToolCallIds.has(event.toolCallId)) {
107
+ return { stopPropagation: true };
108
+ }
109
+ return undefined;
110
+ },
111
+ onToolCallEndEvent: ({ event }) => {
112
+ if (event.toolCallId && suppressedToolCallIds.has(event.toolCallId)) {
113
+ suppressedToolCallIds.delete(event.toolCallId);
114
+ return { stopPropagation: true };
115
+ }
116
+ return undefined;
117
+ },
118
+ };
119
+ };
39
120
  class BlocksCopilotHttpAgent extends HttpAgent {
40
121
  requestHeaders = {};
41
122
  requestBody = {};
42
123
  constructor({ url }) {
43
124
  super({ url, headers: {} });
125
+ this.subscribe(createDuplicateToolCallSuppressor());
44
126
  }
45
127
  setRequestOptions({ headers, body }) {
46
128
  this.requestHeaders = headers;
@@ -80,8 +162,12 @@ const legacyPayloadToCopilotMessage = (message) => ({
80
162
  version: 1,
81
163
  hiddenPrompt: message.hiddenContent,
82
164
  },
165
+ ...(Array.isArray(message.payload?.toolCalls) ? { toolCalls: message.payload.toolCalls } : {}),
83
166
  });
84
167
  const messageItemToCopilotMessage = (message) => {
168
+ if (isToolResumeHiddenContent(message.msg.hiddenContent)) {
169
+ return null;
170
+ }
85
171
  return legacyPayloadToCopilotMessage(message.msg);
86
172
  };
87
173
  const normalizeCopilotToolCall = (toolCall, allMessages) => {
@@ -101,6 +187,9 @@ const normalizeCopilotToolCall = (toolCall, allMessages) => {
101
187
  };
102
188
  };
103
189
  const copilotMessageToLegacyPayload = (message, allMessages = []) => {
190
+ if (isToolResumeCopilotMessage(message)) {
191
+ return null;
192
+ }
104
193
  if (!message.id || (message.role !== "user" && message.role !== "assistant")) {
105
194
  return null;
106
195
  }
@@ -117,7 +206,34 @@ const copilotMessageToLegacyPayload = (message, allMessages = []) => {
117
206
  payload: toolCalls.length ? { toolCalls } : {},
118
207
  };
119
208
  };
120
- const messageItemToLegacyPayload = (message) => message.msg;
209
+ const messageItemToLegacyPayload = (message) => isToolResumeHiddenContent(message.msg.hiddenContent) ? null : message.msg;
210
+ const getToolCallName = (toolCall) => toolCall.toolName ||
211
+ toolCall.function?.name ||
212
+ toolCall.name ||
213
+ (typeof toolCall.type === "string" ? toolCall.type.replace(/^tool-/, "") : undefined);
214
+ const getToolCallId = (toolCall) => toolCall.toolCallId || toolCall.id;
215
+ const isResolvedToolCall = (toolCall) => toolCall.state === "output-available" || toolCall.output !== undefined;
216
+ const findPendingAskUserToolCall = (messages) => {
217
+ for (let messageIndex = messages.length - 1; messageIndex >= 0; messageIndex -= 1) {
218
+ const toolCalls = messages[messageIndex].msg.payload?.toolCalls;
219
+ if (!Array.isArray(toolCalls)) {
220
+ continue;
221
+ }
222
+ for (let toolIndex = toolCalls.length - 1; toolIndex >= 0; toolIndex -= 1) {
223
+ const toolCall = toolCalls[toolIndex];
224
+ if (!toolCall || typeof toolCall !== "object") {
225
+ continue;
226
+ }
227
+ if (getToolCallName(toolCall) === ASK_USER_TOOL_NAME && !isResolvedToolCall(toolCall)) {
228
+ return {
229
+ toolCallId: getToolCallId(toolCall),
230
+ toolName: ASK_USER_TOOL_NAME,
231
+ };
232
+ }
233
+ }
234
+ }
235
+ return null;
236
+ };
121
237
  const appendCopilotErrorMessage = (messages, error) => {
122
238
  const text = "Error: " + (error instanceof Error ? error.message : "Unknown error");
123
239
  const lastMessage = messages[messages.length - 1];
@@ -134,11 +250,14 @@ const appendCopilotErrorMessage = (messages, error) => {
134
250
  },
135
251
  ];
136
252
  };
137
- const storedMessageToLegacyView = (message) => {
253
+ const storedMessageToLegacyView = (message, allMessages = []) => {
138
254
  if ("type" in message.msg) {
255
+ if (message.msg.role !== "human" && message.msg.role !== "ai") {
256
+ return null;
257
+ }
139
258
  return message;
140
259
  }
141
- const legacyPayload = copilotMessageToLegacyPayload(message.msg);
260
+ const legacyPayload = copilotMessageToLegacyPayload(message.msg, allMessages);
142
261
  if (legacyPayload) {
143
262
  return {
144
263
  ...message,
@@ -146,16 +265,7 @@ const storedMessageToLegacyView = (message) => {
146
265
  msg: legacyPayload,
147
266
  };
148
267
  }
149
- return {
150
- ...message,
151
- msg: {
152
- id: message.msg.id ?? generateId(),
153
- role: "ai",
154
- type: "text",
155
- content: "",
156
- payload: {},
157
- },
158
- };
268
+ return null;
159
269
  };
160
270
  export const useAgentChat = () => {
161
271
  const context = useContext(AgentChatContext);
@@ -355,6 +465,21 @@ const mergeMessageItemsById = (currentMessages, incomingMessages) => {
355
465
  return nextMessages;
356
466
  };
357
467
  const formatChatContext = (chatContext) => (chatContext ? `Context: \n${JSON.stringify(chatContext)}` : undefined);
468
+ export const buildHitlResumeRequestBody = ({ appId, agentBlockId, agentChatId, chatId, currentThreadId, noPersistency, shortTermMemory, chatContextFiles, chatContext, requestMessages, messageId, input, }) => ({
469
+ appId,
470
+ agentBlockId,
471
+ agentChatId,
472
+ chatId,
473
+ threadId: currentThreadId,
474
+ noPersistency,
475
+ shortTermMemory,
476
+ chatContextFiles,
477
+ chatContext: formatChatContext(chatContext),
478
+ files: [],
479
+ messages: requestMessages,
480
+ messageId,
481
+ hitlResume: input,
482
+ });
358
483
  function useAgentChatInputState({ isThinking, isFetchingMessages, sendMessage, }) {
359
484
  const [prompt, setPrompt] = useState("");
360
485
  const [attachments, setAttachments] = useState([]);
@@ -564,6 +689,9 @@ function LegacyAgentChatProvider({ appId, token, agentChatId, children, chatId,
564
689
  const newMessages = [...prevMessages];
565
690
  for (const rawMessageToAdd of messagesToAdd) {
566
691
  const messageToAdd = storedMessageToLegacyView(rawMessageToAdd);
692
+ if (!messageToAdd) {
693
+ continue;
694
+ }
567
695
  const existingIndex = newMessages.findIndex((m) => m.msg.id === messageToAdd.msg.id);
568
696
  if (existingIndex !== -1) {
569
697
  newMessages[existingIndex] = messageToAdd;
@@ -675,6 +803,18 @@ function LegacyAgentChatProvider({ appId, token, agentChatId, children, chatId,
675
803
  memoryEnabled,
676
804
  shortTermMemory,
677
805
  ]);
806
+ const submitToolResume = useCallback(async (input) => {
807
+ await sendMessage({
808
+ content: "",
809
+ hiddenContent: buildToolResumeHiddenContent(input),
810
+ });
811
+ }, [sendMessage]);
812
+ const submitAskUserAnswers = useCallback(async (input) => {
813
+ await sendMessage({
814
+ content: formatAskUserAnswerSummary(input.answers),
815
+ hiddenContent: buildAskUserAnswersHiddenContent(input),
816
+ });
817
+ }, [sendMessage]);
678
818
  useAgentChatDataInitialization({
679
819
  agentChatData,
680
820
  addMessages,
@@ -682,7 +822,7 @@ function LegacyAgentChatProvider({ appId, token, agentChatId, children, chatId,
682
822
  isPersistentFlow,
683
823
  });
684
824
  const inputState = useAgentChatInputState({ isThinking, isFetchingMessages, sendMessage });
685
- return (_jsx(AgentChatContextProvider, { ...inputState, messages: flattenLegacyMessages(messages), initialAgentMessages: initialAgentMessages, isThinking: isThinking, isFetchingMessages: isFetchingMessages, currentThreadId: currentThreadId, agentChatData: agentChatData, sendMessage: sendMessage, addMessages: addMessages, setCurrentThreadId: setCurrentThreadId, appId: appId, token: token, agentChatId: agentChatId, chatId: chatId, noPersistency: noPersistency, children: children }));
825
+ return (_jsx(AgentChatContextProvider, { ...inputState, messages: flattenLegacyMessages(messages), initialAgentMessages: initialAgentMessages, isThinking: isThinking, isFetchingMessages: isFetchingMessages, currentThreadId: currentThreadId, agentChatData: agentChatData, sendMessage: sendMessage, submitToolResume: submitToolResume, submitAskUserAnswers: submitAskUserAnswers, addMessages: addMessages, setCurrentThreadId: setCurrentThreadId, appId: appId, token: token, agentChatId: agentChatId, chatId: chatId, noPersistency: noPersistency, children: children }));
686
826
  }
687
827
  function CopilotAgentChatRootProvider({ appId, token, ...props }) {
688
828
  const copilotRuntimeUrl = `${getApiHost()}/agent-chat-stream`;
@@ -694,6 +834,11 @@ function CopilotAgentChatProvider({ appId, token, agentBlockId, agentChatId, chi
694
834
  const [externalMessages, setExternalMessages] = useState([]);
695
835
  const copilotMessageCreatedAtByIdRef = useRef({});
696
836
  const previousCopilotChatIdRef = useRef(undefined);
837
+ // Latest snapshot of public `messages` for callbacks that read it after an
838
+ // await. The closure value goes stale after `runHitlResume` resolves — the
839
+ // resume's stream events update copilotMessages → messages, but the callback
840
+ // still sees the value captured at invocation time.
841
+ const messagesRef = useRef([]);
697
842
  const copilotChatId = useMemo(() => [appId, agentChatId, chatId, currentThreadId].filter(Boolean).join(":"), [appId, agentChatId, chatId, currentThreadId]);
698
843
  const { messages: copilotMessages, sendMessage: sendCopilotMessage, setMessages: setCopilotMessages, isLoading: isCopilotLoading, } = useCopilotChatInternal();
699
844
  // Wait one commit before firing the init send: CopilotKit's setup effect aborts the
@@ -726,7 +871,12 @@ function CopilotAgentChatProvider({ appId, token, agentBlockId, agentChatId, chi
726
871
  })
727
872
  .filter((message) => Boolean(message)), [copilotMessages]);
728
873
  const messages = useMemo(() => {
729
- const fetchedMessageItems = fetchedMessages.map(storedMessageToLegacyView);
874
+ const fetchedCopilotMessages = fetchedMessages
875
+ .map((message) => message.msg)
876
+ .filter((message) => !("type" in message));
877
+ const fetchedMessageItems = fetchedMessages
878
+ .map((message) => storedMessageToLegacyView(message, fetchedCopilotMessages))
879
+ .filter((message) => Boolean(message));
730
880
  // Seed initial agent messages so the stream echo merges by id and keeps the early createdAt.
731
881
  const nextMessages = mergeMessageItemsById(mergeMessageItemsById(initialAgentMessages, fetchedMessageItems), externalMessages);
732
882
  for (const messageItem of copilotMessageItems) {
@@ -746,15 +896,94 @@ function CopilotAgentChatProvider({ appId, token, agentBlockId, agentChatId, chi
746
896
  return nextMessages;
747
897
  }, [copilotMessageItems, externalMessages, fetchedMessages, initialAgentMessages]);
748
898
  const isThinking = isCopilotLoading;
899
+ useEffect(() => {
900
+ messagesRef.current = messages;
901
+ }, [messages]);
749
902
  const addExternalMessages = useCallback((messagesToAdd) => {
750
- const normalizedMessages = messagesToAdd.map(storedMessageToLegacyView);
903
+ const copilotMessagesToAdd = messagesToAdd
904
+ .map((message) => message.msg)
905
+ .filter((message) => !("type" in message));
906
+ const normalizedMessages = messagesToAdd
907
+ .map((message) => storedMessageToLegacyView(message, copilotMessagesToAdd))
908
+ .filter((message) => Boolean(message));
751
909
  setExternalMessages((prevMessages) => mergeMessageItemsById(prevMessages, normalizedMessages));
752
910
  }, []);
753
911
  const addCopilotErrorMessage = useCallback((error) => {
754
912
  setCopilotMessages(appendCopilotErrorMessage(copilotMessages, error));
755
913
  }, [copilotMessages, setCopilotMessages]);
914
+ const runHitlResume = useCallback(async (input) => {
915
+ const messageId = generateId();
916
+ const hiddenContent = buildToolResumeHiddenContent(input);
917
+ const userCopilotMessage = {
918
+ id: messageId,
919
+ role: "user",
920
+ content: "",
921
+ metadata: { version: 1, hiddenPrompt: hiddenContent, kind: "tool-resume" },
922
+ };
923
+ // Always read the latest snapshot — the resume flow can be invoked from
924
+ // sendMessage's skipped path right after another awaited resume settled.
925
+ const latestMessages = messagesRef.current;
926
+ const requestMessages = latestMessages
927
+ .map(messageItemToCopilotMessage)
928
+ .filter((requestMessage) => Boolean(requestMessage));
929
+ setCopilotMessages(requestMessages);
930
+ copilotAgent.setRequestOptions({
931
+ headers: {
932
+ ...(token ? { Authorization: `Bearer ${token}` } : {}),
933
+ ...(AppVersionService.getCurrentVersionNumber()
934
+ ? { "x-app-version": String(AppVersionService.getCurrentVersionNumber()) }
935
+ : {}),
936
+ ...(websocketsService.getSocketId() ? { "x-socket-id": websocketsService.getSocketId() } : {}),
937
+ ...(appId ? { "x-app-id": appId } : {}),
938
+ },
939
+ body: buildHitlResumeRequestBody({
940
+ appId,
941
+ agentBlockId,
942
+ agentChatId,
943
+ chatId,
944
+ currentThreadId,
945
+ noPersistency,
946
+ shortTermMemory,
947
+ chatContextFiles,
948
+ chatContext,
949
+ requestMessages,
950
+ messageId,
951
+ input,
952
+ }),
953
+ });
954
+ try {
955
+ await sendCopilotMessage(userCopilotMessage);
956
+ }
957
+ finally {
958
+ copilotAgent.clearRequestOptions();
959
+ }
960
+ }, [
961
+ agentBlockId,
962
+ agentChatId,
963
+ appId,
964
+ chatId,
965
+ chatContext,
966
+ chatContextFiles,
967
+ copilotAgent,
968
+ currentThreadId,
969
+ noPersistency,
970
+ sendCopilotMessage,
971
+ setCopilotMessages,
972
+ shortTermMemory,
973
+ token,
974
+ ]);
756
975
  const sendMessage = useCallback(async ({ content, hiddenContent, ...message }) => {
757
976
  try {
977
+ const pendingAskUser = findPendingAskUserToolCall(messages);
978
+ if (pendingAskUser?.toolCallId) {
979
+ await runHitlResume({
980
+ toolCallId: pendingAskUser.toolCallId,
981
+ toolName: ASK_USER_TOOL_NAME,
982
+ type: "ask_user",
983
+ answers: [],
984
+ skipped: true,
985
+ });
986
+ }
758
987
  const messageId = generateId();
759
988
  const uploadedAttachments = await uploadAttachments({ attachments: message.attachments, appId, token });
760
989
  const userCopilotMessage = {
@@ -763,7 +992,12 @@ function CopilotAgentChatProvider({ appId, token, agentBlockId, agentChatId, chi
763
992
  content: content ?? "",
764
993
  metadata: { version: 1, hiddenPrompt: hiddenContent ?? undefined },
765
994
  };
766
- const requestMessages = messages
995
+ // Read the latest messages snapshot (the closure value is stale after
996
+ // the awaited skipped resume — it still reflects the state before the
997
+ // resume's stream populated copilotMessages with the resolved tool
998
+ // result and any AI follow-up).
999
+ const latestMessages = messagesRef.current;
1000
+ const requestMessages = latestMessages
767
1001
  .map(messageItemToCopilotMessage)
768
1002
  .filter((requestMessage) => Boolean(requestMessage));
769
1003
  setCopilotMessages(requestMessages);
@@ -813,6 +1047,7 @@ function CopilotAgentChatProvider({ appId, token, agentBlockId, agentChatId, chi
813
1047
  currentThreadId,
814
1048
  messages,
815
1049
  noPersistency,
1050
+ runHitlResume,
816
1051
  sendCopilotMessage,
817
1052
  setCopilotMessages,
818
1053
  shortTermMemory,
@@ -820,6 +1055,21 @@ function CopilotAgentChatProvider({ appId, token, agentBlockId, agentChatId, chi
820
1055
  initialAgentMessages,
821
1056
  useDynamicUI,
822
1057
  ]);
1058
+ const submitToolResume = useCallback(async (input) => {
1059
+ try {
1060
+ await runHitlResume(input);
1061
+ }
1062
+ catch (error) {
1063
+ addCopilotErrorMessage(error);
1064
+ }
1065
+ }, [addCopilotErrorMessage, runHitlResume]);
1066
+ const submitAskUserAnswers = useCallback(async (input) => {
1067
+ await submitToolResume({
1068
+ ...input,
1069
+ toolName: input.toolName ?? ASK_USER_TOOL_NAME,
1070
+ type: "ask_user",
1071
+ });
1072
+ }, [submitToolResume]);
823
1073
  useAgentChatDataInitialization({
824
1074
  agentChatData,
825
1075
  addMessages: addExternalMessages,
@@ -828,7 +1078,7 @@ function CopilotAgentChatProvider({ appId, token, agentBlockId, agentChatId, chi
828
1078
  isAgentReady: hasMounted && (!isPersistentFlow || (!isFetchingMessages && fetchedMessages.length === 0)),
829
1079
  });
830
1080
  const inputState = useAgentChatInputState({ isThinking, isFetchingMessages, sendMessage });
831
- return (_jsx(AgentChatContextProvider, { ...inputState, messages: messages, initialAgentMessages: initialAgentMessages, isThinking: isThinking, isFetchingMessages: isFetchingMessages, currentThreadId: currentThreadId, agentChatData: agentChatData, sendMessage: sendMessage, addMessages: addExternalMessages, setCurrentThreadId: setCurrentThreadId, appId: appId, token: token, agentBlockId: agentBlockId, agentChatId: agentChatId, chatId: chatId, noPersistency: noPersistency, children: children }));
1081
+ return (_jsx(AgentChatContextProvider, { ...inputState, messages: messages, initialAgentMessages: initialAgentMessages, isThinking: isThinking, isFetchingMessages: isFetchingMessages, currentThreadId: currentThreadId, agentChatData: agentChatData, sendMessage: sendMessage, submitToolResume: submitToolResume, submitAskUserAnswers: submitAskUserAnswers, addMessages: addExternalMessages, setCurrentThreadId: setCurrentThreadId, appId: appId, token: token, agentBlockId: agentBlockId, agentChatId: agentChatId, chatId: chatId, noPersistency: noPersistency, children: children }));
832
1082
  }
833
1083
  const AgentChatVoiceContext = createContext(null);
834
1084
  const noopVoice = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blocksdiy/react-common",
3
- "version": "1.18.0",
3
+ "version": "1.20.0",
4
4
  "type": "module",
5
5
  "description": "React common",
6
6
  "keywords": [],