@hashgraphonline/standards-sdk 0.1.182 → 0.1.184

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 (155) hide show
  1. package/dist/browser/services/registry-broker/client/base-client.d.ts +2 -1
  2. package/dist/browser/services/registry-broker/client/base-client.d.ts.map +1 -1
  3. package/dist/browser/services/registry-broker/client/chat.d.ts +3 -1
  4. package/dist/browser/services/registry-broker/client/chat.d.ts.map +1 -1
  5. package/dist/browser/services/registry-broker/index.d.ts +1 -0
  6. package/dist/browser/services/registry-broker/index.d.ts.map +1 -1
  7. package/dist/browser/services/registry-broker/schemas.d.ts +313 -28
  8. package/dist/browser/services/registry-broker/schemas.d.ts.map +1 -1
  9. package/dist/browser/services/registry-broker/types.d.ts +12 -1
  10. package/dist/browser/services/registry-broker/types.d.ts.map +1 -1
  11. package/dist/browser/standards-sdk.browser.js +45 -0
  12. package/dist/browser/standards-sdk.browser.js.map +1 -1
  13. package/dist/browser-root/services/registry-broker/client/base-client.d.ts +2 -1
  14. package/dist/browser-root/services/registry-broker/client/base-client.d.ts.map +1 -1
  15. package/dist/browser-root/services/registry-broker/client/chat.d.ts +3 -1
  16. package/dist/browser-root/services/registry-broker/client/chat.d.ts.map +1 -1
  17. package/dist/browser-root/services/registry-broker/index.d.ts +1 -0
  18. package/dist/browser-root/services/registry-broker/index.d.ts.map +1 -1
  19. package/dist/browser-root/services/registry-broker/schemas.d.ts +313 -28
  20. package/dist/browser-root/services/registry-broker/schemas.d.ts.map +1 -1
  21. package/dist/browser-root/services/registry-broker/types.d.ts +12 -1
  22. package/dist/browser-root/services/registry-broker/types.d.ts.map +1 -1
  23. package/dist/browser-root/standards-sdk.root-browser.js +77 -0
  24. package/dist/browser-root/standards-sdk.root-browser.js.map +1 -1
  25. package/dist/cjs/services/registry-broker/client/base-client.d.ts +2 -1
  26. package/dist/cjs/services/registry-broker/client/base-client.d.ts.map +1 -1
  27. package/dist/cjs/services/registry-broker/client/chat.d.ts +3 -1
  28. package/dist/cjs/services/registry-broker/client/chat.d.ts.map +1 -1
  29. package/dist/cjs/services/registry-broker/index.d.ts +1 -0
  30. package/dist/cjs/services/registry-broker/index.d.ts.map +1 -1
  31. package/dist/cjs/services/registry-broker/schemas.d.ts +313 -28
  32. package/dist/cjs/services/registry-broker/schemas.d.ts.map +1 -1
  33. package/dist/cjs/services/registry-broker/types.d.ts +12 -1
  34. package/dist/cjs/services/registry-broker/types.d.ts.map +1 -1
  35. package/dist/cjs/standards-sdk.cjs +2 -2
  36. package/dist/cjs/standards-sdk.cjs.map +1 -1
  37. package/dist/es/services/registry-broker/client/base-client.d.ts +2 -1
  38. package/dist/es/services/registry-broker/client/base-client.d.ts.map +1 -1
  39. package/dist/es/services/registry-broker/client/chat.d.ts +3 -1
  40. package/dist/es/services/registry-broker/client/chat.d.ts.map +1 -1
  41. package/dist/es/services/registry-broker/index.d.ts +1 -0
  42. package/dist/es/services/registry-broker/index.d.ts.map +1 -1
  43. package/dist/es/services/registry-broker/schemas.d.ts +313 -28
  44. package/dist/es/services/registry-broker/schemas.d.ts.map +1 -1
  45. package/dist/es/services/registry-broker/types.d.ts +12 -1
  46. package/dist/es/services/registry-broker/types.d.ts.map +1 -1
  47. package/dist/es/standards-sdk.es.js +12 -4
  48. package/dist/es/standards-sdk.es.js.map +1 -1
  49. package/dist/es/standards-sdk.es104.js +1 -1
  50. package/dist/es/standards-sdk.es106.js +1 -1
  51. package/dist/es/standards-sdk.es108.js +1 -1
  52. package/dist/es/standards-sdk.es11.js +1 -1
  53. package/dist/es/standards-sdk.es110.js +1 -1
  54. package/dist/es/standards-sdk.es116.js +1 -1
  55. package/dist/es/standards-sdk.es12.js +1 -1
  56. package/dist/es/standards-sdk.es121.js +1 -1
  57. package/dist/es/standards-sdk.es127.js +1 -1
  58. package/dist/es/standards-sdk.es128.js +5 -5
  59. package/dist/es/standards-sdk.es138.js +1 -1
  60. package/dist/es/standards-sdk.es139.js +1 -1
  61. package/dist/es/standards-sdk.es140.js +5 -5
  62. package/dist/es/standards-sdk.es142.js +1 -1
  63. package/dist/es/standards-sdk.es145.js +7 -4
  64. package/dist/es/standards-sdk.es145.js.map +1 -1
  65. package/dist/es/standards-sdk.es147.js +1 -1
  66. package/dist/es/standards-sdk.es148.js.map +1 -1
  67. package/dist/es/standards-sdk.es149.js +1 -1
  68. package/dist/es/standards-sdk.es152.js +2547 -159
  69. package/dist/es/standards-sdk.es152.js.map +1 -1
  70. package/dist/es/standards-sdk.es153.js +159 -7
  71. package/dist/es/standards-sdk.es153.js.map +1 -1
  72. package/dist/es/standards-sdk.es154.js +7 -86
  73. package/dist/es/standards-sdk.es154.js.map +1 -1
  74. package/dist/es/standards-sdk.es155.js +64 -43
  75. package/dist/es/standards-sdk.es155.js.map +1 -1
  76. package/dist/es/standards-sdk.es156.js +65 -30
  77. package/dist/es/standards-sdk.es156.js.map +1 -1
  78. package/dist/es/standards-sdk.es157.js +30 -34
  79. package/dist/es/standards-sdk.es157.js.map +1 -1
  80. package/dist/es/standards-sdk.es158.js +34 -48
  81. package/dist/es/standards-sdk.es158.js.map +1 -1
  82. package/dist/es/standards-sdk.es159.js +48 -138
  83. package/dist/es/standards-sdk.es159.js.map +1 -1
  84. package/dist/es/standards-sdk.es16.js +1 -1
  85. package/dist/es/standards-sdk.es160.js +133 -37
  86. package/dist/es/standards-sdk.es160.js.map +1 -1
  87. package/dist/es/standards-sdk.es161.js +42 -2494
  88. package/dist/es/standards-sdk.es161.js.map +1 -1
  89. package/dist/es/standards-sdk.es163.js +54 -15
  90. package/dist/es/standards-sdk.es163.js.map +1 -1
  91. package/dist/es/standards-sdk.es164.js +102 -47
  92. package/dist/es/standards-sdk.es164.js.map +1 -1
  93. package/dist/es/standards-sdk.es165.js +64 -94
  94. package/dist/es/standards-sdk.es165.js.map +1 -1
  95. package/dist/es/standards-sdk.es166.js +180 -61
  96. package/dist/es/standards-sdk.es166.js.map +1 -1
  97. package/dist/es/standards-sdk.es167.js +14 -197
  98. package/dist/es/standards-sdk.es167.js.map +1 -1
  99. package/dist/es/standards-sdk.es168.js +658 -158
  100. package/dist/es/standards-sdk.es168.js.map +1 -1
  101. package/dist/es/standards-sdk.es169.js +139 -289
  102. package/dist/es/standards-sdk.es169.js.map +1 -1
  103. package/dist/es/standards-sdk.es170.js +274 -298
  104. package/dist/es/standards-sdk.es170.js.map +1 -1
  105. package/dist/es/standards-sdk.es171.js +262 -369
  106. package/dist/es/standards-sdk.es171.js.map +1 -1
  107. package/dist/es/standards-sdk.es172.js +316 -194
  108. package/dist/es/standards-sdk.es172.js.map +1 -1
  109. package/dist/es/standards-sdk.es173.js +319 -64
  110. package/dist/es/standards-sdk.es173.js.map +1 -1
  111. package/dist/es/standards-sdk.es174.js +68 -664
  112. package/dist/es/standards-sdk.es174.js.map +1 -1
  113. package/dist/es/standards-sdk.es176.js +1 -1
  114. package/dist/es/standards-sdk.es177.js +24 -1
  115. package/dist/es/standards-sdk.es177.js.map +1 -1
  116. package/dist/es/standards-sdk.es179.js +2 -2
  117. package/dist/es/standards-sdk.es18.js +3 -3
  118. package/dist/es/standards-sdk.es180.js +1 -1
  119. package/dist/es/standards-sdk.es181.js +1 -1
  120. package/dist/es/standards-sdk.es182.js +2 -2
  121. package/dist/es/standards-sdk.es183.js +1 -1
  122. package/dist/es/standards-sdk.es184.js +1 -1
  123. package/dist/es/standards-sdk.es185.js +1 -1
  124. package/dist/es/standards-sdk.es19.js +1 -1
  125. package/dist/es/standards-sdk.es22.js +1 -1
  126. package/dist/es/standards-sdk.es27.js +3 -3
  127. package/dist/es/standards-sdk.es35.js +1 -1
  128. package/dist/es/standards-sdk.es36.js +2 -2
  129. package/dist/es/standards-sdk.es4.js +1 -1
  130. package/dist/es/standards-sdk.es53.js +1 -1
  131. package/dist/es/standards-sdk.es56.js +1 -1
  132. package/dist/es/standards-sdk.es59.js +1 -1
  133. package/dist/es/standards-sdk.es60.js +1 -1
  134. package/dist/es/standards-sdk.es62.js +1 -1
  135. package/dist/es/standards-sdk.es63.js +2 -2
  136. package/dist/es/standards-sdk.es64.js +1 -1
  137. package/dist/es/standards-sdk.es65.js +1 -1
  138. package/dist/es/standards-sdk.es66.js +1 -1
  139. package/dist/es/standards-sdk.es67.js +2 -2
  140. package/dist/es/standards-sdk.es69.js +1 -1
  141. package/dist/es/standards-sdk.es7.js +1 -1
  142. package/dist/es/standards-sdk.es71.js +1 -1
  143. package/dist/es/standards-sdk.es72.js +2 -2
  144. package/dist/es/standards-sdk.es75.js +2 -2
  145. package/dist/es/standards-sdk.es76.js +1 -1
  146. package/dist/es/standards-sdk.es78.js +1 -1
  147. package/dist/es/standards-sdk.es83.js +1 -1
  148. package/dist/es/standards-sdk.es84.js +1 -1
  149. package/dist/es/standards-sdk.es85.js +1 -1
  150. package/dist/es/standards-sdk.es88.js +1 -1
  151. package/dist/es/standards-sdk.es90.js +1 -1
  152. package/dist/es/standards-sdk.es94.js +3 -3
  153. package/dist/es/standards-sdk.es98.js +1 -1
  154. package/dist/es/standards-sdk.es99.js +1 -1
  155. package/package.json +1 -1
