agentcash 0.13.1 → 0.13.2

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 (104) hide show
  1. package/README.md +7 -1
  2. package/dist/cjs/run-server.cjs +3912 -5574
  3. package/dist/esm/{add-skill-3SHARVQA.js → add-skill-W277MI7L.js} +16 -16
  4. package/dist/esm/{bridge-55J4MKZR.js → bridge-EXVM6MMU.js} +13 -14
  5. package/dist/esm/{bridge-55J4MKZR.js.map → bridge-EXVM6MMU.js.map} +1 -1
  6. package/dist/esm/{check-V262JV5M.js → check-LTH3BZYQ.js} +12 -13
  7. package/dist/esm/{check-V262JV5M.js.map → check-LTH3BZYQ.js.map} +1 -1
  8. package/dist/esm/{chunk-DFHVSUHX.js → chunk-5CMVFNXO.js} +3 -3
  9. package/dist/esm/{chunk-23OVF3MX.js → chunk-5JBG33QY.js} +4 -4
  10. package/dist/esm/{chunk-QOYH6AOG.js → chunk-7AT3NXJ2.js} +2 -2
  11. package/dist/esm/{chunk-DPKUB6GL.js → chunk-AWFBYDYO.js} +7 -7
  12. package/dist/esm/{chunk-HFEYSQRZ.js → chunk-F3KGAMIA.js} +34 -19
  13. package/dist/esm/chunk-F3KGAMIA.js.map +1 -0
  14. package/dist/esm/{chunk-QLW6AJTF.js → chunk-H3L6DHOH.js} +4 -4
  15. package/dist/esm/{chunk-EJDPIURX.js → chunk-IL5RGDIX.js} +9 -9
  16. package/dist/esm/{chunk-Q5SPIJGE.js → chunk-IPBR36VR.js} +48 -29
  17. package/dist/esm/chunk-IPBR36VR.js.map +1 -0
  18. package/dist/esm/{chunk-6XGAIMNK.js → chunk-ISF2WVEZ.js} +2 -2
  19. package/dist/esm/{chunk-4JNU4ZDR.js → chunk-JAA6JEF2.js} +3 -3
  20. package/dist/esm/{chunk-GYJKIBJJ.js → chunk-JOIAQY6V.js} +5 -5
  21. package/dist/esm/{chunk-GKYODP7W.js → chunk-JX2XE6FD.js} +2 -2
  22. package/dist/esm/{chunk-TVSACMMH.js → chunk-KPJJSNZO.js} +7 -7
  23. package/dist/esm/{chunk-LNQRIXFK.js → chunk-KVSTJRSJ.js} +2 -2
  24. package/dist/esm/{chunk-DJLERI6R.js → chunk-MYWE3P7R.js} +5 -5
  25. package/dist/esm/{chunk-RVJ22H4S.js → chunk-NC4UN6IF.js} +2 -2
  26. package/dist/esm/{chunk-BYLBPP4V.js → chunk-O3OVWMBY.js} +8 -8
  27. package/dist/esm/{chunk-QZBSRYSW.js → chunk-PBVLTOFS.js} +3 -3
  28. package/dist/esm/{chunk-Y4VZACTC.js → chunk-QZCSZB7E.js} +6 -8
  29. package/dist/esm/{chunk-Y4VZACTC.js.map → chunk-QZCSZB7E.js.map} +1 -1
  30. package/dist/esm/chunk-TTAO2EJK.js +10 -0
  31. package/dist/esm/chunk-TTAO2EJK.js.map +1 -0
  32. package/dist/esm/{chunk-E5SPXKCI.js → chunk-UBVHQSSW.js} +9 -9
  33. package/dist/esm/{chunk-HOGMCHWI.js → chunk-UMYAGSWZ.js} +5 -5
  34. package/dist/esm/{chunk-BQRFNAMV.js → chunk-VX6PPHSN.js} +5 -5
  35. package/dist/esm/{chunk-X5AS5G23.js → chunk-WRMSVC2R.js} +2 -2
  36. package/dist/esm/{chunk-EMQMCXIC.js → chunk-X2JUL4S3.js} +3 -10
  37. package/dist/esm/chunk-X2JUL4S3.js.map +1 -0
  38. package/dist/esm/{chunk-TX4UYXJO.js → chunk-YIU364NZ.js} +3 -3
  39. package/dist/esm/{chunk-WUNL7OYW.js → chunk-YUGBFY4H.js} +3 -3
  40. package/dist/esm/{chunk-C7KWYVS3.js → chunk-YWNBUUBR.js} +53 -2
  41. package/dist/esm/chunk-YWNBUUBR.js.map +1 -0
  42. package/dist/esm/{discover-RV2HPYM3.js → discover-63V73SKH.js} +7 -7
  43. package/dist/esm/{fetch-5H6NJNO5.js → fetch-G2C4EUTP.js} +17 -18
  44. package/dist/esm/{fetch-5H6NJNO5.js.map → fetch-G2C4EUTP.js.map} +1 -1
  45. package/dist/esm/{fund-OTAWWC7N.js → fund-YCUI5KVH.js} +9 -11
  46. package/dist/esm/{fund-OTAWWC7N.js.map → fund-YCUI5KVH.js.map} +1 -1
  47. package/dist/esm/index.js +35 -35
  48. package/dist/esm/{install-BZLMXTQ6.js → install-OK4J2KEU.js} +12 -14
  49. package/dist/esm/{install-BZLMXTQ6.js.map → install-OK4J2KEU.js.map} +1 -1
  50. package/dist/esm/{onboard-DBENGNGV.js → onboard-SLU3CNO4.js} +17 -19
  51. package/dist/esm/{onboard-DBENGNGV.js.map → onboard-SLU3CNO4.js.map} +1 -1
  52. package/dist/esm/{origins-3AA7U2VW.js → origins-7KBHPH42.js} +10 -10
  53. package/dist/esm/register-HP4VTPU7.js +150 -0
  54. package/dist/esm/register-HP4VTPU7.js.map +1 -0
  55. package/dist/esm/{report-error-F44RFQ54.js → report-error-D3RRKDEC.js} +10 -12
  56. package/dist/esm/{report-error-F44RFQ54.js.map → report-error-D3RRKDEC.js.map} +1 -1
  57. package/dist/esm/{search-WTPHS4A3.js → search-G25PLCS2.js} +14 -15
  58. package/dist/esm/{search-WTPHS4A3.js.map → search-G25PLCS2.js.map} +1 -1
  59. package/dist/esm/{server-BR4W2YCH.js → server-KWXWCPIO.js} +36 -37
  60. package/dist/esm/{server-BR4W2YCH.js.map → server-KWXWCPIO.js.map} +1 -1
  61. package/dist/esm/{server-6V4NB65Q.js → server-QJNQOPBK.js} +2 -2
  62. package/dist/esm/{settings-SEZ65YUC.js → settings-RLSKK5RM.js} +3 -4
  63. package/dist/esm/{settings-SEZ65YUC.js.map → settings-RLSKK5RM.js.map} +1 -1
  64. package/dist/esm/{try-2KUOYSRY.js → try-JK56MOLD.js} +16 -17
  65. package/dist/esm/{try-2KUOYSRY.js.map → try-JK56MOLD.js.map} +1 -1
  66. package/dist/esm/{wallet-RZVO77IB.js → wallet-RWNVHHCO.js} +17 -19
  67. package/dist/esm/{wallet-RZVO77IB.js.map → wallet-RWNVHHCO.js.map} +1 -1
  68. package/package.json +7 -7
  69. package/dist/esm/chunk-C7KWYVS3.js.map +0 -1
  70. package/dist/esm/chunk-EMQMCXIC.js.map +0 -1
  71. package/dist/esm/chunk-HFEYSQRZ.js.map +0 -1
  72. package/dist/esm/chunk-NROPRHIC.js +0 -25
  73. package/dist/esm/chunk-NROPRHIC.js.map +0 -1
  74. package/dist/esm/chunk-Q5SPIJGE.js.map +0 -1
  75. package/dist/esm/chunk-VDBUUHJF.js +0 -58
  76. package/dist/esm/chunk-VDBUUHJF.js.map +0 -1
  77. package/dist/esm/register-NAPAV4G7.js +0 -64
  78. package/dist/esm/register-NAPAV4G7.js.map +0 -1
  79. /package/dist/esm/{add-skill-3SHARVQA.js.map → add-skill-W277MI7L.js.map} +0 -0
  80. /package/dist/esm/{chunk-DFHVSUHX.js.map → chunk-5CMVFNXO.js.map} +0 -0
  81. /package/dist/esm/{chunk-23OVF3MX.js.map → chunk-5JBG33QY.js.map} +0 -0
  82. /package/dist/esm/{chunk-QOYH6AOG.js.map → chunk-7AT3NXJ2.js.map} +0 -0
  83. /package/dist/esm/{chunk-DPKUB6GL.js.map → chunk-AWFBYDYO.js.map} +0 -0
  84. /package/dist/esm/{chunk-QLW6AJTF.js.map → chunk-H3L6DHOH.js.map} +0 -0
  85. /package/dist/esm/{chunk-EJDPIURX.js.map → chunk-IL5RGDIX.js.map} +0 -0
  86. /package/dist/esm/{chunk-6XGAIMNK.js.map → chunk-ISF2WVEZ.js.map} +0 -0
  87. /package/dist/esm/{chunk-4JNU4ZDR.js.map → chunk-JAA6JEF2.js.map} +0 -0
  88. /package/dist/esm/{chunk-GYJKIBJJ.js.map → chunk-JOIAQY6V.js.map} +0 -0
  89. /package/dist/esm/{chunk-GKYODP7W.js.map → chunk-JX2XE6FD.js.map} +0 -0
  90. /package/dist/esm/{chunk-TVSACMMH.js.map → chunk-KPJJSNZO.js.map} +0 -0
  91. /package/dist/esm/{chunk-LNQRIXFK.js.map → chunk-KVSTJRSJ.js.map} +0 -0
  92. /package/dist/esm/{chunk-DJLERI6R.js.map → chunk-MYWE3P7R.js.map} +0 -0
  93. /package/dist/esm/{chunk-RVJ22H4S.js.map → chunk-NC4UN6IF.js.map} +0 -0
  94. /package/dist/esm/{chunk-BYLBPP4V.js.map → chunk-O3OVWMBY.js.map} +0 -0
  95. /package/dist/esm/{chunk-QZBSRYSW.js.map → chunk-PBVLTOFS.js.map} +0 -0
  96. /package/dist/esm/{chunk-E5SPXKCI.js.map → chunk-UBVHQSSW.js.map} +0 -0
  97. /package/dist/esm/{chunk-HOGMCHWI.js.map → chunk-UMYAGSWZ.js.map} +0 -0
  98. /package/dist/esm/{chunk-BQRFNAMV.js.map → chunk-VX6PPHSN.js.map} +0 -0
  99. /package/dist/esm/{chunk-X5AS5G23.js.map → chunk-WRMSVC2R.js.map} +0 -0
  100. /package/dist/esm/{chunk-TX4UYXJO.js.map → chunk-YIU364NZ.js.map} +0 -0
  101. /package/dist/esm/{chunk-WUNL7OYW.js.map → chunk-YUGBFY4H.js.map} +0 -0
  102. /package/dist/esm/{discover-RV2HPYM3.js.map → discover-63V73SKH.js.map} +0 -0
  103. /package/dist/esm/{origins-3AA7U2VW.js.map → origins-7KBHPH42.js.map} +0 -0
  104. /package/dist/esm/{server-6V4NB65Q.js.map → server-QJNQOPBK.js.map} +0 -0
