@xmtp/agent-sdk 2.2.0 → 2.3.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
@@ -85,10 +85,15 @@ Subscribe only to what you need using Node’s `EventEmitter` interface. Events
85
85
 
86
86
  **Message Events**
87
87
 
88
- - `attachment` – an incoming [remote attachment message](https://docs.xmtp.org/chat-apps/content-types/attachments)
88
+ - `actions` – an incoming [actions message](https://docs.xmtp.org/agents/content-types/actions) (interactive buttons/choices)
89
+ - `attachment` – an incoming [remote attachment message](https://docs.xmtp.org/agents/content-types/attachments#how-remote-attachments-work)
90
+ - `group-update` – an incoming [group update](https://docs.xmtp.org/agents/content-types/group-updates#listen-for-group-updates) (like name change, member update, etc.)
91
+ - `inline-attachment` – an incoming inline attachment (small files sent directly in the message)
92
+ - `intent` – an incoming [intent message](https://docs.xmtp.org/agents/content-types/intents) (user's response to an actions message)
93
+ - `leave-request` – an incoming leave request from a member wanting to leave a group
89
94
  - `markdown` – an incoming [markdown-formatted](https://docs.xmtp.org/agents/content-types/markdown) text message
90
95
  - `message` – all messages that are not having a [custom content type](https://docs.xmtp.org/agents/content-types/content-types#custom-content-types)
91
- - `group-update` – an incoming [group update](https://docs.xmtp.org/agents/content-types/group-updates#listen-for-group-updates) (like name change, member update, etc.)
96
+ - `multi-attachment` – an incoming message with multiple [remote attachments](https://docs.xmtp.org/agents/content-types/attachments#how-remote-attachments-work)
92
97
  - `reaction` – an incoming [reaction message](https://docs.xmtp.org/agents/content-types/reactions)
93
98
  - `read-receipt` – an incoming [read receipt](https://docs.xmtp.org/chat-apps/content-types/read-receipts) notification
94
99
  - `reply` – an incoming [reply message](https://docs.xmtp.org/agents/content-types/replies)
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _xmtp_node_sdk from '@xmtp/node-sdk';
2
- import { Client, EncryptedAttachment, RemoteAttachment, Attachment, Conversation, Dm, Group, DecodedMessage, Reply, Reaction, ReadReceipt, TransactionReference, WalletSendCalls, Actions, GroupUpdated, Intent, LeaveRequest, MultiRemoteAttachment, EnrichedReply, ClientOptions, StreamOptions, HexString, CreateDmOptions, CreateGroupOptions, LogLevel, Identifier, Signer } from '@xmtp/node-sdk';
2
+ import { Client, EncryptedAttachment, RemoteAttachment, Attachment, Conversation, Dm, Group, DecodedMessage, Reply, Reaction, ReadReceipt, TransactionReference, WalletSendCalls, Actions, GroupUpdated, Intent, LeaveRequest, MultiRemoteAttachment, EnrichedReply, ClientOptions, NetworkOptions, StreamOptions, HexString, CreateDmOptions, CreateGroupOptions, LogLevel, Action, Identifier, Signer } from '@xmtp/node-sdk';
3
3
  export * from '@xmtp/node-sdk';
4
4
  import EventEmitter from 'node:events';
5
5
  import { ContentCodec } from '@xmtp/content-type-primitives';
@@ -144,6 +144,9 @@ type AgentOptions<ContentTypes> = {
144
144
  type AgentMessageHandler<ContentTypes = unknown> = (ctx: MessageContext<ContentTypes>) => Promise<void> | void;
145
145
  type AgentMiddleware<ContentTypes = unknown> = (ctx: MessageContext<unknown, ContentTypes>, next: () => Promise<void> | void) => Promise<void>;
146
146
  type AgentErrorMiddleware<ContentTypes = unknown> = (error: unknown, ctx: AgentErrorContext<ContentTypes>, next: (err?: unknown) => Promise<void> | void) => Promise<void> | void;
147
+ type AgentCreateOptions<ContentCodecs extends ContentCodec[] = []> = Omit<ClientOptions & NetworkOptions, "codecs"> & {
148
+ codecs?: ContentCodecs;
149
+ };
147
150
  type AgentStreamingOptions = Omit<StreamOptions, "onValue" | "onError">;
148
151
  type StreamAllMessagesOptions<ContentTypes> = Parameters<Client<ContentTypes>["conversations"]["streamAllMessages"]>[0];
149
152
  type AgentErrorRegistrar<ContentTypes> = {
@@ -152,12 +155,8 @@ type AgentErrorRegistrar<ContentTypes> = {
152
155
  declare class Agent<ContentTypes = unknown> extends EventEmitter<EventHandlerMap<ContentTypes>> {
153
156
  #private;
154
157
  constructor({ client }: AgentOptions<ContentTypes>);
155
- static create<ContentCodecs extends ContentCodec[] = []>(signer: Parameters<typeof Client.create>[0], options?: Omit<ClientOptions, "codecs"> & {
156
- codecs?: ContentCodecs;
157
- }): Promise<Agent<_xmtp_node_sdk.ExtractCodecContentTypes<ContentCodecs>>>;
158
- static createFromEnv<ContentCodecs extends ContentCodec[] = []>(options?: Omit<ClientOptions, "codecs"> & {
159
- codecs?: ContentCodecs;
160
- }): Promise<Agent<_xmtp_node_sdk.ExtractCodecContentTypes<ContentCodecs>>>;
158
+ static create<ContentCodecs extends ContentCodec[] = []>(signer: Parameters<typeof Client.create>[0], options?: AgentCreateOptions<ContentCodecs>): Promise<Agent<_xmtp_node_sdk.ExtractCodecContentTypes<ContentCodecs>>>;
159
+ static createFromEnv<ContentCodecs extends ContentCodec[] = []>(options?: AgentCreateOptions<ContentCodecs>): Promise<Agent<_xmtp_node_sdk.ExtractCodecContentTypes<ContentCodecs>>>;
161
160
  get libxmtpVersion(): string | undefined;
162
161
  use(...middleware: Array<AgentMiddleware<ContentTypes> | AgentMiddleware<ContentTypes>[]>): this;
163
162
  start(options?: AgentStreamingOptions): Promise<void>;
@@ -251,6 +250,52 @@ declare class PerformanceMonitor<ContentTypes = unknown> {
251
250
  middleware(): AgentMiddleware<ContentTypes>;
252
251
  }
253
252
 
253
+ type ActionWizardCompleteHandler<ContentTypes> = (answers: Record<string, string>, ctx: MessageContext<unknown, ContentTypes>) => Promise<void> | void;
254
+ type ActionWizardCancelHandler<ContentTypes> = (ctx: MessageContext<unknown, ContentTypes>) => Promise<void> | void;
255
+ type ActionWizardCancelOptions = {
256
+ /** Custom label for the cancel button (default: "Cancel") */
257
+ label?: string;
258
+ };
259
+ type ActionWizardOptions = {
260
+ /**
261
+ * When true, the wizard sends all steps via DM to the user.
262
+ * Recommended when the user is expected to enter sensitive information
263
+ * (e.g. API keys, passwords) to keep it out of group conversations.
264
+ */
265
+ dm?: boolean;
266
+ /** Enable a cancel button on each select step. Set to `true` for the default label, or pass options to customize. */
267
+ cancel?: boolean | ActionWizardCancelOptions;
268
+ };
269
+ /**
270
+ * Multi-step interactive wizard using XMTP actions and intents.
271
+ *
272
+ * Supports two step types:
273
+ * - **select** — presents action buttons, the user responds by clicking one (triggers an intent)
274
+ * - **text** — prompts the user for free-text input
275
+ *
276
+ * The wizard activates when a user sends `/{id}` (e.g. `/api-setup`).
277
+ * Sending the command again while a session is active restarts the wizard from the first step.
278
+ */
279
+ declare class ActionWizard<ContentTypes = unknown> {
280
+ #private;
281
+ constructor(id: string, options?: ActionWizardOptions);
282
+ static sessionKey(conversationId: string, senderInboxId: string): string;
283
+ static stepKey(wizardId: string, stepId: string): string;
284
+ select(id: string, options: {
285
+ description: string;
286
+ actions: Action[];
287
+ }): this;
288
+ text(id: string, options: {
289
+ description: string;
290
+ isMarkdown?: boolean;
291
+ }): this;
292
+ onComplete(handler: ActionWizardCompleteHandler<ContentTypes>): this;
293
+ onCancel(handler: ActionWizardCancelHandler<ContentTypes>): this;
294
+ start(ctx: MessageContext<unknown, ContentTypes>): Promise<void>;
295
+ isActive(conversationId: string, senderInboxId: string): boolean;
296
+ middleware(): AgentMiddleware<ContentTypes>;
297
+ }
298
+
254
299
  type User = {
255
300
  key: Hex;
256
301
  account: PrivateKeyAccount;
@@ -367,5 +412,5 @@ declare function getERC20Balance(options: GetERC20BalanceOptions): Promise<bigin
367
412
  */
368
413
  declare function getERC20Decimals(options: GetERC20DecimalsOptions): Promise<number>;
369
414
 
370
- export { Agent, AgentError, AgentStreamingError, ClientContext, CommandRouter, ConversationContext, MessageContext, PerformanceMonitor, createERC20TransferCalls, createIdentifier, createNameResolver, createNativeTransferCalls, createRemoteAttachment, createRemoteAttachmentFromFile, createSigner, createUser, downloadRemoteAttachment, erc20Abi, f, filter, getERC20Balance, getERC20Decimals, getInstallationInfo, getTestUrl, getValidLogLevels, logDetails, parseLogLevel };
371
- export type { AgentBaseContext, AgentErrorContext, AgentErrorMiddleware, AgentErrorRegistrar, AgentMessageHandler, AgentMiddleware, AgentOptions, AgentStreamingOptions, AttachmentUploadCallback, CommandRouterConfig, CreateERC20TransferCallsOptions, CreateNativeTransferCallsOptions, DecodedMessageWithContent, GetERC20BalanceOptions, GetERC20DecimalsOptions, HealthReport, MessageContextParams, PerformanceMonitorConfig, StreamAllMessagesOptions, User };
415
+ export { ActionWizard, Agent, AgentError, AgentStreamingError, ClientContext, CommandRouter, ConversationContext, MessageContext, PerformanceMonitor, createERC20TransferCalls, createIdentifier, createNameResolver, createNativeTransferCalls, createRemoteAttachment, createRemoteAttachmentFromFile, createSigner, createUser, downloadRemoteAttachment, erc20Abi, f, filter, getERC20Balance, getERC20Decimals, getInstallationInfo, getTestUrl, getValidLogLevels, logDetails, parseLogLevel };
416
+ export type { ActionWizardCancelOptions, ActionWizardOptions, AgentBaseContext, AgentCreateOptions, AgentErrorContext, AgentErrorMiddleware, AgentErrorRegistrar, AgentMessageHandler, AgentMiddleware, AgentOptions, AgentStreamingOptions, AttachmentUploadCallback, CommandRouterConfig, CreateERC20TransferCallsOptions, CreateNativeTransferCallsOptions, DecodedMessageWithContent, GetERC20BalanceOptions, GetERC20DecimalsOptions, HealthReport, MessageContextParams, PerformanceMonitorConfig, StreamAllMessagesOptions, User };
package/dist/index.js CHANGED
@@ -1,17 +1,19 @@
1
- import { Group, Dm, Client, encryptAttachment, decryptAttachment, isMarkdown, isText, isReply, isReaction, isReadReceipt, isRemoteAttachment, isTransactionReference, isWalletSendCalls, encodeMarkdown, encodeText, isHexString, ApiUrls, DecodedMessage, isMultiRemoteAttachment, isLeaveRequest, isGroupUpdated, isIntent, isAttachment, isActions } from '@xmtp/node-sdk';
1
+ import { Group, Dm, Client, encryptAttachment, decryptAttachment, isMarkdown, isText, isReply, isReaction, isReadReceipt, isRemoteAttachment, isTransactionReference, isWalletSendCalls, encodeMarkdown, encodeText, isHexString, isMultiRemoteAttachment, isLeaveRequest, isGroupUpdated, isIntent, isAttachment, isActions } from '@xmtp/node-sdk';
2
2
  export * from '@xmtp/node-sdk';
3
3
  import EventEmitter from 'node:events';
4
4
  import fs from 'node:fs';
5
5
  import path from 'node:path';
6
+ import { retry } from 'ts-retry-promise';
6
7
  import { contentTypesAreEqual } from '@xmtp/content-type-primitives';
7
8
  import { toBytes, createWalletClient, http, isAddress, encodeFunctionData, toHex, createPublicClient } from 'viem';
8
9
  import { generatePrivateKey, privateKeyToAccount } from 'viem/accounts';
9
10
  import { sepolia } from 'viem/chains';
10
11
  import { monitorEventLoopDelay, performance } from 'node:perf_hooks';
11
12
  import v8 from 'node:v8';
13
+ import { randomUUID } from 'node:crypto';
12
14
  import { escape } from 'node:querystring';
13
15
 
14
- const version = "2.2.0";
16
+ const version = "2.3.0";
15
17
 
16
18
  const fromSelf = (message, client) => {
17
19
  return message.senderInboxId === client.inboxId;
@@ -74,18 +76,18 @@ const parseLogLevel = (rawLevel) => {
74
76
  };
75
77
  const logDetails = async (agent) => {
76
78
  const xmtp = `\x1b[38;2;252;76;52m
77
- ██╗ ██╗███╗ ███╗████████╗██████╗
79
+ ██╗ ██╗███╗ ███╗████████╗██████╗
78
80
  ╚██╗██╔╝████╗ ████║╚══██╔══╝██╔══██╗
79
81
  ╚███╔╝ ██╔████╔██║ ██║ ██████╔╝
80
- ██╔██╗ ██║╚██╔╝██║ ██║ ██╔═══╝
81
- ██╔╝ ██╗██║ ╚═╝ ██║ ██║ ██║
82
- ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═╝
82
+ ██╔██╗ ██║╚██╔╝██║ ██║ ██╔═══╝
83
+ ██╔╝ ██╗██║ ╚═╝ ██║ ██║ ██║
84
+ ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═╝
83
85
  \x1b[0m`;
84
86
  const client = agent.client;
85
87
  const clientsByAddress = client.accountIdentifier?.identifier;
86
88
  const inboxId = client.inboxId;
87
89
  const installationId = client.installationId;
88
- const env = client.options?.env ?? "dev";
90
+ const env = client.env;
89
91
  const urls = [`http://xmtp.chat/${env}/dm/${clientsByAddress}`];
90
92
  const conversations = await client.conversations.list();
91
93
  const inboxState = await client.preferences.inboxState();
@@ -102,7 +104,7 @@ const logDetails = async (agent) => {
102
104
  }
103
105
  console.log(`
104
106
  ${xmtp}
105
-
107
+
106
108
  ✓ XMTP Client:
107
109
  • InboxId: ${inboxId}
108
110
  • LibXMTP Version: ${agent.libxmtpVersion}
@@ -123,13 +125,17 @@ const logDetails = async (agent) => {
123
125
  */
124
126
  const getTestUrl = (client) => {
125
127
  const address = client.accountIdentifier?.identifier;
126
- const env = client.options?.env ?? "dev";
128
+ const env = client.env;
127
129
  return `http://xmtp.chat/${env}/dm/${address}`;
128
130
  };
129
131
  const getInstallationInfo = async (client) => {
130
132
  const myInboxId = client.inboxId;
131
133
  const myInstallationId = client.installationId;
132
- const inboxStates = await Client.fetchInboxStates([myInboxId], client.options?.env, client.options?.gatewayHost);
134
+ const env = client.env;
135
+ const gatewayHost = client.options && "gatewayHost" in client.options
136
+ ? client.options.gatewayHost
137
+ : undefined;
138
+ const inboxStates = await Client.fetchInboxStates([myInboxId], env, gatewayHost);
133
139
  const installations = inboxStates.find((state) => state.inboxId === myInboxId)?.installations ||
134
140
  [];
135
141
  const sortedInstallations = [...installations].sort((a, b) => {
@@ -384,13 +390,19 @@ class Agent extends EventEmitter {
384
390
  return this.#errors;
385
391
  },
386
392
  });
387
- #defaultErrorHandler = (currentError) => {
393
+ #defaultErrorHandler = (currentError, _ctx, next) => {
388
394
  const emittedError = currentError instanceof Error
389
395
  ? currentError
390
396
  : new AgentError(9999, `Unhandled error caught by default error middleware.`, currentError);
391
397
  this.emit("unhandledError", emittedError);
398
+ if (currentError instanceof AgentStreamingError) {
399
+ void next();
400
+ }
392
401
  };
393
402
  #isLocked = false;
403
+ #isRestarting = false;
404
+ #stopped = false;
405
+ #streamOptions;
394
406
  constructor({ client }) {
395
407
  super();
396
408
  this.#client = client;
@@ -438,7 +450,16 @@ class Agent extends EventEmitter {
438
450
  ? XMTP_DB_ENCRYPTION_KEY
439
451
  : `0x${XMTP_DB_ENCRYPTION_KEY}`
440
452
  : undefined;
441
- if (XMTP_ENV && Object.keys(ApiUrls).includes(XMTP_ENV)) {
453
+ const validEnvs = [
454
+ "local",
455
+ "dev",
456
+ "production",
457
+ "testnet-staging",
458
+ "testnet-dev",
459
+ "testnet",
460
+ "mainnet",
461
+ ];
462
+ if (XMTP_ENV && validEnvs.includes(XMTP_ENV)) {
442
463
  initializedOptions.env = XMTP_ENV;
443
464
  }
444
465
  if (typeof XMTP_GATEWAY_HOST === "string") {
@@ -483,137 +504,154 @@ class Agent extends EventEmitter {
483
504
  }
484
505
  }
485
506
  /**
486
- * Closes all existing streams and restarts the streaming system.
507
+ * Closes all existing streams and restarts with exponential backoff.
487
508
  */
488
509
  async #handleStreamError(error) {
510
+ if (this.#isRestarting)
511
+ return;
512
+ this.#isRestarting = true;
489
513
  await this.#stopStreams();
490
514
  const recovered = await this.#runErrorChain(error, {
491
515
  client: this.#client,
492
516
  });
493
- if (recovered) {
517
+ if (recovered && !this.#stopped) {
518
+ await this.#retryStreams();
519
+ this.emit("start", new ClientContext({ client: this.#client }));
520
+ this.#isLocked = false;
521
+ }
522
+ else {
494
523
  this.#isLocked = false;
495
- queueMicrotask(() => this.start());
496
524
  }
525
+ this.#isRestarting = false;
526
+ }
527
+ async #retryStreams() {
528
+ return retry(async () => {
529
+ await this.#stopStreams();
530
+ await this.#setupStreams(this.#streamOptions);
531
+ }, {
532
+ retries: 10,
533
+ delay: 1000,
534
+ backoff: "EXPONENTIAL",
535
+ maxBackOff: 30_000,
536
+ timeout: "INFINITELY",
537
+ retryIf: () => !this.#stopped,
538
+ });
497
539
  }
498
- async start(options) {
499
- if (this.#isLocked || this.#conversationsStream || this.#messageStream)
500
- return;
501
- this.#isLocked = true;
502
- try {
503
- this.#conversationsStream = await this.#client.conversations.stream({
504
- ...options,
505
- onValue: async (conversation) => {
506
- try {
507
- if (!conversation) {
508
- return;
509
- }
510
- this.emit("conversation", new ConversationContext({
540
+ async #setupStreams(options) {
541
+ this.#conversationsStream = await this.#client.conversations.stream({
542
+ ...options,
543
+ onValue: async (conversation) => {
544
+ try {
545
+ if (!conversation) {
546
+ return;
547
+ }
548
+ this.emit("conversation", new ConversationContext({
549
+ conversation,
550
+ client: this.#client,
551
+ }));
552
+ if (conversation instanceof Group) {
553
+ this.emit("group", new ConversationContext({
511
554
  conversation,
512
555
  client: this.#client,
513
556
  }));
514
- if (conversation instanceof Group) {
515
- this.emit("group", new ConversationContext({
516
- conversation,
517
- client: this.#client,
518
- }));
519
- }
520
- else if (conversation instanceof Dm) {
521
- this.emit("dm", new ConversationContext({
522
- conversation,
523
- client: this.#client,
524
- }));
525
- }
526
557
  }
527
- catch (error) {
528
- const recovered = await this.#runErrorChain(new AgentError(1001, "Emitted value from conversation stream caused an error.", error), new ClientContext({ client: this.#client }));
529
- if (!recovered)
530
- await this.stop();
558
+ else if (conversation instanceof Dm) {
559
+ this.emit("dm", new ConversationContext({
560
+ conversation,
561
+ client: this.#client,
562
+ }));
531
563
  }
532
- },
533
- onError: async (error) => {
534
- const recovered = await this.#runErrorChain(new AgentStreamingError(1002, "Error occured during conversation streaming.", error), new ClientContext({ client: this.#client }));
564
+ }
565
+ catch (error) {
566
+ const recovered = await this.#runErrorChain(new AgentError(1001, "Emitted value from conversation stream caused an error.", error), new ClientContext({ client: this.#client }));
535
567
  if (!recovered)
536
568
  await this.stop();
537
- },
538
- });
539
- this.#messageStream = await this.#client.conversations.streamAllMessages({
540
- ...options,
541
- onValue: async (message) => {
542
- // this case should not happen,
543
- // but we must handle it for proper types
544
- if (!(message instanceof DecodedMessage)) {
545
- return;
546
- }
547
- try {
548
- switch (true) {
549
- case isActions(message):
550
- await this.#processMessage(message, "actions");
551
- break;
552
- case isAttachment(message):
553
- await this.#processMessage(message, "inline-attachment");
554
- break;
555
- case isIntent(message):
556
- await this.#processMessage(message, "intent");
557
- break;
558
- case isGroupUpdated(message):
559
- await this.#processMessage(message, "group-update");
560
- break;
561
- case isLeaveRequest(message):
562
- await this.#processMessage(message, "leave-request");
563
- break;
564
- case isMultiRemoteAttachment(message):
565
- await this.#processMessage(message, "multi-attachment");
566
- break;
567
- case isRemoteAttachment(message):
568
- await this.#processMessage(message, "attachment");
569
- break;
570
- case isReaction(message):
571
- await this.#processMessage(message, "reaction");
572
- break;
573
- case isReadReceipt(message):
574
- await this.#processMessage(message, "read-receipt");
575
- break;
576
- case isReply(message):
577
- await this.#processMessage(message, "reply");
578
- break;
579
- case isTransactionReference(message):
580
- await this.#processMessage(message, "transaction-reference");
581
- break;
582
- case isWalletSendCalls(message):
583
- await this.#processMessage(message, "wallet-send-calls");
584
- break;
585
- case isMarkdown(message):
586
- await this.#processMessage(message, "markdown");
587
- break;
588
- case isText(message):
589
- await this.#processMessage(message, "text");
590
- break;
591
- default:
592
- await this.#processMessage(message);
593
- break;
594
- }
595
- }
596
- catch (error) {
597
- const recovered = await this.#runErrorChain(error, {
598
- client: this.#client,
599
- });
600
- if (!recovered) {
601
- await this.stop();
602
- }
603
- this.#isLocked = false;
569
+ }
570
+ },
571
+ onError: async (error) => {
572
+ await this.#handleStreamError(new AgentStreamingError(1002, "Error occurred during conversation streaming.", error));
573
+ },
574
+ });
575
+ this.#messageStream = await this.#client.conversations.streamAllMessages({
576
+ ...options,
577
+ onValue: async (message) => {
578
+ try {
579
+ switch (true) {
580
+ case isActions(message):
581
+ await this.#processMessage(message, "actions");
582
+ break;
583
+ case isAttachment(message):
584
+ await this.#processMessage(message, "inline-attachment");
585
+ break;
586
+ case isIntent(message):
587
+ await this.#processMessage(message, "intent");
588
+ break;
589
+ case isGroupUpdated(message):
590
+ await this.#processMessage(message, "group-update");
591
+ break;
592
+ case isLeaveRequest(message):
593
+ await this.#processMessage(message, "leave-request");
594
+ break;
595
+ case isMultiRemoteAttachment(message):
596
+ await this.#processMessage(message, "multi-attachment");
597
+ break;
598
+ case isRemoteAttachment(message):
599
+ await this.#processMessage(message, "attachment");
600
+ break;
601
+ case isReaction(message):
602
+ await this.#processMessage(message, "reaction");
603
+ break;
604
+ case isReadReceipt(message):
605
+ await this.#processMessage(message, "read-receipt");
606
+ break;
607
+ case isReply(message):
608
+ await this.#processMessage(message, "reply");
609
+ break;
610
+ case isTransactionReference(message):
611
+ await this.#processMessage(message, "transaction-reference");
612
+ break;
613
+ case isWalletSendCalls(message):
614
+ await this.#processMessage(message, "wallet-send-calls");
615
+ break;
616
+ case isMarkdown(message):
617
+ await this.#processMessage(message, "markdown");
618
+ break;
619
+ case isText(message):
620
+ await this.#processMessage(message, "text");
621
+ break;
622
+ default:
623
+ await this.#processMessage(message);
624
+ break;
604
625
  }
605
- },
606
- onError: async (error) => {
607
- const recovered = await this.#runErrorChain(new AgentStreamingError(1004, "Error occured during message streaming.", error), new ClientContext({ client: this.#client }));
608
- if (!recovered)
626
+ }
627
+ catch (error) {
628
+ const recovered = await this.#runErrorChain(error, {
629
+ client: this.#client,
630
+ });
631
+ if (!recovered) {
609
632
  await this.stop();
610
- },
611
- });
633
+ }
634
+ this.#isLocked = false;
635
+ }
636
+ },
637
+ onError: async (error) => {
638
+ await this.#handleStreamError(new AgentStreamingError(1004, "Error occurred during message streaming.", error));
639
+ },
640
+ });
641
+ }
642
+ async start(options) {
643
+ if (this.#isLocked || this.#conversationsStream || this.#messageStream)
644
+ return;
645
+ this.#stopped = false;
646
+ this.#streamOptions = options;
647
+ this.#isLocked = true;
648
+ try {
649
+ await this.#setupStreams(options);
612
650
  this.emit("start", new ClientContext({ client: this.#client }));
613
651
  this.#isLocked = false;
614
652
  }
615
653
  catch (error) {
616
- await this.#handleStreamError(error);
654
+ await this.#handleStreamError(new AgentStreamingError(1005, "Error occurred during stream setup.", error));
617
655
  }
618
656
  }
619
657
  async #processMessage(message, topic = "unknownMessage") {
@@ -715,6 +753,7 @@ class Agent extends EventEmitter {
715
753
  return this.#errors;
716
754
  }
717
755
  async stop() {
756
+ this.#stopped = true;
718
757
  this.#isLocked = true;
719
758
  await this.#stopStreams();
720
759
  this.emit("stop", new ClientContext({ client: this.#client }));
@@ -961,6 +1000,170 @@ class PerformanceMonitor {
961
1000
  }
962
1001
  }
963
1002
 
1003
+ /** The cancel action ID is generated to guarantee no collision with user-defined action IDs */
1004
+ const CANCEL_ACTION_ID = randomUUID();
1005
+ /**
1006
+ * Multi-step interactive wizard using XMTP actions and intents.
1007
+ *
1008
+ * Supports two step types:
1009
+ * - **select** — presents action buttons, the user responds by clicking one (triggers an intent)
1010
+ * - **text** — prompts the user for free-text input
1011
+ *
1012
+ * The wizard activates when a user sends `/{id}` (e.g. `/api-setup`).
1013
+ * Sending the command again while a session is active restarts the wizard from the first step.
1014
+ */
1015
+ class ActionWizard {
1016
+ #id;
1017
+ #dm;
1018
+ #cancelLabel;
1019
+ #steps = [];
1020
+ #sessions = new Map();
1021
+ #completeHandler;
1022
+ #cancelHandler;
1023
+ constructor(id, options) {
1024
+ this.#id = id;
1025
+ this.#dm = options?.dm ?? false;
1026
+ if (options?.cancel) {
1027
+ this.#cancelLabel =
1028
+ typeof options.cancel === "object"
1029
+ ? (options.cancel.label ?? "Cancel")
1030
+ : "Cancel";
1031
+ }
1032
+ }
1033
+ static sessionKey(conversationId, senderInboxId) {
1034
+ return `${conversationId}:${senderInboxId}`;
1035
+ }
1036
+ static stepKey(wizardId, stepId) {
1037
+ return `${wizardId}:${stepId}`;
1038
+ }
1039
+ select(id, options) {
1040
+ this.#steps.push({
1041
+ type: "select",
1042
+ id,
1043
+ description: options.description,
1044
+ actions: options.actions,
1045
+ });
1046
+ return this;
1047
+ }
1048
+ text(id, options) {
1049
+ this.#steps.push({
1050
+ type: "text",
1051
+ id,
1052
+ description: options.description,
1053
+ isMarkdown: options.isMarkdown ?? false,
1054
+ });
1055
+ return this;
1056
+ }
1057
+ onComplete(handler) {
1058
+ this.#completeHandler = handler;
1059
+ return this;
1060
+ }
1061
+ onCancel(handler) {
1062
+ this.#cancelHandler = handler;
1063
+ return this;
1064
+ }
1065
+ async start(ctx) {
1066
+ const { senderInboxId } = ctx.message;
1067
+ const conversation = this.#dm
1068
+ ? await ctx.client.conversations.createDm(senderInboxId)
1069
+ : ctx.conversation;
1070
+ const key = ActionWizard.sessionKey(conversation.id, senderInboxId);
1071
+ this.#sessions.set(key, {
1072
+ currentStepIndex: 0,
1073
+ answers: {},
1074
+ conversation,
1075
+ });
1076
+ await this.#sendCurrentStep(key);
1077
+ }
1078
+ isActive(conversationId, senderInboxId) {
1079
+ return this.#sessions.has(ActionWizard.sessionKey(conversationId, senderInboxId));
1080
+ }
1081
+ async #sendCurrentStep(key) {
1082
+ const session = this.#sessions.get(key);
1083
+ if (!session)
1084
+ return;
1085
+ const step = this.#steps[session.currentStepIndex];
1086
+ if (!step)
1087
+ return;
1088
+ if (step.type === "select") {
1089
+ const stepActions = this.#cancelLabel
1090
+ ? [...step.actions, { id: CANCEL_ACTION_ID, label: this.#cancelLabel }]
1091
+ : step.actions;
1092
+ const actions = {
1093
+ id: ActionWizard.stepKey(this.#id, step.id),
1094
+ description: step.description,
1095
+ actions: stepActions,
1096
+ };
1097
+ await session.conversation.sendActions(actions);
1098
+ }
1099
+ else if (step.isMarkdown) {
1100
+ await session.conversation.sendMarkdown(step.description);
1101
+ }
1102
+ else {
1103
+ await session.conversation.sendText(step.description);
1104
+ }
1105
+ }
1106
+ async #handleCancel(key, ctx) {
1107
+ this.#sessions.delete(key);
1108
+ await this.#cancelHandler?.(ctx);
1109
+ }
1110
+ async #advance(key, ctx) {
1111
+ const session = this.#sessions.get(key);
1112
+ if (!session)
1113
+ return;
1114
+ session.currentStepIndex++;
1115
+ const isComplete = session.currentStepIndex >= this.#steps.length;
1116
+ if (isComplete) {
1117
+ const answers = { ...session.answers };
1118
+ this.#sessions.delete(key);
1119
+ await this.#completeHandler?.(answers, ctx);
1120
+ }
1121
+ else {
1122
+ await this.#sendCurrentStep(key);
1123
+ }
1124
+ }
1125
+ middleware() {
1126
+ return async (ctx, next) => {
1127
+ const key = ActionWizard.sessionKey(ctx.conversation.id, ctx.message.senderInboxId);
1128
+ if (isText(ctx.message) && ctx.message.content === `/${this.#id}`) {
1129
+ if (this.#sessions.has(key)) {
1130
+ await this.#handleCancel(key, ctx);
1131
+ }
1132
+ await this.start(ctx);
1133
+ return;
1134
+ }
1135
+ const session = this.#sessions.get(key);
1136
+ if (!session) {
1137
+ await next();
1138
+ return;
1139
+ }
1140
+ const step = this.#steps[session.currentStepIndex];
1141
+ if (!step) {
1142
+ await next();
1143
+ return;
1144
+ }
1145
+ if (isIntent(ctx.message) && ctx.message.content) {
1146
+ const { actionId } = ctx.message.content;
1147
+ if (this.#cancelLabel && actionId === CANCEL_ACTION_ID) {
1148
+ await this.#handleCancel(key, ctx);
1149
+ return;
1150
+ }
1151
+ if (step.type === "select") {
1152
+ session.answers[step.id] = actionId;
1153
+ await this.#advance(key, ctx);
1154
+ return;
1155
+ }
1156
+ }
1157
+ if (step.type === "text" && isText(ctx.message) && ctx.message.content) {
1158
+ session.answers[step.id] = ctx.message.content;
1159
+ await this.#advance(key, ctx);
1160
+ return;
1161
+ }
1162
+ await next();
1163
+ };
1164
+ }
1165
+ }
1166
+
964
1167
  class LimitedMap {
965
1168
  #map = new Map();
966
1169
  #limit;
@@ -1146,5 +1349,5 @@ async function getERC20Decimals(options) {
1146
1349
  });
1147
1350
  }
1148
1351
 
1149
- export { Agent, AgentError, AgentStreamingError, ClientContext, CommandRouter, ConversationContext, MessageContext, PerformanceMonitor, createERC20TransferCalls, createIdentifier, createNameResolver, createNativeTransferCalls, createRemoteAttachment, createRemoteAttachmentFromFile, createSigner, createUser, downloadRemoteAttachment, erc20Abi, f, filter, getERC20Balance, getERC20Decimals, getInstallationInfo, getTestUrl, getValidLogLevels, logDetails, parseLogLevel };
1352
+ export { ActionWizard, Agent, AgentError, AgentStreamingError, ClientContext, CommandRouter, ConversationContext, MessageContext, PerformanceMonitor, createERC20TransferCalls, createIdentifier, createNameResolver, createNativeTransferCalls, createRemoteAttachment, createRemoteAttachmentFromFile, createSigner, createUser, downloadRemoteAttachment, erc20Abi, f, filter, getERC20Balance, getERC20Decimals, getInstallationInfo, getTestUrl, getValidLogLevels, logDetails, parseLogLevel };
1150
1353
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/core/filter.ts","../src/debug/log.ts","../src/user/User.ts","../src/core/AgentError.ts","../src/core/ClientContext.ts","../src/util/AttachmentUtil.ts","../src/core/ConversationContext.ts","../src/core/MessageContext.ts","../src/core/Agent.ts","../src/middleware/CommandRouter.ts","../src/middleware/PerformanceMonitor.ts","../src/util/LimitedMap.ts","../src/user/NameResolver.ts","../src/util/TransactionUtil.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["appVersion"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../src/core/filter.ts","../src/debug/log.ts","../src/user/User.ts","../src/core/AgentError.ts","../src/core/ClientContext.ts","../src/util/AttachmentUtil.ts","../src/core/ConversationContext.ts","../src/core/MessageContext.ts","../src/core/Agent.ts","../src/middleware/CommandRouter.ts","../src/middleware/PerformanceMonitor.ts","../src/middleware/ActionWizard.ts","../src/util/LimitedMap.ts","../src/user/NameResolver.ts","../src/util/TransactionUtil.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["appVersion"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xmtp/agent-sdk",
3
- "version": "2.2.0",
3
+ "version": "2.3.0",
4
4
  "description": "XMTP Agent SDK for interacting with XMTP networks",
5
5
  "keywords": [
6
6
  "agents",
@@ -55,7 +55,9 @@
55
55
  "build": "yarn clean:dist && rollup -c",
56
56
  "clean": "rm -rf .turbo && rm -rf node_modules && yarn clean:dist",
57
57
  "clean:dist": "rm -rf dist",
58
+ "demo:actions": "tsx watch src/demo/actions.ts",
58
59
  "demo:main": "tsx watch src/demo/main.ts",
60
+ "demo:reconnect": "XMTP_FORCE_DEBUG_LEVEL=Error tsx src/demo/reconnect.ts",
59
61
  "demo:transactions": "tsx watch src/demo/transactions.ts",
60
62
  "fix": "npx prettier --log-level error -w . && npx eslint . --fix",
61
63
  "gen:keys": "tsx src/bin/generateKeys.ts",
@@ -66,7 +68,8 @@
66
68
  },
67
69
  "dependencies": {
68
70
  "@xmtp/content-type-primitives": "3.0.1",
69
- "@xmtp/node-sdk": "5.3.0",
71
+ "@xmtp/node-sdk": "6.0.0",
72
+ "ts-retry-promise": "^0.8.1",
70
73
  "viem": "^2.37.6"
71
74
  },
72
75
  "devDependencies": {
@@ -74,7 +77,7 @@
74
77
  "@rollup/plugin-typescript": "^12.3.0",
75
78
  "@types/node": "^24.10.9",
76
79
  "@vitest/coverage-v8": "^4.0.18",
77
- "rollup": "^4.56.0",
80
+ "rollup": "^4.59.0",
78
81
  "rollup-plugin-dts": "^6.3.0",
79
82
  "rollup-plugin-tsconfig-paths": "^1.5.2",
80
83
  "tsx": "^4.21.0",