@polpo-ai/tools 0.6.29 → 0.6.30

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.
@@ -28,6 +28,7 @@
28
28
  */
29
29
  import type { PolpoTool as AgentTool } from "@polpo-ai/core";
30
30
  import type { FileSystem } from "@polpo-ai/core/filesystem";
31
+ import type { Shell } from "@polpo-ai/core";
31
32
  import type { ResolvedVault } from "./types.js";
32
33
  export type AudioToolName = "audio_transcribe" | "audio_speak";
33
34
  export declare const ALL_AUDIO_TOOL_NAMES: AudioToolName[];
@@ -39,5 +40,5 @@ export declare const ALL_AUDIO_TOOL_NAMES: AudioToolName[];
39
40
  * @param allowedTools - Optional filter
40
41
  * @param vault - Resolved vault credentials for credential resolution
41
42
  */
42
- export declare function createAudioTools(cwd: string, allowedPaths?: string[], allowedTools?: string[], vault?: ResolvedVault, fs?: FileSystem): AgentTool<any>[];
43
+ export declare function createAudioTools(cwd: string, allowedPaths?: string[], allowedTools?: string[], vault?: ResolvedVault, fs?: FileSystem, shell?: Shell): AgentTool<any>[];
43
44
  //# sourceMappingURL=audio-tools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"audio-tools.d.ts","sourceRoot":"","sources":["../src/audio-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAKH,OAAO,KAAK,EAAE,SAAS,IAAI,SAAS,EAAiC,MAAM,gBAAgB,CAAC;AAC5F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAM5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAioBhD,MAAM,MAAM,aAAa,GAAG,kBAAkB,GAAG,aAAa,CAAC;AAE/D,eAAO,MAAM,oBAAoB,EAAE,aAAa,EAAwC,CAAC;AAEzF;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,MAAM,EACX,YAAY,CAAC,EAAE,MAAM,EAAE,EACvB,YAAY,CAAC,EAAE,MAAM,EAAE,EACvB,KAAK,CAAC,EAAE,aAAa,EACrB,EAAE,CAAC,EAAE,UAAU,GACd,SAAS,CAAC,GAAG,CAAC,EAAE,CAclB"}
