@towns-labs/agent 2.0.13 → 2.1.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.
Files changed (43) hide show
  1. package/dist/agent.d.ts +14 -4
  2. package/dist/agent.d.ts.map +1 -1
  3. package/dist/agent.js +87 -27
  4. package/dist/agent.js.map +1 -1
  5. package/dist/agent.test.js +64 -10
  6. package/dist/agent.test.js.map +1 -1
  7. package/dist/index.d.ts +2 -3
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +2 -3
  10. package/dist/index.js.map +1 -1
  11. package/dist/modules/eventDedup.d.ts.map +1 -0
  12. package/dist/modules/eventDedup.js.map +1 -0
  13. package/dist/modules/eventDedup.test.d.ts.map +1 -0
  14. package/dist/modules/eventDedup.test.js.map +1 -0
  15. package/dist/modules/interaction-api.d.ts.map +1 -0
  16. package/dist/modules/interaction-api.js.map +1 -0
  17. package/dist/{payments.d.ts → modules/payments.d.ts} +1 -1
  18. package/dist/modules/payments.d.ts.map +1 -0
  19. package/dist/modules/payments.js.map +1 -0
  20. package/dist/modules/user.d.ts +17 -0
  21. package/dist/modules/user.d.ts.map +1 -0
  22. package/dist/modules/user.js +54 -0
  23. package/dist/modules/user.js.map +1 -0
  24. package/package.json +10 -10
  25. package/dist/eventDedup.d.ts.map +0 -1
  26. package/dist/eventDedup.js.map +0 -1
  27. package/dist/eventDedup.test.d.ts.map +0 -1
  28. package/dist/eventDedup.test.js.map +0 -1
  29. package/dist/interaction-api.d.ts.map +0 -1
  30. package/dist/interaction-api.js.map +0 -1
  31. package/dist/payments.d.ts.map +0 -1
  32. package/dist/payments.js.map +0 -1
  33. package/dist/smart-account.d.ts +0 -54
  34. package/dist/smart-account.d.ts.map +0 -1
  35. package/dist/smart-account.js +0 -132
  36. package/dist/smart-account.js.map +0 -1
  37. /package/dist/{eventDedup.d.ts → modules/eventDedup.d.ts} +0 -0
  38. /package/dist/{eventDedup.js → modules/eventDedup.js} +0 -0
  39. /package/dist/{eventDedup.test.d.ts → modules/eventDedup.test.d.ts} +0 -0
  40. /package/dist/{eventDedup.test.js → modules/eventDedup.test.js} +0 -0
  41. /package/dist/{interaction-api.d.ts → modules/interaction-api.d.ts} +0 -0
  42. /package/dist/{interaction-api.js → modules/interaction-api.js} +0 -0
  43. /package/dist/{payments.js → modules/payments.js} +0 -0
package/dist/agent.d.ts CHANGED
@@ -3,9 +3,11 @@ import type { StandardSchemaV1, StandardJSONSchemaV1 } from '@standard-schema/sp
3
3
  import { type ClientV2, type ParsedEvent, type CreateTownsClientParams } from '@towns-labs/sdk';
4
4
  import { Hono } from 'hono';
5
5
  import { ChannelMessage, Tags, InteractionRequestPayload, InteractionResponsePayload, StreamEvent } from '@towns-labs/proto';
6
- import type { ChannelMessage_Post_Mention, PlainMessage, SlashCommand, BlockchainTransaction, AppMetadata, ConversationSeed, Proposal } from '@towns-labs/proto';
7
- import { type EventDedupConfig } from './eventDedup';
8
- import { type FlattenedInteractionRequest } from './interaction-api';
6
+ import type { ChannelMessage_Post_Mention, PlainMessage, SlashCommand, BlockchainTransaction, AppMetadata, ConversationSeed, Proposal, PositionsResponse } from '@towns-labs/proto';
7
+ import { type EventDedupConfig } from './modules/eventDedup';
8
+ import { type UserInfo } from './modules/user';
9
+ export type { UserInfo } from './modules/user';
10
+ import { type FlattenedInteractionRequest } from './modules/interaction-api';
9
11
  import type { FacilitatorConfig, RouteConfig } from 'x402/types';
10
12
  import { type Chain, type Transport, type Address, type Account, type WalletClient, type TransactionReceipt } from 'viem';
