@hashgraphonline/standards-agent-kit 0.2.137 → 0.2.138

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 (195) hide show
  1. package/dist/cjs/builders/hcs10/hcs10-builder.d.ts +1 -0
  2. package/dist/cjs/builders/hcs2/hcs2-builder.d.ts +8 -7
  3. package/dist/cjs/builders/hcs6/hcs6-builder.d.ts +5 -4
  4. package/dist/cjs/index.d.ts +4 -0
  5. package/dist/cjs/signing/bytes-registry.d.ts +17 -0
  6. package/dist/cjs/signing/signer-provider.d.ts +45 -0
  7. package/dist/cjs/standards-agent-kit.cjs +1 -1
  8. package/dist/cjs/standards-agent-kit.cjs.map +1 -1
  9. package/dist/cjs/tools/hcs10/InitiateConnectionTool.d.ts +4 -4
  10. package/dist/cjs/tools/hcs2/CreateRegistryTool.d.ts +2 -2
  11. package/dist/cjs/tools/hcs2/DeleteEntryTool.d.ts +2 -2
  12. package/dist/cjs/tools/hcs2/UpdateEntryTool.d.ts +2 -2
  13. package/dist/cjs/tools/hcs6/RegisterDynamicHashinalTool.d.ts +10 -10
  14. package/dist/cjs/tools/hcs6/UpdateDynamicHashinalTool.d.ts +8 -8
  15. package/dist/cjs/tools/inscriber/InscribeFromBufferTool.d.ts +5 -4
  16. package/dist/cjs/tools/inscriber/InscribeFromFileTool.d.ts +2 -2
  17. package/dist/cjs/tools/inscriber/InscribeFromUrlTool.d.ts +4 -4
  18. package/dist/cjs/tools/inscriber/InscribeHashinalTool.d.ts +1 -1
  19. package/dist/cjs/types/tx-results.d.ts +15 -0
  20. package/dist/cjs/utils/CodedError.d.ts +4 -0
  21. package/dist/cjs/validation/hip412-schemas.d.ts +2 -2
  22. package/dist/es/builders/hcs10/hcs10-builder.d.ts +1 -0
  23. package/dist/es/builders/hcs2/hcs2-builder.d.ts +8 -7
  24. package/dist/es/builders/hcs6/hcs6-builder.d.ts +5 -4
  25. package/dist/es/index.d.ts +4 -0
  26. package/dist/es/signing/bytes-registry.d.ts +17 -0
  27. package/dist/es/signing/signer-provider.d.ts +45 -0
  28. package/dist/es/standards-agent-kit.es.js +46 -42
  29. package/dist/es/standards-agent-kit.es.js.map +1 -1
  30. package/dist/es/standards-agent-kit.es10.js +24 -83
  31. package/dist/es/standards-agent-kit.es10.js.map +1 -1
  32. package/dist/es/standards-agent-kit.es11.js +224 -20
  33. package/dist/es/standards-agent-kit.es11.js.map +1 -1
  34. package/dist/es/standards-agent-kit.es12.js +78 -27
  35. package/dist/es/standards-agent-kit.es12.js.map +1 -1
  36. package/dist/es/standards-agent-kit.es13.js +26 -36
  37. package/dist/es/standards-agent-kit.es13.js.map +1 -1
  38. package/dist/es/standards-agent-kit.es14.js +17 -39
  39. package/dist/es/standards-agent-kit.es14.js.map +1 -1
  40. package/dist/es/standards-agent-kit.es15.js +36 -58
  41. package/dist/es/standards-agent-kit.es15.js.map +1 -1
  42. package/dist/es/standards-agent-kit.es16.js +45 -18
  43. package/dist/es/standards-agent-kit.es16.js.map +1 -1
  44. package/dist/es/standards-agent-kit.es17.js +53 -16
  45. package/dist/es/standards-agent-kit.es17.js.map +1 -1
  46. package/dist/es/standards-agent-kit.es18.js +18 -28
  47. package/dist/es/standards-agent-kit.es18.js.map +1 -1
  48. package/dist/es/standards-agent-kit.es19.js +26 -12
  49. package/dist/es/standards-agent-kit.es19.js.map +1 -1
  50. package/dist/es/standards-agent-kit.es20.js +38 -136
  51. package/dist/es/standards-agent-kit.es20.js.map +1 -1
  52. package/dist/es/standards-agent-kit.es21.js +13 -24
  53. package/dist/es/standards-agent-kit.es21.js.map +1 -1
  54. package/dist/es/standards-agent-kit.es22.js +136 -39
  55. package/dist/es/standards-agent-kit.es22.js.map +1 -1
  56. package/dist/es/standards-agent-kit.es23.js +25 -41
  57. package/dist/es/standards-agent-kit.es23.js.map +1 -1
  58. package/dist/es/standards-agent-kit.es24.js +49 -31
  59. package/dist/es/standards-agent-kit.es24.js.map +1 -1
  60. package/dist/es/standards-agent-kit.es25.js +34 -18
  61. package/dist/es/standards-agent-kit.es25.js.map +1 -1
  62. package/dist/es/standards-agent-kit.es26.js +35 -19
  63. package/dist/es/standards-agent-kit.es26.js.map +1 -1
  64. package/dist/es/standards-agent-kit.es27.js +45 -32
  65. package/dist/es/standards-agent-kit.es27.js.map +1 -1
  66. package/dist/es/standards-agent-kit.es28.js +54 -25
  67. package/dist/es/standards-agent-kit.es28.js.map +1 -1
  68. package/dist/es/standards-agent-kit.es29.js +35 -23
  69. package/dist/es/standards-agent-kit.es29.js.map +1 -1
  70. package/dist/es/standards-agent-kit.es3.js +41 -1549
  71. package/dist/es/standards-agent-kit.es3.js.map +1 -1
  72. package/dist/es/standards-agent-kit.es30.js +23 -39
  73. package/dist/es/standards-agent-kit.es30.js.map +1 -1
  74. package/dist/es/standards-agent-kit.es31.js +30 -28
  75. package/dist/es/standards-agent-kit.es31.js.map +1 -1
  76. package/dist/es/standards-agent-kit.es32.js +45 -32
  77. package/dist/es/standards-agent-kit.es32.js.map +1 -1
  78. package/dist/es/standards-agent-kit.es33.js +50 -89
  79. package/dist/es/standards-agent-kit.es33.js.map +1 -1
  80. package/dist/es/standards-agent-kit.es34.js +35 -234
  81. package/dist/es/standards-agent-kit.es34.js.map +1 -1
  82. package/dist/es/standards-agent-kit.es35.js +87 -213
  83. package/dist/es/standards-agent-kit.es35.js.map +1 -1
  84. package/dist/es/standards-agent-kit.es36.js +185 -129
  85. package/dist/es/standards-agent-kit.es36.js.map +1 -1
  86. package/dist/es/standards-agent-kit.es37.js +167 -563
  87. package/dist/es/standards-agent-kit.es37.js.map +1 -1
  88. package/dist/es/standards-agent-kit.es38.js +236 -30
  89. package/dist/es/standards-agent-kit.es38.js.map +1 -1
  90. package/dist/es/standards-agent-kit.es39.js +483 -206
  91. package/dist/es/standards-agent-kit.es39.js.map +1 -1
  92. package/dist/es/standards-agent-kit.es4.js +359 -81
  93. package/dist/es/standards-agent-kit.es4.js.map +1 -1
  94. package/dist/es/standards-agent-kit.es40.js +39 -135
  95. package/dist/es/standards-agent-kit.es40.js.map +1 -1
  96. package/dist/es/standards-agent-kit.es41.js +244 -28
  97. package/dist/es/standards-agent-kit.es41.js.map +1 -1
  98. package/dist/es/standards-agent-kit.es42.js +132 -418
  99. package/dist/es/standards-agent-kit.es42.js.map +1 -1
  100. package/dist/es/standards-agent-kit.es43.js +28 -184
  101. package/dist/es/standards-agent-kit.es43.js.map +1 -1
  102. package/dist/es/standards-agent-kit.es44.js +423 -3
  103. package/dist/es/standards-agent-kit.es44.js.map +1 -1
  104. package/dist/es/standards-agent-kit.es45.js +185 -24
  105. package/dist/es/standards-agent-kit.es45.js.map +1 -1
  106. package/dist/es/standards-agent-kit.es46.js +3 -3
  107. package/dist/es/standards-agent-kit.es46.js.map +1 -1
  108. package/dist/es/standards-agent-kit.es47.js +24 -20
  109. package/dist/es/standards-agent-kit.es47.js.map +1 -1
  110. package/dist/es/standards-agent-kit.es48.js +6 -52
  111. package/dist/es/standards-agent-kit.es48.js.map +1 -1
  112. package/dist/es/standards-agent-kit.es49.js +4 -3
  113. package/dist/es/standards-agent-kit.es49.js.map +1 -1
  114. package/dist/es/standards-agent-kit.es5.js +1747 -73
  115. package/dist/es/standards-agent-kit.es5.js.map +1 -1
  116. package/dist/es/standards-agent-kit.es50.js +20 -39
  117. package/dist/es/standards-agent-kit.es50.js.map +1 -1
  118. package/dist/es/standards-agent-kit.es51.js +50 -15
  119. package/dist/es/standards-agent-kit.es51.js.map +1 -1
  120. package/dist/es/standards-agent-kit.es52.js +3 -74
  121. package/dist/es/standards-agent-kit.es52.js.map +1 -1
  122. package/dist/es/standards-agent-kit.es53.js +43 -0
  123. package/dist/es/standards-agent-kit.es53.js.map +1 -0
  124. package/dist/es/standards-agent-kit.es54.js +22 -0
  125. package/dist/es/standards-agent-kit.es54.js.map +1 -0
  126. package/dist/es/standards-agent-kit.es55.js +77 -0
  127. package/dist/es/standards-agent-kit.es55.js.map +1 -0
  128. package/dist/es/standards-agent-kit.es56.js +7 -0
  129. package/dist/es/standards-agent-kit.es56.js.map +1 -0
  130. package/dist/es/standards-agent-kit.es6.js +332 -173
  131. package/dist/es/standards-agent-kit.es6.js.map +1 -1
  132. package/dist/es/standards-agent-kit.es7.js +142 -293
  133. package/dist/es/standards-agent-kit.es7.js.map +1 -1
  134. package/dist/es/standards-agent-kit.es8.js +201 -21
  135. package/dist/es/standards-agent-kit.es8.js.map +1 -1
  136. package/dist/es/standards-agent-kit.es9.js +301 -213
  137. package/dist/es/standards-agent-kit.es9.js.map +1 -1
  138. package/dist/es/tools/hcs10/InitiateConnectionTool.d.ts +4 -4
  139. package/dist/es/tools/hcs2/CreateRegistryTool.d.ts +2 -2
  140. package/dist/es/tools/hcs2/DeleteEntryTool.d.ts +2 -2
  141. package/dist/es/tools/hcs2/UpdateEntryTool.d.ts +2 -2
  142. package/dist/es/tools/hcs6/RegisterDynamicHashinalTool.d.ts +10 -10
  143. package/dist/es/tools/hcs6/UpdateDynamicHashinalTool.d.ts +8 -8
  144. package/dist/es/tools/inscriber/InscribeFromBufferTool.d.ts +5 -4
  145. package/dist/es/tools/inscriber/InscribeFromFileTool.d.ts +2 -2
  146. package/dist/es/tools/inscriber/InscribeFromUrlTool.d.ts +4 -4
  147. package/dist/es/tools/inscriber/InscribeHashinalTool.d.ts +1 -1
  148. package/dist/es/types/tx-results.d.ts +15 -0
  149. package/dist/es/utils/CodedError.d.ts +4 -0
  150. package/dist/es/validation/hip412-schemas.d.ts +2 -2
  151. package/dist/umd/builders/hcs10/hcs10-builder.d.ts +1 -0
  152. package/dist/umd/builders/hcs2/hcs2-builder.d.ts +8 -7
  153. package/dist/umd/builders/hcs6/hcs6-builder.d.ts +5 -4
  154. package/dist/umd/index.d.ts +4 -0
  155. package/dist/umd/signing/bytes-registry.d.ts +17 -0
  156. package/dist/umd/signing/signer-provider.d.ts +45 -0
  157. package/dist/umd/standards-agent-kit.umd.js +1 -1
  158. package/dist/umd/standards-agent-kit.umd.js.map +1 -1
  159. package/dist/umd/tools/hcs10/InitiateConnectionTool.d.ts +4 -4
  160. package/dist/umd/tools/hcs2/CreateRegistryTool.d.ts +2 -2
  161. package/dist/umd/tools/hcs2/DeleteEntryTool.d.ts +2 -2
  162. package/dist/umd/tools/hcs2/UpdateEntryTool.d.ts +2 -2
  163. package/dist/umd/tools/hcs6/RegisterDynamicHashinalTool.d.ts +10 -10
  164. package/dist/umd/tools/hcs6/UpdateDynamicHashinalTool.d.ts +8 -8
  165. package/dist/umd/tools/inscriber/InscribeFromBufferTool.d.ts +5 -4
  166. package/dist/umd/tools/inscriber/InscribeFromFileTool.d.ts +2 -2
  167. package/dist/umd/tools/inscriber/InscribeFromUrlTool.d.ts +4 -4
  168. package/dist/umd/tools/inscriber/InscribeHashinalTool.d.ts +1 -1
  169. package/dist/umd/types/tx-results.d.ts +15 -0
  170. package/dist/umd/utils/CodedError.d.ts +4 -0
  171. package/dist/umd/validation/hip412-schemas.d.ts +2 -2
  172. package/package.json +3 -3
  173. package/src/builders/hcs10/hcs10-builder.ts +239 -10
  174. package/src/builders/hcs2/hcs2-builder.ts +302 -9
  175. package/src/builders/hcs6/hcs6-builder.ts +79 -4
  176. package/src/hcs10/HCS10Client.ts +1 -1
  177. package/src/index.ts +5 -1
  178. package/src/lib/zod-render/schema-extension.ts +0 -1
  179. package/src/signing/bytes-registry.ts +501 -0
  180. package/src/signing/signer-provider.ts +120 -0
  181. package/src/tools/hcs2/CreateRegistryTool.ts +30 -5
  182. package/src/tools/hcs2/DeleteEntryTool.ts +16 -2
  183. package/src/tools/hcs2/MigrateRegistryTool.ts +16 -2
  184. package/src/tools/hcs2/QueryRegistryTool.ts +11 -2
  185. package/src/tools/hcs2/RegisterEntryTool.ts +17 -3
  186. package/src/tools/hcs2/UpdateEntryTool.ts +16 -2
  187. package/src/tools/hcs6/CreateDynamicRegistryTool.ts +17 -3
  188. package/src/tools/hcs6/RegisterDynamicHashinalTool.ts +17 -3
  189. package/src/tools/hcs6/UpdateDynamicHashinalTool.ts +17 -3
  190. package/src/tools/inscriber/InscribeFromBufferTool.ts +78 -2
  191. package/src/tools/inscriber/InscribeHashinalTool.ts +22 -131
  192. package/src/types/tx-results.ts +18 -0
  193. package/src/utils/CodedError.ts +8 -0
  194. package/src/utils/Encryption.ts +0 -2
  195. package/src/utils/ensure-agent-has-hbar.ts +4 -5
