arc402-cli 1.0.0-rc.1 → 1.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 (257) hide show
  1. package/README.md +43 -2
  2. package/dist/abis.d.ts +1 -0
  3. package/dist/abis.d.ts.map +1 -1
  4. package/dist/abis.js +29 -1
  5. package/dist/abis.js.map +1 -1
  6. package/dist/commands/backup.d.ts +3 -0
  7. package/dist/commands/backup.d.ts.map +1 -0
  8. package/dist/commands/backup.js +106 -0
  9. package/dist/commands/backup.js.map +1 -0
  10. package/dist/commands/compute.d.ts +14 -0
  11. package/dist/commands/compute.d.ts.map +1 -0
  12. package/dist/commands/compute.js +466 -0
  13. package/dist/commands/compute.js.map +1 -0
  14. package/dist/commands/config.d.ts.map +1 -1
  15. package/dist/commands/config.js +11 -1
  16. package/dist/commands/config.js.map +1 -1
  17. package/dist/commands/daemon.d.ts.map +1 -1
  18. package/dist/commands/daemon.js +67 -0
  19. package/dist/commands/daemon.js.map +1 -1
  20. package/dist/commands/discover.d.ts.map +1 -1
  21. package/dist/commands/discover.js +60 -15
  22. package/dist/commands/discover.js.map +1 -1
  23. package/dist/commands/doctor.d.ts +3 -0
  24. package/dist/commands/doctor.d.ts.map +1 -0
  25. package/dist/commands/doctor.js +205 -0
  26. package/dist/commands/doctor.js.map +1 -0
  27. package/dist/commands/tunnel.d.ts +3 -0
  28. package/dist/commands/tunnel.d.ts.map +1 -0
  29. package/dist/commands/tunnel.js +281 -0
  30. package/dist/commands/tunnel.js.map +1 -0
  31. package/dist/commands/wallet.d.ts.map +1 -1
  32. package/dist/commands/wallet.js +299 -65
  33. package/dist/commands/wallet.js.map +1 -1
  34. package/dist/commands/watch.d.ts.map +1 -1
  35. package/dist/commands/watch.js +146 -9
  36. package/dist/commands/watch.js.map +1 -1
  37. package/dist/commands/workroom.d.ts.map +1 -1
  38. package/dist/commands/workroom.js +112 -6
  39. package/dist/commands/workroom.js.map +1 -1
  40. package/dist/config.d.ts +13 -0
  41. package/dist/config.d.ts.map +1 -1
  42. package/dist/config.js +41 -4
  43. package/dist/config.js.map +1 -1
  44. package/dist/daemon/compute-metering.d.ts +61 -0
  45. package/dist/daemon/compute-metering.d.ts.map +1 -0
  46. package/dist/daemon/compute-metering.js +299 -0
  47. package/dist/daemon/compute-metering.js.map +1 -0
  48. package/dist/daemon/compute-session.d.ts +100 -0
  49. package/dist/daemon/compute-session.d.ts.map +1 -0
  50. package/dist/daemon/compute-session.js +231 -0
  51. package/dist/daemon/compute-session.js.map +1 -0
  52. package/dist/daemon/config.d.ts +33 -1
  53. package/dist/daemon/config.d.ts.map +1 -1
  54. package/dist/daemon/config.js +69 -0
  55. package/dist/daemon/config.js.map +1 -1
  56. package/dist/daemon/credentials.d.ts +24 -0
  57. package/dist/daemon/credentials.d.ts.map +1 -0
  58. package/dist/daemon/credentials.js +80 -0
  59. package/dist/daemon/credentials.js.map +1 -0
  60. package/dist/daemon/delivery-client.d.ts +35 -0
  61. package/dist/daemon/delivery-client.d.ts.map +1 -0
  62. package/dist/daemon/delivery-client.js +231 -0
  63. package/dist/daemon/delivery-client.js.map +1 -0
  64. package/dist/daemon/file-delivery.d.ts +98 -0
  65. package/dist/daemon/file-delivery.d.ts.map +1 -0
  66. package/dist/daemon/file-delivery.js +461 -0
  67. package/dist/daemon/file-delivery.js.map +1 -0
  68. package/dist/daemon/index.d.ts +1 -0
  69. package/dist/daemon/index.d.ts.map +1 -1
  70. package/dist/daemon/index.js +793 -227
  71. package/dist/daemon/index.js.map +1 -1
  72. package/dist/daemon/notify.d.ts +35 -6
  73. package/dist/daemon/notify.d.ts.map +1 -1
  74. package/dist/daemon/notify.js +176 -48
  75. package/dist/daemon/notify.js.map +1 -1
  76. package/dist/daemon/worker-executor.d.ts +71 -0
  77. package/dist/daemon/worker-executor.d.ts.map +1 -0
  78. package/dist/daemon/worker-executor.js +382 -0
  79. package/dist/daemon/worker-executor.js.map +1 -0
  80. package/dist/drain-v4.js +2 -2
  81. package/dist/drain-v4.js.map +1 -1
  82. package/dist/endpoint-notify.d.ts +9 -1
  83. package/dist/endpoint-notify.d.ts.map +1 -1
  84. package/dist/endpoint-notify.js +116 -3
  85. package/dist/endpoint-notify.js.map +1 -1
  86. package/dist/index.js +81 -1
  87. package/dist/index.js.map +1 -1
  88. package/dist/program.d.ts.map +1 -1
  89. package/dist/program.js +8 -0
  90. package/dist/program.js.map +1 -1
  91. package/dist/repl.d.ts.map +1 -1
  92. package/dist/repl.js +69 -486
  93. package/dist/repl.js.map +1 -1
  94. package/dist/tui/App.d.ts +12 -0
  95. package/dist/tui/App.d.ts.map +1 -0
  96. package/dist/tui/App.js +154 -0
  97. package/dist/tui/App.js.map +1 -0
  98. package/dist/tui/Footer.d.ts +11 -0
  99. package/dist/tui/Footer.d.ts.map +1 -0
  100. package/dist/tui/Footer.js +13 -0
  101. package/dist/tui/Footer.js.map +1 -0
  102. package/dist/tui/Header.d.ts +14 -0
  103. package/dist/tui/Header.d.ts.map +1 -0
  104. package/dist/tui/Header.js +19 -0
  105. package/dist/tui/Header.js.map +1 -0
  106. package/dist/tui/InputLine.d.ts +11 -0
  107. package/dist/tui/InputLine.d.ts.map +1 -0
  108. package/dist/tui/InputLine.js +145 -0
  109. package/dist/tui/InputLine.js.map +1 -0
  110. package/dist/tui/Viewport.d.ts +14 -0
  111. package/dist/tui/Viewport.d.ts.map +1 -0
  112. package/dist/tui/Viewport.js +48 -0
  113. package/dist/tui/Viewport.js.map +1 -0
  114. package/dist/tui/WalletConnectPairing.d.ts +23 -0
  115. package/dist/tui/WalletConnectPairing.d.ts.map +1 -0
  116. package/dist/tui/WalletConnectPairing.js +61 -0
  117. package/dist/tui/WalletConnectPairing.js.map +1 -0
  118. package/dist/tui/components/Button.d.ts +7 -0
  119. package/dist/tui/components/Button.d.ts.map +1 -0
  120. package/dist/tui/components/Button.js +21 -0
  121. package/dist/tui/components/Button.js.map +1 -0
  122. package/dist/tui/components/CeremonyView.d.ts +13 -0
  123. package/dist/tui/components/CeremonyView.d.ts.map +1 -0
  124. package/dist/tui/components/CeremonyView.js +10 -0
  125. package/dist/tui/components/CeremonyView.js.map +1 -0
  126. package/dist/tui/components/CompletionDropdown.d.ts +7 -0
  127. package/dist/tui/components/CompletionDropdown.d.ts.map +1 -0
  128. package/dist/tui/components/CompletionDropdown.js +23 -0
  129. package/dist/tui/components/CompletionDropdown.js.map +1 -0
  130. package/dist/tui/components/ConfirmPrompt.d.ts +9 -0
  131. package/dist/tui/components/ConfirmPrompt.d.ts.map +1 -0
  132. package/dist/tui/components/ConfirmPrompt.js +10 -0
  133. package/dist/tui/components/ConfirmPrompt.js.map +1 -0
  134. package/dist/tui/components/CustomTextInput.d.ts +15 -0
  135. package/dist/tui/components/CustomTextInput.d.ts.map +1 -0
  136. package/dist/tui/components/CustomTextInput.js +99 -0
  137. package/dist/tui/components/CustomTextInput.js.map +1 -0
  138. package/dist/tui/components/InteractiveTable.d.ts +14 -0
  139. package/dist/tui/components/InteractiveTable.d.ts.map +1 -0
  140. package/dist/tui/components/InteractiveTable.js +61 -0
  141. package/dist/tui/components/InteractiveTable.js.map +1 -0
  142. package/dist/tui/components/StepSpinner.d.ts +11 -0
  143. package/dist/tui/components/StepSpinner.d.ts.map +1 -0
  144. package/dist/tui/components/StepSpinner.js +32 -0
  145. package/dist/tui/components/StepSpinner.js.map +1 -0
  146. package/dist/tui/components/Toast.d.ts +18 -0
  147. package/dist/tui/components/Toast.d.ts.map +1 -0
  148. package/dist/tui/components/Toast.js +29 -0
  149. package/dist/tui/components/Toast.js.map +1 -0
  150. package/dist/tui/index.d.ts +2 -0
  151. package/dist/tui/index.d.ts.map +1 -0
  152. package/dist/tui/index.js +55 -0
  153. package/dist/tui/index.js.map +1 -0
  154. package/dist/tui/useChat.d.ts +11 -0
  155. package/dist/tui/useChat.d.ts.map +1 -0
  156. package/dist/tui/useChat.js +91 -0
  157. package/dist/tui/useChat.js.map +1 -0
  158. package/dist/tui/useCommand.d.ts +12 -0
  159. package/dist/tui/useCommand.d.ts.map +1 -0
  160. package/dist/tui/useCommand.js +137 -0
  161. package/dist/tui/useCommand.js.map +1 -0
  162. package/dist/tui/useNotifications.d.ts +9 -0
  163. package/dist/tui/useNotifications.d.ts.map +1 -0
  164. package/dist/tui/useNotifications.js +17 -0
  165. package/dist/tui/useNotifications.js.map +1 -0
  166. package/dist/tui/useScroll.d.ts +17 -0
  167. package/dist/tui/useScroll.d.ts.map +1 -0
  168. package/dist/tui/useScroll.js +46 -0
  169. package/dist/tui/useScroll.js.map +1 -0
  170. package/dist/ui/format.d.ts.map +1 -1
  171. package/dist/ui/format.js +2 -0
  172. package/dist/ui/format.js.map +1 -1
  173. package/dist/ui/qr-render.d.ts +25 -0
  174. package/dist/ui/qr-render.d.ts.map +1 -0
  175. package/dist/ui/qr-render.js +90 -0
  176. package/dist/ui/qr-render.js.map +1 -0
  177. package/dist/ui/rpc-fallback.d.ts +11 -0
  178. package/dist/ui/rpc-fallback.d.ts.map +1 -0
  179. package/dist/ui/rpc-fallback.js +58 -0
  180. package/dist/ui/rpc-fallback.js.map +1 -0
  181. package/dist/walletconnect.d.ts +4 -0
  182. package/dist/walletconnect.d.ts.map +1 -1
  183. package/dist/walletconnect.js.map +1 -1
  184. package/package.json +11 -3
  185. package/scripts/authorize-machine-key.ts +0 -43
  186. package/scripts/drain-wallet.ts +0 -149
  187. package/scripts/execute-spend-only.ts +0 -81
  188. package/scripts/register-agent-userop.ts +0 -186
  189. package/src/abis.ts +0 -187
  190. package/src/bundler.ts +0 -235
  191. package/src/client.ts +0 -36
  192. package/src/coinbase-smart-wallet.ts +0 -51
  193. package/src/commands/accept.ts +0 -64
  194. package/src/commands/agent-handshake.ts +0 -72
  195. package/src/commands/agent.ts +0 -691
  196. package/src/commands/agreements.ts +0 -350
  197. package/src/commands/arbitrator.ts +0 -180
  198. package/src/commands/arena-handshake.ts +0 -257
  199. package/src/commands/arena.ts +0 -122
  200. package/src/commands/cancel.ts +0 -35
  201. package/src/commands/channel.ts +0 -218
  202. package/src/commands/coldstart.ts +0 -165
  203. package/src/commands/config.ts +0 -58
  204. package/src/commands/contract-interaction.ts +0 -166
  205. package/src/commands/daemon.ts +0 -978
  206. package/src/commands/deliver.ts +0 -148
  207. package/src/commands/discover.ts +0 -297
  208. package/src/commands/dispute.ts +0 -375
  209. package/src/commands/endpoint.ts +0 -620
  210. package/src/commands/feed.ts +0 -229
  211. package/src/commands/hire.ts +0 -245
  212. package/src/commands/migrate.ts +0 -177
  213. package/src/commands/negotiate.ts +0 -271
  214. package/src/commands/openshell.ts +0 -1055
  215. package/src/commands/owner.ts +0 -35
  216. package/src/commands/policy.ts +0 -263
  217. package/src/commands/relay.ts +0 -273
  218. package/src/commands/remediate.ts +0 -24
  219. package/src/commands/reputation.ts +0 -79
  220. package/src/commands/setup.ts +0 -343
  221. package/src/commands/trust.ts +0 -27
  222. package/src/commands/verify.ts +0 -91
  223. package/src/commands/wallet.ts +0 -3280
  224. package/src/commands/watch.ts +0 -23
  225. package/src/commands/watchtower.ts +0 -248
  226. package/src/commands/workroom.ts +0 -959
  227. package/src/config.ts +0 -174
  228. package/src/daemon/config.ts +0 -308
  229. package/src/daemon/hire-listener.ts +0 -226
  230. package/src/daemon/index.ts +0 -955
  231. package/src/daemon/job-lifecycle.ts +0 -215
  232. package/src/daemon/notify.ts +0 -157
  233. package/src/daemon/token-metering.ts +0 -183
  234. package/src/daemon/userops.ts +0 -119
  235. package/src/daemon/wallet-monitor.ts +0 -90
  236. package/src/drain-v4.ts +0 -159
  237. package/src/endpoint-config.ts +0 -83
  238. package/src/endpoint-notify.ts +0 -46
  239. package/src/index.ts +0 -26
  240. package/src/openshell-runtime.ts +0 -277
  241. package/src/program.ts +0 -83
  242. package/src/repl.ts +0 -680
  243. package/src/signing.ts +0 -28
  244. package/src/telegram-notify.ts +0 -88
  245. package/src/ui/banner.ts +0 -51
  246. package/src/ui/colors.ts +0 -30
  247. package/src/ui/format.ts +0 -77
  248. package/src/ui/spinner.ts +0 -56
  249. package/src/ui/tree.ts +0 -16
  250. package/src/utils/format.ts +0 -48
  251. package/src/utils/hash.ts +0 -5
  252. package/src/utils/time.ts +0 -15
  253. package/src/wallet-router.ts +0 -178
  254. package/src/walletconnect-session.ts +0 -27
  255. package/src/walletconnect.ts +0 -294
  256. package/test/time.test.js +0 -11
  257. package/tsconfig.json +0 -19
