@economic/agents-react 1.3.3 → 1.3.5

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/dist/index.d.mts CHANGED
@@ -205,11 +205,6 @@ declare class PartySocket extends ReconnectingWebSocket {
205
205
  //#region src/types.d.ts
206
206
  type AgentConnectionStatus = "connecting" | "connected" | "disconnected" | "unauthorized";
207
207
  type AgentConnectionType = "agent" | "chat" | "assistant";
208
- type AgentConnectionState = {
209
- status: AgentConnectionStatus;
210
- type: AgentConnectionType;
211
- subAgentName?: string;
212
- };
213
208
  type ChatSummary = {
214
209
  name: string;
215
210
  title?: string;
@@ -230,12 +225,6 @@ type GetChatsHandler = () => Promise<ChatSummary[]>;
230
225
  type CreateChatHandler = () => Promise<string>;
231
226
  type OpenChatHandler = (chatId: string) => void;
232
227
  type DeleteChatHandler = (chatId: string) => Promise<void>;
233
- interface AssistantActions {
234
- getChats: GetChatsHandler;
235
- createChat: CreateChatHandler;
236
- openChat: OpenChatHandler;
237
- deleteChat: DeleteChatHandler;
238
- }
239
228
  //#endregion
240
229
  //#region src/useAgent.d.ts
241
230
  interface UseAgentOptions {
@@ -252,6 +241,7 @@ interface UseAgentOptions {
252
241
  onOpen?: (event: Event) => void;
253
242
  onClose?: (event: CloseEvent) => void;
254
243
  onError?: (event: ErrorEvent) => void;
244
+ onMessage?: (event: MessageEvent) => void;
255
245
  }
256
246
  declare function useAgent(options: UseAgentOptions): {
257
247
  agent: Omit<PartySocket, "path"> & {
@@ -263,8 +253,8 @@ declare function useAgent(options: UseAgentOptions): {
263
253
  }>;
264
254
  identified: boolean;
265
255
  ready: Promise<void>;
266
- state: AgentConnectionState | undefined;
267
- setState: (state: AgentConnectionState) => void;
256
+ state: unknown;
257
+ setState: (state: unknown) => void;
268
258
  call: <T = unknown>(method: string, args?: unknown[], options?: import("agents/client").CallOptions | import("agents/client").StreamOptions) => Promise<T>;
269
259
  stub: import("agents/client").UntypedAgentStub;
270
260
  getHttpUrl: () => string;
@@ -290,8 +280,8 @@ declare function useChat<ToolContext extends Record<string, unknown>>(options: U
290
280
  }>;
291
281
  identified: boolean;
292
282
  ready: Promise<void>;
293
- state: AgentConnectionState | undefined;
294
- setState: (state: AgentConnectionState) => void;
283
+ state: unknown;
284
+ setState: (state: unknown) => void;
295
285
  call: <T = unknown>(method: string, args?: unknown[], options?: import("agents/client").CallOptions | import("agents/client").StreamOptions) => Promise<T>;
296
286
  stub: import("agents/client").UntypedAgentStub;
297
287
  getHttpUrl: () => string;
@@ -323,6 +313,21 @@ declare function useAssistant<ToolContext extends Record<string, unknown>>(optio
323
313
  chats: ChatSummary[];
324
314
  status: AgentConnectionStatus;
325
315
  assistant: {
316
+ agent: Omit<PartySocket, "path"> & {
317
+ agent: string;
318
+ name: string;
319
+ path: ReadonlyArray<{
320
+ agent: string;
321
+ name: string;
322
+ }>;
323
+ identified: boolean;
324
+ ready: Promise<void>;
325
+ state: unknown;
326
+ setState: (state: unknown) => void;
327
+ call: <T = unknown>(method: string, args?: unknown[], options?: import("agents/client").CallOptions | import("agents/client").StreamOptions) => Promise<T>;
328
+ stub: import("agents/client").UntypedAgentStub;
329
+ getHttpUrl: () => string;
330
+ };
326
331
  getChats: () => Promise<ChatSummary[]>;
327
332
  createChat: () => Promise<string>;
328
333
  openChat: (chatId: string) => void;
@@ -339,8 +344,8 @@ declare function useAssistant<ToolContext extends Record<string, unknown>>(optio
339
344
  }>;
340
345
  identified: boolean;
341
346
  ready: Promise<void>;
342
- state: AgentConnectionState | undefined;
343
- setState: (state: AgentConnectionState) => void;
347
+ state: unknown;
348
+ setState: (state: unknown) => void;
344
349
  call: <T = unknown>(method: string, args?: unknown[], options?: import("agents/client").CallOptions | import("agents/client").StreamOptions) => Promise<T>;
345
350
  stub: import("agents/client").UntypedAgentStub;
346
351
  getHttpUrl: () => string;
@@ -364,4 +369,4 @@ declare function useAssistant<ToolContext extends Record<string, unknown>>(optio
364
369
  };
365
370
  };
366
371
  //#endregion
367
- export { type AgentConnectionState, type AgentConnectionStatus, type AgentConnectionType, type AssistantActions, type ChatSummary, type CreateChatHandler, type DeleteChatHandler, type GetChatsHandler, type GetMessageFeedbackHandler, type MessageFeedback, type MessageFeedbackHandler, type OpenChatHandler, useAgent, useAssistant, useChat };
372
+ export { type AgentConnectionStatus, type AgentConnectionType, type ChatSummary, type CreateChatHandler, type DeleteChatHandler, type GetChatsHandler, type GetMessageFeedbackHandler, type MessageFeedback, type MessageFeedbackHandler, type OpenChatHandler, useAgent, useAssistant, useChat };
package/dist/index.mjs CHANGED
@@ -12,7 +12,7 @@ function getTokenArgs(authToken) {
12
12
  //#endregion
13
13
  //#region src/useAgent.ts
14
14
  function useAgent(options) {
15
- const { enabled, host, agentName, actorId, name, sub, authToken, onError, onOpen, onClose } = options;
15
+ const { enabled, host, agentName, actorId, name, sub, authToken, onError, onOpen, onClose, onMessage } = options;
16
16
  const [type, setType] = useState(void 0);
17
17
  const [status, setStatus] = useState("connecting");
18
18
  const agent = useAgent$1({
@@ -35,6 +35,7 @@ function useAgent(options) {
35
35
  if (msg.status === "unauthorized") agent.close(3e3);
36
36
  setStatus(msg.status);
37
37
  } else if (msg.type === "agent_type") setType(msg.agentType);
38
+ onMessage?.(event);
38
39
  },
39
40
  onError: (event) => {
40
41
  setStatus("disconnected");
@@ -103,7 +104,14 @@ function useAssistant(options) {
103
104
  const { toolContext, welcomeMessage, initialChatId, ...agentOptions } = options;
104
105
  const [chatId, setChatId] = useState(initialChatId);
105
106
  const [chats, setChats] = useState([]);
106
- const { agent: assistant, status: assistantStatus } = useAgent(agentOptions);
107
+ const [subAgentName, setSubAgentName] = useState(void 0);
108
+ const { agent: assistant, status: assistantStatus } = useAgent({
109
+ ...agentOptions,
110
+ onMessage: (event) => {
111
+ const msg = JSON.parse(event.data);
112
+ if (msg.type === "sub_agent_name") setSubAgentName(msg.subAgentName);
113
+ }
114
+ });
107
115
  const refreshChats = useCallback(async () => {
108
116
  setChats((await assistant.call("getChats")).map((chat) => {
109
117
  const c = {
@@ -135,9 +143,8 @@ function useAssistant(options) {
135
143
  setChatId(void 0);
136
144
  await refreshChats();
137
145
  };
138
- const subAgentName = assistant.state?.subAgentName ?? "";
139
146
  const isChatEnabled = !!chatId && !!subAgentName;
140
- const isChatReady = isChatEnabled && assistant.state?.status === "connected";
147
+ const isChatReady = isChatEnabled && assistantStatus === "connected";
141
148
  const chat = useChat({
142
149
  ...agentOptions,
143
150
  enabled: isChatEnabled,
@@ -154,6 +161,7 @@ function useAssistant(options) {
154
161
  chats,
155
162
  status: isChatEnabled && chat.status !== "connecting" ? chat.status : assistantStatus,
156
163
  assistant: {
164
+ agent: assistant,
157
165
  getChats,
158
166
  createChat,
159
167
  openChat,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@economic/agents-react",
3
- "version": "1.3.3",
3
+ "version": "1.3.5",
4
4
  "license": "MIT",
5
5
  "files": [
6
6
  "dist"