@@ -1,30 +1,30 @@
1
1
  import {
2
2
  resolveOrigin
3
- } from "./chunk-RVJ22H4S.js";
3
+ } from "./chunk-NC4UN6IF.js";
4
4
  import {
5
5
  installSkills
6
- } from "./chunk-4JNU4ZDR.js";
6
+ } from "./chunk-JAA6JEF2.js";
7
7
  import {
8
8
  addUserOrigin
9
- } from "./chunk-TX4UYXJO.js";
10
- import "./chunk-LNQRIXFK.js";
11
- import "./chunk-HOGMCHWI.js";
12
- import {
13
- safeMkdir,
14
- safeMkdtemp,
15
- safeRm,
16
- safeWriteFile
17
- } from "./chunk-Y4VZACTC.js";
18
- import "./chunk-EMQMCXIC.js";
19
- import "./chunk-VDBUUHJF.js";
20
- import "./chunk-ITCDZXBZ.js";
9
+ } from "./chunk-YIU364NZ.js";
10
+ import "./chunk-UMYAGSWZ.js";
11
+ import "./chunk-X2JUL4S3.js";
12
+ import "./chunk-KVSTJRSJ.js";
21
13
  import "./chunk-FB5CMO3J.js";
22
14
  import {
23
15
  errorResponse,
24
16
  outputAndExit,
25
17
  successResponse
26
18
  } from "./chunk-7EBJ4BCH.js";
27
- import "./chunk-C7KWYVS3.js";
19
+ import {
20
+ safeMkdir,
21
+ safeMkdtemp,
22
+ safeRm,
23
+ safeWriteFile
24
+ } from "./chunk-QZCSZB7E.js";
25
+ import "./chunk-TTAO2EJK.js";
26
+ import "./chunk-YWNBUUBR.js";
27
+ import "./chunk-ITCDZXBZ.js";
28
28
 
