veryfront 0.1.664 → 0.1.665
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/esm/deno.js +1 -1
- package/esm/src/agent/runtime/model-tool-converter.d.ts.map +1 -1
- package/esm/src/agent/runtime/model-tool-converter.js +4 -2
- package/esm/src/agent/runtime/provider-tool-compat.d.ts +6 -0
- package/esm/src/agent/runtime/provider-tool-compat.d.ts.map +1 -1
- package/esm/src/agent/runtime/provider-tool-compat.js +22 -0
- package/esm/src/utils/version-constant.d.ts +1 -1
- package/esm/src/utils/version-constant.js +1 -1
- package/package.json +1 -1
package/esm/deno.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-tool-converter.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/runtime/model-tool-converter.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"model-tool-converter.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/runtime/model-tool-converter.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAgB9D,MAAM,WAAW,iCAAiC;IAChD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AA8BD;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,cAAc,EAAE,EACvB,OAAO,CAAC,EAAE,iCAAiC,GAC1C,cAAc,GAAG,SAAS,CA+B5B"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { getProviderNativeToolNames } from "./provider-native-tool-inventory.js";
|
|
2
2
|
import { addRuntimeTool, createRuntimeJsonSchema, createRuntimeTool, } from "./runtime-tool-builder.js";
|
|
3
3
|
import { createAnthropicWebFetchToolSet, createAnthropicWebSearchToolSet, } from "./provider-native-tools.js";
|
|
4
|
-
import { sanitizeProviderToolSchema, selectProviderCompatibleTools, } from "./provider-tool-compat.js";
|
|
4
|
+
import { normalizeProviderToolInputSchema, sanitizeProviderToolSchema, selectProviderCompatibleTools, } from "./provider-tool-compat.js";
|
|
5
5
|
function resolveProviderNativeTools(options) {
|
|
6
6
|
const providerNativeToolNames = new Set(getProviderNativeToolNames({
|
|
7
7
|
model: options?.model,
|
|
@@ -36,7 +36,9 @@ export function convertToolsToRuntimeTools(tools, options) {
|
|
|
36
36
|
for (const def of compatibleTools) {
|
|
37
37
|
addRuntimeTool(toolSet, def.name, createRuntimeTool({
|
|
38
38
|
description: def.description,
|
|
39
|
-
inputSchema: createRuntimeJsonSchema(sanitizeProviderToolSchema(def.parameters, {
|
|
39
|
+
inputSchema: createRuntimeJsonSchema(sanitizeProviderToolSchema(normalizeProviderToolInputSchema(def.parameters), {
|
|
40
|
+
model: options?.model,
|
|
41
|
+
})),
|
|
40
42
|
}));
|
|
41
43
|
}
|
|
42
44
|
const providerNativeTools = resolveProviderNativeTools(options);
|
|
@@ -19,6 +19,12 @@ export declare function getProviderToolProfile(model?: string): ProviderToolProf
|
|
|
19
19
|
export declare function selectProviderCompatibleToolNames(toolNames: readonly string[], options?: ProviderToolCompatOptions): string[];
|
|
20
20
|
/** Select provider compatible tools helper. */
|
|
21
21
|
export declare function selectProviderCompatibleTools(tools: readonly ToolDefinition[], options?: ProviderToolCompatOptions): ToolDefinition[];
|
|
22
|
+
/**
|
|
23
|
+
* Normalize a provider tool input schema so every function tool has a
|
|
24
|
+
* provider-safe JSON Schema object at the root. Remote/MCP tools can omit the
|
|
25
|
+
* root `type`; Anthropic rejects those as `input_schema.type` missing.
|
|
26
|
+
*/
|
|
27
|
+
export declare function normalizeProviderToolInputSchema(schema: JsonSchema): JsonSchema;
|
|
22
28
|
/** Zod schema for sanitize provider tool. */
|
|
23
29
|
export declare function sanitizeProviderToolSchema(schema: JsonSchema, options?: Pick<ProviderToolCompatOptions, "model">): JsonSchema;
|
|
24
30
|
//# sourceMappingURL=provider-tool-compat.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-tool-compat.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/runtime/provider-tool-compat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAE7D,6DAA6D;AAC7D,MAAM,MAAM,0BAA0B,GAClC,WAAW,GACX,QAAQ,GACR,UAAU,GACV,QAAQ,GACR,SAAS,CAAC;AAEd,qDAAqD;AACrD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,0BAA0B,CAAC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,gDAAgD;AAChD,MAAM,WAAW,yBAAyB;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACvC;
|
|
1
|
+
{"version":3,"file":"provider-tool-compat.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/runtime/provider-tool-compat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAE7D,6DAA6D;AAC7D,MAAM,MAAM,0BAA0B,GAClC,WAAW,GACX,QAAQ,GACR,UAAU,GACV,QAAQ,GACR,SAAS,CAAC;AAEd,qDAAqD;AACrD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,0BAA0B,CAAC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,gDAAgD;AAChD,MAAM,WAAW,yBAAyB;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACvC;AA2BD,oCAAoC;AACpC,wBAAgB,sBAAsB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,mBAAmB,CAsB1E;AAeD,oDAAoD;AACpD,wBAAgB,iCAAiC,CAC/C,SAAS,EAAE,SAAS,MAAM,EAAE,EAC5B,OAAO,GAAE,yBAA8B,GACtC,MAAM,EAAE,CAsBV;AAED,+CAA+C;AAC/C,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,SAAS,cAAc,EAAE,EAChC,OAAO,GAAE,yBAA8B,GACtC,cAAc,EAAE,CAclB;AAuKD;;;;GAIG;AACH,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAa/E;AAED,6CAA6C;AAC7C,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,UAAU,EAClB,OAAO,GAAE,IAAI,CAAC,yBAAyB,EAAE,OAAO,CAAM,GACrD,UAAU,CAWZ"}
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
const OPENAI_MAX_TOOLS = 128;
|
|
2
|
+
const PERMISSIVE_TOOL_INPUT_SCHEMA = {
|
|
3
|
+
type: "object",
|
|
4
|
+
properties: {},
|
|
5
|
+
additionalProperties: true,
|
|
6
|
+
};
|
|
2
7
|
const PROVIDER_TOOL_PROPERTY_KEY_PATTERN = /^[a-zA-Z0-9_.-]{1,64}$/;
|
|
3
8
|
const GOOGLE_UNSUPPORTED_SCHEMA_KEYS = new Set([
|
|
4
9
|
"$id",
|
|
@@ -222,6 +227,23 @@ function sanitizeGoogleSchemaValue(value) {
|
|
|
222
227
|
}
|
|
223
228
|
return sanitized;
|
|
224
229
|
}
|
|
230
|
+
/**
|
|
231
|
+
* Normalize a provider tool input schema so every function tool has a
|
|
232
|
+
* provider-safe JSON Schema object at the root. Remote/MCP tools can omit the
|
|
233
|
+
* root `type`; Anthropic rejects those as `input_schema.type` missing.
|
|
234
|
+
*/
|
|
235
|
+
export function normalizeProviderToolInputSchema(schema) {
|
|
236
|
+
if (!isPlainRecord(schema) || Object.keys(schema).length === 0) {
|
|
237
|
+
return { ...PERMISSIVE_TOOL_INPUT_SCHEMA };
|
|
238
|
+
}
|
|
239
|
+
if (Object.hasOwn(schema, "type")) {
|
|
240
|
+
return schema;
|
|
241
|
+
}
|
|
242
|
+
return {
|
|
243
|
+
type: "object",
|
|
244
|
+
...schema,
|
|
245
|
+
};
|
|
246
|
+
}
|
|
225
247
|
/** Zod schema for sanitize provider tool. */
|
|
226
248
|
export function sanitizeProviderToolSchema(schema, options = {}) {
|
|
227
249
|
const profile = getProviderToolProfile(options.model);
|