@polpo-ai/tools 0.15.10 → 0.15.12

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.
@@ -0,0 +1,26 @@
1
+ import type { FileSystem } from "@polpo-ai/core/filesystem";
2
+ export declare const CUSTOM_TOOL_NAME_RE: RegExp;
3
+ export interface CustomToolMeta {
4
+ name: string;
5
+ description: string;
6
+ parameters: unknown;
7
+ label: string;
8
+ clientSide: boolean;
9
+ }
10
+ export interface CustomToolsStore {
11
+ putSource(name: string, source: string): Promise<void>;
12
+ putMeta(name: string, meta: CustomToolMeta): Promise<void>;
13
+ putBundle(name: string, code: string): Promise<void>;
14
+ getSource(name: string): Promise<string | null>;
15
+ getMeta(name: string): Promise<CustomToolMeta | null>;
16
+ getBundle(name: string): Promise<string | null>;
17
+ list(): Promise<string[]>;
18
+ has(name: string): Promise<boolean>;
19
+ remove(name: string): Promise<boolean>;
20
+ }
21
+ /**
22
+ * FileSystem-backed custom-tool registry shared by self-hosted and managed
23
+ * adapters. The caller owns the storage root and execution strategy.
24
+ */
25
+ export declare function createCustomToolsStore(fs: FileSystem, toolsDir: string): CustomToolsStore;
26
+ //# sourceMappingURL=custom-tool-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-tool-store.d.ts","sourceRoot":"","sources":["../src/custom-tool-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAE5D,eAAO,MAAM,mBAAmB,QAAsB,CAAC;AAEvD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAChD,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACtD,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAChD,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1B,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACpC,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACxC;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,UAAU,EACd,QAAQ,EAAE,MAAM,GACf,gBAAgB,CA+DlB"}
@@ -0,0 +1,68 @@
1
+ export const CUSTOM_TOOL_NAME_RE = /^[a-z][a-z0-9_]*$/;
2
+ /**
3
+ * FileSystem-backed custom-tool registry shared by self-hosted and managed
4
+ * adapters. The caller owns the storage root and execution strategy.
5
+ */
6
+ export function createCustomToolsStore(fs, toolsDir) {
7
+ const root = toolsDir.replace(/\/+$/, "");
8
+ const pathFor = (name, extension) => {
9
+ if (!CUSTOM_TOOL_NAME_RE.test(name)) {
10
+ throw new Error(`Invalid custom tool name: ${name}`);
11
+ }
12
+ return `${root}/${name}.${extension}`;
13
+ };
14
+ const readOptional = async (path) => {
15
+ if (!(await fs.exists(path)))
16
+ return null;
17
+ return fs.readFile(path);
18
+ };
19
+ return {
20
+ async putSource(name, source) {
21
+ await fs.mkdir(root);
22
+ await fs.writeFile(pathFor(name, "ts"), source);
23
+ },
24
+ async putMeta(name, meta) {
25
+ await fs.mkdir(root);
26
+ await fs.writeFile(pathFor(name, "json"), JSON.stringify(meta, null, 2));
27
+ },
28
+ async putBundle(name, code) {
29
+ await fs.mkdir(root);
30
+ await fs.writeFile(pathFor(name, "mjs"), code);
31
+ },
32
+ getSource(name) {
33
+ return readOptional(pathFor(name, "ts"));
34
+ },
35
+ async getMeta(name) {
36
+ const raw = await readOptional(pathFor(name, "json"));
37
+ if (raw === null)
38
+ return null;
39
+ try {
40
+ return JSON.parse(raw);
41
+ }
42
+ catch {
43
+ return null;
44
+ }
45
+ },
46
+ getBundle(name) {
47
+ return readOptional(pathFor(name, "mjs"));
48
+ },
49
+ async list() {
50
+ if (!(await fs.exists(root)))
51
+ return [];
52
+ return (await fs.readdir(root))
53
+ .filter((entry) => entry.endsWith(".ts"))
54
+ .map((entry) => entry.slice(0, -3))
55
+ .filter((name) => CUSTOM_TOOL_NAME_RE.test(name))
56
+ .sort();
57
+ },
58
+ has(name) {
59
+ return fs.exists(pathFor(name, "ts"));
60
+ },
61
+ async remove(name) {
62
+ const existed = await fs.exists(pathFor(name, "ts"));
63
+ await Promise.all(["ts", "json", "mjs"].map((extension) => fs.remove(pathFor(name, extension)).catch(() => undefined)));
64
+ return existed;
65
+ },
66
+ };
67
+ }
68
+ //# sourceMappingURL=custom-tool-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-tool-store.js","sourceRoot":"","sources":["../src/custom-tool-store.ts"],"names":[],"mappings":"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"}
@@ -81,6 +81,8 @@ export declare function getCustomToolErrors(value: unknown): string[];
81
81
  export declare function isCustomTool(value: unknown): value is CustomTool;