29
29
  // src/shared/skills/origin.ts
30
30
  import * as os from "os";
@@ -96,4 +96,4 @@ var addSkillCommand = async (input) => {
96
96
  export {
97
97
  addSkillCommand
98
98
  };
99
- //# sourceMappingURL=add-skill-3SHARVQA.js.map
99
+ //# sourceMappingURL=add-skill-W277MI7L.js.map
@@ -1,28 +1,27 @@
1
1
  import {
2
2
  bridge,
3
3
  bridgeSchema
4
- } from "./chunk-EJDPIURX.js";
4
+ } from "./chunk-IL5RGDIX.js";
5
+ import {
6
+ DESCRIPTIONS
7
+ } from "./chunk-X2JUL4S3.js";
8
+ import "./chunk-PBVLTOFS.js";
5
9
  import {
6
10
  getWalletOrExit
7
- } from "./chunk-QOYH6AOG.js";
8
- import "./chunk-HFEYSQRZ.js";
11
+ } from "./chunk-7AT3NXJ2.js";
12
+ import "./chunk-F3KGAMIA.js";
9
13
  import "./chunk-NPJV7AMV.js";
10
- import "./chunk-LNQRIXFK.js";
11
- import "./chunk-Y4VZACTC.js";
12
- import {
13
- DESCRIPTIONS
14
- } from "./chunk-EMQMCXIC.js";
15
- import "./chunk-VDBUUHJF.js";
16
- import "./chunk-ITCDZXBZ.js";
17
- import "./chunk-QZBSRYSW.js";
18
- import "./chunk-NROPRHIC.js";
14
+ import "./chunk-KVSTJRSJ.js";
19
15
  import {
20
16
  errorResponse,
21
17
  fromNeverthrowError,
22
18
  outputAndExit,
23
19
  successResponse
24
20
  } from "./chunk-7EBJ4BCH.js";
25
- import "./chunk-C7KWYVS3.js";
21
+ import "./chunk-QZCSZB7E.js";
22
+ import "./chunk-TTAO2EJK.js";
23
+ import "./chunk-YWNBUUBR.js";
24
+ import "./chunk-ITCDZXBZ.js";
26
25
 
27
26
  // src/cli/commands/bridge.ts
28
27
  var SURFACE = `cli:${DESCRIPTIONS.bridge.toolNames.cli}`;
@@ -54,4 +53,4 @@ var bridgeCommand = async (args) => {
54
53
  export {
55
54
  bridgeCommand
56
55
  };
57
- //# sourceMappingURL=bridge-55J4MKZR.js.map
56
+ //# sourceMappingURL=bridge-EXVM6MMU.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/cli/commands/bridge.ts"],"sourcesContent":["import {\n successResponse,\n fromNeverthrowError,\n outputAndExit,\n errorResponse,\n} from '@/cli/output';\n\nimport { bridge, bridgeSchema, type BridgeInput } from '@/operations/bridge';\nimport { DESCRIPTIONS } from '@/shared/descriptions';\nimport type { Command } from '@/types';\nimport { getWalletOrExit } from '../lib/get-wallet-or-exit';\n\nconst SURFACE = `cli:${DESCRIPTIONS.bridge.toolNames.cli}`;\n\nexport const bridgeCommand: Command<BridgeInput> = async args => {\n const wallets = await getWalletOrExit(args);\n\n const parsedArgs = bridgeSchema.safeParse(args);\n\n if (!parsedArgs.success) {\n return outputAndExit(\n errorResponse({\n code: 'INVALID_INPUT',\n message: parsedArgs.error.message,\n surface: SURFACE,\n cause: 'validation',\n }),\n args\n );\n }\n\n const bridgeResult = await bridge({ ...args, ...parsedArgs.data }, wallets);\n\n if (bridgeResult.isErr()) {\n return outputAndExit(fromNeverthrowError(bridgeResult), args);\n }\n\n return outputAndExit(\n successResponse({\n success: true,\n }),\n args\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,IAAM,UAAU,OAAO,aAAa,OAAO,UAAU,GAAG;AAEjD,IAAM,gBAAsC,OAAM,SAAQ;AAC/D,QAAM,UAAU,MAAM,gBAAgB,IAAI;AAE1C,QAAM,aAAa,aAAa,UAAU,IAAI;AAE9C,MAAI,CAAC,WAAW,SAAS;AACvB,WAAO;AAAA,MACL,cAAc;AAAA,QACZ,MAAM;AAAA,QACN,SAAS,WAAW,MAAM;AAAA,QAC1B,SAAS;AAAA,QACT,OAAO;AAAA,MACT,CAAC;AAAA,MACD;AAAA,IACF;AAAA,EACF;AAEA,QAAM,eAAe,MAAM,OAAO,EAAE,GAAG,MAAM,GAAG,WAAW,KAAK,GAAG,OAAO;AAE1E,MAAI,aAAa,MAAM,GAAG;AACxB,WAAO,cAAc,oBAAoB,YAAY,GAAG,IAAI;AAAA,EAC9D;AAEA,SAAO;AAAA,IACL,gBAAgB;AAAA,MACd,SAAS;AAAA,IACX,CAAC;AAAA,IACD;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../src/cli/commands/bridge.ts"],"sourcesContent":["import {\n successResponse,\n fromNeverthrowError,\n outputAndExit,\n errorResponse,\n} from '@/cli/output';\n\nimport { bridge, bridgeSchema, type BridgeInput } from '@/operations/bridge';\nimport { DESCRIPTIONS } from '@/shared/descriptions';\nimport type { Command } from '@/types';\nimport { getWalletOrExit } from '../lib/get-wallet-or-exit';\n\nconst SURFACE = `cli:${DESCRIPTIONS.bridge.toolNames.cli}`;\n\nexport const bridgeCommand: Command<BridgeInput> = async args => {\n const wallets = await getWalletOrExit(args);\n\n const parsedArgs = bridgeSchema.safeParse(args);\n\n if (!parsedArgs.success) {\n return outputAndExit(\n errorResponse({\n code: 'INVALID_INPUT',\n message: parsedArgs.error.message,\n surface: SURFACE,\n cause: 'validation',\n }),\n args\n );\n }\n\n const bridgeResult = await bridge({ ...args, ...parsedArgs.data }, wallets);\n\n if (bridgeResult.isErr()) {\n return outputAndExit(fromNeverthrowError(bridgeResult), args);\n }\n\n return outputAndExit(\n successResponse({\n success: true,\n }),\n args\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,IAAM,UAAU,OAAO,aAAa,OAAO,UAAU,GAAG;AAEjD,IAAM,gBAAsC,OAAM,SAAQ;AAC/D,QAAM,UAAU,MAAM,gBAAgB,IAAI;AAE1C,QAAM,aAAa,aAAa,UAAU,IAAI;AAE9C,MAAI,CAAC,WAAW,SAAS;AACvB,WAAO;AAAA,MACL,cAAc;AAAA,QACZ,MAAM;AAAA,QACN,SAAS,WAAW,MAAM;AAAA,QAC1B,SAAS;AAAA,QACT,OAAO;AAAA,MACT,CAAC;AAAA,MACD;AAAA,IACF;AAAA,EACF;AAEA,QAAM,eAAe,MAAM,OAAO,EAAE,GAAG,MAAM,GAAG,WAAW,KAAK,GAAG,OAAO;AAE1E,MAAI,aAAa,MAAM,GAAG;AACxB,WAAO,cAAc,oBAAoB,YAAY,GAAG,IAAI;AAAA,EAC9D;AAEA,SAAO;AAAA,IACL,gBAAgB;AAAA,MACd,SAAS;AAAA,IACX,CAAC;AAAA,IACD;AAAA,EACF;AACF;","names":[]}
@@ -1,32 +1,31 @@
1
1
  import {
2
2
  checkEndpoint
3
- } from "./chunk-DFHVSUHX.js";
3
+ } from "./chunk-5CMVFNXO.js";
4
4
  import {
5
5
  cliRequestSchema
6
- } from "./chunk-WUNL7OYW.js";
7
- import "./chunk-BQRFNAMV.js";
6
+ } from "./chunk-YUGBFY4H.js";
7
+ import "./chunk-VX6PPHSN.js";
8
+ import "./chunk-X2JUL4S3.js";
8
9
  import "./chunk-IKPLMFAK.js";