@@ -1,162 +1,2550 @@
1
- import { CustomFeeType } from "./standards-sdk.es153.js";
2
- import { HederaMirrorNode } from "./standards-sdk.es144.js";
3
- class FeeConfigBuilder {
4
- constructor(options) {
5
- this.customFees = [];
6
- this.logger = options.logger;
7
- this.mirrorNode = new HederaMirrorNode(options.network, options.logger);
8
- this.defaultCollectorAccountId = options.defaultCollectorAccountId || "";
9
- }
10
- /**
11
- * Static factory method to create a FeeConfigBuilder with a single HBAR fee.
12
- * @param hbarAmount Amount in HBAR.
13
- * @param collectorAccountId Optional account ID to collect the fee. If omitted or undefined, defaults to the agent's own account ID during topic creation.
14
- * @param network Network type ('mainnet' or 'testnet').
15
- * @param logger Logger instance.
16
- * @param exemptAccounts Optional array of account IDs exempt from this fee.
17
- * @returns A configured FeeConfigBuilder instance.
18
- */
19
- static forHbar(hbarAmount, collectorAccountId, network, logger, exemptAccounts = []) {
20
- const builder = new FeeConfigBuilder({
21
- network,
22
- logger,
23
- defaultCollectorAccountId: collectorAccountId
24
- });
25
- return builder.addHbarFee(hbarAmount, collectorAccountId, exemptAccounts);
26
- }
27
- /**
28
- * Static factory method to create a FeeConfigBuilder with a single token fee.
29
- * Automatically fetches token decimals if not provided.
30
- * @param tokenAmount Amount of tokens.
31
- * @param feeTokenId Token ID for the fee.
32
- * @param collectorAccountId Optional account ID to collect the fee. If omitted or undefined, defaults to the agent's own account ID during topic creation.
33
- * @param network Network type ('mainnet' or 'testnet').
34
- * @param logger Logger instance.
35
- * @param exemptAccounts Optional array of account IDs exempt from this fee.
36
- * @param decimals Optional decimals for the token (fetched if omitted).
37
- * @returns A Promise resolving to a configured FeeConfigBuilder instance.
38
- */
39
- static async forToken(tokenAmount, feeTokenId, collectorAccountId, network, logger, exemptAccounts = [], decimals) {
40
- const builder = new FeeConfigBuilder({
41
- network,
42
- logger,
43
- defaultCollectorAccountId: collectorAccountId
44
- });
45
- await builder.addTokenFee(
46
- tokenAmount,
47
- feeTokenId,
48
- collectorAccountId,
49
- decimals,
50
- exemptAccounts
51
- );
52
- return builder;
53
- }
54
- /**
55
- * Adds an HBAR fee configuration to the builder.
56
- * Allows chaining multiple fee additions.
57
- * @param hbarAmount The amount in HBAR (e.g., 0.5).
58
- * @param collectorAccountId Optional. The account ID to collect this fee. If omitted, defaults to the agent's own account ID during topic creation.
59
- * @param exemptAccountIds Optional. Accounts specifically exempt from *this* HBAR fee.
60
- * @returns This FeeConfigBuilder instance for chaining.
61
- */
62
- addHbarFee(hbarAmount, collectorAccountId, exemptAccountIds = []) {
63
- if (hbarAmount <= 0) {
64
- throw new Error("HBAR amount must be greater than zero");
65
- }
66
- this.customFees.push({
67
- feeAmount: {
68
- amount: hbarAmount * 1e8,
69
- decimals: 0
70
- },
71
- feeCollectorAccountId: collectorAccountId || this.defaultCollectorAccountId,
72
- feeTokenId: void 0,
73
- exemptAccounts: [...exemptAccountIds],
74
- type: CustomFeeType.FIXED_FEE
75
- });
76
- return this;
77
- }
78
- /**
79
- * Adds a token fee configuration to the builder.
80
- * Allows chaining multiple fee additions.
81
- * Fetches token decimals automatically if not provided.
82
- * @param tokenAmount The amount of the specified token.
83
- * @param feeTokenId The ID of the token to charge the fee in.
84
- * @param collectorAccountId Optional. The account ID to collect this fee. If omitted, defaults to the agent's own account ID during topic creation.
85
- * @param decimals Optional. The number of decimals for the token. If omitted, it will be fetched from the mirror node.
86
- * @param exemptAccountIds Optional. Accounts specifically exempt from *this* token fee.
87
- * @returns A Promise resolving to this FeeConfigBuilder instance for chaining.
88
- */
89
- async addTokenFee(tokenAmount, feeTokenId, collectorAccountId, decimals, exemptAccountIds = []) {
90
- if (tokenAmount <= 0) {
91
- throw new Error("Token amount must be greater than zero");
92
- }
93
- if (!feeTokenId) {
94
- throw new Error("Fee token ID is required when adding a token fee");
95
- }
96
- let finalDecimals = decimals;
97
- if (finalDecimals === void 0) {
98
- try {
99
- const tokenInfo = await this.mirrorNode.getTokenInfo(feeTokenId);
100
- if (tokenInfo?.decimals) {
101
- finalDecimals = parseInt(tokenInfo.decimals, 10);
102
- this.logger.info(
103
- `Fetched decimals for ${feeTokenId}: ${finalDecimals}`
104
- );
105
- } else {
106
- this.logger.warn(
107
- `Could not fetch decimals for ${feeTokenId}, defaulting to 0.`
108
- );
109
- finalDecimals = 0;
110
- }
111
- } catch (error) {
112
- this.logger.error(
113
- `Error fetching decimals for ${feeTokenId}, defaulting to 0: ${error}`
114
- );
115
- finalDecimals = 0;
116
- }
117
- }
118
- this.customFees.push({
119
- feeAmount: {
120
- amount: tokenAmount * 10 ** finalDecimals,
121
- decimals: finalDecimals
122
- },
123
- feeCollectorAccountId: collectorAccountId || this.defaultCollectorAccountId,
124
- feeTokenId,
125
- exemptAccounts: [...exemptAccountIds],
126
- type: CustomFeeType.FIXED_FEE
127
- });
128
- return this;
129
- }
130
- /**
131
- * Builds the final TopicFeeConfig object.
132
- * @returns The TopicFeeConfig containing all added custom fees and a consolidated list of unique exempt accounts.
133
- * @throws Error if no fees have been added.
134
- * @throws Error if more than 10 fees have been added.
135
- */
136
- build() {
137
- if (this.customFees.length === 0) {
138
- throw new Error(
139
- "At least one fee must be added using addHbarFee/addTokenFee or created using forHbar/forToken"
140
- );
141
- }
142
- if (this.customFees.length > 10) {
143
- throw new Error("Maximum of 10 custom fees per topic allowed");
144
- }
145
- const allExemptAccounts = /* @__PURE__ */ new Set();
146
- this.customFees.forEach((fee) => {
147
- fee.exemptAccounts.forEach((account) => allExemptAccounts.add(account));
148
- });
149
- const resolvedCustomFees = this.customFees.map((fee) => ({
150
- ...fee,
151
- feeCollectorAccountId: fee.feeCollectorAccountId || this.defaultCollectorAccountId
152
- }));
153
- return {
154
- customFees: resolvedCustomFees,
155
- exemptAccounts: Array.from(allExemptAccounts)
156
- };
157
- }
158
- }
1
+ import { z } from "zod";
2
+ import { adapterDeclarationSchema } from "./standards-sdk.es86.js";
3
+ var AIAgentType = /* @__PURE__ */ ((AIAgentType2) => {
4
+ AIAgentType2[AIAgentType2["MANUAL"] = 0] = "MANUAL";
5
+ AIAgentType2[AIAgentType2["AUTONOMOUS"] = 1] = "AUTONOMOUS";
6
+ return AIAgentType2;
7
+ })(AIAgentType || {});
8
+ var AIAgentCapability = /* @__PURE__ */ ((AIAgentCapability2) => {
9
+ AIAgentCapability2[AIAgentCapability2["TEXT_GENERATION"] = 0] = "TEXT_GENERATION";
10
+ AIAgentCapability2[AIAgentCapability2["IMAGE_GENERATION"] = 1] = "IMAGE_GENERATION";
11
+ AIAgentCapability2[AIAgentCapability2["AUDIO_GENERATION"] = 2] = "AUDIO_GENERATION";
12
+ AIAgentCapability2[AIAgentCapability2["VIDEO_GENERATION"] = 3] = "VIDEO_GENERATION";
13
+ AIAgentCapability2[AIAgentCapability2["CODE_GENERATION"] = 4] = "CODE_GENERATION";
14
+ AIAgentCapability2[AIAgentCapability2["LANGUAGE_TRANSLATION"] = 5] = "LANGUAGE_TRANSLATION";
15
+ AIAgentCapability2[AIAgentCapability2["SUMMARIZATION_EXTRACTION"] = 6] = "SUMMARIZATION_EXTRACTION";
16
+ AIAgentCapability2[AIAgentCapability2["KNOWLEDGE_RETRIEVAL"] = 7] = "KNOWLEDGE_RETRIEVAL";
17
+ AIAgentCapability2[AIAgentCapability2["DATA_INTEGRATION"] = 8] = "DATA_INTEGRATION";
18
+ AIAgentCapability2[AIAgentCapability2["MARKET_INTELLIGENCE"] = 9] = "MARKET_INTELLIGENCE";
19
+ AIAgentCapability2[AIAgentCapability2["TRANSACTION_ANALYTICS"] = 10] = "TRANSACTION_ANALYTICS";
20
+ AIAgentCapability2[AIAgentCapability2["SMART_CONTRACT_AUDIT"] = 11] = "SMART_CONTRACT_AUDIT";
21
+ AIAgentCapability2[AIAgentCapability2["GOVERNANCE_FACILITATION"] = 12] = "GOVERNANCE_FACILITATION";
22
+ AIAgentCapability2[AIAgentCapability2["SECURITY_MONITORING"] = 13] = "SECURITY_MONITORING";
23
+ AIAgentCapability2[AIAgentCapability2["COMPLIANCE_ANALYSIS"] = 14] = "COMPLIANCE_ANALYSIS";
24
+ AIAgentCapability2[AIAgentCapability2["FRAUD_DETECTION"] = 15] = "FRAUD_DETECTION";
25
+ AIAgentCapability2[AIAgentCapability2["MULTI_AGENT_COORDINATION"] = 16] = "MULTI_AGENT_COORDINATION";
26
+ AIAgentCapability2[AIAgentCapability2["API_INTEGRATION"] = 17] = "API_INTEGRATION";
27
+ AIAgentCapability2[AIAgentCapability2["WORKFLOW_AUTOMATION"] = 18] = "WORKFLOW_AUTOMATION";
28
+ return AIAgentCapability2;
29
+ })(AIAgentCapability || {});
30
+ const capabilitySchema = z.nativeEnum(AIAgentCapability);
31
+ const capabilityValueSchema = z.union([z.number(), z.string()]);
32
+ const jsonPrimitiveSchema = z.union([
33
+ z.string(),
34
+ z.number(),
35
+ z.boolean(),
36
+ z.null()
37
+ ]);
38
+ const jsonValueSchema = z.lazy(
39
+ () => z.union([
40
+ jsonPrimitiveSchema,
41
+ z.array(jsonValueSchema),
42
+ z.record(jsonValueSchema)
43
+ ])
44
+ );
45
+ const agentProfileSchema = z.object({
46
+ version: z.string(),
47
+ type: z.number(),
48
+ display_name: z.string(),
49
+ alias: z.string().optional(),
50
+ bio: z.string().optional(),
51
+ socials: z.array(jsonValueSchema).optional(),
52
+ aiAgent: z.object({
53
+ type: z.nativeEnum(AIAgentType),
54
+ creator: z.string().optional(),
55
+ model: z.string().optional(),
56
+ capabilities: z.array(z.union([capabilitySchema, z.number()])).optional()
57
+ }).optional(),
58
+ uaid: z.string().optional()
59
+ }).catchall(jsonValueSchema);
60
+ const cipherEnvelopeRecipientSchema = z.object({
61
+ uaid: z.string().optional(),
62
+ ledgerAccountId: z.string().optional(),
63
+ userId: z.string().optional(),
64
+ email: z.string().optional(),
65
+ encryptedShare: z.string()
66
+ });
67
+ const cipherEnvelopeSchema = z.object({
68
+ algorithm: z.string(),
69
+ ciphertext: z.string(),
70
+ nonce: z.string(),
71
+ associatedData: z.string().optional(),
72
+ keyLocator: z.object({
73
+ sessionId: z.string().optional(),
74
+ revision: z.number().optional()
75
+ }).optional(),
76
+ recipients: z.array(cipherEnvelopeRecipientSchema)
77
+ });
78
+ const peerSummarySchema = z.object({
79
+ keyType: z.string(),
80
+ publicKey: z.string(),
81
+ uaid: z.string().optional(),
82
+ ledgerAccountId: z.string().optional(),
83
+ userId: z.string().optional(),
84
+ email: z.string().optional()
85
+ });
86
+ const handshakeParticipantSchema = z.object({
87
+ role: z.enum(["requester", "responder"]),
88
+ uaid: z.string().optional(),
89
+ userId: z.string().optional(),
90
+ ledgerAccountId: z.string().optional(),
91
+ keyType: z.string(),
92
+ longTermPublicKey: z.string().optional(),
93
+ ephemeralPublicKey: z.string(),
94
+ signature: z.string().optional(),
95
+ metadata: z.record(jsonValueSchema).optional(),
96
+ submittedAt: z.string()
97
+ });
98
+ const encryptionHandshakeRecordSchema = z.object({
99
+ sessionId: z.string(),
100
+ algorithm: z.string(),
101
+ createdAt: z.string(),
102
+ expiresAt: z.number(),
103
+ status: z.enum(["pending", "complete"]),
104
+ requester: handshakeParticipantSchema.optional(),
105
+ responder: handshakeParticipantSchema.optional()
106
+ });
107
+ const sessionEncryptionSummarySchema = z.object({
108
+ enabled: z.boolean(),
109
+ algorithm: z.string(),
110
+ requireCiphertext: z.boolean(),
111
+ requester: peerSummarySchema.nullable().optional(),
112
+ responder: peerSummarySchema.nullable().optional(),
113
+ handshake: encryptionHandshakeRecordSchema.nullable().optional()
114
+ });
115
+ const chatHistoryEntrySchema = z.object({
116
+ messageId: z.string(),
117
+ role: z.enum([
118
+ "user",
119
+ "agent",
120
+ "system",
121
+ "tool",
122
+ "payment",
123
+ "delivery",
124
+ "error"
125
+ ]),
126
+ content: z.string(),
127
+ timestamp: z.string(),
128
+ cipherEnvelope: cipherEnvelopeSchema.optional(),
129
+ metadata: z.record(jsonValueSchema).optional()
130
+ });
131
+ const chatDeliveryStateSchema = z.enum([
132
+ "draft",
133
+ "queued",
134
+ "persisted",
135
+ "delivered",
136
+ "streaming",
137
+ "responded",
138
+ "failed",
139
+ "timeout",
140
+ "cancelled"
141
+ ]);
142
+ const chatAttachmentStateSchema = z.object({
143
+ supported: z.boolean(),
144
+ status: z.enum([
145
+ "unsupported",
146
+ "available",
147
+ "selected",
148
+ "uploading",
149
+ "scanning",
150
+ "ready",
151
+ "failed",
152
+ "rejected"
153
+ ]),
154
+ maxBytes: z.number().nullable().optional(),
155
+ acceptedMimeTypes: z.array(z.string()).optional(),
156
+ reason: z.string().optional()
157
+ });
158
+ const chatTimelineEntrySchema = z.object({
159
+ messageId: z.string(),
160
+ kind: z.enum([
161
+ "user",
162
+ "assistant",
163
+ "system",
164
+ "tool",
165
+ "payment",
166
+ "delivery",
167
+ "error"
168
+ ]),
169
+ content: z.string(),
170
+ timestamp: z.string(),
171
+ deliveryState: chatDeliveryStateSchema.optional(),
172
+ errorCode: z.string().optional(),
173
+ metadata: z.record(jsonValueSchema).optional(),
174
+ attachment: chatAttachmentStateSchema.optional()
175
+ });
176
+ const chatReadinessStatusSchema = z.enum([
177
+ "responsive",
178
+ "delivery_only",
179
+ "degraded",
180
+ "blocked",
181
+ "unknown"
182
+ ]);
183
+ const chatReplyModeSchema = z.enum([
184
+ "direct",
185
+ "stream",
186
+ "poll",
187
+ "delivery_only",
188
+ "none"
189
+ ]);
190
+ const chatRouteTypeSchema = z.enum([
191
+ "a2a",
192
+ "hcs-10",
193
+ "mcp",
194
+ "openrouter",
195
+ "acp",
196
+ "xmtp",
197
+ "moltbook",
198
+ "agentverse",
199
+ "nanda",
200
+ "http",
201
+ "erc-8004",
202
+ "x402",
203
+ "unknown"
204
+ ]);
205
+ const chatSessionStateSchema = z.enum([
206
+ "connecting",
207
+ "ready",
208
+ "blocked",
209
+ "ended",
210
+ "expired"
211
+ ]);
212
+ const chatErrorCodeSchema = z.enum([
213
+ "AUTH_REQUIRED",
214
+ "CREDITS_REQUIRED",
215
+ "PAYMENT_REQUIRED",
216
+ "AGENT_UNRESPONSIVE",
217
+ "ROUTE_UNAVAILABLE",
218
+ "PROTOCOL_UNSUPPORTED",
219
+ "BROKER_NOT_EXECUTABLE",
220
+ "NETWORK_TIMEOUT",
221
+ "STREAM_STALLED",
222
+ "HISTORY_UNAVAILABLE",
223
+ "ENCRYPTION_REQUIRED",
224
+ "RATE_LIMITED",
225
+ "VALIDATION_ERROR",
226
+ "UNKNOWN_ERROR"
227
+ ]);
228
+ const chatRouteSummarySchema = z.object({
229
+ type: chatRouteTypeSchema,
230
+ replyMode: chatReplyModeSchema,
231
+ transport: z.string(),
232
+ endpoint: z.string().optional()
233
+ });
234
+ const chatPaymentStateSchema = z.object({
235
+ required: z.boolean(),
236
+ provider: z.enum(["credits", "x402", "acp", "openrouter"]).optional(),
237
+ status: z.enum([
238
+ "not_required",
239
+ "preflight",
240
+ "required",
241
+ "approved",
242
+ "paid",
243
+ "failed"
244
+ ]),
245
+ estimatedCredits: z.number().nullable().optional(),
246
+ estimatedUsd: z.number().nullable().optional()
247
+ });
248
+ const chatReadinessResponseSchema = z.object({
249
+ status: chatReadinessStatusSchema,
250
+ routeType: chatRouteTypeSchema,
251
+ replyMode: chatReplyModeSchema,
252
+ transport: z.string(),
253
+ endpoint: z.string().optional(),
254
+ checkedAt: z.string(),
255
+ cachedUntil: z.string(),
256
+ latencyMs: z.number().nullable().optional(),
257
+ lastSuccessfulReplyAt: z.string().nullable().optional(),
258
+ lastDeliveryConfirmationAt: z.string().nullable().optional(),
259
+ lastFailureCode: chatErrorCodeSchema.nullable().optional(),
260
+ supportsStreaming: z.boolean(),
261
+ supportsHistory: z.boolean(),
262
+ supportsEncryption: z.boolean(),
263
+ supportsPayments: z.boolean(),
264
+ supportsAttachments: z.boolean(),
265
+ requiresAuth: z.boolean(),
266
+ operatorActionRequired: z.boolean(),
267
+ issue: z.object({
268
+ code: z.string(),
269
+ message: z.string(),
270
+ details: z.string().optional()
271
+ }).optional()
272
+ });
273
+ const chatSessionResumeResponseSchema = z.object({
274
+ sessionId: z.string(),
275
+ uaid: z.string().nullable().optional(),
276
+ agentUrl: z.string().nullable().optional(),
277
+ route: chatRouteSummarySchema,
278
+ transport: z.string(),
279
+ history: z.array(chatHistoryEntrySchema),
280
+ historyTtlSeconds: z.number().optional(),
281
+ visibility: z.enum(["private", "public"]).optional(),
282
+ state: chatSessionStateSchema
283
+ });
284
+ const metadataFacetSchema = z.record(
285
+ z.union([
286
+ z.array(jsonValueSchema),
287
+ z.record(jsonValueSchema),
288
+ jsonValueSchema
289
+ ])
290
+ ).optional();
291
+ const searchHitSchema = z.object({
292
+ id: z.string(),
293
+ uaid: z.string(),
294
+ registry: z.string(),
295
+ name: z.string(),
296
+ description: z.string().optional(),
297
+ capabilities: z.array(capabilityValueSchema),
298
+ endpoints: z.union([z.record(jsonValueSchema), z.array(z.string())]).optional(),
299
+ metadata: z.record(jsonValueSchema).optional(),
300
+ metadataFacet: metadataFacetSchema,
301
+ profile: agentProfileSchema.optional(),
302
+ protocols: z.array(z.string()).optional(),
303
+ adapter: z.string().optional(),
304
+ originalId: z.string().optional(),
305
+ communicationSupported: z.boolean().optional(),
306
+ routingSupported: z.boolean().optional(),
307
+ available: z.boolean().optional(),
308
+ availabilityStatus: z.string().optional(),
309
+ availabilityCheckedAt: z.string().optional(),
310
+ availabilitySource: z.string().optional(),
311
+ availabilityLatencyMs: z.number().optional(),
312
+ availabilityScore: z.number().optional(),
313
+ capabilityLabels: z.array(z.string()).optional(),
314
+ capabilityTokens: z.array(z.string()).optional(),
315
+ image: z.string().optional(),
316
+ createdAt: z.string().optional(),
317
+ updatedAt: z.string().optional(),
318
+ lastSeen: z.string().optional(),
319
+ lastIndexed: z.string().optional()
320
+ }).passthrough();
321
+ const searchResponseSchema = z.object({
322
+ hits: z.array(searchHitSchema),
323
+ total: z.number(),
324
+ page: z.number(),
325
+ limit: z.number()
326
+ });
327
+ const statsResponseSchema = z.object({
328
+ totalAgents: z.number(),
329
+ registries: z.record(z.number()),
330
+ capabilities: z.record(z.number()),
331
+ lastUpdate: z.string(),
332
+ status: z.string()
333
+ });
334
+ const registriesResponseSchema = z.object({
335
+ registries: z.array(z.string())
336
+ });
337
+ const popularResponseSchema = z.object({
338
+ searches: z.array(z.string())
339
+ });
340
+ const resolveResponseSchema = z.object({
341
+ agent: searchHitSchema
342
+ });
343
+ const delegationPlanCandidateSchema = z.object({
344
+ uaid: z.string(),
345
+ score: z.number(),
346
+ displayName: z.string().optional(),
347
+ summary: z.string().optional(),
348
+ protocols: z.array(z.string()).optional(),
349
+ surfaces: z.array(z.string()).optional(),
350
+ languages: z.array(z.string()).optional(),
351
+ artifacts: z.array(z.string()).optional(),
352
+ availability: z.boolean().optional(),
353
+ explanation: z.string().optional()
354
+ }).passthrough();
355
+ const delegationOpportunitySchema = z.object({
356
+ id: z.string(),
357
+ title: z.string(),
358
+ reason: z.string(),
359
+ role: z.string(),
360
+ type: z.enum(["ai-agents", "mcp-servers"]),
361
+ suggestedMode: z.enum(["best-match", "fallback", "parallel"]),
362
+ searchQueries: z.array(z.string()),
363
+ protocols: z.array(z.string()).optional(),
364
+ surfaces: z.array(z.string()).optional(),
365
+ languages: z.array(z.string()).optional(),
366
+ artifacts: z.array(z.string()).optional(),
367
+ candidates: z.array(delegationPlanCandidateSchema)
368
+ }).passthrough();
369
+ const delegationRecommendationSchema = z.object({
370
+ action: z.enum(["delegate-now", "review-shortlist", "handle-locally"]),
371
+ confidence: z.number(),
372
+ reason: z.string(),
373
+ opportunityId: z.string().optional(),
374
+ candidate: delegationPlanCandidateSchema.optional()
375
+ }).passthrough();
376
+ const delegationPlanResponseSchema = z.object({
377
+ task: z.string(),
378
+ context: z.string().optional(),
379
+ summary: z.string().optional(),
380
+ intents: z.array(z.string()),
381
+ protocols: z.array(z.string()),
382
+ surfaces: z.array(z.string()),
383
+ languages: z.array(z.string()).optional(),
384
+ artifacts: z.array(z.string()).optional(),
385
+ shouldDelegate: z.boolean(),
386
+ localFirstReason: z.string().optional(),
387
+ recommendation: delegationRecommendationSchema.optional(),
388
+ opportunities: z.array(delegationOpportunitySchema)
389
+ }).passthrough();
390
+ const agentFeedbackSummarySchema = z.object({
391
+ averageScore: z.number(),
392
+ totalFeedbacks: z.number(),
393
+ registry: z.string().optional(),
394
+ network: z.string().optional(),
395
+ updatedAt: z.string().optional()
396
+ });
397
+ const agentFeedbackEntrySchema = z.object({
398
+ registry: z.string(),
399
+ network: z.string().optional(),
400
+ agentId: z.number(),
401
+ client: z.string(),
402
+ score: z.number(),
403
+ tag1: z.string().nullable().optional(),
404
+ tag2: z.string().nullable().optional(),
405
+ revoked: z.boolean(),
406
+ feedbackIndex: z.number().nullable().optional(),
407
+ fileUri: z.string().nullable().optional(),
408
+ fileHash: z.string().nullable().optional(),
409
+ createdAt: z.string().nullable().optional()
410
+ });
411
+ const agentFeedbackResponseSchema = z.object({
412
+ uaid: z.string(),
413
+ summary: agentFeedbackSummarySchema,
414
+ entries: z.array(agentFeedbackEntrySchema)
415
+ });
416
+ const agentFeedbackEligibilityResponseSchema = z.object({
417
+ uaid: z.string(),
418
+ sessionId: z.string(),
419
+ eligible: z.boolean(),
420
+ messageCount: z.number(),
421
+ minimumMessages: z.number(),
422
+ reason: z.string().optional(),
423
+ onchain: z.object({
424
+ eligible: z.boolean(),
425
+ reason: z.string().optional(),
426
+ estimatedCredits: z.number().optional(),
427
+ usdEstimate: z.number().optional(),
428
+ nativeFeeEstimate: z.number().optional()
429
+ }).optional()
430
+ });
431
+ const agentFeedbackSubmissionResponseSchema = z.object({
432
+ uaid: z.string(),
433
+ registry: z.string(),
434
+ network: z.string().optional(),
435
+ agentId: z.number(),
436
+ score: z.number(),
437
+ tag1: z.string().nullable().optional(),
438
+ tag2: z.string().nullable().optional(),
439
+ fileUri: z.string().nullable().optional(),
440
+ fileHash: z.string().nullable().optional(),
441
+ feedbackIndex: z.number().nullable().optional(),
442
+ transactionHash: z.string().nullable().optional(),
443
+ signature: z.string().nullable().optional(),
444
+ submittedAt: z.string()
445
+ });
446
+ const agentFeedbackIndexResponseSchema = z.object({
447
+ page: z.number(),
448
+ limit: z.number(),
449
+ total: z.number(),
450
+ items: z.array(
451
+ z.object({
452
+ uaid: z.string(),
453
+ registry: z.string(),
454
+ network: z.string().optional(),
455
+ agentId: z.number().nullable().optional(),
456
+ summary: agentFeedbackSummarySchema.nullable(),
457
+ trustScore: z.number().nullable().optional()
458
+ })
459
+ )
460
+ });
461
+ const agentFeedbackEntriesIndexResponseSchema = z.object({
462
+ page: z.number(),
463
+ limit: z.number(),
464
+ total: z.number(),
465
+ items: z.array(
466
+ z.object({
467
+ uaid: z.string(),
468
+ entry: agentFeedbackEntrySchema
469
+ })
470
+ )
471
+ });
472
+ const createSessionResponseSchema = z.object({
473
+ sessionId: z.string(),
474
+ uaid: z.string().nullable().optional(),
475
+ agent: z.object({
476
+ name: z.string(),
477
+ description: z.string().optional(),
478
+ capabilities: z.record(jsonValueSchema).nullable().optional(),
479
+ skills: z.array(z.string()).optional()
480
+ }),
481
+ history: z.array(chatHistoryEntrySchema).optional().default([]),
482
+ historyTtlSeconds: z.number().nullable().optional(),
483
+ encryption: sessionEncryptionSummarySchema.nullable().optional(),
484
+ route: chatRouteSummarySchema.optional(),
485
+ transport: z.string().optional(),
486
+ senderUaid: z.string().nullable().optional(),
487
+ visibility: z.enum(["private", "public"]).optional(),
488
+ payment: chatPaymentStateSchema.optional(),
489
+ readiness: chatReadinessResponseSchema.optional(),
490
+ state: chatSessionStateSchema.optional(),
491
+ traceId: z.string().optional(),
492
+ expiresAt: z.string().nullable().optional()
493
+ });
494
+ const sendMessageResponseSchema = z.object({
495
+ sessionId: z.string(),
496
+ uaid: z.string().nullable().optional(),
497
+ message: z.string(),
498
+ timestamp: z.string(),
499
+ rawResponse: jsonValueSchema.optional(),
500
+ content: z.string().optional(),
501
+ ops: z.array(z.record(jsonValueSchema)).optional(),
502
+ history: z.array(chatHistoryEntrySchema).optional(),
503
+ historyTtlSeconds: z.number().nullable().optional(),
504
+ encrypted: z.boolean().optional(),
505
+ messageId: z.string().optional(),
506
+ assistantMessageId: z.string().nullable().optional(),
507
+ deliveryState: chatDeliveryStateSchema.optional(),
508
+ replyMode: chatReplyModeSchema.optional(),
509
+ deliveryConfirmation: z.boolean().optional(),
510
+ idempotent: z.boolean().optional(),
511
+ metadata: z.record(jsonValueSchema).optional(),
512
+ errorCode: chatErrorCodeSchema.optional()
513
+ });
514
+ const chatSessionEndResponseSchema = z.object({
515
+ message: z.string(),
516
+ sessionId: z.string(),
517
+ state: chatSessionStateSchema.optional()
518
+ });
519
+ const chatHistorySnapshotResponseSchema = z.object({
520
+ sessionId: z.string(),
521
+ history: z.array(chatHistoryEntrySchema),
522
+ historyTtlSeconds: z.number()
523
+ });
524
+ z.object({
525
+ preserveEntries: z.number().int().min(0).optional()
526
+ }).strict();
527
+ const chatHistoryCompactionResponseSchema = z.object({
528
+ sessionId: z.string(),
529
+ history: z.array(chatHistoryEntrySchema),
530
+ summaryEntry: chatHistoryEntrySchema,
531
+ preservedEntries: z.array(chatHistoryEntrySchema),
532
+ historyTtlSeconds: z.number(),
533
+ creditsDebited: z.number(),
534
+ metadata: z.record(jsonValueSchema).optional()
535
+ });
536
+ const sessionEncryptionStatusResponseSchema = z.object({
537
+ sessionId: z.string(),
538
+ encryption: sessionEncryptionSummarySchema.nullable()
539
+ });
540
+ const encryptionHandshakeResponseSchema = z.object({
541
+ sessionId: z.string(),
542
+ handshake: encryptionHandshakeRecordSchema
543
+ });
544
+ const registerEncryptionKeyResponseSchema = z.object({
545
+ id: z.string(),
546
+ keyType: z.string(),
547
+ publicKey: z.string(),
548
+ uaid: z.string().nullable(),
549
+ ledgerAccountId: z.string().nullable(),
550
+ ledgerNetwork: z.string().nullable().optional(),
551
+ userId: z.string().nullable().optional(),
552
+ email: z.string().nullable().optional(),
553
+ createdAt: z.string(),
554
+ updatedAt: z.string()
555
+ });
556
+ const ledgerChallengeResponseSchema = z.object({
557
+ challengeId: z.string(),
558
+ message: z.string(),
559
+ expiresAt: z.string()
560
+ });
561
+ const ledgerApiKeySummarySchema = z.object({
562
+ id: z.string(),
563
+ label: z.string().optional(),
564
+ prefix: z.string(),
565
+ lastFour: z.string(),
566
+ createdAt: z.string(),
567
+ lastUsedAt: z.string().nullable().optional(),
568
+ ownerType: z.literal("ledger"),
569
+ ledgerAccountId: z.string().optional(),
570
+ ledgerNetwork: z.string().optional(),
571
+ ledgerNetworkCanonical: z.string().optional()
572
+ });
573
+ const ledgerVerifyResponseSchema = z.object({
574
+ key: z.string(),
575
+ apiKey: ledgerApiKeySummarySchema,
576
+ accountId: z.string(),
577
+ network: z.string(),
578
+ networkCanonical: z.string().optional()
579
+ });
580
+ const protocolsResponseSchema = z.object({
581
+ protocols: z.array(z.string())
582
+ });
583
+ const detectProtocolResponseSchema = z.object({
584
+ protocol: z.string().nullable()
585
+ });
586
+ const registrySearchByNamespaceSchema = z.object({
587
+ hits: z.array(searchHitSchema),
588
+ total: z.number(),
589
+ page: z.number().optional(),
590
+ limit: z.number().optional()
591
+ });
592
+ const capabilityFilterValueSchema = z.union([z.string(), z.number()]);
593
+ const vectorSearchFilterSchema = z.object({
594
+ capabilities: z.array(capabilityFilterValueSchema).optional(),
595
+ type: z.enum(["ai-agents", "mcp-servers"]).optional(),
596
+ registry: z.string().optional(),
597
+ protocols: z.array(z.string()).optional(),
598
+ adapter: z.array(z.string()).optional()
599
+ }).strict();
600
+ z.object({
601
+ query: z.string(),
602
+ filter: vectorSearchFilterSchema.optional(),
603
+ limit: z.number().int().min(1).max(100).optional(),
604
+ offset: z.number().int().min(0).optional()
605
+ }).strict();
606
+ const vectorSearchHitSchema = z.object({
607
+ agent: searchHitSchema,
608
+ score: z.number().optional(),
609
+ highlights: z.record(z.array(z.string())).optional()
610
+ });
611
+ const vectorSearchResponseSchema = z.object({
612
+ hits: z.array(vectorSearchHitSchema),
613
+ total: z.number(),
614
+ took: z.number(),
615
+ totalAvailable: z.number().optional(),
616
+ visible: z.number().optional(),
617
+ limited: z.boolean().optional(),
618
+ credits_used: z.number().optional()
619
+ });
620
+ const vectorStatusSchema = z.object({
621
+ enabled: z.boolean(),
622
+ healthy: z.boolean(),
623
+ mode: z.enum(["disabled", "initializing", "healthy", "degraded", "error"]),
624
+ lastUpdated: z.string(),
625
+ details: z.record(z.any()).optional(),
626
+ lastError: z.object({
627
+ message: z.string(),
628
+ stack: z.string().optional(),
629
+ timestamp: z.string().optional()
630
+ }).optional()
631
+ });
632
+ const searchStatusResponseSchema = z.object({
633
+ storageMode: z.string(),
634
+ vectorStatus: vectorStatusSchema
635
+ });
636
+ const websocketStatsResponseSchema = z.object({
637
+ clients: z.number(),
638
+ stats: z.object({
639
+ totalClients: z.number().optional(),
640
+ clientsByRegistry: z.record(z.number()).optional(),
641
+ clientsByEventType: z.record(z.number()).optional()
642
+ }).passthrough()
643
+ });
644
+ const durationStatsSchema = z.object({
645
+ p50: z.number(),
646
+ p90: z.number(),
647
+ p95: z.number(),
648
+ p99: z.number()
649
+ });
650
+ const metricsSummaryResponseSchema = z.object({
651
+ http: z.object({
652
+ requestsTotal: z.number(),
653
+ activeConnections: z.number(),
654
+ requestDuration: durationStatsSchema
655
+ }),
656
+ search: z.object({
657
+ queriesTotal: z.number(),
658
+ queryDuration: durationStatsSchema
659
+ }),
660
+ indexing: z.object({ agentsTotal: z.number(), crawlErrors: z.number() }),
661
+ registration: z.object({
662
+ total: z.number(),
663
+ failures: z.number(),
664
+ duration: durationStatsSchema
665
+ }),
666
+ cache: z.object({
667
+ hits: z.number(),
668
+ misses: z.number(),
669
+ hitRate: z.number()
670
+ }),
671
+ websocket: z.object({ connections: z.number() })
672
+ });
673
+ const uaidValidationResponseSchema = z.object({
674
+ uaid: z.string(),
675
+ valid: z.boolean(),
676
+ formats: z.array(z.string())
677
+ });
678
+ const adapterConnectionSchema = z.object({
679
+ id: z.string(),
680
+ agentId: z.string(),
681
+ protocol: z.string(),
682
+ endpoint: z.string(),
683
+ status: z.enum(["connected", "disconnected", "error"]),
684
+ metadata: z.record(jsonPrimitiveSchema).optional(),
685
+ createdAt: z.string()
686
+ });
687
+ const uaidConnectionStatusSchema = z.object({
688
+ connected: z.boolean(),
689
+ connection: adapterConnectionSchema.optional(),
690
+ adapter: z.string().optional(),
691
+ agentId: z.string().optional()
692
+ });
693
+ const dashboardStatsResponseSchema = z.object({
694
+ operatorId: z.string().optional(),
695
+ adapters: z.array(
696
+ z.object({
697
+ name: z.string(),
698
+ version: z.string(),
699
+ status: z.string(),
700
+ agentCount: z.number(),
701
+ lastDiscovery: z.string(),
702
+ registryType: z.string(),
703
+ health: z.string()
704
+ })
705
+ ).optional(),
706
+ totalAgents: z.number().optional(),
707
+ elasticsearchDocumentCount: z.number().optional(),
708
+ agentsByAdapter: z.record(z.number()).optional(),
709
+ agentsByRegistry: z.record(z.number()).optional(),
710
+ systemInfo: z.object({
711
+ uptime: z.number().optional(),
712
+ version: z.string().optional(),
713
+ network: z.string().optional()
714
+ }).optional()
715
+ });
716
+ const registrationAgentSchema = z.object({
717
+ id: z.string(),
718
+ name: z.string(),
719
+ type: z.string(),
720
+ endpoint: z.string().optional(),
721
+ capabilities: z.array(capabilityValueSchema),
722
+ registry: z.string().optional(),
723
+ protocol: z.string().optional(),
724
+ profile: agentProfileSchema.optional(),
725
+ nativeId: z.string().optional(),
726
+ metadata: z.record(jsonValueSchema).optional()
727
+ });
728
+ const registrationProfileInfoSchema = z.object({
729
+ tId: z.string().nullable(),
730
+ sizeBytes: z.number().optional()
731
+ });
732
+ const profileRegistrySchema = z.object({
733
+ topicId: z.string().optional(),
734
+ sequenceNumber: z.number().optional(),
735
+ profileReference: z.string().optional(),
736
+ profileTopicId: z.string().optional()
737
+ }).passthrough().nullable().optional();
738
+ const additionalRegistryResultSchema = z.object({
739
+ registry: z.string(),
740
+ status: z.enum([
741
+ "created",
742
+ "duplicate",
743
+ "skipped",
744
+ "error",
745
+ "updated",
746
+ "pending"
747
+ ]),
748
+ agentId: z.string().nullable().optional(),
749
+ agentUri: z.string().nullable().optional(),
750
+ error: z.string().optional(),
751
+ metadata: z.record(jsonValueSchema).optional(),
752
+ registryKey: z.string().optional(),
753
+ networkId: z.string().optional(),
754
+ networkName: z.string().optional(),
755
+ chainId: z.number().optional(),
756
+ estimatedCredits: z.number().nullable().optional(),
757
+ gasEstimateCredits: z.number().nullable().optional(),
758
+ gasEstimateUsd: z.number().nullable().optional(),
759
+ gasPriceGwei: z.number().nullable().optional(),
760
+ gasLimit: z.number().nullable().optional(),
761
+ creditMode: z.enum(["fixed", "gas"]).nullable().optional(),
762
+ minCredits: z.number().nullable().optional(),
763
+ consumedCredits: z.number().nullable().optional(),
764
+ cost: z.object({
765
+ credits: z.number(),
766
+ usd: z.number(),
767
+ eth: z.number(),
768
+ gasUsedWei: z.string(),
769
+ effectiveGasPriceWei: z.string().nullable().optional(),
770
+ transactions: z.array(
771
+ z.object({
772
+ hash: z.string(),
773
+ gasUsedWei: z.string(),
774
+ effectiveGasPriceWei: z.string().nullable().optional(),
775
+ costWei: z.string()
776
+ })
777
+ ).optional()
778
+ }).optional()
779
+ });
780
+ const registrationCreditsSchema = z.object({
781
+ base: z.number(),
782
+ additional: z.number(),
783
+ total: z.number()
784
+ });
785
+ const hcs10RegistrySchema = z.object({
786
+ status: z.string(),
787
+ uaid: z.string().optional(),
788
+ transactionId: z.string().optional(),
789
+ consensusTimestamp: z.string().optional(),
790
+ registryTopicId: z.string().optional(),
791
+ topicSequenceNumber: z.number().optional(),
792
+ payloadHash: z.string().optional(),
793
+ profileReference: z.string().optional(),
794
+ tId: z.string().optional(),
795
+ profileSizeBytes: z.number().optional(),
796
+ error: z.string().optional()
797
+ }).passthrough();
798
+ const additionalRegistryNetworkSchema = z.object({
799
+ key: z.string(),
800
+ registryId: z.string().optional(),
801
+ networkId: z.string().optional(),
802
+ name: z.string().optional(),
803
+ chainId: z.number().optional(),
804
+ label: z.string().optional(),
805
+ estimatedCredits: z.number().nullable().optional(),
806
+ baseCredits: z.number().nullable().optional(),
807
+ gasPortionCredits: z.number().nullable().optional(),
808
+ gasPortionUsd: z.number().nullable().optional(),
809
+ gasEstimateCredits: z.number().nullable().optional(),
810
+ gasEstimateUsd: z.number().nullable().optional(),
811
+ gasPriceGwei: z.number().nullable().optional(),
812
+ gasLimit: z.number().nullable().optional(),
813
+ minCredits: z.number().nullable().optional(),
814
+ creditMode: z.string().nullable().optional()
815
+ }).passthrough();
816
+ const additionalRegistryDescriptorSchema = z.object({
817
+ id: z.string(),
818
+ label: z.string(),
819
+ networks: z.array(additionalRegistryNetworkSchema)
820
+ });
821
+ const additionalRegistryCatalogResponseSchema = z.object({
822
+ registries: z.array(additionalRegistryDescriptorSchema)
823
+ });
824
+ const registerAgentSuccessResponse = z.object({
825
+ success: z.literal(true),
826
+ status: z.enum(["created", "duplicate", "updated"]).optional(),
827
+ uaid: z.string(),
828
+ agentId: z.string(),
829
+ message: z.string().optional(),
830
+ registry: z.string().optional(),
831
+ attemptId: z.string().nullable().optional(),
832
+ agent: registrationAgentSchema,
833
+ openConvAI: z.object({
834
+ compatible: z.boolean(),
835
+ hcs11Profile: agentProfileSchema.optional(),
836
+ bridgeEndpoint: z.string().optional()
837
+ }).optional(),
838
+ profile: registrationProfileInfoSchema.optional(),
839
+ profileRegistry: profileRegistrySchema.nullable().optional(),
840
+ hcs10Registry: hcs10RegistrySchema.nullable().optional(),
841
+ credits: registrationCreditsSchema.optional(),
842
+ additionalRegistries: z.array(additionalRegistryResultSchema).optional(),
843
+ additionalRegistryCredits: z.array(additionalRegistryResultSchema).optional(),
844
+ additionalRegistryCostPerRegistry: z.number().optional(),
845
+ additionalRegistrySecrets: z.record(z.string(), z.record(jsonValueSchema)).optional()
846
+ });
847
+ const registerAgentPendingResponse = z.object({
848
+ success: z.literal(true),
849
+ status: z.literal("pending"),
850
+ message: z.string(),
851
+ uaid: z.string(),
852
+ agentId: z.string(),
853
+ registry: z.string().optional(),
854
+ attemptId: z.string().nullable(),
855
+ agent: registrationAgentSchema,
856
+ openConvAI: z.object({
857
+ compatible: z.boolean(),
858
+ hcs11Profile: agentProfileSchema.optional(),
859
+ bridgeEndpoint: z.string().optional()
860
+ }).optional(),
861
+ profile: registrationProfileInfoSchema.optional(),
862
+ profileRegistry: profileRegistrySchema.nullable().optional(),
863
+ hcs10Registry: hcs10RegistrySchema.nullable().optional(),
864
+ credits: registrationCreditsSchema,
865
+ additionalRegistries: z.array(additionalRegistryResultSchema),
866
+ additionalRegistryCredits: z.array(additionalRegistryResultSchema).optional(),
867
+ additionalRegistryCostPerRegistry: z.number().optional(),
868
+ additionalRegistrySecrets: z.record(z.string(), z.record(jsonValueSchema)).optional()
869
+ });
870
+ const registerAgentPartialResponse = z.object({
871
+ success: z.literal(false),
872
+ status: z.literal("partial"),
873
+ message: z.string(),
874
+ uaid: z.string(),
875
+ agentId: z.string(),
876
+ registry: z.string().optional(),
877
+ attemptId: z.string().nullable().optional(),
878
+ agent: registrationAgentSchema,
879
+ openConvAI: z.object({
880
+ compatible: z.boolean(),
881
+ hcs11Profile: agentProfileSchema.optional(),
882
+ bridgeEndpoint: z.string().optional()
883
+ }).optional(),
884
+ profile: registrationProfileInfoSchema.optional(),
885
+ profileRegistry: profileRegistrySchema.nullable().optional(),
886
+ hcs10Registry: hcs10RegistrySchema.nullable().optional(),
887
+ credits: registrationCreditsSchema.optional(),
888
+ additionalRegistries: z.array(additionalRegistryResultSchema).optional(),
889
+ additionalRegistryCredits: z.array(additionalRegistryResultSchema).optional(),
890
+ additionalRegistryCostPerRegistry: z.number().optional(),
891
+ additionalRegistrySecrets: z.record(z.string(), z.record(jsonValueSchema)).optional(),
892
+ errors: z.array(
893
+ z.object({
894
+ registry: z.string(),
895
+ registryKey: z.string().nullable().optional(),
896
+ error: z.string()
897
+ })
898
+ ).min(1)
899
+ });
900
+ const registerAgentResponseSchema = z.union([
901
+ registerAgentSuccessResponse,
902
+ registerAgentPendingResponse,
903
+ registerAgentPartialResponse
904
+ ]);
905
+ const registrationProgressAdditionalEntry = z.object({
906
+ registryId: z.string(),
907
+ registryKey: z.string(),
908
+ networkId: z.string().optional(),
909
+ networkName: z.string().optional(),
910
+ chainId: z.number().optional(),
911
+ label: z.string().optional(),
912
+ status: z.enum(["pending", "in_progress", "completed", "failed"]),
913
+ error: z.string().optional(),
914
+ credits: z.number().nullable().optional(),
915
+ agentId: z.string().nullable().optional(),
916
+ agentUri: z.string().nullable().optional(),
917
+ metadata: z.record(jsonValueSchema).optional(),
918
+ lastUpdated: z.string()
919
+ });
920
+ const registrationProgressRecord = z.object({
921
+ attemptId: z.string(),
922
+ mode: z.enum(["register", "update"]),
923
+ status: z.enum(["pending", "partial", "completed", "failed"]),
924
+ uaid: z.string().optional(),
925
+ agentId: z.string().optional(),
926
+ registryNamespace: z.string(),
927
+ accountId: z.string().optional(),
928
+ startedAt: z.string(),
929
+ completedAt: z.string().optional(),
930
+ primary: z.object({
931
+ status: z.enum(["pending", "completed", "failed"]),
932
+ finishedAt: z.string().optional(),
933
+ error: z.string().optional()
934
+ }),
935
+ additionalRegistries: z.record(
936
+ z.string(),
937
+ registrationProgressAdditionalEntry
938
+ ),
939
+ errors: z.array(z.string()).optional()
940
+ });
941
+ const registrationProgressResponseSchema = z.object({
942
+ progress: registrationProgressRecord
943
+ });
944
+ const registrationQuoteResponseSchema = z.object({
945
+ accountId: z.string().nullable().optional(),
946
+ registry: z.string().optional(),
947
+ protocol: z.string().optional(),
948
+ requiredCredits: z.number(),
949
+ availableCredits: z.number().nullable().optional(),
950
+ shortfallCredits: z.number().nullable().optional(),
951
+ creditsPerHbar: z.number().nullable().optional(),
952
+ estimatedHbar: z.number().nullable().optional()
953
+ });
954
+ const creditPurchaseResponseSchema = z.object({
955
+ success: z.boolean().optional(),
956
+ purchaser: z.string(),
957
+ credits: z.number(),
958
+ hbarAmount: z.number(),
959
+ transactionId: z.string(),
960
+ consensusTimestamp: z.string().nullable().optional()
961
+ });
962
+ const creditProviderSummarySchema = z.object({
963
+ name: z.string(),
964
+ publishableKey: z.string().optional(),
965
+ currency: z.string().optional(),
966
+ centsPerHbar: z.number().nullable().optional()
967
+ });
968
+ const creditProvidersResponseSchema = z.object({
969
+ providers: z.array(creditProviderSummarySchema)
970
+ });
971
+ const creditBalanceResponseSchema = z.object({
972
+ accountId: z.string(),
973
+ balance: z.number(),
974
+ balanceRecord: jsonValueSchema.optional(),
975
+ timestamp: z.string().optional()
976
+ });
977
+ const guardPlanIdSchema = z.enum(["free", "pro", "team", "enterprise"]);
978
+ const guardBucketBalanceSchema = z.object({
979
+ bucketId: z.enum([
980
+ "registry_credits",
981
+ "chat_credits",
982
+ "guard_credits",
983
+ "org_policy_credits"
984
+ ]),
985
+ label: z.string(),
986
+ availableCredits: z.number(),
987
+ includedMonthlyCredits: z.number().nullable().optional()
988
+ });
989
+ const guardPrincipalSchema = z.object({
990
+ signedIn: z.boolean(),
991
+ principalType: z.enum(["user", "service"]).default("user"),
992
+ userId: z.string().optional(),
993
+ email: z.string().optional(),
994
+ accountId: z.string().optional(),
995
+ stripeCustomerId: z.string().optional(),
996
+ serviceId: z.string().optional(),
997
+ workspaceId: z.string().optional(),
998
+ serviceLabel: z.string().optional(),
999
+ roles: z.array(z.string())
1000
+ });
1001
+ const guardEntitlementsSchema = z.object({
1002
+ planId: guardPlanIdSchema,
1003
+ includedMonthlyCredits: z.number(),
1004
+ deviceLimit: z.number(),
1005
+ retentionDays: z.number(),
1006
+ syncEnabled: z.boolean(),
1007
+ premiumFeedsEnabled: z.boolean(),
1008
+ teamPolicyEnabled: z.boolean()
1009
+ });
1010
+ const guardSessionResponseSchema = z.object({
1011
+ principal: guardPrincipalSchema,
1012
+ entitlements: guardEntitlementsSchema,
1013
+ balance: z.object({
1014
+ accountId: z.string(),
1015
+ availableCredits: z.number()
1016
+ }).nullable(),
1017
+ bucketingMode: z.enum(["shared-ledger", "product-bucketed"]),
1018
+ buckets: z.array(guardBucketBalanceSchema)
1019
+ });
1020
+ const guardBalanceResponseSchema = z.object({
1021
+ generatedAt: z.string(),
1022
+ bucketingMode: z.enum(["shared-ledger", "product-bucketed"]),
1023
+ buckets: z.array(guardBucketBalanceSchema)
1024
+ });
1025
+ const guardFeedItemSchema = z.object({
1026
+ id: z.string(),
1027
+ artifactType: z.enum(["skill", "plugin"]),
1028
+ slug: z.string(),
1029
+ name: z.string(),
1030
+ href: z.string(),
1031
+ ecosystem: z.string().optional(),
1032
+ safetyScore: z.number().nullable().optional(),
1033
+ trustScore: z.number().nullable().optional(),
1034
+ verified: z.boolean(),
1035
+ recommendation: z.enum(["monitor", "review", "block"]),
1036
+ updatedAt: z.string()
1037
+ });
1038
+ const guardFeedSummarySchema = z.object({
1039
+ total: z.number(),
1040
+ monitorCount: z.number(),
1041
+ reviewCount: z.number(),
1042
+ blockCount: z.number()
1043
+ });
1044
+ const guardFeedResponseSchema = z.object({
1045
+ generatedAt: z.string(),
1046
+ items: z.array(guardFeedItemSchema),
1047
+ summary: guardFeedSummarySchema
1048
+ });
1049
+ const guardIntegrationSchema = z.object({
1050
+ id: z.enum(["openclaw", "hermes"]),
1051
+ name: z.string(),
1052
+ status: z.enum(["available", "planned"]),
1053
+ href: z.string().nullable(),
1054
+ summary: z.string()
1055
+ });
1056
+ const guardActionItemSchema = z.object({
1057
+ title: z.string(),
1058
+ description: z.string(),
1059
+ href: z.string()
1060
+ });
1061
+ const guardOverviewResponseSchema = z.object({
1062
+ generatedAt: z.string(),
1063
+ principal: guardPrincipalSchema,
1064
+ entitlements: guardEntitlementsSchema,
1065
+ balance: z.object({
1066
+ accountId: z.string(),
1067
+ availableCredits: z.number()
1068
+ }).nullable(),
1069
+ trustFeed: guardFeedResponseSchema,
1070
+ integrations: z.array(guardIntegrationSchema),
1071
+ actionItems: z.array(guardActionItemSchema)
1072
+ });
1073
+ const guardPolicySchema = z.object({
1074
+ mode: z.enum(["observe", "prompt", "enforce"]),
1075
+ defaultAction: z.enum(["allow", "warn", "block"]),
1076
+ unknownPublisherAction: z.enum(["review", "block", "allow"]),
1077
+ changedHashAction: z.enum(["allow", "warn", "require-reapproval", "block"]),
1078
+ newNetworkDomainAction: z.enum(["allow", "warn", "block"]),
1079
+ subprocessAction: z.enum(["allow", "warn", "block"]),
1080
+ telemetryEnabled: z.boolean(),
1081
+ syncEnabled: z.boolean(),
1082
+ updatedAt: z.string()
1083
+ });
1084
+ const guardTrustMatchSchema = z.object({
1085
+ artifactId: z.string(),
1086
+ artifactName: z.string(),
1087
+ artifactType: z.enum(["skill", "plugin"]),
1088
+ artifactSlug: z.string(),
1089
+ recommendation: z.enum(["monitor", "review", "block"]),
1090
+ verified: z.boolean(),
1091
+ safetyScore: z.number().nullable().optional(),
1092
+ trustScore: z.number().nullable().optional(),
1093
+ href: z.string().optional(),
1094
+ ecosystem: z.string().optional()
1095
+ });
1096
+ const guardTrustByHashResponseSchema = z.object({
1097
+ generatedAt: z.string(),
1098
+ query: z.object({
1099
+ sha256: z.string()
1100
+ }),
1101
+ match: guardTrustMatchSchema.nullable(),
1102
+ evidence: z.array(z.string())
1103
+ });
1104
+ const guardTrustResolveResponseSchema = z.object({
1105
+ generatedAt: z.string(),
1106
+ query: z.object({
1107
+ ecosystem: z.string().optional(),
1108
+ name: z.string().optional(),
1109
+ version: z.string().optional()
1110
+ }),
1111
+ items: z.array(guardTrustMatchSchema)
1112
+ });
1113
+ const guardRevocationSchema = z.object({
1114
+ id: z.string(),
1115
+ artifactId: z.string(),
1116
+ artifactName: z.string(),
1117
+ reason: z.string(),
1118
+ severity: z.enum(["low", "medium", "high"]),
1119
+ publishedAt: z.string(),
1120
+ confidence: z.number().optional(),
1121
+ remediation: z.string().nullable().optional(),
1122
+ scope: z.enum(["artifact", "publisher", "domain", "workspace", "ecosystem"]).optional(),
1123
+ source: z.string().optional(),
1124
+ firstSeenAt: z.string().optional(),
1125
+ lastUpdatedAt: z.string().optional()
1126
+ });
1127
+ const guardRevocationResponseSchema = z.object({
1128
+ generatedAt: z.string(),
1129
+ items: z.array(guardRevocationSchema)
1130
+ });
1131
+ const guardReceiptSchema = z.object({
1132
+ receiptId: z.string(),
1133
+ capturedAt: z.string(),
1134
+ harness: z.string(),
1135
+ deviceId: z.string(),
1136
+ deviceName: z.string(),
1137
+ artifactId: z.string(),
1138
+ artifactName: z.string(),
1139
+ artifactType: z.enum(["skill", "plugin"]),
1140
+ artifactSlug: z.string(),
1141
+ artifactHash: z.string(),
1142
+ policyDecision: z.enum([
1143
+ "allow",
1144
+ "warn",
1145
+ "block",
1146
+ "review",
1147
+ "require-reapproval",
1148
+ "sandbox-required"
1149
+ ]),
1150
+ recommendation: z.enum(["monitor", "review", "block"]),
1151
+ changedSinceLastApproval: z.boolean(),
1152
+ publisher: z.string().optional(),
1153
+ capabilities: z.array(z.string()),
1154
+ summary: z.string()
1155
+ });
1156
+ const guardHistoryArtifactSchema = z.object({
1157
+ artifactId: z.string(),
1158
+ artifactName: z.string(),
1159
+ artifactType: z.enum(["skill", "plugin"]),
1160
+ artifactSlug: z.string(),
1161
+ publisher: z.string().optional(),
1162
+ harnesses: z.array(z.string()),
1163
+ eventCount: z.number(),
1164
+ firstSeenAt: z.string(),
1165
+ lastSeenAt: z.string(),
1166
+ latestDecision: z.enum([
1167
+ "allow",
1168
+ "warn",
1169
+ "block",
1170
+ "review",
1171
+ "require-reapproval",
1172
+ "sandbox-required"
1173
+ ]),
1174
+ latestRecommendation: z.enum(["monitor", "review", "block"])
1175
+ });
1176
+ const guardReceiptHistoryResponseSchema = z.object({
1177
+ generatedAt: z.string(),
1178
+ artifacts: z.array(guardHistoryArtifactSchema)
1179
+ });
1180
+ const guardInventoryArtifactSchema = z.object({
1181
+ artifactId: z.string(),
1182
+ artifactName: z.string(),
1183
+ artifactType: z.enum(["skill", "plugin"]),
1184
+ artifactSlug: z.string(),
1185
+ publisher: z.string().optional(),
1186
+ harnesses: z.array(z.string()),
1187
+ devices: z.array(z.string()),
1188
+ eventCount: z.number(),
1189
+ firstSeenAt: z.string(),
1190
+ lastSeenAt: z.string(),
1191
+ latestDecision: z.enum([
1192
+ "allow",
1193
+ "warn",
1194
+ "block",
1195
+ "review",
1196
+ "require-reapproval",
1197
+ "sandbox-required"
1198
+ ]),
1199
+ latestRecommendation: z.enum(["monitor", "review", "block"]),
1200
+ latestHash: z.string(),
1201
+ latestSummary: z.string()
1202
+ });
1203
+ const guardInventoryDiffEntrySchema = z.object({
1204
+ artifactId: z.string(),
1205
+ artifactName: z.string(),
1206
+ artifactType: z.enum(["skill", "plugin"]),
1207
+ changeType: z.enum(["new", "changed", "removed"]),
1208
+ previousHash: z.string().nullable(),
1209
+ currentHash: z.string().nullable()
1210
+ });
1211
+ const guardInventoryDiffResponseSchema = z.object({
1212
+ generatedAt: z.string(),
1213
+ items: z.array(guardInventoryDiffEntrySchema)
1214
+ });
1215
+ const guardReceiptSyncResponseSchema = z.object({
1216
+ syncedAt: z.string(),
1217
+ receiptsStored: z.number(),
1218
+ inventoryStored: z.number().optional(),
1219
+ inventoryDiff: guardInventoryDiffResponseSchema.optional(),
1220
+ advisories: z.array(guardRevocationSchema).optional(),
1221
+ policy: guardPolicySchema.optional(),
1222
+ alertPreferences: z.lazy(() => guardAlertPreferencesSchema).optional(),
1223
+ exceptions: z.array(z.lazy(() => guardExceptionItemSchema)).optional(),
1224
+ teamPolicyPack: z.lazy(() => guardTeamPolicyPackSchema).optional()
1225
+ });
1226
+ const guardInventoryResponseSchema = z.object({
1227
+ generatedAt: z.string(),
1228
+ items: z.array(guardInventoryArtifactSchema)
1229
+ });
1230
+ const guardAbomSummarySchema = z.object({
1231
+ totalArtifacts: z.number(),
1232
+ totalDevices: z.number(),
1233
+ totalHarnesses: z.number(),
1234
+ blockedArtifacts: z.number(),
1235
+ reviewArtifacts: z.number()
1236
+ });
1237
+ const guardAbomResponseSchema = z.object({
1238
+ generatedAt: z.string(),
1239
+ summary: guardAbomSummarySchema,
1240
+ items: z.array(guardInventoryArtifactSchema)
1241
+ });
1242
+ const guardTimelineEventSchema = z.object({
1243
+ receiptId: z.string(),
1244
+ capturedAt: z.string(),
1245
+ harness: z.string(),
1246
+ deviceId: z.string(),
1247
+ deviceName: z.string(),
1248
+ artifactHash: z.string(),
1249
+ policyDecision: z.enum([
1250
+ "allow",
1251
+ "warn",
1252
+ "block",
1253
+ "review",
1254
+ "require-reapproval",
1255
+ "sandbox-required"
1256
+ ]),
1257
+ recommendation: z.enum(["monitor", "review", "block"]),
1258
+ changedSinceLastApproval: z.boolean(),
1259
+ summary: z.string(),
1260
+ capabilities: z.array(z.string()),
1261
+ publisher: z.string().optional()
1262
+ });
1263
+ const guardArtifactTimelineResponseSchema = z.object({
1264
+ generatedAt: z.string(),
1265
+ artifactId: z.string(),
1266
+ artifactName: z.string(),
1267
+ artifactType: z.enum(["skill", "plugin"]),
1268
+ artifactSlug: z.string(),
1269
+ events: z.array(guardTimelineEventSchema)
1270
+ });
1271
+ const guardReceiptExportSummarySchema = z.object({
1272
+ totalReceipts: z.number(),
1273
+ blockedCount: z.number(),
1274
+ reviewCount: z.number(),
1275
+ approvedCount: z.number()
1276
+ });
1277
+ const guardExportSignatureSchema = z.object({
1278
+ algorithm: z.enum(["hmac-sha256", "none"]),
1279
+ digest: z.string()
1280
+ });
1281
+ const guardReceiptExportResponseSchema = z.object({
1282
+ generatedAt: z.string(),
1283
+ summary: guardReceiptExportSummarySchema,
1284
+ provenanceSummary: z.array(z.string()),
1285
+ items: z.array(guardReceiptSchema),
1286
+ signature: guardExportSignatureSchema
1287
+ });
1288
+ const guardAlertPreferencesSchema = z.object({
1289
+ emailEnabled: z.boolean(),
1290
+ digestMode: z.enum(["immediate", "daily", "weekly"]),
1291
+ watchlistEnabled: z.boolean(),
1292
+ advisoriesEnabled: z.boolean(),
1293
+ repeatedWarningsEnabled: z.boolean(),
1294
+ teamAlertsEnabled: z.boolean(),
1295
+ updatedAt: z.string()
1296
+ });
1297
+ const guardWatchlistItemSchema = z.object({
1298
+ artifactId: z.string(),
1299
+ artifactName: z.string(),
1300
+ artifactType: z.enum(["skill", "plugin"]),
1301
+ artifactSlug: z.string(),
1302
+ reason: z.string(),
1303
+ source: z.enum(["manual", "synced", "team-policy"]),
1304
+ createdAt: z.string()
1305
+ });
1306
+ const guardWatchlistResponseSchema = z.object({
1307
+ generatedAt: z.string(),
1308
+ items: z.array(guardWatchlistItemSchema)
1309
+ });
1310
+ const guardWatchlistLookupMatchSchema = z.object({
1311
+ artifactId: z.string().nullable(),
1312
+ publisher: z.string().nullable(),
1313
+ domain: z.string().nullable(),
1314
+ source: z.enum(["watchlist", "team-policy"]),
1315
+ reason: z.string()
1316
+ });
1317
+ const guardWatchlistLookupResponseSchema = z.object({
1318
+ generatedAt: z.string(),
1319
+ matched: z.boolean(),
1320
+ scope: z.enum(["artifact", "publisher", "domain", "none"]),
1321
+ item: guardWatchlistLookupMatchSchema.nullable()
1322
+ });
1323
+ const guardPainSignalSchema = z.object({
1324
+ signalId: z.string(),
1325
+ signalName: z.string(),
1326
+ artifactId: z.string(),
1327
+ artifactName: z.string(),
1328
+ artifactType: z.enum(["skill", "plugin"]),
1329
+ harness: z.string(),
1330
+ latestSummary: z.string(),
1331
+ firstSeenAt: z.string(),
1332
+ lastSeenAt: z.string(),
1333
+ count: z.number(),
1334
+ source: z.literal("scanner"),
1335
+ publisher: z.string().optional()
1336
+ });
1337
+ const guardPainSignalListResponseSchema = z.object({
1338
+ generatedAt: z.string(),
1339
+ items: z.array(guardPainSignalSchema)
1340
+ });
1341
+ const guardPainSignalAggregateSchema = z.object({
1342
+ artifactId: z.string(),
1343
+ artifactName: z.string(),
1344
+ artifactType: z.enum(["skill", "plugin"]),
1345
+ signalName: z.string(),
1346
+ latestSummary: z.string(),
1347
+ firstSeenAt: z.string(),
1348
+ lastSeenAt: z.string(),
1349
+ totalCount: z.number(),
1350
+ consumerCount: z.number(),
1351
+ harnesses: z.array(z.string()),
1352
+ publishers: z.array(z.string())
1353
+ });
1354
+ const guardPainSignalAggregateResponseSchema = z.object({
1355
+ generatedAt: z.string(),
1356
+ summary: z.object({
1357
+ totalSignals: z.number(),
1358
+ uniqueArtifacts: z.number(),
1359
+ uniqueConsumers: z.number()
1360
+ }),
1361
+ items: z.array(guardPainSignalAggregateSchema)
1362
+ });
1363
+ const guardExceptionItemSchema = z.object({
1364
+ exceptionId: z.string(),
1365
+ scope: z.enum(["artifact", "publisher", "harness", "global"]),
1366
+ harness: z.string().nullable(),
1367
+ artifactId: z.string().nullable(),
1368
+ publisher: z.string().nullable(),
1369
+ reason: z.string(),
1370
+ owner: z.string(),
1371
+ source: z.enum(["manual", "team-policy"]),
1372
+ expiresAt: z.string(),
1373
+ createdAt: z.string(),
1374
+ updatedAt: z.string()
1375
+ });
1376
+ const guardExceptionListResponseSchema = z.object({
1377
+ generatedAt: z.string(),
1378
+ items: z.array(guardExceptionItemSchema)
1379
+ });
1380
+ const guardPreflightEvidenceSchema = z.object({
1381
+ category: z.enum([
1382
+ "policy",
1383
+ "trust",
1384
+ "watchlist",
1385
+ "team-policy",
1386
+ "exception"
1387
+ ]),
1388
+ source: z.string(),
1389
+ detail: z.string()
1390
+ });
1391
+ z.object({
1392
+ harness: z.string(),
1393
+ artifactName: z.string(),
1394
+ artifactType: z.enum(["skill", "plugin"]),
1395
+ artifactId: z.string().optional(),
1396
+ artifactSlug: z.string().optional(),
1397
+ artifactHash: z.string().optional(),
1398
+ publisher: z.string().optional(),
1399
+ domain: z.string().optional(),
1400
+ launchSummary: z.string().optional(),
1401
+ capabilities: z.array(z.string()).optional(),
1402
+ workspacePath: z.string().optional()
1403
+ });
1404
+ const guardPreflightVerdictResponseSchema = z.object({
1405
+ generatedAt: z.string(),
1406
+ principal: guardPrincipalSchema,
1407
+ decision: z.enum(["allow", "review", "block"]),
1408
+ recommendation: z.enum(["monitor", "review", "block"]),
1409
+ rationale: z.string(),
1410
+ category: z.enum(["exception", "team-policy", "watchlist", "trust", "policy"]).optional(),
1411
+ confidence: z.number().optional(),
1412
+ freshnessTimestamp: z.string().optional(),
1413
+ evidenceSources: z.array(z.string()).optional(),
1414
+ scope: z.enum(["artifact", "publisher", "domain", "policy"]),
1415
+ matchedEvidence: z.array(guardPreflightEvidenceSchema),
1416
+ matchedException: guardExceptionItemSchema.nullable(),
1417
+ trustMatch: guardTrustMatchSchema.nullable()
1418
+ });
1419
+ const guardTeamPolicyAuditItemSchema = z.object({
1420
+ changedAt: z.string(),
1421
+ actor: z.string(),
1422
+ change: z.enum(["created", "updated"]),
1423
+ summary: z.string()
1424
+ });
1425
+ const guardTeamPolicyPackSchema = z.object({
1426
+ name: z.string(),
1427
+ sharedHarnessDefaults: z.record(
1428
+ z.string(),
1429
+ z.enum(["observe", "prompt", "enforce"])
1430
+ ),
1431
+ allowedPublishers: z.array(z.string()),
1432
+ blockedPublishers: z.array(z.string()).optional(),
1433
+ blockedDomains: z.array(z.string()).optional(),
1434
+ blockedArtifacts: z.array(z.string()),
1435
+ alertChannel: z.enum(["email", "slack", "teams", "webhook"]),
1436
+ updatedAt: z.string(),
1437
+ auditTrail: z.array(guardTeamPolicyAuditItemSchema)
1438
+ });
1439
+ const guardDeviceSchema = z.object({
1440
+ deviceId: z.string(),
1441
+ deviceName: z.string(),
1442
+ harnesses: z.array(z.string()),
1443
+ receiptCount: z.number(),
1444
+ lastSeenAt: z.string()
1445
+ });
1446
+ const guardDeviceListResponseSchema = z.object({
1447
+ generatedAt: z.string(),
1448
+ items: z.array(guardDeviceSchema)
1449
+ });
1450
+ const hbarPurchaseIntentResponseSchema = z.object({
1451
+ transaction: z.string(),
1452
+ transactionId: z.string(),
1453
+ network: z.enum(["mainnet", "testnet"]),
1454
+ accountId: z.string(),
1455
+ treasuryAccountId: z.string(),
1456
+ hbarAmount: z.number(),
1457
+ credits: z.number(),
1458
+ tinybarAmount: z.number(),
1459
+ memo: z.string(),
1460
+ centsPerHbar: z.number(),
1461
+ validStart: z.string(),
1462
+ validDurationSeconds: z.number(),
1463
+ requiresManualSubmit: z.literal(true),
1464
+ purchaseId: z.string()
1465
+ });
1466
+ const x402SettlementSchema = z.object({
1467
+ success: z.boolean().optional(),
1468
+ transaction: z.string().optional(),
1469
+ network: z.string().optional(),
1470
+ payer: z.string().optional(),
1471
+ errorReason: z.string().optional()
1472
+ }).strict();
1473
+ const x402CreditPurchaseResponseSchema = z.object({
1474
+ success: z.boolean(),
1475
+ accountId: z.string(),
1476
+ creditedCredits: z.number(),
1477
+ usdAmount: z.number(),
1478
+ balance: z.number(),
1479
+ payment: z.object({
1480
+ payer: z.string().optional(),
1481
+ requirement: z.record(jsonValueSchema).optional(),
1482
+ settlement: x402SettlementSchema.optional()
1483
+ }).optional()
1484
+ });
1485
+ const x402MinimumsResponseSchema = z.object({
1486
+ minimums: z.record(
1487
+ z.object({
1488
+ network: z.string().optional(),
1489
+ gasLimit: z.number().optional(),
1490
+ gasPriceWei: z.string().optional(),
1491
+ gasUsd: z.number().optional(),
1492
+ minUsd: z.number().optional(),
1493
+ ethUsd: z.number().optional(),
1494
+ fetchedAt: z.string().optional(),
1495
+ source: z.string().optional()
1496
+ })
1497
+ ).optional(),
1498
+ creditUnitUsd: z.number().optional()
1499
+ });
1500
+ const adaptersResponseSchema = z.object({
1501
+ adapters: z.array(z.string())
1502
+ });
1503
+ const adapterRegistryCategorySchema = z.object({
1504
+ id: z.number().int(),
1505
+ network: z.string(),
1506
+ type: z.string(),
1507
+ slug: z.string(),
1508
+ name: z.string(),
1509
+ description: z.string().nullable().optional(),
1510
+ topicId: z.string(),
1511
+ versionTopicId: z.string(),
1512
+ registryTransactionId: z.string().nullable().optional(),
1513
+ versionTransactionId: z.string().nullable().optional(),
1514
+ metadataPointer: z.string().nullable().optional(),
1515
+ metadataSequence: z.number().int().nullable().optional(),
1516
+ createdAt: z.string(),
1517
+ updatedAt: z.string(),
1518
+ metadata: jsonValueSchema.optional().nullable()
1519
+ });
1520
+ const adapterRegistryCategoriesResponseSchema = z.object({
1521
+ categories: z.array(adapterRegistryCategorySchema)
1522
+ });
1523
+ const adapterRegistryAdapterSchema = z.object({
1524
+ id: z.union([z.string(), z.number()]).optional(),
1525
+ network: z.string().optional(),
1526
+ categoryId: z.union([z.string(), z.number()]).nullable().optional(),
1527
+ operation: z.string().optional(),
1528
+ adapterId: z.string(),
1529
+ adapterName: z.string(),
1530
+ entity: z.string(),
1531
+ manifestPointer: z.string().nullable().optional(),
1532
+ manifestSequence: z.number().int().nullable().optional(),
1533
+ packageRegistry: z.string().nullable().optional(),
1534
+ packageName: z.string().nullable().optional(),
1535
+ packageVersion: z.string().nullable().optional(),
1536
+ packageIntegrity: z.string().nullable().optional(),
1537
+ stateModel: z.string().nullable().optional(),
1538
+ config: jsonValueSchema.nullable().optional(),
1539
+ signature: z.string().nullable().optional(),
1540
+ manifest: jsonValueSchema.nullable().optional(),
1541
+ keywords: z.array(z.string()).optional(),
1542
+ searchText: z.string().nullable().optional(),
1543
+ creditAccountId: z.string().nullable().optional(),
1544
+ registeredByUserId: z.string().nullable().optional(),
1545
+ registeredByEmail: z.string().nullable().optional(),
1546
+ totalCostHbar: z.number().nullable().optional(),
1547
+ totalCostCredits: z.number().nullable().optional(),
1548
+ consensusTimestamp: z.string().nullable().optional(),
1549
+ sequenceNumber: z.number().int().nullable().optional(),
1550
+ payerAccountId: z.string().nullable().optional(),
1551
+ mirrorNodePayload: jsonValueSchema.nullable().optional(),
1552
+ versionTopicId: z.string().nullable().optional(),
1553
+ declarationTopicId: z.string().nullable().optional(),
1554
+ categoryEntrySequence: z.number().int().nullable().optional(),
1555
+ categoryEntryTransactionId: z.string().nullable().optional(),
1556
+ versionPointerSequence: z.number().int().nullable().optional(),
1557
+ versionPointerTransactionId: z.string().nullable().optional(),
1558
+ transactionId: z.string().nullable().optional(),
1559
+ createdAt: z.string().optional(),
1560
+ category: adapterRegistryCategorySchema.optional()
1561
+ }).passthrough();
1562
+ const adapterRegistryAdaptersResponseSchema = z.object({
1563
+ network: z.string(),
1564
+ adapters: z.array(adapterRegistryAdapterSchema)
1565
+ });
1566
+ const adapterRegistryCreateCategoryResponseSchema = z.object({
1567
+ category: adapterRegistryCategorySchema
1568
+ });
1569
+ z.object({
1570
+ adapter: z.record(jsonValueSchema),
1571
+ declaration: adapterDeclarationSchema,
1572
+ transactionId: z.string().optional().nullable(),
1573
+ category: adapterRegistryCategorySchema
1574
+ });
1575
+ const adapterRegistrySubmitAdapterAcceptedResponseSchema = z.object({
1576
+ submissionId: z.string(),
1577
+ status: z.string().optional(),
1578
+ network: z.string().optional(),
1579
+ message: z.string().optional()
1580
+ }).passthrough();
1581
+ const adapterRegistrySubmissionStatusResponseSchema = z.object({
1582
+ submission: z.object({
1583
+ id: z.string(),
1584
+ network: z.string(),
1585
+ status: z.enum(["pending", "running", "completed", "failed"]),
1586
+ adapterId: z.string(),
1587
+ categorySlug: z.string().nullable().optional(),
1588
+ creditAccountId: z.string().nullable().optional(),
1589
+ registeredByUserId: z.string().nullable().optional(),
1590
+ registeredByEmail: z.string().nullable().optional(),
1591
+ requestPayload: jsonValueSchema.optional(),
1592
+ resultPayload: jsonValueSchema.nullable().optional(),
1593
+ error: z.string().nullable().optional(),
1594
+ createdAt: z.string().optional(),
1595
+ updatedAt: z.string().optional(),
1596
+ startedAt: z.string().nullable().optional(),
1597
+ completedAt: z.string().nullable().optional()
1598
+ }).passthrough()
1599
+ });
1600
+ const adapterChatProfileSchema = z.object({
1601
+ supportsChat: z.boolean(),
1602
+ delivery: z.string().optional(),
1603
+ transport: z.string().optional(),
1604
+ streaming: z.boolean().optional(),
1605
+ requiresAuth: z.array(z.string()).optional(),
1606
+ notes: z.string().optional()
1607
+ });
1608
+ const adapterCapabilitiesSchema = z.object({
1609
+ discovery: z.boolean(),
1610
+ routing: z.boolean(),
1611
+ communication: z.boolean(),
1612
+ translation: z.boolean(),
1613
+ protocols: z.array(z.string())
1614
+ });
1615
+ const adapterDescriptorSchema = z.object({
1616
+ id: z.string(),
1617
+ name: z.string(),
1618
+ version: z.string(),
1619
+ author: z.string(),
1620
+ description: z.string(),
1621
+ supportedProtocols: z.array(z.string()),
1622
+ registryType: z.enum(["web2", "web3", "hybrid"]),
1623
+ chatProfile: adapterChatProfileSchema.optional(),
1624
+ capabilities: adapterCapabilitiesSchema,
1625
+ enabled: z.boolean(),
1626
+ priority: z.number(),
1627
+ status: z.enum(["running", "stopped"])
1628
+ });
1629
+ const adapterDetailsResponseSchema = z.object({
1630
+ adapters: z.array(adapterDescriptorSchema)
1631
+ });
1632
+ const metadataFacetOptionSchema = z.object({
1633
+ value: z.union([z.string(), z.number(), z.boolean()]),
1634
+ label: z.string()
1635
+ });
1636
+ const searchFacetSchema = z.object({
1637
+ key: z.string(),
1638
+ label: z.string(),
1639
+ description: z.string().optional(),
1640
+ type: z.enum(["string", "boolean", "number"]),
1641
+ adapters: z.array(z.string()).optional(),
1642
+ options: z.array(metadataFacetOptionSchema).optional()
1643
+ });
1644
+ const searchFacetsResponseSchema = z.object({
1645
+ facets: z.array(searchFacetSchema)
1646
+ });
1647
+ const verificationExistingOwnershipSchema = z.object({
1648
+ ownerType: z.string(),
1649
+ ownerId: z.string(),
1650
+ ownerHandle: z.string().optional(),
1651
+ verifiedAt: z.string().optional(),
1652
+ method: z.string().optional()
1653
+ }).passthrough();
1654
+ const verificationChallengeResponseSchema = z.object({
1655
+ challengeId: z.string(),
1656
+ code: z.string(),
1657
+ expiresAt: z.string(),
1658
+ expectedHandle: z.string(),
1659
+ instructions: z.string(),
1660
+ existingOwnership: verificationExistingOwnershipSchema.optional()
1661
+ }).passthrough();
1662
+ const verificationChallengeDetailsResponseSchema = z.object({
1663
+ challengeId: z.string(),
1664
+ uaid: z.string(),
1665
+ code: z.string(),
1666
+ expiresAt: z.string(),
1667
+ status: z.string(),
1668
+ message: z.string().optional()
1669
+ }).passthrough();
1670
+ const verificationVerifyResponseSchema = z.object({
1671
+ verified: z.boolean(),
1672
+ uaid: z.string(),
1673
+ ownerType: z.string(),
1674
+ ownerId: z.string(),
1675
+ ownerHandle: z.string().optional(),
1676
+ method: z.string().optional(),
1677
+ verificationPostUrl: z.string().optional()
1678
+ }).passthrough();
1679
+ const verificationOwnershipResponseSchema = z.object({
1680
+ uaid: z.string(),
1681
+ ownerType: z.string(),
1682
+ ownerId: z.string(),
1683
+ ownerHandle: z.string().optional(),
1684
+ chain: z.string(),
1685
+ verifiedAt: z.string(),
1686
+ method: z.string()
1687
+ }).passthrough();
1688
+ const verificationStatusResponseSchema = z.object({
1689
+ uaid: z.string(),
1690
+ verified: z.boolean(),
1691
+ chain: z.string().nullable()
1692
+ }).passthrough();
1693
+ const verificationVerifySenderResponseSchema = z.object({
1694
+ verified: z.boolean(),
1695
+ uaid: z.string(),
1696
+ ownerType: z.string(),
1697
+ ownerId: z.string()
1698
+ }).passthrough();
1699
+ const verificationDnsErrorSchema = z.object({
1700
+ code: z.string(),
1701
+ message: z.string(),
1702
+ details: z.record(jsonValueSchema).optional()
1703
+ }).passthrough();
1704
+ const verificationDnsStatusResponseSchema = z.object({
1705
+ uaid: z.string(),
1706
+ verified: z.boolean(),
1707
+ profileId: z.string(),
1708
+ checkedAt: z.string(),
1709
+ nativeId: z.string().optional(),
1710
+ dnsName: z.string().optional(),
1711
+ verificationLevel: z.string().optional(),
1712
+ resolutionMode: z.string().optional(),
1713
+ reconstructedUaid: z.string().optional(),
1714
+ selectedFollowupProfile: z.string().optional(),
1715
+ error: verificationDnsErrorSchema.optional(),
1716
+ source: z.string().optional(),
1717
+ persisted: z.boolean().optional()
1718
+ }).passthrough();
1719
+ const registerStatusResponseSchema = z.object({
1720
+ registered: z.boolean(),
1721
+ agent: jsonValueSchema.optional()
1722
+ }).passthrough();
1723
+ const moltbookOwnerRegistrationUpdateResponseSchema = z.object({
1724
+ ok: z.boolean(),
1725
+ uaid: z.string(),
1726
+ registered: z.boolean(),
1727
+ registeredAt: z.string().optional(),
1728
+ agent: jsonValueSchema.optional(),
1729
+ warning: z.string().optional()
1730
+ }).passthrough();
1731
+ const skillRegistryFileRoleSchema = z.union([
1732
+ z.literal("skill-md"),
1733
+ z.literal("skill-json"),
1734
+ z.literal("skill-icon"),
1735
+ z.literal("file")
1736
+ ]);
1737
+ const trustScoreBreakdownSchema = z.record(z.number()).refine(
1738
+ (record) => typeof record.total === "number" && Number.isFinite(record.total),
1739
+ { message: "trustScores.total is required" }
1740
+ );
1741
+ const skillSafetyLabelSchema = z.enum(["safe", "review", "caution", "unsafe"]);
1742
+ const skillSafetySummarySchema = z.object({
1743
+ score: z.number(),
1744
+ label: skillSafetyLabelSchema,
1745
+ findingsTotal: z.number().int(),
1746
+ highFindings: z.number().int(),
1747
+ scriptsTotal: z.number().int(),
1748
+ permissionsMissing: z.array(z.string())
1749
+ }).passthrough();
1750
+ const skillSafetyFindingSeveritySchema = z.enum(["low", "medium", "high"]);
1751
+ const skillSafetyFindingSchema = z.object({
1752
+ ruleId: z.string(),
1753
+ severity: skillSafetyFindingSeveritySchema,
1754
+ file: z.string(),
1755
+ message: z.string()
1756
+ }).passthrough();
1757
+ const skillRegistryFileDescriptorSchema = z.object({
1758
+ name: z.string(),
1759
+ mimeType: z.string(),
1760
+ role: skillRegistryFileRoleSchema,
1761
+ topicId: z.string().optional(),
1762
+ hrl: z.string().optional(),
1763
+ packageSequenceNumber: z.number().int().optional()
1764
+ }).passthrough();
1765
+ const skillRegistryPublishSummarySchema = z.object({
1766
+ jobId: z.string(),
1767
+ network: z.union([z.literal("mainnet"), z.literal("testnet")]),
1768
+ name: z.string(),
1769
+ version: z.string(),
1770
+ description: z.string().optional(),
1771
+ createdAt: z.string(),
1772
+ directoryTopicId: z.string(),
1773
+ skillUid: z.number().int().optional(),
1774
+ directorySequenceNumber: z.number().int().optional(),
1775
+ versionRegistryTopicId: z.string().optional(),
1776
+ packageTopicId: z.string(),
1777
+ manifestHrl: z.string().optional(),
1778
+ skillJsonHrl: z.string(),
1779
+ iconHcs1: z.string().optional(),
1780
+ tags: z.array(z.string()).optional(),
1781
+ category: z.string().optional(),
1782
+ featured: z.boolean().optional(),
1783
+ verified: z.boolean().optional(),
1784
+ upvotes: z.number().int().optional(),
1785
+ trustScore: z.number().optional(),
1786
+ trustScores: trustScoreBreakdownSchema.optional(),
1787
+ safety: skillSafetySummarySchema.optional(),
1788
+ safetyFindings: z.array(skillSafetyFindingSchema).optional(),
1789
+ files: z.array(skillRegistryFileDescriptorSchema).optional()
1790
+ }).passthrough();
1791
+ const skillRegistryListResponseSchema = z.object({
1792
+ items: z.array(skillRegistryPublishSummarySchema),
1793
+ nextCursor: z.string().nullable()
1794
+ }).passthrough();
1795
+ z.enum([
1796
+ "stable",
1797
+ "prerelease",
1798
+ "all"
1799
+ ]);
1800
+ z.enum([
1801
+ "trending",
1802
+ "upvotes",
1803
+ "updated",
1804
+ "name"
1805
+ ]);
1806
+ const skillCatalogVersionSummarySchema = z.object({
1807
+ version: z.string(),
1808
+ publishedAt: z.string(),
1809
+ verified: z.boolean().optional()
1810
+ }).passthrough();
1811
+ const skillCatalogItemSchema = z.object({
1812
+ name: z.string(),
1813
+ description: z.string().optional(),
1814
+ iconHcs1: z.string().optional(),
1815
+ category: z.string().optional(),
1816
+ tags: z.array(z.string()).optional(),
1817
+ latest: skillCatalogVersionSummarySchema,
1818
+ latestStable: skillCatalogVersionSummarySchema.optional(),
1819
+ recommended: skillCatalogVersionSummarySchema,
1820
+ upvotes: z.number().int(),
1821
+ verified: z.boolean(),
1822
+ repoStamped: z.boolean(),
1823
+ trustScore: z.number().optional(),
1824
+ safetyScore: z.number().optional()
1825
+ }).passthrough();
1826
+ const skillCatalogResponseSchema = z.object({
1827
+ items: z.array(skillCatalogItemSchema),
1828
+ nextCursor: z.string().nullable()
1829
+ }).passthrough();
1830
+ const skillRecommendedVersionResponseSchema = z.object({
1831
+ name: z.string(),
1832
+ version: z.string(),
1833
+ updatedAt: z.string(),
1834
+ setBy: z.string()
1835
+ }).passthrough();
1836
+ const skillDeprecationRecordSchema = z.object({
1837
+ name: z.string(),
1838
+ version: z.string().optional(),
1839
+ reason: z.string(),
1840
+ replacementRef: z.string().optional(),
1841
+ deprecatedAt: z.string(),
1842
+ deprecatedBy: z.string()
1843
+ }).passthrough();
1844
+ const skillDeprecationsResponseSchema = z.object({
1845
+ name: z.string(),
1846
+ items: z.array(skillDeprecationRecordSchema)
1847
+ }).passthrough();
1848
+ const skillSecurityBreakdownResponseSchema = z.object({
1849
+ jobId: z.string(),
1850
+ score: z.number().nullable().optional(),
1851
+ findings: z.array(jsonValueSchema).optional(),
1852
+ summary: jsonValueSchema.optional(),
1853
+ generatedAt: z.string().nullable().optional(),
1854
+ scannerVersion: z.string().nullable().optional()
1855
+ }).passthrough();
1856
+ const skillBadgeMetricSchema = z.enum([
1857
+ "version",
1858
+ "version_verification",
1859
+ "status",
1860
+ "verification",
1861
+ "repo_commit",
1862
+ "manifest",
1863
+ "domain",
1864
+ "trust",
1865
+ "tier",
1866
+ "safety",
1867
+ "upvotes",
1868
+ "updated"
1869
+ ]);
1870
+ const skillBadgeStyleSchema = z.enum([
1871
+ "flat",
1872
+ "flat-square",
1873
+ "for-the-badge",
1874
+ "plastic",
1875
+ "social"
1876
+ ]);
1877
+ const skillBadgeResponseSchema = z.object({
1878
+ schemaVersion: z.number().int(),
1879
+ label: z.string(),
1880
+ message: z.string(),
1881
+ color: z.string(),
1882
+ style: skillBadgeStyleSchema.optional(),
1883
+ isError: z.boolean().optional(),
1884
+ cacheSeconds: z.number().int().optional()
1885
+ }).passthrough();
1886
+ const skillRegistryTagsResponseSchema = z.object({
1887
+ tags: z.array(z.string())
1888
+ }).passthrough();
1889
+ const skillRegistryCategoriesResponseSchema = z.object({
1890
+ categories: z.array(z.string())
1891
+ }).passthrough();
1892
+ const skillResolverManifestResponseSchema = z.record(jsonValueSchema);
1893
+ const skillRegistryQuoteFileBreakdownSchema = z.object({
1894
+ name: z.string(),
1895
+ mimeType: z.string(),
1896
+ estimatedCostHbar: z.number()
1897
+ }).passthrough();
1898
+ const skillRegistryQuoteResponseSchema = z.object({
1899
+ quoteId: z.string(),
1900
+ name: z.string(),
1901
+ version: z.string(),
1902
+ directoryTopicId: z.string(),
1903
+ estimatedCostHbar: z.number(),
1904
+ credits: z.number(),
1905
+ usdCents: z.number(),
1906
+ expiresAt: z.string(),
1907
+ files: z.array(skillRegistryQuoteFileBreakdownSchema)
1908
+ }).passthrough();
1909
+ const skillRegistryJobStatusSchema = z.union([
1910
+ z.literal("pending"),
1911
+ z.literal("in_progress"),
1912
+ z.literal("completed"),
1913
+ z.literal("failed")
1914
+ ]);
1915
+ const skillRegistryPublishResponseSchema = z.object({
1916
+ jobId: z.string(),
1917
+ status: skillRegistryJobStatusSchema,
1918
+ credits: z.number().nullable().optional(),
1919
+ usdCents: z.number().nullable().optional(),
1920
+ quoteId: z.string().nullable().optional(),
1921
+ createdAt: z.string(),
1922
+ updatedAt: z.string(),
1923
+ network: z.union([z.literal("mainnet"), z.literal("testnet")])
1924
+ }).passthrough();
1925
+ const skillRegistryJobStatusResponseSchema = z.object({
1926
+ jobId: z.string(),
1927
+ status: skillRegistryJobStatusSchema,
1928
+ network: z.union([z.literal("mainnet"), z.literal("testnet")]),
1929
+ name: z.string(),
1930
+ version: z.string(),
1931
+ directoryTopicId: z.string(),
1932
+ skillUid: z.number().int().nullable().optional(),
1933
+ directorySequenceNumber: z.number().int().nullable().optional(),
1934
+ versionRegistryTopicId: z.string().nullable().optional(),
1935
+ packageTopicId: z.string().nullable().optional(),
1936
+ manifestHrl: z.string().nullable().optional(),
1937
+ skillJsonHrl: z.string().nullable().optional(),
1938
+ iconHcs1: z.string().nullable().optional(),
1939
+ tags: z.array(z.string()).nullable().optional(),
1940
+ category: z.string().nullable().optional(),
1941
+ files: z.array(skillRegistryFileDescriptorSchema).nullable().optional(),
1942
+ quoteCredits: z.number().nullable().optional(),
1943
+ quoteUsdCents: z.number().nullable().optional(),
1944
+ safety: skillSafetySummarySchema.nullable().optional(),
1945
+ reservationId: z.string().nullable().optional(),
1946
+ totalCostHbar: z.number().nullable().optional(),
1947
+ totalCostCredits: z.number().nullable().optional(),
1948
+ failureReason: z.string().nullable().optional(),
1949
+ createdAt: z.string(),
1950
+ updatedAt: z.string()
1951
+ }).passthrough();
1952
+ const skillRegistryVersionItemSchema = z.object({
1953
+ jobId: z.string(),
1954
+ version: z.string(),
1955
+ createdAt: z.string(),
1956
+ verified: z.boolean().optional()
1957
+ }).passthrough();
1958
+ const skillRegistryVersionsResponseSchema = z.object({
1959
+ name: z.string(),
1960
+ items: z.array(skillRegistryVersionItemSchema)
1961
+ }).passthrough();
1962
+ const skillRegistryMineItemSchema = z.object({
1963
+ name: z.string(),
1964
+ latestVersion: z.string(),
1965
+ latestCreatedAt: z.string(),
1966
+ verified: z.boolean().optional(),
1967
+ iconHcs1: z.string().optional(),
1968
+ versions: z.array(z.string())
1969
+ }).passthrough();
1970
+ const skillRegistryMineResponseSchema = z.object({
1971
+ items: z.array(skillRegistryMineItemSchema)
1972
+ }).passthrough();
1973
+ const skillRegistryMyListResponseSchema = z.object({
1974
+ owned: skillRegistryMineResponseSchema,
1975
+ upvoted: skillRegistryListResponseSchema
1976
+ }).passthrough();
1977
+ const skillRegistryConfigResponseSchema = z.object({
1978
+ enabled: z.boolean(),
1979
+ directoryTopicId: z.string().nullable().optional(),
1980
+ maxFiles: z.number().int().nullable().optional(),
1981
+ maxTotalSizeBytes: z.number().int().nullable().optional(),
1982
+ allowedMimeTypes: z.array(z.string()).nullable().optional(),
1983
+ network: z.union([z.literal("mainnet"), z.literal("testnet")]).nullable().optional(),
1984
+ publisher: z.object({
1985
+ cliPackageUrl: z.string(),
1986
+ cliCommand: z.string(),
1987
+ actionMarketplaceUrl: z.string(),
1988
+ repositoryUrl: z.string(),
1989
+ guideUrl: z.string().nullable().optional(),
1990
+ docsUrl: z.string().nullable().optional(),
1991
+ submitUrl: z.string().nullable().optional(),
1992
+ skillsIndexUrl: z.string().nullable().optional(),
1993
+ quickstartCommands: z.array(
1994
+ z.object({
1995
+ id: z.string(),
1996
+ label: z.string(),
1997
+ description: z.string(),
1998
+ command: z.string(),
1999
+ href: z.string().nullable().optional()
2000
+ }).passthrough()
2001
+ ).optional().default([]),
2002
+ templatePresets: z.array(
2003
+ z.object({
2004
+ presetId: z.string(),
2005
+ label: z.string(),
2006
+ description: z.string(),
2007
+ recommendedFor: z.string(),
2008
+ command: z.string()
2009
+ }).passthrough()
2010
+ ).optional().default([])
2011
+ }).nullable().optional()
2012
+ }).passthrough();
2013
+ const skillRegistryOwnershipResponseSchema = z.object({
2014
+ name: z.string(),
2015
+ exists: z.boolean(),
2016
+ isOwner: z.boolean()
2017
+ }).passthrough();
2018
+ const skillRegistryVoteStatusResponseSchema = z.object({
2019
+ name: z.string(),
2020
+ upvotes: z.number().int(),
2021
+ hasUpvoted: z.boolean()
2022
+ }).passthrough();
2023
+ const skillTrustTierSchema = z.enum([
2024
+ "unclaimed",
2025
+ "validated",
2026
+ "published",
2027
+ "verified",
2028
+ "hardened"
2029
+ ]);
2030
+ const skillStatusNextStepSchema = z.object({
2031
+ kind: z.enum([
2032
+ "setup_validate",
2033
+ "publish_first_release",
2034
+ "verify_domain",
2035
+ "harden_workflow",
2036
+ "share_status"
2037
+ ]),
2038
+ priority: z.number().int(),
2039
+ id: z.string(),
2040
+ label: z.string(),
2041
+ description: z.string(),
2042
+ url: z.string().nullable().optional(),
2043
+ href: z.string().nullable().optional(),
2044
+ command: z.string().nullable().optional()
2045
+ }).passthrough();
2046
+ const skillPreviewSuggestedNextStepSchema = z.object({
2047
+ id: z.string(),
2048
+ label: z.string(),
2049
+ description: z.string(),
2050
+ command: z.string().optional(),
2051
+ href: z.string().optional()
2052
+ }).passthrough();
2053
+ const skillPreviewReportSchema = z.object({
2054
+ schema_version: z.literal("skill-preview.v1"),
2055
+ tool_version: z.string(),
2056
+ preview_id: z.string(),
2057
+ repo_url: z.string(),
2058
+ repo_owner: z.string(),
2059
+ repo_name: z.string(),
2060
+ default_branch: z.string(),
2061
+ commit_sha: z.string(),
2062
+ ref: z.string(),
2063
+ event_name: z.string(),
2064
+ workflow_run_url: z.string(),
2065
+ skill_dir: z.string(),
2066
+ name: z.string(),
2067
+ version: z.string(),
2068
+ validation_status: z.literal("passed"),
2069
+ findings: z.array(z.unknown()),
2070
+ package_summary: z.record(z.string(), z.unknown()),
2071
+ suggested_next_steps: z.array(skillPreviewSuggestedNextStepSchema),
2072
+ generated_at: z.string()
2073
+ }).passthrough();
2074
+ const skillPreviewRecordSchema = z.object({
2075
+ id: z.string(),
2076
+ previewId: z.string(),
2077
+ source: z.literal("github-oidc"),
2078
+ report: skillPreviewReportSchema,
2079
+ generatedAt: z.string(),
2080
+ expiresAt: z.string(),
2081
+ statusUrl: z.string(),
2082
+ authoritative: z.boolean()
2083
+ }).passthrough();
2084
+ const skillPreviewLookupResponseSchema = z.object({
2085
+ found: z.boolean(),
2086
+ authoritative: z.boolean(),
2087
+ preview: skillPreviewRecordSchema.nullable(),
2088
+ statusUrl: z.string().nullable(),
2089
+ expiresAt: z.string().nullable()
2090
+ }).passthrough();
2091
+ const skillStatusPreviewMetadataSchema = z.object({
2092
+ previewId: z.string(),
2093
+ repoUrl: z.string(),
2094
+ repoOwner: z.string(),
2095
+ repoName: z.string(),
2096
+ commitSha: z.string(),
2097
+ ref: z.string(),
2098
+ eventName: z.string(),
2099
+ skillDir: z.string(),
2100
+ generatedAt: z.string(),
2101
+ expiresAt: z.string(),
2102
+ statusUrl: z.string()
2103
+ }).passthrough();
2104
+ const skillStatusChecksSchema = z.object({
2105
+ repoCommitIntegrity: z.boolean(),
2106
+ manifestIntegrity: z.boolean(),
2107
+ domainProof: z.boolean()
2108
+ }).passthrough();
2109
+ const skillStatusVerificationSignalsSchema = z.object({
2110
+ publisherBound: z.boolean(),
2111
+ domainProof: z.boolean(),
2112
+ verifiedDomain: z.boolean(),
2113
+ previewValidated: z.boolean()
2114
+ }).passthrough();
2115
+ const skillStatusProvenanceSignalsSchema = z.object({
2116
+ repoCommitIntegrity: z.boolean(),
2117
+ manifestIntegrity: z.boolean(),
2118
+ canonicalRelease: z.boolean(),
2119
+ previewAvailable: z.boolean(),
2120
+ previewAuthoritative: z.boolean()
2121
+ }).passthrough();
2122
+ const skillStatusResponseSchema = z.object({
2123
+ name: z.string(),
2124
+ version: z.string().nullable(),
2125
+ published: z.boolean(),
2126
+ verifiedDomain: z.boolean(),
2127
+ trustTier: skillTrustTierSchema,
2128
+ badgeMetric: skillBadgeMetricSchema,
2129
+ checks: skillStatusChecksSchema,
2130
+ nextSteps: z.array(skillStatusNextStepSchema),
2131
+ verificationSignals: skillStatusVerificationSignalsSchema,
2132
+ provenanceSignals: skillStatusProvenanceSignalsSchema,
2133
+ publisher: skillRegistryConfigResponseSchema.shape.publisher,
2134
+ preview: skillStatusPreviewMetadataSchema.nullable().optional(),
2135
+ statusUrl: z.string().nullable().optional()
2136
+ }).passthrough();
2137
+ const skillQuotePreviewRangeSchema = z.object({
2138
+ min: z.number(),
2139
+ max: z.number()
2140
+ }).passthrough();
2141
+ const skillQuotePreviewResponseSchema = z.object({
2142
+ estimatedCredits: skillQuotePreviewRangeSchema,
2143
+ estimatedHbar: skillQuotePreviewRangeSchema,
2144
+ pricingVersion: z.string(),
2145
+ assumptions: z.array(z.string()),
2146
+ purchaseUrl: z.string().nullable(),
2147
+ publishUrl: z.string().nullable(),
2148
+ verificationUrl: z.string().nullable()
2149
+ }).passthrough();
2150
+ const skillConversionSignalsResponseSchema = z.object({
2151
+ repoUrl: z.string(),
2152
+ skillDir: z.string(),
2153
+ trustTier: skillTrustTierSchema,
2154
+ actionInstalled: z.boolean(),
2155
+ previewUploaded: z.boolean(),
2156
+ previewId: z.string().nullable(),
2157
+ lastValidateSuccessAt: z.string().nullable(),
2158
+ stalePreviewAgeDays: z.number().nullable(),
2159
+ published: z.boolean(),
2160
+ verified: z.boolean(),
2161
+ publishReady: z.boolean(),
2162
+ publishBlockedByMissingAuth: z.boolean(),
2163
+ statusUrl: z.string().nullable(),
2164
+ purchaseUrl: z.string().nullable(),
2165
+ publishUrl: z.string().nullable(),
2166
+ verificationUrl: z.string().nullable(),
2167
+ nextSteps: z.array(skillStatusNextStepSchema)
2168
+ }).passthrough();
2169
+ const skillInstallArtifactDescriptorSchema = z.object({
2170
+ url: z.string(),
2171
+ pointer: z.string().nullable(),
2172
+ sha256: z.string().nullable()
2173
+ }).passthrough();
2174
+ const skillInstallResolverDescriptorSchema = z.object({
2175
+ skillRef: z.string(),
2176
+ skillMdUrl: z.string(),
2177
+ manifestUrl: z.string()
2178
+ }).passthrough();
2179
+ const skillInstallBadgeDescriptorSchema = z.object({
2180
+ apiUrl: z.string(),
2181
+ imageUrl: z.string(),
2182
+ markdown: z.string(),
2183
+ html: z.string()
2184
+ }).passthrough();
2185
+ const skillInstallShareDescriptorSchema = z.object({
2186
+ canonicalUrl: z.string().nullable(),
2187
+ latestUrl: z.string().nullable(),
2188
+ markdownLink: z.string().nullable(),
2189
+ htmlLink: z.string().nullable(),
2190
+ badge: skillInstallBadgeDescriptorSchema.nullable()
2191
+ }).passthrough();
2192
+ const skillInstallSnippetSetSchema = z.object({
2193
+ cli: z.string(),
2194
+ claude: z.string(),
2195
+ cursor: z.string(),
2196
+ codex: z.string(),
2197
+ openclaw: z.string()
2198
+ }).passthrough();
2199
+ const skillInstallResponseSchema = z.object({
2200
+ name: z.string(),
2201
+ version: z.string(),
2202
+ skillRef: z.string(),
2203
+ network: z.union([z.literal("mainnet"), z.literal("testnet")]),
2204
+ detailUrl: z.string().nullable(),
2205
+ artifacts: z.object({
2206
+ skillMd: skillInstallArtifactDescriptorSchema,
2207
+ manifest: skillInstallArtifactDescriptorSchema
2208
+ }).passthrough(),
2209
+ resolvers: z.object({
2210
+ pinned: skillInstallResolverDescriptorSchema,
2211
+ latest: skillInstallResolverDescriptorSchema
2212
+ }).passthrough(),
2213
+ share: skillInstallShareDescriptorSchema,
2214
+ snippets: skillInstallSnippetSetSchema
2215
+ }).passthrough();
2216
+ const skillInstallCopyTelemetryResponseSchema = z.object({
2217
+ accepted: z.boolean()
2218
+ }).passthrough();
2219
+ const skillVerificationTierSchema = z.enum(["basic", "express"]);
2220
+ const skillVerificationStatusSchema = z.enum([
2221
+ "pending",
2222
+ "approved",
2223
+ "rejected"
2224
+ ]);
2225
+ const skillVerificationStatusLabelSchema = z.enum([
2226
+ "not_requested",
2227
+ "pending",
2228
+ "approved",
2229
+ "rejected"
2230
+ ]);
2231
+ const skillVerificationSignalFailureReasonSchema = z.enum([
2232
+ "missing_owner",
2233
+ "missing_repo_or_commit",
2234
+ "unsupported_repo",
2235
+ "repo_fetch_failed",
2236
+ "manifest_pointer_missing",
2237
+ "manifest_fetch_failed",
2238
+ "manifest_parse_failed",
2239
+ "missing_file_hashes",
2240
+ "missing_domain",
2241
+ "challenge_invalid",
2242
+ "challenge_expired",
2243
+ "dns_lookup_failed",
2244
+ "dns_record_missing",
2245
+ "mismatch"
2246
+ ]);
2247
+ const skillVerificationPublisherBoundSignalSchema = z.object({
2248
+ ok: z.boolean(),
2249
+ ownerAccountId: z.string().nullable(),
2250
+ ownerUserId: z.string().nullable(),
2251
+ checkedAt: z.string(),
2252
+ reason: skillVerificationSignalFailureReasonSchema.optional()
2253
+ }).passthrough();
2254
+ const skillVerificationRepoCommitIntegrityMismatchSchema = z.object({
2255
+ path: z.string(),
2256
+ expectedSha256: z.string(),
2257
+ actualSha256: z.string().optional(),
2258
+ error: z.string().optional()
2259
+ }).passthrough();
2260
+ const skillVerificationRepoCommitIntegritySignalSchema = z.object({
2261
+ ok: z.boolean(),
2262
+ repo: z.string().nullable(),
2263
+ commit: z.string().nullable(),
2264
+ checkedAt: z.string(),
2265
+ filesChecked: z.number().int().min(0),
2266
+ mismatches: z.array(skillVerificationRepoCommitIntegrityMismatchSchema),
2267
+ partial: z.boolean().optional(),
2268
+ reason: skillVerificationSignalFailureReasonSchema.optional()
2269
+ }).passthrough();
2270
+ const skillVerificationManifestIntegrityShaMismatchSchema = z.object({
2271
+ path: z.string(),
2272
+ expectedSha256: z.string(),
2273
+ actualSha256: z.string().optional()
2274
+ }).passthrough();
2275
+ const skillVerificationManifestIntegritySignalSchema = z.object({
2276
+ ok: z.boolean(),
2277
+ manifestHrl: z.string().nullable(),
2278
+ manifestSha256: z.string().nullable(),
2279
+ checkedAt: z.string(),
2280
+ missingFiles: z.array(z.string()),
2281
+ shaMismatches: z.array(skillVerificationManifestIntegrityShaMismatchSchema),
2282
+ extraFiles: z.array(z.string()).optional(),
2283
+ reason: skillVerificationSignalFailureReasonSchema.optional()
2284
+ }).passthrough();
2285
+ const skillVerificationDomainProofSignalSchema = z.object({
2286
+ ok: z.boolean(),
2287
+ domain: z.string().optional(),
2288
+ method: z.literal("dns_txt").optional(),
2289
+ checkedAt: z.string().optional(),
2290
+ details: z.string().optional(),
2291
+ txtRecordName: z.string().optional(),
2292
+ reason: skillVerificationSignalFailureReasonSchema.optional()
2293
+ }).passthrough();
2294
+ const skillVerificationSignalsSchema = z.object({
2295
+ publisherBound: skillVerificationPublisherBoundSignalSchema,
2296
+ repoCommitIntegrity: skillVerificationRepoCommitIntegritySignalSchema,
2297
+ manifestIntegrity: skillVerificationManifestIntegritySignalSchema,
2298
+ domainProof: skillVerificationDomainProofSignalSchema.optional()
2299
+ }).passthrough();
2300
+ const skillVerificationRequestSchema = z.object({
2301
+ id: z.string(),
2302
+ network: z.union([z.literal("mainnet"), z.literal("testnet")]),
2303
+ name: z.string(),
2304
+ version: z.string().optional(),
2305
+ tier: skillVerificationTierSchema,
2306
+ status: skillVerificationStatusSchema,
2307
+ usdCents: z.number(),
2308
+ creditsCharged: z.number(),
2309
+ creditAccountId: z.string().optional(),
2310
+ signals: skillVerificationSignalsSchema.optional(),
2311
+ reviewNotes: z.string().optional(),
2312
+ requestedBy: z.object({
2313
+ userId: z.string().optional(),
2314
+ accountId: z.string().optional(),
2315
+ email: z.string().optional()
2316
+ }).optional(),
2317
+ approvedBy: z.object({
2318
+ userId: z.string().optional(),
2319
+ email: z.string().optional()
2320
+ }).optional(),
2321
+ approvedAt: z.string().optional(),
2322
+ rejectedBy: z.object({
2323
+ userId: z.string().optional(),
2324
+ email: z.string().optional()
2325
+ }).optional(),
2326
+ rejectedAt: z.string().optional(),
2327
+ createdAt: z.string(),
2328
+ updatedAt: z.string()
2329
+ }).passthrough();
2330
+ const skillVerificationRequestCreateResponseSchema = z.object({
2331
+ request: skillVerificationRequestSchema
2332
+ }).passthrough();
2333
+ const skillVerificationStatusResponseSchema = z.object({
2334
+ name: z.string(),
2335
+ version: z.string(),
2336
+ status: skillVerificationStatusLabelSchema,
2337
+ verified: z.boolean(),
2338
+ previouslyVerified: z.boolean(),
2339
+ signals: skillVerificationSignalsSchema.nullable().optional(),
2340
+ reviewNotes: z.string().nullable().optional(),
2341
+ pendingRequest: skillVerificationRequestSchema.nullable().optional()
2342
+ }).passthrough();
2343
+ z.object({
2344
+ name: z.string().min(1),
2345
+ version: z.string().min(1).optional(),
2346
+ domain: z.string().min(1).optional()
2347
+ }).passthrough();
2348
+ const skillVerificationDomainProofChallengeResponseSchema = z.object({
2349
+ challengeId: z.string().min(1),
2350
+ name: z.string().min(1),
2351
+ version: z.string().min(1),
2352
+ domain: z.string().min(1),
2353
+ method: z.literal("dns_txt"),
2354
+ txtRecordName: z.string().min(1),
2355
+ txtRecordValue: z.string().min(1),
2356
+ expiresAt: z.string().min(1)
2357
+ }).passthrough();
2358
+ z.object({
2359
+ name: z.string().min(1),
2360
+ version: z.string().min(1).optional(),
2361
+ domain: z.string().min(1).optional(),
2362
+ challengeToken: z.string().min(1)
2363
+ }).passthrough();
2364
+ const skillVerificationDomainProofVerifyResponseSchema = z.object({
2365
+ name: z.string().min(1),
2366
+ version: z.string().min(1),
2367
+ signal: skillVerificationDomainProofSignalSchema
2368
+ }).passthrough();
159
2369
  export {
160
- FeeConfigBuilder
2370
+ AIAgentCapability,
2371
+ AIAgentType,
2372
+ adapterChatProfileSchema,
2373
+ adapterDescriptorSchema,
2374
+ adapterDetailsResponseSchema,
2375
+ adapterRegistryAdapterSchema,
2376
+ adapterRegistryAdaptersResponseSchema,
2377
+ adapterRegistryCategoriesResponseSchema,
2378
+ adapterRegistryCategorySchema,
2379
+ adapterRegistryCreateCategoryResponseSchema,
2380
+ adapterRegistrySubmissionStatusResponseSchema,
2381
+ adapterRegistrySubmitAdapterAcceptedResponseSchema,
2382
+ adaptersResponseSchema,
2383
+ additionalRegistryCatalogResponseSchema,
2384
+ agentFeedbackEligibilityResponseSchema,
2385
+ agentFeedbackEntriesIndexResponseSchema,
2386
+ agentFeedbackIndexResponseSchema,
2387
+ agentFeedbackResponseSchema,
2388
+ agentFeedbackSubmissionResponseSchema,
2389
+ chatDeliveryStateSchema,
2390
+ chatErrorCodeSchema,
2391
+ chatHistoryCompactionResponseSchema,
2392
+ chatHistorySnapshotResponseSchema,
2393
+ chatPaymentStateSchema,
2394
+ chatReadinessResponseSchema,
2395
+ chatReadinessStatusSchema,
2396
+ chatReplyModeSchema,
2397
+ chatRouteSummarySchema,
2398
+ chatRouteTypeSchema,
2399
+ chatSessionEndResponseSchema,
2400
+ chatSessionResumeResponseSchema,
2401
+ chatSessionStateSchema,
2402
+ chatTimelineEntrySchema,
2403
+ createSessionResponseSchema,
2404
+ creditBalanceResponseSchema,
2405
+ creditProviderSummarySchema,
2406
+ creditProvidersResponseSchema,
2407
+ creditPurchaseResponseSchema,
2408
+ dashboardStatsResponseSchema,
2409
+ delegationPlanResponseSchema,
2410
+ detectProtocolResponseSchema,
2411
+ encryptionHandshakeResponseSchema,
2412
+ guardAbomResponseSchema,
2413
+ guardAbomSummarySchema,
2414
+ guardActionItemSchema,
2415
+ guardAlertPreferencesSchema,
2416
+ guardArtifactTimelineResponseSchema,
2417
+ guardBalanceResponseSchema,
2418
+ guardBucketBalanceSchema,
2419
+ guardDeviceListResponseSchema,
2420
+ guardDeviceSchema,
2421
+ guardEntitlementsSchema,
2422
+ guardExceptionItemSchema,
2423
+ guardExceptionListResponseSchema,
2424
+ guardExportSignatureSchema,
2425
+ guardFeedItemSchema,
2426
+ guardFeedResponseSchema,
2427
+ guardFeedSummarySchema,
2428
+ guardHistoryArtifactSchema,
2429
+ guardIntegrationSchema,
2430
+ guardInventoryArtifactSchema,
2431
+ guardInventoryDiffEntrySchema,
2432
+ guardInventoryDiffResponseSchema,
2433
+ guardInventoryResponseSchema,
2434
+ guardOverviewResponseSchema,
2435
+ guardPainSignalAggregateResponseSchema,
2436
+ guardPainSignalAggregateSchema,
2437
+ guardPainSignalListResponseSchema,
2438
+ guardPainSignalSchema,
2439
+ guardPlanIdSchema,
2440
+ guardPolicySchema,
2441
+ guardPreflightEvidenceSchema,
2442
+ guardPreflightVerdictResponseSchema,
2443
+ guardPrincipalSchema,
2444
+ guardReceiptExportResponseSchema,
2445
+ guardReceiptExportSummarySchema,
2446
+ guardReceiptHistoryResponseSchema,
2447
+ guardReceiptSchema,
2448
+ guardReceiptSyncResponseSchema,
2449
+ guardRevocationResponseSchema,
2450
+ guardRevocationSchema,
2451
+ guardSessionResponseSchema,
2452
+ guardTeamPolicyAuditItemSchema,
2453
+ guardTeamPolicyPackSchema,
2454
+ guardTimelineEventSchema,
2455
+ guardTrustByHashResponseSchema,
2456
+ guardTrustMatchSchema,
2457
+ guardTrustResolveResponseSchema,
2458
+ guardWatchlistItemSchema,
2459
+ guardWatchlistLookupMatchSchema,
2460
+ guardWatchlistLookupResponseSchema,
2461
+ guardWatchlistResponseSchema,
2462
+ hbarPurchaseIntentResponseSchema,
2463
+ ledgerChallengeResponseSchema,
2464
+ ledgerVerifyResponseSchema,
2465
+ metricsSummaryResponseSchema,
2466
+ moltbookOwnerRegistrationUpdateResponseSchema,
2467
+ popularResponseSchema,
2468
+ protocolsResponseSchema,
2469
+ registerAgentResponseSchema,
2470
+ registerEncryptionKeyResponseSchema,
2471
+ registerStatusResponseSchema,
2472
+ registrationProgressResponseSchema,
2473
+ registrationQuoteResponseSchema,
2474
+ registriesResponseSchema,
2475
+ registrySearchByNamespaceSchema,
2476
+ resolveResponseSchema,
2477
+ searchFacetsResponseSchema,
2478
+ searchResponseSchema,
2479
+ searchStatusResponseSchema,
2480
+ sendMessageResponseSchema,
2481
+ sessionEncryptionStatusResponseSchema,
2482
+ skillBadgeMetricSchema,
2483
+ skillBadgeResponseSchema,
2484
+ skillBadgeStyleSchema,
2485
+ skillCatalogItemSchema,
2486
+ skillCatalogResponseSchema,
2487
+ skillCatalogVersionSummarySchema,
2488
+ skillConversionSignalsResponseSchema,
2489
+ skillDeprecationRecordSchema,
2490
+ skillDeprecationsResponseSchema,
2491
+ skillInstallArtifactDescriptorSchema,
2492
+ skillInstallBadgeDescriptorSchema,
2493
+ skillInstallCopyTelemetryResponseSchema,
2494
+ skillInstallResolverDescriptorSchema,
2495
+ skillInstallResponseSchema,
2496
+ skillInstallShareDescriptorSchema,
2497
+ skillInstallSnippetSetSchema,
2498
+ skillPreviewLookupResponseSchema,
2499
+ skillPreviewRecordSchema,
2500
+ skillPreviewReportSchema,
2501
+ skillPreviewSuggestedNextStepSchema,
2502
+ skillQuotePreviewRangeSchema,
2503
+ skillQuotePreviewResponseSchema,
2504
+ skillRecommendedVersionResponseSchema,
2505
+ skillRegistryCategoriesResponseSchema,
2506
+ skillRegistryConfigResponseSchema,
2507
+ skillRegistryFileDescriptorSchema,
2508
+ skillRegistryJobStatusResponseSchema,
2509
+ skillRegistryListResponseSchema,
2510
+ skillRegistryMineItemSchema,
2511
+ skillRegistryMineResponseSchema,
2512
+ skillRegistryMyListResponseSchema,
2513
+ skillRegistryOwnershipResponseSchema,
2514
+ skillRegistryPublishResponseSchema,
2515
+ skillRegistryPublishSummarySchema,
2516
+ skillRegistryQuoteFileBreakdownSchema,
2517
+ skillRegistryQuoteResponseSchema,
2518
+ skillRegistryTagsResponseSchema,
2519
+ skillRegistryVersionItemSchema,
2520
+ skillRegistryVersionsResponseSchema,
2521
+ skillRegistryVoteStatusResponseSchema,
2522
+ skillResolverManifestResponseSchema,
2523
+ skillSecurityBreakdownResponseSchema,
2524
+ skillStatusChecksSchema,
2525
+ skillStatusNextStepSchema,
2526
+ skillStatusPreviewMetadataSchema,
2527
+ skillStatusProvenanceSignalsSchema,
2528
+ skillStatusResponseSchema,
2529
+ skillStatusVerificationSignalsSchema,
2530
+ skillTrustTierSchema,
2531
+ skillVerificationDomainProofChallengeResponseSchema,
2532
+ skillVerificationDomainProofVerifyResponseSchema,
2533
+ skillVerificationRequestCreateResponseSchema,
2534
+ skillVerificationStatusResponseSchema,
2535
+ statsResponseSchema,
2536
+ uaidConnectionStatusSchema,
2537
+ uaidValidationResponseSchema,
2538
+ vectorSearchResponseSchema,
2539
+ verificationChallengeDetailsResponseSchema,
2540
+ verificationChallengeResponseSchema,
2541
+ verificationDnsStatusResponseSchema,
2542
+ verificationOwnershipResponseSchema,
2543
+ verificationStatusResponseSchema,
2544
+ verificationVerifyResponseSchema,
2545
+ verificationVerifySenderResponseSchema,
2546
+ websocketStatsResponseSchema,
2547
+ x402CreditPurchaseResponseSchema,
2548
+ x402MinimumsResponseSchema
161
2549
  };
162
2550
  //# sourceMappingURL=standards-sdk.es152.js.map