@hashgraphonline/standards-agent-kit 0.0.37 → 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 (251) hide show
  1. package/dist/cjs/builders/hcs10/hcs10-builder.d.ts +262 -0
  2. package/dist/cjs/builders/index.d.ts +2 -0
  3. package/dist/cjs/builders/types.d.ts +10 -0
  4. package/dist/cjs/index.d.ts +3 -1
  5. package/dist/cjs/init/init.d.ts +21 -22
  6. package/dist/cjs/plugins/PluginInterface.d.ts +4 -80
  7. package/dist/cjs/plugins/PluginRegistry.d.ts +1 -47
  8. package/dist/cjs/plugins/defi/index.d.ts +7 -4
  9. package/dist/cjs/plugins/hedera/HbarPricePlugin.d.ts +7 -35
  10. package/dist/cjs/plugins/index.d.ts +0 -5
  11. package/dist/cjs/plugins/weather/index.d.ts +6 -5
  12. package/dist/cjs/standards-agent-kit.cjs +1 -1
  13. package/dist/cjs/standards-agent-kit.cjs.map +1 -1
  14. package/dist/cjs/state/state-types.d.ts +8 -8
  15. package/dist/cjs/tools/hcs10/AcceptConnectionRequestTool.d.ts +40 -0
  16. package/dist/cjs/tools/hcs10/CheckMessagesTool.d.ts +40 -0
  17. package/dist/cjs/tools/hcs10/ConnectionMonitorTool.d.ts +134 -0
  18. package/dist/cjs/tools/hcs10/FindRegistrationsTool.d.ts +34 -0
  19. package/dist/cjs/tools/hcs10/InitiateConnectionTool.d.ts +43 -0
  20. package/dist/cjs/tools/hcs10/ListConnectionsTool.d.ts +34 -0
  21. package/dist/cjs/tools/hcs10/ListUnapprovedConnectionRequestsTool.d.ts +15 -0
  22. package/dist/cjs/tools/hcs10/ManageConnectionRequestsTool.d.ts +34 -0
  23. package/dist/cjs/tools/hcs10/RegisterAgentTool.d.ts +218 -0
  24. package/dist/cjs/tools/hcs10/RetrieveProfileTool.d.ts +33 -0
  25. package/dist/cjs/tools/hcs10/SendMessageToConnectionTool.d.ts +40 -0
  26. package/dist/cjs/tools/hcs10/base-hcs10-tools.d.ts +28 -0
  27. package/dist/cjs/tools/hcs10/hcs10-tool-params.d.ts +18 -0
  28. package/dist/cjs/tools/hcs10/index.d.ts +13 -0
  29. package/dist/cjs/tools/index.d.ts +1 -13
  30. package/dist/es/builders/hcs10/hcs10-builder.d.ts +262 -0
  31. package/dist/es/builders/index.d.ts +2 -0
  32. package/dist/es/builders/types.d.ts +10 -0
  33. package/dist/es/index.d.ts +3 -1
  34. package/dist/es/init/init.d.ts +21 -22
  35. package/dist/es/plugins/PluginInterface.d.ts +4 -80
  36. package/dist/es/plugins/PluginRegistry.d.ts +1 -47
  37. package/dist/es/plugins/defi/index.d.ts +7 -4
  38. package/dist/es/plugins/hedera/HbarPricePlugin.d.ts +7 -35
  39. package/dist/es/plugins/index.d.ts +0 -5
  40. package/dist/es/plugins/weather/index.d.ts +6 -5
  41. package/dist/es/standards-agent-kit.es.js +10 -18
  42. package/dist/es/standards-agent-kit.es.js.map +1 -1
  43. package/dist/es/standards-agent-kit.es10.js +29 -76
  44. package/dist/es/standards-agent-kit.es10.js.map +1 -1
  45. package/dist/es/standards-agent-kit.es11.js +61 -384
  46. package/dist/es/standards-agent-kit.es11.js.map +1 -1
  47. package/dist/es/standards-agent-kit.es12.js +22 -190
  48. package/dist/es/standards-agent-kit.es12.js.map +1 -1
  49. package/dist/es/standards-agent-kit.es13.js +26 -138
  50. package/dist/es/standards-agent-kit.es13.js.map +1 -1
  51. package/dist/es/standards-agent-kit.es14.js +35 -59
  52. package/dist/es/standards-agent-kit.es14.js.map +1 -1
  53. package/dist/es/standards-agent-kit.es15.js +11 -117
  54. package/dist/es/standards-agent-kit.es15.js.map +1 -1
  55. package/dist/es/standards-agent-kit.es16.js +1 -1
  56. package/dist/es/standards-agent-kit.es16.js.map +1 -1
  57. package/dist/es/standards-agent-kit.es17.js +63 -46
  58. package/dist/es/standards-agent-kit.es17.js.map +1 -1
  59. package/dist/es/standards-agent-kit.es18.js +25 -74
  60. package/dist/es/standards-agent-kit.es18.js.map +1 -1
  61. package/dist/es/standards-agent-kit.es19.js +22 -13
  62. package/dist/es/standards-agent-kit.es19.js.map +1 -1
  63. package/dist/es/standards-agent-kit.es2.js +1381 -188
  64. package/dist/es/standards-agent-kit.es2.js.map +1 -1
  65. package/dist/es/standards-agent-kit.es20.js +3 -67
  66. package/dist/es/standards-agent-kit.es20.js.map +1 -1
  67. package/dist/es/standards-agent-kit.es3.js +285 -347
  68. package/dist/es/standards-agent-kit.es3.js.map +1 -1
  69. package/dist/es/standards-agent-kit.es4.js +22 -74
  70. package/dist/es/standards-agent-kit.es4.js.map +1 -1
  71. package/dist/es/standards-agent-kit.es5.js +127 -154
  72. package/dist/es/standards-agent-kit.es5.js.map +1 -1
  73. package/dist/es/standards-agent-kit.es6.js +21 -88
  74. package/dist/es/standards-agent-kit.es6.js.map +1 -1
  75. package/dist/es/standards-agent-kit.es7.js +28 -86
  76. package/dist/es/standards-agent-kit.es7.js.map +1 -1
  77. package/dist/es/standards-agent-kit.es8.js +27 -100
  78. package/dist/es/standards-agent-kit.es8.js.map +1 -1
  79. package/dist/es/standards-agent-kit.es9.js +35 -117
  80. package/dist/es/standards-agent-kit.es9.js.map +1 -1
  81. package/dist/es/state/state-types.d.ts +8 -8
  82. package/dist/es/tools/hcs10/AcceptConnectionRequestTool.d.ts +40 -0
  83. package/dist/es/tools/hcs10/CheckMessagesTool.d.ts +40 -0
  84. package/dist/es/tools/hcs10/ConnectionMonitorTool.d.ts +134 -0
  85. package/dist/es/tools/hcs10/FindRegistrationsTool.d.ts +34 -0
  86. package/dist/es/tools/hcs10/InitiateConnectionTool.d.ts +43 -0
  87. package/dist/es/tools/hcs10/ListConnectionsTool.d.ts +34 -0
  88. package/dist/es/tools/hcs10/ListUnapprovedConnectionRequestsTool.d.ts +15 -0
  89. package/dist/es/tools/hcs10/ManageConnectionRequestsTool.d.ts +34 -0
  90. package/dist/es/tools/hcs10/RegisterAgentTool.d.ts +218 -0
  91. package/dist/es/tools/hcs10/RetrieveProfileTool.d.ts +33 -0
  92. package/dist/es/tools/hcs10/SendMessageToConnectionTool.d.ts +40 -0
  93. package/dist/es/tools/hcs10/base-hcs10-tools.d.ts +28 -0
  94. package/dist/es/tools/hcs10/hcs10-tool-params.d.ts +18 -0
  95. package/dist/es/tools/hcs10/index.d.ts +13 -0
  96. package/dist/es/tools/index.d.ts +1 -13
  97. package/dist/umd/builders/hcs10/hcs10-builder.d.ts +262 -0
  98. package/dist/umd/builders/index.d.ts +2 -0
  99. package/dist/umd/builders/types.d.ts +10 -0
  100. package/dist/umd/index.d.ts +3 -1
  101. package/dist/umd/init/init.d.ts +21 -22
  102. package/dist/umd/plugins/PluginInterface.d.ts +4 -80
  103. package/dist/umd/plugins/PluginRegistry.d.ts +1 -47
  104. package/dist/umd/plugins/defi/index.d.ts +7 -4
  105. package/dist/umd/plugins/hedera/HbarPricePlugin.d.ts +7 -35
  106. package/dist/umd/plugins/index.d.ts +0 -5
  107. package/dist/umd/plugins/weather/index.d.ts +6 -5
  108. package/dist/umd/standards-agent-kit.umd.js +1 -164
  109. package/dist/umd/standards-agent-kit.umd.js.map +1 -1
  110. package/dist/umd/state/state-types.d.ts +8 -8
  111. package/dist/umd/tools/hcs10/AcceptConnectionRequestTool.d.ts +40 -0
  112. package/dist/umd/tools/hcs10/CheckMessagesTool.d.ts +40 -0
  113. package/dist/umd/tools/hcs10/ConnectionMonitorTool.d.ts +134 -0
  114. package/dist/umd/tools/hcs10/FindRegistrationsTool.d.ts +34 -0
  115. package/dist/umd/tools/hcs10/InitiateConnectionTool.d.ts +43 -0
  116. package/dist/umd/tools/hcs10/ListConnectionsTool.d.ts +34 -0
  117. package/dist/umd/tools/hcs10/ListUnapprovedConnectionRequestsTool.d.ts +15 -0
  118. package/dist/umd/tools/hcs10/ManageConnectionRequestsTool.d.ts +34 -0
  119. package/dist/umd/tools/hcs10/RegisterAgentTool.d.ts +218 -0
  120. package/dist/umd/tools/hcs10/RetrieveProfileTool.d.ts +33 -0
  121. package/dist/umd/tools/hcs10/SendMessageToConnectionTool.d.ts +40 -0
  122. package/dist/umd/tools/hcs10/base-hcs10-tools.d.ts +28 -0
  123. package/dist/umd/tools/hcs10/hcs10-tool-params.d.ts +18 -0
  124. package/dist/umd/tools/hcs10/index.d.ts +13 -0
  125. package/dist/umd/tools/index.d.ts +1 -13
  126. package/package.json +41 -41
  127. package/src/builders/hcs10/hcs10-builder.ts +2108 -0
  128. package/src/builders/index.ts +2 -0
  129. package/src/builders/types.ts +11 -0
  130. package/src/hcs10/HCS10Client.ts +3 -2
  131. package/src/index.ts +4 -2
  132. package/src/init/init.ts +85 -63
  133. package/src/plugins/PluginInterface.ts +15 -94
  134. package/src/plugins/PluginRegistry.ts +2 -98
  135. package/src/plugins/defi/index.ts +31 -118
  136. package/src/plugins/hedera/HbarPricePlugin.ts +19 -100
  137. package/src/plugins/index.ts +0 -5
  138. package/src/plugins/weather/index.ts +56 -40
  139. package/src/state/state-types.ts +9 -11
  140. package/src/tools/hcs10/AcceptConnectionRequestTool.ts +56 -0
  141. package/src/tools/hcs10/CheckMessagesTool.ts +73 -0
  142. package/src/tools/hcs10/ConnectionMonitorTool.ts +111 -0
  143. package/src/tools/hcs10/FindRegistrationsTool.ts +64 -0
  144. package/src/tools/hcs10/InitiateConnectionTool.ts +66 -0
  145. package/src/tools/hcs10/ListConnectionsTool.ts +58 -0
  146. package/src/tools/hcs10/ListUnapprovedConnectionRequestsTool.ts +26 -0
  147. package/src/tools/hcs10/ManageConnectionRequestsTool.ts +48 -0
  148. package/src/tools/hcs10/RegisterAgentTool.ts +213 -0
  149. package/src/tools/hcs10/RetrieveProfileTool.ts +61 -0
  150. package/src/tools/hcs10/SendMessageToConnectionTool.ts +45 -0
  151. package/src/tools/hcs10/base-hcs10-tools.ts +65 -0
  152. package/src/tools/hcs10/hcs10-tool-params.ts +21 -0
  153. package/src/tools/hcs10/index.ts +13 -0
  154. package/src/tools/index.ts +2 -13
  155. package/src/utils/HederaClient.ts +2 -2
  156. package/src/utils/ensure-agent-has-hbar.ts +3 -4
  157. package/dist/cjs/agents/index.d.ts +0 -0
  158. package/dist/cjs/plugins/BasePlugin.d.ts +0 -28
  159. package/dist/cjs/plugins/GenericPlugin.d.ts +0 -17
  160. package/dist/cjs/plugins/HCS10Plugin.d.ts +0 -13
  161. package/dist/cjs/plugins/PluginLoader.d.ts +0 -38
  162. package/dist/cjs/plugins/openconvai/OpenConvAIPlugin.d.ts +0 -23
  163. package/dist/cjs/plugins/openconvai/index.d.ts +0 -1
  164. package/dist/cjs/tools/AcceptConnectionRequestTool.d.ts +0 -33
  165. package/dist/cjs/tools/CheckMessagesTool.d.ts +0 -34
  166. package/dist/cjs/tools/ConnectionMonitorTool.d.ts +0 -100
  167. package/dist/cjs/tools/ConnectionTool.d.ts +0 -40
  168. package/dist/cjs/tools/FindRegistrationsTool.d.ts +0 -28
  169. package/dist/cjs/tools/InitiateConnectionTool.d.ts +0 -30
  170. package/dist/cjs/tools/ListConnectionsTool.d.ts +0 -33
  171. package/dist/cjs/tools/ListUnapprovedConnectionRequestsTool.d.ts +0 -41
  172. package/dist/cjs/tools/ManageConnectionRequestsTool.d.ts +0 -38
  173. package/dist/cjs/tools/RegisterAgentTool.d.ts +0 -188
  174. package/dist/cjs/tools/RetrieveProfileTool.d.ts +0 -34
  175. package/dist/cjs/tools/SendMessageToConnectionTool.d.ts +0 -34
  176. package/dist/cjs/tools/SendMessageTool.d.ts +0 -40
  177. package/dist/es/agents/index.d.ts +0 -0
  178. package/dist/es/plugins/BasePlugin.d.ts +0 -28
  179. package/dist/es/plugins/GenericPlugin.d.ts +0 -17
  180. package/dist/es/plugins/HCS10Plugin.d.ts +0 -13
  181. package/dist/es/plugins/PluginLoader.d.ts +0 -38
  182. package/dist/es/plugins/openconvai/OpenConvAIPlugin.d.ts +0 -23
  183. package/dist/es/plugins/openconvai/index.d.ts +0 -1
  184. package/dist/es/standards-agent-kit.es21.js +0 -92
  185. package/dist/es/standards-agent-kit.es21.js.map +0 -1
  186. package/dist/es/standards-agent-kit.es22.js +0 -7
  187. package/dist/es/standards-agent-kit.es22.js.map +0 -1
  188. package/dist/es/standards-agent-kit.es23.js +0 -106
  189. package/dist/es/standards-agent-kit.es23.js.map +0 -1
  190. package/dist/es/standards-agent-kit.es24.js +0 -7
  191. package/dist/es/standards-agent-kit.es24.js.map +0 -1
  192. package/dist/es/standards-agent-kit.es25.js +0 -7
  193. package/dist/es/standards-agent-kit.es25.js.map +0 -1
  194. package/dist/es/standards-agent-kit.es26.js +0 -85
  195. package/dist/es/standards-agent-kit.es26.js.map +0 -1
  196. package/dist/es/standards-agent-kit.es27.js +0 -28
  197. package/dist/es/standards-agent-kit.es27.js.map +0 -1
  198. package/dist/es/tools/AcceptConnectionRequestTool.d.ts +0 -33
  199. package/dist/es/tools/CheckMessagesTool.d.ts +0 -34
  200. package/dist/es/tools/ConnectionMonitorTool.d.ts +0 -100
  201. package/dist/es/tools/ConnectionTool.d.ts +0 -40
  202. package/dist/es/tools/FindRegistrationsTool.d.ts +0 -28
  203. package/dist/es/tools/InitiateConnectionTool.d.ts +0 -30
  204. package/dist/es/tools/ListConnectionsTool.d.ts +0 -33
  205. package/dist/es/tools/ListUnapprovedConnectionRequestsTool.d.ts +0 -41
  206. package/dist/es/tools/ManageConnectionRequestsTool.d.ts +0 -38
  207. package/dist/es/tools/RegisterAgentTool.d.ts +0 -188
  208. package/dist/es/tools/RetrieveProfileTool.d.ts +0 -34
  209. package/dist/es/tools/SendMessageToConnectionTool.d.ts +0 -34
  210. package/dist/es/tools/SendMessageTool.d.ts +0 -40
  211. package/dist/umd/agents/index.d.ts +0 -0
  212. package/dist/umd/plugins/BasePlugin.d.ts +0 -28
  213. package/dist/umd/plugins/GenericPlugin.d.ts +0 -17
  214. package/dist/umd/plugins/HCS10Plugin.d.ts +0 -13
  215. package/dist/umd/plugins/PluginLoader.d.ts +0 -38
  216. package/dist/umd/plugins/openconvai/OpenConvAIPlugin.d.ts +0 -23
  217. package/dist/umd/plugins/openconvai/index.d.ts +0 -1
  218. package/dist/umd/tools/AcceptConnectionRequestTool.d.ts +0 -33
  219. package/dist/umd/tools/CheckMessagesTool.d.ts +0 -34
  220. package/dist/umd/tools/ConnectionMonitorTool.d.ts +0 -100
  221. package/dist/umd/tools/ConnectionTool.d.ts +0 -40
  222. package/dist/umd/tools/FindRegistrationsTool.d.ts +0 -28
  223. package/dist/umd/tools/InitiateConnectionTool.d.ts +0 -30
  224. package/dist/umd/tools/ListConnectionsTool.d.ts +0 -33
  225. package/dist/umd/tools/ListUnapprovedConnectionRequestsTool.d.ts +0 -41
  226. package/dist/umd/tools/ManageConnectionRequestsTool.d.ts +0 -38
  227. package/dist/umd/tools/RegisterAgentTool.d.ts +0 -188
  228. package/dist/umd/tools/RetrieveProfileTool.d.ts +0 -34
  229. package/dist/umd/tools/SendMessageToConnectionTool.d.ts +0 -34
  230. package/dist/umd/tools/SendMessageTool.d.ts +0 -40
  231. package/src/agents/index.ts +0 -1
  232. package/src/plugins/BasePlugin.ts +0 -37
  233. package/src/plugins/GenericPlugin.ts +0 -19
  234. package/src/plugins/HCS10Plugin.ts +0 -14
  235. package/src/plugins/PluginLoader.ts +0 -121
  236. package/src/plugins/README.md +0 -113
  237. package/src/plugins/openconvai/OpenConvAIPlugin.ts +0 -124
  238. package/src/plugins/openconvai/index.ts +0 -1
  239. package/src/tools/AcceptConnectionRequestTool.ts +0 -196
  240. package/src/tools/CheckMessagesTool.ts +0 -194
  241. package/src/tools/ConnectionMonitorTool.ts +0 -550
  242. package/src/tools/ConnectionTool.ts +0 -231
  243. package/src/tools/FindRegistrationsTool.ts +0 -114
  244. package/src/tools/InitiateConnectionTool.ts +0 -137
  245. package/src/tools/ListConnectionsTool.ts +0 -158
  246. package/src/tools/ListUnapprovedConnectionRequestsTool.ts +0 -173
  247. package/src/tools/ManageConnectionRequestsTool.ts +0 -275
  248. package/src/tools/RegisterAgentTool.ts +0 -590
  249. package/src/tools/RetrieveProfileTool.ts +0 -94
  250. package/src/tools/SendMessageToConnectionTool.ts +0 -142
  251. package/src/tools/SendMessageTool.ts +0 -116