9
10
  import {
10
11
  RequestMethod
11
12
  } from "./chunk-LNJIXYCU.js";
12
13
  import {
13
14
  getWalletOrExit
14
- } from "./chunk-QOYH6AOG.js";
15
- import "./chunk-HFEYSQRZ.js";
15
+ } from "./chunk-7AT3NXJ2.js";
16
+ import "./chunk-F3KGAMIA.js";
16
17
  import "./chunk-NPJV7AMV.js";
17
- import "./chunk-LNQRIXFK.js";
18
- import "./chunk-Y4VZACTC.js";
19
- import "./chunk-EMQMCXIC.js";
20
- import "./chunk-VDBUUHJF.js";
21
- import "./chunk-ITCDZXBZ.js";
22
- import "./chunk-NROPRHIC.js";
18
+ import "./chunk-KVSTJRSJ.js";
23
19
  import "./chunk-FB5CMO3J.js";
24
20
  import {
25
21
  errorResponse,
26
22
  outputAndExit,
27
23
  successResponse
28
24
  } from "./chunk-7EBJ4BCH.js";
29
- import "./chunk-C7KWYVS3.js";
25
+ import "./chunk-QZCSZB7E.js";
26
+ import "./chunk-TTAO2EJK.js";
27
+ import "./chunk-YWNBUUBR.js";
28
+ import "./chunk-ITCDZXBZ.js";
30
29
 
31
30
  // src/cli/commands/check.ts
32
31
  import z from "zod";
@@ -70,4 +69,4 @@ var checkCommand = async (args) => {
70
69
  export {
71
70
  checkCommand
72
71
  };
73
- //# sourceMappingURL=check-V262JV5M.js.map
72
+ //# sourceMappingURL=check-LTH3BZYQ.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/cli/commands/check.ts"],"sourcesContent":["import z from 'zod';\n\nimport { successResponse, outputAndExit, errorResponse } from '@/cli/output';\n\nimport { checkEndpoint } from '@/operations/check-endpoint';\n\nimport { getWalletOrExit } from '../lib/get-wallet-or-exit';\n\nimport type { Command } from '@/types';\nimport { cliRequestSchema } from '@/shared/request/schemas/cli';\nimport { RequestMethod } from '@/shared/request/types';\n\nconst SURFACE = 'cli:check';\n\nexport const checkCommand: Command<\n z.input<typeof cliRequestSchema>\n> = async args => {\n const requestInput = cliRequestSchema\n .extend({\n method: z.enum(RequestMethod).optional(),\n })\n .safeParse(args);\n if (!requestInput.success) {\n return outputAndExit(\n errorResponse({\n code: 'INVALID_INPUT',\n message: requestInput.error.message,\n surface: SURFACE,\n cause: 'validation',\n }),\n args\n );\n }\n const wallets = await getWalletOrExit(args);\n\n const result = await checkEndpoint(SURFACE, requestInput.data, {\n wallets,\n flags: args,\n });\n\n if (!result.found) {\n return outputAndExit(\n successResponse({\n url: args.url,\n results: [],\n error: result.cause,\n message: result.message,\n }),\n args\n );\n }\n\n return outputAndExit(\n successResponse({ url: args.url, results: result.advisories }),\n args\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,OAAO;AAYd,IAAM,UAAU;AAET,IAAM,eAET,OAAM,SAAQ;AAChB,QAAM,eAAe,iBAClB,OAAO;AAAA,IACN,QAAQ,EAAE,KAAK,aAAa,EAAE,SAAS;AAAA,EACzC,CAAC,EACA,UAAU,IAAI;AACjB,MAAI,CAAC,aAAa,SAAS;AACzB,WAAO;AAAA,MACL,cAAc;AAAA,QACZ,MAAM;AAAA,QACN,SAAS,aAAa,MAAM;AAAA,QAC5B,SAAS;AAAA,QACT,OAAO;AAAA,MACT,CAAC;AAAA,MACD;AAAA,IACF;AAAA,EACF;AACA,QAAM,UAAU,MAAM,gBAAgB,IAAI;AAE1C,QAAM,SAAS,MAAM,cAAc,SAAS,aAAa,MAAM;AAAA,IAC7D;AAAA,IACA,OAAO;AAAA,EACT,CAAC;AAED,MAAI,CAAC,OAAO,OAAO;AACjB,WAAO;AAAA,MACL,gBAAgB;AAAA,QACd,KAAK,KAAK;AAAA,QACV,SAAS,CAAC;AAAA,QACV,OAAO,OAAO;AAAA,QACd,SAAS,OAAO;AAAA,MAClB,CAAC;AAAA,MACD;AAAA,IACF;AAAA,EACF;AAEA,SAAO;AAAA,IACL,gBAAgB,EAAE,KAAK,KAAK,KAAK,SAAS,OAAO,WAAW,CAAC;AAAA,IAC7D;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../src/cli/commands/check.ts"],"sourcesContent":["import z from 'zod';\n\nimport { successResponse, outputAndExit, errorResponse } from '@/cli/output';\n\nimport { checkEndpoint } from '@/operations/check-endpoint';\n\nimport { getWalletOrExit } from '../lib/get-wallet-or-exit';\n\nimport type { Command } from '@/types';\nimport { cliRequestSchema } from '@/shared/request/schemas/cli';\nimport { RequestMethod } from '@/shared/request/types';\n\nconst SURFACE = 'cli:check';\n\nexport const checkCommand: Command<\n z.input<typeof cliRequestSchema>\n> = async args => {\n const requestInput = cliRequestSchema\n .extend({\n method: z.enum(RequestMethod).optional(),\n })\n .safeParse(args);\n if (!requestInput.success) {\n return outputAndExit(\n errorResponse({\n code: 'INVALID_INPUT',\n message: requestInput.error.message,\n surface: SURFACE,\n cause: 'validation',\n }),\n args\n );\n }\n const wallets = await getWalletOrExit(args);\n\n const result = await checkEndpoint(SURFACE, requestInput.data, {\n wallets,\n flags: args,\n });\n\n if (!result.found) {\n return outputAndExit(\n successResponse({\n url: args.url,\n results: [],\n error: result.cause,\n message: result.message,\n }),\n args\n );\n }\n\n return outputAndExit(\n successResponse({ url: args.url, results: result.advisories }),\n args\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,OAAO;AAYd,IAAM,UAAU;AAET,IAAM,eAET,OAAM,SAAQ;AAChB,QAAM,eAAe,iBAClB,OAAO;AAAA,IACN,QAAQ,EAAE,KAAK,aAAa,EAAE,SAAS;AAAA,EACzC,CAAC,EACA,UAAU,IAAI;AACjB,MAAI,CAAC,aAAa,SAAS;AACzB,WAAO;AAAA,MACL,cAAc;AAAA,QACZ,MAAM;AAAA,QACN,SAAS,aAAa,MAAM;AAAA,QAC5B,SAAS;AAAA,QACT,OAAO;AAAA,MACT,CAAC;AAAA,MACD;AAAA,IACF;AAAA,EACF;AACA,QAAM,UAAU,MAAM,gBAAgB,IAAI;AAE1C,QAAM,SAAS,MAAM,cAAc,SAAS,aAAa,MAAM;AAAA,IAC7D;AAAA,IACA,OAAO;AAAA,EACT,CAAC;AAED,MAAI,CAAC,OAAO,OAAO;AACjB,WAAO;AAAA,MACL,gBAAgB;AAAA,QACd,KAAK,KAAK;AAAA,QACV,SAAS,CAAC;AAAA,QACV,OAAO,OAAO;AAAA,QACd,SAAS,OAAO;AAAA,MAClB,CAAC;AAAA,MACD;AAAA,IACF;AAAA,EACF;AAEA,SAAO;AAAA,IACL,gBAAgB,EAAE,KAAK,KAAK,KAAK,SAAS,OAAO,WAAW,CAAC;AAAA,IAC7D;AAAA,EACF;AACF;","names":[]}
@@ -4,10 +4,10 @@ import {
4
4
  import {
5
5
  safeParseJson,
6
6
  safeToJsonObject
7
- } from "./chunk-LNQRIXFK.js";
7
+ } from "./chunk-KVSTJRSJ.js";
8
8
  import {
9
9
  log
10
- } from "./chunk-Y4VZACTC.js";
10
+ } from "./chunk-QZCSZB7E.js";
11
11
 
