@clawnch/clawtomaton 0.4.0 → 0.4.1

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.ts CHANGED
@@ -37,6 +37,6 @@ export { SelfModAuditor } from './self-mod/index.js';
37
37
  export type { ClawtomatonIdentity, SurvivalTier, SurvivalState, AgentContext, ConversationTurn, ToolCall, ToolResult, SkillDefinition, SkillParameter, HeartbeatTask, ClawtomatonConfig, ActivationResult, } from './types.js';
38
38
  export { SURVIVAL_THRESHOLDS, CLAWTOMATON_ACTIVATION_COST, CLAWNCH_TOKEN_ADDRESS, CLAWNCH_BURN_ADDRESS, } from './types.js';
39
39
  export { XmtpClient } from './xmtp/client.js';
40
- export type { XmtpConfig, XmtpMessage, XmtpConversationInfo } from './xmtp/types.js';
40
+ export type { XmtpConfig, XmtpMessage, XmtpMessageType, XmtpConversationInfo, XmtpTransactionRef } from './xmtp/types.js';
41
41
  export { BUNKER_TOKEN_ADDRESS, BUNKER_API_URL, BUNKER_DOCKER_IMAGE, BUNKER_EXPIRY_WARN_HOURS, BUNKER_DEFAULT_DURATION_HOURS, } from './constants.js';
42
42
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAGtD,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC/E,YAAY,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAGtF,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,YAAY,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAGnD,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAG3F,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,UAAU,EACV,WAAW,EACX,aAAa,EACb,WAAW,EACX,WAAW,EACX,SAAS,GACV,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAGjD,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACvE,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGzF,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGvD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,4BAA4B,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AACzJ,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACxH,YAAY,EACV,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,oBAAoB,EACpB,GAAG,EACH,OAAO,EACP,UAAU,EACV,SAAS,EACT,QAAQ,EACR,KAAK,EACL,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACnF,YAAY,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAGpE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD,YAAY,EACV,mBAAmB,EACnB,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,QAAQ,EACR,UAAU,EACV,eAAe,EACf,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAC3B,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAGrF,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,mBAAmB,EACnB,wBAAwB,EACxB,6BAA6B,GAC9B,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAGtD,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC/E,YAAY,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAGtF,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,YAAY,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAGnD,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAG3F,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,UAAU,EACV,WAAW,EACX,aAAa,EACb,WAAW,EACX,WAAW,EACX,SAAS,GACV,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAGjD,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACvE,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGzF,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGvD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,4BAA4B,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AACzJ,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACxH,YAAY,EACV,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,oBAAoB,EACpB,GAAG,EACH,OAAO,EACP,UAAU,EACV,SAAS,EACT,QAAQ,EACR,KAAK,EACL,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACnF,YAAY,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAGpE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD,YAAY,EACV,mBAAmB,EACnB,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,QAAQ,EACR,UAAU,EACV,eAAe,EACf,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAC3B,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAG1H,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,mBAAmB,EACnB,wBAAwB,EACxB,6BAA6B,GAC9B,MAAM,gBAAgB,CAAC"}
@@ -1,17 +1,23 @@
1
1
  /**
2
- * XMTP skill — encrypted messaging via the XMTP protocol.
2
+ * XMTP skill — encrypted messaging and payments via the XMTP protocol.
3
3
  *
4
- * Actions:
5
- * - send_message: Send a text message to a conversation by ID
6
- * - send_dm: Send a DM to an Ethereum address (creates convo if needed)
7
- * - read_messages: Read recent messages from a conversation
8
- * - list_convos: List recent conversations with previews
9
- * - check_inbox: Check for unread messages in the queue
10
- * - reply: Reply to the most recent message in a conversation
4
+ * Messaging actions:
5
+ * - send_message: Send a text message to a conversation by ID
6
+ * - send_dm: Send a DM to an Ethereum address (creates convo if needed)
7
+ * - read_messages: Read recent messages from a conversation
8
+ * - list_convos: List recent conversations with previews
9
+ * - check_inbox: Check for unread messages in the queue
10
+ * - reply: Reply to the most recent message in a conversation
11
+ *
12
+ * Payment actions:
13
+ * - request_eth: Request an ETH payment from user via wallet_sendCalls
14
+ * - request_token: Request an ERC-20 token payment via wallet_sendCalls
15
+ * - share_tx: Share a confirmed transaction hash in a conversation
16
+ * - check_token_balance: Check an ERC-20 token balance for an address
11
17
  *
12
18
  * The XMTP client is managed by the agent runtime (started at boot,
13
19
  * available via `ctx.xmtpClient`). This skill is the agent's interface
14
- * to send/read messages.
20
+ * to send/read messages and handle payments.
15
21
  */
16
22
  import type { SkillDefinition } from '../types.js';
17
23
  export declare const xmtpSkill: SkillDefinition;