11
13
  import type { AgentIdentityConfig, AgentIdentityMetadata } from './identity-types';
@@ -269,6 +271,8 @@ export type BasePayload = {
269
271
  isDm: boolean;
270
272
  /** Convenience flag to check if the event triggered on a GDM channel */
271
273
  isGdm: boolean;
274
+ /** Resolved user info from the app registry (display name, username) */
275
+ user: UserInfo;
272
276
  };
273
277
  export declare class Agent<Commands extends AgentCommand[] = [], Capabilities extends AgentCapability[] = []> {
274
278
  readonly client: ClientV2<AgentActions>;
@@ -283,13 +287,17 @@ export declare class Agent<Commands extends AgentCommand[] = [], Capabilities ex
283
287
  private readonly commands;
284
288
  private readonly capabilities;
285
289
  private readonly capabilityHandlers;
290
+ private positionsHandler?;
286
291
  metadata: PlainMessage<AppMetadata>;
287
292
  private readonly identityConfig?;
288
293
  private readonly eventDedup;
289
294
  private readonly paymentConfig?;
290
295
  private readonly pendingPayments;
291
296
  private readonly paymentCommands;
297
+ private readonly userInfoCache;
292
298
  constructor(clientV2: ClientV2<AgentActions>, viem: WalletClient<Transport, Chain, Account>, jwtSecretBase64: string, appAddress: Address, commands?: Commands, capabilities?: Capabilities, identityConfig?: AgentIdentityConfig, dedupConfig?: EventDedupConfig, paymentConfig?: FacilitatorConfig, metadata?: PlainMessage<AppMetadata>);
299
+ getUser(userId: Address): Promise<UserInfo | undefined>;
300
+ getUser(userIds: Address[]): Promise<Map<Address, UserInfo | undefined>>;
293
301
  start(): Hono<import("hono/types").BlankEnv, import("hono/types").BlankSchema, "/">;
294
302
  private jwtMiddleware;
295
303
  private webhookHandler;
@@ -480,6 +488,9 @@ export declare class Agent<Commands extends AgentCommand[] = [], Capabilities ex
480
488
  context: string | undefined;
481
489
  timeoutMs: number | undefined;
482
490
  }) => ProposalResult[] | Promise<ProposalResult[]>): () => void;