12
12
  // src/operations/check-endpoint.ts
13
13
  import { checkEndpointSchema } from "@agentcash/discovery";
@@ -69,4 +69,4 @@ async function checkEndpoint(surface, requestInput, context) {
69
69
  export {
70
70
  checkEndpoint
71
71
  };
72
- //# sourceMappingURL=chunk-DFHVSUHX.js.map
72
+ //# sourceMappingURL=chunk-5CMVFNXO.js.map
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  MCP_VERSION
3
- } from "./chunk-X5AS5G23.js";
3
+ } from "./chunk-WRMSVC2R.js";
4
4
  import {
5
5
  getBaseUrl,
6
6
  safeFetchJson
7
- } from "./chunk-QZBSRYSW.js";
7
+ } from "./chunk-PBVLTOFS.js";
8
8
  import {
9
9
  ok
10
- } from "./chunk-C7KWYVS3.js";
10
+ } from "./chunk-YWNBUUBR.js";
11
11
 
12
12
  // src/operations/report-error.ts
13
13
  import { z } from "zod";
@@ -49,4 +49,4 @@ async function submitErrorReport(surface, input, address, dev) {
49
49
  export {
50
50
  submitErrorReport
51
51
  };
52
- //# sourceMappingURL=chunk-23OVF3MX.js.map
52
+ //# sourceMappingURL=chunk-5JBG33QY.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  getWallet
3
- } from "./chunk-HFEYSQRZ.js";
3
+ } from "./chunk-F3KGAMIA.js";
4
4
  import {
5
5
  fromNeverthrowError,
6
6
  outputAndExit
@@ -18,4 +18,4 @@ async function getWalletOrExit(flags) {
18
18
  export {
19
19
  getWalletOrExit
20
20
  };
21
- //# sourceMappingURL=chunk-QOYH6AOG.js.map
21
+ //# sourceMappingURL=chunk-7AT3NXJ2.js.map
@@ -1,18 +1,18 @@
1
1
  import {
2
2
  getState,
3
3
  setState
4
- } from "./chunk-6XGAIMNK.js";
5
- import {
6
- optionalNetworkSchema
7
- } from "./chunk-NPJV7AMV.js";
4
+ } from "./chunk-ISF2WVEZ.js";
8
5
  import {
9
6
  getBaseUrl,
10
7
  safeFetchJson
11
- } from "./chunk-QZBSRYSW.js";
8
+ } from "./chunk-PBVLTOFS.js";
9
+ import {
10
+ optionalNetworkSchema
11
+ } from "./chunk-NPJV7AMV.js";
12
12
  import {
13
13
  err,
14
14
  resultFromPromise
15
- } from "./chunk-C7KWYVS3.js";
15
+ } from "./chunk-YWNBUUBR.js";
16
16
 
17
17
  // src/shared/redeem-invite.ts
18
18
  import z from "zod";
