@elizaos/plugin-wallet 2.0.0-beta.1 → 2.0.3-beta.5

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 (356) hide show
  1. package/README.md +70 -45
  2. package/auto-enable.ts +1 -1
  3. package/dist/actions/failure-codes.d.ts +12 -0
  4. package/dist/actions/index.d.ts +1 -0
  5. package/dist/analytics/birdeye/actions/wallet-search-address.d.ts +7 -0
  6. package/dist/analytics/birdeye/birdeye-task.d.ts +27 -0
  7. package/dist/analytics/birdeye/birdeye.d.ts +140 -0
  8. package/dist/analytics/birdeye/constants.d.ts +68 -0
  9. package/dist/analytics/birdeye/providers/agent-portfolio-provider.d.ts +8 -0
  10. package/dist/analytics/birdeye/providers/market.d.ts +18 -0
  11. package/dist/analytics/birdeye/providers/portfolio-factory.d.ts +10 -0
  12. package/dist/analytics/birdeye/providers/trending.d.ts +19 -0
  13. package/dist/analytics/birdeye/providers/wallet.d.ts +5 -0
  14. package/dist/analytics/birdeye/search-category.d.ts +52 -0
  15. package/dist/analytics/birdeye/service.d.ts +94 -0
  16. package/dist/analytics/birdeye/types/api/common.d.ts +199 -0
  17. package/dist/analytics/birdeye/types/api/defi.d.ts +187 -0
  18. package/dist/analytics/birdeye/types/api/pair.d.ts +182 -0
  19. package/dist/analytics/birdeye/types/api/search.d.ts +64 -0
  20. package/dist/analytics/birdeye/types/api/token.d.ts +580 -0
  21. package/dist/analytics/birdeye/types/api/trader.d.ts +70 -0
  22. package/dist/analytics/birdeye/types/api/wallet.d.ts +161 -0
  23. package/dist/analytics/birdeye/types/shared.d.ts +83 -0
  24. package/dist/analytics/birdeye/utils.d.ts +74 -0
  25. package/dist/analytics/dexscreener/errors.d.ts +2 -0
  26. package/dist/analytics/dexscreener/index.d.ts +3 -0
  27. package/dist/analytics/dexscreener/search-category.d.ts +3 -0
  28. package/dist/analytics/dexscreener/service.d.ts +34 -0
  29. package/dist/analytics/dexscreener/types.d.ts +131 -0
  30. package/dist/analytics/lpinfo/index.d.ts +31 -0
  31. package/dist/analytics/lpinfo/kamino/index.d.ts +7 -0
  32. package/dist/analytics/lpinfo/kamino/providers/kaminoLiquidityProvider.d.ts +6 -0
  33. package/dist/analytics/lpinfo/kamino/providers/kaminoPoolProvider.d.ts +6 -0
  34. package/dist/analytics/lpinfo/kamino/providers/kaminoProvider.d.ts +6 -0
  35. package/dist/analytics/lpinfo/kamino/services/kaminoLiquidityService.d.ts +203 -0
  36. package/dist/analytics/lpinfo/kamino/services/kaminoService.d.ts +171 -0
  37. package/dist/analytics/lpinfo/steer/index.d.ts +7 -0
  38. package/dist/analytics/lpinfo/steer/providers/steerLiquidityProvider.d.ts +6 -0
  39. package/dist/analytics/lpinfo/steer/services/steerLiquidityService.d.ts +208 -0
  40. package/dist/analytics/lpinfo/steer/steer-display-types.d.ts +97 -0
  41. package/dist/analytics/news/index.d.ts +32 -0
  42. package/dist/analytics/news/interfaces/types.d.ts +177 -0
  43. package/dist/analytics/news/providers/defiNewsProvider.d.ts +106 -0
  44. package/dist/analytics/news/services/newsDataService.d.ts +72 -0
  45. package/dist/analytics/news/utils/formatters.d.ts +54 -0
  46. package/dist/analytics/token-info/action.d.ts +6 -0
  47. package/dist/analytics/token-info/index.d.ts +3 -0
  48. package/dist/analytics/token-info/params.d.ts +10 -0
  49. package/dist/analytics/token-info/providers.d.ts +4 -0
  50. package/dist/analytics/token-info/service.d.ts +19 -0
  51. package/dist/analytics/token-info/types.d.ts +45 -0
  52. package/dist/api/wallet-routes.d.ts +100 -0
  53. package/dist/audit/audit-log.d.ts +29 -0
  54. package/dist/browser-shim/build-shim.d.ts +31 -0
  55. package/dist/browser-shim/index.d.ts +1 -0
  56. package/dist/chains/evm/actions/helpers.d.ts +31 -0
  57. package/dist/chains/evm/actions/swap.d.ts +53 -0
  58. package/dist/chains/evm/actions/transfer.d.ts +10 -0
  59. package/dist/chains/evm/bridge-router.d.ts +44 -0
  60. package/dist/chains/evm/build.d.ts +2 -0
  61. package/dist/chains/evm/chain-handler.d.ts +37 -0
  62. package/dist/chains/evm/constants.d.ts +16 -0
  63. package/dist/chains/evm/dex/aerodrome/index.d.ts +6 -0
  64. package/dist/chains/evm/dex/aerodrome/services/AerodromeLpService.d.ts +27 -0
  65. package/dist/chains/evm/dex/aerodrome/types.d.ts +435 -0
  66. package/dist/chains/evm/dex/pancakeswp/index.d.ts +6 -0
  67. package/dist/chains/evm/dex/pancakeswp/services/PancakeSwapV3LpService.d.ts +28 -0
  68. package/dist/chains/evm/dex/pancakeswp/types.d.ts +19 -0
  69. package/dist/chains/evm/dex/uniswap/index.d.ts +6 -0
  70. package/dist/chains/evm/dex/uniswap/services/UniswapV3LpService.d.ts +28 -0
  71. package/dist/chains/evm/dex/uniswap/types.d.ts +458 -0
  72. package/dist/chains/evm/generated/specs/spec-helpers.d.ts +35 -0
  73. package/dist/chains/evm/generated/specs/specs.d.ts +99 -0
  74. package/dist/chains/evm/gov-router.d.ts +6 -0
  75. package/dist/chains/evm/index.browser.d.ts +3 -0
  76. package/dist/chains/evm/index.d.ts +6 -0
  77. package/dist/chains/evm/prompts.d.ts +24 -0
  78. package/dist/chains/evm/providers/get-balance.d.ts +2 -0
  79. package/dist/chains/evm/providers/wallet.d.ts +35 -0
  80. package/dist/chains/evm/routes/sign.d.ts +13 -0
  81. package/dist/chains/evm/rpc-providers.d.ts +26 -0
  82. package/dist/chains/evm/service.d.ts +26 -0
  83. package/dist/chains/evm/templates/index.d.ts +1 -0
  84. package/dist/chains/evm/types/index.d.ts +296 -0
  85. package/dist/chains/evm/vitest.config.d.ts +2 -0
  86. package/dist/chains/registry.d.ts +3 -0
  87. package/dist/chains/solana/actions/confirmation.d.ts +9 -0
  88. package/dist/chains/solana/bn.d.ts +6 -0
  89. package/dist/chains/solana/build.d.ts +2 -0
  90. package/dist/chains/solana/constants.d.ts +2 -0
  91. package/dist/chains/solana/dex/meteora/e2e/scenarios.d.ts +10 -0
  92. package/dist/chains/solana/dex/meteora/e2e/test-utils.d.ts +28 -0
  93. package/dist/chains/solana/dex/meteora/index.d.ts +3 -0
  94. package/dist/chains/solana/dex/meteora/providers/positionProvider.d.ts +9 -0
  95. package/dist/chains/solana/dex/meteora/services/MeteoraLpService.d.ts +37 -0
  96. package/dist/chains/solana/dex/meteora/utils/dlmm.d.ts +6 -0
  97. package/dist/chains/solana/dex/meteora/utils/loadWallet.d.ts +14 -0
  98. package/dist/chains/solana/dex/meteora/utils/sendTransaction.d.ts +2 -0
  99. package/dist/chains/solana/dex/orca/index.d.ts +6 -0
  100. package/dist/chains/solana/dex/orca/providers/positionProvider.d.ts +10 -0
  101. package/dist/chains/solana/dex/orca/services/srv_orca.d.ts +10 -0
  102. package/dist/chains/solana/dex/orca/types.d.ts +61 -0
  103. package/dist/chains/solana/dex/orca/utils/loadWallet.d.ts +1 -0
  104. package/dist/chains/solana/dex/orca/utils/sendTransaction.d.ts +2 -0
  105. package/dist/chains/solana/dex/raydium/index.d.ts +6 -0
  106. package/dist/chains/solana/dex/raydium/providers/positionProvider.d.ts +10 -0
  107. package/dist/chains/solana/dex/raydium/services/srv_raydium.d.ts +104 -0
  108. package/dist/chains/solana/dex/raydium/types.d.ts +42 -0
  109. package/dist/chains/solana/environment.d.ts +15 -0
  110. package/dist/chains/solana/generated/specs/spec-helpers.d.ts +35 -0
  111. package/dist/chains/solana/generated/specs/specs.d.ts +73 -0
  112. package/dist/chains/solana/index.browser.d.ts +3 -0
  113. package/dist/chains/solana/index.d.ts +7 -0
  114. package/dist/chains/solana/keypairUtils.d.ts +7 -0
  115. package/dist/chains/solana/prompts.d.ts +12 -0
  116. package/dist/chains/solana/providers/wallet.d.ts +2 -0
  117. package/dist/chains/solana/routes/index.d.ts +2 -0
  118. package/dist/chains/solana/routes/sign.d.ts +16 -0
  119. package/dist/chains/solana/service.d.ts +237 -0
  120. package/dist/chains/solana/types.d.ts +377 -0
  121. package/dist/chains/solana/vitest.config.d.ts +2 -0
  122. package/dist/chains/wallet-action.d.ts +3 -0
  123. package/dist/contracts.d.ts +58 -0
  124. package/dist/core-augmentation.d.ts +9 -0
  125. package/dist/index.d.mts +27 -34727
  126. package/dist/index.d.ts +27 -0
  127. package/dist/index.mjs +28246 -21186
  128. package/dist/index.mjs.map +153 -0
  129. package/dist/lib/server-wallet-trade.d.ts +22 -0
  130. package/dist/lib/server-wallet-trade.js +333 -0
  131. package/dist/lib/server-wallet-trade.js.map +11 -0
  132. package/dist/lib/wallet-export-guard.d.ts +45 -0
  133. package/dist/lp/actions/liquidity.d.ts +2 -0
  134. package/dist/lp/e2e/real-token-tests.d.ts +6 -0
  135. package/dist/lp/e2e/scenarios.d.ts +9 -0
  136. package/dist/lp/e2e/test-utils.d.ts +28 -0
  137. package/dist/lp/lp-manager-entry.d.ts +18 -0
  138. package/dist/lp/services/ConcentratedLiquidityService.d.ts +32 -0
  139. package/dist/lp/services/DexInteractionService.d.ts +34 -0
  140. package/dist/lp/services/LpManagementService.d.ts +116 -0
  141. package/dist/lp/services/UserLpProfileService.d.ts +18 -0
  142. package/dist/lp/services/VaultService.d.ts +21 -0
  143. package/dist/lp/services/YieldOptimizationService.d.ts +59 -0
  144. package/dist/lp/services/__tests__/MockLpService.d.ts +17 -0
  145. package/dist/lp/types.d.ts +439 -0
  146. package/dist/lp/utils/solanaClient.d.ts +26 -0
  147. package/dist/plugin.d.ts +7 -0
  148. package/dist/policy/policy.d.ts +14 -0
  149. package/dist/providers/canonical-provider.d.ts +19 -0
  150. package/dist/providers/wallet-provider.d.ts +5 -0
  151. package/dist/register-routes.d.ts +1 -0
  152. package/dist/routes/plugin.d.ts +14 -0
  153. package/dist/routes/wallet-market-overview-route.d.ts +7 -0
  154. package/dist/sdk/abi.d.ts +396 -0
  155. package/dist/sdk/bridge/abis.d.ts +63 -0
  156. package/dist/sdk/bridge/client.d.ts +48 -0
  157. package/dist/sdk/bridge/index.d.ts +14 -0
  158. package/dist/sdk/bridge/solana.d.ts +131 -0
  159. package/dist/sdk/bridge/types.d.ts +92 -0
  160. package/dist/sdk/convenience.d.ts +104 -0
  161. package/dist/sdk/escrow/MutualStakeEscrow.d.ts +75 -0
  162. package/dist/sdk/escrow/types.d.ts +58 -0
  163. package/dist/sdk/escrow/verifiers.d.ts +25 -0
  164. package/dist/sdk/identity/erc8004.d.ts +304 -0
  165. package/dist/sdk/identity/reputation.d.ts +317 -0
  166. package/dist/sdk/identity/uaid.d.ts +192 -0
  167. package/dist/sdk/identity/validation.d.ts +282 -0
  168. package/dist/sdk/index.d.ts +133 -0
  169. package/dist/sdk/index.js +5284 -0
  170. package/dist/sdk/index.js.map +40 -0
  171. package/dist/sdk/policy/SpendingPolicy.d.ts +105 -0
  172. package/dist/sdk/policy/UptoBillingPolicy.d.ts +87 -0
  173. package/dist/sdk/router/PaymentRouter.d.ts +77 -0
  174. package/dist/sdk/router/index.d.ts +2 -0
  175. package/dist/sdk/swap/SwapModule.d.ts +47 -0
  176. package/dist/sdk/swap/abi.d.ts +50 -0
  177. package/dist/sdk/swap/index.d.ts +11 -0
  178. package/dist/sdk/swap/types.d.ts +101 -0
  179. package/dist/sdk/tokens/decimals.d.ts +64 -0
  180. package/dist/sdk/tokens/registry.d.ts +81 -0
  181. package/dist/sdk/tokens/solana.d.ts +107 -0
  182. package/dist/sdk/tokens/transfers.d.ts +94 -0
  183. package/dist/sdk/types.d.ts +129 -0
  184. package/dist/sdk/wallet-core.d.ts +29450 -0
  185. package/dist/sdk/x402/budget.d.ts +51 -0
  186. package/dist/sdk/x402/chains/abstract/index.d.ts +134 -0
  187. package/dist/sdk/x402/client.d.ts +66 -0
  188. package/dist/sdk/x402/index.d.ts +8 -0
  189. package/dist/sdk/x402/middleware.d.ts +37 -0
  190. package/dist/sdk/x402/multi-asset.d.ts +53 -0
  191. package/dist/sdk/x402/types.d.ts +109 -0
  192. package/dist/security/wallet-context-safety.d.ts +7 -0
  193. package/dist/security/wallet-financial-confirmation.d.ts +23 -0
  194. package/dist/services/wallet-backend-service.d.ts +39 -0
  195. package/dist/types/wallet-router.d.ts +130 -0
  196. package/dist/utils/intent-trajectory.d.ts +34 -0
  197. package/dist/wallet/backend.d.ts +41 -0
  198. package/dist/wallet/errors.d.ts +17 -0
  199. package/dist/wallet/index.d.ts +6 -0
  200. package/dist/wallet/local-eoa-backend.d.ts +37 -0
  201. package/dist/wallet/pending.d.ts +47 -0
  202. package/dist/wallet/select-backend.d.ts +11 -0
  203. package/dist/wallet/steward-backend.d.ts +22 -0
  204. package/dist/wallet-action.d.ts +1 -0
  205. package/dist/wallet-action.js +6292 -0
  206. package/dist/wallet-action.js.map +44 -0
  207. package/package.json +35 -21
  208. package/registry-entry.json +134 -0
  209. package/src/analytics/birdeye/actions/wallet-search-address.ts +85 -5
  210. package/src/analytics/birdeye/birdeye-task.ts +25 -9
  211. package/src/analytics/birdeye/birdeye.ts +6 -7
  212. package/src/analytics/birdeye/constants.ts +0 -1
  213. package/src/analytics/birdeye/providers/agent-portfolio-provider.ts +0 -1
  214. package/src/analytics/birdeye/providers/market.ts +51 -45
  215. package/src/analytics/birdeye/providers/portfolio-factory.ts +79 -38
  216. package/src/analytics/birdeye/providers/trending.ts +43 -46
  217. package/src/analytics/birdeye/providers/wallet.ts +0 -1
  218. package/src/analytics/birdeye/search-category.test.ts +1 -1
  219. package/src/analytics/birdeye/search-category.ts +77 -12
  220. package/src/analytics/birdeye/service.test.ts +146 -0
  221. package/src/analytics/birdeye/service.ts +220 -105
  222. package/src/analytics/birdeye/types/api/common.ts +0 -1
  223. package/src/analytics/birdeye/types/api/defi.ts +0 -1
  224. package/src/analytics/birdeye/types/api/pair.ts +0 -1
  225. package/src/analytics/birdeye/types/api/search.ts +0 -1
  226. package/src/analytics/birdeye/types/api/token.ts +0 -1
  227. package/src/analytics/birdeye/types/api/trader.ts +0 -1
  228. package/src/analytics/birdeye/types/api/wallet.ts +0 -1
  229. package/src/analytics/birdeye/types/shared.ts +0 -11
  230. package/src/analytics/birdeye/utils.test.ts +69 -0
  231. package/src/analytics/birdeye/utils.ts +11 -8
  232. package/src/analytics/dexscreener/search-category.ts +0 -1
  233. package/src/analytics/dexscreener/service.ts +7 -12
  234. package/src/analytics/dexscreener/types.ts +0 -1
  235. package/src/analytics/lpinfo/index.ts +5 -2
  236. package/src/analytics/lpinfo/kamino/README.md +2 -2
  237. package/src/analytics/lpinfo/kamino/index.ts +9 -2
  238. package/src/analytics/lpinfo/kamino/providers/kaminoLiquidityProvider.ts +6 -26
  239. package/src/analytics/lpinfo/kamino/providers/kaminoPoolProvider.ts +11 -12
  240. package/src/analytics/lpinfo/kamino/providers/kaminoProvider.ts +76 -32
  241. package/src/analytics/lpinfo/kamino/services/kaminoLiquidityService.ts +78 -38
  242. package/src/analytics/lpinfo/kamino/services/kaminoService.ts +71 -31
  243. package/src/analytics/lpinfo/steer/index.ts +7 -2
  244. package/src/analytics/lpinfo/steer/providers/steerLiquidityProvider.ts +25 -26
  245. package/src/analytics/lpinfo/steer/services/steerLiquidityService.ts +367 -149
  246. package/src/analytics/news/index.ts +7 -2
  247. package/src/analytics/news/interfaces/types.ts +0 -1
  248. package/src/analytics/news/providers/defiNewsProvider.ts +17 -44
  249. package/src/analytics/news/services/newsDataService.ts +1 -22
  250. package/src/analytics/news/utils/formatters.test.ts +60 -0
  251. package/src/analytics/news/utils/formatters.ts +0 -1
  252. package/src/analytics/token-info/action.ts +52 -212
  253. package/src/analytics/token-info/index.ts +1 -1
  254. package/src/analytics/token-info/params.test.ts +69 -0
  255. package/src/analytics/token-info/params.ts +13 -11
  256. package/src/analytics/token-info/providers.ts +46 -17
  257. package/src/analytics/token-info/service.ts +3 -3
  258. package/src/analytics/token-info/types.ts +2 -2
  259. package/src/api/wallet-routes.test.ts +56 -0
  260. package/src/api/wallet-routes.ts +1728 -0
  261. package/src/audit/audit-log.ts +57 -2
  262. package/src/browser-shim/build-shim.ts +1 -1
  263. package/src/browser-shim/shim.template.js +107 -117
  264. package/src/chains/{wallet-router.test.ts → __tests__/wallet-router.test.ts} +57 -10
  265. package/src/chains/evm/actions/helpers.ts +9 -7
  266. package/src/chains/evm/actions/swap.ts +176 -22
  267. package/src/chains/evm/actions/transfer.ts +29 -22
  268. package/src/chains/evm/biome.json +1 -1
  269. package/src/chains/evm/build.ts +6 -1
  270. package/src/chains/evm/constants.ts +19 -0
  271. package/src/chains/evm/contracts/artifacts/OZGovernor.json +25 -1682
  272. package/src/chains/evm/dex/aerodrome/index.ts +6 -1
  273. package/src/chains/evm/dex/aerodrome/services/AerodromeLpService.ts +41 -15
  274. package/src/chains/evm/dex/aerodrome/types.ts +1 -2
  275. package/src/chains/evm/dex/pancakeswp/index.ts +6 -1
  276. package/src/chains/evm/dex/pancakeswp/services/PancakeSwapV3LpService.ts +54 -17
  277. package/src/chains/evm/dex/pancakeswp/types.ts +1 -2
  278. package/src/chains/evm/dex/uniswap/index.ts +6 -1
  279. package/src/chains/evm/dex/uniswap/services/UniswapV3LpService.ts +20 -9
  280. package/src/chains/evm/dex/uniswap/types.ts +1 -2
  281. package/src/chains/evm/gov-router.ts +3 -1
  282. package/src/chains/evm/index.browser.ts +1 -1
  283. package/src/chains/evm/index.ts +5 -1
  284. package/src/chains/evm/prompts.ts +5 -0
  285. package/src/chains/evm/providers/get-balance.ts +1 -1
  286. package/src/chains/evm/providers/wallet.ts +80 -9
  287. package/src/chains/evm/routes/sign.ts +35 -26
  288. package/src/chains/evm/rpc-providers.ts +1 -1
  289. package/src/chains/evm/types/index.ts +22 -2
  290. package/src/chains/registry.ts +1 -1
  291. package/src/chains/wallet-action.ts +301 -91
  292. package/src/index.ts +9 -5
  293. package/src/lib/wallet-export-guard.test.ts +233 -0
  294. package/src/lib/wallet-export-guard.ts +1 -1
  295. package/src/lp/actions/liquidity.ts +53 -26
  296. package/src/lp/e2e/real-token-tests.ts +0 -1
  297. package/src/lp/e2e/scenarios.ts +1 -2
  298. package/src/lp/e2e/test-utils.ts +20 -7
  299. package/src/lp/lp-manager-entry.ts +2 -5
  300. package/src/lp/services/ConcentratedLiquidityService.ts +3 -10
  301. package/src/lp/services/DexInteractionService.ts +1 -2
  302. package/src/lp/services/LpManagementService.test.ts +0 -1
  303. package/src/lp/services/LpManagementService.ts +75 -35
  304. package/src/lp/services/UserLpProfileService.ts +2 -3
  305. package/src/lp/services/VaultService.ts +10 -4
  306. package/src/lp/services/YieldOptimizationService.ts +29 -13
  307. package/src/lp/services/__tests__/MockLpService.ts +1 -2
  308. package/src/lp/types.ts +9 -13
  309. package/src/lp/utils/solanaClient.ts +4 -2
  310. package/src/plugin.routes.test.ts +24 -0
  311. package/src/plugin.ts +30 -13
  312. package/src/providers/canonical-provider.ts +1 -1
  313. package/src/providers/{unified-wallet-provider.ts → wallet-provider.ts} +3 -3
  314. package/src/routes/__fixtures__/coingecko-markets.recorded.json +97 -0
  315. package/src/routes/wallet-market-overview-route.ts +1 -1
  316. package/src/routes/wallet-market-overview.contract.test.ts +139 -0
  317. package/src/routes/wallet-market-overview.real.test.ts +83 -0
  318. package/src/sdk/escrow/MutualStakeEscrow.ts +1 -2
  319. package/src/sdk/identity/erc8004.ts +1 -1
  320. package/src/sdk/identity/validation.ts +3 -4
  321. package/src/sdk/index.ts +2 -2
  322. package/src/sdk/policy/SpendingPolicy.ts +1 -1
  323. package/src/sdk/router/PaymentRouter.ts +8 -11
  324. package/src/sdk/swap/SwapModule.ts +1 -1
  325. package/src/sdk/tokens/registry.ts +1 -1
  326. package/src/sdk/x402/middleware.ts +2 -8
  327. package/src/security/__tests__/wallet-context-safety.test.ts +79 -0
  328. package/src/security/__tests__/wallet-financial-confirmation.test.ts +88 -0
  329. package/src/security/wallet-context-safety.ts +128 -0
  330. package/src/security/wallet-financial-confirmation.ts +150 -0
  331. package/src/services/wallet-backend-service.ts +15 -1
  332. package/src/utils/intent-trajectory.ts +2 -2
  333. package/src/wallet/steward-backend.ts +4 -4
  334. package/dist/LpManagementService-BWrQ5-cO.mjs +0 -353
  335. package/dist/MockLpService-D_Apn4Fd.mjs +0 -99
  336. package/dist/aerodrome-CfnESC32.mjs +0 -890
  337. package/dist/chunk-hT5z_Zn9.mjs +0 -35
  338. package/dist/lib/server-wallet-trade.d.mts +0 -34
  339. package/dist/lib/server-wallet-trade.mjs +0 -306
  340. package/dist/meteora-BPX39hZo.mjs +0 -22640
  341. package/dist/orca-Bybp1HXO.mjs +0 -249
  342. package/dist/pancakeswp-CkEXlXti.mjs +0 -604
  343. package/dist/plugin-ZO_MTyd0.mjs +0 -529
  344. package/dist/raydium-rfaM9yEf.mjs +0 -539
  345. package/dist/sdk/index.d.mts +0 -32492
  346. package/dist/sdk/index.mjs +0 -6415
  347. package/dist/types-D5252NZk.mjs +0 -487
  348. package/dist/uniswap-CReXgXVN.mjs +0 -573
  349. package/dist/wallet-action.d.mts +0 -6
  350. package/dist/wallet-action.mjs +0 -820
  351. package/src/analytics/birdeye/tasks/birdeye.ts +0 -232
  352. package/src/analytics/lpinfo/index.d.ts +0 -7
  353. package/src/chains/evm/contracts/artifacts/TimelockController.json +0 -1007
  354. package/src/chains/evm/contracts/artifacts/VoteToken.json +0 -895
  355. package/src/lp/tasks/LpAutoRebalanceTask.ts +0 -117
  356. package/src/lp/tasks/__tests__/LpAutoRebalanceTask.test.ts +0 -370