82
82
  /** Coerce a custom tool's return value into a {@link ToolResult}. */
83
83
  export declare function normalizeToolResult(result: CustomToolExecuteResult): ToolResult;
84
+ /** Build deterministic example arguments from a TypeBox/JSON Schema. */
85
+ export declare function createJsonSchemaExample(schema: unknown, name?: string): unknown;
84
86
  /** ctx without the per-call fields, which {@link bindCustomTool} supplies itself. */
85
87
  export type CustomToolBindContext = Omit<CustomToolContext, "signal" | "onUpdate">;
86
88
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"custom-tools.d.ts","sourceRoot":"","sources":["../src/custom-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAGzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,4DAA4D;IAC5D,EAAE,EAAE,UAAU,CAAC;IACf,mDAAmD;IACnD,KAAK,EAAE,KAAK,CAAC;IACb,8DAA8D;IAC9D,KAAK,EAAE,aAAa,CAAC;IACrB,8DAA8D;IAC9D,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACxC,uDAAuD;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,kFAAkF;IAClF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,uCAAuC;IACvC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,kDAAkD;IAClD,QAAQ,CAAC,EAAE,kBAAkB,CAAC;CAC/B;AAED,4FAA4F;AAC5F,MAAM,MAAM,uBAAuB,GAAG,MAAM,GAAG,UAAU,CAAC;AAE1D,+CAA+C;AAC/C,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO;IACzD,0DAA0D;IAC1D,IAAI,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,WAAW,EAAE,MAAM,CAAC;IACpB,6CAA6C;IAC7C,UAAU,EAAE,CAAC,CAAC;IACd,wDAAwD;IACxD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2EAA2E;IAC3E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,oEAAoE;IACpE,OAAO,EAAE,CACP,GAAG,EAAE,iBAAiB,EACtB,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,KACd,uBAAuB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;CACjE;AAED,0FAA0F;AAC1F,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO,CAAE,SAAQ,cAAc,CAAC,CAAC,CAAC;IAChF,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC;CACzB;AAKD;;;GAGG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,OAAO,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAEpF;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,EAAE,CA8B5D;AAED,sEAAsE;AACtE,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,UAAU,CAOhE;AAED,qEAAqE;AACrE,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,uBAAuB,GAAG,UAAU,CAc/E;AAED,qFAAqF;AACrF,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAC,iBAAiB,EAAE,QAAQ,GAAG,UAAU,CAAC,CAAC;AAEnF;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,OAAO,EAC9C,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,EACnB,GAAG,EAAE,qBAAqB,GACzB,SAAS,CAAC,CAAC,CAAC,CAcd;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,OAAO,GAAG,UAAU,CAuBnE;AAED;;;;GAIG;AACH,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,MAAM,GAAG,MAAM,EAC7B,GAAG,EAAE,qBAAqB,GACzB,OAAO,CAAC,SAAS,CAAC,CAOpB"}
1
+ {"version":3,"file":"custom-tools.d.ts","sourceRoot":"","sources":["../src/custom-tools.ts"],"names":[],"mappings":"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"}
@@ -63,6 +63,83 @@ export function normalizeToolResult(result) {
63
63
  // rather than crashing the run.
64
64
  return { content: [{ type: "text", text: JSON.stringify(result) }], details: result ?? null };
65
65
  }