@@ -85,4 +85,4 @@ var redeemInviteCode = async (surface, args, globalArgs, wallets) => {
85
85
  export {
86
86
  redeemInviteCode
87
87
  };
88
- //# sourceMappingURL=chunk-DPKUB6GL.js.map
88
+ //# sourceMappingURL=chunk-AWFBYDYO.js.map
@@ -1,34 +1,48 @@
1
1
  import {
2
2
  jsonErr,
3
3
  safeParseJson
4
- } from "./chunk-LNQRIXFK.js";
4
+ } from "./chunk-KVSTJRSJ.js";
5
5
  import {
6
6
  fsErr,
7
7
  log,
8
8
  safeChmod,
9
9
  safeReadFile,
10
10
  safeWriteFile
11
- } from "./chunk-Y4VZACTC.js";
12
- import {
13
- configFile
14
- } from "./chunk-VDBUUHJF.js";
15
- import {
16
- safeParse
17
- } from "./chunk-NROPRHIC.js";
11
+ } from "./chunk-QZCSZB7E.js";
18
12
  import {
13
+ configFile,
14
+ err,
19
15
  ok
20
- } from "./chunk-C7KWYVS3.js";
16
+ } from "./chunk-YWNBUUBR.js";
21
17
 
22
18
  // src/wallet/evm.ts
23
19
  import { existsSync } from "fs";
24
20
  import { getAddress } from "viem";
25
21
  import { generatePrivateKey, privateKeyToAccount } from "viem/accounts";
22
+ import z2 from "zod";
23
+
24
+ // src/shared/neverthrow/parse/index.ts
26
25
  import z from "zod";
26
+ var type = "json";
27
+ var parseErr = (surface, error) => err(type, surface, error);
28
+ var safeParse = (surface, schema, value) => {
29
+ const parseResult = schema.safeParse(value);
30
+ if (!parseResult.success) {
31
+ return parseErr(surface, {
32
+ cause: "invalid_data",
33
+ message: JSON.stringify(z.treeifyError(parseResult.error), null, 2),
34
+ error: parseResult.error
35
+ });
36
+ }
37
+ return ok(parseResult.data);
38
+ };
39
+
40
+ // src/wallet/evm.ts
27
41
  var WALLET_FILE = configFile("wallet.json");