@@ -5,6 +5,10 @@ export type TelegramOpts = {
5
5
  chatId: string;
6
6
  threadId?: number;
7
7
  };
8
+ export type WCCallbacks = {
9
+ onUri: (uri: string, links: Record<string, string>) => void;
10
+ onStatus: (status: "connecting" | "connected" | "chain-switching" | "ready" | "error", detail?: string) => void;
11
+ };
8
12
  type SignClientT = Awaited<ReturnType<typeof SignClient.init>>;
9
13
  type WCSession = ReturnType<SignClientT["session"]["get"]>;
10
14
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"walletconnect.d.ts","sourceRoot":"","sources":["../src/walletconnect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAKxD,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAWxC,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAGF,KAAK,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/D,KAAK,SAAS,GAAG,UAAU,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AA2B3D;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,YAAY,EACpB,IAAI,CAAC,EAAE;IAAE,YAAY,CAAC,EAAE,YAAY,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,GAC1E,OAAO,CAAC;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CA+HvE;AAED;;;GAGG;AACH,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,SAAS,EAClB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,EAAE,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAC/C,OAAO,CAAC,MAAM,CAAC,CASjB;AAED;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,EAC1E,MAAM,EAAE,MAAM,EACd,YAAY,CAAC,EAAE,YAAY,EAC3B,MAAM,CAAC,EAAE,YAAY,GACpB,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAuE9C"}
1
+ {"version":3,"file":"walletconnect.d.ts","sourceRoot":"","sources":["../src/walletconnect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAKxD,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAWxC,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC;IAC5D,QAAQ,EAAE,CAAC,MAAM,EAAE,YAAY,GAAG,WAAW,GAAG,iBAAiB,GAAG,OAAO,GAAG,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CACjH,CAAC;AAGF,KAAK,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/D,KAAK,SAAS,GAAG,UAAU,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AA2B3D;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,YAAY,EACpB,IAAI,CAAC,EAAE;IAAE,YAAY,CAAC,EAAE,YAAY,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,GAC1E,OAAO,CAAC;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CA+HvE;AAED;;;GAGG;AACH,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,SAAS,EAClB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,EAAE,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAC/C,OAAO,CAAC,MAAM,CAAC,CASjB;AAED;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,EAC1E,MAAM,EAAE,MAAM,EACd,YAAY,CAAC,EAAE,YAAY,EAC3B,MAAM,CAAC,EAAE,YAAY,GACpB,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAuE9C"}
@@ -1 +1 @@
1
- {"version":3,"file":"walletconnect.js","sourceRoot":"","sources":["../src/walletconnect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"walletconnect.js","sourceRoot":"","sources":["../src/walletconnect.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,19 +1,24 @@
1
1
  {
2
2
  "name": "arc402-cli",
3
- "version": "1.0.0-rc.1",
3
+ "version": "1.1.0",
4
4
  "description": "ARC-402 CLI for discovery, negotiation payloads, hire/remediation/dispute workflows, and network reads",
5
5
  "bin": {
6
6
  "arc402": "./dist/index.js"
7
7
  },
8
8
  "main": "./dist/index.js",
9
+ "files": [
10
+ "dist/",
11
+ "../workroom/credentials.template.toml"
12
+ ],
9
13
  "scripts": {
10
14
  "build": "tsc",
11
15
  "test": "node --test test/**/*.test.js"
12
16
  },
13
17
  "dependencies": {
14
- "@arc402/sdk": "^0.3.1",
18
+ "@arc402/sdk": "^0.4.0",
15
19
  "@coinbase/wallet-sdk": "^4.3.7",
16
20
  "@types/better-sqlite3": "^7.6.13",
21
+ "@types/react": "^18.3.28",
17
22
  "@walletconnect/keyvaluestorage": "^1.1.1",
18
23
  "@walletconnect/sign-client": "^2.17.4",
19
24
  "better-sqlite3": "^12.8.0",
@@ -21,10 +26,13 @@
21
26
  "cli-table3": "^0.6.3",
22
27
  "commander": "^12.1.0",
23
28
  "ethers": "^6.13.4",
29
+ "ink": "^6.8.0",
30
+ "ink-text-input": "^4.0.3",
24
31
  "jose": "^6.2.1",
25
32
  "ora": "^8.1.1",
26
33
  "prompts": "^2.4.2",
27
34
  "qrcode-terminal": "^0.12.0",
35
+ "react": "^18.3.1",
28
36
  "smol-toml": "^1.6.0",
29
37
  "tweetnacl": "^1.0.3",
30
38
  "yaml": "^2.8.2"
@@ -35,4 +43,4 @@
35
43
  "@types/qrcode-terminal": "^0.12.2",
36
44
  "typescript": "^5.4.5"
37
45
  }
38
- }
46
+ }
@@ -1,43 +0,0 @@
1
- import { ethers } from "ethers";
2
- import { loadConfig } from "../src/config";
3
- import { connectPhoneWallet, sendTransactionWithSession } from "../src/walletconnect";
4
-
5
- const WALLET = "0xC3207bFe22cba39AeC4e8540c97c29B028103c7F";
6
- const HOT_KEY = "0x747024C2e59C523E3B1621A4b3F92366C1E28A30";
7
- const CHAIN_ID = 8453;
8
-
9
- async function main() {
10
- const config = loadConfig();
11
- const iface = new ethers.Interface(["function authorizeMachineKey(address key) external"]);
12
-
13
- const tx = {
14
- to: WALLET,
15
- data: iface.encodeFunctionData("authorizeMachineKey", [HOT_KEY]),
16
- value: "0x0",
17
- };
18
-
19
- const tgOpts = {
20
- botToken: config.telegramBotToken!,
21
- chatId: config.telegramChatId!,
22
- threadId: config.telegramThreadId,
23
- };
24
-
25
- console.log(`Authorizing hot key ${HOT_KEY} as machine key on ${WALLET}\n`);
26
-
27
- const { client, session, account } = await connectPhoneWallet(
28
- config.walletConnectProjectId!,
29
- CHAIN_ID,
30
- config,
31
- {
32
- telegramOpts: tgOpts,
33
- prompt: "⛓ BASE — authorizeMachineKey (one-time). After this the hot key runs autonomously.",
34
- }
35
- );
36
-
37
- console.log("Connected:", account);
38
- const hash = await sendTransactionWithSession(client, session, account, CHAIN_ID, tx);
39
- console.log("✅ Done:", hash);
40
- process.exit(0);
41
- }
42
-
43
- main().catch(e => { console.error(e.message ?? e); process.exit(1); });
@@ -1,149 +0,0 @@
1
- /**
2
- * drain-wallet.ts
3
- * Drain all ETH from the ARC402Wallet contract to the deployer wallet.
4
- * Uses WalletConnect — sends MetaMask approval button to Telegram.
5
- *
6
- * Flow:
7
- * 1. Read wallet balance
8
- * 2. Build openContext + attest + executeSpend calldata
9
- * 3. Connect via WalletConnect (sends Telegram button)
10
- * 4. Send all 3 txs sequentially for owner approval
11
- */
12
-
13
- import { ethers } from "ethers";
14
- import { loadConfig } from "../src/config";
15
- import { connectPhoneWallet, sendTransactionWithSession } from "../src/walletconnect";
16
-
17
- const DEPLOYER = "0x59A32A792d0f25B0E0a4A4aFbFDf514b94B102fB";
18
- const WALLET = "0xC3207bFe22cba39AeC4e8540c97c29B028103c7F";
19
- const RPC = "https://base-mainnet.g.alchemy.com/v2/YIA2uRCsFI-j5pqH-aRzflrACSlV1Qrs";
20
- const CHAIN_ID = 8453;
21
-
22
- const WALLET_ABI = [
23
- "function openContext(bytes32 contextId, string calldata taskType) external",
24
- "function closeContext() external",
25
- "function attest(bytes32 attestationId, string calldata action, string calldata reason, address recipient, uint256 amount, address token, uint256 expiresAt) external returns (bytes32)",
26
- "function executeSpend(address payable recipient, uint256 amount, string calldata category, bytes32 attestationId) external",
27
- "function contextOpen() external view returns (bool)",
28
- ];
29
-
30
- async function main() {
31
- const config = loadConfig();
32
-
33
- const balance = await new ethers.JsonRpcProvider(RPC).getBalance(WALLET);
34
-
35
- if (balance === 0n) {
36
- console.log("Wallet is already empty.");
37
- process.exit(0);
38
- }
39
-
40
- // Reserve gas for 3 transactions (~300k gas @ ~0.01 gwei = ~0.003 ETH buffer)
41
- const gasReserve = ethers.parseEther("0.0001");
42
- const sendAmount = balance - gasReserve;
43
-
44
- if (sendAmount <= 0n) {
45
- console.log(`Balance too low to drain safely: ${ethers.formatEther(balance)} ETH`);
46
- process.exit(0);
47
- }
48
-
49
- console.log(`\nDraining ${ethers.formatEther(sendAmount)} ETH from wallet contract`);
50
- console.log(` From: ${WALLET}`);
51
- console.log(` To: ${DEPLOYER}\n`);
52
-
53
- const iface = new ethers.Interface(WALLET_ABI);
54
-
55
- const contextId = ethers.keccak256(ethers.toUtf8Bytes(`drain-${Date.now()}`));
56
- const attestId = ethers.keccak256(ethers.toUtf8Bytes(`attest-${Date.now()}`));
57
- const expiresAt = Math.floor(Date.now() / 1000) + 3600; // 1 hour
58
-
59
- // Close any existing open context first (from prior partial run)
60
- const provider = new ethers.JsonRpcProvider(RPC);
61
- const contextOpenRaw = await provider.call({ to: WALLET, data: iface.encodeFunctionData("contextOpen") });
62
- const contextAlreadyOpen = ethers.AbiCoder.defaultAbiCoder().decode(["bool"], contextOpenRaw)[0];
63
-
64
- const txCloseContext = contextAlreadyOpen ? {
65
- to: WALLET,
66
- data: iface.encodeFunctionData("closeContext"),
67
- value: "0x0",
68
- } : null;
69
-
70
- const txOpenContext = {
71
- to: WALLET,
72
- data: iface.encodeFunctionData("openContext", [contextId, "drain"]),
73
- value: "0x0",
74
- };
75
-
76
- const txAttest = {
77
- to: WALLET,
78
- data: iface.encodeFunctionData("attest", [
79
- attestId,
80
- "drain",
81
- "drain to deployer",
82
- DEPLOYER,
83
- sendAmount,
84
- ethers.ZeroAddress,
85
- expiresAt,
86
- ]),
87
- value: "0x0",
88
- };
89
-
90
- const txSpend = {
91
- to: WALLET,
92
- data: iface.encodeFunctionData("executeSpend", [
93
- DEPLOYER,
94
- sendAmount,
95
- "drain",
96
- attestId,
97
- ]),
98
- value: "0x0",
99
- };
100
-
101
- const tgOpts = {
102
- botToken: config.telegramBotToken!,
103
- chatId: config.telegramChatId!,
104
- threadId: config.telegramThreadId,
105
- };
106
-
107
- console.log("Connecting WalletConnect — fresh session, Base network enforced...\n");
108
-
109
- const { client, session, account } = await connectPhoneWallet(
110
- config.walletConnectProjectId!,
111
- CHAIN_ID,
112
- config,
113
- {
114
- telegramOpts: tgOpts,
115
- prompt: `⛓ BASE NETWORK ONLY\nApprove drain of ${ethers.formatEther(sendAmount)} ETH → deployer wallet\n\n⚠️ Make sure MetaMask is on BASE before approving`,
116
- }
117
- );
118
-
119
- console.log(`\nConnected: ${account}`);
120
-
121
- let txCount = 1;
122
- const total = (txCloseContext ? 4 : 3);
123
-
124
- if (txCloseContext) {
125
- console.log(`Sending tx ${txCount++}/${total}: closeContext (cleaning up prior run)...`);
126
- const hClose = await sendTransactionWithSession(client, session, account, CHAIN_ID, txCloseContext);
127
- console.log(` ✓ ${hClose}`);
128
- }
129
-
130
- console.log(`Sending tx ${txCount++}/${total}: openContext...`);
131
- const h1 = await sendTransactionWithSession(client, session, account, CHAIN_ID, txOpenContext);
132
- console.log(` ✓ ${h1}`);
133
-
134
- console.log(`Sending tx ${txCount++}/${total}: attest...`);
135
- const h2 = await sendTransactionWithSession(client, session, account, CHAIN_ID, txAttest);
136
- console.log(` ✓ ${h2}`);
137
-
138
- console.log(`Sending tx ${txCount++}/${total}: executeSpend...`);
139
- const h3 = await sendTransactionWithSession(client, session, account, CHAIN_ID, txSpend);
140
- console.log(` ✓ ${h3}`);
141
-
142
- console.log(`\n✅ Done. ${ethers.formatEther(sendAmount)} ETH sent to deployer.`);
143
- process.exit(0);
144
- }
145
-
146
- main().catch(e => {
147
- console.error(e.message ?? e);
148
- process.exit(1);
149
- });
@@ -1,81 +0,0 @@
1
- /**
2
- * execute-spend-only.ts
3
- * Send ONLY the executeSpend tx — context and attest already confirmed on-chain.
4
- * Uses the attestation ID from the last successful attest tx.
5
- */
6
-
7
- import { ethers } from "ethers";
8
- import { loadConfig } from "../src/config";
9
- import { connectPhoneWallet, sendTransactionWithSession } from "../src/walletconnect";
10
-
11
- const DEPLOYER = "0x59A32A792d0f25B0E0a4A4aFbFDf514b94B102fB";
12
- const WALLET = "0xC3207bFe22cba39AeC4e8540c97c29B028103c7F";
13
- const RPC = "https://base-mainnet.g.alchemy.com/v2/YIA2uRCsFI-j5pqH-aRzflrACSlV1Qrs";
14
- const CHAIN_ID = 8453;
15
-
16
- // Attest tx was: 0x28dbff33aa65b0617c4f25810f06f76bfcf0a430f461b...
17
- // Recover attestId from the drain script's timestamp-based keccak
18
- // The attest tx confirmed — we need to recover the attestId used.
19
- // Re-derive it: the script used `attest-${Date.now()}` at time of that run.
20
- // Instead, read it from the IntentAttestation contract by checking events.
21
-
22
- const INTENT_ATTEST_ABI = [
23
- "event AttestationCreated(bytes32 indexed attestationId, address indexed wallet, address recipient, uint256 amount, address token)",
24
- "function verify(bytes32 attestationId, address wallet, address recipient, uint256 amount, address token) external view returns (bool)",
25
- ];
26
-
27
- const WALLET_ABI = [
28
- "function executeSpend(address payable recipient, uint256 amount, string calldata category, bytes32 attestationId) external",
29
- ];
30
-
31
- const INTENT_ATTEST_ADDR = "0x7ad8db6C5f394542E8e9658F86C85cC99Cf6D460";
32
-
33
- async function main() {
34
- const config = loadConfig();
35
- const provider = new ethers.JsonRpcProvider(RPC);
36
-
37
- // Find the most recent AttestationCreated event for this wallet → DEPLOYER
38
- const attestContract = new ethers.Contract(INTENT_ATTEST_ADDR, INTENT_ATTEST_ABI, provider);
39
- const block = await provider.getBlockNumber();
40
- // Hardcoded from confirmed attest tx 0x28dbff33...c17
41
- const attestId = "0x9d8bdb5f551f63e986e5d0c980fd68f4e445b9f7902f71226ec08ce24bceebb0";
42
- const amount = ethers.parseEther("0.00015");
43
-
44
- console.log(`Found attestation: ${attestId}`);
45
- console.log(`Amount: ${ethers.formatEther(amount)} ETH`);
46
- console.log(`Sending executeSpend → ${DEPLOYER}\n`);
47
-
48
- const iface = new ethers.Interface(WALLET_ABI);
49
- const txSpend = {
50
- to: WALLET,
51
- data: iface.encodeFunctionData("executeSpend", [DEPLOYER, amount, "drain", attestId]),
52
- value: "0x0",
53
- };
54
-
55
- const tgOpts = {
56
- botToken: config.telegramBotToken!,
57
- chatId: config.telegramChatId!,
58
- threadId: config.telegramThreadId,
59
- };
60
-
61
- const { client, session, account } = await connectPhoneWallet(
62
- config.walletConnectProjectId!,
63
- CHAIN_ID,
64
- config,
65
- {
66
- telegramOpts: tgOpts,
67
- prompt: `⛓ BASE ONLY — Final tx: executeSpend ${ethers.formatEther(amount)} ETH → deployer\n\n⚠️ Keep MetaMask on Base and approve`,
68
- }
69
- );
70
-
71
- console.log(`Connected: ${account}`);
72
- console.log("Sending executeSpend...");
73
- const hash = await sendTransactionWithSession(client, session, account, CHAIN_ID, txSpend);
74
- console.log(`\n✅ Done: ${hash}`);
75
- process.exit(0);
76
- }
77
-
78
- main().catch(e => {
79
- console.error(e.message ?? e);
80
- process.exit(1);
81
- });
@@ -1,186 +0,0 @@
1
- /**
2
- * register-agent-userop.ts
3
- * Register GigaBrain in AgentRegistry via ERC-4337 UserOperation.
4
- * Machine key signs → Pimlico bundler → EntryPoint executes → wallet is msg.sender.
5
- */
6
-
7
- import { ethers } from "ethers";
8
- import { loadConfig } from "../src/config";
9
- import { BundlerClient, buildUserOp } from "../src/bundler";
10
- import { ARC402_WALLET_EXECUTE_ABI, AGENT_REGISTRY_ABI } from "../src/abis";
11
-
12
- const ENTRY_POINT = "0x0000000071727De22E5E9d8BAf0edAc6f37da032";
13
- const CHAIN_ID = 8453;
14
-
15
- // EntryPoint v0.7 nonce getter ABI
16
- const EP_ABI = [
17
- "function getNonce(address sender, uint192 key) external view returns (uint256)",
18
- "function depositTo(address account) external payable",
19
- "function balanceOf(address account) external view returns (uint256)",
20
- ];
21
-
22
- async function main() {
23
- const config = loadConfig();
24
- if (!config.walletContractAddress) throw new Error("walletContractAddress not in config");
25
- if (!config.privateKey) throw new Error("privateKey not in config");
26
-
27
- const provider = new ethers.JsonRpcProvider(config.rpcUrl);
28
- const machineKey = new ethers.Wallet(config.privateKey, provider);
29
- const walletAddress = config.walletContractAddress;
30
-
31
- const agentRegistryAddress =
32
- config.agentRegistryV2Address ??
33
- "0xD5c2851B00090c92Ba7F4723FB548bb30C9B6865";
34
-
35
- console.log("Wallet: ", walletAddress);
36
- console.log("Machine key: ", machineKey.address);
37
- console.log("AgentRegistry: ", agentRegistryAddress);
38
-
39
- // ── 1. Check ETH balance ───────────────────────────────────────────────────
40
- const balance = await provider.getBalance(walletAddress);
41
- console.log("Wallet balance: ", ethers.formatEther(balance), "ETH");
42
- if (balance < ethers.parseEther("0.0005")) {
43
- throw new Error("Wallet balance too low — need at least 0.0005 ETH");
44
- }
45
-
46
- // ── 2. Get nonce from EntryPoint ───────────────────────────────────────────
47
- const ep = new ethers.Contract(ENTRY_POINT, EP_ABI, provider);
48
- const nonce: bigint = await ep.getNonce(walletAddress, 0);
49
- console.log("Nonce: ", nonce.toString());
50
-
51
- // ── 3. Encode AgentRegistry.register() calldata ───────────────────────────
52
- const registryIface = new ethers.Interface(AGENT_REGISTRY_ABI);
53
- const registerCalldata = registryIface.encodeFunctionData("register", [
54
- "GigaBrain", // name
55
- [], // capabilities (empty for now)
56
- "ai.assistant", // serviceType
57
- "https://gigabrain.arc402.xyz", // endpoint
58
- "", // metadataURI
59
- ]);
60
-
61
- // ── 4. Encode ARC402Wallet.executeContractCall() — this is the UserOp callData ──
62
- const walletIface = new ethers.Interface(ARC402_WALLET_EXECUTE_ABI);
63
- const userOpCallData = walletIface.encodeFunctionData("executeContractCall", [{
64
- target: agentRegistryAddress,
65
- data: registerCalldata,
66
- value: BigInt(0),
67
- minReturnValue: BigInt(0),
68
- maxApprovalAmount: BigInt(0),
69
- approvalToken: ethers.ZeroAddress,
70
- }]);
71
-
72
- console.log("UserOp callData built ✓");
73
-
74
- // ── 5. Build UserOp — fetch live gas price from Pimlico ───────────────────
75
- // Declare bundlerUrl here so it's available for gas price fetch AND sending
76
- const bundlerUrl = (config as unknown as Record<string, unknown>)["bundlerUrl"] as string | undefined ?? "https://public.pimlico.io/v2/8453/rpc";
77
- const gasPriceRes = await fetch(bundlerUrl, {
78
- method: "POST",
79
- headers: { "Content-Type": "application/json" },
80
- body: JSON.stringify({ jsonrpc: "2.0", id: 1, method: "pimlico_getUserOperationGasPrice", params: [] }),
81
- });
82
- const gasPriceJson = await gasPriceRes.json() as { result?: { fast?: { maxFeePerGas: string; maxPriorityFeePerGas: string } } };
83
- const fast = gasPriceJson.result?.fast;
84
- if (!fast) throw new Error("Could not fetch gas price from bundler");
85
- console.log("Gas price (fast): maxFee=", fast.maxFeePerGas, "maxPriority=", fast.maxPriorityFeePerGas);
86
-
87
- const userOp = await buildUserOp(userOpCallData, walletAddress, nonce, config);
88
- // Override with bundler-recommended gas prices
89
- userOp.maxFeePerGas = fast.maxFeePerGas;
90
- userOp.maxPriorityFeePerGas = fast.maxPriorityFeePerGas;
91
- // Bump callGasLimit — executeContractCall + AgentRegistry.register needs ~330k
92
- userOp.callGasLimit = ethers.toBeHex(500_000);
93
- userOp.verificationGasLimit = ethers.toBeHex(200_000);
94
-
95
- // ── 6. Sign UserOp with machine key ───────────────────────────────────────
96
- // ERC-4337 v0.7: hash = keccak256(abi.encode(userOpHash, entryPoint, chainId))
97
- // where userOpHash = keccak256(packed(userOp fields))
98
- const packedFields = ethers.AbiCoder.defaultAbiCoder().encode(
99
- ["address","uint256","bytes32","bytes32","bytes32","uint256","bytes32","bytes32"],
100
- [
101
- userOp.sender,
102
- BigInt(userOp.nonce),
103
- ethers.keccak256(ethers.concat(
104
- userOp.factory ? [userOp.factory, userOp.factoryData ?? "0x"] : []
105
- )),
106
- ethers.keccak256(userOp.callData),
107
- ethers.concat([
108
- ethers.zeroPadValue(ethers.toBeHex(userOp.callGasLimit), 16),
109
- ethers.zeroPadValue(ethers.toBeHex(userOp.verificationGasLimit), 16),
110
- ]),
111
- BigInt(userOp.preVerificationGas),
112
- ethers.concat([
113
- ethers.zeroPadValue(ethers.toBeHex(userOp.maxPriorityFeePerGas), 16),
114
- ethers.zeroPadValue(ethers.toBeHex(userOp.maxFeePerGas), 16),
115
- ]),
116
- ethers.keccak256(
117
- userOp.paymaster
118
- ? ethers.concat([
119
- userOp.paymaster,
120
- ethers.zeroPadValue(ethers.toBeHex(userOp.paymasterVerificationGasLimit ?? "0x0"), 16),
121
- ethers.zeroPadValue(ethers.toBeHex(userOp.paymasterPostOpGasLimit ?? "0x0"), 16),
122
- userOp.paymasterData ?? "0x",
123
- ])
124
- : "0x"
125
- ),
126
- ]
127
- );
128
- const userOpHash = ethers.keccak256(
129
- ethers.AbiCoder.defaultAbiCoder().encode(
130
- ["bytes32","address","uint256"],
131
- [
132
- ethers.keccak256(packedFields),
133
- ENTRY_POINT,
134
- CHAIN_ID,
135
- ]
136
- )
137
- );
138
- console.log("UserOp hash: ", userOpHash);
139
-
140
- // validateUserOp uses toEthSignedMessageHash — sign the eth-prefixed hash
141
- const signature = await machineKey.signMessage(ethers.getBytes(userOpHash));
142
- userOp.signature = signature;
143
- console.log("Signed ✓");
144
-
145
- // ── 7. Send to bundler ─────────────────────────────────────────────────────
146
- const bundler = new BundlerClient(bundlerUrl, ENTRY_POINT, CHAIN_ID);
147
-
148
- console.log("Sending UserOperation to bundler...");
149
- let opHash: string;
150
- try {
151
- opHash = await bundler.sendUserOperation(userOp);
152
- } catch (e) {
153
- const msg = e instanceof Error ? e.message : String(e);
154
- throw new Error(`Bundler rejected UserOp: ${msg}`);
155
- }
156
- console.log("UserOp hash: ", opHash);
157
- console.log("Waiting for confirmation (up to 60s)...");
158
-
159
- const receipt = await bundler.getUserOperationReceipt(opHash);
160
- if (!receipt.success) {
161
- throw new Error(`UserOp failed on-chain. Tx: ${receipt.receipt.transactionHash}`);
162
- }
163
- console.log("✓ AgentRegistry.register() confirmed");
164
- console.log(" Tx:", receipt.receipt.transactionHash);
165
-
166
- // ── 8. Claim subdomain ─────────────────────────────────────────────────────
167
- console.log("\nClaiming gigabrain.arc402.xyz...");
168
- const res = await fetch("https://api.arc402.xyz/register-subdomain", {
169
- method: "POST",
170
- headers: { "Content-Type": "application/json" },
171
- body: JSON.stringify({
172
- subdomain: "gigabrain",
173
- walletAddress,
174
- tunnelTarget: "https://gigabrain.arc402.xyz",
175
- }),
176
- });
177
- const body = await res.json() as Record<string, unknown>;
178
- if (!res.ok) {
179
- console.error("✗ Subdomain claim failed:", body["error"] ?? body);
180
- process.exit(1);
181
- }
182
- console.log("✓ Subdomain claimed:", body["subdomain"]);
183
- console.log("\nAll done. GigaBrain is registered and live.");
184
- }
185
-
186
- main().catch(e => { console.error(e); process.exit(1); });