@@ -1,32 +1,61 @@
1
- import { BaseHederaTransactionTool, BaseHederaQueryTool } from "hedera-agent-kit";
2
- class BaseHCS6TransactionTool extends BaseHederaTransactionTool {
3
- constructor(params) {
4
- super(params);
5
- this.namespace = "hcs6";
6
- this.hcs6Builder = params.hcs6Builder;
1
+ import { z } from "zod";
2
+ import { BaseHCS2QueryTool } from "./standards-agent-kit.es23.js";
3
+ import { isWalletBytesResponse } from "./standards-agent-kit.es56.js";
4
+ const migrateRegistrySchema = z.object({
5
+ registryTopicId: z.string().regex(/^\d+\.\d+\.\d+$/).describe("The current HCS-2 registry topic ID"),
6
+ targetTopicId: z.string().regex(/^\d+\.\d+\.\d+$/).describe("The new topic ID to migrate to"),
7
+ metadata: z.string().optional().describe("Optional metadata URI for migration details"),
8
+ memo: z.string().max(500).optional().describe("Optional memo (max 500 characters)")
9
+ });
10
+ class MigrateRegistryTool extends BaseHCS2QueryTool {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.name = "migrateHCS2Registry";
14
+ this.description = "Migrate an HCS-2 registry to a new topic";
7
15
  }
8
- /**
9
- * Override to return the HCS6Builder
10
- */
11
- getServiceBuilder() {
12
- return this.hcs6Builder;
16
+ get specificInputSchema() {
17
+ return migrateRegistrySchema;
13
18
  }
14
- }
15
- class BaseHCS6QueryTool extends BaseHederaQueryTool {
16
- constructor(params) {
17
- super(params);
18
- this.namespace = "hcs6";
19
- this.hcs6Builder = params.hcs6Builder;
20
- }
21
- /**
22
- * Override to return the HCS6Builder
23
- */
24
- getServiceBuilder() {
25
- return this.hcs6Builder;
19
+ async executeQuery(params, _runManager) {
20
+ try {
21
+ const result = await this.hcs2Builder.migrateRegistry(
22
+ params.registryTopicId,
23
+ {
24
+ targetTopicId: params.targetTopicId,
25
+ metadata: params.metadata,
26
+ memo: params.memo
27
+ }
28
+ );
29
+ if (!("success" in result) || !result.success) {
30
+ throw new Error(result.error || "Failed to migrate registry");
31
+ }
32
+ if (isWalletBytesResponse(result)) {
33
+ const txBytes = result.transactionBytes;
34
+ return {
35
+ message: "I prepared an unsigned transaction to migrate the HCS-2 registry. Please review and approve to submit.",
36
+ transactionBytes: txBytes,
37
+ metadata: {
38
+ transactionBytes: txBytes,
39
+ pendingApproval: true,
40
+ description: `Migrate HCS-2 registry (from ${params.registryTopicId} to ${params.targetTopicId})`
41
+ }
42
+ };
43
+ }
44
+ return `Successfully migrated HCS-2 registry!
45
+
46
+ From Registry Topic: ${params.registryTopicId}
47
+ To Target Topic: ${params.targetTopicId}${params.metadata ? `
48
+ Metadata: ${params.metadata}` : ""}${params.memo ? `
49
+ Memo: ${params.memo}` : ""}
50
+
51
+ The registry has been migrated to the new topic.`;
52
+ } catch (error) {
53
+ const errorMessage = error instanceof Error ? error.message : "Failed to migrate registry";
54
+ throw new Error(`Registry migration failed: ${errorMessage}`);
55
+ }
26
56
  }
27
57
  }
28
58
  export {
29
- BaseHCS6QueryTool,
30
- BaseHCS6TransactionTool
59
+ MigrateRegistryTool
31
60
  };
32
61
  //# sourceMappingURL=standards-agent-kit.es28.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standards-agent-kit.es28.js","sources":["../../src/tools/hcs6/base-hcs6-tools.ts"],"sourcesContent":["import {\n BaseHederaTransactionTool,\n BaseHederaQueryTool,\n BaseServiceBuilder,\n} from 'hedera-agent-kit';\nimport { HCS6Builder } from '../../builders/hcs6/hcs6-builder';\nimport {\n HCS6TransactionToolParams,\n HCS6QueryToolParams,\n} from './hcs6-tool-params';\nimport { z } from 'zod';\n\n/**\n * Base class for HCS6 transaction tools\n */\nexport abstract class BaseHCS6TransactionTool<\n T extends z.ZodObject<\n z.ZodRawShape,\n z.UnknownKeysParam,\n z.ZodTypeAny\n > = z.ZodObject<z.ZodRawShape>\n> extends BaseHederaTransactionTool<T> {\n protected hcs6Builder: HCS6Builder;\n namespace = 'hcs6' as const;\n\n constructor(params: HCS6TransactionToolParams) {\n super(params);\n this.hcs6Builder = params.hcs6Builder;\n }\n\n /**\n * Override to return the HCS6Builder\n */\n protected getServiceBuilder(): BaseServiceBuilder {\n return this.hcs6Builder;\n }\n}\n\n/**\n * Base class for HCS6 query tools\n */\nexport abstract class BaseHCS6QueryTool<\n T extends z.ZodObject<\n z.ZodRawShape,\n z.UnknownKeysParam,\n z.ZodTypeAny\n > = z.ZodObject<z.ZodRawShape>\n> extends BaseHederaQueryTool<T> {\n protected hcs6Builder: HCS6Builder;\n namespace = 'hcs6' as const;\n\n constructor(params: HCS6QueryToolParams) {\n super(params);\n this.hcs6Builder = params.hcs6Builder;\n }\n\n /**\n * Override to return the HCS6Builder\n */\n protected getServiceBuilder(): BaseServiceBuilder {\n return this.hcs6Builder;\n }\n}"],"names":[],"mappings":";AAeO,MAAe,gCAMZ,0BAA6B;AAAA,EAIrC,YAAY,QAAmC;AAC7C,UAAM,MAAM;AAHd,SAAA,YAAY;AAIV,SAAK,cAAc,OAAO;AAAA,EAC5B;AAAA;AAAA;AAAA;AAAA,EAKU,oBAAwC;AAChD,WAAO,KAAK;AAAA,EACd;AACF;AAKO,MAAe,0BAMZ,oBAAuB;AAAA,EAI/B,YAAY,QAA6B;AACvC,UAAM,MAAM;AAHd,SAAA,YAAY;AAIV,SAAK,cAAc,OAAO;AAAA,EAC5B;AAAA;AAAA;AAAA;AAAA,EAKU,oBAAwC;AAChD,WAAO,KAAK;AAAA,EACd;AACF;"}
1
+ {"version":3,"file":"standards-agent-kit.es28.js","sources":["../../src/tools/hcs2/MigrateRegistryTool.ts"],"sourcesContent":["import { z } from 'zod';\nimport { BaseHCS2QueryTool } from './base-hcs2-tools';\nimport { CallbackManagerForToolRun } from '@langchain/core/callbacks/manager';\nimport { isWalletBytesResponse, type RegistryOperationResult } from '../../types/tx-results';\n\n/**\n * Schema for migrating an HCS-2 registry\n */\nconst migrateRegistrySchema = z.object({\n registryTopicId: z\n .string()\n .regex(/^\\d+\\.\\d+\\.\\d+$/)\n .describe('The current HCS-2 registry topic ID'),\n targetTopicId: z\n .string()\n .regex(/^\\d+\\.\\d+\\.\\d+$/)\n .describe('The new topic ID to migrate to'),\n metadata: z\n .string()\n .optional()\n .describe('Optional metadata URI for migration details'),\n memo: z\n .string()\n .max(500)\n .optional()\n .describe('Optional memo (max 500 characters)'),\n});\n\n\n/**\n * Tool for migrating HCS-2 registries\n */\nexport class MigrateRegistryTool extends BaseHCS2QueryTool<typeof migrateRegistrySchema> {\n name = 'migrateHCS2Registry';\n description = 'Migrate an HCS-2 registry to a new topic';\n\n get specificInputSchema() {\n return migrateRegistrySchema;\n }\n\n protected async executeQuery(\n params: z.infer<typeof migrateRegistrySchema>,\n _runManager?: CallbackManagerForToolRun\n ): Promise<unknown> {\n try {\n const result: RegistryOperationResult = await this.hcs2Builder.migrateRegistry(\n params.registryTopicId,\n {\n targetTopicId: params.targetTopicId,\n metadata: params.metadata,\n memo: params.memo,\n }\n );\n\n if (!('success' in result) || !result.success) {\n throw new Error(result.error || 'Failed to migrate registry');\n }\n\n if (isWalletBytesResponse(result)) {\n const txBytes = result.transactionBytes;\n return {\n message: 'I prepared an unsigned transaction to migrate the HCS-2 registry. Please review and approve to submit.',\n transactionBytes: txBytes,\n metadata: {\n transactionBytes: txBytes,\n pendingApproval: true,\n description: `Migrate HCS-2 registry (from ${params.registryTopicId} to ${params.targetTopicId})`,\n },\n };\n }\n\n return `Successfully migrated HCS-2 registry!\\n\\nFrom Registry Topic: ${params.registryTopicId}\\nTo Target Topic: ${params.targetTopicId}${params.metadata ? `\\nMetadata: ${params.metadata}` : ''}${params.memo ? `\\nMemo: ${params.memo}` : ''}\\n\\nThe registry has been migrated to the new topic.`;\n } catch (error) {\n const errorMessage = error instanceof Error ? error.message : 'Failed to migrate registry';\n throw new Error(`Registry migration failed: ${errorMessage}`);\n }\n }\n}"],"names":[],"mappings":";;;AAQA,MAAM,wBAAwB,EAAE,OAAO;AAAA,EACrC,iBAAiB,EACd,OAAA,EACA,MAAM,iBAAiB,EACvB,SAAS,qCAAqC;AAAA,EACjD,eAAe,EACZ,OAAA,EACA,MAAM,iBAAiB,EACvB,SAAS,gCAAgC;AAAA,EAC5C,UAAU,EACP,OAAA,EACA,SAAA,EACA,SAAS,6CAA6C;AAAA,EACzD,MAAM,EACH,SACA,IAAI,GAAG,EACP,WACA,SAAS,oCAAoC;AAClD,CAAC;AAMM,MAAM,4BAA4B,kBAAgD;AAAA,EAAlF,cAAA;AAAA,UAAA,GAAA,SAAA;AACL,SAAA,OAAO;AACP,SAAA,cAAc;AAAA,EAAA;AAAA,EAEd,IAAI,sBAAsB;AACxB,WAAO;AAAA,EACT;AAAA,EAEA,MAAgB,aACd,QACA,aACkB;AAClB,QAAI;AACF,YAAM,SAAkC,MAAM,KAAK,YAAY;AAAA,QAC7D,OAAO;AAAA,QACP;AAAA,UACE,eAAe,OAAO;AAAA,UACtB,UAAU,OAAO;AAAA,UACjB,MAAM,OAAO;AAAA,QAAA;AAAA,MACf;AAGF,UAAI,EAAE,aAAa,WAAW,CAAC,OAAO,SAAS;AAC7C,cAAM,IAAI,MAAM,OAAO,SAAS,4BAA4B;AAAA,MAC9D;AAEA,UAAI,sBAAsB,MAAM,GAAG;AACjC,cAAM,UAAU,OAAO;AACvB,eAAO;AAAA,UACL,SAAS;AAAA,UACT,kBAAkB;AAAA,UAClB,UAAU;AAAA,YACR,kBAAkB;AAAA,YAClB,iBAAiB;AAAA,YACjB,aAAa,gCAAgC,OAAO,eAAe,OAAO,OAAO,aAAa;AAAA,UAAA;AAAA,QAChG;AAAA,MAEJ;AAEA,aAAO;AAAA;AAAA,uBAAiE,OAAO,eAAe;AAAA,mBAAsB,OAAO,aAAa,GAAG,OAAO,WAAW;AAAA,YAAe,OAAO,QAAQ,KAAK,EAAE,GAAG,OAAO,OAAO;AAAA,QAAW,OAAO,IAAI,KAAK,EAAE;AAAA;AAAA;AAAA,IAClP,SAAS,OAAO;AACd,YAAM,eAAe,iBAAiB,QAAQ,MAAM,UAAU;AAC9D,YAAM,IAAI,MAAM,8BAA8B,YAAY,EAAE;AAAA,IAC9D;AAAA,EACF;AACF;"}
@@ -1,35 +1,47 @@
1
1
  import { z } from "zod";
2
- import { BaseHCS6QueryTool } from "./standards-agent-kit.es28.js";
3
- const CreateDynamicRegistrySchema = z.object({
4
- ttl: z.number().min(3600).default(86400).describe("Time-to-live in seconds (minimum 3600 seconds/1 hour)"),
5
- submitKey: z.union([z.boolean(), z.string()]).optional().describe("Submit key for the registry topic. Can be boolean (use operator key) or a public key string")
2
+ import { BaseHCS2QueryTool } from "./standards-agent-kit.es23.js";
3
+ const queryRegistrySchema = z.object({
4
+ topicId: z.string().regex(/^\d+\.\d+\.\d+$/).describe("The HCS-2 registry topic ID to query"),
5
+ limit: z.number().int().positive().optional().describe("Maximum number of entries to return"),
6
+ order: z.enum(["asc", "desc"]).optional().describe("Order of results (ascending or descending)"),
7
+ skip: z.number().int().min(0).optional().describe("Number of entries to skip")
6
8
  });
7
- class CreateDynamicRegistryTool extends BaseHCS6QueryTool {
8
- constructor(params) {
9
- super(params);
10
- this.name = "createDynamicRegistry";
11
- this.description = "Create a new HCS-6 dynamic registry for managing evolving content";
9
+ class QueryRegistryTool extends BaseHCS2QueryTool {
10
+ constructor() {
11
+ super(...arguments);
12
+ this.name = "queryHCS2Registry";
13
+ this.description = "Query entries from an HCS-2 registry (standard HCS-2). Retrieves indexed or latest entries and returns a structured summary.";
12
14
  }
13
15
  get specificInputSchema() {
14
- return CreateDynamicRegistrySchema;
16
+ return queryRegistrySchema;
15
17
  }
16
18
  async executeQuery(params, _runManager) {
17
- const result = await this.hcs6Builder.createRegistry({
18
- ttl: params.ttl,
19
- submitKey: params.submitKey
19
+ const registry = await this.hcs2Builder.getRegistry(params.topicId, {
20
+ limit: params.limit,
21
+ order: params.order,
22
+ skip: params.skip
20
23
  });
21
- if (!result.success) {
22
- throw new Error(result.error || "Failed to create dynamic registry");
23
- }
24
- return `Successfully created HCS-6 dynamic registry!
25
-
26
- Topic ID: ${result.topicId}
27
- TTL: ${params.ttl} seconds
28
-
29
- You can now register dynamic hashinals to this registry using the topic ID.`;
24
+ const typeVal = registry.registryType;
25
+ const isIndexed = typeVal === 0 || typeVal === "0" || String(typeVal).toLowerCase() === "indexed" || String(typeVal).toLowerCase() === "index" || String(typeVal).toLowerCase() === "index_topic" || String(typeVal).toLowerCase() === "indexed_registry";
26
+ return {
27
+ topicId: registry.topicId,
28
+ registryType: isIndexed ? "indexed" : "non-indexed",
29
+ ttl: registry.ttl,
30
+ totalEntries: registry.entries.length,
31
+ entries: registry.entries.map((entry) => ({
32
+ sequence: entry.sequence,
33
+ timestamp: entry.timestamp,
34
+ payer: entry.payer,
35
+ operation: entry.message.op,
36
+ targetTopicId: entry.message.t_id,
37
+ uid: entry.message.uid,
38
+ metadata: entry.message.metadata,
39
+ memo: entry.message.m
40
+ }))
41
+ };
30
42
  }
31
43
  }
32
44
  export {
33
- CreateDynamicRegistryTool
45
+ QueryRegistryTool
34
46
  };
35
47
  //# sourceMappingURL=standards-agent-kit.es29.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standards-agent-kit.es29.js","sources":["../../src/tools/hcs6/CreateDynamicRegistryTool.ts"],"sourcesContent":["import { z } from 'zod';\nimport { BaseHCS6QueryTool } from './base-hcs6-tools';\nimport { HCS6QueryToolParams } from './hcs6-tool-params';\nimport { CallbackManagerForToolRun } from '@langchain/core/callbacks/manager';\n\n/**\n * Schema for creating a dynamic hashinal registry\n */\nconst CreateDynamicRegistrySchema = z.object({\n ttl: z\n .number()\n .min(3600)\n .default(86400)\n .describe('Time-to-live in seconds (minimum 3600 seconds/1 hour)'),\n submitKey: z\n .union([z.boolean(), z.string()])\n .optional()\n .describe('Submit key for the registry topic. Can be boolean (use operator key) or a public key string'),\n});\n\nexport type CreateDynamicRegistryInput = z.infer<typeof CreateDynamicRegistrySchema>;\n\n/**\n * Tool for creating HCS-6 dynamic registries\n */\nexport class CreateDynamicRegistryTool extends BaseHCS6QueryTool<typeof CreateDynamicRegistrySchema> {\n name = 'createDynamicRegistry';\n description = 'Create a new HCS-6 dynamic registry for managing evolving content';\n\n get specificInputSchema(): typeof CreateDynamicRegistrySchema {\n return CreateDynamicRegistrySchema;\n }\n\n constructor(params: HCS6QueryToolParams) {\n super(params);\n }\n\n protected async executeQuery(\n params: CreateDynamicRegistryInput,\n _runManager?: CallbackManagerForToolRun\n ): Promise<unknown> {\n const result = await this.hcs6Builder.createRegistry({\n ttl: params.ttl,\n submitKey: params.submitKey,\n });\n\n if (!result.success) {\n throw new Error(result.error || 'Failed to create dynamic registry');\n }\n\n return `Successfully created HCS-6 dynamic registry!\\n\\nTopic ID: ${result.topicId}\\nTTL: ${params.ttl} seconds\\n\\nYou can now register dynamic hashinals to this registry using the topic ID.`;\n }\n}"],"names":[],"mappings":";;AAQA,MAAM,8BAA8B,EAAE,OAAO;AAAA,EAC3C,KAAK,EACF,OAAA,EACA,IAAI,IAAI,EACR,QAAQ,KAAK,EACb,SAAS,uDAAuD;AAAA,EACnE,WAAW,EACR,MAAM,CAAC,EAAE,QAAA,GAAW,EAAE,OAAA,CAAQ,CAAC,EAC/B,SAAA,EACA,SAAS,6FAA6F;AAC3G,CAAC;AAOM,MAAM,kCAAkC,kBAAsD;AAAA,EAQnG,YAAY,QAA6B;AACvC,UAAM,MAAM;AARd,SAAA,OAAO;AACP,SAAA,cAAc;AAAA,EAQd;AAAA,EANA,IAAI,sBAA0D;AAC5D,WAAO;AAAA,EACT;AAAA,EAMA,MAAgB,aACd,QACA,aACkB;AAClB,UAAM,SAAS,MAAM,KAAK,YAAY,eAAe;AAAA,MACnD,KAAK,OAAO;AAAA,MACZ,WAAW,OAAO;AAAA,IAAA,CACnB;AAED,QAAI,CAAC,OAAO,SAAS;AACnB,YAAM,IAAI,MAAM,OAAO,SAAS,mCAAmC;AAAA,IACrE;AAEA,WAAO;AAAA;AAAA,YAA6D,OAAO,OAAO;AAAA,OAAU,OAAO,GAAG;AAAA;AAAA;AAAA,EACxG;AACF;"}
1
+ {"version":3,"file":"standards-agent-kit.es29.js","sources":["../../src/tools/hcs2/QueryRegistryTool.ts"],"sourcesContent":["import { z } from 'zod';\nimport { BaseHCS2QueryTool } from './base-hcs2-tools';\nimport { CallbackManagerForToolRun } from '@langchain/core/callbacks/manager';\n\n/**\n * Schema for querying HCS-2 registry\n */\nconst queryRegistrySchema = z.object({\n topicId: z\n .string()\n .regex(/^\\d+\\.\\d+\\.\\d+$/)\n .describe('The HCS-2 registry topic ID to query'),\n limit: z\n .number()\n .int()\n .positive()\n .optional()\n .describe('Maximum number of entries to return'),\n order: z\n .enum(['asc', 'desc'])\n .optional()\n .describe('Order of results (ascending or descending)'),\n skip: z\n .number()\n .int()\n .min(0)\n .optional()\n .describe('Number of entries to skip'),\n});\n\n\n/**\n * Tool for querying HCS-2 registries\n */\nexport class QueryRegistryTool extends BaseHCS2QueryTool<typeof queryRegistrySchema> {\n name = 'queryHCS2Registry';\n description = 'Query entries from an HCS-2 registry (standard HCS-2). Retrieves indexed or latest entries and returns a structured summary.'\n\n get specificInputSchema() {\n return queryRegistrySchema;\n }\n\n protected async executeQuery(\n params: z.infer<typeof queryRegistrySchema>,\n _runManager?: CallbackManagerForToolRun\n ): Promise<unknown> {\n const registry = await this.hcs2Builder.getRegistry(params.topicId, {\n limit: params.limit,\n order: params.order,\n skip: params.skip,\n });\n\n const typeVal = (registry as unknown as { registryType: unknown }).registryType;\n const isIndexed =\n typeVal === 0 ||\n typeVal === '0' ||\n String(typeVal).toLowerCase() === 'indexed' ||\n String(typeVal).toLowerCase() === 'index' ||\n String(typeVal).toLowerCase() === 'index_topic' ||\n String(typeVal).toLowerCase() === 'indexed_registry';\n\n return {\n topicId: registry.topicId,\n registryType: isIndexed ? 'indexed' : 'non-indexed',\n ttl: registry.ttl,\n totalEntries: registry.entries.length,\n entries: registry.entries.map(entry => ({\n sequence: entry.sequence,\n timestamp: entry.timestamp,\n payer: entry.payer,\n operation: entry.message.op,\n targetTopicId: entry.message.t_id,\n uid: entry.message.uid,\n metadata: entry.message.metadata,\n memo: entry.message.m,\n })),\n };\n }\n}"],"names":[],"mappings":";;AAOA,MAAM,sBAAsB,EAAE,OAAO;AAAA,EACnC,SAAS,EACN,OAAA,EACA,MAAM,iBAAiB,EACvB,SAAS,sCAAsC;AAAA,EAClD,OAAO,EACJ,OAAA,EACA,IAAA,EACA,SAAA,EACA,SAAA,EACA,SAAS,qCAAqC;AAAA,EACjD,OAAO,EACJ,KAAK,CAAC,OAAO,MAAM,CAAC,EACpB,SAAA,EACA,SAAS,4CAA4C;AAAA,EACxD,MAAM,EACH,OAAA,EACA,IAAA,EACA,IAAI,CAAC,EACL,WACA,SAAS,2BAA2B;AACzC,CAAC;AAMM,MAAM,0BAA0B,kBAA8C;AAAA,EAA9E,cAAA;AAAA,UAAA,GAAA,SAAA;AACL,SAAA,OAAO;AACP,SAAA,cAAc;AAAA,EAAA;AAAA,EAEd,IAAI,sBAAsB;AACxB,WAAO;AAAA,EACT;AAAA,EAEA,MAAgB,aACd,QACA,aACkB;AAClB,UAAM,WAAW,MAAM,KAAK,YAAY,YAAY,OAAO,SAAS;AAAA,MAClE,OAAO,OAAO;AAAA,MACd,OAAO,OAAO;AAAA,MACd,MAAM,OAAO;AAAA,IAAA,CACd;AAED,UAAM,UAAW,SAAkD;AACnE,UAAM,YACJ,YAAY,KACZ,YAAY,OACZ,OAAO,OAAO,EAAE,kBAAkB,aAClC,OAAO,OAAO,EAAE,kBAAkB,WAClC,OAAO,OAAO,EAAE,kBAAkB,iBAClC,OAAO,OAAO,EAAE,YAAA,MAAkB;AAEpC,WAAO;AAAA,MACL,SAAS,SAAS;AAAA,MAClB,cAAc,YAAY,YAAY;AAAA,MACtC,KAAK,SAAS;AAAA,MACd,cAAc,SAAS,QAAQ;AAAA,MAC/B,SAAS,SAAS,QAAQ,IAAI,CAAA,WAAU;AAAA,QACtC,UAAU,MAAM;AAAA,QAChB,WAAW,MAAM;AAAA,QACjB,OAAO,MAAM;AAAA,QACb,WAAW,MAAM,QAAQ;AAAA,QACzB,eAAe,MAAM,QAAQ;AAAA,QAC7B,KAAK,MAAM,QAAQ;AAAA,QACnB,UAAU,MAAM,QAAQ;AAAA,QACxB,MAAM,MAAM,QAAQ;AAAA,MAAA,EACpB;AAAA,IAAA;AAAA,EAEN;AACF;"}