28
- var storedWalletSchema = z.object({
29
- privateKey: z.string().regex(/^0x[a-fA-F0-9]{64}$/, "Invalid Ethereum private key").transform((privateKey) => privateKey),
30
- address: z.string().regex(/^0x[a-fA-F0-9]{40}$/, "Invalid Ethereum address").transform((address) => getAddress(address)),
31
- createdAt: z.string()
42
+ var storedWalletSchema = z2.object({
43
+ privateKey: z2.string().regex(/^0x[a-fA-F0-9]{64}$/, "Invalid Ethereum private key").transform((privateKey) => privateKey),
44
+ address: z2.string().regex(/^0x[a-fA-F0-9]{40}$/, "Invalid Ethereum address").transform((address) => getAddress(address)),
45
+ createdAt: z2.string()
32
46
  });
33
47
  var walletSurface = "wallet";
34
48
  async function getEvmWallet() {
@@ -97,12 +111,12 @@ import {
97
111
  } from "@solana/kit";
98
112
  import { getRandomValues } from "crypto";
99
113
  import { base58 } from "@scure/base";
100
- import z2 from "zod";
114
+ import z3 from "zod";
101
115
  var WALLET_FILE2 = configFile("solana-wallet.json");
102
- var storedWalletSchema2 = z2.object({
103
- privateKey: z2.string().regex(/^[1-9A-HJ-NP-Za-km-z]+$/, "Invalid base58 string"),
104
- address: z2.string().refine(isAddress, "Invalid Solana address"),
105
- createdAt: z2.string()
116
+ var storedWalletSchema2 = z3.object({
117
+ privateKey: z3.string().regex(/^[1-9A-HJ-NP-Za-km-z]+$/, "Invalid base58 string"),
118
+ address: z3.string().refine(isAddress, "Invalid Solana address"),
119
+ createdAt: z3.string()
106
120
  });
107
121
  var walletSurface2 = "wallet";
108
122
  async function getSvmWallet() {
@@ -185,6 +199,7 @@ var getWallet = async () => {
185
199
  };
186
200
 
187
201
  export {
202
+ safeParse,
188
203
  getWallet
189
204
  };
190
- //# sourceMappingURL=chunk-HFEYSQRZ.js.map
205
+ //# sourceMappingURL=chunk-F3KGAMIA.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/wallet/evm.ts","../../src/shared/neverthrow/parse/index.ts","../../src/wallet/svm.ts","../../src/wallet/index.ts"],"sourcesContent":["import { existsSync } from 'fs';\n\nimport { getAddress } from 'viem';\nimport { generatePrivateKey, privateKeyToAccount } from 'viem/accounts';\n\nimport z from 'zod';\n\nimport { ok } from '@agentcash/neverthrow';\n\nimport {\n fsErr,\n safeChmod,\n safeReadFile,\n safeWriteFile,\n} from '@/shared/neverthrow/fs';\nimport { jsonErr, safeParseJson } from '@/shared/neverthrow/json';\nimport { safeParse } from '@/shared/neverthrow/parse';\n\nimport { log } from '../shared/log';\nimport { configFile } from '../shared/fs';\n\nimport type { Hex } from 'viem';\n\nconst WALLET_FILE = configFile('wallet.json');\n\nconst storedWalletSchema = z.object({\n privateKey: z\n .string()\n .regex(/^0x[a-fA-F0-9]{64}$/, 'Invalid Ethereum private key')\n .transform(privateKey => privateKey as Hex),\n address: z\n .string()\n .regex(/^0x[a-fA-F0-9]{40}$/, 'Invalid Ethereum address')\n .transform(address => getAddress(address)),\n createdAt: z.string(),\n});\n\nconst walletSurface = 'wallet';\n\nexport async function getEvmWallet() {\n if (process.env.X402_PRIVATE_KEY) {\n const account = privateKeyToAccount(process.env.X402_PRIVATE_KEY as Hex);\n log.info(`Using wallet from env: ${account.address}`);\n return ok(account);\n }\n\n const readFileResult = await safeReadFile(walletSurface, WALLET_FILE);\n\n if (!readFileResult.isOk()) {\n const fileExistsResult = existsSync(WALLET_FILE);\n // file exists but is not readable\n if (fileExistsResult) {\n return fsErr(walletSurface, {\n cause: 'file_not_readable',\n message: `The file exists but is not readable. Fix corrupted state file: ${WALLET_FILE}`,\n });\n }\n }\n\n if (readFileResult.isOk()) {\n const data = readFileResult.value;\n const jsonParseResult = safeParseJson(walletSurface, data);\n\n // file exists but is not valid JSON\n if (jsonParseResult.isErr()) {\n return jsonErr(walletSurface, {\n cause: 'parse',\n message: `The data in ${WALLET_FILE} is not valid JSON`,\n });\n }\n\n const parseResult = safeParse(\n walletSurface,\n storedWalletSchema,\n jsonParseResult.value\n );\n\n // file has valid JSON but is not a valid wallet configuration\n if (parseResult.isErr()) {\n return parseResult;\n }\n\n const account = privateKeyToAccount(parseResult.value.privateKey);\n log.info(`Loaded wallet: ${account.address}`);\n return ok(account);\n }\n\n // Generate new\n const privateKey = generatePrivateKey();\n const account = privateKeyToAccount(privateKey);\n const stored = {\n privateKey,\n address: account.address,\n createdAt: new Date().toISOString(),\n };\n\n const saveResult = await safeWriteFile(\n walletSurface,\n WALLET_FILE,\n JSON.stringify(stored, null, 2)\n ).andThen(() => safeChmod(walletSurface, WALLET_FILE, 0o600));\n\n if (saveResult.isErr()) {\n return saveResult;\n }\n\n log.info(`Created wallet: ${account.address}`);\n log.info(`Saved to: ${WALLET_FILE}`);\n\n return ok(account);\n}\n","import z from 'zod';\n\nimport { err, ok } from '@agentcash/neverthrow';\n\nimport type { BaseParseError } from './types';\n\nconst type = 'json';\n\nconst parseErr = (surface: string, error: BaseParseError) =>\n err(type, surface, error);\n\nexport const safeParse = <T>(\n surface: string,\n schema: z.ZodSchema<T>,\n value: unknown\n) => {\n const parseResult = schema.safeParse(value);\n if (!parseResult.success) {\n return parseErr(surface, {\n cause: 'invalid_data',\n message: JSON.stringify(z.treeifyError(parseResult.error), null, 2),\n error: parseResult.error,\n });\n }\n return ok(parseResult.data);\n};\n","import { existsSync } from 'fs';\n\nimport {\n createKeyPairSignerFromBytes,\n isAddress,\n createKeyPairSignerFromPrivateKeyBytes,\n} from '@solana/kit';\n\nimport { getRandomValues } from 'crypto';\n\nimport { base58 } from '@scure/base';\n\nimport z from 'zod';\n\nimport { ok } from '@agentcash/neverthrow';\n\nimport {\n fsErr,\n safeChmod,\n safeReadFile,\n safeWriteFile,\n} from '@/shared/neverthrow/fs';\nimport { jsonErr, safeParseJson } from '@/shared/neverthrow/json';\nimport { safeParse } from '@/shared/neverthrow/parse';\n\nimport { log } from '../shared/log';\nimport { configFile } from '../shared/fs';\n\nconst WALLET_FILE = configFile('solana-wallet.json');\n\nconst storedWalletSchema = z.object({\n privateKey: z\n .string()\n .regex(/^[1-9A-HJ-NP-Za-km-z]+$/, 'Invalid base58 string'),\n address: z.string().refine(isAddress, 'Invalid Solana address'),\n createdAt: z.string(),\n});\n\nconst walletSurface = 'wallet';\n\nexport async function getSvmWallet() {\n if (process.env.X402_SOLANA_PRIVATE_KEY) {\n const account = await createKeyPairSignerFromBytes(\n base58.decode(process.env.X402_SOLANA_PRIVATE_KEY)\n );\n log.info(`Using wallet from env: ${account.address}`);\n return ok(account);\n }\n\n const readFileResult = await safeReadFile(walletSurface, WALLET_FILE);\n\n if (!readFileResult.isOk()) {\n const fileExistsResult = existsSync(WALLET_FILE);\n // file exists but is not readable\n if (fileExistsResult) {\n return fsErr(walletSurface, {\n cause: 'file_not_readable',\n message: `The file exists but is not readable. Fix corrupted state file: ${WALLET_FILE}`,\n });\n }\n }\n\n if (readFileResult.isOk()) {\n const data = readFileResult.value;\n const jsonParseResult = safeParseJson(walletSurface, data);\n\n // file exists but is not valid JSON\n if (jsonParseResult.isErr()) {\n return jsonErr(walletSurface, {\n cause: 'parse',\n message: `The data in ${WALLET_FILE} is not valid JSON`,\n });\n }\n\n const parseResult = safeParse(\n walletSurface,\n storedWalletSchema,\n jsonParseResult.value\n );\n\n // file has valid JSON but is not a valid wallet configuration\n if (parseResult.isErr()) {\n return parseResult;\n }\n\n const account = await createKeyPairSignerFromPrivateKeyBytes(\n base58.decode(parseResult.value.privateKey)\n );\n log.info(`Loaded wallet: ${account.address}`);\n return ok(account);\n }\n\n // Generate new\n const privateKeyBytes = getRandomValues(new Uint8Array(32));\n const account = await createKeyPairSignerFromPrivateKeyBytes(privateKeyBytes);\n const stored = {\n privateKey: base58.encode(privateKeyBytes),\n address: account.address,\n createdAt: new Date().toISOString(),\n };\n\n const saveResult = await safeWriteFile(\n walletSurface,\n WALLET_FILE,\n JSON.stringify(stored, null, 2)\n ).andThen(() => safeChmod(walletSurface, WALLET_FILE, 0o600));\n\n if (saveResult.isErr()) {\n return saveResult;\n }\n\n log.info(`Created wallet: ${account.address}`);\n log.info(`Saved to: ${WALLET_FILE}`);\n\n return ok(account);\n}\n","import { ok } from '@agentcash/neverthrow';\n\nimport { getEvmWallet } from './evm';\nimport { getSvmWallet } from './svm';\n\nimport type { OkValue } from '@agentcash/neverthrow/types';\n\nexport const getWallet = async () => {\n const [evmWallet, svmWallet] = await Promise.all([\n getEvmWallet(),\n getSvmWallet(),\n ]);\n\n if (evmWallet.isErr()) {\n return evmWallet;\n }\n\n if (svmWallet.isErr()) {\n return svmWallet;\n }\n\n return ok({\n evm: evmWallet.value,\n svm: svmWallet.value,\n });\n};\n\nexport type Wallets = OkValue<Awaited<ReturnType<typeof getWallet>>>;\n"],"mappings":"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","names":["z","z","account","existsSync","z","WALLET_FILE","storedWalletSchema","z","walletSurface","account","existsSync"]}
@@ -6,15 +6,15 @@ import {
6
6
  } from "./chunk-27DZCYDB.js";
7
7
  import {
8
8
  INSTALL_PACKAGE_SPECIFIER
9
- } from "./chunk-X5AS5G23.js";
9
+ } from "./chunk-WRMSVC2R.js";
10
10
  import {
11
11
  log,
12
12
  safeReadFile,
13
13
  safeWriteFile
14
- } from "./chunk-Y4VZACTC.js";
14
+ } from "./chunk-QZCSZB7E.js";
15
15
  import {
16
16
  resultFromThrowable
17
- } from "./chunk-C7KWYVS3.js";
17
+ } from "./chunk-YWNBUUBR.js";
18
18
 
19
19
  // src/cli/commands/install/2-add-server/index.ts
20
20
  import fs2 from "fs";
@@ -610,4 +610,4 @@ export {
610
610
  tryAddServer,
611
611
  addServer
612
612
  };
613
- //# sourceMappingURL=chunk-QLW6AJTF.js.map
613
+ //# sourceMappingURL=chunk-H3L6DHOH.js.map
@@ -1,3 +1,10 @@
1
+ import {
2
+ TOOL_PARAMS
3
+ } from "./chunk-X2JUL4S3.js";
4
+ import {
5
+ getBaseUrl,
6
+ safeFetchJson
7
+ } from "./chunk-PBVLTOFS.js";
1
8
  import {
2
9
  EVM_CONFIGS,
3
10
  chainId,
@@ -6,16 +13,9 @@ import {
6
13
  typedAddressSchema,
7
14
  usdc
8
15
  } from "./chunk-NPJV7AMV.js";
9
- import {
10
- TOOL_PARAMS
11
- } from "./chunk-EMQMCXIC.js";
12
- import {
13
- getBaseUrl,
14
- safeFetchJson
15
- } from "./chunk-QZBSRYSW.js";
16
16
  import {
17
17
  resultFromPromise
18
- } from "./chunk-C7KWYVS3.js";
18
+ } from "./chunk-YWNBUUBR.js";
19
19
 
20
20
  // src/operations/bridge.ts
21
21
  import z2 from "zod";
@@ -539,4 +539,4 @@ export {
539
539
  bridgeSchema,
540
540
  bridge
541
541
  };
542
- //# sourceMappingURL=chunk-EJDPIURX.js.map
542
+ //# sourceMappingURL=chunk-IL5RGDIX.js.map
@@ -1,36 +1,37 @@
1
1
  import {
2
2
  DEFAULT_MAX_AMOUNT,
3
3
  getSettings
4
- } from "./chunk-GKYODP7W.js";
4
+ } from "./chunk-JX2XE6FD.js";
5
5
  import {
6
6
  buildRequest
7
7
  } from "./chunk-IKPLMFAK.js";
8
8
  import {
9
9
  getBalance
10
- } from "./chunk-DJLERI6R.js";
10
+ } from "./chunk-MYWE3P7R.js";
11
11
  import {
12
+ fetchErr,
13
+ fetchOk,
14
+ getDepositLink,
15
+ safeFetch,
16
+ tokenStringToNumber
17
+ } from "./chunk-PBVLTOFS.js";
18
+ import {
19
+ EVM_CONFIGS,
12
20
  caip2ToNetwork,
13
21
  networkToCaip2
14
22
  } from "./chunk-NPJV7AMV.js";
15
23
  import {
16
24
  log
17
- } from "./chunk-Y4VZACTC.js";
25
+ } from "./chunk-QZCSZB7E.js";
18
26
  import {
19
27
  BLACKLISTED_ORIGINS
20
- } from "./chunk-EMQMCXIC.js";
21
- import {
22
- fetchErr,
23
- fetchOk,
24
- getDepositLink,
25
- safeFetch,
26
- tokenStringToNumber
27
- } from "./chunk-QZBSRYSW.js";
28
+ } from "./chunk-TTAO2EJK.js";
28
29
  import {
29
30
  err,
30
31
  ok,
31
32
  resultFromPromise,
32
33
  resultFromThrowable
33
- } from "./chunk-C7KWYVS3.js";
34
+ } from "./chunk-YWNBUUBR.js";
34
35
 