@@ -0,0 +1,128 @@
1
+ import type { Memory } from "@elizaos/core";
2
+
3
+ /** GHSA-7qxr-x6cg-r9cc — embedded addresses in token metadata must not become transfer recipients. */
4
+ /** GHSA-gh63-5vpj-39qp — block financial writes on injection-flagged channel messages. */
5
+
6
+ const FINANCIAL_WRITE_SUBACTIONS = new Set(["transfer", "swap", "bridge"]);
7
+
8
+ function messageHasPromptInjectionFlag(message: Memory): boolean {
9
+ const metadata = message.content?.metadata;
10
+ return (
11
+ typeof metadata === "object" &&
12
+ metadata !== null &&
13
+ (metadata as { promptInjectionSuspected?: boolean })
14
+ .promptInjectionSuspected === true
15
+ );
16
+ }
17
+ export const EVM_ADDRESS_PATTERN = /0x[a-fA-F0-9]{40}\b/g;
18
+
19
+ const INFERRED_RECIPIENT_PHRASE =
20
+ /\b(?:prior\s+wallet\s+evidence|operational\s+recipient|canonical\s+(?:testnet\s+)?(?:operational|settlement)\s+recipient|based\s+on\s+(?:the\s+)?prior|from\s+prior\s+(?:wallet|session|context))\b/i;
21
+
22
+ export function sanitizeWalletDisplayLabel(label: string): string {
23
+ return label
24
+ .replace(EVM_ADDRESS_PATTERN, "[address]")
25
+ .replace(
26
+ /\[[^\]]*(?:recipient|operational|settlement|canonical)[^\]]*\]/gi,
27
+ "[routing-hint-removed]",
28
+ )
29
+ .trim();
30
+ }
31
+
32
+ export function readMemoryText(message: Memory): string {
33
+ if (typeof message.content === "string") {
34
+ return message.content;
35
+ }
36
+ if (
37
+ message.content &&
38
+ typeof message.content === "object" &&
39
+ typeof message.content.text === "string"
40
+ ) {
41
+ return message.content.text;
42
+ }
43
+ return "";
44
+ }
45
+
46
+ function collectExplicitRecipients(
47
+ options: Record<string, unknown> | undefined,
48
+ ): string[] {
49
+ const out: string[] = [];
50
+ const params =
51
+ options &&
52
+ typeof options === "object" &&
53
+ "parameters" in options &&
54
+ options.parameters &&
55
+ typeof options.parameters === "object"
56
+ ? (options.parameters as Record<string, unknown>)
57
+ : null;
58
+
59
+ for (const source of [params, options]) {
60
+ if (!source) continue;
61
+ for (const key of ["recipient", "toAddress", "to"] as const) {
62
+ const value = source[key];
63
+ if (typeof value === "string" && /^0x[a-fA-F0-9]{40}$/.test(value)) {
64
+ out.push(value.toLowerCase());
65
+ }
66
+ }
67
+ }
68
+ return out;
69
+ }
70
+
71
+ export function messageAuthorizesEvmRecipient(
72
+ message: Memory,
73
+ options: Record<string, unknown> | undefined,
74
+ recipient: string,
75
+ ): boolean {
76
+ const normalized = recipient.toLowerCase();
77
+ const explicit = collectExplicitRecipients(options);
78
+ if (explicit.includes(normalized)) {
79
+ return true;
80
+ }
81
+
82
+ const userText = readMemoryText(message);
83
+ if (userText.toLowerCase().includes(normalized)) {
84
+ return true;
85
+ }
86
+
87
+ return false;
88
+ }
89
+
90
+ export function assertWalletFinancialActionAllowed(
91
+ message: Memory,
92
+ subaction: string | undefined,
93
+ ): void {
94
+ if (!subaction || !FINANCIAL_WRITE_SUBACTIONS.has(subaction)) {
95
+ return;
96
+ }
97
+ if (messageHasPromptInjectionFlag(message)) {
98
+ throw new Error(
99
+ "Wallet transfer, swap, and bridge are blocked for this message (GHSA-gh63-5vpj-39qp): suspected prompt injection in untrusted channel content.",
100
+ );
101
+ }
102
+ }
103
+
104
+ export function assertEvmTransferRecipientAuthorized(
105
+ message: Memory,
106
+ options: Record<string, unknown> | undefined,
107
+ recipient: string,
108
+ ): void {
109
+ if (!/^0x[a-fA-F0-9]{40}$/.test(recipient)) {
110
+ throw new Error("recipient must be a valid EVM address.");
111
+ }
112
+
113
+ const userText = readMemoryText(message);
114
+ if (
115
+ INFERRED_RECIPIENT_PHRASE.test(userText) &&
116
+ !messageAuthorizesEvmRecipient(message, options, recipient)
117
+ ) {
118
+ throw new Error(
119
+ "Transfer recipient cannot be inferred from prior wallet context or token metadata. Provide an explicit 0x recipient address in this message or in structured action parameters.",
120
+ );
121
+ }
122
+
123
+ if (!messageAuthorizesEvmRecipient(message, options, recipient)) {
124
+ throw new Error(
125
+ "Transfer recipient must appear explicitly in the current user message or structured action parameters. Addresses from token names or earlier session quotes are not accepted.",
126
+ );
127
+ }
128
+ }
@@ -0,0 +1,150 @@
1
+ import type {
2
+ ActionResult,
3
+ ConfirmationDecision,
4
+ HandlerCallback,
5
+ IAgentRuntime,
6
+ Memory,
7
+ } from "@elizaos/core";
8
+ import { requireConfirmation } from "@elizaos/core";
9
+ import type { WalletRouterParams } from "../types/wallet-router.js";
10
+
11
+ /** Cache namespace for on-chain wallet writes (GHSA-rqm7-f4jc-84x3). */
12
+ export const WALLET_FINANCIAL_CONFIRM_ACTION = "WALLET_FINANCIAL";
13
+
14
+ const ON_CHAIN_SUBACTIONS = new Set<WalletRouterParams["subaction"]>([
15
+ "transfer",
16
+ "swap",
17
+ "bridge",
18
+ "gov",
19
+ ]);
20
+
21
+ export function requiresWalletFinancialConfirmation(
22
+ params: Pick<WalletRouterParams, "subaction" | "dryRun">,
23
+ ): boolean {
24
+ if (params.dryRun) {
25
+ return false;
26
+ }
27
+ return ON_CHAIN_SUBACTIONS.has(params.subaction);
28
+ }
29
+
30
+ export function walletFinancialPendingKey(
31
+ params: Pick<
32
+ WalletRouterParams,
33
+ | "subaction"
34
+ | "chain"
35
+ | "toChain"
36
+ | "amount"
37
+ | "recipient"
38
+ | "fromToken"
39
+ | "toToken"
40
+ | "slippageBps"
41
+ | "op"
42
+ | "governor"
43
+ | "proposalId"
44
+ >,
45
+ ): string {
46
+ const entries: [string, string][] = [
47
+ ["subaction", params.subaction],
48
+ ["chain", (params.chain ?? "").toLowerCase()],
49
+ ["toChain", (params.toChain ?? "").toLowerCase()],
50
+ ["amount", params.amount ?? ""],
51
+ ["recipient", (params.recipient ?? "").toLowerCase()],
52
+ ["fromToken", (params.fromToken ?? "").toLowerCase()],
53
+ ["toToken", (params.toToken ?? "").toLowerCase()],
54
+ [
55
+ "slippageBps",
56
+ params.slippageBps === undefined ? "" : String(params.slippageBps),
57
+ ],
58
+ ["op", (params.op ?? "").toLowerCase()],
59
+ ["governor", (params.governor ?? "").toLowerCase()],
60
+ ["proposalId", params.proposalId ?? ""],
61
+ ];
62
+ return entries.map(([key, value]) => `${key}=${value}`).join("|");
63
+ }
64
+
65
+ export function walletFinancialPreview(
66
+ params: Pick<
67
+ WalletRouterParams,
68
+ | "subaction"
69
+ | "chain"
70
+ | "toChain"
71
+ | "amount"
72
+ | "recipient"
73
+ | "fromToken"
74
+ | "toToken"
75
+ | "op"
76
+ >,
77
+ ): string {
78
+ const chainLabel = params.chain ?? params.toChain ?? "the selected chain";
79
+ switch (params.subaction) {
80
+ case "transfer":
81
+ return `Transfer ${params.amount ?? "?"} ${params.fromToken ?? "tokens"} to ${params.recipient ?? "?"} on ${chainLabel}? Reply yes to submit or no to cancel.`;
82
+ case "swap":
83
+ return `Swap ${params.amount ?? "?"} ${params.fromToken ?? "?"} to ${params.toToken ?? "?"} on ${chainLabel}? Reply yes to submit or no to cancel.`;
84
+ case "bridge":
85
+ return `Bridge ${params.amount ?? "?"} from ${params.chain ?? "?"} to ${params.toChain ?? "?"}? Reply yes to submit or no to cancel.`;
86
+ case "gov":
87
+ return `Governance ${params.op ?? "operation"} on ${chainLabel}? Reply yes to submit or no to cancel.`;
88
+ default:
89
+ return `Submit wallet ${params.subaction} on ${chainLabel}? Reply yes to confirm or no to cancel.`;
90
+ }
91
+ }
92
+
93
+ export type WalletFinancialGateResult =
94
+ | { readonly proceed: true }
95
+ | {
96
+ readonly proceed: false;
97
+ readonly decision: ConfirmationDecision;
98
+ readonly text: string;
99
+ };
100
+
101
+ export async function gateWalletFinancialExecution(args: {
102
+ runtime: IAgentRuntime;
103
+ message: Memory;
104
+ params: WalletRouterParams;
105
+ callback?: HandlerCallback;
106
+ }): Promise<WalletFinancialGateResult> {
107
+ if (!requiresWalletFinancialConfirmation(args.params)) {
108
+ return { proceed: true };
109
+ }
110
+
111
+ const decision = await requireConfirmation({
112
+ runtime: args.runtime,
113
+ message: args.message,
114
+ actionName: WALLET_FINANCIAL_CONFIRM_ACTION,
115
+ pendingKey: walletFinancialPendingKey(args.params),
116
+ prompt: walletFinancialPreview(args.params),
117
+ callback: args.callback,
118
+ metadata: { subaction: args.params.subaction },
119
+ });
120
+
121
+ if (decision.status === "confirmed") {
122
+ return { proceed: true };
123
+ }
124
+
125
+ const text =
126
+ decision.status === "pending"
127
+ ? walletFinancialPreview(args.params)
128
+ : "Wallet operation cancelled.";
129
+
130
+ return { proceed: false, decision, text };
131
+ }
132
+
133
+ export function walletFinancialGateActionResult(
134
+ gate: Extract<WalletFinancialGateResult, { proceed: false }>,
135
+ ): ActionResult {
136
+ const awaiting = gate.decision.status === "pending";
137
+ return {
138
+ success: awaiting,
139
+ text: gate.text,
140
+ values: {
141
+ walletActionPrepared: awaiting,
142
+ walletActionSucceeded: false,
143
+ },
144
+ data: {
145
+ requiresConfirmation: awaiting,
146
+ confirmationStatus: gate.decision.status,
147
+ awaitingUserInput: awaiting,
148
+ },
149
+ };
150
+ }
@@ -31,7 +31,7 @@ export class WalletBackendService extends Service {
31
31
  static override serviceType = WALLET_BACKEND_SERVICE_TYPE;
32
32
 
33
33
  override capabilityDescription =
34
- "Unified wallet backend and chain router (EVM + Solana, local or Steward)";
34
+ "Wallet backend and chain router (EVM + Solana, local or Steward)";
35
35
 
36
36
  private backend: WalletBackend | null = null;
37
37
  private backendLoadError: unknown = null;
@@ -109,6 +109,20 @@ export class WalletBackendService extends Service {
109
109
  };
110
110
  }