66
+ function exampleString(name, format) {
67
+ const key = `${name} ${format ?? ""}`.toLowerCase();
68
+ if (/email/.test(key))
69
+ return "user@example.com";
70
+ if (/uri|url|link|website|endpoint/.test(key))
71
+ return "https://example.com";
72
+ if (/date-time|datetime|timestamp/.test(key))
73
+ return "2026-01-15T09:30:00Z";
74
+ if (/date|day/.test(key))
75
+ return "2026-01-15";
76
+ if (/time/.test(key))
77
+ return "09:30:00";
78
+ if (/uuid/.test(key))
79
+ return "550e8400-e29b-41d4-a716-446655440000";
80
+ if (/path|file/.test(key))
81
+ return "output/result.txt";
82
+ if (/query|search|prompt/.test(key))
83
+ return "quarterly report";
84
+ if (/message|text|body|content/.test(key))
85
+ return "Hello world";
86
+ if (/name|title|company/.test(key))
87
+ return "Acme Inc";
88
+ if (/(^|\s)id($|\s)/.test(key))
89
+ return "item_123";
90
+ return "text";
91
+ }
92
+ function exampleNumber(name) {
93
+ const key = name.toLowerCase();
94
+ if (/amount|price|cost|total|fee|balance/.test(key))
95
+ return 99.99;
96
+ if (/count|qty|quantity|limit|page|size|max|min/.test(key))
97
+ return 10;
98
+ return 42;
99
+ }
100
+ /** Build deterministic example arguments from a TypeBox/JSON Schema. */
101
+ export function createJsonSchemaExample(schema, name = "") {
102
+ if (!schema || typeof schema !== "object")
103
+ return "value";
104
+ const node = schema;
105
+ if (node.default !== undefined)
106
+ return node.default;
107
+ if (Array.isArray(node.examples) && node.examples.length > 0)
108
+ return node.examples[0];
109
+ if (node.const !== undefined)
110
+ return node.const;
111
+ if (Array.isArray(node.enum) && node.enum.length > 0)
112
+ return node.enum[0];
113
+ const alternatives = Array.isArray(node.anyOf)
114
+ ? node.anyOf
115
+ : Array.isArray(node.oneOf)
116
+ ? node.oneOf
117
+ : null;
118
+ if (alternatives?.length)
119
+ return createJsonSchemaExample(alternatives[0], name);
120
+ const type = Array.isArray(node.type)
121
+ ? node.type.find((candidate) => candidate !== "null")
122
+ : node.type;
123
+ if (type === "object" || (type === undefined && node.properties)) {
124
+ const properties = node.properties && typeof node.properties === "object"
125
+ ? node.properties
126
+ : {};
127
+ return Object.fromEntries(Object.entries(properties)
128
+ .slice(0, 20)
129
+ .map(([key, value]) => [key, createJsonSchemaExample(value, key)]));
130
+ }
131
+ if (type === "array")
132
+ return [createJsonSchemaExample(node.items, name)];
133
+ if (type === "boolean")
134
+ return true;
135
+ if (type === "integer")
136
+ return Math.trunc(exampleNumber(name));
137
+ if (type === "number")
138
+ return exampleNumber(name);
139
+ if (type === "null")
140
+ return null;
141
+ return exampleString(name, typeof node.format === "string" ? node.format : undefined);
142
+ }
66
143
  /**
67
144
  * Adapt a {@link CustomTool} (ctx-based `execute`) into a runtime {@link PolpoTool}
68
145
  * (`execute(toolCallId, params, signal?, onUpdate?)`), binding the injected ctx.
@@ -1 +1 @@
1
- {"version":3,"file":"custom-tools.js","sourceRoot":"","sources":["../src/custom-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"custom-tools.js","sourceRoot":"","sources":["../src/custom-tools.ts"],"names":[],"mappings":"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"}
@@ -28,9 +28,9 @@ function requireEnv(key) {
28
28
  throw new Error(`Missing environment variable: ${key}. Set it before using this tool.`);
29
29
  return val;
30
30
  }
31
- /** Resolve which model to actually use, in priority order. */
31
+ /** Resolve the configured model as policy, then an unconfigured per-call selection. */
32
32
  function resolveEffectiveModel(override, configured, fallback) {
33
- return parseModelString(override ?? configured ?? fallback);
33
+ return parseModelString(configured ?? override ?? fallback);
34
34
  }
35
35
  /** Vault-key resolution per provider. Throws with a clear message
36
36
  * when neither vault nor env var has the credential. */