491
+ onPositions(handler: (handler: AgentActions, event: {
492
+ userId: string;
493
+ }) => Promise<PlainMessage<PositionsResponse>> | PlainMessage<PositionsResponse>): () => void;
483
494
  /**
484
495
  * Triggered when someone sends a GM (generic message) with type validation using StandardSchema
485
496
  * @param typeUrl - The type URL to listen for
@@ -618,5 +629,4 @@ declare const buildAgentActions: (client: ClientV2, viem: WalletClient<Transport
618
629
  envelope: import("@towns-labs/proto").Envelope;
619
630
  }>;
620
631
  };
621
- export {};
622
632
  //# sourceMappingURL=agent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
package/dist/agent.js CHANGED
@@ -13,9 +13,10 @@ import imageSize from 'image-size';
13
13
  import { ChannelMessageSchema, AppServiceRequestSchema, AppServiceResponseSchema, MembershipOp, MessageInteractionType, ChannelMessage_Post_Content_ImageSchema, ChannelMessage_Post_Content_Image_InfoSchema, ChannelMessage_Post_Content_InfoCardSchema, ChannelMessage_Post_Content_InfoCard_LabelSchema, ChannelMessage_Post_Content_InfoCard_FieldSchema, ChannelMessage_Post_Content_InfoCard_UserRefSchema, ChannelMessage_Post_Content_InfoCard_TokenAmountSchema, ChannelMessage_Post_Content_InfoCard_ContractRefSchema, ChannelMessage_Post_Content_InfoCard_MarketItemSchema, ChannelMessage_Post_Content_InfoCard_Label_Icon, ChannelMessage_Post_Content_InfoCard_Label_Badge_Variant, ChunkedMediaSchema, CreationCookieSchema, SessionKeysSchema, BlockchainTransactionSchema, InteractionRequestPayloadSchema, InteractionResponsePayloadSchema, ChannelMessage_Post_AttachmentSchema, ChannelMessage_Post_MentionSchema, } from '@towns-labs/proto';
14
14
  import { bin_equal, bin_fromBase64, bin_fromHexString, bin_toHexString, check, dlog, } from '@towns-labs/utils';
15
15
  import { encryptChunkedAESGCM } from '@towns-labs/sdk-crypto';
16
- import { EventDedup } from './eventDedup';
17
- import { isFlattenedRequest, flattenedToPayloadContent, } from './interaction-api';
18
- import { chainIdToNetwork, createPaymentRequest } from './payments';
16
+ import { EventDedup } from './modules/eventDedup';
17
+ import { UserInfoCache, getUserBulk } from './modules/user';
18
+ import { isFlattenedRequest, flattenedToPayloadContent, } from './modules/interaction-api';
19
+ import { chainIdToNetwork, createPaymentRequest } from './modules/payments';
19
20
  import { useFacilitator } from 'x402/verify';
20
21
  import { http, createWalletClient, encodeAbiParameters, zeroAddress, parseEventLogs, formatUnits, erc20Abi, } from 'viem';
21
22
  import { readContract, waitForTransactionReceipt, writeContract } from 'viem/actions';
@@ -23,7 +24,6 @@ import { base, baseSepolia, foundry } from 'viem/chains';
23
24
  import packageJson from '../package.json' with { type: 'json' };
24
25
  import { privateKeyToAccount } from 'viem/accounts';
25
26
  import appRegistryAbi from '@towns-labs/generated/dev/abis/IAppRegistry.abi';
26
- import { getSmartAccountFromUserIdImpl } from './smart-account';
27
27
  import { EmptySchema, TimestampSchema } from '@bufbuild/protobuf/wkt';
28
28
  const debug = dlog('csb:agent');
29
29
  export class Agent {
@@ -39,6 +39,7 @@ export class Agent {
39
39
  commands;
40
40
  capabilities;
41
41
  capabilityHandlers = new Map();
42
+ positionsHandler;
42
43
  metadata;
43
44
  identityConfig;
44
45
  eventDedup;
@@ -46,6 +47,8 @@ export class Agent {
46
47
  paymentConfig;
47
48
  pendingPayments = new Map();
48
49
  paymentCommands = new Map();
50
+ // User info cache
51
+ userInfoCache = new UserInfoCache();
49
52
  constructor(clientV2, viem, jwtSecretBase64, appAddress, commands, capabilities, identityConfig, dedupConfig, paymentConfig, metadata = {}) {
50
53
  this.client = clientV2;
51
54
  this.agentUserId = clientV2.userId;
@@ -68,6 +71,13 @@ export class Agent {
68
71
  }
69
72
  this.onInteractionResponse(this.handlePaymentResponse.bind(this));
70
73
  }
74
+ async getUser(userIdOrIds) {
75
+ if (Array.isArray(userIdOrIds)) {
76
+ return getUserBulk(userIdOrIds, this.userInfoCache, () => this.client.appServiceClient());
77
+ }
78
+ const result = await getUserBulk([userIdOrIds], this.userInfoCache, () => this.client.appServiceClient());
79
+ return result.get(userIdOrIds);
80
+ }
71
81
  start() {
72
82
  const jwtMiddleware = createMiddleware(this.jwtMiddleware.bind(this));
73
83
  const handler = this.webhookHandler.bind(this);
@@ -207,6 +217,32 @@ export class Agent {
207
217
  },
208
218
  });
209
219
  }
220
+ else if (request.payload.case === 'positions') {
221
+ const positionsRequest = request.payload.value;
222
+ if (this.positionsHandler) {
223
+ const result = await this.positionsHandler(this.client, {
224
+ userId: bin_toHexString(positionsRequest.userId),
225
+ });
226
+ response = create(AppServiceResponseSchema, {
227
+ payload: {
228
+ case: 'positions',
229
+ value: result,
230
+ },
231
+ });
232
+ }
233
+ else {
234
+ response = create(AppServiceResponseSchema, {
235
+ payload: {
236
+ case: 'positions',
237
+ value: {
238
+ supported: false,
239
+ positions: [],
240
+ timestamp: BigInt(Date.now()),
241
+ },
242
+ },
243
+ });
244
+ }
245
+ }
210
246
  c.header('Content-Type', 'application/x-protobuf');
211
247
  return c.body(toBinary(AppServiceResponseSchema, response), 200);
212
248
  }
@@ -244,13 +280,19 @@ export class Agent {
244
280
  }
245
281
  const createdAt = new Date(Number(parsed.event.createdAtEpochMs));
246
282
  this.currentMessageTags = parsed.event.tags;
283
+ const creatorUserId = userIdFromAddress(parsed.event.creatorAddress);
284
+ const creatorUser = (await this.getUser(creatorUserId)) ?? {
285
+ id: creatorUserId,
286
+ displayName: '',
287
+ username: '',
288
+ };
247
289
  debug('emit:streamEvent', {
248
- userId: userIdFromAddress(parsed.event.creatorAddress),
290
+ userId: creatorUserId,
249
291
  channelId: streamId,
250
292
  eventId: parsed.hashStr,
251
293
  });
252
294
  this.emitter.emit('streamEvent', this.client, {
253
- ...createBasePayload(userIdFromAddress(parsed.event.creatorAddress), streamId, parsed.hashStr, createdAt, parsed.event),
295
+ ...createBasePayload(creatorUserId, streamId, parsed.hashStr, createdAt, parsed.event, creatorUser),
254
296
  parsed: parsed,
255
297
  });
256
298
  switch (parsed.event.payload.case) {
@@ -266,7 +308,7 @@ export class Agent {
266
308
  else {
267
309
  channelMessage = fromBinary(ChannelMessageSchema, eventCleartext);
268
310
  }
269
- await this.handleChannelMessage(streamId, parsed, channelMessage);
311
+ await this.handleChannelMessage(streamId, parsed, channelMessage, creatorUser);
270
312
  }
271
313
  else if (parsed.event.payload.value.content.case === 'redaction') {
272
314
  const refEventId = bin_toHexString(parsed.event.payload.value.content.value.eventId);
@@ -276,7 +318,7 @@ export class Agent {
276
318
  refEventId,
277
319
  });
278
320
  this.emitter.emit('eventRevoke', this.client, {
279
- ...createBasePayload(userIdFromAddress(parsed.event.creatorAddress), streamId, parsed.hashStr, createdAt, parsed.event),
321
+ ...createBasePayload(creatorUserId, streamId, parsed.hashStr, createdAt, parsed.event, creatorUser),
280
322
  refEventId,
281
323
  });
282
324
  }
@@ -307,7 +349,7 @@ export class Agent {
307
349
  const decrypted = bin_fromBase64(decryptedBase64);
308
350
  const response = fromBinary(InteractionResponsePayloadSchema, decrypted);
309
351
  this.emitter.emit('interactionResponse', this.client, {
310
- ...createBasePayload(userIdFromAddress(parsed.event.creatorAddress), streamId, parsed.hashStr, createdAt, parsed.event),
352
+ ...createBasePayload(creatorUserId, streamId, parsed.hashStr, createdAt, parsed.event, creatorUser),
311
353
  response: {
312
354
  recipient: payload.recipient,
313
355
  payload: response,
@@ -331,24 +373,30 @@ export class Agent {
331
373
  // TODO: do we want agent to listen to onSpaceJoin/onSpaceLeave?
332
374
  if (!isGdm)
333
375
  continue;
376
+ const memberUserId = userIdFromAddress(membership.userAddress);
377
+ const memberUser = (await this.getUser(memberUserId)) ?? {
378
+ id: memberUserId,
379
+ displayName: '',
380
+ username: '',
381
+ };
334
382
  if (membership.op === MembershipOp.SO_JOIN) {
335
383
  debug('emit:channelJoin', {
336
- userId: userIdFromAddress(membership.userAddress),
384
+ userId: memberUserId,
337
385
  channelId: streamId,
338
386
  eventId: parsed.hashStr,
339
387
  });
340
388
  this.emitter.emit('channelJoin', this.client, {
341
- ...createBasePayload(userIdFromAddress(membership.userAddress), streamId, parsed.hashStr, createdAt, parsed.event),
389
+ ...createBasePayload(memberUserId, streamId, parsed.hashStr, createdAt, parsed.event, memberUser),
342
390
  });
343
391
  }
344
392
  if (membership.op === MembershipOp.SO_LEAVE) {
345
393
  debug('emit:channelLeave', {
346
- userId: userIdFromAddress(membership.userAddress),
394
+ userId: memberUserId,
347
395
  channelId: streamId,
348
396
  eventId: parsed.hashStr,
349
397
  });
350
398
  this.emitter.emit('channelLeave', this.client, {
351
- ...createBasePayload(userIdFromAddress(membership.userAddress), streamId, parsed.hashStr, createdAt, parsed.event),
399
+ ...createBasePayload(memberUserId, streamId, parsed.hashStr, createdAt, parsed.event, memberUser),
352
400
  });
353
401
  }
354
402
  }
@@ -383,8 +431,13 @@ export class Agent {
383
431
  currency,
384
432
  messageId: bin_toHexString(tipEvent.messageId),
385
433
  });
434
+ const tipUser = (await this.getUser(senderUserId)) ?? {
435
+ id: senderUserId,
436
+ displayName: '',
437
+ username: '',
438
+ };
386
439
  this.emitter.emit('tip', this.client, {
387
- ...createBasePayload(senderUserId, streamId, parsed.hashStr, createdAt, parsed.event),
440
+ ...createBasePayload(senderUserId, streamId, parsed.hashStr, createdAt, parsed.event, tipUser),
388
441
  amount: tipEvent.amount,
389
442
  currency: currency,
390
443
  senderAddress,
@@ -502,7 +555,7 @@ export class Agent {
502
555
  }));
503
556
  }
504
557
  }
505
- async handleChannelMessage(streamId, parsed, { payload }) {
558
+ async handleChannelMessage(streamId, parsed, { payload }, user) {
506
559
  if (!payload.case) {
507
560
  return;
508
561
  }
@@ -516,7 +569,7 @@ export class Agent {
516
569
  const mentions = parseMentions(payload.value.content.value.mentions);
517
570
  const isMentioned = mentions.some((m) => m.userId.toLowerCase() === this.agentUserId.toLowerCase());
518
571
  const forwardPayload = {
519
- ...createBasePayload(userId, streamId, parsed.hashStr, createdAt, parsed.event),
572
+ ...createBasePayload(userId, streamId, parsed.hashStr, createdAt, parsed.event, user),
520
573
  message: payload.value.content.value.body,
521
574
  mentions,
522
575
  isMentioned,
@@ -547,7 +600,7 @@ export class Agent {
547
600
  const gmContent = payload.value.content.value;
548
601
  const { typeUrl, value } = gmContent;
549
602
  this.emitter.emit('rawGmMessage', this.client, {
550
- ...createBasePayload(userId, streamId, parsed.hashStr, createdAt, parsed.event),
603
+ ...createBasePayload(userId, streamId, parsed.hashStr, createdAt, parsed.event, user),
551
604
  typeUrl,
552
605
  message: value ?? new Uint8Array(),
553
606
  });
@@ -563,7 +616,7 @@ export class Agent {
563
616
  else {
564
617
  debug('emit:gmMessage', { userId, channelId: streamId });
565
618
  void typedHandler.handler(this.client, {
566
- ...createBasePayload(userId, streamId, parsed.hashStr, createdAt, parsed.event),
619
+ ...createBasePayload(userId, streamId, parsed.hashStr, createdAt, parsed.event, user),
567
620
  typeUrl,
568
621
  data: result.value,
569
622
  });
@@ -586,7 +639,7 @@ export class Agent {
586
639
  return;
587
640
  }
588
641
  this.emitter.emit('conversationSeedResponse', this.client, {
589
- ...createBasePayload(userId, streamId, parsed.hashStr, createdAt, parsed.event),
642
+ ...createBasePayload(userId, streamId, parsed.hashStr, createdAt, parsed.event, user),
590
643
  seedId: seedResponse.seedId,
591
644
  seed: seedResponse.seed,
592
645
  response: seedResponse.response,
@@ -604,7 +657,7 @@ export class Agent {
604
657
  messageId: payload.value.refEventId,
605
658
  });
606
659
  this.emitter.emit('reaction', this.client, {
607
- ...createBasePayload(userIdFromAddress(parsed.event.creatorAddress), streamId, parsed.hashStr, createdAt, parsed.event),
660
+ ...createBasePayload(userIdFromAddress(parsed.event.creatorAddress), streamId, parsed.hashStr, createdAt, parsed.event, user),
608
661
  reaction: payload.value.reaction,
609
662
  messageId: payload.value.refEventId,
610
663
  });
@@ -624,7 +677,7 @@ export class Agent {
624
677
  isMentioned,
625
678
  });
626
679
  this.emitter.emit('messageEdit', this.client, {
627
- ...createBasePayload(userIdFromAddress(parsed.event.creatorAddress), streamId, parsed.hashStr, createdAt, parsed.event),
680
+ ...createBasePayload(userIdFromAddress(parsed.event.creatorAddress), streamId, parsed.hashStr, createdAt, parsed.event, user),
628
681
  refEventId: payload.value.refEventId,
629
682
  message: payload.value.post?.content.value.body,
630
683
  mentions,
@@ -641,7 +694,7 @@ export class Agent {
641
694
  refEventId: payload.value.refEventId,
642
695
  });
643
696
  this.emitter.emit('redaction', this.client, {
644
- ...createBasePayload(userIdFromAddress(parsed.event.creatorAddress), streamId, parsed.hashStr, createdAt, parsed.event),
697
+ ...createBasePayload(userIdFromAddress(parsed.event.creatorAddress), streamId, parsed.hashStr, createdAt, parsed.event, user),
645
698
  refEventId: payload.value.refEventId,
646
699
  });
647
700
  break;
@@ -962,8 +1015,7 @@ export class Agent {
962
1015
  this.slashCommandHandlers.set(command, async (handler, event) => {
963
1016
  try {
964
1017
  const chainId = this.viem.chain.id;
965
- const smartAccountAddress = await getSmartAccountFromUserIdImpl(this.client.config.base.chainConfig.addresses.spaceFactory, this.viem, event.userId);
966
- const { signatureId, params, eventId } = await createPaymentRequest(handler, event, chainId, smartAccountAddress, this.appAddress, paymentConfig, command);
1018
+ const { signatureId, params, eventId } = await createPaymentRequest(handler, event, chainId, event.userId, this.appAddress, paymentConfig, command);
967
1019
  // Store pending payment
968
1020
  this.pendingPayments.set(signatureId, {
969
1021
  command: command,
@@ -996,6 +1048,14 @@ export class Agent {
996
1048
  }
997
1049
  };
998
1050
  }
1051
+ onPositions(handler) {
1052
+ this.positionsHandler = handler;
1053
+ return () => {
1054
+ if (this.positionsHandler === handler) {
1055
+ this.positionsHandler = undefined;
1056
+ }
1057
+ };
1058
+ }
999
1059
  /**
1000
1060
  * Triggered when someone sends a GM (generic message) with type validation using StandardSchema
1001
1061
  * @param typeUrl - The type URL to listen for
@@ -1978,10 +2038,9 @@ const buildAgentActions = (client, viem, appAddress) => {
1978
2038
  * @returns The transaction hash and event ID
1979
2039
  */
