@polpo-ai/tools 0.6.26 → 0.6.28

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.
@@ -27,6 +27,7 @@
27
27
  * ELEVENLABS_API_KEY — elevenlabs provider (TTS)
28
28
  */
29
29
  import type { PolpoTool as AgentTool } from "@polpo-ai/core";
30
+ import type { FileSystem } from "@polpo-ai/core/filesystem";
30
31
  import type { ResolvedVault } from "./types.js";
31
32
  export type AudioToolName = "audio_transcribe" | "audio_speak";
32
33
  export declare const ALL_AUDIO_TOOL_NAMES: AudioToolName[];
@@ -38,5 +39,5 @@ export declare const ALL_AUDIO_TOOL_NAMES: AudioToolName[];
38
39
  * @param allowedTools - Optional filter
39
40
  * @param vault - Resolved vault credentials for credential resolution
40
41
  */
41
- export declare function createAudioTools(cwd: string, allowedPaths?: string[], allowedTools?: string[], vault?: ResolvedVault): AgentTool<any>[];
42
+ export declare function createAudioTools(cwd: string, allowedPaths?: string[], allowedTools?: string[], vault?: ResolvedVault, fs?: FileSystem): AgentTool<any>[];
42
43
  //# 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;AAMH,OAAO,KAAK,EAAE,SAAS,IAAI,SAAS,EAAiC,MAAM,gBAAgB,CAAC;AAK5F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAimBhD,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,GACpB,SAAS,CAAC,GAAG,CAAC,EAAE,CAalB"}
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"}
@@ -26,10 +26,10 @@
26
26
  * DEEPGRAM_API_KEY — deepgram provider (STT + TTS)
27
27
  * ELEVENLABS_API_KEY — elevenlabs provider (TTS)
28
28
  */
29
- import { readFileSync, writeFileSync, mkdirSync, statSync } from "node:fs";
30
29
  import { resolve, dirname, extname } from "node:path";
31
30
  import { execFile } from "node:child_process";
32
31
  import { Type } from "@sinclair/typebox";
32
+ import { NodeFileSystem } from "./adapters/node-filesystem.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)
@@ -76,7 +76,7 @@ const AudioTranscribeSchema = Type.Object({
76
76
  language: Type.Optional(Type.String({ description: "ISO 639-1 language code (e.g. 'en', 'it', 'es'). Helps accuracy." })),
77
77
  prompt: Type.Optional(Type.String({ description: "Optional context/prompt to guide transcription (OpenAI only)" })),
78
78
  });
