@finalai/agent-definition 0.1.2 → 0.1.4
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.
- package/HOSTING.md +234 -0
- package/README.md +7 -0
- package/dist/compiler-assets/{chunk-TATN3PYK.ts → chunk-2ZRYQO4Q.ts} +4 -4
- package/dist/compiler-assets/{chunk-HGW4YHAY.ts → chunk-3K4C4SVG.ts} +9 -0
- package/dist/compiler-assets/{chunk-7VSSVZM4.ts → chunk-4A66SVBJ.ts} +4 -4
- package/dist/compiler-assets/{chunk-CWWRTRWW.ts → chunk-4E5HECVD.ts} +1 -1
- package/dist/compiler-assets/{chunk-7QP2CKPI.ts → chunk-4X2DS5BR.ts} +1 -1
- package/dist/compiler-assets/{chunk-ZDLVA6XF.ts → chunk-5NTKRRMC.ts} +112 -21
- package/dist/compiler-assets/{chunk-2CZRHOLL.ts → chunk-7XUPKRZU.ts} +1 -1
- package/dist/compiler-assets/{chunk-OWC6SFFF.ts → chunk-APU2VKLW.ts} +52 -12
- package/dist/compiler-assets/{chunk-HFS4KLEL.ts → chunk-D3SB4CCB.ts} +1 -1
- package/dist/compiler-assets/{chunk-HNPUTP35.ts → chunk-GCFSHHH2.ts} +2 -2
- package/dist/compiler-assets/{chunk-5BK6FVRE.ts → chunk-IF6MR7JF.ts} +2 -2
- package/dist/compiler-assets/{chunk-LUSAAV4L.ts → chunk-IZGOMT7K.ts} +2 -2
- package/dist/compiler-assets/{chunk-GTUZOATD.ts → chunk-JGQ2KAN7.ts} +1 -1
- package/dist/compiler-assets/{chunk-NYTOYKKF.ts → chunk-K6D7ZK74.ts} +3 -3
- package/dist/compiler-assets/{chunk-WMXMVFHM.ts → chunk-K7V4IMOB.ts} +3 -3
- package/dist/compiler-assets/{chunk-VHXHUU7L.ts → chunk-LHMUAIYJ.ts} +1 -1
- package/dist/compiler-assets/{chunk-SKTNMUO7.ts → chunk-MSE7X5YG.ts} +25 -2
- package/dist/compiler-assets/chunk-PFLSBTJA.ts +39 -0
- package/dist/compiler-assets/{chunk-XHKPWT3G.ts → chunk-QJ26GEUM.ts} +1 -1
- package/dist/compiler-assets/{chunk-JPY4L2UJ.ts → chunk-RIEMTCTV.ts} +12 -8
- package/dist/compiler-assets/chunk-RMIQJHSL.ts +0 -0
- package/dist/compiler-assets/chunk-TJ536HI4.ts +61 -0
- package/dist/compiler-assets/{chunk-QMWTDPNT.ts → chunk-TJZS457N.ts} +3 -3
- package/dist/compiler-assets/{chunk-JIPNTA56.ts → chunk-TM36NO3C.ts} +1 -1
- package/dist/compiler-assets/{chunk-MZMSKIKU.ts → chunk-UBR53WBH.ts} +33 -8
- package/dist/compiler-assets/chunk-ULI5WWRR.ts +40 -0
- package/dist/compiler-assets/chunk-W6DOJA4W.ts +3763 -0
- package/dist/compiler-assets/{chunk-EVQIK62B.ts → chunk-YW7HDGQA.ts} +11 -7
- package/dist/compiler-assets/{chunk-BLB6JGLO.ts → chunk-YWFGIPHD.ts} +27 -24
- package/dist/compiler-assets/{chunk-QMKWAFVZ.ts → chunk-Z5TO7RSJ.ts} +5 -3
- package/dist/compiler-assets/src/authoring/agent.ts +4 -4
- package/dist/compiler-assets/src/authoring/approval.ts +7 -7
- package/dist/compiler-assets/src/authoring/brand.ts +3 -3
- package/dist/compiler-assets/src/authoring/channels.ts +6 -6
- package/dist/compiler-assets/src/authoring/connections.ts +14 -4
- package/dist/compiler-assets/src/authoring/credentials.ts +7 -6
- package/dist/compiler-assets/src/authoring/dynamic.ts +9 -4
- package/dist/compiler-assets/src/authoring/harness.ts +9 -9
- package/dist/compiler-assets/src/authoring/hooks.ts +10 -8
- package/dist/compiler-assets/src/authoring/index.ts +33 -26
- package/dist/compiler-assets/src/authoring/instructions.ts +10 -5
- package/dist/compiler-assets/src/authoring/sandbox.ts +10 -10
- package/dist/compiler-assets/src/authoring/schedules.ts +4 -4
- package/dist/compiler-assets/src/authoring/skills.ts +4 -4
- package/dist/compiler-assets/src/authoring/tools.ts +10 -8
- package/dist/compiler-assets/src/compatibility.ts +11 -11
- package/dist/compiler-assets/src/hosted-bindings.ts +15 -0
- package/dist/compiler-assets/src/index.ts +54 -41
- package/dist/compiler-assets/src/manifest.ts +8 -4
- package/dist/compiler-assets/src/resolve.ts +5 -5
- package/dist/compiler-assets/src/runtime/bundle.ts +22 -20
- package/dist/compiler-assets/src/runtime/describe.ts +14 -12
- package/dist/compiler-assets/src/runtime/described.ts +19 -12
- package/dist/compiler-assets/src/runtime/isolate.ts +18 -16
- package/dist/compiler-assets/src/runtime/lower.ts +13 -11
- package/dist/compiler-assets/src/runtime/schema-validation.ts +4 -4
- package/dist/compiler-assets/src/runtime/values.ts +2 -2
- package/dist/modules/authoring/agent.d.mts +3 -2
- package/dist/modules/authoring/agent.mjs.map +2 -2
- package/dist/modules/authoring/connections.d.mts +15 -2
- package/dist/modules/authoring/connections.mjs +36 -0
- package/dist/modules/authoring/connections.mjs.map +2 -2
- package/dist/modules/authoring/context.d.mts +3 -1
- package/dist/modules/authoring/context.mjs.map +2 -2
- package/dist/modules/authoring/dynamic.d.mts +3 -1
- package/dist/modules/authoring/dynamic.mjs +19 -1
- package/dist/modules/authoring/dynamic.mjs.map +2 -2
- package/dist/modules/authoring/harness.mjs +2 -0
- package/dist/modules/authoring/harness.mjs.map +2 -2
- package/dist/modules/authoring/hooks.d.mts +2 -1
- package/dist/modules/authoring/hooks.mjs.map +2 -2
- package/dist/modules/authoring/index.d.mts +4 -2
- package/dist/modules/authoring/index.mjs +4 -1
- package/dist/modules/authoring/index.mjs.map +2 -2
- package/dist/modules/authoring/sandbox.d.mts +2 -1
- package/dist/modules/authoring/sandbox.mjs.map +2 -2
- package/dist/modules/compiler/assemble.mjs +6 -1
- package/dist/modules/compiler/assemble.mjs.map +2 -2
- package/dist/modules/compiler/index.d.mts +2 -1
- package/dist/modules/compiler/index.mjs +18 -0
- package/dist/modules/compiler/index.mjs.map +2 -2
- package/dist/modules/compiler/local-isolate.d.mts +2 -1
- package/dist/modules/compiler/local-isolate.mjs +6 -1
- package/dist/modules/compiler/local-isolate.mjs.map +2 -2
- package/dist/modules/hosted-bindings.d.mts +10 -0
- package/dist/modules/hosted-bindings.mjs +36 -0
- package/dist/modules/hosted-bindings.mjs.map +7 -0
- package/dist/modules/index.d.mts +2 -0
- package/dist/modules/index.mjs +2 -0
- package/dist/modules/index.mjs.map +2 -2
- package/dist/modules/manifest.d.mts +2 -2
- package/dist/modules/manifest.mjs +4 -0
- package/dist/modules/manifest.mjs.map +2 -2
- package/dist/modules/resolve.mjs +4 -0
- package/dist/modules/resolve.mjs.map +2 -2
- package/dist/modules/runtime/describe.mjs +25 -4
- package/dist/modules/runtime/describe.mjs.map +2 -2
- package/dist/modules/runtime/described.d.mts +40 -4
- package/dist/modules/runtime/described.mjs +7 -2
- package/dist/modules/runtime/described.mjs.map +2 -2
- package/dist/modules/runtime/isolate.d.mts +2 -0
- package/dist/modules/runtime/isolate.mjs +7 -4
- package/dist/modules/runtime/isolate.mjs.map +2 -2
- package/dist/modules/runtime/lower.mjs +76 -14
- package/dist/modules/runtime/lower.mjs.map +2 -2
- package/dist/modules/runtime/schema-validation.mjs +19 -2
- package/dist/modules/runtime/schema-validation.mjs.map +2 -2
- package/fixtures/assistant/agent/agent.ts +7 -0
- package/package.json +4 -3
- package/dist/compiler-assets/chunk-GNR7XBPN.ts +0 -3364
- package/dist/compiler-assets/chunk-JNJE72EH.ts +0 -10
- package/dist/compiler-assets/chunk-T6WG4L4M.ts +0 -19
- /package/dist/compiler-assets/{chunk-6WR3PGNF.ts → chunk-CIWWFQHL.ts} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../src/runtime/schema-validation.ts"],
|
|
4
|
-
"sourcesContent": ["import {\n jsonObjectSchema,\n jsonValueSchema,\n type JsonObject,\n type JsonValue,\n} from '@finalai/agent-provider';\nimport { compileSchema, isSchemaNode, type SchemaNode } from 'json-schema-library';\nimport { remotes } from 'json-schema-library/remotes';\nimport * as z from 'zod';\nimport { callableSchema, fieldOf, type AuthoredValue } from \"./values.mjs\";\n\nexport enum SchemaIo {\n Input = 'input',\n Output = 'output',\n}\n\nconst dialects = new Set([\n 'https://json-schema.org/draft/2020-12/schema',\n 'https://json-schema.org/draft/2019-09/schema',\n 'http://json-schema.org/draft-07/schema#',\n 'https://json-schema.org/draft-07/schema#',\n 'http://json-schema.org/draft-06/schema#',\n 'https://json-schema.org/draft-06/schema#',\n 'http://json-schema.org/draft-04/schema#',\n 'https://json-schema.org/draft-04/schema#',\n]);\nconst vocabularies = new Set([\n 'https://json-schema.org/draft/2020-12/vocab/core',\n 'https://json-schema.org/draft/2020-12/vocab/applicator',\n 'https://json-schema.org/draft/2020-12/vocab/validation',\n 'https://json-schema.org/draft/2020-12/vocab/unevaluated',\n 'https://json-schema.org/draft/2020-12/vocab/meta-data',\n 'https://json-schema.org/draft/2020-12/vocab/format-annotation',\n 'https://json-schema.org/draft/2020-12/vocab/format-assertion',\n 'https://json-schema.org/draft/2020-12/vocab/content',\n 'https://json-schema.org/draft/2019-09/vocab/core',\n 'https://json-schema.org/draft/2019-09/vocab/applicator',\n 'https://json-schema.org/draft/2019-09/vocab/validation',\n 'https://json-schema.org/draft/2019-09/vocab/meta-data',\n 'https://json-schema.org/draft/2019-09/vocab/format',\n 'https://json-schema.org/draft/2019-09/vocab/content',\n]);\nconst declarationSchema = z.looseObject({\n $schema: z.string().optional(),\n $vocabulary: z.record(z.string(), z.boolean()).optional(),\n});\n\nconst checkDialect = (value: AuthoredValue): void => {\n if (z.boolean().safeParse(value).success) return;\n const schema = declarationSchema.parse(value);\n if (schema.$schema != null && !dialects.has(schema.$schema))\n throw new Error(`Unsupported JSON Schema dialect ${schema.$schema}`);\n for (const [name, required] of Object.entries(schema.$vocabulary ?? {})) {\n if (required && !vocabularies.has(name))\n throw new Error(`Unsupported required JSON Schema vocabulary ${name}`);\n }\n};\n\nconst dialectByVersion = {\n 'draft-04': 'http://json-schema.org/draft-04/schema#',\n 'draft-06': 'http://json-schema.org/draft-06/schema#',\n 'draft-07': 'http://json-schema.org/draft-07/schema#',\n 'draft-2019-09': 'https://json-schema.org/draft/2019-09/schema',\n 'draft-2020-12': 'https://json-schema.org/draft/2020-12/schema',\n} satisfies Record<string, string>;\nlet metaRoot: SchemaNode | null = null;\nconst metaSchemas = (): SchemaNode => {\n if (metaRoot != null) return metaRoot;\n const schemas = z\n .array(jsonObjectSchema)\n .parse(remotes)\n .map((schema) => {\n const identity = z\n .string()\n .parse(schema.$id ?? schema.id)\n .replace(/#$/, '');\n const remote: JsonObject = { ...schema, $id: identity };\n if (schema.id != null) remote['id'] = identity;\n return remote;\n });\n metaRoot = compileSchema(\n {},\n { remotes: schemas, formatAssertion: true, throwOnInvalidRef: true },\n );\n return metaRoot;\n};\n\nconst schemaKeywords = new Set([\n 'additionalItems',\n 'additionalProperties',\n 'contains',\n 'propertyNames',\n 'unevaluatedItems',\n 'unevaluatedProperties',\n 'not',\n 'if',\n 'then',\n 'else',\n]);\nconst schemaMaps = new Set([\n 'properties',\n 'patternProperties',\n '$defs',\n 'definitions',\n 'dependentSchemas',\n 'dependencies',\n]);\nconst schemaArrays = new Set(['allOf', 'anyOf', 'oneOf', 'prefixItems']);\nconst childPlaceholder = (value: JsonValue): JsonValue =>\n jsonObjectSchema.safeParse(value).success ? {} : value;\n\n// Validate each parsed node against its own dialect. Child schemas are checked\n// separately, so an embedded resource can declare a different dialect.\nconst shallowDeclaration = (schema: JsonObject): JsonObject =>\n Object.fromEntries(\n Object.entries(schema).map(([key, value]) => {\n if (schemaKeywords.has(key)) return [key, childPlaceholder(value)];\n if ((schemaArrays.has(key) || key === 'items') && Array.isArray(value))\n return [key, value.map(childPlaceholder)];\n if (key === 'items') return [key, childPlaceholder(value)];\n const object = jsonObjectSchema.safeParse(value);\n if (schemaMaps.has(key) && object.success)\n return [\n key,\n Object.fromEntries(\n Object.entries(object.data).map(([name, child]) => [name, childPlaceholder(child)]),\n ),\n ];\n return [key, value];\n }),\n );\nconst checkDeclaration = (node: SchemaNode): void => {\n if (z.boolean().safeParse(node.schema).success) return;\n const schema = jsonObjectSchema.parse(node.schema);\n checkDialect(schema);\n const dialect = Object.entries(dialectByVersion).find(\n ([version]) => version === node.context.version,\n )?.[1];\n if (dialect == null) throw new Error(`Unsupported JSON Schema version ${node.context.version}`);\n const meta = metaSchemas().getNodeRef(dialect);\n if (!isSchemaNode(meta)) throw new Error(`Missing JSON Schema metaschema ${dialect}`);\n const result = meta.validate(shallowDeclaration(schema));\n if (!result.valid) throw new Error(result.errors.map((issue) => issue.message).join('; '));\n};\n\nconst canonicalJson = (value: JsonValue): JsonValue => {\n if (Array.isArray(value)) return value.map(canonicalJson);\n const object = jsonObjectSchema.safeParse(value);\n if (!object.success) return value;\n return Object.fromEntries(\n Object.entries(object.data)\n .sort(([left], [right]) => left.localeCompare(right))\n .map(([key, item]) => [key, canonicalJson(item)]),\n );\n};\n\n// Compile a private tree for each validation. The interpreter never fetches\n// references or shares a schema registry, and retains no tool data between calls.\nconst validatorFor = (schema: AuthoredValue): SchemaNode => {\n const text = JSON.stringify(schema);\n if (text == null) throw new Error('Expected a JSON Schema object');\n const parsed = jsonObjectSchema.parse(canonicalJson(jsonObjectSchema.parse(JSON.parse(text))));\n checkDialect(parsed);\n const node = compileSchema(parsed, { formatAssertion: true, throwOnInvalidRef: true });\n if (node.schemaErrors != null && node.schemaErrors.length > 0)\n throw new Error(node.schemaErrors.map((issue) => issue.message).join('; '));\n // Check even unused declarations: an unresolved reference must fail publish,\n // rather than surviving until some input happens to select that branch.\n const nodes = new Set([node, ...Object.values(node.context.refs)]);\n for (const child of nodes) {\n checkDeclaration(child);\n const ref =\n fieldOf(child.schema, '$ref') ??\n fieldOf(child.schema, '$dynamicRef') ??\n fieldOf(child.schema, '$recursiveRef');\n if (ref == null) continue;\n const resolved = child.resolveRef();\n if (!isSchemaNode(resolved))\n throw new Error(`Unresolved JSON Schema reference ${String(ref)} at ${child.schemaLocation}`);\n }\n return node;\n};\n\nexport const jsonSchemaError = (schema: AuthoredValue, value: AuthoredValue): string | null => {\n const validator = validatorFor(schema);\n const parsed = jsonValueSchema.safeParse(value);\n if (!parsed.success) return 'Expected a JSON-compatible value';\n // JSON object order is immaterial, including inside enum assertions.\n const result = validator.validate(canonicalJson(parsed.data));\n return result.valid ? null : result.errors.map((issue) => issue.message).join('; ');\n};\n\nexport const jsonSchemaDeclarationError = (schema: AuthoredValue): string | null => {\n try {\n validatorFor(schema);\n return null;\n } catch (cause) {\n return cause instanceof Error ? cause.message : String(cause);\n }\n};\n\nexport const standardValidatorSchema = z.looseObject({\n '~standard': z.looseObject({\n version: z.literal(1),\n vendor: z.string(),\n validate: callableSchema,\n }),\n});\nconst validationResultSchema = z.looseObject({\n value: z.unknown().optional(),\n issues: z.array(z.looseObject({ message: z.string().optional() })).optional(),\n});\n\nexport const validateSchemaValue = async (args: {\n schema: AuthoredValue;\n value: AuthoredValue;\n what: string;\n}): Promise<AuthoredValue> => {\n if (args.schema == null) return args.value;\n const standard = standardValidatorSchema.safeParse(args.schema);\n if (standard.success) {\n // Zod's Standard Schema validator retries asynchronous transforms after a\n // synchronous attempt; its public async parser performs them only once.\n if (standard.data['~standard'].vendor === 'zod') {\n const parser = callableSchema.safeParse(fieldOf(args.schema, 'safeParseAsync'));\n if (parser.success) {\n const result = z\n .looseObject({\n success: z.boolean(),\n data: z.unknown().optional(),\n error: z.looseObject({ issues: z.array(z.object({ message: z.string() })) }).optional(),\n })\n .parse(await parser.data.call(args.schema, args.value));\n if (!result.success)\n throw new Error(\n `Invalid ${args.what}: ${result.error?.issues.map((issue) => issue.message).join('; ') ?? 'invalid'}`,\n );\n return result.data;\n }\n }\n const raw = await standard.data['~standard'].validate.call(\n fieldOf(args.schema, '~standard'),\n args.value,\n );\n const result = validationResultSchema.parse(raw);\n if (result.issues != null)\n throw new Error(\n `Invalid ${args.what}: ${result.issues.map((issue) => issue.message ?? 'invalid').join('; ') || 'invalid'}`,\n );\n if (!Object.hasOwn(result, 'value'))\n throw new Error(`Invalid ${args.what}: schema validator returned no value`);\n return result.value;\n }\n const error = jsonSchemaError(args.schema, args.value);\n if (error != null) throw new Error(`Invalid ${args.what}: ${error}`);\n return args.value;\n};\n\n// Published results have already been transformed. Never run their input\n// validator again: use the output JSON Schema for synchronous hook narrowing.\nexport const resultMatchesSchema = (schema: AuthoredValue, value: AuthoredValue): boolean => {\n if (schema == null) return true;\n try {\n const standard = standardValidatorSchema.safeParse(schema);\n if (!standard.success) return jsonSchemaError(schema, value) == null;\n const jsonSchemas = fieldOf(fieldOf(schema, '~standard'), 'jsonSchema');\n const converter = callableSchema.safeParse(fieldOf(jsonSchemas, SchemaIo.Output));\n if (!converter.success) return false;\n return (\n jsonSchemaError(converter.data.call(jsonSchemas, { target: 'draft-2020-12' }), value) == null\n );\n } catch {\n return false;\n }\n};\n"],
|
|
5
|
-
"mappings": "AAAA;AAAA,EACE;AAAA,EACA;AAAA,OAGK;AACP,SAAS,eAAe
|
|
4
|
+
"sourcesContent": ["import {\n jsonObjectSchema,\n jsonValueSchema,\n type JsonObject,\n type JsonValue,\n} from '@finalai/agent-provider';\nimport {\n compileSchema,\n draft04,\n draft06,\n draft07,\n draft2019,\n draft2020,\n isSchemaNode,\n type SchemaNode,\n} from 'json-schema-library';\nimport { formats } from 'json-schema-library/formats';\nimport { remotes } from 'json-schema-library/remotes';\nimport * as z from 'zod';\nimport { callableSchema, fieldOf, type AuthoredValue } from \"./values.mjs\";\n\nexport enum SchemaIo {\n Input = 'input',\n Output = 'output',\n}\n\n// Include URI formats in private drafts without mutating the library defaults.\nconst validationDrafts = [draft04, draft06, draft07, draft2019, draft2020].map((draft) => ({\n ...draft,\n formats: { ...draft.formats, ...formats },\n}));\n\nconst dialects = new Set([\n 'https://json-schema.org/draft/2020-12/schema',\n 'https://json-schema.org/draft/2019-09/schema',\n 'http://json-schema.org/draft-07/schema#',\n 'https://json-schema.org/draft-07/schema#',\n 'http://json-schema.org/draft-06/schema#',\n 'https://json-schema.org/draft-06/schema#',\n 'http://json-schema.org/draft-04/schema#',\n 'https://json-schema.org/draft-04/schema#',\n]);\nconst vocabularies = new Set([\n 'https://json-schema.org/draft/2020-12/vocab/core',\n 'https://json-schema.org/draft/2020-12/vocab/applicator',\n 'https://json-schema.org/draft/2020-12/vocab/validation',\n 'https://json-schema.org/draft/2020-12/vocab/unevaluated',\n 'https://json-schema.org/draft/2020-12/vocab/meta-data',\n 'https://json-schema.org/draft/2020-12/vocab/format-annotation',\n 'https://json-schema.org/draft/2020-12/vocab/format-assertion',\n 'https://json-schema.org/draft/2020-12/vocab/content',\n 'https://json-schema.org/draft/2019-09/vocab/core',\n 'https://json-schema.org/draft/2019-09/vocab/applicator',\n 'https://json-schema.org/draft/2019-09/vocab/validation',\n 'https://json-schema.org/draft/2019-09/vocab/meta-data',\n 'https://json-schema.org/draft/2019-09/vocab/format',\n 'https://json-schema.org/draft/2019-09/vocab/content',\n]);\nconst declarationSchema = z.looseObject({\n $schema: z.string().optional(),\n $vocabulary: z.record(z.string(), z.boolean()).optional(),\n});\n\nconst checkDialect = (value: AuthoredValue): void => {\n if (z.boolean().safeParse(value).success) return;\n const schema = declarationSchema.parse(value);\n if (schema.$schema != null && !dialects.has(schema.$schema))\n throw new Error(`Unsupported JSON Schema dialect ${schema.$schema}`);\n for (const [name, required] of Object.entries(schema.$vocabulary ?? {})) {\n if (required && !vocabularies.has(name))\n throw new Error(`Unsupported required JSON Schema vocabulary ${name}`);\n }\n};\n\nconst dialectByVersion = {\n 'draft-04': 'http://json-schema.org/draft-04/schema#',\n 'draft-06': 'http://json-schema.org/draft-06/schema#',\n 'draft-07': 'http://json-schema.org/draft-07/schema#',\n 'draft-2019-09': 'https://json-schema.org/draft/2019-09/schema',\n 'draft-2020-12': 'https://json-schema.org/draft/2020-12/schema',\n} satisfies Record<string, string>;\nlet metaRoot: SchemaNode | null = null;\nconst metaSchemas = (): SchemaNode => {\n if (metaRoot != null) return metaRoot;\n const schemas = z\n .array(jsonObjectSchema)\n .parse(remotes)\n .map((schema) => {\n const identity = z\n .string()\n .parse(schema.$id ?? schema.id)\n .replace(/#$/, '');\n const remote: JsonObject = { ...schema, $id: identity };\n if (schema.id != null) remote['id'] = identity;\n return remote;\n });\n metaRoot = compileSchema(\n {},\n { remotes: schemas, formatAssertion: true, throwOnInvalidRef: true },\n );\n return metaRoot;\n};\n\nconst schemaKeywords = new Set([\n 'additionalItems',\n 'additionalProperties',\n 'contains',\n 'propertyNames',\n 'unevaluatedItems',\n 'unevaluatedProperties',\n 'not',\n 'if',\n 'then',\n 'else',\n]);\nconst schemaMaps = new Set([\n 'properties',\n 'patternProperties',\n '$defs',\n 'definitions',\n 'dependentSchemas',\n 'dependencies',\n]);\nconst schemaArrays = new Set(['allOf', 'anyOf', 'oneOf', 'prefixItems']);\nconst childPlaceholder = (value: JsonValue): JsonValue =>\n jsonObjectSchema.safeParse(value).success ? {} : value;\n\n// Validate each parsed node against its own dialect. Child schemas are checked\n// separately, so an embedded resource can declare a different dialect.\nconst shallowDeclaration = (schema: JsonObject): JsonObject =>\n Object.fromEntries(\n Object.entries(schema).map(([key, value]) => {\n if (schemaKeywords.has(key)) return [key, childPlaceholder(value)];\n if ((schemaArrays.has(key) || key === 'items') && Array.isArray(value))\n return [key, value.map(childPlaceholder)];\n if (key === 'items') return [key, childPlaceholder(value)];\n const object = jsonObjectSchema.safeParse(value);\n if (schemaMaps.has(key) && object.success)\n return [\n key,\n Object.fromEntries(\n Object.entries(object.data).map(([name, child]) => [name, childPlaceholder(child)]),\n ),\n ];\n return [key, value];\n }),\n );\nconst checkDeclaration = (node: SchemaNode): void => {\n if (z.boolean().safeParse(node.schema).success) return;\n const schema = jsonObjectSchema.parse(node.schema);\n checkDialect(schema);\n const dialect = Object.entries(dialectByVersion).find(\n ([version]) => version === node.context.version,\n )?.[1];\n if (dialect == null) throw new Error(`Unsupported JSON Schema version ${node.context.version}`);\n const meta = metaSchemas().getNodeRef(dialect);\n if (!isSchemaNode(meta)) throw new Error(`Missing JSON Schema metaschema ${dialect}`);\n const result = meta.validate(shallowDeclaration(schema));\n if (!result.valid) throw new Error(result.errors.map((issue) => issue.message).join('; '));\n};\n\nconst canonicalJson = (value: JsonValue): JsonValue => {\n if (Array.isArray(value)) return value.map(canonicalJson);\n const object = jsonObjectSchema.safeParse(value);\n if (!object.success) return value;\n return Object.fromEntries(\n Object.entries(object.data)\n .sort(([left], [right]) => left.localeCompare(right))\n .map(([key, item]) => [key, canonicalJson(item)]),\n );\n};\n\n// Compile a private tree for each validation. The interpreter never fetches\n// references or shares a schema registry, and retains no tool data between calls.\nconst validatorFor = (schema: AuthoredValue): SchemaNode => {\n const text = JSON.stringify(schema);\n if (text == null) throw new Error('Expected a JSON Schema object');\n const parsed = jsonObjectSchema.parse(canonicalJson(jsonObjectSchema.parse(JSON.parse(text))));\n checkDialect(parsed);\n const node = compileSchema(parsed, {\n drafts: validationDrafts,\n formatAssertion: true,\n throwOnInvalidRef: true,\n });\n if (node.schemaErrors != null && node.schemaErrors.length > 0)\n throw new Error(node.schemaErrors.map((issue) => issue.message).join('; '));\n // Check even unused declarations: an unresolved reference must fail publish,\n // rather than surviving until some input happens to select that branch.\n const nodes = new Set([node, ...Object.values(node.context.refs)]);\n for (const child of nodes) {\n checkDeclaration(child);\n const ref =\n fieldOf(child.schema, '$ref') ??\n fieldOf(child.schema, '$dynamicRef') ??\n fieldOf(child.schema, '$recursiveRef');\n if (ref == null) continue;\n const resolved = child.resolveRef();\n if (!isSchemaNode(resolved))\n throw new Error(`Unresolved JSON Schema reference ${String(ref)} at ${child.schemaLocation}`);\n }\n return node;\n};\n\nexport const jsonSchemaError = (schema: AuthoredValue, value: AuthoredValue): string | null => {\n const validator = validatorFor(schema);\n const parsed = jsonValueSchema.safeParse(value);\n if (!parsed.success) return 'Expected a JSON-compatible value';\n // JSON object order is immaterial, including inside enum assertions.\n const result = validator.validate(canonicalJson(parsed.data));\n return result.valid ? null : result.errors.map((issue) => issue.message).join('; ');\n};\n\nexport const jsonSchemaDeclarationError = (schema: AuthoredValue): string | null => {\n try {\n validatorFor(schema);\n return null;\n } catch (cause) {\n return cause instanceof Error ? cause.message : String(cause);\n }\n};\n\nexport const standardValidatorSchema = z.looseObject({\n '~standard': z.looseObject({\n version: z.literal(1),\n vendor: z.string(),\n validate: callableSchema,\n }),\n});\nconst validationResultSchema = z.looseObject({\n value: z.unknown().optional(),\n issues: z.array(z.looseObject({ message: z.string().optional() })).optional(),\n});\n\nexport const validateSchemaValue = async (args: {\n schema: AuthoredValue;\n value: AuthoredValue;\n what: string;\n}): Promise<AuthoredValue> => {\n if (args.schema == null) return args.value;\n const standard = standardValidatorSchema.safeParse(args.schema);\n if (standard.success) {\n // Zod's Standard Schema validator retries asynchronous transforms after a\n // synchronous attempt; its public async parser performs them only once.\n if (standard.data['~standard'].vendor === 'zod') {\n const parser = callableSchema.safeParse(fieldOf(args.schema, 'safeParseAsync'));\n if (parser.success) {\n const result = z\n .looseObject({\n success: z.boolean(),\n data: z.unknown().optional(),\n error: z.looseObject({ issues: z.array(z.object({ message: z.string() })) }).optional(),\n })\n .parse(await parser.data.call(args.schema, args.value));\n if (!result.success)\n throw new Error(\n `Invalid ${args.what}: ${result.error?.issues.map((issue) => issue.message).join('; ') ?? 'invalid'}`,\n );\n return result.data;\n }\n }\n const raw = await standard.data['~standard'].validate.call(\n fieldOf(args.schema, '~standard'),\n args.value,\n );\n const result = validationResultSchema.parse(raw);\n if (result.issues != null)\n throw new Error(\n `Invalid ${args.what}: ${result.issues.map((issue) => issue.message ?? 'invalid').join('; ') || 'invalid'}`,\n );\n if (!Object.hasOwn(result, 'value'))\n throw new Error(`Invalid ${args.what}: schema validator returned no value`);\n return result.value;\n }\n const error = jsonSchemaError(args.schema, args.value);\n if (error != null) throw new Error(`Invalid ${args.what}: ${error}`);\n return args.value;\n};\n\n// Published results have already been transformed. Never run their input\n// validator again: use the output JSON Schema for synchronous hook narrowing.\nexport const resultMatchesSchema = (schema: AuthoredValue, value: AuthoredValue): boolean => {\n if (schema == null) return true;\n try {\n const standard = standardValidatorSchema.safeParse(schema);\n if (!standard.success) return jsonSchemaError(schema, value) == null;\n const jsonSchemas = fieldOf(fieldOf(schema, '~standard'), 'jsonSchema');\n const converter = callableSchema.safeParse(fieldOf(jsonSchemas, SchemaIo.Output));\n if (!converter.success) return false;\n return (\n jsonSchemaError(converter.data.call(jsonSchemas, { target: 'draft-2020-12' }), value) == null\n );\n } catch {\n return false;\n }\n};\n"],
|
|
5
|
+
"mappings": "AAAA;AAAA,EACE;AAAA,EACA;AAAA,OAGK;AACP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAEK;AACP,SAAS,eAAe;AACxB,SAAS,eAAe;AACxB,YAAY,OAAO;AACnB,SAAS,gBAAgB,eAAmC;AAErD,IAAK,WAAL,kBAAKA,cAAL;AACL,EAAAA,UAAA,WAAQ;AACR,EAAAA,UAAA,YAAS;AAFC,SAAAA;AAAA,GAAA;AAMZ,MAAM,mBAAmB,CAAC,SAAS,SAAS,SAAS,WAAW,SAAS,EAAE,IAAI,CAAC,WAAW;AAAA,EACzF,GAAG;AAAA,EACH,SAAS,EAAE,GAAG,MAAM,SAAS,GAAG,QAAQ;AAC1C,EAAE;AAEF,MAAM,WAAW,oBAAI,IAAI;AAAA,EACvB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AACD,MAAM,eAAe,oBAAI,IAAI;AAAA,EAC3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AACD,MAAM,oBAAoB,EAAE,YAAY;AAAA,EACtC,SAAS,EAAE,OAAO,EAAE,SAAS;AAAA,EAC7B,aAAa,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,EAAE,SAAS;AAC1D,CAAC;AAED,MAAM,eAAe,CAAC,UAA+B;AACnD,MAAI,EAAE,QAAQ,EAAE,UAAU,KAAK,EAAE,QAAS;AAC1C,QAAM,SAAS,kBAAkB,MAAM,KAAK;AAC5C,MAAI,OAAO,WAAW,QAAQ,CAAC,SAAS,IAAI,OAAO,OAAO;AACxD,UAAM,IAAI,MAAM,mCAAmC,OAAO,OAAO,EAAE;AACrE,aAAW,CAAC,MAAM,QAAQ,KAAK,OAAO,QAAQ,OAAO,eAAe,CAAC,CAAC,GAAG;AACvE,QAAI,YAAY,CAAC,aAAa,IAAI,IAAI;AACpC,YAAM,IAAI,MAAM,+CAA+C,IAAI,EAAE;AAAA,EACzE;AACF;AAEA,MAAM,mBAAmB;AAAA,EACvB,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,iBAAiB;AAAA,EACjB,iBAAiB;AACnB;AACA,IAAI,WAA8B;AAClC,MAAM,cAAc,MAAkB;AACpC,MAAI,YAAY,KAAM,QAAO;AAC7B,QAAM,UAAU,EACb,MAAM,gBAAgB,EACtB,MAAM,OAAO,EACb,IAAI,CAAC,WAAW;AACf,UAAM,WAAW,EACd,OAAO,EACP,MAAM,OAAO,OAAO,OAAO,EAAE,EAC7B,QAAQ,MAAM,EAAE;AACnB,UAAM,SAAqB,EAAE,GAAG,QAAQ,KAAK,SAAS;AACtD,QAAI,OAAO,MAAM,KAAM,QAAO,IAAI,IAAI;AACtC,WAAO;AAAA,EACT,CAAC;AACH,aAAW;AAAA,IACT,CAAC;AAAA,IACD,EAAE,SAAS,SAAS,iBAAiB,MAAM,mBAAmB,KAAK;AAAA,EACrE;AACA,SAAO;AACT;AAEA,MAAM,iBAAiB,oBAAI,IAAI;AAAA,EAC7B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AACD,MAAM,aAAa,oBAAI,IAAI;AAAA,EACzB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AACD,MAAM,eAAe,oBAAI,IAAI,CAAC,SAAS,SAAS,SAAS,aAAa,CAAC;AACvE,MAAM,mBAAmB,CAAC,UACxB,iBAAiB,UAAU,KAAK,EAAE,UAAU,CAAC,IAAI;AAInD,MAAM,qBAAqB,CAAC,WAC1B,OAAO;AAAA,EACL,OAAO,QAAQ,MAAM,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;AAC3C,QAAI,eAAe,IAAI,GAAG,EAAG,QAAO,CAAC,KAAK,iBAAiB,KAAK,CAAC;AACjE,SAAK,aAAa,IAAI,GAAG,KAAK,QAAQ,YAAY,MAAM,QAAQ,KAAK;AACnE,aAAO,CAAC,KAAK,MAAM,IAAI,gBAAgB,CAAC;AAC1C,QAAI,QAAQ,QAAS,QAAO,CAAC,KAAK,iBAAiB,KAAK,CAAC;AACzD,UAAM,SAAS,iBAAiB,UAAU,KAAK;AAC/C,QAAI,WAAW,IAAI,GAAG,KAAK,OAAO;AAChC,aAAO;AAAA,QACL;AAAA,QACA,OAAO;AAAA,UACL,OAAO,QAAQ,OAAO,IAAI,EAAE,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,iBAAiB,KAAK,CAAC,CAAC;AAAA,QACpF;AAAA,MACF;AACF,WAAO,CAAC,KAAK,KAAK;AAAA,EACpB,CAAC;AACH;AACF,MAAM,mBAAmB,CAAC,SAA2B;AACnD,MAAI,EAAE,QAAQ,EAAE,UAAU,KAAK,MAAM,EAAE,QAAS;AAChD,QAAM,SAAS,iBAAiB,MAAM,KAAK,MAAM;AACjD,eAAa,MAAM;AACnB,QAAM,UAAU,OAAO,QAAQ,gBAAgB,EAAE;AAAA,IAC/C,CAAC,CAAC,OAAO,MAAM,YAAY,KAAK,QAAQ;AAAA,EAC1C,IAAI,CAAC;AACL,MAAI,WAAW,KAAM,OAAM,IAAI,MAAM,mCAAmC,KAAK,QAAQ,OAAO,EAAE;AAC9F,QAAM,OAAO,YAAY,EAAE,WAAW,OAAO;AAC7C,MAAI,CAAC,aAAa,IAAI,EAAG,OAAM,IAAI,MAAM,kCAAkC,OAAO,EAAE;AACpF,QAAM,SAAS,KAAK,SAAS,mBAAmB,MAAM,CAAC;AACvD,MAAI,CAAC,OAAO,MAAO,OAAM,IAAI,MAAM,OAAO,OAAO,IAAI,CAAC,UAAU,MAAM,OAAO,EAAE,KAAK,IAAI,CAAC;AAC3F;AAEA,MAAM,gBAAgB,CAAC,UAAgC;AACrD,MAAI,MAAM,QAAQ,KAAK,EAAG,QAAO,MAAM,IAAI,aAAa;AACxD,QAAM,SAAS,iBAAiB,UAAU,KAAK;AAC/C,MAAI,CAAC,OAAO,QAAS,QAAO;AAC5B,SAAO,OAAO;AAAA,IACZ,OAAO,QAAQ,OAAO,IAAI,EACvB,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,MAAM,KAAK,cAAc,KAAK,CAAC,EACnD,IAAI,CAAC,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,cAAc,IAAI,CAAC,CAAC;AAAA,EACpD;AACF;AAIA,MAAM,eAAe,CAAC,WAAsC;AAC1D,QAAM,OAAO,KAAK,UAAU,MAAM;AAClC,MAAI,QAAQ,KAAM,OAAM,IAAI,MAAM,+BAA+B;AACjE,QAAM,SAAS,iBAAiB,MAAM,cAAc,iBAAiB,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,CAAC;AAC7F,eAAa,MAAM;AACnB,QAAM,OAAO,cAAc,QAAQ;AAAA,IACjC,QAAQ;AAAA,IACR,iBAAiB;AAAA,IACjB,mBAAmB;AAAA,EACrB,CAAC;AACD,MAAI,KAAK,gBAAgB,QAAQ,KAAK,aAAa,SAAS;AAC1D,UAAM,IAAI,MAAM,KAAK,aAAa,IAAI,CAAC,UAAU,MAAM,OAAO,EAAE,KAAK,IAAI,CAAC;AAG5E,QAAM,QAAQ,oBAAI,IAAI,CAAC,MAAM,GAAG,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC;AACjE,aAAW,SAAS,OAAO;AACzB,qBAAiB,KAAK;AACtB,UAAM,MACJ,QAAQ,MAAM,QAAQ,MAAM,KAC5B,QAAQ,MAAM,QAAQ,aAAa,KACnC,QAAQ,MAAM,QAAQ,eAAe;AACvC,QAAI,OAAO,KAAM;AACjB,UAAM,WAAW,MAAM,WAAW;AAClC,QAAI,CAAC,aAAa,QAAQ;AACxB,YAAM,IAAI,MAAM,oCAAoC,OAAO,GAAG,CAAC,OAAO,MAAM,cAAc,EAAE;AAAA,EAChG;AACA,SAAO;AACT;AAEO,MAAM,kBAAkB,CAAC,QAAuB,UAAwC;AAC7F,QAAM,YAAY,aAAa,MAAM;AACrC,QAAM,SAAS,gBAAgB,UAAU,KAAK;AAC9C,MAAI,CAAC,OAAO,QAAS,QAAO;AAE5B,QAAM,SAAS,UAAU,SAAS,cAAc,OAAO,IAAI,CAAC;AAC5D,SAAO,OAAO,QAAQ,OAAO,OAAO,OAAO,IAAI,CAAC,UAAU,MAAM,OAAO,EAAE,KAAK,IAAI;AACpF;AAEO,MAAM,6BAA6B,CAAC,WAAyC;AAClF,MAAI;AACF,iBAAa,MAAM;AACnB,WAAO;AAAA,EACT,SAAS,OAAO;AACd,WAAO,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;AAAA,EAC9D;AACF;AAEO,MAAM,0BAA0B,EAAE,YAAY;AAAA,EACnD,aAAa,EAAE,YAAY;AAAA,IACzB,SAAS,EAAE,QAAQ,CAAC;AAAA,IACpB,QAAQ,EAAE,OAAO;AAAA,IACjB,UAAU;AAAA,EACZ,CAAC;AACH,CAAC;AACD,MAAM,yBAAyB,EAAE,YAAY;AAAA,EAC3C,OAAO,EAAE,QAAQ,EAAE,SAAS;AAAA,EAC5B,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,SAAS;AAC9E,CAAC;AAEM,MAAM,sBAAsB,OAAO,SAIZ;AAC5B,MAAI,KAAK,UAAU,KAAM,QAAO,KAAK;AACrC,QAAM,WAAW,wBAAwB,UAAU,KAAK,MAAM;AAC9D,MAAI,SAAS,SAAS;AAGpB,QAAI,SAAS,KAAK,WAAW,EAAE,WAAW,OAAO;AAC/C,YAAM,SAAS,eAAe,UAAU,QAAQ,KAAK,QAAQ,gBAAgB,CAAC;AAC9E,UAAI,OAAO,SAAS;AAClB,cAAMC,UAAS,EACZ,YAAY;AAAA,UACX,SAAS,EAAE,QAAQ;AAAA,UACnB,MAAM,EAAE,QAAQ,EAAE,SAAS;AAAA,UAC3B,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS;AAAA,QACxF,CAAC,EACA,MAAM,MAAM,OAAO,KAAK,KAAK,KAAK,QAAQ,KAAK,KAAK,CAAC;AACxD,YAAI,CAACA,QAAO;AACV,gBAAM,IAAI;AAAA,YACR,WAAW,KAAK,IAAI,KAAKA,QAAO,OAAO,OAAO,IAAI,CAAC,UAAU,MAAM,OAAO,EAAE,KAAK,IAAI,KAAK,SAAS;AAAA,UACrG;AACF,eAAOA,QAAO;AAAA,MAChB;AAAA,IACF;AACA,UAAM,MAAM,MAAM,SAAS,KAAK,WAAW,EAAE,SAAS;AAAA,MACpD,QAAQ,KAAK,QAAQ,WAAW;AAAA,MAChC,KAAK;AAAA,IACP;AACA,UAAM,SAAS,uBAAuB,MAAM,GAAG;AAC/C,QAAI,OAAO,UAAU;AACnB,YAAM,IAAI;AAAA,QACR,WAAW,KAAK,IAAI,KAAK,OAAO,OAAO,IAAI,CAAC,UAAU,MAAM,WAAW,SAAS,EAAE,KAAK,IAAI,KAAK,SAAS;AAAA,MAC3G;AACF,QAAI,CAAC,OAAO,OAAO,QAAQ,OAAO;AAChC,YAAM,IAAI,MAAM,WAAW,KAAK,IAAI,sCAAsC;AAC5E,WAAO,OAAO;AAAA,EAChB;AACA,QAAM,QAAQ,gBAAgB,KAAK,QAAQ,KAAK,KAAK;AACrD,MAAI,SAAS,KAAM,OAAM,IAAI,MAAM,WAAW,KAAK,IAAI,KAAK,KAAK,EAAE;AACnE,SAAO,KAAK;AACd;AAIO,MAAM,sBAAsB,CAAC,QAAuB,UAAkC;AAC3F,MAAI,UAAU,KAAM,QAAO;AAC3B,MAAI;AACF,UAAM,WAAW,wBAAwB,UAAU,MAAM;AACzD,QAAI,CAAC,SAAS,QAAS,QAAO,gBAAgB,QAAQ,KAAK,KAAK;AAChE,UAAM,cAAc,QAAQ,QAAQ,QAAQ,WAAW,GAAG,YAAY;AACtE,UAAM,YAAY,eAAe,UAAU,QAAQ,aAAa,qBAAe,CAAC;AAChF,QAAI,CAAC,UAAU,QAAS,QAAO;AAC/B,WACE,gBAAgB,UAAU,KAAK,KAAK,aAAa,EAAE,QAAQ,gBAAgB,CAAC,GAAG,KAAK,KAAK;AAAA,EAE7F,QAAQ;AACN,WAAO;AAAA,EACT;AACF;",
|
|
6
6
|
"names": ["SchemaIo", "result"]
|
|
7
7
|
}
|
|
@@ -2,6 +2,13 @@ import { defineAgent, credentials as definitionCredentials } from '@finalai/agen
|
|
|
2
2
|
import { serverlessPi } from '@finalai/final-agent-provider/harnesses';
|
|
3
3
|
|
|
4
4
|
export default defineAgent({
|
|
5
|
+
avatar: {
|
|
6
|
+
url: 'https://cdn.example.com/assistant/poster.png',
|
|
7
|
+
states: {
|
|
8
|
+
idle: { type: 'video', url: 'https://cdn.example.com/assistant/idle.mp4' },
|
|
9
|
+
researching: { type: 'image', url: 'https://cdn.example.com/assistant/researching.webp' },
|
|
10
|
+
},
|
|
11
|
+
},
|
|
5
12
|
harness: serverlessPi({
|
|
6
13
|
credentials: definitionCredentials.chain({
|
|
7
14
|
payer: 'organization',
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@finalai/agent-definition",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.4",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Provider-independent agent authoring, manifest schemas, directory compiler, and harness compatibility reports.",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
"README.md",
|
|
11
11
|
"LICENSE",
|
|
12
12
|
"NOTICE",
|
|
13
|
+
"HOSTING.md",
|
|
13
14
|
"THIRD_PARTY_NOTICES.md"
|
|
14
15
|
],
|
|
15
16
|
"type": "module",
|
|
@@ -74,8 +75,8 @@
|
|
|
74
75
|
"registry": "https://registry.npmjs.org/"
|
|
75
76
|
},
|
|
76
77
|
"dependencies": {
|
|
77
|
-
"@finalai/agent-protocol": "0.1.
|
|
78
|
-
"@finalai/agent-provider": "0.1.
|
|
78
|
+
"@finalai/agent-protocol": "0.1.4",
|
|
79
|
+
"@finalai/agent-provider": "0.1.4",
|
|
79
80
|
"ajv": "^8.20.0",
|
|
80
81
|
"ajv-formats": "^3.0.1",
|
|
81
82
|
"croner": "^10.0.1",
|