@@ -108,8 +108,8 @@ const ImageGenerateSchema = Type.Object({
108
108
  prompt: Type.String({ description: "Text prompt describing the image to generate" }),
109
109
  path: Type.String({ description: "Output file path (e.g. 'output.png'). Format inferred from extension." }),
110
110
  model: Type.Optional(Type.String({
111
- description: "Override the agent's image_model for this call. Format: '<provider>/<model>' " +
112
- "(e.g. 'fal/fal-ai/flux/dev', 'fal/fal-ai/flux-pro/v1.1'). When omitted, uses the agent's configured image_model.",
111
+ description: "Select an image model only when the agent has no image_model configured. Format: '<provider>/<model>' " +
112
+ "(e.g. 'fal/fal-ai/flux/dev', 'fal/fal-ai/flux-pro/v1.1'). Agent configuration always takes precedence.",
113
113
  })),
114
114
  size: Type.Optional(Type.String({
115
115
  description: "Image size as 'WIDTHxHEIGHT' (e.g. '1024x1024', '1024x768', '768x1024'). Default: '1024x1024'.",
@@ -130,7 +130,7 @@ function createGenerateTool(cwd, sandbox, fs, configuredModel, vault) {
130
130
  label: "Generate Image",
131
131
  description: "Generate an image from a text prompt. " +
132
132
  "Output format inferred from file extension (png, jpg, webp). " +
133
- "Model is configured at agent level (image_model) — pass `model` here only to override per-call. " +
133
+ "Model is fixed by the agent's image_model when configured. " +
134
134
  "Default: fal/fal-ai/flux/dev. Currently supports fal as image provider.",
135
135
  parameters: ImageGenerateSchema,
136
136
  async execute(_id, params, signal) {
@@ -217,8 +217,8 @@ const VideoGenerateSchema = Type.Object({
217
217
  prompt: Type.String({ description: "Text prompt describing the video to generate" }),
218
218
  path: Type.String({ description: "Output file path (e.g. 'output.mp4')." }),
219
219
  model: Type.Optional(Type.String({
220
- description: "Override the agent's video_model for this call. Format: '<provider>/<model>' " +
221
- "(e.g. 'fal/luma-ray-2-flash', 'fal/luma-ray-2', 'fal/hunyuan-video'). When omitted, uses the agent's configured video_model.",
220
+ description: "Select a video model only when the agent has no video_model configured. Format: '<provider>/<model>' " +
221
+ "(e.g. 'fal/luma-ray-2-flash', 'fal/luma-ray-2', 'fal/hunyuan-video'). Agent configuration always takes precedence.",
222
222
  })),
223
223
  aspect_ratio: Type.Optional(Type.String({
224
224
  description: "Aspect ratio as 'WIDTH:HEIGHT' (e.g. '16:9', '9:16', '1:1').",
@@ -241,8 +241,8 @@ function createVideoGenerateTool(cwd, sandbox, fs, configuredModel, vault) {
241
241
  name: "video_generate",
242
242
  label: "Generate Video",
243
243
  description: "Generate a video from a text prompt. " +
244
- "Output saved as MP4. Model is configured at agent level (video_model) — pass `model` here only to override " +
245
- "per-call. Default: fal/luma-ray-2-flash. Currently supports fal as video provider.",
244
+ "Output saved as MP4. Model is fixed by the agent's video_model when configured. " +
245
+ "Default: fal/luma-ray-2-flash. Currently supports fal as video provider.",
246
246
  parameters: VideoGenerateSchema,
247
247
  async execute(_id, params, signal) {
248
248
  const filePath = resolve(cwd, params.path);
@@ -320,8 +320,8 @@ const ImageAnalyzeSchema = Type.Object({
320
320
  path: Type.String({ description: "Path to the image file to analyze" }),
321
321
  prompt: Type.Optional(Type.String({ description: "Question or instruction for the vision model (default: 'Describe this image in detail')" })),
322
322
  model: Type.Optional(Type.String({
323
- description: "Override the agent's vision_model for this call. Format: '<provider>/<model>' " +
324
- "(e.g. 'openai/gpt-4o-mini', 'anthropic/claude-sonnet-4-20250514'). When omitted, uses the agent's configured vision_model.",
323
+ description: "Select a vision model only when the agent has no vision_model configured. Format: '<provider>/<model>' " +
324
+ "(e.g. 'openai/gpt-4o-mini', 'anthropic/claude-sonnet-4-20250514'). Agent configuration always takes precedence.",
325
325
  })),
326
326
  max_tokens: Type.Optional(Type.Number({ description: "Max tokens in response (default: 1024)" })),
327
327
  });
@@ -331,7 +331,7 @@ function createAnalyzeTool(cwd, sandbox, fs, configuredModel, vault) {
331
331
  label: "Analyze Image",
332
332
  description: "Analyze an image using AI vision models. Can describe contents, extract text (OCR), " +
333
333
  "answer questions about the image, identify objects, read charts, etc. " +
334
- "Model is configured at agent level (vision_model) — pass `model` here only to override per-call. " +
334
+ "Model is fixed by the agent's vision_model when configured. " +
335
335
  "Default: openai/gpt-4o-mini. Supported providers: openai, anthropic.",
336
336
  parameters: ImageAnalyzeSchema,
337
337
  async execute(_id, params, signal) {
@@ -1 +1 @@
1
- {"version":3,"file":"image-tools.js","sourceRoot":"","sources":["../src/image-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"image-tools.js","sourceRoot":"","sources":["../src/image-tools.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -31,7 +31,9 @@ export { NodeShell } from "./adapters/node-shell.js";
31
31
  export { assertPathAllowed, resolveAllowedPaths, isPathAllowed } from "./path-sandbox.js";
32
32
  export { safeEnv, bashSafeEnv } from "./safe-env.js";
33
33
  export { assertUrlAllowed } from "./ssrf-guard.js";
34
- export { defineTool, getCustomToolErrors, isCustomTool, normalizeToolResult, bindCustomTool, extractCustomTool, loadCustomToolBundle, } from "./custom-tools.js";
34
+ export { defineTool, getCustomToolErrors, isCustomTool, normalizeToolResult, bindCustomTool, extractCustomTool, loadCustomToolBundle, createJsonSchemaExample, } from "./custom-tools.js";
35
35
  export type { CustomTool, CustomToolSpec, CustomToolContext, CustomToolBindContext, CustomToolExecuteResult, } from "./custom-tools.js";
36
+ export { CUSTOM_TOOL_NAME_RE, createCustomToolsStore, } from "./custom-tool-store.js";
37
+ export type { CustomToolMeta, CustomToolsStore, } from "./custom-tool-store.js";
36
38
  export type { ResolvedVault } from "./types.js";
37
39
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,IAAI,iBAAiB,EAAE,cAAc,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACnK,YAAY,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAGjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAChG,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAGpF,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAC5G,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAG7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAGtD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAGrD,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC1F,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAGnD,OAAO,EACL,UAAU,EACV,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,IAAI,iBAAiB,EAAE,cAAc,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACnK,YAAY,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAGjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAChG,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAGpF,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAC5G,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAG7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAGtD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAGrD,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC1F,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAGnD,OAAO,EACL,UAAU,EACV,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,wBAAwB,CAAC;AAChC,YAAY,EACV,cAAc,EACd,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAGhC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -37,5 +37,6 @@ export { assertPathAllowed, resolveAllowedPaths, isPathAllowed } from "./path-sa
37
37
  export { safeEnv, bashSafeEnv } from "./safe-env.js";
38
38
  export { assertUrlAllowed } from "./ssrf-guard.js";
39
39
  // Custom tools (defineTool)
40
- export { defineTool, getCustomToolErrors, isCustomTool, normalizeToolResult, bindCustomTool, extractCustomTool, loadCustomToolBundle, } from "./custom-tools.js";
40
+ export { defineTool, getCustomToolErrors, isCustomTool, normalizeToolResult, bindCustomTool, extractCustomTool, loadCustomToolBundle, createJsonSchemaExample, } from "./custom-tools.js";
41
+ export { CUSTOM_TOOL_NAME_RE, createCustomToolsStore, } from "./custom-tool-store.js";
41
42
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,oBAAoB;AACpB,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,IAAI,iBAAiB,EAAE,cAAc,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGnK,qDAAqD;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAChG,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAGvD,0BAA0B;AAC1B,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAC5G,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC7E,0DAA0D;AAC1D,0CAA0C;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,8CAA8C;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAErD,qBAAqB;AACrB,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC1F,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnD,4BAA4B;AAC5B,OAAO,EACL,UAAU,EACV,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,oBAAoB;AACpB,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,IAAI,iBAAiB,EAAE,cAAc,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGnK,qDAAqD;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAChG,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAGvD,0BAA0B;AAC1B,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAC5G,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC7E,0DAA0D;AAC1D,0CAA0C;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,8CAA8C;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAErD,qBAAqB;AACrB,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC1F,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnD,4BAA4B;AAC5B,OAAO,EACL,UAAU,EACV,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAQ3B,OAAO,EACL,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,wBAAwB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@polpo-ai/tools",
3
- "version": "0.15.10",
3
+ "version": "0.15.12",
4
4
  "description": "Agent tools for Polpo — coding, browser, email, search, and more. Core tools work everywhere, extended tools are opt-in.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -20,7 +20,7 @@
20
20
  "@modelcontextprotocol/sdk": "^1.29.0",
21
21
  "@sinclair/typebox": "^0.34.0",
22
22
  "nanoid": "^5.0.0",
23
- "@polpo-ai/core": "0.15.10"
23
+ "@polpo-ai/core": "0.15.12"
24
24
  },
25
25
  "optionalDependencies": {
26
26
  "@ai-sdk/anthropic": "^2.0.79",