keyring-agent-core 0.1.0 → 0.2.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 (301) hide show
  1. package/dist/agent/AgentCore.d.ts +37 -1
  2. package/dist/agent/AgentCore.d.ts.map +1 -1
  3. package/dist/agent/AgentCore.js +287 -144
  4. package/dist/agent/AgentCore.js.map +1 -1
  5. package/dist/agent/QueryRewriter.d.ts +17 -0
  6. package/dist/agent/QueryRewriter.d.ts.map +1 -1
  7. package/dist/agent/QueryRewriter.js +48 -4
  8. package/dist/agent/QueryRewriter.js.map +1 -1
  9. package/dist/agent/Router.d.ts.map +1 -1
  10. package/dist/agent/Router.js +73 -35
  11. package/dist/agent/Router.js.map +1 -1
  12. package/dist/agent/Subagent.d.ts +17 -0
  13. package/dist/agent/Subagent.d.ts.map +1 -1
  14. package/dist/agent/Subagent.js +32 -0
  15. package/dist/agent/Subagent.js.map +1 -1
  16. package/dist/agent/chatGraph.d.ts +364 -0
  17. package/dist/agent/chatGraph.d.ts.map +1 -0
  18. package/dist/agent/chatGraph.js +184 -0
  19. package/dist/agent/chatGraph.js.map +1 -0
  20. package/dist/agent/subagents/AiAgent.d.ts +1 -1
  21. package/dist/agent/subagents/AiAgent.d.ts.map +1 -1
  22. package/dist/agent/subagents/AiAgent.js +24 -20
  23. package/dist/agent/subagents/AiAgent.js.map +1 -1
  24. package/dist/agent/subagents/NftAgent.d.ts +1 -1
  25. package/dist/agent/subagents/NftAgent.d.ts.map +1 -1
  26. package/dist/agent/subagents/NftAgent.js +36 -26
  27. package/dist/agent/subagents/NftAgent.js.map +1 -1
  28. package/dist/agent/subagents/PoolSubgraphAgent.d.ts +6 -0
  29. package/dist/agent/subagents/PoolSubgraphAgent.d.ts.map +1 -0
  30. package/dist/agent/subagents/PoolSubgraphAgent.js +117 -0
  31. package/dist/agent/subagents/PoolSubgraphAgent.js.map +1 -0
  32. package/dist/agent/subagents/TokenAgent.d.ts +1 -1
  33. package/dist/agent/subagents/TokenAgent.d.ts.map +1 -1
  34. package/dist/agent/subagents/TokenAgent.js +23 -22
  35. package/dist/agent/subagents/TokenAgent.js.map +1 -1
  36. package/dist/agent/subagents/WalletActionAgent.d.ts +6 -0
  37. package/dist/agent/subagents/WalletActionAgent.d.ts.map +1 -0
  38. package/dist/agent/subagents/WalletActionAgent.js +55 -0
  39. package/dist/agent/subagents/WalletActionAgent.js.map +1 -0
  40. package/dist/agent/subagents/WalletAgent.d.ts +1 -1
  41. package/dist/agent/subagents/WalletAgent.d.ts.map +1 -1
  42. package/dist/agent/subagents/WalletAgent.js +18 -17
  43. package/dist/agent/subagents/WalletAgent.js.map +1 -1
  44. package/dist/agent/subagents/index.d.ts +23 -3
  45. package/dist/agent/subagents/index.d.ts.map +1 -1
  46. package/dist/agent/subagents/index.js +42 -11
  47. package/dist/agent/subagents/index.js.map +1 -1
  48. package/dist/constants/abi.d.ts +31 -0
  49. package/dist/constants/abi.d.ts.map +1 -1
  50. package/dist/constants/abi.js +24 -1
  51. package/dist/constants/abi.js.map +1 -1
  52. package/dist/functions/web3.d.ts +0 -1
  53. package/dist/functions/web3.d.ts.map +1 -1
  54. package/dist/functions/web3.js +0 -45
  55. package/dist/functions/web3.js.map +1 -1
  56. package/dist/index.d.ts +4 -1
  57. package/dist/index.d.ts.map +1 -1
  58. package/dist/index.js +7 -1
  59. package/dist/index.js.map +1 -1
  60. package/dist/llm/GeminiProvider.d.ts.map +1 -1
  61. package/dist/llm/GeminiProvider.js +115 -34
  62. package/dist/llm/GeminiProvider.js.map +1 -1
  63. package/dist/memory/UpstashKnowledgeBase.d.ts +1 -1
  64. package/dist/memory/UpstashKnowledgeBase.js +1 -1
  65. package/dist/services/MoralisService.d.ts +3 -25
  66. package/dist/services/MoralisService.d.ts.map +1 -1
  67. package/dist/services/MoralisService.js +7 -132
  68. package/dist/services/MoralisService.js.map +1 -1
  69. package/dist/services/PantographService.d.ts +61 -1
  70. package/dist/services/PantographService.d.ts.map +1 -1
  71. package/dist/services/PantographService.js +264 -12
  72. package/dist/services/PantographService.js.map +1 -1
  73. package/dist/services/PoolService.d.ts +1 -4
  74. package/dist/services/PoolService.d.ts.map +1 -1
  75. package/dist/services/PoolService.js +18 -40
  76. package/dist/services/PoolService.js.map +1 -1
  77. package/dist/services/UniswapSubgraphService.d.ts +144 -0
  78. package/dist/services/UniswapSubgraphService.d.ts.map +1 -0
  79. package/dist/services/UniswapSubgraphService.js +606 -0
  80. package/dist/services/UniswapSubgraphService.js.map +1 -0
  81. package/dist/services/rpc.d.ts +35 -0
  82. package/dist/services/rpc.d.ts.map +1 -0
  83. package/dist/services/rpc.js +110 -0
  84. package/dist/services/rpc.js.map +1 -0
  85. package/dist/services/swap/DebridgeAdapter.d.ts +17 -0
  86. package/dist/services/swap/DebridgeAdapter.d.ts.map +1 -1
  87. package/dist/services/swap/DebridgeAdapter.js +74 -6
  88. package/dist/services/swap/DebridgeAdapter.js.map +1 -1
  89. package/dist/services/swap/SwapServiceFactory.d.ts +1 -0
  90. package/dist/services/swap/SwapServiceFactory.d.ts.map +1 -1
  91. package/dist/services/swap/SwapServiceFactory.js +8 -3
  92. package/dist/services/swap/SwapServiceFactory.js.map +1 -1
  93. package/dist/tools/builtin/ai/GeminiSearchAiTool.d.ts +36 -0
  94. package/dist/tools/builtin/ai/GeminiSearchAiTool.d.ts.map +1 -0
  95. package/dist/tools/builtin/ai/GeminiSearchAiTool.js +91 -0
  96. package/dist/tools/builtin/ai/GeminiSearchAiTool.js.map +1 -0
  97. package/dist/tools/builtin/ai/index.d.ts +2 -4
  98. package/dist/tools/builtin/ai/index.d.ts.map +1 -1
  99. package/dist/tools/builtin/ai/index.js +3 -5
  100. package/dist/tools/builtin/ai/index.js.map +1 -1
  101. package/dist/tools/builtin/index.d.ts +2 -0
  102. package/dist/tools/builtin/index.d.ts.map +1 -1
  103. package/dist/tools/builtin/index.js +2 -0
  104. package/dist/tools/builtin/index.js.map +1 -1
  105. package/dist/tools/builtin/nft/BaseNftMessageTool.d.ts +35 -0
  106. package/dist/tools/builtin/nft/BaseNftMessageTool.d.ts.map +1 -0
  107. package/dist/tools/builtin/nft/BaseNftMessageTool.js +45 -0
  108. package/dist/tools/builtin/nft/BaseNftMessageTool.js.map +1 -0
  109. package/dist/tools/builtin/nft/NFTContractInfoTool.d.ts +7 -13
  110. package/dist/tools/builtin/nft/NFTContractInfoTool.d.ts.map +1 -1
  111. package/dist/tools/builtin/nft/NFTContractInfoTool.js +8 -43
  112. package/dist/tools/builtin/nft/NFTContractInfoTool.js.map +1 -1
  113. package/dist/tools/builtin/nft/NFTMetadataTool.d.ts +7 -113
  114. package/dist/tools/builtin/nft/NFTMetadataTool.d.ts.map +1 -1
  115. package/dist/tools/builtin/nft/NFTMetadataTool.js +9 -148
  116. package/dist/tools/builtin/nft/NFTMetadataTool.js.map +1 -1
  117. package/dist/tools/builtin/nft/SendNftTool.d.ts +14 -0
  118. package/dist/tools/builtin/nft/SendNftTool.d.ts.map +1 -0
  119. package/dist/tools/builtin/nft/SendNftTool.js +20 -0
  120. package/dist/tools/builtin/nft/SendNftTool.js.map +1 -0
  121. package/dist/tools/builtin/nft/WalletNFTsTool.d.ts +7 -74
  122. package/dist/tools/builtin/nft/WalletNFTsTool.d.ts.map +1 -1
  123. package/dist/tools/builtin/nft/WalletNFTsTool.js +9 -161
  124. package/dist/tools/builtin/nft/WalletNFTsTool.js.map +1 -1
  125. package/dist/tools/builtin/pool/EstimatePoolYieldTool.d.ts.map +1 -1
  126. package/dist/tools/builtin/pool/EstimatePoolYieldTool.js +4 -3
  127. package/dist/tools/builtin/pool/EstimatePoolYieldTool.js.map +1 -1
  128. package/dist/tools/builtin/pool/OpenAddLiquidityFormTool.d.ts +1 -0
  129. package/dist/tools/builtin/pool/OpenAddLiquidityFormTool.d.ts.map +1 -1
  130. package/dist/tools/builtin/pool/OpenAddLiquidityFormTool.js +8 -5
  131. package/dist/tools/builtin/pool/OpenAddLiquidityFormTool.js.map +1 -1
  132. package/dist/tools/builtin/pool/PoolByAddressTool.d.ts.map +1 -1
  133. package/dist/tools/builtin/pool/PoolByAddressTool.js +4 -3
  134. package/dist/tools/builtin/pool/PoolByAddressTool.js.map +1 -1
  135. package/dist/tools/builtin/pool/PoolDetailTool.d.ts.map +1 -1
  136. package/dist/tools/builtin/pool/PoolDetailTool.js +4 -3
  137. package/dist/tools/builtin/pool/PoolDetailTool.js.map +1 -1
  138. package/dist/tools/builtin/pool/PoolSearchTool.d.ts.map +1 -1
  139. package/dist/tools/builtin/pool/PoolSearchTool.js +4 -3
  140. package/dist/tools/builtin/pool/PoolSearchTool.js.map +1 -1
  141. package/dist/tools/builtin/pool/PreviewAddLiquidityTool.d.ts +1 -0
  142. package/dist/tools/builtin/pool/PreviewAddLiquidityTool.d.ts.map +1 -1
  143. package/dist/tools/builtin/pool/PreviewAddLiquidityTool.js +5 -3
  144. package/dist/tools/builtin/pool/PreviewAddLiquidityTool.js.map +1 -1
  145. package/dist/tools/builtin/pool/TopPoolsTool.d.ts.map +1 -1
  146. package/dist/tools/builtin/pool/TopPoolsTool.js +4 -3
  147. package/dist/tools/builtin/pool/TopPoolsTool.js.map +1 -1
  148. package/dist/tools/builtin/pool-subgraph/SubgraphCoinPoolPairsTool.d.ts +54 -0
  149. package/dist/tools/builtin/pool-subgraph/SubgraphCoinPoolPairsTool.d.ts.map +1 -0
  150. package/dist/tools/builtin/pool-subgraph/SubgraphCoinPoolPairsTool.js +98 -0
  151. package/dist/tools/builtin/pool-subgraph/SubgraphCoinPoolPairsTool.js.map +1 -0
  152. package/dist/tools/builtin/pool-subgraph/SubgraphPoolByAddressTool.d.ts +63 -0
  153. package/dist/tools/builtin/pool-subgraph/SubgraphPoolByAddressTool.d.ts.map +1 -0
  154. package/dist/tools/builtin/pool-subgraph/SubgraphPoolByAddressTool.js +82 -0
  155. package/dist/tools/builtin/pool-subgraph/SubgraphPoolByAddressTool.js.map +1 -0
  156. package/dist/tools/builtin/pool-subgraph/SubgraphPoolByPositionIdTool.d.ts +79 -0
  157. package/dist/tools/builtin/pool-subgraph/SubgraphPoolByPositionIdTool.d.ts.map +1 -0
  158. package/dist/tools/builtin/pool-subgraph/SubgraphPoolByPositionIdTool.js +97 -0
  159. package/dist/tools/builtin/pool-subgraph/SubgraphPoolByPositionIdTool.js.map +1 -0
  160. package/dist/tools/builtin/pool-subgraph/SubgraphPoolSearchTool.d.ts +77 -0
  161. package/dist/tools/builtin/pool-subgraph/SubgraphPoolSearchTool.d.ts.map +1 -0
  162. package/dist/tools/builtin/pool-subgraph/SubgraphPoolSearchTool.js +190 -0
  163. package/dist/tools/builtin/pool-subgraph/SubgraphPoolSearchTool.js.map +1 -0
  164. package/dist/tools/builtin/pool-subgraph/SubgraphPositionDetailTool.d.ts +107 -0
  165. package/dist/tools/builtin/pool-subgraph/SubgraphPositionDetailTool.d.ts.map +1 -0
  166. package/dist/tools/builtin/pool-subgraph/SubgraphPositionDetailTool.js +92 -0
  167. package/dist/tools/builtin/pool-subgraph/SubgraphPositionDetailTool.js.map +1 -0
  168. package/dist/tools/builtin/pool-subgraph/SubgraphTrendingPoolsTool.d.ts +56 -0
  169. package/dist/tools/builtin/pool-subgraph/SubgraphTrendingPoolsTool.d.ts.map +1 -0
  170. package/dist/tools/builtin/pool-subgraph/SubgraphTrendingPoolsTool.js +94 -0
  171. package/dist/tools/builtin/pool-subgraph/SubgraphTrendingPoolsTool.js.map +1 -0
  172. package/dist/tools/builtin/pool-subgraph/index.d.ts +13 -0
  173. package/dist/tools/builtin/pool-subgraph/index.d.ts.map +1 -0
  174. package/dist/tools/builtin/pool-subgraph/index.js +18 -0
  175. package/dist/tools/builtin/pool-subgraph/index.js.map +1 -0
  176. package/dist/tools/builtin/token/TokenAnalyticsTool.d.ts.map +1 -1
  177. package/dist/tools/builtin/token/TokenAnalyticsTool.js +4 -3
  178. package/dist/tools/builtin/token/TokenAnalyticsTool.js.map +1 -1
  179. package/dist/tools/builtin/token/TokenHoldersTool.d.ts.map +1 -1
  180. package/dist/tools/builtin/token/TokenHoldersTool.js +4 -3
  181. package/dist/tools/builtin/token/TokenHoldersTool.js.map +1 -1
  182. package/dist/tools/builtin/token/TokenInfoTool.d.ts +6 -2
  183. package/dist/tools/builtin/token/TokenInfoTool.d.ts.map +1 -1
  184. package/dist/tools/builtin/token/TokenInfoTool.js +66 -8
  185. package/dist/tools/builtin/token/TokenInfoTool.js.map +1 -1
  186. package/dist/tools/builtin/token/TokenScoreTool.d.ts.map +1 -1
  187. package/dist/tools/builtin/token/TokenScoreTool.js +4 -3
  188. package/dist/tools/builtin/token/TokenScoreTool.js.map +1 -1
  189. package/dist/tools/builtin/token/TopGainersTool.d.ts +10 -19
  190. package/dist/tools/builtin/token/TopGainersTool.d.ts.map +1 -1
  191. package/dist/tools/builtin/token/TopGainersTool.js +44 -54
  192. package/dist/tools/builtin/token/TopGainersTool.js.map +1 -1
  193. package/dist/tools/builtin/token/TopLosersTool.d.ts.map +1 -1
  194. package/dist/tools/builtin/token/TopLosersTool.js +3 -2
  195. package/dist/tools/builtin/token/TopLosersTool.js.map +1 -1
  196. package/dist/tools/builtin/token/TrendingTokensTool.d.ts +1 -1
  197. package/dist/tools/builtin/token/TrendingTokensTool.d.ts.map +1 -1
  198. package/dist/tools/builtin/token/TrendingTokensTool.js +20 -12
  199. package/dist/tools/builtin/token/TrendingTokensTool.js.map +1 -1
  200. package/dist/tools/builtin/token/index.d.ts +0 -2
  201. package/dist/tools/builtin/token/index.d.ts.map +1 -1
  202. package/dist/tools/builtin/token/index.js +1 -3
  203. package/dist/tools/builtin/token/index.js.map +1 -1
  204. package/dist/tools/builtin/wallet/TransactionByHashTool.d.ts.map +1 -1
  205. package/dist/tools/builtin/wallet/TransactionByHashTool.js +4 -3
  206. package/dist/tools/builtin/wallet/TransactionByHashTool.js.map +1 -1
  207. package/dist/tools/builtin/wallet/WalletApprovalsTool.d.ts.map +1 -1
  208. package/dist/tools/builtin/wallet/WalletApprovalsTool.js +4 -3
  209. package/dist/tools/builtin/wallet/WalletApprovalsTool.js.map +1 -1
  210. package/dist/tools/builtin/wallet/WalletDefiPositionsTool.d.ts.map +1 -1
  211. package/dist/tools/builtin/wallet/WalletDefiPositionsTool.js +4 -3
  212. package/dist/tools/builtin/wallet/WalletDefiPositionsTool.js.map +1 -1
  213. package/dist/tools/builtin/wallet/WalletDefiProtocolPositionsTool.d.ts.map +1 -1
  214. package/dist/tools/builtin/wallet/WalletDefiProtocolPositionsTool.js +4 -3
  215. package/dist/tools/builtin/wallet/WalletDefiProtocolPositionsTool.js.map +1 -1
  216. package/dist/tools/builtin/wallet/WalletDefiSummaryTool.d.ts.map +1 -1
  217. package/dist/tools/builtin/wallet/WalletDefiSummaryTool.js +4 -3
  218. package/dist/tools/builtin/wallet/WalletDefiSummaryTool.js.map +1 -1
  219. package/dist/tools/builtin/wallet/WalletHistoryTool.d.ts.map +1 -1
  220. package/dist/tools/builtin/wallet/WalletHistoryTool.js +5 -4
  221. package/dist/tools/builtin/wallet/WalletHistoryTool.js.map +1 -1
  222. package/dist/tools/builtin/wallet/WalletNetWorthTool.js +1 -1
  223. package/dist/tools/builtin/wallet/WalletNetWorthTool.js.map +1 -1
  224. package/dist/tools/builtin/wallet/WalletNftTransfersTool.d.ts.map +1 -1
  225. package/dist/tools/builtin/wallet/WalletNftTransfersTool.js +5 -4
  226. package/dist/tools/builtin/wallet/WalletNftTransfersTool.js.map +1 -1
  227. package/dist/tools/builtin/wallet/WalletPnlSummaryTool.d.ts.map +1 -1
  228. package/dist/tools/builtin/wallet/WalletPnlSummaryTool.js +4 -3
  229. package/dist/tools/builtin/wallet/WalletPnlSummaryTool.js.map +1 -1
  230. package/dist/tools/builtin/wallet/WalletPnlTool.d.ts.map +1 -1
  231. package/dist/tools/builtin/wallet/WalletPnlTool.js +4 -3
  232. package/dist/tools/builtin/wallet/WalletPnlTool.js.map +1 -1
  233. package/dist/tools/builtin/wallet/WalletTokenBalancesTool.d.ts.map +1 -1
  234. package/dist/tools/builtin/wallet/WalletTokenBalancesTool.js +4 -3
  235. package/dist/tools/builtin/wallet/WalletTokenBalancesTool.js.map +1 -1
  236. package/dist/tools/builtin/wallet/WalletTokenTransfersTool.d.ts.map +1 -1
  237. package/dist/tools/builtin/wallet/WalletTokenTransfersTool.js +5 -4
  238. package/dist/tools/builtin/wallet/WalletTokenTransfersTool.js.map +1 -1
  239. package/dist/tools/builtin/wallet/index.d.ts +3 -0
  240. package/dist/tools/builtin/wallet/index.d.ts.map +1 -1
  241. package/dist/tools/builtin/wallet/index.js +5 -1
  242. package/dist/tools/builtin/wallet/index.js.map +1 -1
  243. package/dist/tools/builtin/wallet-action/ApproveTokenTool.d.ts +25 -0
  244. package/dist/tools/builtin/wallet-action/ApproveTokenTool.d.ts.map +1 -0
  245. package/dist/tools/builtin/wallet-action/ApproveTokenTool.js +98 -0
  246. package/dist/tools/builtin/wallet-action/ApproveTokenTool.js.map +1 -0
  247. package/dist/tools/builtin/wallet-action/BaseWalletActionTool.d.ts +211 -0
  248. package/dist/tools/builtin/wallet-action/BaseWalletActionTool.d.ts.map +1 -0
  249. package/dist/tools/builtin/wallet-action/BaseWalletActionTool.js +499 -0
  250. package/dist/tools/builtin/wallet-action/BaseWalletActionTool.js.map +1 -0
  251. package/dist/tools/builtin/wallet-action/BuyTokenTool.d.ts +240 -0
  252. package/dist/tools/builtin/wallet-action/BuyTokenTool.d.ts.map +1 -0
  253. package/dist/tools/builtin/wallet-action/BuyTokenTool.js +1257 -0
  254. package/dist/tools/builtin/wallet-action/BuyTokenTool.js.map +1 -0
  255. package/dist/tools/builtin/wallet-action/SendNativeTool.d.ts +41 -0
  256. package/dist/tools/builtin/wallet-action/SendNativeTool.d.ts.map +1 -0
  257. package/dist/tools/builtin/wallet-action/SendNativeTool.js +127 -0
  258. package/dist/tools/builtin/wallet-action/SendNativeTool.js.map +1 -0
  259. package/dist/tools/builtin/wallet-action/SendTokenTool.d.ts +63 -0
  260. package/dist/tools/builtin/wallet-action/SendTokenTool.d.ts.map +1 -0
  261. package/dist/tools/builtin/wallet-action/SendTokenTool.js +294 -0
  262. package/dist/tools/builtin/wallet-action/SendTokenTool.js.map +1 -0
  263. package/dist/tools/builtin/wallet-action/SwapTokenTool.d.ts +247 -0
  264. package/dist/tools/builtin/wallet-action/SwapTokenTool.d.ts.map +1 -0
  265. package/dist/tools/builtin/wallet-action/SwapTokenTool.js +1258 -0
  266. package/dist/tools/builtin/wallet-action/SwapTokenTool.js.map +1 -0
  267. package/dist/tools/builtin/wallet-action/UnwrapNativeTool.d.ts +20 -0
  268. package/dist/tools/builtin/wallet-action/UnwrapNativeTool.d.ts.map +1 -0
  269. package/dist/tools/builtin/wallet-action/UnwrapNativeTool.js +36 -0
  270. package/dist/tools/builtin/wallet-action/UnwrapNativeTool.js.map +1 -0
  271. package/dist/tools/builtin/wallet-action/WrapNativeTool.d.ts +23 -0
  272. package/dist/tools/builtin/wallet-action/WrapNativeTool.d.ts.map +1 -0
  273. package/dist/tools/builtin/wallet-action/WrapNativeTool.js +54 -0
  274. package/dist/tools/builtin/wallet-action/WrapNativeTool.js.map +1 -0
  275. package/dist/tools/builtin/wallet-action/amountSpec.d.ts +62 -0
  276. package/dist/tools/builtin/wallet-action/amountSpec.d.ts.map +1 -0
  277. package/dist/tools/builtin/wallet-action/amountSpec.js +93 -0
  278. package/dist/tools/builtin/wallet-action/amountSpec.js.map +1 -0
  279. package/dist/tools/builtin/wallet-action/gasReserve.d.ts +42 -0
  280. package/dist/tools/builtin/wallet-action/gasReserve.d.ts.map +1 -0
  281. package/dist/tools/builtin/wallet-action/gasReserve.js +103 -0
  282. package/dist/tools/builtin/wallet-action/gasReserve.js.map +1 -0
  283. package/dist/tools/builtin/wallet-action/index.d.ts +9 -0
  284. package/dist/tools/builtin/wallet-action/index.d.ts.map +1 -0
  285. package/dist/tools/builtin/wallet-action/index.js +20 -0
  286. package/dist/tools/builtin/wallet-action/index.js.map +1 -0
  287. package/dist/tools/chainResolver.d.ts +98 -0
  288. package/dist/tools/chainResolver.d.ts.map +1 -0
  289. package/dist/tools/chainResolver.js +302 -0
  290. package/dist/tools/chainResolver.js.map +1 -0
  291. package/dist/types/index.d.ts +218 -7
  292. package/dist/types/index.d.ts.map +1 -1
  293. package/package.json +7 -3
  294. package/dist/tools/builtin/ai/MoralisCortexTool.d.ts +0 -33
  295. package/dist/tools/builtin/ai/MoralisCortexTool.d.ts.map +0 -1
  296. package/dist/tools/builtin/ai/MoralisCortexTool.js +0 -76
  297. package/dist/tools/builtin/ai/MoralisCortexTool.js.map +0 -1
  298. package/dist/tools/builtin/ai/SolanaCortexTool.d.ts +0 -22
  299. package/dist/tools/builtin/ai/SolanaCortexTool.d.ts.map +0 -1
  300. package/dist/tools/builtin/ai/SolanaCortexTool.js +0 -80
  301. package/dist/tools/builtin/ai/SolanaCortexTool.js.map +0 -1
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ApproveTokenTool = void 0;
4
+ const BaseWalletActionTool_1 = require("./BaseWalletActionTool");
5
+ /**
6
+ * Tool: open-approve-token-form
7
+ *
8
+ * Opens the ERC-20 `approve` form. `amount` is optional — when omitted the FE
9
+ * defaults to unlimited (max uint256). Either `contract_address` or
10
+ * `token_symbol` must be provided; the symbol is resolved to an address via
11
+ * the connected wallet's balances first, then a Pantograph search.
12
+ */
13
+ class ApproveTokenTool extends BaseWalletActionTool_1.BaseWalletActionTool {
14
+ name = 'open-approve-token-form';
15
+ actionType = 'approve_token';
16
+ component = 'ApproveTokenForm';
17
+ // `amount` is intentionally NOT listed: blank = unlimited approval, a valid
18
+ // default — so we never ask the user to fill it. Only the spender is required.
19
+ userInputFields = [{ key: 'spender_address', label: 'the spender address to approve' }];
20
+ constructor(config) {
21
+ super(config);
22
+ }
23
+ description = 'Open the APPROVE TOKEN form so the user can grant a spender allowance on an ERC-20 token. Use ' +
24
+ 'when the user says "approve USDC for Uniswap", "cấp quyền 100 USDT cho 0x…", "revoke approval". ' +
25
+ 'Pass `contract_address` when you have it; otherwise pass `token_symbol` (e.g. "USDC") and the tool ' +
26
+ 'auto-resolves the contract. Always pass `spender_address` (the contract being approved). ' +
27
+ 'Pass `amount` for a specific allowance; omit for unlimited (max uint256). For approving 0 to ' +
28
+ 'revoke, pass amount="0".';
29
+ parameters = [
30
+ { name: 'chain', type: 'string', description: 'Hex chain id. Defaults to connected chain.', required: false },
31
+ {
32
+ name: 'contract_address',
33
+ type: 'string',
34
+ description: 'ERC-20 token contract address (0x…). Pass when known. Otherwise leave empty and provide token_symbol.',
35
+ required: false,
36
+ },
37
+ {
38
+ name: 'token_symbol',
39
+ type: 'string',
40
+ description: 'Token symbol (e.g. "USDC"). Required when contract_address is not given. Used to auto-resolve the contract.',
41
+ required: false,
42
+ },
43
+ { name: 'decimals', type: 'number', description: 'Token decimals.', required: false },
44
+ {
45
+ name: 'spender_address',
46
+ type: 'string',
47
+ description: 'EVM address of the spender contract being approved (0x…). Omit when unknown — the form will prompt the user.',
48
+ required: false,
49
+ },
50
+ {
51
+ name: 'amount',
52
+ type: 'string',
53
+ description: 'Human-readable allowance amount. Omit for UNLIMITED (max uint256). Pass "0" to revoke.',
54
+ required: false,
55
+ },
56
+ ];
57
+ async buildParameters(args, userContext) {
58
+ const chain = this.requireChain(args, userContext) ?? undefined;
59
+ const resolved = await this.resolveTokenRef({
60
+ contractArg: args.contract_address,
61
+ symbolArg: args.token_symbol,
62
+ decimalsArg: args.decimals,
63
+ chain,
64
+ walletAddress: userContext?.walletAddress ?? undefined,
65
+ });
66
+ if ('error' in resolved) {
67
+ return {
68
+ error: 'token_not_found',
69
+ symbol: resolved.key,
70
+ _instructions: `Could not resolve token "${resolved.key}" to a contract address on this chain. Ask the user to provide the token contract directly.`,
71
+ };
72
+ }
73
+ const token = resolved.token;
74
+ const spender = this.normaliseAddress(args.spender_address);
75
+ const params = {};
76
+ if (token?.address)
77
+ params.contract_address = token.address;
78
+ if (spender)
79
+ params.spender_address = spender;
80
+ if (token?.symbol)
81
+ params.token_symbol = token.symbol;
82
+ if (token?.decimals !== undefined)
83
+ params.decimals = String(token.decimals);
84
+ // Amount is optional: pass through "0" for revoke, positive numbers as-is.
85
+ if (typeof args.amount === 'string' && args.amount.trim()) {
86
+ const v = args.amount.trim();
87
+ const n = parseFloat(v);
88
+ if (Number.isFinite(n) && n >= 0)
89
+ params.amount = v;
90
+ }
91
+ else if (typeof args.amount === 'number' && Number.isFinite(args.amount) && args.amount >= 0) {
92
+ params.amount = String(args.amount);
93
+ }
94
+ return params;
95
+ }
96
+ }
97
+ exports.ApproveTokenTool = ApproveTokenTool;
98
+ //# sourceMappingURL=ApproveTokenTool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ApproveTokenTool.js","sourceRoot":"","sources":["../../../../src/tools/builtin/wallet-action/ApproveTokenTool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,211 @@
1
+ import { BaseTool } from '../../BaseTool';
2
+ import { MoralisService, type MoralisServiceConfig } from '../../../services/MoralisService';
3
+ import { type NativeActionKind } from './gasReserve';
4
+ import type { SuggestedAction, ToolKind, ToolResult, UIPayload, UserContext, WalletActionType } from '../../../types';
5
+ /** Resolved token identity used to pre-fill a wallet-action form. */
6
+ export interface ResolvedToken {
7
+ address: string;
8
+ symbol?: string;
9
+ name?: string;
10
+ decimals?: number;
11
+ }
12
+ /**
13
+ * Shared base for wallet-action tools.
14
+ *
15
+ * Each concrete tool resolves identifiers + validates inputs, then returns the
16
+ * `WalletActionProps` payload below. The FE owns the form and the on-chain tx;
17
+ * the agent only forwards a structured intent.
18
+ *
19
+ * Subclasses implement `buildAction()` returning the fully-shaped payload (or
20
+ * an `{ error, _instructions }` object that aborts before emitting UI).
21
+ */
22
+ export declare abstract class BaseWalletActionTool extends BaseTool {
23
+ kind: ToolKind;
24
+ category: string;
25
+ noSuggestions: boolean;
26
+ protected abstract readonly actionType: WalletActionType;
27
+ protected abstract readonly component: string;
28
+ /**
29
+ * The fields the *user* is expected to fill in the form, with a friendly,
30
+ * user-facing label (in English — the LLM translates to the user's language).
31
+ *
32
+ * Used to build the `_instructions`: any of these whose value the tool could
33
+ * NOT pre-resolve is listed back to the LLM so it can ask the user to enter
34
+ * exactly those. Internal/derived fields (contract_address, decimals, …) must
35
+ * NOT appear here — the user never types them.
36
+ *
37
+ * Order matters: it's the order the LLM should mention missing fields in.
38
+ *
39
+ * `key` may be a single param name or an array — for an array, the field
40
+ * counts as filled when ANY of the listed params has a value (e.g. a buy
41
+ * amount that can be expressed as either `buy_amount` or `pay_with_amount`).
42
+ */
43
+ protected readonly userInputFields: ReadonlyArray<{
44
+ key: string | readonly string[];
45
+ label: string;
46
+ }>;
47
+ /**
48
+ * Optional Moralis service used to resolve token symbols → contract addresses.
49
+ * Concrete tools that accept a `token_symbol` parameter should accept a
50
+ * `MoralisServiceConfig` in their constructor and forward it to `super()`.
51
+ */
52
+ protected readonly moralis?: MoralisService;
53
+ constructor(config?: MoralisServiceConfig);
54
+ /**
55
+ * Resolve a token reference — a SYMBOL ("USDC") or a contract ADDRESS
56
+ * ("0x…") — to a full `ResolvedToken` on a given chain. The Pantograph search
57
+ * endpoint and wallet balances both key on either, so a single path handles
58
+ * both: callers no longer need to special-case address vs symbol.
59
+ *
60
+ * 1. Connected wallet's balances (most reliable — the user actually holds it).
61
+ * 2. Pantograph token search (fallback).
62
+ *
63
+ * Matching: when `key` is an address we match on `token_address`; otherwise on
64
+ * `symbol`. Returns undefined when moralis is not configured or nothing
65
+ * matches — callers decide whether to error or leave the field blank.
66
+ *
67
+ * Mirrors the pattern in TokenScoreTool / TokenAnalyticsTool / TokenHoldersTool.
68
+ */
69
+ protected resolveContractAddress(key: string, chain?: string, walletAddress?: string): Promise<ResolvedToken | undefined>;
70
+ /** Parse a decimals arg (number or numeric string) → integer, or undefined. */
71
+ protected parseDecimals(value: unknown): number | undefined;
72
+ /**
73
+ * Shared token-resolution for any tool that accepts a `contract_address` +
74
+ * `token_symbol` (+ optional `decimals`) pair. Handles the common flow once:
75
+ *
76
+ * - A valid address in `contractArg` is used directly (and still enriched
77
+ * with symbol/decimals via lookup when possible).
78
+ * - Otherwise the address OR symbol in `contractArg`/`symbolArg` is resolved
79
+ * through {@link resolveContractAddress} (which now matches either).
80
+ * - Returns `{ token: undefined }` when nothing was supplied — the caller
81
+ * decides whether that's a picker, an error, or a blank form field.
82
+ * - Returns `{ error: 'token_not_found' }` when a ref was given but could
83
+ * not be resolved on this chain.
84
+ *
85
+ * `decimalsArg` (if a valid integer) always wins over the looked-up decimals.
86
+ */
87
+ protected resolveTokenRef(input: {
88
+ contractArg?: unknown;
89
+ symbolArg?: unknown;
90
+ decimalsArg?: unknown;
91
+ chain?: string;
92
+ walletAddress?: string;
93
+ }): Promise<{
94
+ token?: ResolvedToken;
95
+ } | {
96
+ error: 'token_not_found';
97
+ key: string;
98
+ }>;
99
+ /**
100
+ * Build the parameters map for this action. Possible return shapes:
101
+ * - `Record<string, string>` — open the form pre-filled with these params.
102
+ * - `{ error, _instructions, … }` — abort; the LLM surfaces the error.
103
+ * - `{ actionButtons: SuggestedAction[], _instructions?, message? }` — do
104
+ * NOT open the form; instead emit clickable buttons (e.g. token picker
105
+ * when the user said "send token" without naming one). The agent's
106
+ * answer is the `_instructions` text — kept short, addressed to the user.
107
+ * - `{ ui: UIPayload, _instructions?, … }` — bypass the default form UI
108
+ * payload; emit a custom one (e.g. a swap-preview component). The base
109
+ * forwards `ui` as-is to AgentCore.uiActions.
110
+ */
111
+ protected abstract buildParameters(args: Record<string, unknown>, userContext?: UserContext): Promise<Record<string, string> | {
112
+ error: string;
113
+ _instructions?: string;
114
+ [k: string]: unknown;
115
+ } | {
116
+ actionButtons: SuggestedAction[];
117
+ _instructions?: string;
118
+ message?: string;
119
+ [k: string]: unknown;
120
+ } | {
121
+ ui: UIPayload;
122
+ _instructions?: string;
123
+ [k: string]: unknown;
124
+ }>;
125
+ protected requireWallet(userContext?: UserContext): {
126
+ ok: true;
127
+ address: string;
128
+ } | {
129
+ ok: false;
130
+ payload: unknown;
131
+ };
132
+ protected requireChain(args: Record<string, unknown>, userContext?: UserContext): string | null;
133
+ protected normaliseAddress(value: unknown): string | null;
134
+ protected normaliseAmount(value: unknown): string | null;
135
+ /**
136
+ * Resolve a user-supplied amount that may be a plain token amount ("100"), a
137
+ * PERCENT of the held balance ("50%"), or a USD value ("5$"). Plain amounts
138
+ * pass straight through; percent/usd need the token's balance + USD price,
139
+ * read here from the wallet's balances in one call (works for an ERC-20
140
+ * address or the `'native'` sentinel).
141
+ *
142
+ * Returns:
143
+ * - `{ amount }` — concrete token amount string (plain decimal).
144
+ * - `null` — no amount was given (empty/invalid) → caller leaves it blank.
145
+ * - `{ error, _instructions }` — a percent/usd was given but we couldn't get
146
+ * the balance/price needed to convert it; caller surfaces the message.
147
+ */
148
+ protected resolveAmountInput(input: {
149
+ rawAmount: unknown;
150
+ tokenAddress: string;
151
+ symbol?: string;
152
+ chain?: string;
153
+ walletAddress?: string;
154
+ /**
155
+ * When set AND `tokenAddress` is the native coin, the amount is sized off the
156
+ * SPENDABLE balance (`balance − gasReserve`) instead of the raw balance, so a
157
+ * percent ("100%") never leaves the user unable to pay gas, and a plain amount
158
+ * that exceeds spendable is rejected. The reserve is estimated silently and
159
+ * never surfaced — the user only ever sees the spendable figure. Omit for
160
+ * ERC-20 spends (gas is paid in the native coin, not the token).
161
+ */
162
+ gasKind?: NativeActionKind;
163
+ }): Promise<{
164
+ amount: string;
165
+ } | {
166
+ error: string;
167
+ _instructions: string;
168
+ } | null>;
169
+ /**
170
+ * Spendable native balance (`held − gasReserve`) in human token units, given a
171
+ * balance already read from the wallet. Silently falls back to the full balance
172
+ * when the gas price / chain decimals can't be resolved. See {@link gasReserve}.
173
+ */
174
+ protected computeNativeSpendable(chain: string, gasKind: NativeActionKind, balanceNum: number): Promise<number>;
175
+ /**
176
+ * Resolve the SPENDABLE native balance for the form card as a plain-decimal
177
+ * STRING (`held − gasReserve`). Returns undefined when the wallet's native
178
+ * balance can't be read — the FE then falls back to the raw balance it already
179
+ * fetches for itself. Best-effort and silent; never throws.
180
+ */
181
+ protected resolveNativeSpendableFormatted(chain: string | undefined, walletAddress: string | undefined, gasKind: NativeActionKind): Promise<string | undefined>;
182
+ /**
183
+ * Read a single token's held balance + USD price from the connected wallet's
184
+ * balances (one Moralis call). `tokenAddress` may be an ERC-20 address or the
185
+ * `'native'` sentinel. Returns `undefined` when balances can't be read or the
186
+ * token isn't held; `balance`/`usdPrice` are individually `undefined` when the
187
+ * source omits them.
188
+ */
189
+ protected readTokenBalanceAndPrice(tokenAddress: string, chain?: string, walletAddress?: string): Promise<{
190
+ balance?: number;
191
+ usdPrice?: number;
192
+ balanceFormatted?: string;
193
+ symbol?: string;
194
+ } | undefined>;
195
+ /**
196
+ * Sanitize an amount STRING from an external source (e.g. Moralis
197
+ * `balance_formatted`): expand e-notation to a plain decimal; otherwise pass
198
+ * the original string through unchanged so we never lose precision by
199
+ * round-tripping a large/precise balance through `Number`.
200
+ */
201
+ protected cleanAmountString(s: string): string;
202
+ /** Format a number as a plain decimal string, expanding any e-notation. */
203
+ protected toPlainDecimal(n: number): string;
204
+ /**
205
+ * Override `execute` so the `ui` payload we return from `run()` is lifted
206
+ * onto the ToolResult envelope (BaseTool only copies `data`).
207
+ */
208
+ execute(args: Record<string, unknown>, userContext?: UserContext): Promise<ToolResult>;
209
+ protected run(args: Record<string, unknown>, userContext?: UserContext): Promise<unknown>;
210
+ }
211
+ //# sourceMappingURL=BaseWalletActionTool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseWalletActionTool.d.ts","sourceRoot":"","sources":["../../../../src/tools/builtin/wallet-action/BaseWalletActionTool.ts"],"names":[],"mappings":"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"}