@hashgraphonline/standards-agent-kit 0.2.0 → 0.2.101

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.
@@ -1 +1 @@
1
- {"version":3,"file":"standards-agent-kit.es5.js","sources":["../../src/tools/hcs10/RegisterAgentTool.ts"],"sourcesContent":["import { AIAgentCapability } from '@hashgraphonline/standards-sdk';\nimport { z } from 'zod';\nimport { BaseServiceBuilder } from 'hedera-agent-kit';\nimport { HCS10Builder, RegisterAgentParams } from '../../builders/hcs10/hcs10-builder';\nimport { BaseHCS10TransactionTool } from './base-hcs10-tools';\nimport { HCS10TransactionToolParams } from './hcs10-tool-params';\n\nconst RegisterAgentZodSchema = z.object({\n name: z\n .string()\n .min(1)\n .max(50)\n .describe('A unique name for the agent (1-50 characters)'),\n description: z\n .string()\n .max(500)\n .optional()\n .describe('Optional bio description for the agent (max 500 characters)'),\n alias: z\n .string()\n .optional()\n .describe('Optional custom username/alias for the agent'),\n type: z\n .enum(['autonomous', 'manual'])\n .optional()\n .describe('Agent type (default: autonomous)'),\n model: z\n .string()\n .optional()\n .describe('AI model identifier (default: agent-model-2024)'),\n capabilities: z\n .array(z.nativeEnum(AIAgentCapability))\n .optional()\n .describe('Array of agent capabilities (default: [TEXT_GENERATION])'),\n creator: z.string().optional().describe('Creator attribution for the agent'),\n socials: z\n .record(\n z.enum([\n 'twitter',\n 'github',\n 'discord',\n 'telegram',\n 'linkedin',\n 'youtube',\n 'website',\n 'x',\n ] as const),\n z.string()\n )\n .optional()\n .describe(\n 'Social media links (e.g., {\"twitter\": \"@handle\", \"discord\": \"username\"})'\n ),\n properties: z\n .record(z.unknown())\n .optional()\n .describe('Custom metadata properties for the agent'),\n profilePicture: z\n .union([\n z.string().describe('URL or local file path to profile picture'),\n z.object({\n url: z.string().optional(),\n path: z.string().optional(),\n filename: z.string().optional(),\n }),\n ])\n .optional()\n .describe(\n 'Optional profile picture as URL, file path, or object with url/path/filename'\n ),\n existingProfilePictureTopicId: z\n .string()\n .optional()\n .describe(\n 'Topic ID of an existing profile picture to reuse (e.g., 0.0.12345)'\n ),\n initialBalance: z\n .number()\n .positive()\n .optional()\n .describe(\n 'Optional initial HBAR balance for the new agent account (will create new account if provided)'\n ),\n userAccountId: z\n .string()\n .optional()\n .describe(\n 'Optional account ID (e.g., 0.0.12345) to use as the agent account instead of creating a new one'\n ),\n hbarFee: z\n .number()\n .positive()\n .optional()\n .describe(\n 'Optional HBAR fee amount to charge per message on the inbound topic'\n ),\n tokenFees: z\n .array(\n z.object({\n amount: z.number().positive(),\n tokenId: z.string(),\n })\n )\n .optional()\n .describe('Optional token fees to charge per message'),\n exemptAccountIds: z\n .array(z.string())\n .optional()\n .describe('Optional account IDs to exempt from fees'),\n setAsCurrent: z\n .boolean()\n .optional()\n .describe('Whether to set as current agent (default: true)'),\n persistence: z\n .object({\n prefix: z.string().optional(),\n })\n .optional()\n .describe('Optional persistence configuration'),\n});\n\nexport class RegisterAgentTool extends BaseHCS10TransactionTool<\n typeof RegisterAgentZodSchema\n> {\n name = 'register_agent';\n description =\n 'Creates and registers the AI agent on the Hedera network. Returns JSON string with agent details (accountId, privateKey, topics) on success. Note: This tool requires multiple transactions and cannot be used in returnBytes mode.';\n specificInputSchema = RegisterAgentZodSchema;\n\n constructor(params: HCS10TransactionToolParams) {\n super(params);\n this.neverScheduleThisTool = true;\n this.requiresMultipleTransactions = true;\n }\n\n protected async callBuilderMethod(\n builder: BaseServiceBuilder,\n specificArgs: z.infer<typeof RegisterAgentZodSchema>\n ): Promise<void> {\n const hcs10Builder = builder as HCS10Builder;\n\n const params: RegisterAgentParams = {\n name: specificArgs.name,\n };\n\n if (specificArgs.description !== undefined) {\n params.bio = specificArgs.description;\n }\n if (specificArgs.alias !== undefined) {\n params.alias = specificArgs.alias;\n }\n if (specificArgs.type !== undefined) {\n params.type = specificArgs.type;\n }\n if (specificArgs.model !== undefined) {\n params.model = specificArgs.model;\n }\n if (specificArgs.capabilities !== undefined) {\n params.capabilities = specificArgs.capabilities;\n }\n if (specificArgs.creator !== undefined) {\n params.creator = specificArgs.creator;\n }\n if (specificArgs.socials !== undefined) {\n params.socials = specificArgs.socials;\n }\n if (specificArgs.properties !== undefined) {\n params.properties = specificArgs.properties;\n }\n if (specificArgs.profilePicture !== undefined) {\n if (typeof specificArgs.profilePicture === 'string') {\n params.profilePicture = specificArgs.profilePicture;\n } else {\n const profilePicObj: {\n url?: string;\n path?: string;\n filename?: string;\n } = {};\n if (specificArgs.profilePicture.url !== undefined) {\n profilePicObj.url = specificArgs.profilePicture.url;\n }\n if (specificArgs.profilePicture.path !== undefined) {\n profilePicObj.path = specificArgs.profilePicture.path;\n }\n if (specificArgs.profilePicture.filename !== undefined) {\n profilePicObj.filename = specificArgs.profilePicture.filename;\n }\n params.profilePicture = profilePicObj;\n }\n }\n if (specificArgs.existingProfilePictureTopicId !== undefined) {\n params.existingProfilePictureTopicId =\n specificArgs.existingProfilePictureTopicId;\n }\n if (specificArgs.userAccountId !== undefined) {\n params.userAccountId = specificArgs.userAccountId;\n }\n if (specificArgs.hbarFee !== undefined) {\n params.hbarFee = specificArgs.hbarFee;\n }\n if (specificArgs.tokenFees !== undefined) {\n params.tokenFees = specificArgs.tokenFees;\n }\n if (specificArgs.exemptAccountIds !== undefined) {\n params.exemptAccountIds = specificArgs.exemptAccountIds;\n }\n if (specificArgs.initialBalance !== undefined) {\n params.initialBalance = specificArgs.initialBalance;\n }\n\n await hcs10Builder.registerAgent(params);\n }\n}"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"standards-agent-kit.es5.js","sources":["../../src/tools/hcs10/RegisterAgentTool.ts"],"sourcesContent":["import { AIAgentCapability } from '@hashgraphonline/standards-sdk';\nimport { z } from 'zod';\nimport { BaseServiceBuilder } from 'hedera-agent-kit';\nimport { CallbackManagerForToolRun } from '@langchain/core/callbacks/manager';\nimport {\n HCS10Builder,\n RegisterAgentParams,\n} from '../../builders/hcs10/hcs10-builder';\nimport { BaseHCS10TransactionTool } from './base-hcs10-tools';\nimport { HCS10TransactionToolParams } from './hcs10-tool-params';\nimport { RegisteredAgent } from '../../state/state-types';\n\nconst RegisterAgentZodSchema = z.object({\n name: z\n .string()\n .min(1)\n .max(50)\n .describe('A unique name for the agent (1-50 characters)'),\n description: z\n .string()\n .max(500)\n .optional()\n .describe('Optional bio description for the agent (max 500 characters)'),\n alias: z\n .string()\n .optional()\n .transform((val) => {\n if (!val || val.toLowerCase().includes('random')) {\n const timestamp = Date.now().toString(36);\n const randomChars = Math.random().toString(36);\n return `bot${timestamp}${randomChars}`;\n }\n return val;\n })\n .describe(\n 'Optional custom username/alias for the agent. Use \"random\" to generate a unique alias'\n ),\n type: z\n .enum(['autonomous', 'manual'])\n .optional()\n .describe('Agent type (default: autonomous)'),\n model: z\n .string()\n .optional()\n .describe('AI model identifier (default: agent-model-2024)'),\n capabilities: z\n .array(z.nativeEnum(AIAgentCapability))\n .optional()\n .describe('Array of agent capabilities (default: [TEXT_GENERATION])'),\n creator: z.string().optional().describe('Creator attribution for the agent'),\n socials: z\n .record(\n z.enum([\n 'twitter',\n 'github',\n 'discord',\n 'telegram',\n 'linkedin',\n 'youtube',\n 'website',\n 'x',\n ] as const),\n z.string()\n )\n .optional()\n .describe(\n 'Social media links (e.g., {\"twitter\": \"@handle\", \"discord\": \"username\"})'\n ),\n properties: z\n .record(z.unknown())\n .optional()\n .describe('Custom metadata properties for the agent'),\n profilePicture: z\n .union([\n z.string().describe('URL or local file path to profile picture'),\n z.object({\n url: z.string().optional(),\n path: z.string().optional(),\n filename: z.string().optional(),\n }),\n ])\n .optional()\n .describe(\n 'Optional profile picture as URL, file path, or object with url/path/filename'\n ),\n existingProfilePictureTopicId: z\n .string()\n .optional()\n .describe(\n 'Topic ID of an existing profile picture to reuse (e.g., 0.0.12345)'\n ),\n initialBalance: z\n .number()\n .positive()\n .optional()\n .describe(\n 'Optional initial HBAR balance for the new agent account (will create new account if provided)'\n ),\n userAccountId: z\n .string()\n .optional()\n .describe(\n 'Optional account ID (e.g., 0.0.12345) to use as the agent account instead of creating a new one'\n ),\n hbarFee: z\n .number()\n .positive()\n .optional()\n .describe(\n 'Optional HBAR fee amount to charge per message on the inbound topic'\n ),\n tokenFees: z\n .array(\n z.object({\n amount: z.number().positive(),\n tokenId: z.string(),\n })\n )\n .optional()\n .describe('Optional token fees to charge per message'),\n exemptAccountIds: z\n .array(z.string())\n .optional()\n .describe('Optional account IDs to exempt from fees'),\n setAsCurrent: z\n .boolean()\n .optional()\n .describe('Whether to set as current agent (default: true)'),\n persistence: z\n .object({\n prefix: z.string().optional(),\n })\n .optional()\n .describe('Optional persistence configuration'),\n});\n\nexport class RegisterAgentTool extends BaseHCS10TransactionTool<\n typeof RegisterAgentZodSchema\n> {\n name = 'register_agent';\n description =\n 'Creates and registers the AI agent on the Hedera network. Returns JSON string with agent details (accountId, privateKey, topics) on success. Note: This tool requires multiple transactions and cannot be used in returnBytes mode. If alias is set to \"random\" or contains \"random\", a unique alias will be generated.';\n specificInputSchema = RegisterAgentZodSchema;\n private specificArgs: z.infer<typeof RegisterAgentZodSchema> | undefined;\n\n constructor(params: HCS10TransactionToolParams) {\n super(params);\n this.neverScheduleThisTool = true;\n this.requiresMultipleTransactions = true;\n }\n\n protected async callBuilderMethod(\n builder: BaseServiceBuilder,\n specificArgs: z.infer<typeof RegisterAgentZodSchema>\n ): Promise<void> {\n const hcs10Builder = builder as HCS10Builder;\n this.specificArgs = specificArgs;\n const params: RegisterAgentParams = {\n name: specificArgs.name,\n };\n\n if (specificArgs.description !== undefined) {\n params.bio = specificArgs.description;\n }\n if (specificArgs.alias !== undefined) {\n params.alias = specificArgs.alias;\n } else {\n const randomSuffix = Date.now().toString(36);\n params.alias = `${specificArgs.name}${randomSuffix}`;\n }\n if (specificArgs.type !== undefined) {\n params.type = specificArgs.type;\n }\n if (specificArgs.model !== undefined) {\n params.model = specificArgs.model;\n }\n if (specificArgs.capabilities !== undefined) {\n params.capabilities = specificArgs.capabilities;\n }\n if (specificArgs.creator !== undefined) {\n params.creator = specificArgs.creator;\n }\n if (specificArgs.socials !== undefined) {\n params.socials = specificArgs.socials;\n }\n if (specificArgs.properties !== undefined) {\n params.properties = specificArgs.properties;\n }\n if (specificArgs.profilePicture !== undefined) {\n if (typeof specificArgs.profilePicture === 'string') {\n params.profilePicture = specificArgs.profilePicture;\n } else {\n const profilePicObj: {\n url?: string;\n path?: string;\n filename?: string;\n } = {};\n if (specificArgs.profilePicture.url !== undefined) {\n profilePicObj.url = specificArgs.profilePicture.url;\n }\n if (specificArgs.profilePicture.path !== undefined) {\n profilePicObj.path = specificArgs.profilePicture.path;\n }\n if (specificArgs.profilePicture.filename !== undefined) {\n profilePicObj.filename = specificArgs.profilePicture.filename;\n }\n params.profilePicture = profilePicObj;\n }\n }\n if (specificArgs.existingProfilePictureTopicId !== undefined) {\n params.existingProfilePictureTopicId =\n specificArgs.existingProfilePictureTopicId;\n }\n if (specificArgs.userAccountId !== undefined) {\n params.userAccountId = specificArgs.userAccountId;\n }\n if (specificArgs.hbarFee !== undefined) {\n params.hbarFee = specificArgs.hbarFee;\n }\n if (specificArgs.tokenFees !== undefined) {\n params.tokenFees = specificArgs.tokenFees;\n }\n if (specificArgs.exemptAccountIds !== undefined) {\n params.exemptAccountIds = specificArgs.exemptAccountIds;\n }\n if (specificArgs.initialBalance !== undefined) {\n params.initialBalance = specificArgs.initialBalance;\n }\n\n await hcs10Builder.registerAgent(params);\n }\n\n /**\n * Override _call to intercept the result and save agent to state if needed\n */\n protected override async _call(\n args: z.infer<ReturnType<this['schema']>>,\n runManager?: CallbackManagerForToolRun\n ): Promise<string> {\n const result = await super._call(args, runManager);\n\n const shouldSetAsCurrent = this.specificArgs?.setAsCurrent !== false;\n\n if (this.specificArgs && shouldSetAsCurrent) {\n try {\n const parsed = JSON.parse(result);\n if (parsed.rawResult) {\n this._handleRegistrationResult(parsed.rawResult);\n } else if (parsed.state || parsed.accountId || parsed.metadata) {\n this._handleRegistrationResult(parsed);\n }\n } catch (e) {}\n }\n\n return result;\n }\n\n /**\n * Extract agent data from registration result and save to state\n */\n private _handleRegistrationResult(rawResult: any): void {\n let accountId = rawResult.accountId || rawResult.metadata?.accountId;\n\n if (!accountId && rawResult.state?.createdResources) {\n const accountResource = rawResult.state.createdResources.find(\n (r: string) => r.startsWith('account:')\n );\n if (accountResource) {\n accountId = accountResource.split(':')[1];\n }\n }\n\n const inboundTopicId =\n rawResult.inboundTopicId ||\n rawResult.metadata?.inboundTopicId ||\n rawResult.state?.inboundTopicId;\n\n const outboundTopicId =\n rawResult.outboundTopicId ||\n rawResult.metadata?.outboundTopicId ||\n rawResult.state?.outboundTopicId;\n\n const profileTopicId =\n rawResult.profileTopicId ||\n rawResult.metadata?.profileTopicId ||\n rawResult.state?.profileTopicId;\n\n const privateKey = rawResult.privateKey || rawResult.metadata?.privateKey;\n\n if (accountId && inboundTopicId && outboundTopicId && this.specificArgs) {\n const registeredAgent: RegisteredAgent = {\n name: this.specificArgs.name,\n accountId,\n inboundTopicId,\n outboundTopicId,\n profileTopicId,\n privateKey,\n };\n\n const hcs10Builder = this.getServiceBuilder() as HCS10Builder;\n const stateManager = hcs10Builder.getStateManager();\n if (stateManager) {\n stateManager.setCurrentAgent(registeredAgent);\n\n if (stateManager.persistAgentData) {\n const prefix =\n this.specificArgs.persistence?.prefix ||\n this.specificArgs.name.toUpperCase().replace(/[^A-Z0-9]/g, '_');\n stateManager\n .persistAgentData(registeredAgent, {\n type: 'env-file',\n prefix: prefix,\n })\n .catch(() => {});\n }\n }\n }\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,12 +1,13 @@
1
1
  import { AIAgentCapability } from '@hashgraphonline/standards-sdk';
2
2
  import { z } from 'zod';
3
3
  import { BaseServiceBuilder } from 'hedera-agent-kit';
4
+ import { CallbackManagerForToolRun } from '@langchain/core/callbacks/manager';
4
5
  import { BaseHCS10TransactionTool } from './base-hcs10-tools';
5
6
  import { HCS10TransactionToolParams } from './hcs10-tool-params';
6
7
  declare const RegisterAgentZodSchema: z.ZodObject<{
7
8
  name: z.ZodString;
8
9
  description: z.ZodOptional<z.ZodString>;
9
- alias: z.ZodOptional<z.ZodString>;
10
+ alias: z.ZodEffects<z.ZodOptional<z.ZodString>, string, string | undefined>;
10
11
  type: z.ZodOptional<z.ZodEnum<["autonomous", "manual"]>>;
11
12
  model: z.ZodOptional<z.ZodString>;
12
13
  capabilities: z.ZodOptional<z.ZodArray<z.ZodNativeEnum<typeof AIAgentCapability>, "many">>;
@@ -51,6 +52,7 @@ declare const RegisterAgentZodSchema: z.ZodObject<{
51
52
  }>>;
52
53
  }, "strip", z.ZodTypeAny, {
53
54
  name: string;
55
+ alias: string;
54
56
  tokenFees?: {
55
57
  amount: number;
56
58
  tokenId: string;
@@ -58,7 +60,6 @@ declare const RegisterAgentZodSchema: z.ZodObject<{
58
60
  exemptAccountIds?: string[] | undefined;
59
61
  type?: "autonomous" | "manual" | undefined;
60
62
  description?: string | undefined;
61
- alias?: string | undefined;
62
63
  model?: string | undefined;
63
64
  capabilities?: AIAgentCapability[] | undefined;
64
65
  creator?: string | undefined;
@@ -112,7 +113,7 @@ export declare class RegisterAgentTool extends BaseHCS10TransactionTool<typeof R
112
113
  specificInputSchema: z.ZodObject<{
113
114
  name: z.ZodString;
114
115
  description: z.ZodOptional<z.ZodString>;
115
- alias: z.ZodOptional<z.ZodString>;
116
+ alias: z.ZodEffects<z.ZodOptional<z.ZodString>, string, string | undefined>;
116
117
  type: z.ZodOptional<z.ZodEnum<["autonomous", "manual"]>>;
117
118
  model: z.ZodOptional<z.ZodString>;
118
119
  capabilities: z.ZodOptional<z.ZodArray<z.ZodNativeEnum<typeof AIAgentCapability>, "many">>;
@@ -157,6 +158,7 @@ export declare class RegisterAgentTool extends BaseHCS10TransactionTool<typeof R
157
158
  }>>;
158
159
  }, "strip", z.ZodTypeAny, {
159
160
  name: string;
161
+ alias: string;
160
162
  tokenFees?: {
161
163
  amount: number;
162
164
  tokenId: string;
@@ -164,7 +166,6 @@ export declare class RegisterAgentTool extends BaseHCS10TransactionTool<typeof R
164
166
  exemptAccountIds?: string[] | undefined;
165
167
  type?: "autonomous" | "manual" | undefined;
166
168
  description?: string | undefined;
167
- alias?: string | undefined;
168
169
  model?: string | undefined;
169
170
  capabilities?: AIAgentCapability[] | undefined;
170
171
  creator?: string | undefined;
@@ -212,7 +213,16 @@ export declare class RegisterAgentTool extends BaseHCS10TransactionTool<typeof R
212
213
  prefix?: string | undefined;
213
214
  } | undefined;
214
215
  }>;
216
+ private specificArgs;
215
217
  constructor(params: HCS10TransactionToolParams);
216
218
  protected callBuilderMethod(builder: BaseServiceBuilder, specificArgs: z.infer<typeof RegisterAgentZodSchema>): Promise<void>;
219
+ /**
220
+ * Override _call to intercept the result and save agent to state if needed
221
+ */
222
+ protected _call(args: z.infer<ReturnType<this['schema']>>, runManager?: CallbackManagerForToolRun): Promise<string>;
223
+ /**
224
+ * Extract agent data from registration result and save to state
225
+ */
226
+ private _handleRegistrationResult;
217
227
  }
218
228
  export {};
@@ -104,6 +104,10 @@ export declare class HCS10Builder extends BaseServiceBuilder {
104
104
  * Get the network type
105
105
  */
106
106
  getNetwork(): StandardNetworkType;
107
+ /**
108
+ * Get state manager instance
109
+ */
110
+ getStateManager(): IStateManager | undefined;
107
111
  /**
108
112
  * Get account and signer information
109
113
  */