@@ -1,7 +0,0 @@
1
- import { BasePlugin } from "./standards-agent-kit.es19.js";
2
- class HCS10Plugin extends BasePlugin {
3
- }
4
- export {
5
- HCS10Plugin
6
- };
7
- //# sourceMappingURL=standards-agent-kit.es24.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"standards-agent-kit.es24.js","sources":["../../src/plugins/HCS10Plugin.ts"],"sourcesContent":["import { BasePlugin } from './BasePlugin';\nimport { PluginContext } from './PluginInterface';\nimport { StructuredTool } from '@langchain/core/tools';\n\n/**\n * Base class for plugins that require HCS10 specific functionality\n */\nexport abstract class HCS10Plugin extends BasePlugin<PluginContext> {\n /**\n * Get the tools provided by this plugin\n * @returns Array of tools provided by this plugin\n */\n abstract override getTools(): StructuredTool[];\n}"],"names":[],"mappings":";AAOO,MAAe,oBAAoB,WAA0B;AAMpE;"}
@@ -1,7 +0,0 @@
1
- function encryptMessage(message) {
2
- return message;
3
- }
4
- export {
5
- encryptMessage
6
- };
7
- //# sourceMappingURL=standards-agent-kit.es25.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"standards-agent-kit.es25.js","sources":["../../src/utils/Encryption.ts"],"sourcesContent":["// src/utils/Encryption.ts\n/**\n * Placeholder for encryption functionality.\n * Currently, encryption is disabled. The useEncryption flag is false by default.\n * TODO: Implement actual encryption/decryption logic.\n */\n\nexport function encryptMessage(message: string): string {\n // TODO: Add encryption logic here if useEncryption flag is true.\n return message; // currently returns plaintext.\n}\n\nexport function decryptMessage(encryptedMessage: string): string {\n // TODO: Add decryption logic here.\n return encryptedMessage;\n}\n"],"names":[],"mappings":"AAOO,SAAS,eAAe,SAAyB;AAE7C,SAAA;AACX;"}
@@ -1,85 +0,0 @@
1
- import { TransferTransaction, Hbar } from "@hashgraph/sdk";
2
- import { HederaMirrorNode } from "@hashgraphonline/standards-sdk";
3
- const MIN_REQUIRED_USD = 2;
4
- const MIN_REQUIRED_HBAR_USD = 10;
5
- async function ensureAgentHasEnoughHbar(logger, baseClient, accountId, agentName) {
6
- try {
7
- const account = await baseClient.requestAccount(accountId);
8
- const balance = account.balance.balance;
9
- const hbarBalance = balance / 1e8;
10
- logger.info(`${agentName} account ${accountId} has ${hbarBalance} HBAR`);
11
- try {
12
- const mirrorNode = new HederaMirrorNode("testnet", logger);
13
- const hbarPrice = await mirrorNode.getHBARPrice(/* @__PURE__ */ new Date());
14
- if (hbarPrice) {
15
- const balanceInUsd = hbarBalance * hbarPrice;
16
- logger.info(`${agentName} balance in USD: $${balanceInUsd.toFixed(2)}`);
17
- if (balanceInUsd < MIN_REQUIRED_USD) {
18
- logger.warn(
19
- `${agentName} account ${accountId} has less than $${MIN_REQUIRED_USD} (${balanceInUsd.toFixed(
20
- 2
21
- )}). Attempting to fund.`
22
- );
23
- try {
24
- const funder = baseClient.getAccountAndSigner();
25
- const targetHbar = MIN_REQUIRED_HBAR_USD / hbarPrice;
26
- const amountToTransferHbar = Math.max(0, targetHbar - hbarBalance);
27
- if (amountToTransferHbar > 0) {
28
- const transferTx = new TransferTransaction().addHbarTransfer(
29
- funder.accountId,
30
- Hbar.fromTinybars(
31
- Math.round(amountToTransferHbar * -1e8)
32
- )
33
- ).addHbarTransfer(
34
- accountId,
35
- Hbar.fromTinybars(
36
- Math.round(amountToTransferHbar * 1e8)
37
- )
38
- );
39
- logger.info(
40
- `Funding ${agentName} account ${accountId} with ${amountToTransferHbar.toFixed(
41
- 2
42
- )} HBAR from ${funder.accountId}`
43
- );
44
- const fundTxResponse = await transferTx.execute(
45
- baseClient.getClient()
46
- );
47
- await fundTxResponse.getReceipt(baseClient.getClient());
48
- logger.info(
49
- `Successfully funded ${agentName} account ${accountId}.`
50
- );
51
- } else {
52
- logger.info(
53
- `${agentName} account ${accountId} does not require additional funding.`
54
- );
55
- }
56
- } catch (fundingError) {
57
- logger.error(
58
- `Failed to automatically fund ${agentName} account ${accountId}:`,
59
- fundingError
60
- );
61
- logger.warn(
62
- `Please fund the account ${accountId} manually with at least ${(MIN_REQUIRED_HBAR_USD / hbarPrice).toFixed(2)} HBAR.`
63
- );
64
- }
65
- }
66
- } else {
67
- logger.warn(
68
- "Failed to get HBAR price from Mirror Node. Please ensure the account has enough HBAR."
69
- );
70
- }
71
- } catch (error) {
72
- logger.warn(
73
- "Failed to check USD balance. Please ensure the account has enough HBAR."
74
- );
75
- }
76
- } catch (error) {
77
- logger.error(`Failed to check ${agentName} account balance:`, error);
78
- }
79
- }
80
- export {
81
- MIN_REQUIRED_HBAR_USD,
82
- MIN_REQUIRED_USD,
83
- ensureAgentHasEnoughHbar
84
- };
85
- //# sourceMappingURL=standards-agent-kit.es26.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"standards-agent-kit.es26.js","sources":["../../src/utils/ensure-agent-has-hbar.ts"],"sourcesContent":["import { Hbar } from \"@hashgraph/sdk\";\nimport { TransferTransaction } from \"@hashgraph/sdk\";\nimport { Logger, HCS10Client, HederaMirrorNode } from \"@hashgraphonline/standards-sdk\";\n\nexport const MIN_REQUIRED_USD = 2.0;\nexport const MIN_REQUIRED_HBAR_USD = 10.0;\n\nexport async function ensureAgentHasEnoughHbar(\n logger: Logger,\n baseClient: HCS10Client,\n accountId: string,\n agentName: string\n): Promise<void> {\n try {\n const account = await baseClient.requestAccount(accountId);\n const balance = account.balance.balance;\n const hbarBalance = balance / 100_000_000;\n\n logger.info(`${agentName} account ${accountId} has ${hbarBalance} HBAR`);\n\n try {\n const mirrorNode = new HederaMirrorNode('testnet', logger);\n const hbarPrice = await mirrorNode.getHBARPrice(new Date());\n\n if (hbarPrice) {\n const balanceInUsd = hbarBalance * hbarPrice;\n logger.info(`${agentName} balance in USD: $${balanceInUsd.toFixed(2)}`);\n\n if (balanceInUsd < MIN_REQUIRED_USD) {\n logger.warn(\n `${agentName} account ${accountId} has less than $${MIN_REQUIRED_USD} (${balanceInUsd.toFixed(\n 2\n )}). Attempting to fund.`\n );\n\n try {\n const funder = baseClient.getAccountAndSigner();\n const targetHbar = MIN_REQUIRED_HBAR_USD / hbarPrice;\n const amountToTransferHbar = Math.max(0, targetHbar - hbarBalance);\n\n if (amountToTransferHbar > 0) {\n const transferTx = new TransferTransaction()\n .addHbarTransfer(\n funder.accountId,\n Hbar.fromTinybars(\n Math.round(amountToTransferHbar * -100_000_000)\n )\n )\n .addHbarTransfer(\n accountId,\n Hbar.fromTinybars(\n Math.round(amountToTransferHbar * 100_000_000)\n )\n );\n\n logger.info(\n `Funding ${agentName} account ${accountId} with ${amountToTransferHbar.toFixed(\n 2\n )} HBAR from ${funder.accountId}`\n );\n\n const fundTxResponse = await transferTx.execute(\n baseClient.getClient() as any\n );\n await fundTxResponse.getReceipt(baseClient.getClient() as any);\n logger.info(\n `Successfully funded ${agentName} account ${accountId}.`\n );\n } else {\n logger.info(\n `${agentName} account ${accountId} does not require additional funding.`\n );\n }\n } catch (fundingError) {\n logger.error(\n `Failed to automatically fund ${agentName} account ${accountId}:`,\n fundingError\n );\n logger.warn(\n `Please fund the account ${accountId} manually with at least ${(\n MIN_REQUIRED_HBAR_USD / hbarPrice\n ).toFixed(2)} HBAR.`\n );\n }\n }\n } else {\n logger.warn(\n 'Failed to get HBAR price from Mirror Node. Please ensure the account has enough HBAR.'\n );\n }\n } catch (error) {\n logger.warn(\n 'Failed to check USD balance. Please ensure the account has enough HBAR.'\n );\n }\n } catch (error) {\n logger.error(`Failed to check ${agentName} account balance:`, error);\n }\n}"],"names":[],"mappings":";;AAIO,MAAM,mBAAmB;AACzB,MAAM,wBAAwB;AAErC,eAAsB,yBACpB,QACA,YACA,WACA,WACe;AACX,MAAA;AACF,UAAM,UAAU,MAAM,WAAW,eAAe,SAAS;AACnD,UAAA,UAAU,QAAQ,QAAQ;AAChC,UAAM,cAAc,UAAU;AAE9B,WAAO,KAAK,GAAG,SAAS,YAAY,SAAS,QAAQ,WAAW,OAAO;AAEnE,QAAA;AACF,YAAM,aAAa,IAAI,iBAAiB,WAAW,MAAM;AACzD,YAAM,YAAY,MAAM,WAAW,aAAa,oBAAI,MAAM;AAE1D,UAAI,WAAW;AACb,cAAM,eAAe,cAAc;AAC5B,eAAA,KAAK,GAAG,SAAS,qBAAqB,aAAa,QAAQ,CAAC,CAAC,EAAE;AAEtE,YAAI,eAAe,kBAAkB;AAC5B,iBAAA;AAAA,YACL,GAAG,SAAS,YAAY,SAAS,mBAAmB,gBAAgB,KAAK,aAAa;AAAA,cACpF;AAAA,YAAA,CACD;AAAA,UACH;AAEI,cAAA;AACI,kBAAA,SAAS,WAAW,oBAAoB;AAC9C,kBAAM,aAAa,wBAAwB;AAC3C,kBAAM,uBAAuB,KAAK,IAAI,GAAG,aAAa,WAAW;AAEjE,gBAAI,uBAAuB,GAAG;AACtB,oBAAA,aAAa,IAAI,oBAAA,EACpB;AAAA,gBACC,OAAO;AAAA,gBACP,KAAK;AAAA,kBACH,KAAK,MAAM,uBAAuB,IAAY;AAAA,gBAAA;AAAA,cAChD,EAED;AAAA,gBACC;AAAA,gBACA,KAAK;AAAA,kBACH,KAAK,MAAM,uBAAuB,GAAW;AAAA,gBAAA;AAAA,cAEjD;AAEK,qBAAA;AAAA,gBACL,WAAW,SAAS,YAAY,SAAS,SAAS,qBAAqB;AAAA,kBACrE;AAAA,gBAAA,CACD,cAAc,OAAO,SAAS;AAAA,cACjC;AAEM,oBAAA,iBAAiB,MAAM,WAAW;AAAA,gBACtC,WAAW,UAAU;AAAA,cACvB;AACA,oBAAM,eAAe,WAAW,WAAW,UAAA,CAAkB;AACtD,qBAAA;AAAA,gBACL,uBAAuB,SAAS,YAAY,SAAS;AAAA,cACvD;AAAA,YAAA,OACK;AACE,qBAAA;AAAA,gBACL,GAAG,SAAS,YAAY,SAAS;AAAA,cACnC;AAAA,YAAA;AAAA,mBAEK,cAAc;AACd,mBAAA;AAAA,cACL,gCAAgC,SAAS,YAAY,SAAS;AAAA,cAC9D;AAAA,YACF;AACO,mBAAA;AAAA,cACL,2BAA2B,SAAS,4BAClC,wBAAwB,WACxB,QAAQ,CAAC,CAAC;AAAA,YACd;AAAA,UAAA;AAAA,QACF;AAAA,MACF,OACK;AACE,eAAA;AAAA,UACL;AAAA,QACF;AAAA,MAAA;AAAA,aAEK,OAAO;AACP,aAAA;AAAA,QACL;AAAA,MACF;AAAA,IAAA;AAAA,WAEK,OAAO;AACd,WAAO,MAAM,mBAAmB,SAAS,qBAAqB,KAAK;AAAA,EAAA;AAEvE;"}
@@ -1,28 +0,0 @@
1
- import "@hashgraphonline/standards-sdk";
2
- import fs__default from "fs";
3
- import path__default from "path";
4
- const ENV_FILE_PATH = path__default.join(process.cwd(), ".env");
5
- async function updateEnvFile(envFilePath, variables) {
6
- let envContent = "";
7
- if (fs__default.existsSync(envFilePath)) {
8
- envContent = fs__default.readFileSync(envFilePath, "utf8");
9
- }
10
- const envLines = envContent.split("\n");
11
- const updatedLines = [...envLines];
12
- for (const [key, value] of Object.entries(variables)) {
13
- const lineIndex = updatedLines.findIndex(
14
- (line) => line.startsWith(`${key}=`)
15
- );
16
- if (lineIndex !== -1) {
17
- updatedLines[lineIndex] = `${key}=${value}`;
18
- } else {
19
- updatedLines.push(`${key}=${value}`);
20
- }
21
- }
22
- fs__default.writeFileSync(envFilePath, updatedLines.join("\n"));
23
- }
24
- export {
25
- ENV_FILE_PATH,
26
- updateEnvFile
27
- };
28
- //# sourceMappingURL=standards-agent-kit.es27.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"standards-agent-kit.es27.js","sources":["../../src/utils/state-tools.ts"],"sourcesContent":["import {\n HCS10Client,\n AgentBuilder,\n Logger,\n} from '@hashgraphonline/standards-sdk';\nimport fs from 'fs';\nimport path from 'path';\nimport { ensureAgentHasEnoughHbar } from './ensure-agent-has-hbar';\n\nexport const ENV_FILE_PATH = path.join(process.cwd(), '.env');\n\nexport interface AgentData {\n accountId: string;\n operatorId: string;\n inboundTopicId: string;\n outboundTopicId: string;\n client: HCS10Client;\n}\n\nexport interface RegistrationProgressData {\n registered: boolean;\n accountId?: string;\n privateKey?: string;\n publicKey?: string;\n inboundTopicId?: string;\n outboundTopicId?: string;\n}\n\nexport async function getAgentFromEnv(\n logger: Logger,\n baseClient: HCS10Client,\n agentName: string,\n envPrefix: string\n): Promise<AgentData | null> {\n const accountIdEnvVar = `${envPrefix}_ACCOUNT_ID`;\n const privateKeyEnvVar = `${envPrefix}_PRIVATE_KEY`;\n const inboundTopicIdEnvVar = `${envPrefix}_INBOUND_TOPIC_ID`;\n const outboundTopicIdEnvVar = `${envPrefix}_OUTBOUND_TOPIC_ID`;\n\n const accountId = process.env[accountIdEnvVar];\n const privateKey = process.env[privateKeyEnvVar];\n const inboundTopicId = process.env[inboundTopicIdEnvVar];\n const outboundTopicId = process.env[outboundTopicIdEnvVar];\n\n if (!accountId || !privateKey || !inboundTopicId || !outboundTopicId) {\n logger.info(`${agentName} agent not found in environment variables`);\n return null;\n }\n\n logger.info(`${agentName} agent found in environment variables`);\n logger.info(`${agentName} account ID: ${accountId}`);\n logger.info(`${agentName} inbound topic ID: ${inboundTopicId}`);\n logger.info(`${agentName} outbound topic ID: ${outboundTopicId}`);\n\n const client = new HCS10Client({\n network: 'testnet',\n operatorId: accountId,\n operatorPrivateKey: privateKey,\n guardedRegistryBaseUrl: process.env.REGISTRY_URL,\n prettyPrint: true,\n logLevel: 'debug',\n });\n\n await ensureAgentHasEnoughHbar(logger, baseClient, accountId, agentName);\n\n return {\n accountId,\n operatorId: `${inboundTopicId}@${accountId}`,\n inboundTopicId,\n outboundTopicId,\n client,\n };\n}\n\nexport async function createAgent(\n logger: Logger,\n baseClient: HCS10Client,\n agentName: string,\n agentBuilder: AgentBuilder,\n envPrefix: string\n): Promise<AgentData | null> {\n try {\n logger.info(`Creating ${agentName} agent...`);\n\n const result = await baseClient.createAndRegisterAgent(agentBuilder);\n\n if (!result.metadata) {\n logger.error(`${agentName} agent creation failed`);\n return null;\n }\n\n logger.info(`${agentName} agent created successfully`);\n logger.info(`${agentName} account ID: ${result.metadata.accountId}`);\n logger.info(`${agentName} private key: ${result.metadata.privateKey}`);\n logger.info(\n `${agentName} inbound topic ID: ${result.metadata.inboundTopicId}`\n );\n logger.info(\n `${agentName} outbound topic ID: ${result.metadata.outboundTopicId}`\n );\n\n const envVars = {\n [`${envPrefix}_ACCOUNT_ID`]: result.metadata.accountId,\n [`${envPrefix}_PRIVATE_KEY`]: result.metadata.privateKey,\n [`${envPrefix}_INBOUND_TOPIC_ID`]: result.metadata.inboundTopicId,\n [`${envPrefix}_OUTBOUND_TOPIC_ID`]: result.metadata.outboundTopicId,\n };\n\n await updateEnvFile(ENV_FILE_PATH, envVars);\n\n const client = new HCS10Client({\n network: 'testnet',\n operatorId: result.metadata.accountId,\n operatorPrivateKey: result.metadata.privateKey,\n guardedRegistryBaseUrl: process.env.REGISTRY_URL,\n prettyPrint: true,\n logLevel: 'debug',\n });\n\n return {\n accountId: result.metadata.accountId,\n operatorId: `${result.metadata.inboundTopicId}@${result.metadata.accountId}`,\n inboundTopicId: result.metadata.inboundTopicId,\n outboundTopicId: result.metadata.outboundTopicId,\n client,\n };\n } catch (error) {\n console.log('error', error, baseClient);\n logger.error(`Error creating ${agentName} agent:`, error);\n return null;\n }\n}\n\nexport async function updateEnvFile(\n envFilePath: string,\n variables: Record<string, string>\n): Promise<void> {\n let envContent = '';\n\n if (fs.existsSync(envFilePath)) {\n envContent = fs.readFileSync(envFilePath, 'utf8');\n }\n\n const envLines = envContent.split('\\n');\n const updatedLines = [...envLines];\n\n for (const [key, value] of Object.entries(variables)) {\n const lineIndex = updatedLines.findIndex((line) =>\n line.startsWith(`${key}=`)\n );\n\n if (lineIndex !== -1) {\n updatedLines[lineIndex] = `${key}=${value}`;\n } else {\n updatedLines.push(`${key}=${value}`);\n }\n }\n\n fs.writeFileSync(envFilePath, updatedLines.join('\\n'));\n}\n"],"names":["path","fs"],"mappings":";;;AASO,MAAM,gBAAgBA,cAAK,KAAK,QAAQ,OAAO,MAAM;AA4HtC,eAAA,cACpB,aACA,WACe;AACf,MAAI,aAAa;AAEb,MAAAC,YAAG,WAAW,WAAW,GAAG;AACjB,iBAAAA,YAAG,aAAa,aAAa,MAAM;AAAA,EAAA;AAG5C,QAAA,WAAW,WAAW,MAAM,IAAI;AAChC,QAAA,eAAe,CAAC,GAAG,QAAQ;AAEjC,aAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,SAAS,GAAG;AACpD,UAAM,YAAY,aAAa;AAAA,MAAU,CAAC,SACxC,KAAK,WAAW,GAAG,GAAG,GAAG;AAAA,IAC3B;AAEA,QAAI,cAAc,IAAI;AACpB,mBAAa,SAAS,IAAI,GAAG,GAAG,IAAI,KAAK;AAAA,IAAA,OACpC;AACL,mBAAa,KAAK,GAAG,GAAG,IAAI,KAAK,EAAE;AAAA,IAAA;AAAA,EACrC;AAGFA,cAAG,cAAc,aAAa,aAAa,KAAK,IAAI,CAAC;AACvD;"}
@@ -1,33 +0,0 @@
1
- import { StructuredTool, ToolParams } from '@langchain/core/tools';
2
- import { z } from 'zod';
3
- import { HCS10Client } from '../hcs10/HCS10Client';
4
- import { IStateManager } from '../state/state-types';
5
- export interface AcceptConnectionRequestToolParams extends ToolParams {
6
- hcsClient: HCS10Client;
7
- stateManager: IStateManager;
8
- }
9
- /**
10
- * A tool specifically for accepting incoming connection requests.
11
- */
12
- export declare class AcceptConnectionRequestTool extends StructuredTool {
13
- name: string;
14
- description: string;
15
- schema: z.ZodObject<{
16
- requestKey: z.ZodString;
17
- hbarFee: z.ZodOptional<z.ZodNumber>;
18
- exemptAccountIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
19
- }, "strip", z.ZodTypeAny, {
20
- hbarFee?: number;
21
- exemptAccountIds?: string[];
22
- requestKey?: string;
23
- }, {
24
- hbarFee?: number;
25
- exemptAccountIds?: string[];
26
- requestKey?: string;
27
- }>;
28
- private hcsClient;
29
- private stateManager;
30
- private logger;
31
- constructor({ hcsClient, stateManager, ...rest }: AcceptConnectionRequestToolParams);
32
- protected _call({ requestKey, hbarFee, exemptAccountIds, }: z.infer<this['schema']>): Promise<string>;
33
- }
@@ -1,34 +0,0 @@
1
- import { StructuredTool, ToolParams } from '@langchain/core/tools';
2
- import { z } from 'zod';
3
- import { HCS10Client } from '../hcs10/HCS10Client';
4
- import { IStateManager } from '../state/state-types';
5
- export interface CheckMessagesToolParams extends ToolParams {
6
- hcsClient: HCS10Client;
7
- stateManager: IStateManager;
8
- }
9
- /**
10
- * A tool to check for new messages on an active HCS-10 connection topic,
11
- * or optionally fetch the latest messages regardless of timestamp.
12
- */
13
- export declare class CheckMessagesTool extends StructuredTool {
14
- name: string;
15
- description: string;
16
- schema: z.ZodObject<{
17
- targetIdentifier: z.ZodString;
18
- fetchLatest: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
19
- lastMessagesCount: z.ZodOptional<z.ZodNumber>;
20
- }, "strip", z.ZodTypeAny, {
21
- targetIdentifier?: string;
22
- fetchLatest?: boolean;
23
- lastMessagesCount?: number;
24
- }, {
25
- targetIdentifier?: string;
26
- fetchLatest?: boolean;
27
- lastMessagesCount?: number;
28
- }>;
29
- hcsClient: HCS10Client;
30
- private stateManager;
31
- private logger;
32
- constructor({ hcsClient, stateManager, ...rest }: CheckMessagesToolParams);
33
- protected _call({ targetIdentifier, fetchLatest, lastMessagesCount, }: z.infer<this['schema']>): Promise<string>;
34
- }
@@ -1,100 +0,0 @@
1
- import { StructuredTool, ToolParams } from '@langchain/core/tools';
2
- import { z } from 'zod';
3
- import { HCS10Client } from '../hcs10/HCS10Client';
4
- import { IStateManager } from '../state/state-types';
5
- export interface FeeDefinition {
6
- amount: number;
7
- collectorAccount?: string;
8
- }
9
- export interface TokenFeeDefinition extends FeeDefinition {
10
- tokenId: string;
11
- }
12
- export interface ConnectionMonitorToolParams extends ToolParams {
13
- hcsClient: HCS10Client;
14
- stateManager: IStateManager;
15
- }
16
- /**
17
- * A tool for monitoring incoming connection requests and accepting them with optional fee settings.
18
- */
19
- export declare class ConnectionMonitorTool extends StructuredTool {
20
- name: string;
21
- description: string;
22
- schema: z.ZodObject<{
23
- acceptAll: z.ZodOptional<z.ZodBoolean>;
24
- targetAccountId: z.ZodOptional<z.ZodString>;
25
- hbarFees: z.ZodOptional<z.ZodArray<z.ZodObject<{
26
- amount: z.ZodNumber;
27
- collectorAccount: z.ZodOptional<z.ZodString>;
28
- }, "strip", z.ZodTypeAny, {
29
- amount?: number;
30
- collectorAccount?: string;
31
- }, {
32
- amount?: number;
33
- collectorAccount?: string;
34
- }>, "many">>;
35
- tokenFees: z.ZodOptional<z.ZodArray<z.ZodObject<{
36
- amount: z.ZodNumber;
37
- tokenId: z.ZodString;
38
- collectorAccount: z.ZodOptional<z.ZodString>;
39
- }, "strip", z.ZodTypeAny, {
40
- amount?: number;
41
- tokenId?: string;
42
- collectorAccount?: string;
43
- }, {
44
- amount?: number;
45
- tokenId?: string;
46
- collectorAccount?: string;
47
- }>, "many">>;
48
- exemptAccountIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
49
- monitorDurationSeconds: z.ZodOptional<z.ZodNumber>;
50
- defaultCollectorAccount: z.ZodOptional<z.ZodString>;
51
- }, "strip", z.ZodTypeAny, {
52
- hbarFees?: {
53
- amount?: number;
54
- collectorAccount?: string;
55
- }[];
56
- tokenFees?: {
57
- amount?: number;
58
- tokenId?: string;
59
- collectorAccount?: string;
60
- }[];
61
- exemptAccountIds?: string[];
62
- targetAccountId?: string;
63
- acceptAll?: boolean;
64
- monitorDurationSeconds?: number;
65
- defaultCollectorAccount?: string;
66
- }, {
67
- hbarFees?: {
68
- amount?: number;
69
- collectorAccount?: string;
70
- }[];
71
- tokenFees?: {
72
- amount?: number;
73
- tokenId?: string;
74
- collectorAccount?: string;
75
- }[];
76
- exemptAccountIds?: string[];
77
- targetAccountId?: string;
78
- acceptAll?: boolean;
79
- monitorDurationSeconds?: number;
80
- defaultCollectorAccount?: string;
81
- }>;
82
- private hcsClient;
83
- private stateManager;
84
- private logger;
85
- private isMonitoring;
86
- private listConnectionsTool;
87
- constructor({ hcsClient, stateManager, ...rest }: ConnectionMonitorToolParams);
88
- updateClient(newClient: HCS10Client): void;
89
- protected _call({ acceptAll, targetAccountId, hbarFees, tokenFees, exemptAccountIds, monitorDurationSeconds, defaultCollectorAccount, }: z.infer<this['schema']>): Promise<string>;
90
- private createFeeConfig;
91
- private extractAccountId;
92
- private acceptConnectionRequest;
93
- private formatFeeString;
94
- /**
95
- * Updates the ConnectionsManager with latest connection data
96
- * This method is meant to be called when changes to connections happen
97
- * outside this tool's monitoring process
98
- */
99
- update(): void;
100
- }
@@ -1,40 +0,0 @@
1
- import { HCS10Client } from '../hcs10/HCS10Client';
2
- import { StructuredTool, ToolParams } from '@langchain/core/tools';
3
- import { z } from 'zod';
4
- import { Logger } from '@hashgraphonline/standards-sdk';
5
- import { IStateManager } from '../state/state-types';
6
- export interface ConnectionToolParams extends ToolParams {
7
- client: HCS10Client;
8
- stateManager: IStateManager;
9
- }
10
- /**
11
- * ConnectionTool monitors the *current* agent's inbound topic for connection requests
12
- * and automatically handles them using the HCS-10 standard SDK flow.
13
- * Use this ONLY to passively LISTEN for other agents trying to connect TO YOU.
14
- * This tool takes NO arguments and does NOT start outgoing connections.
15
- */
16
- export declare class ConnectionTool extends StructuredTool {
17
- name: string;
18
- description: string;
19
- client: HCS10Client;
20
- logger: Logger;
21
- private stateManager;
22
- private isMonitoring;
23
- private monitoringTopic;
24
- schema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
25
- /**
26
- * @param client - Instance of HCS10Client.
27
- * @param stateManager - Instance of StateManager for shared state management.
28
- */
29
- constructor({ client, stateManager, ...rest }: ConnectionToolParams);
30
- /**
31
- * Initiates the connection request monitoring process in the background.
32
- * Gets the inbound topic ID from the configured client.
33
- */
34
- _call(): Promise<string>;
35
- /**
36
- * The core monitoring loop.
37
- */
38
- private monitorIncomingRequests;
39
- stopMonitoring(): void;
40
- }
@@ -1,28 +0,0 @@
1
- import { StructuredTool, ToolParams } from '@langchain/core/tools';
2
- import { z } from 'zod';
3
- import { HCS10Client } from '../hcs10/HCS10Client';
4
- import { AIAgentCapability } from '@hashgraphonline/standards-sdk';
5
- export interface FindRegistrationsToolParams extends ToolParams {
6
- hcsClient: HCS10Client;
7
- }
8
- /**
9
- * A tool to search for registered HCS-10 agents using the configured registry.
10
- */
11
- export declare class FindRegistrationsTool extends StructuredTool {
12
- name: string;
13
- description: string;
14
- schema: z.ZodObject<{
15
- accountId: z.ZodOptional<z.ZodString>;
16
- tags: z.ZodOptional<z.ZodArray<z.ZodNativeEnum<typeof AIAgentCapability>, "many">>;
17
- }, "strip", z.ZodTypeAny, {
18
- accountId?: string;
19
- tags?: AIAgentCapability[];
20
- }, {
21
- accountId?: string;
22
- tags?: AIAgentCapability[];
23
- }>;
24
- private hcsClient;
25
- private logger;
26
- constructor({ hcsClient, ...rest }: FindRegistrationsToolParams);
27
- protected _call({ accountId, tags, }: z.infer<this['schema']>): Promise<string>;
28
- }
@@ -1,30 +0,0 @@
1
- import { StructuredTool, ToolParams } from '@langchain/core/tools';
2
- import { z } from 'zod';
3
- import { HCS10Client } from '../hcs10/HCS10Client';
4
- import { IStateManager } from '../state/state-types';
5
- export interface InitiateConnectionToolParams extends ToolParams {
6
- hcsClient: HCS10Client;
7
- stateManager: IStateManager;
8
- }
9
- /**
10
- * A tool to actively START a NEW HCS-10 connection TO a target agent.
11
- * Requires the target agent's account ID.
12
- * It retrieves their profile, sends a connection request, waits for confirmation, and stores the connection using the provided stateManager.
13
- * Use this tool ONLY to actively INITIATE an OUTGOING connection.
14
- */
15
- export declare class InitiateConnectionTool extends StructuredTool {
16
- name: string;
17
- description: string;
18
- schema: z.ZodObject<{
19
- targetAccountId: z.ZodString;
20
- }, "strip", z.ZodTypeAny, {
21
- targetAccountId?: string;
22
- }, {
23
- targetAccountId?: string;
24
- }>;
25
- private hcsClient;
26
- private stateManager;
27
- private logger;
28
- constructor({ hcsClient, stateManager, ...rest }: InitiateConnectionToolParams);
29
- protected _call({ targetAccountId }: z.infer<this['schema']>): Promise<string>;
30
- }
@@ -1,33 +0,0 @@
1
- import { StructuredTool, ToolParams } from '@langchain/core/tools';
2
- import { z } from 'zod';
3
- import { IStateManager } from '../state/state-types';
4
- import { HCS10Client } from '../hcs10/HCS10Client';
5
- export interface ListConnectionsToolParams extends ToolParams {
6
- stateManager: IStateManager;
7
- hcsClient?: HCS10Client;
8
- }
9
- /**
10
- * A tool to list currently active HCS-10 connections stored in the state manager.
11
- * Enhanced to show more details similar to moonscape's implementation.
12
- */
13
- export declare class ListConnectionsTool extends StructuredTool {
14
- name: string;
15
- description: string;
16
- schema: z.ZodObject<{
17
- includeDetails: z.ZodOptional<z.ZodBoolean>;
18
- showPending: z.ZodOptional<z.ZodBoolean>;
19
- }, "strip", z.ZodTypeAny, {
20
- includeDetails?: boolean;
21
- showPending?: boolean;
22
- }, {
23
- includeDetails?: boolean;
24
- showPending?: boolean;
25
- }>;
26
- private stateManager;
27
- private hcsClient?;
28
- private logger;
29
- constructor({ stateManager, hcsClient, ...rest }: ListConnectionsToolParams);
30
- protected _call(args: z.infer<this['schema']>): Promise<string>;
31
- private formatConnection;
32
- private getEnhancedConnections;
33
- }
@@ -1,41 +0,0 @@
1
- import { StructuredTool, ToolParams } from '@langchain/core/tools';
2
- import { z } from 'zod';
3
- import { IStateManager } from '../state/state-types';
4
- import { HCS10Client } from '../hcs10/HCS10Client';
5
- type ListPendingRequestsToolParams = ToolParams & {
6
- hcsClient: HCS10Client;
7
- stateManager: IStateManager;
8
- };
9
- export declare class ListUnapprovedConnectionRequestsTool extends StructuredTool {
10
- name: string;
11
- description: string;
12
- schema: z.ZodObject<{
13
- sortBy: z.ZodOptional<z.ZodEnum<["time_asc", "time_desc", "name_asc", "name_desc"]>>;
14
- limit: z.ZodOptional<z.ZodNumber>;
15
- }, "strip", z.ZodTypeAny, {
16
- sortBy?: "time_asc" | "time_desc" | "name_asc" | "name_desc";
17
- limit?: number;
18
- }, {
19
- sortBy?: "time_asc" | "time_desc" | "name_asc" | "name_desc";
20
- limit?: number;
21
- }>;
22
- private hcsClient;
23
- private stateManager;
24
- private logger;
25
- constructor({ hcsClient, stateManager, ...rest }: ListPendingRequestsToolParams);
26
- protected _call({ sortBy, limit, }: z.infer<this['schema']>): Promise<string>;
27
- /**
28
- * Processes the connection connectionMap to find all requests
29
- * that are not fully established (incoming unapproved and outgoing pending).
30
- */
31
- private findAllPendingRequests;
32
- /**
33
- * Formats the list of pending requests for display.
34
- */
35
- private formatRequestsList;
36
- /**
37
- * Sorts connection requests based on the specified criteria.
38
- */
39
- private sortRequests;
40
- }
41
- export {};
@@ -1,38 +0,0 @@
1
- import { StructuredTool, ToolParams } from '@langchain/core/tools';
2
- import { z } from 'zod';
3
- import { HCS10Client } from '../hcs10/HCS10Client';
4
- import { IStateManager } from '../state/state-types';
5
- export interface ManageConnectionRequestsToolParams extends ToolParams {
6
- hcsClient: HCS10Client;
7
- stateManager: IStateManager;
8
- }
9
- /**
10
- * A tool for managing incoming connection requests in a LangChain-compatible way.
11
- * This tool allows an agent to list, view details of, and accept/reject incoming connection requests.
12
- */
13
- export declare class ManageConnectionRequestsTool extends StructuredTool {
14
- name: string;
15
- description: string;
16
- schema: z.ZodObject<{
17
- action: z.ZodEnum<["list", "view", "reject"]>;
18
- requestKey: z.ZodOptional<z.ZodString>;
19
- }, "strip", z.ZodTypeAny, {
20
- action?: "list" | "view" | "reject";
21
- requestKey?: string;
22
- }, {
23
- action?: "list" | "view" | "reject";
24
- requestKey?: string;
25
- }>;
26
- private hcsClient;
27
- private stateManager;
28
- private logger;
29
- private lastRefreshTime;
30
- private refreshIntervalMs;
31
- constructor({ hcsClient, stateManager, ...rest }: ManageConnectionRequestsToolParams);
32
- protected _call({ action, requestKey, }: z.infer<this['schema']>): Promise<string>;
33
- private refreshRequestsIfNeeded;
34
- private refreshRequests;
35
- private listRequests;
36
- private viewRequest;
37
- private rejectRequest;
38
- }