111
111
 
112
+ /**
113
+ * Resolve chain + required fields without signing. Used before out-of-band
114
+ * financial confirmation so invalid params fail fast (GHSA-rqm7-f4jc-84x3).
115
+ */
116
+ preflightWalletAction(
117
+ params: WalletRouterParams,
118
+ ): WalletRouterFailure | null {
119
+ const handlerResult = this.resolveHandler(params);
120
+ if (!handlerResult.ok) {
121
+ return handlerResult;
122
+ }
123
+ return this.validateRequiredParams(params);
124
+ }
125
+
112
126
  async routeWalletAction(
113
127
  params: WalletRouterParams,
114
128
  ): Promise<WalletRouterResult> {
@@ -83,14 +83,14 @@ export async function runIntentModel(
83
83
  },
84
84
  async () => {
85
85
  const response = await runtime.useModel(modelType, modelParams);
86
- return typeof response === "string" ? response : String(response ?? "");
86
+ return typeof response === "string" ? response : String(response);
87
87
  },
88
88
  );
89
89
  }
90
90
 
91
91
  const startedAt = Date.now();
92
92
  const response = await runtime.useModel(modelType, modelParams);
93
- const text = typeof response === "string" ? response : String(response ?? "");
93
+ const text = typeof response === "string" ? response : String(response);
94
94
  logActiveTrajectoryLlmCall(runtime, {
95
95
  model: modelLabel,
96
96
  systemPrompt,
@@ -19,7 +19,7 @@ interface StewardEvmAccountBinding {
19
19
  }
20
20
 
21
21
  /**
22
- * Shape of the dynamically imported @elizaos/app-steward module. Defined
22
+ * Shape of the dynamically imported @elizaos/plugin-steward-app module. Defined
23
23
  * locally to avoid a devDependency cycle with app-steward.
24
24
  */
25
25
  interface StewardEvmAccountModule {
@@ -41,7 +41,7 @@ const STEWARD_MODULE_ID = ["@elizaos", "app-steward"].join("/");
41
41
  /**
42
42
  * Cloud / mobile signing via Steward for EVM. Solana addresses may be exposed from
43
43
  * Steward when `/vault/.../addresses` returns them; Solana **transaction** signing is
44
- * not implemented here yet — callers must treat Solana writes as unavailable until wired.
44
+ * unavailable here — callers must treat Solana writes as unavailable until wired.
45
45
  */
46
46
  export class StewardBackend implements WalletBackend {
47
47
  readonly kind = "steward" as const;
@@ -66,7 +66,7 @@ export class StewardBackend implements WalletBackend {
66
66
  } catch (err) {
67
67
  const detail = err instanceof Error ? err.message : String(err);
68
68
  throw new StewardUnavailableError(
69
- `Cannot load Steward wallet module (@elizaos/app-steward): ${detail}`,
69
+ `Cannot load Steward wallet module (@elizaos/plugin-steward-app): ${detail}`,
70
70
  );
71
71
  }
72
72
 
@@ -126,7 +126,7 @@ export class StewardBackend implements WalletBackend {
126
126
 
127
127
  getSolanaSigner(): never {
128
128
  throw new StewardUnavailableError(
129
- "Solana transaction signing via Steward is not implemented in this runtime yet.",
129
+ "Solana transaction signing via Steward is unavailable in this runtime yet.",
130
130
  );
131
131
  }
132
132