1980
2040
  const sendTip = async (params, tags) => {
1981
- const smartAccountAddress = await getSmartAccountFromUserIdImpl(client.config.base.chainConfig.addresses.spaceFactory, viem, params.userId);
1982
2041
  return sendTipImpl({
1983
2042
  ...params,
1984
- receiver: smartAccountAddress ?? params.userId,
2043
+ receiver: params.userId,
1985
2044
  receiverUserId: params.userId,
1986
2045
  }, tags);
1987
2046
  };
@@ -2069,7 +2128,7 @@ const processMentions = (mentions) => {
2069
2128
  }
2070
2129
  });
2071
2130
  };
2072
- const createBasePayload = (userId, streamId, eventId, createdAt, event) => {
2131
+ const createBasePayload = (userId, streamId, eventId, createdAt, event, user) => {
2073
2132
  const isGdm = isGDMChannelStreamId(streamId);
2074
2133
  const isDm = false;
2075
2134
  return {
@@ -2080,6 +2139,7 @@ const createBasePayload = (userId, streamId, eventId, createdAt, event) => {
2080
2139
  event,
2081
2140
  isDm,
2082
2141
  isGdm,
2142
+ user,
2083
2143
  };
2084
2144
  };
2085
2145
  //# sourceMappingURL=agent.js.map