79
- function createTranscribeTool(cwd, sandbox, vault) {
79
+ function createTranscribeTool(cwd, sandbox, fs, vault) {
80
80
  return {
81
81
  name: "audio_transcribe",
82
82
  label: "Transcribe Audio",
@@ -89,9 +89,16 @@ function createTranscribeTool(cwd, sandbox, vault) {
89
89
  const filePath = resolve(cwd, params.path);
90
90
  assertPathAllowed(filePath, sandbox, "audio_transcribe");
91
91
  const provider = params.provider ?? "openai";
92
+ if (!fs.readFileBuffer) {
93
+ return {
94
+ content: [{ type: "text", text: "FileSystem implementation does not support readFileBuffer (required for binary reads)." }],
95
+ details: { error: "unsupported_filesystem" },
96
+ };
97
+ }
92
98
  let fileBuffer;
93
99
  try {
94
- fileBuffer = readFileSync(filePath);
100
+ const bytes = await fs.readFileBuffer(filePath);
101
+ fileBuffer = Buffer.from(bytes);
95
102
  }
96
103
  catch (err) {
97
104
  return {
@@ -234,7 +241,7 @@ const AudioSpeakSchema = Type.Object({
234
241
  speed: Type.Optional(Type.Number({ description: "Playback speed 0.25-4.0 (OpenAI only, default: 1.0)" })),
235
242
  instructions: Type.Optional(Type.String({ description: "Voice style instructions (OpenAI gpt-4o-mini-tts only, e.g. 'Speak in a cheerful tone')" })),
236
243
  });
237
- function createSpeakTool(cwd, sandbox, vault) {
244
+ function createSpeakTool(cwd, sandbox, fs, vault) {
238
245
  return {
239
246
  name: "audio_speak",
240
247
  label: "Text to Speech",
@@ -251,6 +258,12 @@ function createSpeakTool(cwd, sandbox, vault) {
251
258
  const provider = params.provider ?? "openai";
252
259
  // Direct edge-tts request — no fallback needed
253
260
  if (provider === "edge") {
261
+ if (!edgeTtsAvailable()) {
262
+ return {
263
+ content: [{ type: "text", text: "Edge TTS not available in this environment. Use openai/deepgram/elevenlabs instead." }],
264
+ details: { provider: "edge", error: "edge_tts_unavailable" },
265
+ };
266
+ }
254
267
  try {
255
268
  return await speakEdgeTts(filePath, params, signal);
256
269
  }
@@ -264,13 +277,13 @@ function createSpeakTool(cwd, sandbox, vault) {
264
277
  // Provider with edge-tts fallback
265
278
  try {
266
279
  if (provider === "openai") {
267
- return await speakOpenAI(filePath, params, vault, signal);
280
+ return await speakOpenAI(filePath, params, fs, vault, signal);
268
281
  }
269
282
  else if (provider === "deepgram") {
270
- return await speakDeepgram(filePath, params, vault, signal);
283
+ return await speakDeepgram(filePath, params, fs, vault, signal);
271
284
  }
272
285
  else {
273
- return await speakElevenLabs(filePath, params, vault, signal);
286
+ return await speakElevenLabs(filePath, params, fs, vault, signal);
274
287
  }
275
288
  }
276
289
  catch (err) {
@@ -300,7 +313,7 @@ function createSpeakTool(cwd, sandbox, vault) {
300
313
  },
301
314
  };
302
315
  }
303
- async function speakOpenAI(filePath, params, vault, signal) {
316
+ async function speakOpenAI(filePath, params, fs, vault, signal) {
304
317
  const apiKey = vault?.getKey("openai", "key") ?? requireEnv("OPENAI_API_KEY");
305
318
  const model = params.model ?? "tts-1";
306
319
  const voice = params.voice ?? "alloy";
@@ -338,8 +351,11 @@ async function speakOpenAI(filePath, params, vault, signal) {
338
351
  throw new Error(`OpenAI TTS API ${response.status}: ${errText}`);
339
352
  }
340
353
  const buffer = Buffer.from(await response.arrayBuffer());
341
- mkdirSync(dirname(filePath), { recursive: true });
342
- writeFileSync(filePath, buffer);
354
+ if (!fs.writeFileBuffer) {
355
+ throw new Error("FileSystem implementation does not support writeFileBuffer (required for binary writes).");
356
+ }
357
+ await fs.mkdir(dirname(filePath));
358
+ await fs.writeFileBuffer(filePath, new Uint8Array(buffer));
343
359
  return {
344
360
  content: [{ type: "text", text: `Speech audio saved: ${filePath} (${(buffer.byteLength / 1024).toFixed(1)} KB, ${responseFormat}, voice: ${voice}, model: ${model})` }],
345
361
  details: {
@@ -353,7 +369,7 @@ async function speakOpenAI(filePath, params, vault, signal) {
353
369
  },
354
370
  };
355
371
  }
356
- async function speakDeepgram(filePath, params, vault, signal) {
372
+ async function speakDeepgram(filePath, params, fs, vault, signal) {
357
373
  const apiKey = vault?.getKey("deepgram", "key") ?? requireEnv("DEEPGRAM_API_KEY");
358
374
  const model = params.model ?? "aura-2-en";
359
375
  const controller = new AbortController();
@@ -375,8 +391,11 @@ async function speakDeepgram(filePath, params, vault, signal) {
375
391
  throw new Error(`Deepgram TTS API ${response.status}: ${errText}`);
376
392
  }
377
393
  const buffer = Buffer.from(await response.arrayBuffer());
378
- mkdirSync(dirname(filePath), { recursive: true });
379
- writeFileSync(filePath, buffer);
394
+ if (!fs.writeFileBuffer) {
395
+ throw new Error("FileSystem implementation does not support writeFileBuffer (required for binary writes).");
396
+ }
397
+ await fs.mkdir(dirname(filePath));
398
+ await fs.writeFileBuffer(filePath, new Uint8Array(buffer));
380
399
  return {
381
400
  content: [{ type: "text", text: `Speech audio saved: ${filePath} (${(buffer.byteLength / 1024).toFixed(1)} KB, model: ${model})` }],
382
401
  details: {
@@ -389,7 +408,7 @@ async function speakDeepgram(filePath, params, vault, signal) {
389
408
  },
390
409
  };
391
410
  }
392
- async function speakElevenLabs(filePath, params, vault, signal) {
411
+ async function speakElevenLabs(filePath, params, fs, vault, signal) {
393
412
  const apiKey = vault?.getKey("elevenlabs", "key") ?? requireEnv("ELEVENLABS_API_KEY");
394
413
  const model = params.model ?? "eleven_multilingual_v2";
395
414
  // ElevenLabs default voice: "Rachel" (21m00Tcm4TlvDq8ikWAM)
@@ -421,8 +440,11 @@ async function speakElevenLabs(filePath, params, vault, signal) {
421
440
  throw new Error(`ElevenLabs API ${response.status}: ${errText}`);
422
441
  }
423
442
  const buffer = Buffer.from(await response.arrayBuffer());
424
- mkdirSync(dirname(filePath), { recursive: true });
425
- writeFileSync(filePath, buffer);
443
+ if (!fs.writeFileBuffer) {
444
+ throw new Error("FileSystem implementation does not support writeFileBuffer (required for binary writes).");
445
+ }
446
+ await fs.mkdir(dirname(filePath));
447
+ await fs.writeFileBuffer(filePath, new Uint8Array(buffer));
426
448
  return {
427
449
  content: [{ type: "text", text: `Speech audio saved: ${filePath} (${(buffer.byteLength / 1024).toFixed(1)} KB, voice: ${voiceId}, model: ${model})` }],
428
450
  details: {
@@ -474,6 +496,9 @@ function resolveEdgeVoice(voice, language, gender) {
474
496
  }
475
497
  /** Check if edge-tts CLI is available on the system. */
476
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;
477
502
  try {
478
503
  const { execFileSync } = require("node:child_process");
479
504
  execFileSync("edge-tts", ["--version"], { stdio: "pipe", timeout: 5000 });
@@ -495,7 +520,10 @@ async function speakEdgeTts(filePath, params, signal) {
495
520
  throw new Error("edge-tts CLI is not installed. Install it with: pip install edge-tts");
496
521
  }
497
522
  const voice = resolveEdgeVoice(params.voice, params.language, params.gender);
498
- mkdirSync(dirname(filePath), { recursive: true });
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 });
499
527
  // Determine rate from speed if present
500
528
  const args = [
501
529
  "--text", params.text,
@@ -510,7 +538,7 @@ async function speakEdgeTts(filePath, params, signal) {
510
538
  }
511
539
  let bytes = 0;
512
540
  try {
513
- bytes = statSync(filePath).size;
541
+ bytes = nodeFs.statSync(filePath).size;
514
542
  }
515
543
  catch { /* ignore */ }
516
544
  resolvePromise({
@@ -538,11 +566,12 @@ export const ALL_AUDIO_TOOL_NAMES = ["audio_transcribe", "audio_speak"];
538
566
  * @param allowedTools - Optional filter
539
567
  * @param vault - Resolved vault credentials for credential resolution
540
568
  */
541
- export function createAudioTools(cwd, allowedPaths, allowedTools, vault) {
569
+ export function createAudioTools(cwd, allowedPaths, allowedTools, vault, fs) {
542
570
  const sandbox = resolveAllowedPaths(cwd, allowedPaths);
571
+ const _fs = fs ?? new NodeFileSystem();
543
572
  const factories = {
544
- audio_transcribe: () => createTranscribeTool(cwd, sandbox, vault),
545
- audio_speak: () => createSpeakTool(cwd, sandbox, vault),
573
+ audio_transcribe: () => createTranscribeTool(cwd, sandbox, _fs, vault),
574
+ audio_speak: () => createSpeakTool(cwd, sandbox, _fs, vault),
546
575
  };
547
576
  const names = allowedTools
548
577
  ? 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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"}
@@ -9,6 +9,7 @@
9
9
  * All file operations enforce path sandboxing.
10
10
  */
11
11
  import type { PolpoTool as AgentTool } from "@polpo-ai/core";
12
+ import type { FileSystem } from "@polpo-ai/core/filesystem";
12
13
  export type DocxToolName = "docx_read" | "docx_create";
13
14
  export declare const ALL_DOCX_TOOL_NAMES: DocxToolName[];
14
15
  /**
@@ -18,5 +19,5 @@ export declare const ALL_DOCX_TOOL_NAMES: DocxToolName[];
18
19
  * @param allowedPaths - Sandbox paths
19
20
  * @param allowedTools - Optional filter
20
21
  */
21
- export declare function createDocxTools(cwd: string, allowedPaths?: string[], allowedTools?: string[]): AgentTool<any>[];
22
+ export declare function createDocxTools(cwd: string, allowedPaths?: string[], allowedTools?: string[], fs?: FileSystem): AgentTool<any>[];
22
23
  //# sourceMappingURL=docx-tools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"docx-tools.d.ts","sourceRoot":"","sources":["../src/docx-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH,OAAO,KAAK,EAAE,SAAS,IAAI,SAAS,EAAiC,MAAM,gBAAgB,CAAC;AAyO5F,MAAM,MAAM,YAAY,GAAG,WAAW,GAAG,aAAa,CAAC;AAEvD,eAAO,MAAM,mBAAmB,EAAE,YAAY,EAAiC,CAAC;AAEhF;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,CAa/G"}
1
+ {"version":3,"file":"docx-tools.d.ts","sourceRoot":"","sources":["../src/docx-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,KAAK,EAAE,SAAS,IAAI,SAAS,EAAiC,MAAM,gBAAgB,CAAC;AAC5F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AA2P5D,MAAM,MAAM,YAAY,GAAG,WAAW,GAAG,aAAa,CAAC;AAEvD,eAAO,MAAM,mBAAmB,EAAE,YAAY,EAAiC,CAAC;AAEhF;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,CAchI"}
@@ -8,9 +8,9 @@
8
8
  * Uses `mammoth` for reading and `docx` for creation.
9
9
  * All file operations enforce path sandboxing.
10
10
  */
11
- import { writeFileSync, mkdirSync } from "node:fs";
12
11
  import { resolve, dirname } from "node:path";
13
12
  import { Type } from "@sinclair/typebox";
13
+ import { NodeFileSystem } from "./adapters/node-filesystem.js";
14
14
  import { resolveAllowedPaths, assertPathAllowed } from "./path-sandbox.js";
15
15
  const MAX_TEXT_OUTPUT = 50_000;
16
16
  /** Convert basic HTML to Markdown (headings, paragraphs, lists, bold, italic) */
@@ -51,7 +51,7 @@ const DocxReadSchema = Type.Object({
51
51
  Type.Literal("html"),
52
52
  ], { description: "Output format: 'text' (plain), 'markdown', or 'html'. Default: 'text'" })),
53
53
  });
54
- function createDocxReadTool(cwd, sandbox) {
54
+ function createDocxReadTool(cwd, sandbox, fs) {
55
55
  return {
56
56
  name: "docx_read",
57
57
  label: "Read DOCX",
@@ -62,20 +62,29 @@ function createDocxReadTool(cwd, sandbox) {
62
62
  const filePath = resolve(cwd, params.path);
63
63
  assertPathAllowed(filePath, sandbox, "docx_read");
64
64
  try {
65
+ if (!fs.readFileBuffer) {
66
+ return {
67
+ content: [{ type: "text", text: "DOCX read error: Binary read not supported by injected FileSystem" }],
68
+ details: { error: "binary_read_unsupported" },
69
+ };
70
+ }
65
71
  const mammoth = await import("mammoth");
66
72
  const format = params.format ?? "text";
73
+ const bytes = await fs.readFileBuffer(filePath);
74
+ // mammoth expects a Node Buffer; convert from Uint8Array
75
+ const buffer = Buffer.from(bytes.buffer, bytes.byteOffset, bytes.byteLength);
67
76
  let result;
68
77
  if (format === "html") {
69
- result = await mammoth.convertToHtml({ path: filePath });
78
+ result = await mammoth.convertToHtml({ buffer });
70
79
  }
71
80
  else if (format === "markdown") {
72
81
  // mammoth doesn't export convertToMarkdown in all versions — use HTML + basic conversion
73
- const htmlResult = await mammoth.convertToHtml({ path: filePath });
82
+ const htmlResult = await mammoth.convertToHtml({ buffer });
74
83
  const md = htmlToBasicMarkdown(htmlResult.value);
75
84
  result = { value: md, messages: htmlResult.messages };
76
85
  }
77
86
  else {
78
- result = await mammoth.extractRawText({ path: filePath });
87
+ result = await mammoth.extractRawText({ buffer });
79
88
  }
80
89
  const text = result.value;
81
90
  const warnings = result.messages
@@ -118,7 +127,7 @@ const DocxCreateSchema = Type.Object({
118
127
  italic: Type.Optional(Type.Boolean({ description: "Italic text" })),
119
128
  }), { description: "Document content blocks", minItems: 1 }),
120
129
  });
121
- function createDocxCreateTool(cwd, sandbox) {
130
+ function createDocxCreateTool(cwd, sandbox, fs) {
122
131
  return {
123
132
  name: "docx_create",
124
133
  label: "Create DOCX",
@@ -128,8 +137,14 @@ function createDocxCreateTool(cwd, sandbox) {
128
137
  async execute(_id, params) {
129
138
  const filePath = resolve(cwd, params.path);
130
139
  assertPathAllowed(filePath, sandbox, "docx_create");
131
- mkdirSync(dirname(filePath), { recursive: true });
140
+ await fs.mkdir(dirname(filePath));
132
141
  try {
142
+ if (!fs.writeFileBuffer) {
143
+ return {
144
+ content: [{ type: "text", text: "DOCX create error: Binary write not supported by injected FileSystem" }],
145
+ details: { error: "binary_write_unsupported" },
146
+ };
147
+ }
133
148
  const docxModule = await import("docx");
134
149
  const { Document, Paragraph, TextRun, HeadingLevel, Packer, AlignmentType, NumberFormat, } = docxModule;
135
150
  const headingMap = {
@@ -199,7 +214,8 @@ function createDocxCreateTool(cwd, sandbox) {
199
214
  sections: [{ children }],
200
215
  });
201
216
  const buffer = await Packer.toBuffer(doc);
202
- writeFileSync(filePath, buffer);
217
+ const u8 = new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);
218
+ await fs.writeFileBuffer(filePath, u8);
203
219
  return {
204
220
  content: [{ type: "text", text: `DOCX created: ${filePath} (${params.content.length} blocks, ${buffer.byteLength} bytes)` }],
205
221
  details: { path: filePath, blocks: params.content.length, bytes: buffer.byteLength },
@@ -222,11 +238,12 @@ export const ALL_DOCX_TOOL_NAMES = ["docx_read", "docx_create"];
222
238
  * @param allowedPaths - Sandbox paths
223
239
  * @param allowedTools - Optional filter
224
240
  */
225
- export function createDocxTools(cwd, allowedPaths, allowedTools) {
241
+ export function createDocxTools(cwd, allowedPaths, allowedTools, fs) {
226
242
  const sandbox = resolveAllowedPaths(cwd, allowedPaths);
243
+ const _fs = fs ?? new NodeFileSystem();
227
244
  const factories = {
228
- docx_read: () => createDocxReadTool(cwd, sandbox),
229
- docx_create: () => createDocxCreateTool(cwd, sandbox),
245
+ docx_read: () => createDocxReadTool(cwd, sandbox, _fs),
246
+ docx_create: () => createDocxCreateTool(cwd, sandbox, _fs),
230
247
  };
231
248
  const names = allowedTools
232
249
  ? ALL_DOCX_TOOL_NAMES.filter(n => allowedTools.some(a => a.toLowerCase() === n))
@@ -1 +1 @@
1
- {"version":3,"file":"docx-tools.js","sourceRoot":"","sources":["../src/docx-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"docx-tools.js","sourceRoot":"","sources":["../src/docx-tools.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,7 @@
17
17
  * IMAP env vars: IMAP_HOST, IMAP_PORT, IMAP_USER, IMAP_PASS
18
18
  */
19
19
  import type { PolpoTool as AgentTool } from "@polpo-ai/core";
20
+ import type { FileSystem } from "@polpo-ai/core/filesystem";
20
21
  import type { ResolvedVault } from "./types.js";
21
22
  export type EmailToolName = "email_send" | "email_draft" | "email_verify" | "email_list" | "email_read" | "email_search" | "email_count" | "email_download_attachment";
22
23
  export declare const ALL_EMAIL_TOOL_NAMES: EmailToolName[];
@@ -29,6 +30,7 @@ export declare const ALL_EMAIL_TOOL_NAMES: EmailToolName[];
29
30
  * @param vault - Resolved vault credentials (per-agent SMTP/IMAP)
30
31
  * @param emailAllowedDomains - Allowed recipient email domains (omit for unrestricted)
31
32
  * @param outputDir - Per-task output directory for downloaded attachments
33
+ * @param fs - FileSystem implementation (default: NodeFileSystem)
32
34
  */
33
- export declare function createEmailTools(cwd: string, allowedPaths?: string[], allowedTools?: string[], vault?: ResolvedVault, emailAllowedDomains?: string[], outputDir?: string): AgentTool<any>[];
35
+ export declare function createEmailTools(cwd: string, allowedPaths?: string[], allowedTools?: string[], vault?: ResolvedVault, emailAllowedDomains?: string[], outputDir?: string, fs?: FileSystem): AgentTool<any>[];
34
36
  //# sourceMappingURL=email-tools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"email-tools.d.ts","sourceRoot":"","sources":["../src/email-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAKH,OAAO,KAAK,EAAE,SAAS,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAoyBhD,MAAM,MAAM,aAAa,GAAG,YAAY,GAAG,aAAa,GAAG,cAAc,GAAG,YAAY,GAAG,YAAY,GAAG,cAAc,GAAG,aAAa,GAAG,2BAA2B,CAAC;AAEvK,eAAO,MAAM,oBAAoB,EAAE,aAAa,EAA0I,CAAC;AAE3L;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,aAAa,EAAE,mBAAmB,CAAC,EAAE,MAAM,EAAE,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,CAmB3L"}
1
+ {"version":3,"file":"email-tools.d.ts","sourceRoot":"","sources":["../src/email-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAIH,OAAO,KAAK,EAAE,SAAS,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAG5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAkzBhD,MAAM,MAAM,aAAa,GAAG,YAAY,GAAG,aAAa,GAAG,cAAc,GAAG,YAAY,GAAG,YAAY,GAAG,cAAc,GAAG,aAAa,GAAG,2BAA2B,CAAC;AAEvK,eAAO,MAAM,oBAAoB,EAAE,aAAa,EAA0I,CAAC;AAE3L;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,aAAa,EAAE,mBAAmB,CAAC,EAAE,MAAM,EAAE,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,CAoB5M"}