@@ -1 +1 @@
1
- {"version":3,"file":"xmtp.d.ts","sourceRoot":"","sources":["../../src/skills/xmtp.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,eAAe,EAA4B,MAAM,aAAa,CAAC;AAO7E,eAAO,MAAM,SAAS,EAAE,eA+KvB,CAAC"}
1
+ {"version":3,"file":"xmtp.d.ts","sourceRoot":"","sources":["../../src/skills/xmtp.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,eAAe,EAA4B,MAAM,aAAa,CAAC;AAO7E,eAAO,MAAM,SAAS,EAAE,eAoRvB,CAAC"}
@@ -1,41 +1,47 @@
1
1
  /**
2
- * XMTP skill — encrypted messaging via the XMTP protocol.
2
+ * XMTP skill — encrypted messaging and payments via the XMTP protocol.
3
3
  *
4
- * Actions:
5
- * - send_message: Send a text message to a conversation by ID
6
- * - send_dm: Send a DM to an Ethereum address (creates convo if needed)
7
- * - read_messages: Read recent messages from a conversation
8
- * - list_convos: List recent conversations with previews
9
- * - check_inbox: Check for unread messages in the queue
10
- * - reply: Reply to the most recent message in a conversation
4
+ * Messaging actions:
5
+ * - send_message: Send a text message to a conversation by ID
6
+ * - send_dm: Send a DM to an Ethereum address (creates convo if needed)
7
+ * - read_messages: Read recent messages from a conversation
8
+ * - list_convos: List recent conversations with previews
9
+ * - check_inbox: Check for unread messages in the queue
10
+ * - reply: Reply to the most recent message in a conversation
11
+ *
12
+ * Payment actions:
13
+ * - request_eth: Request an ETH payment from user via wallet_sendCalls
14
+ * - request_token: Request an ERC-20 token payment via wallet_sendCalls
15
+ * - share_tx: Share a confirmed transaction hash in a conversation
16
+ * - check_token_balance: Check an ERC-20 token balance for an address
11
17
  *
12
18
  * The XMTP client is managed by the agent runtime (started at boot,
13
19
  * available via `ctx.xmtpClient`). This skill is the agent's interface
14
- * to send/read messages.
20
+ * to send/read messages and handle payments.
15
21
  */
16
22
  // ============================================================================
17
23
  // Skill Definition
18
24
  // ============================================================================
19
25
  export const xmtpSkill = {
20
26
  name: 'xmtp',
21
- description: 'Send and receive encrypted messages via XMTP. Discoverable on Base App, World App, and xmtp.chat. Actions: send_message, send_dm, read_messages, list_convos, check_inbox, reply.',
27
+ description: 'Encrypted messaging and payments via XMTP. Discoverable on Base App, World App, and xmtp.chat. Messaging: send_message, send_dm, read_messages, list_convos, check_inbox, reply. Payments: request_eth, request_token, share_tx, check_token_balance.',
22
28
  parameters: [
23
29
  {
24
30
  name: 'action',
25
31
  type: 'string',
26
- description: 'Action: send_message | send_dm | read_messages | list_convos | check_inbox | reply',
32
+ description: 'Action: send_message | send_dm | read_messages | list_convos | check_inbox | reply | request_eth | request_token | share_tx | check_token_balance',
27
33
  required: true,
28
34
  },
29
35
  {
30
36
  name: 'conversationId',
31
37
  type: 'string',
32
- description: 'Conversation ID (for send_message, read_messages, reply)',
38
+ description: 'Conversation ID (for send_message, read_messages, reply, request_eth, request_token, share_tx)',
33
39
  required: false,
34
40
  },
35
41
  {
36
42
  name: 'address',
37
43
  type: 'address',
38
- description: 'Ethereum address to DM (for send_dm)',
44
+ description: 'Ethereum address (for send_dm, check_token_balance)',
39
45
  required: false,
40
46
  },
41
47
  {
@@ -44,6 +50,30 @@ export const xmtpSkill = {
44
50
  description: 'Text message to send (for send_message, send_dm, reply)',
45
51
  required: false,
46
52
  },
53
+ {
54
+ name: 'amount',
55
+ type: 'string',
56
+ description: 'Amount in human-readable form, e.g. "0.01" for ETH or "100" for tokens (for request_eth, request_token)',
57
+ required: false,
58
+ },
59
+ {
60
+ name: 'tokenAddress',
61
+ type: 'address',
62
+ description: 'ERC-20 token contract address (for request_token, check_token_balance)',
63
+ required: false,
64
+ },
65
+ {
66
+ name: 'txHash',
67
+ type: 'string',
68
+ description: 'Transaction hash to share (for share_tx)',
69
+ required: false,
70
+ },
71
+ {
72
+ name: 'description',
73
+ type: 'string',
74
+ description: 'Human-readable description for payment request (for request_eth, request_token)',
75
+ required: false,
76
+ },
47
77
  {
48
78
  name: 'limit',
49
79
  type: 'number',
@@ -162,12 +192,84 @@ export const xmtpSkill = {
162
192
  result: `Reply sent to conversation ${conversationId}`,
163
193
  };
164
194
  }
195
+ // =================================================================
196
+ // Payment actions
197
+ // =================================================================
198
+ case 'request_eth': {
199
+ const conversationId = params.conversationId;
200
+ const amountStr = params.amount;
201
+ const description = params.description ?? 'ETH payment request';
202
+ if (!conversationId || !amountStr) {
203
+ return { callId, success: false, result: null, error: 'request_eth requires conversationId and amount (in ETH, e.g. "0.01")' };
204
+ }
205
+ const amountWei = BigInt(Math.round(parseFloat(amountStr) * 1e18));
206
+ if (amountWei <= 0n) {
207
+ return { callId, success: false, result: null, error: 'amount must be positive' };
208
+ }
209
+ await xmtpClient.requestEthPayment(conversationId, amountWei, description);
210
+ return {
211
+ callId,
212
+ success: true,
213
+ result: `ETH payment request sent: ${amountStr} ETH. The user's wallet will prompt them to approve.`,
214
+ metadata: { conversationId, amount: amountStr, currency: 'ETH' },
215
+ };
216
+ }
217
+ case 'request_token': {
218
+ const conversationId = params.conversationId;
219
+ const amountStr = params.amount;
220
+ const tokenAddress = params.tokenAddress;
221
+ const description = params.description ?? 'Token payment request';
222
+ if (!conversationId || !amountStr || !tokenAddress) {
223
+ return { callId, success: false, result: null, error: 'request_token requires conversationId, amount, and tokenAddress' };
224
+ }
225
+ // Get token decimals to convert human-readable amount to raw
226
+ const { decimals } = await xmtpClient.getTokenBalance(tokenAddress, xmtpClient.getAddress());
227
+ const rawAmount = BigInt(Math.round(parseFloat(amountStr) * (10 ** decimals)));
228
+ if (rawAmount <= 0n) {
229
+ return { callId, success: false, result: null, error: 'amount must be positive' };
230
+ }
231
+ await xmtpClient.requestTokenPayment(conversationId, tokenAddress, rawAmount, description);
232
+ return {
233
+ callId,
234
+ success: true,
235
+ result: `Token payment request sent: ${amountStr} of ${tokenAddress} (${decimals} decimals). User's wallet will prompt approval.`,
236
+ metadata: { conversationId, amount: amountStr, tokenAddress },
237
+ };
238
+ }
239
+ case 'share_tx': {
240
+ const conversationId = params.conversationId;
241
+ const txHash = params.txHash;
242
+ if (!conversationId || !txHash) {
243
+ return { callId, success: false, result: null, error: 'share_tx requires conversationId and txHash' };
244
+ }
245
+ await xmtpClient.sendTransactionReference(conversationId, txHash);
246
+ return {
247
+ callId,
248
+ success: true,
249
+ result: `Transaction reference shared: ${txHash}`,
250
+ };
251
+ }
252
+ case 'check_token_balance': {
253
+ const tokenAddress = params.tokenAddress;
254
+ const address = params.address;
255
+ if (!tokenAddress || !address) {
256
+ return { callId, success: false, result: null, error: 'check_token_balance requires tokenAddress and address' };
257
+ }
258
+ const { balance, decimals } = await xmtpClient.getTokenBalance(tokenAddress, address);
259
+ const formatted = Number(balance) / (10 ** decimals);
260
+ return {
261
+ callId,
262
+ success: true,
263
+ result: `Balance: ${formatted} (raw: ${balance.toString()}, decimals: ${decimals})`,
264
+ metadata: { tokenAddress, address, balance: balance.toString(), decimals },
265
+ };
266
+ }
165
267
  default:
166
268
  return {
167
269
  callId,
168
270
  success: false,
169
271
  result: null,
170
- error: `Unknown action: ${action}. Available: send_message, send_dm, read_messages, list_convos, check_inbox, reply`,
272
+ error: `Unknown action: ${action}. Messaging: send_message, send_dm, read_messages, list_convos, check_inbox, reply. Payments: request_eth, request_token, share_tx, check_token_balance`,
171
273
  };
172
274
  }
173
275
  }
@@ -1 +1 @@
1
- {"version":3,"file":"xmtp.js","sourceRoot":"","sources":["../../src/skills/xmtp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"xmtp.js","sourceRoot":"","sources":["../../src/skills/xmtp.ts"],"names":[],"mappings":"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"}
@@ -63,6 +63,54 @@ export declare class XmtpClient {
63
63
  * Get recent messages from a specific conversation.
64
64
  */
65
65
  getConversationHistory(conversationId: string, limit?: number): Promise<XmtpMessage[]>;
66
+ /**
67
+ * Request an ETH payment from a user via wallet_sendCalls.
68
+ * The user's wallet app prompts them to approve the transfer.
69
+ *
70
+ * @param conversationId - The conversation to send the request in
71
+ * @param amount - Amount in wei (bigint)
72
+ * @param description - Human-readable description shown in the wallet prompt
73
+ * @param chainId - Chain ID (default: 8453 for Base)
74
+ */
75
+ requestEthPayment(conversationId: string, amount: bigint, description: string, chainId?: number): Promise<void>;
76
+ /**
77
+ * Request an ERC-20 token payment from a user via wallet_sendCalls.
78
+ *
79
+ * @param conversationId - The conversation to send the request in
80
+ * @param tokenAddress - ERC-20 contract address
81
+ * @param amount - Raw token amount (bigint, accounting for decimals)
82
+ * @param description - Human-readable description
83
+ * @param chainId - Chain ID (default: 8453 for Base)
84
+ */
85
+ requestTokenPayment(conversationId: string, tokenAddress: string, amount: bigint, description: string, chainId?: number): Promise<void>;
86
+ /**
87
+ * Send a transaction reference (share a confirmed tx hash in a conversation).
88
+ *
89
+ * @param conversationId - The conversation to share in
90
+ * @param txHash - The transaction hash
91
+ * @param chainId - Chain ID (default: 8453 for Base)
92
+ * @param metadata - Optional metadata (currency, amount, addresses)
93
+ */
94
+ sendTransactionReference(conversationId: string, txHash: string, chainId?: number, metadata?: {
95
+ transactionType?: string;
96
+ currency?: string;
97
+ amount?: number;
98
+ decimals?: number;
99
+ fromAddress?: string;
100
+ toAddress?: string;
101
+ }): Promise<void>;
102
+ /**
103
+ * Check an ERC-20 token balance for an address.
104
+ *
105
+ * @param tokenAddress - ERC-20 contract address
106
+ * @param walletAddress - The address to check
107
+ * @param chainId - Chain ID (default: 8453 for Base)
108
+ * @returns Raw balance (bigint) and decimals
109
+ */
110
+ getTokenBalance(tokenAddress: string, walletAddress: string, chainId?: number): Promise<{
111
+ balance: bigint;
112
+ decimals: number;
113
+ }>;
66
114
  /**
67
115
  * Get the XMTP address (same as wallet address).
68
116
  */
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/xmtp/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAChF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAqBpD,qBAAa,UAAU;IACrB,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,YAAY,CAAO;IAC3B,OAAO,CAAC,iBAAiB,CAAK;gBAElB,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU;IAM3E;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAoE5B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAa3B;;;OAGG;IACH,iBAAiB,IAAI,OAAO;IAI5B;;;OAGG;IACH,aAAa,IAAI,WAAW,EAAE;IAO9B;;OAEG;IACH,YAAY,IAAI,WAAW,EAAE;IAI7B;;OAEG;IACG,WAAW,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IActE;;;OAGG;IACG,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAanE;;OAEG;IACG,iBAAiB,CAAC,KAAK,GAAE,MAAW,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;IA2C5E;;OAEG;IACG,sBAAsB,CAAC,cAAc,EAAE,MAAM,EAAE,KAAK,GAAE,MAAW,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAoChG;;OAEG;IACH,UAAU,IAAI,MAAM,GAAG,IAAI;IAI3B;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,YAAY,IAAI,MAAM;CAGvB"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/xmtp/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAChF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AA6BpD,qBAAa,UAAU;IACrB,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,YAAY,CAAO;IAC3B,OAAO,CAAC,iBAAiB,CAAK;gBAElB,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU;IAM3E;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA+G5B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAa3B;;;OAGG;IACH,iBAAiB,IAAI,OAAO;IAI5B;;;OAGG;IACH,aAAa,IAAI,WAAW,EAAE;IAO9B;;OAEG;IACH,YAAY,IAAI,WAAW,EAAE;IAI7B;;OAEG;IACG,WAAW,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IActE;;;OAGG;IACG,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAanE;;OAEG;IACG,iBAAiB,CAAC,KAAK,GAAE,MAAW,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;IA2C5E;;OAEG;IACG,sBAAsB,CAAC,cAAc,EAAE,MAAM,EAAE,KAAK,GAAE,MAAW,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAwChG;;;;;;;;OAQG;IACG,iBAAiB,CACrB,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,MAAa,GACrB,OAAO,CAAC,IAAI,CAAC;IAiChB;;;;;;;;OAQG;IACG,mBAAmB,CACvB,cAAc,EAAE,MAAM,EACtB,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,MAAa,GACrB,OAAO,CAAC,IAAI,CAAC;IA+BhB;;;;;;;OAOG;IACG,wBAAwB,CAC5B,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,MAAa,EACtB,QAAQ,CAAC,EAAE;QACT,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GACA,OAAO,CAAC,IAAI,CAAC;IAiBhB;;;;;;;OAOG;IACG,eAAe,CACnB,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,MAAM,EACrB,OAAO,GAAE,MAAa,GACrB,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAmBjD;;OAEG;IACH,UAAU,IAAI,MAAM,GAAG,IAAI;IAI3B;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,YAAY,IAAI,MAAM;CAGvB"}
@@ -15,7 +15,11 @@
15
15
  let _Agent = null;
16
16
  let _createSigner = null;
17
17
  let _createUser = null;
18
- let _filter = null;
18
+ let _createERC20TransferCalls = null;
19
+ let _createNativeTransferCalls = null;
20
+ let _getERC20Balance = null;
21
+ let _getERC20Decimals = null;
22
+ let _validHex = null;
19
23
  async function loadXmtpSdk() {
20
24
  if (_Agent)
21
25
  return;
@@ -23,7 +27,11 @@ async function loadXmtpSdk() {
23
27
  _Agent = sdk.Agent;
24
28
  _createSigner = sdk.createSigner;
25
29
  _createUser = sdk.createUser;
26
- _filter = sdk.filter;
30
+ _createERC20TransferCalls = sdk.createERC20TransferCalls;
31
+ _createNativeTransferCalls = sdk.createNativeTransferCalls;
32
+ _getERC20Balance = sdk.getERC20Balance;
33
+ _getERC20Decimals = sdk.getERC20Decimals;
34
+ _validHex = sdk.validHex;
27
35
  }
28
36
  // ============================================================================
29
37
  // XMTP Client
@@ -60,7 +68,7 @@ export class XmtpClient {
60
68
  env: this.config.env ?? 'production',
61
69
  dbEncryptionKey: encryptionKey,
62
70
  dbPath: this.config.dbPath ?? undefined,
63
- appVersion: 'clawtomaton/0.3.0',
71
+ appVersion: 'clawtomaton/0.4.0',
64
72
  });
65
73
  // Stream text messages into our queue
66
74
  this.agent.on('text', async (ctx) => {
@@ -91,6 +99,45 @@ export class XmtpClient {
91
99
  this.agent.on('group', async (ctx) => {
92
100
  this.state.audit('xmtp_group', `Added to group: ${ctx.conversation.id}`);
93
101
  });
102
+ // Stream transaction confirmations into the queue
103
+ this.agent.on('transaction-reference', async (ctx) => {
104
+ try {
105
+ const senderAddress = await ctx.getSenderAddress();
106
+ const agentAddress = ctx.getClientAddress();
107
+ // Don't queue our own transaction references
108
+ if (senderAddress?.toLowerCase() === agentAddress?.toLowerCase())
109
+ return;
110
+ const { networkId, reference, metadata } = ctx.message.content ?? {};
111
+ const chainId = networkId ? parseInt(networkId, 16) || parseInt(networkId, 10) || 0 : 0;
112
+ const msg = {
113
+ id: ctx.message.id,
114
+ conversationId: ctx.conversation.id,
115
+ senderAddress: senderAddress ?? 'unknown',
116
+ content: `Transaction confirmed: ${reference ?? 'unknown'} on chain ${chainId}`,
117
+ sentAt: ctx.message.sentAt?.getTime?.() ?? Date.now(),
118
+ isDm: ctx.isDm?.() ?? true,
119
+ isGroup: ctx.isGroup?.() ?? false,
120
+ type: 'transaction_confirmed',
121
+ transaction: {
122
+ chainId,
123
+ txHash: reference ?? '',
124
+ transactionType: metadata?.transactionType,
125
+ currency: metadata?.currency,
126
+ amount: metadata?.amount != null ? String(metadata.amount) : undefined,
127
+ from: metadata?.fromAddress,
128
+ to: metadata?.toAddress,
129
+ },
130
+ };
131
+ this.messageQueue.push(msg);
132
+ if (this.messageQueue.length > this.maxQueueSize) {
133
+ this.messageQueue = this.messageQueue.slice(-this.maxQueueSize);
134
+ }
135
+ this.state.audit('xmtp_tx_confirmed', `TX ${reference} on chain ${chainId} from ${senderAddress}`);
136
+ }
137
+ catch {
138
+ // Non-fatal — don't crash the stream on bad transaction references
139
+ }
140
+ });
94
141
  this.agent.on('unhandledError', (error) => {
95
142
  console.error(`[xmtp] Unhandled error: ${error}`);
96
143
  this.state.audit('xmtp_error', String(error));
@@ -239,6 +286,131 @@ export class XmtpClient {
239
286
  }
240
287
  return results;
241
288
  }
289
+ // ==========================================================================
290
+ // Payments
291
+ // ==========================================================================
292
+ /**
293
+ * Request an ETH payment from a user via wallet_sendCalls.
294
+ * The user's wallet app prompts them to approve the transfer.
295
+ *
296
+ * @param conversationId - The conversation to send the request in
297
+ * @param amount - Amount in wei (bigint)
298
+ * @param description - Human-readable description shown in the wallet prompt
299
+ * @param chainId - Chain ID (default: 8453 for Base)
300
+ */
301
+ async requestEthPayment(conversationId, amount, description, chainId = 8453) {
302
+ if (!this.started || !this.agent)
303
+ throw new Error('XMTP client not started');
304
+ const conversation = await this.agent.client.conversations.getConversationById(conversationId);
305
+ if (!conversation)
306
+ throw new Error(`Conversation not found: ${conversationId}`);
307
+ // Get sender address from conversation members (the other party)
308
+ const members = await conversation.members();
309
+ const agentInboxId = this.agent.client.inboxId;
310
+ const otherMember = members.find((m) => m.inboxId !== agentInboxId);
311
+ if (!otherMember)
312
+ throw new Error('No other member in conversation');
313
+ // Resolve the other member's address
314
+ const otherAddresses = otherMember.accountAddresses ?? [];
315
+ const fromAddress = otherAddresses[0];
316
+ if (!fromAddress)
317
+ throw new Error('Could not resolve sender address');
318
+ const { base } = await import('viem/chains');
319
+ const chain = chainId === 8453 ? base : { id: chainId, name: `Chain ${chainId}` };
320
+ const walletSendCalls = _createNativeTransferCalls({
321
+ chain,
322
+ from: _validHex(fromAddress),
323
+ to: _validHex(this.agent.address),
324
+ amount,
325
+ description,
326
+ });
327
+ await conversation.sendWalletSendCalls(walletSendCalls);
328
+ const ethAmount = Number(amount) / 1e18;
329
+ this.state.audit('xmtp_payment_request', `Requested ${ethAmount.toFixed(6)} ETH in ${conversationId}`);
330
+ }
331
+ /**
332
+ * Request an ERC-20 token payment from a user via wallet_sendCalls.
333
+ *
334
+ * @param conversationId - The conversation to send the request in
335
+ * @param tokenAddress - ERC-20 contract address
336
+ * @param amount - Raw token amount (bigint, accounting for decimals)
337
+ * @param description - Human-readable description
338
+ * @param chainId - Chain ID (default: 8453 for Base)
339
+ */
340
+ async requestTokenPayment(conversationId, tokenAddress, amount, description, chainId = 8453) {
341
+ if (!this.started || !this.agent)
342
+ throw new Error('XMTP client not started');
343
+ const conversation = await this.agent.client.conversations.getConversationById(conversationId);
344
+ if (!conversation)
345
+ throw new Error(`Conversation not found: ${conversationId}`);
346
+ const members = await conversation.members();
347
+ const agentInboxId = this.agent.client.inboxId;
348
+ const otherMember = members.find((m) => m.inboxId !== agentInboxId);
349
+ if (!otherMember)
350
+ throw new Error('No other member in conversation');
351
+ const otherAddresses = otherMember.accountAddresses ?? [];
352
+ const fromAddress = otherAddresses[0];
353
+ if (!fromAddress)
354
+ throw new Error('Could not resolve sender address');
355
+ const { base } = await import('viem/chains');
356
+ const chain = chainId === 8453 ? base : { id: chainId, name: `Chain ${chainId}` };
357
+ const walletSendCalls = _createERC20TransferCalls({
358
+ chain,
359
+ tokenAddress: _validHex(tokenAddress),
360
+ from: _validHex(fromAddress),
361
+ to: _validHex(this.agent.address),
362
+ amount,
363
+ description,
364
+ });
365
+ await conversation.sendWalletSendCalls(walletSendCalls);
366
+ this.state.audit('xmtp_payment_request', `Requested token ${tokenAddress} in ${conversationId}`);
367
+ }
368
+ /**
369
+ * Send a transaction reference (share a confirmed tx hash in a conversation).
370
+ *
371
+ * @param conversationId - The conversation to share in
372
+ * @param txHash - The transaction hash
373
+ * @param chainId - Chain ID (default: 8453 for Base)
374
+ * @param metadata - Optional metadata (currency, amount, addresses)
375
+ */
376
+ async sendTransactionReference(conversationId, txHash, chainId = 8453, metadata) {
377
+ if (!this.started || !this.agent)
378
+ throw new Error('XMTP client not started');
379
+ const conversation = await this.agent.client.conversations.getConversationById(conversationId);
380
+ if (!conversation)
381
+ throw new Error(`Conversation not found: ${conversationId}`);
382
+ const ref = {
383
+ namespace: 'eip155',
384
+ networkId: chainId,
385
+ reference: txHash,
386
+ metadata: metadata ?? {},
387
+ };
388
+ await conversation.sendTransactionReference(ref);
389
+ this.state.audit('xmtp_tx_ref', `Shared tx ${txHash} in ${conversationId}`);
390
+ }
391
+ /**
392
+ * Check an ERC-20 token balance for an address.
393
+ *
394
+ * @param tokenAddress - ERC-20 contract address
395
+ * @param walletAddress - The address to check
396
+ * @param chainId - Chain ID (default: 8453 for Base)
397
+ * @returns Raw balance (bigint) and decimals
398
+ */
399
+ async getTokenBalance(tokenAddress, walletAddress, chainId = 8453) {
400
+ await loadXmtpSdk();
401
+ const { base } = await import('viem/chains');
402
+ const chain = chainId === 8453 ? base : { id: chainId, name: `Chain ${chainId}` };
403
+ const decimals = await _getERC20Decimals({
404
+ chain,
405
+ tokenAddress: _validHex(tokenAddress),
406
+ });
407
+ const balance = await _getERC20Balance({
408
+ chain,
409
+ tokenAddress: _validHex(tokenAddress),
410
+ address: _validHex(walletAddress),
411
+ });
412
+ return { balance, decimals };
413
+ }
242
414
  /**
243
415
  * Get the XMTP address (same as wallet address).
244
416
  */
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/xmtp/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,oCAAoC;AACpC,IAAI,MAAM,GAAkD,IAAI,CAAC;AACjE,IAAI,aAAa,GAAyD,IAAI,CAAC;AAC/E,IAAI,WAAW,GAAuD,IAAI,CAAC;AAC3E,IAAI,OAAO,GAAmD,IAAI,CAAC;AAEnE,KAAK,UAAU,WAAW;IACxB,IAAI,MAAM;QAAE,OAAO;IACnB,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAC5C,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC;IACnB,aAAa,GAAG,GAAG,CAAC,YAAY,CAAC;IACjC,WAAW,GAAG,GAAG,CAAC,UAAU,CAAC;IAC7B,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC;AACvB,CAAC;AAED,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAE/E,MAAM,OAAO,UAAU;IACb,KAAK,GAAQ,IAAI,CAAC,CAAC,sBAAsB;IACzC,MAAM,CAAa;IACnB,KAAK,CAAa;IAClB,SAAS,CAAgB;IACzB,OAAO,GAAG,KAAK,CAAC;IAChB,YAAY,GAAkB,EAAE,CAAC;IACjC,YAAY,GAAG,GAAG,CAAC;IACnB,iBAAiB,GAAG,CAAC,CAAC;IAE9B,YAAY,MAAkB,EAAE,SAAwB,EAAE,KAAiB;QACzE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QAEzB,MAAM,WAAW,EAAE,CAAC;QAEpB,MAAM,IAAI,GAAG,WAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1C,MAAM,MAAM,GAAG,aAAc,CAAC,IAAI,CAAC,CAAC;QAEpC,iFAAiF;QACjF,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe;YAC/C,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC;YACzC,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAExC,IAAI,CAAC,KAAK,GAAG,MAAM,MAAO,CAAC,MAAM,CAAC,MAAM,EAAE;YACxC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,YAAY;YACpC,eAAe,EAAE,aAAa;YAC9B,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,SAAS;YACvC,UAAU,EAAE,mBAAmB;SAChC,CAAC,CAAC;QAEH,sCAAsC;QACtC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,GAAQ,EAAE,EAAE;YACvC,MAAM,aAAa,GAAG,MAAM,GAAG,CAAC,gBAAgB,EAAE,CAAC;YACnD,MAAM,YAAY,GAAG,GAAG,CAAC,gBAAgB,EAAE,CAAC;YAE5C,+BAA+B;YAC/B,IAAI,aAAa,EAAE,WAAW,EAAE,KAAK,YAAY,EAAE,WAAW,EAAE;gBAAE,OAAO;YAEzE,MAAM,GAAG,GAAgB;gBACvB,EAAE,EAAE,GAAG,CAAC,OAAO,CAAC,EAAE;gBAClB,cAAc,EAAE,GAAG,CAAC,YAAY,CAAC,EAAE;gBACnC,aAAa,EAAE,aAAa,IAAI,SAAS;gBACzC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,OAAO;gBAC5B,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE;gBACrD,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,IAAI;gBAC1B,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,IAAI,KAAK;aAClC,CAAC;YAEF,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAE5B,iBAAiB;YACjB,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;gBACjD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAClE,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,0BAA0B;QAC1B,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,GAAQ,EAAE,EAAE;YACrC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,wBAAwB,GAAG,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7E,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,GAAQ,EAAE,EAAE;YACxC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,mBAAmB,GAAG,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,KAAU,EAAE,EAAE;YAC7C,OAAO,CAAC,KAAK,CAAC,2BAA2B,KAAK,EAAE,CAAC,CAAC;YAClD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEpC,OAAO,CAAC,GAAG,CAAC,6BAA6B,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/D,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,EAAE,gCAAgC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IACzF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;QAEzC,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAC1B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,0BAA0B,GAAG,EAAE,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACjC,CAAC;IAED;;;OAGG;IACH,iBAAiB;QACf,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;IACtC,CAAC;IAED;;;OAGG;IACH,aAAa;QACX,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;QAC5E,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACpC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,YAAY;QACV,OAAO,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;IACpE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,cAAsB,EAAE,IAAY;QACpD,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC;QAC/F,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,2BAA2B,cAAc,EAAE,CAAC,CAAC;QAC/D,CAAC;QAED,MAAM,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,mBAAmB,cAAc,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;IAC5F,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,aAAa,CAAC,OAAe,EAAE,IAAY;QAC/C,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QACnE,MAAM,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAElC,MAAM,cAAc,GAAG,YAAY,CAAC,EAAE,CAAC;QACvC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,cAAc,OAAO,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9E,OAAO,cAAc,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CAAC,QAAgB,EAAE;QACxC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QAC7C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QAC5D,MAAM,OAAO,GAA2B,EAAE,CAAC;QAE3C,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC;YAC3C,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACxC,kEAAkE;gBAClE,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAC9C,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAClE,CAAC;gBACF,MAAM,WAAW,GAAG,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC1D,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;gBACtC,gDAAgD;gBAChD,MAAM,IAAI,GAAG,KAAK,CAAC,WAAW,EAAE,IAAI,KAAK,IAAI,CAAC;gBAE9C,OAAO,CAAC,IAAI,CAAC;oBACX,EAAE,EAAE,KAAK,CAAC,EAAE;oBACZ,IAAI;oBACJ,WAAW,EAAE,OAAO,CAAC,MAAM;oBAC3B,aAAa,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC;oBACpD,kBAAkB,EAAE,WAAW,EAAE,OAAO;wBACtC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;wBAC1C,CAAC,CAAC,SAAS;iBACd,CAAC,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,CAAC,IAAI,CAAC;oBACX,EAAE,EAAE,KAAK,CAAC,EAAE;oBACZ,IAAI,EAAE,KAAK;oBACX,WAAW,EAAE,CAAC;oBACd,aAAa,EAAE,CAAC;iBACjB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC,aAAa,CAAC,CAAC;IACnE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,sBAAsB,CAAC,cAAsB,EAAE,QAAgB,EAAE;QACrE,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC;QAC/F,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,2BAA2B,cAAc,EAAE,CAAC,CAAC;QAC/D,CAAC;QAED,MAAM,YAAY,CAAC,IAAI,EAAE,CAAC;QAC1B,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,CAAC;QAClD,qEAAqE;QACrE,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CACjD,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAClE,CAAC;QACF,wCAAwC;QACxC,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;QAC1C,MAAM,IAAI,GAAG,YAAY,CAAC,WAAW,EAAE,IAAI,KAAK,IAAI,CAAC;QACrD,MAAM,OAAO,GAAkB,EAAE,CAAC;QAElC,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CAAC;gBACX,EAAE,EAAE,GAAG,CAAC,EAAE;gBACV,cAAc;gBACd,aAAa,EAAE,GAAG,CAAC,aAAa,IAAI,SAAS;gBAC7C,OAAO,EAAE,GAAG,CAAC,OAAiB;gBAC9B,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC;gBACpC,IAAI;gBACJ,OAAO,EAAE,CAAC,IAAI;aACf,CAAC,CAAC;QACL,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,KAAK,EAAE,OAAO,IAAI,IAAI,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,YAAY;QACV,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;IAClC,CAAC;CACF;AAED,+EAA+E;AAC/E,UAAU;AACV,+EAA+E;AAE/E;;;GAGG;AACH,SAAS,mBAAmB,CAAC,SAAwB;IACnD,2DAA2D;IAC3D,oEAAoE;IACpE,MAAM,GAAG,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC/B,OAAO,UAAU,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,UAAU,CAAC,GAAW;IAC7B,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3D,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAClD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,KAAK,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/xmtp/client.ts"],"names":[],"mappings":"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"}
@@ -5,5 +5,5 @@
5
5
  * Discoverable on Base App, World App, and xmtp.chat.
6
6
  */
7
7
  export { XmtpClient } from './client.js';
8
- export type { XmtpConfig, XmtpMessage, XmtpConversationInfo } from './types.js';
8
+ export type { XmtpConfig, XmtpMessage, XmtpMessageType, XmtpConversationInfo, XmtpTransactionRef } from './types.js';
9
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/xmtp/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/xmtp/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC"}
@@ -28,6 +28,7 @@ export interface XmtpConfig {
28
28
  */
29
29
  maxQueueSize?: number;
30
30
  }
31
+ export type XmtpMessageType = 'text' | 'transaction_request' | 'transaction_confirmed';
31
32
  export interface XmtpMessage {
32
33
  /** Message ID from XMTP */
33
34
  id: string;
@@ -35,7 +36,7 @@ export interface XmtpMessage {
35
36
  conversationId: string;
36
37
  /** Sender's Ethereum address or inbox ID */
37
38
  senderAddress: string;
38
- /** Text content */
39
+ /** Text content (for text messages) or summary (for transaction messages) */
39
40
  content: string;
40
41
  /** Timestamp in ms */
41
42
  sentAt: number;
@@ -43,6 +44,26 @@ export interface XmtpMessage {
43
44
  isDm: boolean;
44
45
  /** Whether this is a group chat */
45
46
  isGroup: boolean;
47
+ /** Message type — text, payment request, or confirmed transaction */
48
+ type?: XmtpMessageType;
49
+ /** Transaction metadata (present for transaction_confirmed messages) */
50
+ transaction?: XmtpTransactionRef;
51
+ }
52
+ export interface XmtpTransactionRef {
53
+ /** Chain ID (decimal) */
54
+ chainId: number;
55
+ /** Transaction hash */
56
+ txHash: string;
57
+ /** Transaction type (e.g. 'transfer') */
58
+ transactionType?: string;
59
+ /** Token symbol or 'ETH' */
60
+ currency?: string;
61
+ /** Human-readable amount */
62
+ amount?: string;
63
+ /** Sender address */
64
+ from?: string;
65
+ /** Receiver address */
66
+ to?: string;
46
67
  }
47
68
  export interface XmtpConversationInfo {
48
69
  /** Conversation ID */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/xmtp/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,MAAM,WAAW,UAAU;IACzB,+BAA+B;IAC/B,GAAG,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,YAAY,CAAC;IAErC;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IAErB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAMD,MAAM,WAAW,WAAW;IAC1B,2BAA2B;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,sBAAsB;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,4CAA4C;IAC5C,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,sBAAsB;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,2BAA2B;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,mCAAmC;IACnC,OAAO,EAAE,OAAO,CAAC;CAClB;AAMD,MAAM,WAAW,oBAAoB;IACnC,sBAAsB;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,sCAAsC;IACtC,IAAI,EAAE,OAAO,CAAC;IACd,wBAAwB;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,sCAAsC;IACtC,aAAa,EAAE,MAAM,CAAC;IACtB,0CAA0C;IAC1C,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/xmtp/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,MAAM,WAAW,UAAU;IACzB,+BAA+B;IAC/B,GAAG,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,YAAY,CAAC;IAErC;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IAErB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAMD,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,qBAAqB,GAAG,uBAAuB,CAAC;AAEvF,MAAM,WAAW,WAAW;IAC1B,2BAA2B;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,sBAAsB;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,4CAA4C;IAC5C,aAAa,EAAE,MAAM,CAAC;IACtB,6EAA6E;IAC7E,OAAO,EAAE,MAAM,CAAC;IAChB,sBAAsB;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,2BAA2B;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,mCAAmC;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,qEAAqE;IACrE,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,wEAAwE;IACxE,WAAW,CAAC,EAAE,kBAAkB,CAAC;CAClC;AAMD,MAAM,WAAW,kBAAkB;IACjC,yBAAyB;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,uBAAuB;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,yCAAyC;IACzC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4BAA4B;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qBAAqB;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uBAAuB;IACvB,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAMD,MAAM,WAAW,oBAAoB;IACnC,sBAAsB;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,sCAAsC;IACtC,IAAI,EAAE,OAAO,CAAC;IACd,wBAAwB;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,sCAAsC;IACtC,aAAa,EAAE,MAAM,CAAC;IACtB,0CAA0C;IAC1C,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@clawnch/clawtomaton",
3
- "version": "0.4.0",
3
+ "version": "0.4.1",
4
4
  "description": "Clawtomaton — Autonomous AI agents that launch and manage crypto projects on Base",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",