35
36
  // src/operations/fetch/auth.ts
36
37
  import { encodeSIWxHeader } from "@x402/extensions/sign-in-with-x";
@@ -470,6 +471,13 @@ async function handleMppPayment({
470
471
  const challenge = challengeResult.value;
471
472
  const amount = Number(formatUnits(BigInt(challenge.request.amount), 6));
472
473
  const tokenAddress = challenge.request.currency;
474
+ const expectedToken = EVM_CONFIGS["tempo" /* TEMPO */].usdcAddress.toLowerCase();
475
+ if (tokenAddress.toLowerCase() !== expectedToken) {
476
+ return mppErr(surface, {
477
+ cause: "unsupported_token",
478
+ message: `Endpoint requires payment in token ${tokenAddress} on Tempo, but agentcash only supports ${EVM_CONFIGS["tempo" /* TEMPO */].usdcAddress}. The endpoint may be configured for a different token (e.g. PathUSD vs USDC).`
479
+ });
480
+ }
473
481
  const beforePaymentResult = await beforePayment({
474
482
  options,
475
483
  balanceInput: {
@@ -493,23 +501,34 @@ async function handleMppPayment({
493
501
  }
494
502
  const credential = credentialResult.value;
495
503
  request.headers.set("Authorization", credential);
496
- return await safeFetch(surface, request, timeout).andThen((paidResponse) => {
497
- const receiptResult = safeGetMppReceipt(surface, paidResponse);
498
- return mppOk({
499
- response: paidResponse,
500
- paymentInfo: {
501
- protocol: "mpp" /* MPP */,
502
- network: "tempo" /* TEMPO */,
503
- price: amount.toLocaleString("en-US", {
504
- style: "currency",
505
- currency: "USD"
506
- }),
507
- payment: receiptResult.isOk() ? {
508
- success: true,
509
- transactionHash: receiptResult.value.reference
510
- } : null
511
- }
504
+ const paidFetchResult = await safeFetch(surface, request, timeout);
505
+ if (paidFetchResult.isErr()) {
506
+ return paidFetchResult;
507
+ }
508
+ const paidResponse = paidFetchResult.value;
509
+ if (paidResponse.status === 402) {
510
+ const body = await paidResponse.clone().text().catch(() => "");
511
+ const detail = body ? `: ${body}` : "";
512
+ return mppErr(surface, {
513
+ cause: "mpp_payment_rejected",
514
+ message: `MPP payment was rejected by the server (402)${detail}`
512
515
  });
516
+ }
517
+ const receiptResult = safeGetMppReceipt(surface, paidResponse);
518
+ return mppOk({
519
+ response: paidResponse,
520
+ paymentInfo: {
521
+ protocol: "mpp" /* MPP */,
522
+ network: "tempo" /* TEMPO */,
523
+ price: amount.toLocaleString("en-US", {
524
+ style: "currency",
525
+ currency: "USD"
526
+ }),
527
+ payment: receiptResult.isOk() ? {
528
+ success: true,
529
+ transactionHash: receiptResult.value.reference
530
+ } : null
531
+ }
513
532
  });
514
533
  }
515
534
 
@@ -794,4 +813,4 @@ async function executeFetch(input, options) {
794
813
  export {
795
814
  executeFetch
796
815
  };
797
- //# sourceMappingURL=chunk-Q5SPIJGE.js.map
816
+ //# sourceMappingURL=chunk-IPBR36VR.js.map