1
+ {"version":3,"file":"audio-tools.d.ts","sourceRoot":"","sources":["../src/audio-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAIH,OAAO,KAAK,EAAE,SAAS,IAAI,SAAS,EAAiC,MAAM,gBAAgB,CAAC;AAC5F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAO5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AA0nBhD,MAAM,MAAM,aAAa,GAAG,kBAAkB,GAAG,aAAa,CAAC;AAE/D,eAAO,MAAM,oBAAoB,EAAE,aAAa,EAAwC,CAAC;AAEzF;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,MAAM,EACX,YAAY,CAAC,EAAE,MAAM,EAAE,EACvB,YAAY,CAAC,EAAE,MAAM,EAAE,EACvB,KAAK,CAAC,EAAE,aAAa,EACrB,EAAE,CAAC,EAAE,UAAU,EACf,KAAK,CAAC,EAAE,KAAK,GACZ,SAAS,CAAC,GAAG,CAAC,EAAE,CAelB"}
@@ -27,9 +27,9 @@
27
27
  * ELEVENLABS_API_KEY — elevenlabs provider (TTS)
28
28
  */
29
29
  import { resolve, dirname, extname } from "node:path";
30
- import { execFile } from "node:child_process";
31
30
  import { Type } from "@sinclair/typebox";
32
31
  import { NodeFileSystem } from "./adapters/node-filesystem.js";
32
+ import { NodeShell } from "./adapters/node-shell.js";
33
33
  import { resolveAllowedPaths, assertPathAllowed } from "./path-sandbox.js";
34
34
  // ─── Constants ───
35
35
  const MAX_AUDIO_SIZE = 25 * 1024 * 1024; // 25 MB (OpenAI Whisper limit)
@@ -241,7 +241,7 @@ const AudioSpeakSchema = Type.Object({
241
241
  speed: Type.Optional(Type.Number({ description: "Playback speed 0.25-4.0 (OpenAI only, default: 1.0)" })),
242
242
  instructions: Type.Optional(Type.String({ description: "Voice style instructions (OpenAI gpt-4o-mini-tts only, e.g. 'Speak in a cheerful tone')" })),
243
243
  });
244
- function createSpeakTool(cwd, sandbox, fs, vault) {
244
+ function createSpeakTool(cwd, sandbox, fs, shell, vault) {
245
245
  return {
246
246
  name: "audio_speak",
247
247
  label: "Text to Speech",
@@ -258,14 +258,14 @@ function createSpeakTool(cwd, sandbox, fs, vault) {
258
258
  const provider = params.provider ?? "openai";
259
259
  // Direct edge-tts request — no fallback needed
260
260
  if (provider === "edge") {
261
- if (!edgeTtsAvailable()) {
261
+ if (!(await edgeTtsAvailable(shell))) {
262
262
  return {
263
263
  content: [{ type: "text", text: "Edge TTS not available in this environment. Use openai/deepgram/elevenlabs instead." }],
264
264
  details: { provider: "edge", error: "edge_tts_unavailable" },
265
265
  };
266
266
  }
267
267
  try {
268
- return await speakEdgeTts(filePath, params, signal);
268
+ return await speakEdgeTts(filePath, params, fs, shell);
269
269
  }
270
270
  catch (err) {
271
271
  return {
@@ -288,9 +288,9 @@ function createSpeakTool(cwd, sandbox, fs, vault) {
288
288
  }
289
289
  catch (err) {
290
290
  // Automatic fallback to edge-tts if available
291
- if (edgeTtsAvailable()) {
291
+ if (await edgeTtsAvailable(shell)) {
292
292
  try {
293
- const result = await speakEdgeTts(filePath, params, signal);
293
+ const result = await speakEdgeTts(filePath, params, fs, shell);
294
294
  // Prepend fallback notice
295
295
  const notice = `[Fallback] ${provider} failed (${err.message}), used edge-tts instead.\n`;
296
296
  return {
@@ -494,68 +494,58 @@ function resolveEdgeVoice(voice, language, gender) {
494
494
  const pair = EDGE_VOICES[lang] ?? EDGE_VOICES["en"];
495
495
  return gender === "male" ? pair[1] : pair[0]; // default female if no gender hint
496
496
  }
497
- /** Check if edge-tts CLI is available on the system. */
498
- function isEdgeTtsAvailable() {
499
- // Allow operators (e.g. cloud chat-completion path) to opt out explicitly.
500
- if (process.env.POLPO_DISABLE_EDGE_TTS === "1")
501
- return false;
502
- try {
503
- const { execFileSync } = require("node:child_process");
504
- execFileSync("edge-tts", ["--version"], { stdio: "pipe", timeout: 5000 });
505
- return true;
506
- }
507
- catch {
508
- return false;
509
- }
497
+ /** Per-Shell cache of "is edge-tts on PATH" checked once per shell. */
498
+ const _edgeTtsAvailable = new WeakMap();
499
+ /** Check if edge-tts CLI is available, routed through the Shell so the
500
+ * check runs in the same environment as the actual TTS call (sandbox
501
+ * in cloud, local Node in OSS). */
502
+ function edgeTtsAvailable(shell) {
503
+ const existing = _edgeTtsAvailable.get(shell);
504
+ if (existing)
505
+ return existing;
506
+ const fresh = shell
507
+ .execute("edge-tts --version", { timeout: 5000 })
508
+ .then((r) => r.exitCode === 0)
509
+ .catch(() => false);
510
+ _edgeTtsAvailable.set(shell, fresh);
511
+ return fresh;
510
512
  }
511
- // Cache the availability check
512
- let _edgeTtsAvailable;
513
- function edgeTtsAvailable() {
514
- if (_edgeTtsAvailable === undefined)
515
- _edgeTtsAvailable = isEdgeTtsAvailable();
516
- return _edgeTtsAvailable;
513
+ /** Quote a CLI argument for inclusion in a `shell.execute` command line. */
514
+ function quoteArg(arg) {
515
+ return `'${arg.replace(/'/g, `'\\''`)}'`;
517
516
  }
518
- async function speakEdgeTts(filePath, params, signal) {
519
- if (!edgeTtsAvailable()) {
517
+ async function speakEdgeTts(filePath, params, fs, shell) {
518
+ if (!(await edgeTtsAvailable(shell))) {
520
519
  throw new Error("edge-tts CLI is not installed. Install it with: pip install edge-tts");
521
520
  }
522
521
  const voice = resolveEdgeVoice(params.voice, params.language, params.gender);
523
- // edge-tts is a local Node-only path — direct node:fs is acceptable here
524
- // since the provider is gated by isEdgeTtsAvailable() which already requires Node.
525
- const nodeFs = require("node:fs");
526
- nodeFs.mkdirSync(dirname(filePath), { recursive: true });
527
- // Determine rate from speed if present
528
- const args = [
529
- "--text", params.text,
530
- "--voice", voice,
531
- "--write-media", filePath,
532
- ];
533
- return new Promise((resolvePromise, reject) => {
534
- const child = execFile("edge-tts", args, { timeout: DEFAULT_TIMEOUT }, (err, _stdout, stderr) => {
535
- if (err) {
536
- reject(new Error(`edge-tts failed: ${err.message}${stderr ? ` — ${stderr}` : ""}`));
537
- return;
538
- }
539
- let bytes = 0;
540
- try {
541
- bytes = nodeFs.statSync(filePath).size;
542
- }
543
- catch { /* ignore */ }
544
- resolvePromise({
545
- content: [{ type: "text", text: `Speech audio saved: ${filePath} (${(bytes / 1024).toFixed(1)} KB, voice: ${voice}, provider: edge-tts)` }],
546
- details: {
547
- provider: "edge",
548
- voice,
549
- path: filePath,
550
- bytes,
551
- textLength: params.text.length,
552
- },
553
- });
554
- });
555
- if (signal) {
556
- signal.addEventListener("abort", () => child.kill(), { once: true });
557
- }
558
- });
522
+ await fs.mkdir(dirname(filePath));
523
+ const cmd = [
524
+ "edge-tts",
525
+ "--text", quoteArg(params.text),
526
+ "--voice", quoteArg(voice),
527
+ "--write-media", quoteArg(filePath),
528
+ ].join(" ");
529
+ const result = await shell.execute(cmd, { timeout: DEFAULT_TIMEOUT });
530
+ if (result.exitCode !== 0) {
531
+ throw new Error(`edge-tts failed: ${(result.stderr || result.stdout || "").trim() || `exit ${result.exitCode}`}`);
532
+ }
533
+ let bytes = 0;
534
+ try {
535
+ const stat = await fs.stat(filePath);
536
+ bytes = stat?.size ?? 0;
537
+ }
538
+ catch { /* ignore */ }
539
+ return {
540
+ content: [{ type: "text", text: `Speech audio saved: ${filePath} (${(bytes / 1024).toFixed(1)} KB, voice: ${voice}, provider: edge-tts)` }],
541
+ details: {
542
+ provider: "edge",
543
+ voice,
544
+ path: filePath,
545
+ bytes,
546
+ textLength: params.text.length,
547
+ },
548
+ };
559
549
  }
560
550
  export const ALL_AUDIO_TOOL_NAMES = ["audio_transcribe", "audio_speak"];
561
551
  /**
@@ -566,12 +556,13 @@ export const ALL_AUDIO_TOOL_NAMES = ["audio_transcribe", "audio_speak"];
566
556
  * @param allowedTools - Optional filter
567
557
  * @param vault - Resolved vault credentials for credential resolution
568
558
  */
569
- export function createAudioTools(cwd, allowedPaths, allowedTools, vault, fs) {
559
+ export function createAudioTools(cwd, allowedPaths, allowedTools, vault, fs, shell) {
570
560
  const sandbox = resolveAllowedPaths(cwd, allowedPaths);
571
561
  const _fs = fs ?? new NodeFileSystem();
562
+ const _shell = shell ?? new NodeShell();
572
563
  const factories = {
573
564
  audio_transcribe: () => createTranscribeTool(cwd, sandbox, _fs, vault),
574
- audio_speak: () => createSpeakTool(cwd, sandbox, _fs, vault),
565
+ audio_speak: () => createSpeakTool(cwd, sandbox, _fs, _shell, vault),
575
566
  };
576
567
  const names = allowedTools
577
568
  ? ALL_AUDIO_TOOL_NAMES.filter(n => allowedTools.some(a => a.toLowerCase() === n))
@@ -1 +1 @@
1
- {"version":3,"file":"audio-tools.js","sourceRoot":"","sources":["../src/audio-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"audio-tools.js","sourceRoot":"","sources":["../src/audio-tools.ts"],"names":[],"mappings":"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"}
@@ -2,24 +2,29 @@
2
2
  * Browser automation tools powered by agent-browser.
3
3
  *
4
4
  * Uses the agent-browser CLI (https://github.com/vercel-labs/agent-browser)
5
- * via child_process with --json output for structured results.
5
+ * with --json output for structured results, routed through the
6
+ * Shell abstraction so it works the same in three environments:
7
+ * - OSS standalone (NodeShell): agent-browser must be on PATH
8
+ * locally (`npm install -g agent-browser && agent-browser install`).
9
+ * - Polpo task runner: NodeShell inside the sandbox; agent-browser
10
+ * is baked into the snapshot.
11
+ * - Cloud chat-completion (SandboxProxyShell): the worker proxies
12
+ * every command into the project's sandbox, where agent-browser
13
+ * lives. Without this routing the worker would `spawn` locally
14
+ * and fail with `ENOENT`, since the worker container has no
15
+ * Chromium and no agent-browser binary.
6
16
  *
7
- * The agent-browser CLI manages a daemon process that keeps the browser alive
8
- * between commands, making sequential tool calls fast (no cold-start per command).
9
- *
10
- * Requires `agent-browser` to be installed globally or in PATH.
11
- * Install: `npm install -g agent-browser && agent-browser install`
12
- *
13
- * Session isolation: Each agent gets its own browser session via --session flag,
14
- * preventing cross-agent interference when multiple agents use browser tools.
17
+ * Session isolation: each agent gets its own browser session via
18
+ * --session, preventing cross-agent interference.
15
19
  */
16
20
  import type { PolpoTool as AgentTool } from "@polpo-ai/core";
21
+ import type { Shell } from "@polpo-ai/core";
17
22
  /**
18
23
  * Cleanup an agent-browser session: close the session.
19
24
  * Profile data is automatically persisted by agent-browser when --profile is used.
20
25
  * Called by the engine on agent exit.
21
26
  */
22
- export declare function cleanupAgentBrowserSession(session: string): Promise<void>;
27
+ export declare function cleanupAgentBrowserSession(session: string, shell?: Shell): Promise<void>;
23
28
  export type BrowserToolName = "browser_navigate" | "browser_snapshot" | "browser_click" | "browser_fill" | "browser_type" | "browser_press" | "browser_screenshot" | "browser_get" | "browser_select" | "browser_hover" | "browser_scroll" | "browser_wait" | "browser_eval" | "browser_close" | "browser_back" | "browser_forward" | "browser_reload" | "browser_tabs";
24
29
  export declare const ALL_BROWSER_TOOL_NAMES: BrowserToolName[];
25
30
  /**
@@ -32,5 +37,5 @@ export declare const ALL_BROWSER_TOOL_NAMES: BrowserToolName[];
32
37
  * Stores cookies, localStorage, auth state across sessions.
33
38
  * Typically `.polpo/browser-profiles/<agent>/`.
34
39
  */
35
- export declare function createBrowserTools(cwd: string, session?: string, allowedTools?: string[], profileDir?: string): AgentTool<any>[];
40
+ export declare function createBrowserTools(cwd: string, session?: string, allowedTools?: string[], profileDir?: string, shell?: Shell): AgentTool<any>[];
36
41
  //# sourceMappingURL=browser-tools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"browser-tools.d.ts","sourceRoot":"","sources":["../src/browser-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,KAAK,EAAE,SAAS,IAAI,SAAS,EAAiC,MAAM,gBAAgB,CAAC;AAK5F;;;;GAIG;AACH,wBAAsB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAU/E;AAgfD,MAAM,MAAM,eAAe,GACvB,kBAAkB,GAAG,kBAAkB,GAAG,eAAe,GAAG,cAAc,GAC1E,cAAc,GAAG,eAAe,GAAG,oBAAoB,GAAG,aAAa,GACvE,gBAAgB,GAAG,eAAe,GAAG,gBAAgB,GAAG,cAAc,GACtE,cAAc,GAAG,eAAe,GAAG,cAAc,GAAG,iBAAiB,GACrE,gBAAgB,GAAG,cAAc,CAAC;AAEtC,eAAO,MAAM,sBAAsB,EAAE,eAAe,EAMnD,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,MAAkB,EAC3B,YAAY,CAAC,EAAE,MAAM,EAAE,EACvB,UAAU,CAAC,EAAE,MAAM,GAClB,SAAS,CAAC,GAAG,CAAC,EAAE,CA2BlB"}
1
+ {"version":3,"file":"browser-tools.d.ts","sourceRoot":"","sources":["../src/browser-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,KAAK,EAAE,SAAS,IAAI,SAAS,EAAiC,MAAM,gBAAgB,CAAC;AAC5F,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAa5C;;;;GAIG;AACH,wBAAsB,0BAA0B,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAO9F;AA6cD,MAAM,MAAM,eAAe,GACvB,kBAAkB,GAAG,kBAAkB,GAAG,eAAe,GAAG,cAAc,GAC1E,cAAc,GAAG,eAAe,GAAG,oBAAoB,GAAG,aAAa,GACvE,gBAAgB,GAAG,eAAe,GAAG,gBAAgB,GAAG,cAAc,GACtE,cAAc,GAAG,eAAe,GAAG,cAAc,GAAG,iBAAiB,GACrE,gBAAgB,GAAG,cAAc,CAAC;AAEtC,eAAO,MAAM,sBAAsB,EAAE,eAAe,EAMnD,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,MAAkB,EAC3B,YAAY,CAAC,EAAE,MAAM,EAAE,EACvB,UAAU,CAAC,EAAE,MAAM,EACnB,KAAK,CAAC,EAAE,KAAK,GACZ,SAAS,CAAC,GAAG,CAAC,EAAE,CA4BlB"}
@@ -2,107 +2,88 @@
2
2
  * Browser automation tools powered by agent-browser.
3
3
  *
4
4
  * Uses the agent-browser CLI (https://github.com/vercel-labs/agent-browser)
5
- * via child_process with --json output for structured results.
5
+ * with --json output for structured results, routed through the
6
+ * Shell abstraction so it works the same in three environments:
7
+ * - OSS standalone (NodeShell): agent-browser must be on PATH
8
+ * locally (`npm install -g agent-browser && agent-browser install`).
9
+ * - Polpo task runner: NodeShell inside the sandbox; agent-browser
10
+ * is baked into the snapshot.
11
+ * - Cloud chat-completion (SandboxProxyShell): the worker proxies
12
+ * every command into the project's sandbox, where agent-browser
13
+ * lives. Without this routing the worker would `spawn` locally
14
+ * and fail with `ENOENT`, since the worker container has no
15
+ * Chromium and no agent-browser binary.
6
16
  *
7
- * The agent-browser CLI manages a daemon process that keeps the browser alive
8
- * between commands, making sequential tool calls fast (no cold-start per command).
9
- *
10
- * Requires `agent-browser` to be installed globally or in PATH.
11
- * Install: `npm install -g agent-browser && agent-browser install`
12
- *
13
- * Session isolation: Each agent gets its own browser session via --session flag,
14
- * preventing cross-agent interference when multiple agents use browser tools.
17
+ * Session isolation: each agent gets its own browser session via
18
+ * --session, preventing cross-agent interference.
15
19
  */
16
- import { execSync, spawn as spawnChild } from "node:child_process";
17
20
  import { resolve } from "node:path";
18
21
  import { Type } from "@sinclair/typebox";
22
+ import { NodeShell } from "./adapters/node-shell.js";
19
23
  const MAX_OUTPUT_BYTES = 50_000;
20
24
  const DEFAULT_TIMEOUT = 30_000;
25
+ /** Quote a CLI argument so it survives `shell.execute` (which takes a
26
+ * full command line, not an argv). Conservative: single-quote and
27
+ * escape any embedded single quotes. */
28
+ function quote(arg) {
29
+ return `'${arg.replace(/'/g, `'\\''`)}'`;
30
+ }
21
31
  /**
22
32
  * Cleanup an agent-browser session: close the session.
23
33
  * Profile data is automatically persisted by agent-browser when --profile is used.
24
34
  * Called by the engine on agent exit.
25
35
  */
26
- export async function cleanupAgentBrowserSession(session) {
36
+ export async function cleanupAgentBrowserSession(session, shell) {
37
+ const _shell = shell ?? new NodeShell();
27
38
  try {
28
- execSync(`agent-browser --session ${session} close`, {
29
- encoding: "utf-8",
30
- timeout: 10_000,
31
- stdio: ["ignore", "pipe", "pipe"],
32
- });
39
+ await _shell.execute(`agent-browser --session ${quote(session)} close`, { timeout: 10_000 });
33
40
  }
34
41
  catch {
35
42
  // Already closed
36
43
  }
37
44
  }
38
45
  // ─── Helpers ───
39
- /** Execute agent-browser CLI command and return parsed result */
40
- function execBrowser(args, options = {}) {
41
- const sessionArgs = options.session ? ["--session", options.session] : [];
42
- const profileArgs = options.profileDir ? ["--profile", options.profileDir] : [];
43
- const cmd = ["agent-browser", ...sessionArgs, ...profileArgs, ...args, "--json"].join(" ");
46
+ /** Execute an agent-browser CLI command via the Shell abstraction
47
+ * and parse the --json response. */
48
+ async function execBrowserAsync(shell, args, options = {}) {
49
+ const parts = ["agent-browser"];
50
+ if (options.session)
51
+ parts.push("--session", quote(options.session));
52
+ if (options.profileDir)
53
+ parts.push("--profile", quote(options.profileDir));
54
+ for (const a of args)
55
+ parts.push(quote(a));
56
+ parts.push("--json");
57
+ const cmd = parts.join(" ");
58
+ let result;
44
59
  try {
45
- const raw = execSync(cmd, {
46
- encoding: "utf-8",
47
- timeout: options.timeout ?? DEFAULT_TIMEOUT,
48
- cwd: options.cwd,
49
- stdio: ["ignore", "pipe", "pipe"],
50
- }).trim();
60
+ result = await shell.execute(cmd, { cwd: options.cwd, timeout: options.timeout ?? DEFAULT_TIMEOUT });
61
+ }
62
+ catch (err) {
63
+ return { success: false, error: err?.message ?? String(err), raw: err?.message ?? String(err) };
64
+ }
65
+ let raw = (result.stdout || result.stderr || "").trim();
66
+ if (raw.length > MAX_OUTPUT_BYTES) {
67
+ raw = raw.slice(-MAX_OUTPUT_BYTES) + "\n[truncated]";
68
+ }
69
+ if (result.exitCode !== 0) {
70
+ // agent-browser still emits structured JSON on failure when --json
71
+ // is set; try to parse it before falling back to raw stderr.
51
72
  try {
52
73
  const parsed = JSON.parse(raw);
53
- return { success: parsed.success ?? true, data: parsed.data ?? parsed, raw };
74
+ return { success: false, error: parsed.error ?? raw, data: parsed.data, raw };
54
75
  }
55
76
  catch {
56
- return { success: true, data: raw, raw };
77
+ return { success: false, error: raw || `exit ${result.exitCode}`, raw };
57
78
  }
58
79
  }
59
- catch (err) {
60
- const stderr = err.stderr?.toString() ?? "";
61
- const stdout = err.stdout?.toString() ?? "";
62
- return { success: false, error: stderr || stdout || err.message, raw: stderr || stdout };
80
+ try {
81
+ const parsed = JSON.parse(raw);
82
+ return { success: parsed.success ?? true, data: parsed.data ?? parsed, raw };
83
+ }
84
+ catch {
85
+ return { success: true, data: raw, raw };
63
86
  }
64
- }
65
- /** Execute agent-browser command async with signal support */
66
- function execBrowserAsync(args, options = {}) {
67
- return new Promise((resolve) => {
68
- const sessionArgs = options.session ? ["--session", options.session] : [];
69
- const profileArgs = options.profileDir ? ["--profile", options.profileDir] : [];
70
- const fullArgs = [...sessionArgs, ...profileArgs, ...args, "--json"];
71
- const child = spawnChild("agent-browser", fullArgs, {
72
- cwd: options.cwd,
73
- stdio: ["ignore", "pipe", "pipe"],
74
- });
75
- const chunks = [];
76
- let killed = false;
77
- const timer = setTimeout(() => {
78
- killed = true;
79
- child.kill("SIGTERM");
80
- }, options.timeout ?? DEFAULT_TIMEOUT);
81
- const onAbort = () => { killed = true; child.kill("SIGTERM"); };
82
- options.signal?.addEventListener("abort", onAbort, { once: true });
83
- child.stdout.on("data", (d) => chunks.push(d));
84
- child.stderr.on("data", (d) => chunks.push(d));
85
- child.on("close", (code) => {
86
- clearTimeout(timer);
87
- options.signal?.removeEventListener("abort", onAbort);
88
- let raw = Buffer.concat(chunks).toString("utf-8").trim();
89
- if (raw.length > MAX_OUTPUT_BYTES) {
90
- raw = raw.slice(-MAX_OUTPUT_BYTES) + "\n[truncated]";
91
- }
92
- try {
93
- const parsed = JSON.parse(raw);
94
- resolve({ success: parsed.success ?? (code === 0), data: parsed.data ?? parsed, raw });
95
- }
96
- catch {
97
- resolve({ success: code === 0, data: raw, raw });
98
- }
99
- });
100
- child.on("error", (err) => {
101
- clearTimeout(timer);
102
- options.signal?.removeEventListener("abort", onAbort);
103
- resolve({ success: false, error: err.message, raw: err.message });
104
- });
105
- });
106
87
  }
107
88
  function browserResult(result) {
108
89
  if (!result.success) {
@@ -121,14 +102,14 @@ function browserResult(result) {
121
102
  const BrowserNavigateSchema = Type.Object({
122
103
  url: Type.String({ description: "URL to navigate to (e.g. 'https://example.com')" }),
123
104
  });
124
- function createBrowserNavigateTool(session, profileDir) {
105
+ function createBrowserNavigateTool(shell, session, profileDir) {
125
106
  return {
126
107
  name: "browser_navigate",
127
108
  label: "Browser Navigate",
128
109
  description: "Open a URL in the browser. Launches the browser if not already running.",
129
110
  parameters: BrowserNavigateSchema,
130
111
  async execute(_id, params, signal) {
131
- const result = await execBrowserAsync(["open", params.url], { session, profileDir, signal });
112
+ const result = await execBrowserAsync(shell, ["open", params.url], { session, profileDir });
132
113
  return browserResult(result);
133
114
  },
134
115
  };
@@ -140,7 +121,7 @@ const BrowserSnapshotSchema = Type.Object({
140
121
  max_depth: Type.Optional(Type.Number({ description: "Limit tree depth" })),
141
122
  selector: Type.Optional(Type.String({ description: "Scope snapshot to a CSS selector" })),
142
123
  });
143
- function createBrowserSnapshotTool(session, profileDir) {
124
+ function createBrowserSnapshotTool(shell, session, profileDir) {
144
125
  return {
145
126
  name: "browser_snapshot",
146
127
  label: "Browser Snapshot",
@@ -157,7 +138,7 @@ function createBrowserSnapshotTool(session, profileDir) {
157
138
  args.push("-d", String(params.max_depth));
158
139
  if (params.selector)
159
140
  args.push("-s", params.selector);
160
- const result = await execBrowserAsync(args, { session, profileDir, signal, timeout: 15_000 });
141
+ const result = await execBrowserAsync(shell, args, { session, profileDir, timeout: 15_000 });
161
142
  return browserResult(result);
162
143
  },
163
144
  };
@@ -166,14 +147,14 @@ function createBrowserSnapshotTool(session, profileDir) {
166
147
  const BrowserClickSchema = Type.Object({
167
148
  selector: Type.String({ description: "Element ref from snapshot (e.g. '@e2') or CSS selector" }),
168
149
  });
169
- function createBrowserClickTool(session, profileDir) {
150
+ function createBrowserClickTool(shell, session, profileDir) {
170
151
  return {
171
152
  name: "browser_click",
172
153
  label: "Browser Click",
173
154
  description: "Click an element. Use refs from snapshot (e.g. @e2) for reliable targeting.",
174
155
  parameters: BrowserClickSchema,
175
156
  async execute(_id, params, signal) {
176
- const result = await execBrowserAsync(["click", params.selector], { session, profileDir, signal });
157
+ const result = await execBrowserAsync(shell, ["click", params.selector], { session, profileDir });
177
158
  return browserResult(result);
178
159
  },
179
160
  };
@@ -183,14 +164,14 @@ const BrowserFillSchema = Type.Object({
183
164
  selector: Type.String({ description: "Element ref from snapshot (e.g. '@e3') or CSS selector" }),
184
165
  text: Type.String({ description: "Text to fill into the input" }),
185
166
  });
186
- function createBrowserFillTool(session, profileDir) {
167
+ function createBrowserFillTool(shell, session, profileDir) {
187
168
  return {
188
169
  name: "browser_fill",
189
170
  label: "Browser Fill",
190
171
  description: "Clear an input field and type new text. Use refs from snapshot for targeting.",
191
172
  parameters: BrowserFillSchema,
192
173
  async execute(_id, params, signal) {
193
- const result = await execBrowserAsync(["fill", params.selector, params.text], { session, profileDir, signal });
174
+ const result = await execBrowserAsync(shell, ["fill", params.selector, params.text], { session, profileDir });
194
175
  return browserResult(result);
195
176
  },
196
177
  };
@@ -200,14 +181,14 @@ const BrowserTypeSchema = Type.Object({
200
181
  selector: Type.String({ description: "Element ref or CSS selector" }),
201
182
  text: Type.String({ description: "Text to type (appends to existing content)" }),
202
183
  });
203
- function createBrowserTypeTool(session, profileDir) {
184
+ function createBrowserTypeTool(shell, session, profileDir) {
204
185
  return {
205
186
  name: "browser_type",
206
187
  label: "Browser Type",
207
188
  description: "Type text into an element without clearing it first. Use for appending text.",
208
189
  parameters: BrowserTypeSchema,
209
190
  async execute(_id, params, signal) {
210
- const result = await execBrowserAsync(["type", params.selector, params.text], { session, profileDir, signal });
191
+ const result = await execBrowserAsync(shell, ["type", params.selector, params.text], { session, profileDir });
211
192
  return browserResult(result);
212
193
  },
213
194
  };
@@ -216,14 +197,14 @@ function createBrowserTypeTool(session, profileDir) {
216
197
  const BrowserPressSchema = Type.Object({
217
198
  key: Type.String({ description: "Key to press (e.g. 'Enter', 'Tab', 'Control+a', 'Escape')" }),
218
199
  });
219
- function createBrowserPressTool(session, profileDir) {
200
+ function createBrowserPressTool(shell, session, profileDir) {
220
201
  return {
221
202
  name: "browser_press",
222
203
  label: "Browser Press Key",
223
204
  description: "Press a keyboard key. Supports modifiers like 'Control+a', 'Shift+Enter'.",
224
205
  parameters: BrowserPressSchema,
225
206
  async execute(_id, params, signal) {
226
- const result = await execBrowserAsync(["press", params.key], { session, profileDir, signal });
207
+ const result = await execBrowserAsync(shell, ["press", params.key], { session, profileDir });
227
208
  return browserResult(result);
228
209
  },
229
210
  };
@@ -233,7 +214,7 @@ const BrowserScreenshotSchema = Type.Object({
233
214
  path: Type.Optional(Type.String({ description: "File path to save screenshot (default: auto-generated temp path)" })),
234
215
  full_page: Type.Optional(Type.Boolean({ description: "Capture full page, not just viewport" })),
235
216
  });
236
- function createBrowserScreenshotTool(session, cwd, profileDir) {
217
+ function createBrowserScreenshotTool(shell, session, cwd, profileDir) {
237
218
  return {
238
219
  name: "browser_screenshot",
239
220
  label: "Browser Screenshot",
@@ -245,7 +226,7 @@ function createBrowserScreenshotTool(session, cwd, profileDir) {
245
226
  args.push(resolve(cwd, params.path));
246
227
  if (params.full_page)
247
228
  args.push("--full");
248
- const result = await execBrowserAsync(args, { session, profileDir, signal });
229
+ const result = await execBrowserAsync(shell, args, { session, profileDir });
249
230
  return browserResult(result);
250
231
  },
251
232
  };
@@ -261,7 +242,7 @@ const BrowserGetSchema = Type.Object({
261
242
  ], { description: "What to retrieve: text, html, value, title, or url" }),
262
243
  selector: Type.Optional(Type.String({ description: "Element ref or CSS selector (required for text/html/value)" })),
263
244
  });
264
- function createBrowserGetTool(session, profileDir) {
245
+ function createBrowserGetTool(shell, session, profileDir) {
265
246
  return {
266
247
  name: "browser_get",
267
248
  label: "Browser Get Info",
@@ -271,7 +252,7 @@ function createBrowserGetTool(session, profileDir) {
271
252
  const args = ["get", params.what];
272
253
  if (params.selector)
273
254
  args.push(params.selector);
274
- const result = await execBrowserAsync(args, { session, profileDir, signal });
255
+ const result = await execBrowserAsync(shell, args, { session, profileDir });
275
256
  return browserResult(result);
276
257
  },
277
258
  };
@@ -281,14 +262,14 @@ const BrowserSelectSchema = Type.Object({
281
262
  selector: Type.String({ description: "Element ref or CSS selector for the <select> element" }),
282
263
  value: Type.String({ description: "Option value to select" }),
283
264
  });
284
- function createBrowserSelectTool(session, profileDir) {
265
+ function createBrowserSelectTool(shell, session, profileDir) {
285
266
  return {
286
267
  name: "browser_select",
287
268
  label: "Browser Select",
288
269
  description: "Select an option from a dropdown <select> element.",
289
270
  parameters: BrowserSelectSchema,
290
271
  async execute(_id, params, signal) {
291
- const result = await execBrowserAsync(["select", params.selector, params.value], { session, profileDir, signal });
272
+ const result = await execBrowserAsync(shell, ["select", params.selector, params.value], { session, profileDir });
292
273
  return browserResult(result);
293
274
  },
294
275
  };
@@ -297,14 +278,14 @@ function createBrowserSelectTool(session, profileDir) {
297
278
  const BrowserHoverSchema = Type.Object({
298
279
  selector: Type.String({ description: "Element ref or CSS selector to hover" }),
299
280
  });
300
- function createBrowserHoverTool(session, profileDir) {
281
+ function createBrowserHoverTool(shell, session, profileDir) {
301
282
  return {
302
283
  name: "browser_hover",
303
284
  label: "Browser Hover",
304
285
  description: "Hover over an element to trigger hover states, tooltips, or dropdown menus.",
305
286
  parameters: BrowserHoverSchema,
306
287
  async execute(_id, params, signal) {
307
- const result = await execBrowserAsync(["hover", params.selector], { session, profileDir, signal });
288
+ const result = await execBrowserAsync(shell, ["hover", params.selector], { session, profileDir });
308
289
  return browserResult(result);
309
290
  },
310
291
  };
@@ -319,7 +300,7 @@ const BrowserScrollSchema = Type.Object({
319
300
  ], { description: "Scroll direction" }),
320
301
  pixels: Type.Optional(Type.Number({ description: "Number of pixels to scroll (default: varies)" })),
321
302
  });
322
- function createBrowserScrollTool(session, profileDir) {
303
+ function createBrowserScrollTool(shell, session, profileDir) {
323
304
  return {
324
305
  name: "browser_scroll",
325
306
  label: "Browser Scroll",
@@ -329,7 +310,7 @@ function createBrowserScrollTool(session, profileDir) {
329
310
  const args = ["scroll", params.direction];
330
311
  if (params.pixels)
331
312
  args.push(String(params.pixels));
332
- const result = await execBrowserAsync(args, { session, profileDir, signal });
313
+ const result = await execBrowserAsync(shell, args, { session, profileDir });
333
314
  return browserResult(result);
334
315
  },
335
316
  };
@@ -346,7 +327,7 @@ const BrowserWaitSchema = Type.Object({
346
327
  Type.Literal("networkidle"),
347
328
  ], { description: "Wait for load state" })),
348
329
  });
349
- function createBrowserWaitTool(session, profileDir) {
330
+ function createBrowserWaitTool(shell, session, profileDir) {
350
331
  return {
351
332
  name: "browser_wait",
352
333
  label: "Browser Wait",
@@ -364,7 +345,7 @@ function createBrowserWaitTool(session, profileDir) {
364
345
  args.push(String(params.timeout_ms));
365
346
  if (params.load_state)
366
347
  args.push("--load", params.load_state);
367
- const result = await execBrowserAsync(args, { session, profileDir, signal, timeout: 60_000 });
348
+ const result = await execBrowserAsync(shell, args, { session, profileDir, timeout: 60_000 });
368
349
  return browserResult(result);
369
350
  },
370
351
  };
@@ -373,7 +354,7 @@ function createBrowserWaitTool(session, profileDir) {
373
354
  const BrowserEvalSchema = Type.Object({
374
355
  javascript: Type.String({ description: "JavaScript code to execute in the browser page context" }),
375
356
  });
376
- function createBrowserEvalTool(session, profileDir) {
357
+ function createBrowserEvalTool(shell, session, profileDir) {
377
358
  return {
378
359
  name: "browser_eval",
379
360
  label: "Browser Evaluate JS",
@@ -383,57 +364,57 @@ function createBrowserEvalTool(session, profileDir) {
383
364
  async execute(_id, params, signal) {
384
365
  // Use base64 encoding for safe transport of complex JS
385
366
  const b64 = Buffer.from(params.javascript).toString("base64");
386
- const result = await execBrowserAsync(["eval", b64, "-b"], { session, profileDir, signal });
367
+ const result = await execBrowserAsync(shell, ["eval", b64, "-b"], { session, profileDir });
387
368
  return browserResult(result);
388
369
  },
389
370
  };
390
371
  }
391
372
  // ─── Tool: browser_close ───
392
373
  const BrowserCloseSchema = Type.Object({});
393
- function createBrowserCloseTool(session) {
374
+ function createBrowserCloseTool(shell, session) {
394
375
  return {
395
376
  name: "browser_close",
396
377
  label: "Browser Close",
397
378
  description: "Close the browser session. Profile data (cookies, login) is saved automatically.",
398
379
  parameters: BrowserCloseSchema,
399
380
  async execute(_id, _params, signal) {
400
- const result = await execBrowserAsync(["close"], { session, signal });
381
+ const result = await execBrowserAsync(shell, ["close"], { session });
401
382
  return browserResult(result);
402
383
  },
403
384
  };
404
385
  }
405
386
  // ─── Tool: browser_back / browser_forward / browser_reload ───
406
387
  const BrowserNavActionSchema = Type.Object({});
407
- function createBrowserBackTool(session, profileDir) {
388
+ function createBrowserBackTool(shell, session, profileDir) {
408
389
  return {
409
390
  name: "browser_back",
410
391
  label: "Browser Back",
411
392
  description: "Navigate back in browser history.",
412
393
  parameters: BrowserNavActionSchema,
413
394
  async execute(_id, _params, signal) {
414
- return browserResult(await execBrowserAsync(["back"], { session, profileDir, signal }));
395
+ return browserResult(await execBrowserAsync(shell, ["back"], { session, profileDir }));
415
396
  },
416
397
  };
417
398
  }
418
- function createBrowserForwardTool(session, profileDir) {
399
+ function createBrowserForwardTool(shell, session, profileDir) {
419
400
  return {
420
401
  name: "browser_forward",
421
402
  label: "Browser Forward",
422
403
  description: "Navigate forward in browser history.",
423
404
  parameters: BrowserNavActionSchema,
424
405
  async execute(_id, _params, signal) {
425
- return browserResult(await execBrowserAsync(["forward"], { session, profileDir, signal }));
406
+ return browserResult(await execBrowserAsync(shell, ["forward"], { session, profileDir }));
426
407
  },
427
408
  };
428
409
  }
429
- function createBrowserReloadTool(session, profileDir) {
410
+ function createBrowserReloadTool(shell, session, profileDir) {
430
411
  return {
431
412
  name: "browser_reload",
432
413
  label: "Browser Reload",
433
414
  description: "Reload the current page.",
434
415
  parameters: BrowserNavActionSchema,
435
416
  async execute(_id, _params, signal) {
436
- return browserResult(await execBrowserAsync(["reload"], { session, profileDir, signal }));
417
+ return browserResult(await execBrowserAsync(shell, ["reload"], { session, profileDir }));
437
418
  },
438
419
  };
439
420
  }
@@ -448,7 +429,7 @@ const BrowserTabsSchema = Type.Object({
448
429
  index: Type.Optional(Type.Number({ description: "Tab index for switch/close actions" })),
449
430
  url: Type.Optional(Type.String({ description: "URL to open in new tab" })),
450
431
  });
451
- function createBrowserTabsTool(session, profileDir) {
432
+ function createBrowserTabsTool(shell, session, profileDir) {
452
433
  return {
453
434
  name: "browser_tabs",
454
435
  label: "Browser Tabs",
@@ -474,7 +455,7 @@ function createBrowserTabsTool(session, profileDir) {
474
455
  args.push(String(params.index));
475
456
  break;
476
457
  }
477
- const result = await execBrowserAsync(args, { session, profileDir, signal });
458
+ const result = await execBrowserAsync(shell, args, { session, profileDir });
478
459
  return browserResult(result);
479
460
  },
480
461
  };
@@ -496,26 +477,27 @@ export const ALL_BROWSER_TOOL_NAMES = [
496
477
  * Stores cookies, localStorage, auth state across sessions.
497
478
  * Typically `.polpo/browser-profiles/<agent>/`.
498
479
  */
499
- export function createBrowserTools(cwd, session = "default", allowedTools, profileDir) {
480
+ export function createBrowserTools(cwd, session = "default", allowedTools, profileDir, shell) {
481
+ const _shell = shell ?? new NodeShell();
500
482
  const factories = {
501
- browser_navigate: () => createBrowserNavigateTool(session, profileDir),
502
- browser_snapshot: () => createBrowserSnapshotTool(session, profileDir),
503
- browser_click: () => createBrowserClickTool(session, profileDir),
504
- browser_fill: () => createBrowserFillTool(session, profileDir),
505
- browser_type: () => createBrowserTypeTool(session, profileDir),
506
- browser_press: () => createBrowserPressTool(session, profileDir),
507
- browser_screenshot: () => createBrowserScreenshotTool(session, cwd, profileDir),
508
- browser_get: () => createBrowserGetTool(session, profileDir),
509
- browser_select: () => createBrowserSelectTool(session, profileDir),
510
- browser_hover: () => createBrowserHoverTool(session, profileDir),
511
- browser_scroll: () => createBrowserScrollTool(session, profileDir),
512
- browser_wait: () => createBrowserWaitTool(session, profileDir),
513
- browser_eval: () => createBrowserEvalTool(session, profileDir),
514
- browser_close: () => createBrowserCloseTool(session),
515
- browser_back: () => createBrowserBackTool(session, profileDir),
516
- browser_forward: () => createBrowserForwardTool(session, profileDir),
517
- browser_reload: () => createBrowserReloadTool(session, profileDir),
518
- browser_tabs: () => createBrowserTabsTool(session, profileDir),
483
+ browser_navigate: () => createBrowserNavigateTool(_shell, session, profileDir),
484
+ browser_snapshot: () => createBrowserSnapshotTool(_shell, session, profileDir),
485
+ browser_click: () => createBrowserClickTool(_shell, session, profileDir),
486
+ browser_fill: () => createBrowserFillTool(_shell, session, profileDir),
487
+ browser_type: () => createBrowserTypeTool(_shell, session, profileDir),
488
+ browser_press: () => createBrowserPressTool(_shell, session, profileDir),
489
+ browser_screenshot: () => createBrowserScreenshotTool(_shell, session, cwd, profileDir),
490
+ browser_get: () => createBrowserGetTool(_shell, session, profileDir),
491
+ browser_select: () => createBrowserSelectTool(_shell, session, profileDir),
492
+ browser_hover: () => createBrowserHoverTool(_shell, session, profileDir),
493
+ browser_scroll: () => createBrowserScrollTool(_shell, session, profileDir),
494
+ browser_wait: () => createBrowserWaitTool(_shell, session, profileDir),
495
+ browser_eval: () => createBrowserEvalTool(_shell, session, profileDir),
496
+ browser_close: () => createBrowserCloseTool(_shell, session),
497
+ browser_back: () => createBrowserBackTool(_shell, session, profileDir),
498
+ browser_forward: () => createBrowserForwardTool(_shell, session, profileDir),
499
+ browser_reload: () => createBrowserReloadTool(_shell, session, profileDir),
500
+ browser_tabs: () => createBrowserTabsTool(_shell, session, profileDir),
519
501
  };
520
502
  const names = allowedTools
521
503
  ? ALL_BROWSER_TOOL_NAMES.filter(n => allowedTools.some(a => a.toLowerCase() === n))
@@ -1 +1 @@
1
- {"version":3,"file":"browser-tools.js","sourceRoot":"","sources":["../src/browser-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser-tools.js","sourceRoot":"","sources":["../src/browser-tools.ts"],"names":[],"mappings":"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"}
@@ -397,7 +397,7 @@ export async function createAllTools(options) {
397
397
  tools.push(...createSystemTools(cwd, allowedTools, allowedPaths, options.outputDir, options.vault, options.fs, options.shell));
398
398
  // Browser tools — activated when any browser_* tool is in allowedTools
399
399
  if (categoryRequested(ALL_BROWSER_TOOL_NAMES)) {
400
- tools.push(...createBrowserTools(cwd, browserSession, allowedTools, options.browserProfileDir));
400
+ tools.push(...createBrowserTools(cwd, browserSession, allowedTools, options.browserProfileDir, options.shell));
401
401
  }
402
402
  // Email tools — activated when any email_* tool is in allowedTools
403
403
  if (categoryRequested(ALL_EMAIL_TOOL_NAMES)) {
@@ -409,7 +409,7 @@ export async function createAllTools(options) {
409
409
  }
410
410
  // Audio tools — activated when any audio_* tool is in allowedTools
411
411
  if (categoryRequested(ALL_AUDIO_TOOL_NAMES)) {
412
- tools.push(...createAudioTools(cwd, allowedPaths, allowedTools, options.vault, options.fs));
412
+ tools.push(...createAudioTools(cwd, allowedPaths, allowedTools, options.vault, options.fs, options.shell));
413
413
  }
414
414
  // Excel tools — activated when any excel_* tool is in allowedTools
415
415
  if (categoryRequested(ALL_EXCEL_TOOL_NAMES)) {
@@ -1 +1 @@
1
- {"version":3,"file":"system-tools.js","sourceRoot":"","sources":["../src/system-tools.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAG7D,qEAAqE;AACrE,0EAA0E;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAEzC,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EAAE,kBAAkB,IAAI,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAClF,OAAO,EAAE,eAAe,IAAI,mBAAmB,EAA+C,MAAM,iBAAiB,CAAC;AACtH,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAGxD,MAAM,cAAc,GAAG,GAAG,CAAC;AAC3B,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAEhC,oBAAoB;AAEpB,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC;IAC7B,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,+CAA+C,EAAE,CAAC;IACnF,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,uCAAuC,EAAE,CAAC,CAAC;IAC5F,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,6BAA6B,EAAE,CAAC,CAAC;CAClF,CAAC,CAAC;AAEH,SAAS,cAAc,CAAC,GAAW,EAAE,OAAiB,EAAE,EAAc;IACpE,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,WAAW;QAClB,WAAW,EAAE,2HAA2H;QACxI,UAAU,EAAE,UAAU;QACtB,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM;YAC/B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;YAC3C,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YAC7C,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACxC,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YACxC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,cAAc,CAAC;YAC7C,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC;YACrD,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC3E,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;YACnD,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,UAAU,QAAQ,CAAC,MAAM,GAAG,MAAM,GAAG,KAAK,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;YACzF,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,EAAE,CAAC;gBACpD,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE;aACzE,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AAED,qBAAqB;AAErB,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC;IAC9B,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,uCAAuC,EAAE,CAAC;IAC3E,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,uBAAuB,EAAE,CAAC;CAC/D,CAAC,CAAC;AAEH,SAAS,eAAe,CAAC,GAAW,EAAE,OAAiB,EAAE,EAAc;IACrE,OAAO;QACL,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,kGAAkG;QAC/G,UAAU,EAAE,WAAW;QACvB,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM;YAC/B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;YAC3C,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC9C,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;YAClC,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;YAC7C,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,QAAQ,KAAK,MAAM,CAAC,OAAO,CAAC,MAAM,SAAS,EAAE,CAAC;gBAC/F,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE;aAC1D,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AAED,oBAAoB;AAEpB,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC;IAC7B,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,+CAA+C,EAAE,CAAC;IACnF,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,6DAA6D,EAAE,CAAC;IACrG,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAC;CAC3D,CAAC,CAAC;AAEH,SAAS,cAAc,CAAC,GAAW,EAAE,OAAiB,EAAE,EAAc;IACpE,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,WAAW;QAClB,WAAW,EAAE,2EAA2E;QACxF,UAAU,EAAE,UAAU;QACtB,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM;YAC/B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;YAC3C,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YAC7C,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC5C,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;YAC9D,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;gBACtB,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gCAAgC,QAAQ,EAAE,EAAE,CAAC;oBAC7E,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE;iBAChD,CAAC;YACJ,CAAC;YACD,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;gBACpB,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yBAAyB,WAAW,aAAa,QAAQ,mBAAmB,EAAE,CAAC;oBAC/G,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE;iBACrE,CAAC;YACJ,CAAC;YACD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;YAClE,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACtC,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,QAAQ,cAAc,MAAM,CAAC,QAAQ,CAAC,MAAM,eAAe,MAAM,CAAC,QAAQ,CAAC,MAAM,QAAQ,EAAE,CAAC;gBACtI,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aAC5B,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AAED,oBAAoB;AAEpB,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC;IAC7B,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,0BAA0B,EAAE,CAAC;IACjE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,2CAA2C,EAAE,CAAC,CAAC;CAClG,CAAC,CAAC;AAEH,SAAS,cAAc,CAAC,GAAW,EAAE,KAAY;IAC/C,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,eAAe;QACtB,WAAW,EAAE,iHAAiH;QAC9H,UAAU,EAAE,UAAU;QACtB,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM;YAC/B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC;YAC1C,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;gBACrE,IAAI,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACzE,IAAI,MAAM,CAAC,MAAM,GAAG,gBAAgB,EAAE,CAAC;oBACrC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,gBAAgB,CAAC,GAAG,4BAA4B,CAAC;gBAC1E,CAAC;gBACD,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,MAAM,CAAC,QAAQ,KAAK,MAAM,EAAE,EAAE,CAAC;oBAC7E,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE;iBAChE,CAAC;YACJ,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC;oBAC1D,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE;iBACzD,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED,oBAAoB;AAEpB,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC;IAC7B,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,8CAA8C,EAAE,CAAC;IACrF,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,uCAAuC,EAAE,CAAC,CAAC;CAC3F,CAAC,CAAC;AAEH,SAAS,cAAc,CAAC,GAAW,EAAE,OAAiB,EAAE,KAAY;IAClE,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,kEAAkE;QAC/E,UAAU,EAAE,UAAU;QACtB,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM;YAC/B,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAChE,iBAAiB,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YAC9C,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,OAAO,CAChC,QAAQ,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,0BAA0B,EAC3G,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CACzB,CAAC;gBACF,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBACpC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,OAAO,CAClC,MAAM,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,0BAA0B,EACpG,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CACzB,CAAC;oBACF,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC/E,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;wBACzF,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE;qBAC1D,CAAC;gBACJ,CAAC;gBACD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;gBACtE,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnD,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE;iBAC1D,CAAC;YACJ,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;oBACnD,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE;iBAC/C,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED,oBAAoB;AAEpB,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC;IAC7B,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,6BAA6B,EAAE,CAAC;IACpE,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,+CAA+C,EAAE,CAAC,CAAC;IAClG,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,gCAAgC,EAAE,CAAC,CAAC;CACvF,CAAC,CAAC;AAEH,SAAS,cAAc,CAAC,GAAW,EAAE,OAAiB,EAAE,KAAY;IAClE,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,+FAA+F;QAC5G,UAAU,EAAE,UAAU;QACtB,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM;YAC/B,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YACjE,iBAAiB,CAAC,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YAC/C,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxF,IAAI,CAAC;gBACH,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,OAAO,CAC3B,YAAY,WAAW,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,0BAA0B,EACpH,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CACzB,CAAC;gBACF,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC/B,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;wBACrD,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE;qBAC/C,CAAC;gBACJ,CAAC;gBACD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACjC,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;oBACzC,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE;iBAC1D,CAAC;YACJ,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;oBACrD,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE;iBAC/C,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED,kBAAkB;AAElB,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,kCAAkC,EAAE,CAAC,CAAC;CACtF,CAAC,CAAC;AAEH,SAAS,YAAY,CAAC,GAAW,EAAE,OAAiB,EAAE,EAAc;IAClE,OAAO;QACL,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,gBAAgB;QACvB,WAAW,EAAE,6CAA6C;QAC1D,UAAU,EAAE,QAAQ;QACpB,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM;YAC/B,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAC1D,iBAAiB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;YACtC,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACpC,MAAM,OAAO,GAAa,EAAE,CAAC;YAC7B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,CAAC;oBACH,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;oBACzC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAClD,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAAC,CAAC;YACjC,CAAC;YACD,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrD,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE;aAC9C,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AAED,gDAAgD;AAEhD;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,QAAgB;IAChE,MAAM,CAAC,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAChC,MAAM,CAAC,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IACjC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACzB,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,YAAsB,EAAE,QAA2B;IACrF,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE,CAAC;QACnC,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1B,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;gBAC5B,IAAI,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC;oBAAE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC;AACrB,CAAC;AAOD,MAAM,eAAe,GAAqB,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;AAElG;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAW,EAAE,YAAuB,EAAE,YAAuB,EAAE,SAAkB,EAAE,KAAqB,EAAE,EAAe,EAAE,KAAa;IACxK,IAAI,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,uJAAuJ,CAAC,CAAC;IAC3K,CAAC;IACD,MAAM,GAAG,GAAG,EAAE,CAAC;IACf,MAAM,MAAM,GAAG,KAAK,CAAC;IACrB,MAAM,OAAO,GAAG,mBAAmB,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;IAEvD,MAAM,SAAS,GAAiD;QAC9D,IAAI,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC;QAC7C,KAAK,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC;QAC/C,IAAI,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC;QAC7C,IAAI,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC;QACvC,IAAI,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC;QAChD,IAAI,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC;QAChD,EAAE,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC;KAC1C,CAAC;IAEF,MAAM,KAAK,GAAG,YAAY;QACxB,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;QAC5E,CAAC,CAAC,eAAe,CAAC;IAEpB,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAE7C,iEAAiE;IACjE,oEAAoE;IACpE,oEAAoE;IACpE,kEAAkE;IAClE,oEAAoE;IACpE,6DAA6D;IAC7D,IAAI,SAAS,EAAE,CAAC;QACd,KAAK,CAAC,IAAI,CAAC,GAAG,sBAAsB,CAAC,GAAG,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC,CAAC;IACpF,CAAC;IAED,mFAAmF;IACnF,KAAK,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,GAAG,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC;IAEpE,gFAAgF;IAChF,IAAI,KAAK,EAAE,CAAC;QACV,KAAK,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,iCAAiC;AAEjC,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAoB,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,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,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AA8B1E;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,YAAY,GAAa;IACpC,GAAG,eAAe;IAClB,GAAG,sBAAsB;IACzB,GAAG,mBAAmB;IACtB,GAAG,oBAAoB;IACvB,GAAG,oBAAoB;IACvB,GAAG,oBAAoB;IACvB,GAAG,oBAAoB;IACvB,GAAG,oBAAoB;IACvB,GAAG,kBAAkB;IACrB,GAAG,mBAAmB;IACtB,GAAG,qBAAqB;IACxB,GAAG,oBAAoB;CACxB,CAAC;AA4BF;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAA8B;IACjE,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;IACtD,MAAM,KAAK,GAAqB,EAAE,CAAC;IAEnC,wFAAwF;IACxF,uEAAuE;IACvE,MAAM,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC;IACxC,MAAM,YAAY,GAAG,UAAU;QAC7B,CAAC,CAAC,mBAAmB,CAAC,UAAU,EAAE,YAAY,CAAC;QAC/C,CAAC,CAAC,SAAS,CAAC;IAEd,mFAAmF;IACnF,MAAM,iBAAiB,GAAG,CAAC,KAAwB,EAAE,EAAE,CACrD,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAElE,0FAA0F;IAC1F,KAAK,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,GAAG,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IAE/H,uEAAuE;IACvE,IAAI,iBAAiB,CAAC,sBAAsB,CAAC,EAAE,CAAC;QAC9C,KAAK,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,GAAG,EAAE,cAAc,EAAE,YAAY,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAClG,CAAC;IAED,mEAAmE;IACnE,IAAI,iBAAiB,CAAC,oBAAoB,CAAC,EAAE,CAAC;QAC5C,KAAK,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,GAAG,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,mBAAmB,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9I,CAAC;IAED,sFAAsF;IACtF,IAAI,iBAAiB,CAAC,oBAAoB,CAAC,EAAE,CAAC;QAC5C,KAAK,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,GAAG,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9F,CAAC;IAED,mEAAmE;IACnE,IAAI,iBAAiB,CAAC,oBAAoB,CAAC,EAAE,CAAC;QAC5C,KAAK,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,GAAG,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9F,CAAC;IAED,mEAAmE;IACnE,IAAI,iBAAiB,CAAC,oBAAoB,CAAC,EAAE,CAAC;QAC5C,KAAK,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,GAAG,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/E,CAAC;IAED,+DAA+D;IAC/D,IAAI,iBAAiB,CAAC,kBAAkB,CAAC,EAAE,CAAC;QAC1C,KAAK,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,GAAG,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7E,CAAC;IAED,iEAAiE;IACjE,IAAI,iBAAiB,CAAC,mBAAmB,CAAC,EAAE,CAAC;QAC3C,KAAK,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,GAAG,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9E,CAAC;IAED,2EAA2E;IAC3E,IAAI,iBAAiB,CAAC,qBAAqB,CAAC,EAAE,CAAC;QAC7C,KAAK,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,OAAO,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,0EAA0E;IAC1E,IAAI,iBAAiB,CAAC,oBAAoB,CAAC,EAAE,CAAC;QAC5C,KAAK,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,OAAO,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,8GAA8G;IAE9G,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"system-tools.js","sourceRoot":"","sources":["../src/system-tools.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@polpo-ai/tools",
3
- "version": "0.6.29",
3
+ "version": "0.6.30",
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.6.29"
23
+ "@polpo-ai/core": "0.6.30"
24
24
  },
25
25
  "optionalDependencies": {
26
26
  "docx": "^9.5.0",