@cogitator-ai/core 0.15.0 → 0.16.0

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.
Files changed (61) hide show
  1. package/dist/cogitator/message-builder.d.ts +8 -1
  2. package/dist/cogitator/message-builder.d.ts.map +1 -1
  3. package/dist/cogitator/message-builder.js +63 -4
  4. package/dist/cogitator/message-builder.js.map +1 -1
  5. package/dist/index.d.ts +4 -0
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +2 -0
  8. package/dist/index.js.map +1 -1
  9. package/dist/llm/bedrock.d.ts.map +1 -1
  10. package/dist/llm/bedrock.js +22 -12
  11. package/dist/llm/bedrock.js.map +1 -1
  12. package/dist/llm/ollama.d.ts.map +1 -1
  13. package/dist/llm/ollama.js +14 -8
  14. package/dist/llm/ollama.js.map +1 -1
  15. package/dist/llm/plugin.d.ts +1 -3
  16. package/dist/llm/plugin.d.ts.map +1 -1
  17. package/dist/llm/plugin.js.map +1 -1
  18. package/dist/security/patterns.js +2 -2
  19. package/dist/security/patterns.js.map +1 -1
  20. package/dist/security/prompt-injection-detector.d.ts +1 -2
  21. package/dist/security/prompt-injection-detector.d.ts.map +1 -1
  22. package/dist/security/prompt-injection-detector.js.map +1 -1
  23. package/dist/tools/audio-generate.d.ts +25 -0
  24. package/dist/tools/audio-generate.d.ts.map +1 -0
  25. package/dist/tools/audio-generate.js +82 -0
  26. package/dist/tools/audio-generate.js.map +1 -0
  27. package/dist/tools/audio-transcribe.d.ts +27 -0
  28. package/dist/tools/audio-transcribe.d.ts.map +1 -0
  29. package/dist/tools/audio-transcribe.js +71 -0
  30. package/dist/tools/audio-transcribe.js.map +1 -0
  31. package/dist/tools/datetime.d.ts +1 -1
  32. package/dist/tools/filesystem.d.ts +2 -2
  33. package/dist/tools/http.d.ts +1 -1
  34. package/dist/tools/image-analyze.d.ts +56 -0
  35. package/dist/tools/image-analyze.d.ts.map +1 -0
  36. package/dist/tools/image-analyze.js +72 -0
  37. package/dist/tools/image-analyze.js.map +1 -0
  38. package/dist/tools/image-generate.d.ts +35 -0
  39. package/dist/tools/image-generate.d.ts.map +1 -0
  40. package/dist/tools/image-generate.js +69 -0
  41. package/dist/tools/image-generate.js.map +1 -0
  42. package/dist/tools/index.d.ts +10 -6
  43. package/dist/tools/index.d.ts.map +1 -1
  44. package/dist/tools/index.js +4 -0
  45. package/dist/tools/index.js.map +1 -1
  46. package/dist/tools/random.d.ts +2 -2
  47. package/dist/tools/web-scrape.js +3 -3
  48. package/dist/tools/web-scrape.js.map +1 -1
  49. package/dist/utils/audio-fetch.d.ts +17 -0
  50. package/dist/utils/audio-fetch.d.ts.map +1 -0
  51. package/dist/utils/audio-fetch.js +93 -0
  52. package/dist/utils/audio-fetch.js.map +1 -0
  53. package/dist/utils/image-fetch.d.ts +16 -0
  54. package/dist/utils/image-fetch.d.ts.map +1 -0
  55. package/dist/utils/image-fetch.js +68 -0
  56. package/dist/utils/image-fetch.js.map +1 -0
  57. package/dist/utils/index.d.ts +2 -0
  58. package/dist/utils/index.d.ts.map +1 -1
  59. package/dist/utils/index.js +2 -0
  60. package/dist/utils/index.js.map +1 -1
  61. package/package.json +5 -5
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-injection-detector.js","sourceRoot":"","sources":["../../src/security/prompt-injection-detector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt-injection-detector.js","sourceRoot":"","sources":["../../src/security/prompt-injection-detector.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ export type TTSModel = 'tts-1' | 'tts-1-hd' | 'gpt-4o-mini-tts';
2
+ export type TTSVoice = 'alloy' | 'ash' | 'ballad' | 'coral' | 'echo' | 'fable' | 'nova' | 'onyx' | 'sage' | 'shimmer' | 'verse' | 'marin' | 'cedar';
3
+ export type TTSFormat = 'mp3' | 'opus' | 'aac' | 'flac' | 'wav' | 'pcm';
4
+ export interface GenerateSpeechConfig {
5
+ apiKey?: string;
6
+ defaultModel?: TTSModel;
7
+ defaultVoice?: TTSVoice;
8
+ defaultFormat?: TTSFormat;
9
+ defaultSpeed?: number;
10
+ }
11
+ export interface SpeechResult {
12
+ audioBase64: string;
13
+ format: TTSFormat;
14
+ voice: TTSVoice;
15
+ model: TTSModel;
16
+ textLength: number;
17
+ }
18
+ export declare function createGenerateSpeechTool(config?: GenerateSpeechConfig): import("@cogitator-ai/types").Tool<{
19
+ text: string;
20
+ model?: "tts-1" | "tts-1-hd" | "gpt-4o-mini-tts" | undefined;
21
+ format?: "mp3" | "wav" | "flac" | "opus" | "aac" | "pcm" | undefined;
22
+ voice?: "alloy" | "ash" | "ballad" | "coral" | "echo" | "fable" | "nova" | "onyx" | "sage" | "shimmer" | "verse" | "marin" | "cedar" | undefined;
23
+ speed?: number | undefined;
24
+ }, SpeechResult>;
25
+ //# sourceMappingURL=audio-generate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audio-generate.d.ts","sourceRoot":"","sources":["../../src/tools/audio-generate.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,UAAU,GAAG,iBAAiB,CAAC;AAEhE,MAAM,MAAM,QAAQ,GAChB,OAAO,GACP,KAAK,GACL,QAAQ,GACR,OAAO,GACP,MAAM,GACN,OAAO,GACP,MAAM,GACN,MAAM,GACN,MAAM,GACN,SAAS,GACT,OAAO,GACP,OAAO,GACP,OAAO,CAAC;AAEZ,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC;AAExE,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,QAAQ,CAAC;IACxB,YAAY,CAAC,EAAE,QAAQ,CAAC;IACxB,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,SAAS,CAAC;IAClB,KAAK,EAAE,QAAQ,CAAC;IAChB,KAAK,EAAE,QAAQ,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB;AAsBD,wBAAgB,wBAAwB,CAAC,MAAM,GAAE,oBAAyB;;;;;;iBAuEzE"}
@@ -0,0 +1,82 @@
1
+ import { z } from 'zod';
2
+ import { tool } from '../tool';
3
+ const voiceSchema = z.enum([
4
+ 'alloy',
5
+ 'ash',
6
+ 'ballad',
7
+ 'coral',
8
+ 'echo',
9
+ 'fable',
10
+ 'nova',
11
+ 'onyx',
12
+ 'sage',
13
+ 'shimmer',
14
+ 'verse',
15
+ 'marin',
16
+ 'cedar',
17
+ ]);
18
+ const formatSchema = z.enum(['mp3', 'opus', 'aac', 'flac', 'wav', 'pcm']);
19
+ const modelSchema = z.enum(['tts-1', 'tts-1-hd', 'gpt-4o-mini-tts']);
20
+ export function createGenerateSpeechTool(config = {}) {
21
+ const getApiKey = () => config.apiKey || process.env.OPENAI_API_KEY;
22
+ return tool({
23
+ name: 'generateSpeech',
24
+ description: 'Convert text to natural-sounding speech using OpenAI TTS. Returns base64-encoded audio. Max input: 4096 characters.',
25
+ parameters: z.object({
26
+ text: z.string().max(4096).describe('Text to convert to speech (max 4096 characters)'),
27
+ voice: voiceSchema
28
+ .optional()
29
+ .describe('Voice to use. Options: alloy, ash, ballad, coral, echo, fable, nova, onyx, sage, shimmer, verse, marin, cedar'),
30
+ model: modelSchema
31
+ .optional()
32
+ .describe('TTS model. tts-1 is fast, tts-1-hd is higher quality'),
33
+ speed: z
34
+ .number()
35
+ .min(0.25)
36
+ .max(4.0)
37
+ .optional()
38
+ .describe('Speech speed (0.25 to 4.0, default 1.0)'),
39
+ format: formatSchema.optional().describe('Output audio format (default: mp3)'),
40
+ }),
41
+ sideEffects: ['network', 'external'],
42
+ execute: async ({ text, voice, model, speed, format }) => {
43
+ const apiKey = getApiKey();
44
+ if (!apiKey) {
45
+ throw new Error('OpenAI API key required for speech generation');
46
+ }
47
+ const selectedModel = model || config.defaultModel || 'tts-1';
48
+ const selectedVoice = voice || config.defaultVoice || 'alloy';
49
+ const selectedFormat = format || config.defaultFormat || 'mp3';
50
+ const selectedSpeed = speed ?? config.defaultSpeed ?? 1.0;
51
+ const response = await fetch('https://api.openai.com/v1/audio/speech', {
52
+ method: 'POST',
53
+ headers: {
54
+ Authorization: `Bearer ${apiKey}`,
55
+ 'Content-Type': 'application/json',
56
+ },
57
+ body: JSON.stringify({
58
+ model: selectedModel,
59
+ input: text,
60
+ voice: selectedVoice,
61
+ speed: selectedSpeed,
62
+ response_format: selectedFormat,
63
+ }),
64
+ });
65
+ if (!response.ok) {
66
+ const errorData = await response.json().catch(() => ({}));
67
+ const errorMessage = errorData.error?.message || response.statusText || 'Unknown error';
68
+ throw new Error(`Speech generation failed: ${errorMessage}`);
69
+ }
70
+ const audioBuffer = await response.arrayBuffer();
71
+ const audioBase64 = Buffer.from(audioBuffer).toString('base64');
72
+ return {
73
+ audioBase64,
74
+ format: selectedFormat,
75
+ voice: selectedVoice,
76
+ model: selectedModel,
77
+ textLength: text.length,
78
+ };
79
+ },
80
+ });
81
+ }
82
+ //# sourceMappingURL=audio-generate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audio-generate.js","sourceRoot":"","sources":["../../src/tools/audio-generate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ export type TranscriptionModel = 'whisper-1' | 'gpt-4o-transcribe' | 'gpt-4o-mini-transcribe';
2
+ export interface TranscribeAudioConfig {
3
+ apiKey?: string;
4
+ defaultModel?: TranscriptionModel;
5
+ defaultLanguage?: string;
6
+ }
7
+ export interface TranscriptionWord {
8
+ word: string;
9
+ start: number;
10
+ end: number;
11
+ }
12
+ export interface TranscriptionResult {
13
+ text: string;
14
+ language?: string;
15
+ duration?: number;
16
+ words?: TranscriptionWord[];
17
+ }
18
+ export declare function createTranscribeAudioTool(config?: TranscribeAudioConfig): import("@cogitator-ai/types").Tool<{
19
+ audio: string | {
20
+ data: string;
21
+ format: "mp3" | "mp4" | "mpeg" | "mpga" | "m4a" | "wav" | "webm" | "ogg" | "flac";
22
+ };
23
+ model?: "whisper-1" | "gpt-4o-transcribe" | "gpt-4o-mini-transcribe" | undefined;
24
+ language?: string | undefined;
25
+ timestamps?: boolean | undefined;
26
+ }, TranscriptionResult>;
27
+ //# sourceMappingURL=audio-transcribe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audio-transcribe.d.ts","sourceRoot":"","sources":["../../src/tools/audio-transcribe.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,kBAAkB,GAAG,WAAW,GAAG,mBAAmB,GAAG,wBAAwB,CAAC;AAE9F,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,iBAAiB,EAAE,CAAC;CAC7B;AAYD,wBAAgB,yBAAyB,CAAC,MAAM,GAAE,qBAA0B;;;;;;;;wBAsE3E"}
@@ -0,0 +1,71 @@
1
+ import { z } from 'zod';
2
+ import { tool } from '../tool';
3
+ import { audioInputToBuffer } from '../utils/audio-fetch';
4
+ const audioInputSchema = z.union([
5
+ z.string().describe('URL of the audio file'),
6
+ z.object({
7
+ data: z.string().describe('Base64 encoded audio data'),
8
+ format: z
9
+ .enum(['mp3', 'mp4', 'mpeg', 'mpga', 'm4a', 'wav', 'webm', 'ogg', 'flac'])
10
+ .describe('Audio format'),
11
+ }),
12
+ ]);
13
+ export function createTranscribeAudioTool(config = {}) {
14
+ const getApiKey = () => config.apiKey || process.env.OPENAI_API_KEY;
15
+ return tool({
16
+ name: 'transcribeAudio',
17
+ description: 'Transcribe audio to text using OpenAI Whisper. Supports mp3, mp4, wav, webm, m4a, ogg, flac formats up to 25MB.',
18
+ parameters: z.object({
19
+ audio: audioInputSchema.describe('Audio file as URL or base64 data'),
20
+ language: z
21
+ .string()
22
+ .optional()
23
+ .describe('ISO-639-1 language code (e.g., "en", "es", "fr", "de", "ja")'),
24
+ model: z
25
+ .enum(['whisper-1', 'gpt-4o-transcribe', 'gpt-4o-mini-transcribe'])
26
+ .optional()
27
+ .describe('Transcription model to use'),
28
+ timestamps: z
29
+ .boolean()
30
+ .optional()
31
+ .describe('Include word-level timestamps (only supported with whisper-1)'),
32
+ }),
33
+ execute: async ({ audio, language, model, timestamps }) => {
34
+ const apiKey = getApiKey();
35
+ if (!apiKey) {
36
+ throw new Error('OpenAI API key required for audio transcription');
37
+ }
38
+ const { buffer, filename } = await audioInputToBuffer(audio);
39
+ const selectedModel = model || config.defaultModel || 'whisper-1';
40
+ const selectedLanguage = language || config.defaultLanguage;
41
+ const formData = new FormData();
42
+ formData.append('file', new Blob([new Uint8Array(buffer)]), filename);
43
+ formData.append('model', selectedModel);
44
+ if (selectedLanguage) {
45
+ formData.append('language', selectedLanguage);
46
+ }
47
+ if (timestamps && selectedModel === 'whisper-1') {
48
+ formData.append('response_format', 'verbose_json');
49
+ formData.append('timestamp_granularities[]', 'word');
50
+ }
51
+ const response = await fetch('https://api.openai.com/v1/audio/transcriptions', {
52
+ method: 'POST',
53
+ headers: { Authorization: `Bearer ${apiKey}` },
54
+ body: formData,
55
+ });
56
+ if (!response.ok) {
57
+ const errorData = await response.json().catch(() => ({}));
58
+ const errorMessage = errorData.error?.message || response.statusText || 'Unknown error';
59
+ throw new Error(`Transcription failed: ${errorMessage}`);
60
+ }
61
+ const result = await response.json();
62
+ return {
63
+ text: result.text,
64
+ language: result.language,
65
+ duration: result.duration,
66
+ words: result.words,
67
+ };
68
+ },
69
+ });
70
+ }
71
+ //# sourceMappingURL=audio-transcribe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audio-transcribe.js","sourceRoot":"","sources":["../../src/tools/audio-transcribe.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,8 @@
2
2
  * DateTime tool - provides current date/time information
3
3
  */
4
4
  export declare const datetime: import("@cogitator-ai/types").Tool<{
5
- timezone?: string | undefined;
6
5
  format?: "date" | "iso" | "unix" | "readable" | "time" | undefined;
6
+ timezone?: string | undefined;
7
7
  }, {
8
8
  error: string;
9
9
  timezone: string;
@@ -3,7 +3,7 @@
3
3
  */
4
4
  export declare const fileRead: import("@cogitator-ai/types").Tool<{
5
5
  path: string;
6
- encoding?: "base64" | "utf-8" | undefined;
6
+ encoding?: "utf-8" | "base64" | undefined;
7
7
  }, {
8
8
  content: string;
9
9
  path: string;
@@ -26,7 +26,7 @@ export declare const fileRead: import("@cogitator-ai/types").Tool<{
26
26
  export declare const fileWrite: import("@cogitator-ai/types").Tool<{
27
27
  path: string;
28
28
  content: string;
29
- encoding?: "base64" | "utf-8" | undefined;
29
+ encoding?: "utf-8" | "base64" | undefined;
30
30
  createDirs?: boolean | undefined;
31
31
  }, {
32
32
  success: boolean;
@@ -5,8 +5,8 @@ export declare const httpRequest: import("@cogitator-ai/types").Tool<{
5
5
  url: string;
6
6
  timeout?: number | undefined;
7
7
  method?: "POST" | "GET" | "PUT" | "PATCH" | "DELETE" | "HEAD" | "OPTIONS" | undefined;
8
- headers?: Record<string, string> | undefined;
9
8
  body?: string | undefined;
9
+ headers?: Record<string, string> | undefined;
10
10
  }, {
11
11
  status: number;
12
12
  statusText: string;
@@ -0,0 +1,56 @@
1
+ import { z } from 'zod';
2
+ import type { LLMBackend } from '@cogitator-ai/types';
3
+ export interface AnalyzeImageConfig {
4
+ llm: LLMBackend;
5
+ defaultModel?: string;
6
+ }
7
+ export declare function createAnalyzeImageTool(config: AnalyzeImageConfig): import("@cogitator-ai/types").Tool<{
8
+ image: string | {
9
+ data: string;
10
+ mimeType: "image/jpeg" | "image/png" | "image/gif" | "image/webp";
11
+ };
12
+ model?: string | undefined;
13
+ prompt?: string | undefined;
14
+ detail?: "auto" | "low" | "high" | undefined;
15
+ }, {
16
+ analysis: string;
17
+ model: string;
18
+ usage: {
19
+ inputTokens: number;
20
+ outputTokens: number;
21
+ totalTokens: number;
22
+ };
23
+ }>;
24
+ export declare const analyzeImageSchema: z.ZodObject<{
25
+ image: z.ZodUnion<[z.ZodString, z.ZodObject<{
26
+ data: z.ZodString;
27
+ mimeType: z.ZodEnum<["image/jpeg", "image/png", "image/gif", "image/webp"]>;
28
+ }, "strip", z.ZodTypeAny, {
29
+ data: string;
30
+ mimeType: "image/jpeg" | "image/png" | "image/gif" | "image/webp";
31
+ }, {
32
+ data: string;
33
+ mimeType: "image/jpeg" | "image/png" | "image/gif" | "image/webp";
34
+ }>]>;
35
+ prompt: z.ZodOptional<z.ZodString>;
36
+ detail: z.ZodOptional<z.ZodEnum<["auto", "low", "high"]>>;
37
+ model: z.ZodOptional<z.ZodString>;
38
+ }, "strip", z.ZodTypeAny, {
39
+ image: string | {
40
+ data: string;
41
+ mimeType: "image/jpeg" | "image/png" | "image/gif" | "image/webp";
42
+ };
43
+ model?: string | undefined;
44
+ prompt?: string | undefined;
45
+ detail?: "auto" | "low" | "high" | undefined;
46
+ }, {
47
+ image: string | {
48
+ data: string;
49
+ mimeType: "image/jpeg" | "image/png" | "image/gif" | "image/webp";
50
+ };
51
+ model?: string | undefined;
52
+ prompt?: string | undefined;
53
+ detail?: "auto" | "low" | "high" | undefined;
54
+ }>;
55
+ export type AnalyzeImageInput = z.infer<typeof analyzeImageSchema>;
56
+ //# sourceMappingURL=image-analyze.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image-analyze.d.ts","sourceRoot":"","sources":["../../src/tools/image-analyze.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAe,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAYnE,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,UAAU,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,kBAAkB;;;;;;;;;;;;;;;;GA+DhE;AAED,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAK7B,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
@@ -0,0 +1,72 @@
1
+ import { z } from 'zod';
2
+ import { tool } from '../tool';
3
+ const imageSourceSchema = z.union([
4
+ z.string().url().describe('URL of the image to analyze'),
5
+ z.object({
6
+ data: z.string().describe('Base64 encoded image data'),
7
+ mimeType: z
8
+ .enum(['image/jpeg', 'image/png', 'image/gif', 'image/webp'])
9
+ .describe('MIME type of the image'),
10
+ }),
11
+ ]);
12
+ export function createAnalyzeImageTool(config) {
13
+ const { llm, defaultModel = 'gpt-4o' } = config;
14
+ return tool({
15
+ name: 'analyzeImage',
16
+ description: 'Analyze an image using a vision-capable AI model. Can describe contents, extract text, identify objects, answer questions about the image, and more.',
17
+ parameters: z.object({
18
+ image: imageSourceSchema.describe('The image to analyze - either a URL or base64 data'),
19
+ prompt: z
20
+ .string()
21
+ .optional()
22
+ .describe('Specific question or instruction about the image. Defaults to general description.'),
23
+ detail: z
24
+ .enum(['auto', 'low', 'high'])
25
+ .optional()
26
+ .describe('Level of detail for analysis. "high" uses more tokens but provides better analysis.'),
27
+ model: z.string().optional().describe('Vision model to use. Defaults to gpt-4o.'),
28
+ }),
29
+ execute: async ({ image, prompt, detail, model }) => {
30
+ const content = [];
31
+ content.push({
32
+ type: 'text',
33
+ text: prompt ||
34
+ 'Describe this image in detail. Include any text, objects, people, colors, and notable elements.',
35
+ });
36
+ if (typeof image === 'string') {
37
+ content.push({
38
+ type: 'image_url',
39
+ image_url: {
40
+ url: image,
41
+ detail: detail || 'auto',
42
+ },
43
+ });
44
+ }
45
+ else {
46
+ content.push({
47
+ type: 'image_base64',
48
+ image_base64: {
49
+ data: image.data,
50
+ media_type: image.mimeType,
51
+ },
52
+ });
53
+ }
54
+ const response = await llm.chat({
55
+ model: model || defaultModel,
56
+ messages: [{ role: 'user', content }],
57
+ });
58
+ return {
59
+ analysis: response.content,
60
+ model: model || defaultModel,
61
+ usage: response.usage,
62
+ };
63
+ },
64
+ });
65
+ }
66
+ export const analyzeImageSchema = z.object({
67
+ image: imageSourceSchema,
68
+ prompt: z.string().optional(),
69
+ detail: z.enum(['auto', 'low', 'high']).optional(),
70
+ model: z.string().optional(),
71
+ });
72
+ //# sourceMappingURL=image-analyze.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image-analyze.js","sourceRoot":"","sources":["../../src/tools/image-analyze.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ import { z } from 'zod';
2
+ export interface GenerateImageConfig {
3
+ apiKey?: string;
4
+ baseUrl?: string;
5
+ }
6
+ export declare function createGenerateImageTool(config?: GenerateImageConfig): import("@cogitator-ai/types").Tool<{
7
+ prompt: string;
8
+ size?: "1024x1024" | "1792x1024" | "1024x1792" | undefined;
9
+ quality?: "standard" | "hd" | undefined;
10
+ style?: "vivid" | "natural" | undefined;
11
+ }, {
12
+ url: string;
13
+ revisedPrompt: string | undefined;
14
+ size: "1024x1024" | "1792x1024" | "1024x1792";
15
+ quality: "standard" | "hd";
16
+ style: "vivid" | "natural";
17
+ }>;
18
+ export declare const generateImageSchema: z.ZodObject<{
19
+ prompt: z.ZodString;
20
+ size: z.ZodOptional<z.ZodEnum<["1024x1024", "1792x1024", "1024x1792"]>>;
21
+ quality: z.ZodOptional<z.ZodEnum<["standard", "hd"]>>;
22
+ style: z.ZodOptional<z.ZodEnum<["vivid", "natural"]>>;
23
+ }, "strip", z.ZodTypeAny, {
24
+ prompt: string;
25
+ size?: "1024x1024" | "1792x1024" | "1024x1792" | undefined;
26
+ quality?: "standard" | "hd" | undefined;
27
+ style?: "vivid" | "natural" | undefined;
28
+ }, {
29
+ prompt: string;
30
+ size?: "1024x1024" | "1792x1024" | "1024x1792" | undefined;
31
+ quality?: "standard" | "hd" | undefined;
32
+ style?: "vivid" | "natural" | undefined;
33
+ }>;
34
+ export type GenerateImageInput = z.infer<typeof generateImageSchema>;
35
+ //# sourceMappingURL=image-generate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image-generate.d.ts","sourceRoot":"","sources":["../../src/tools/image-generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,WAAW,mBAAmB;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,uBAAuB,CAAC,MAAM,GAAE,mBAAwB;;;;;;;;;;;GA4EvE;AAED,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;EAK9B,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
@@ -0,0 +1,69 @@
1
+ import { z } from 'zod';
2
+ import { tool } from '../tool';
3
+ export function createGenerateImageTool(config = {}) {
4
+ const { apiKey, baseUrl = 'https://api.openai.com/v1' } = config;
5
+ return tool({
6
+ name: 'generateImage',
7
+ description: 'Generate an image using DALL-E 3. Creates high-quality images from text descriptions.',
8
+ parameters: z.object({
9
+ prompt: z
10
+ .string()
11
+ .describe('Detailed description of the image to generate. Be specific about style, composition, colors, etc.'),
12
+ size: z
13
+ .enum(['1024x1024', '1792x1024', '1024x1792'])
14
+ .optional()
15
+ .describe('Image dimensions. 1024x1024 is square, others are landscape/portrait.'),
16
+ quality: z
17
+ .enum(['standard', 'hd'])
18
+ .optional()
19
+ .describe('Image quality. "hd" creates more detailed images with finer textures.'),
20
+ style: z
21
+ .enum(['vivid', 'natural'])
22
+ .optional()
23
+ .describe('"vivid" for dramatic/hyper-real images, "natural" for more realistic/subdued.'),
24
+ }),
25
+ sideEffects: ['network', 'external'],
26
+ execute: async ({ prompt, size, quality, style }) => {
27
+ const key = apiKey || process.env.OPENAI_API_KEY;
28
+ if (!key) {
29
+ throw new Error('OpenAI API key required for image generation. Set OPENAI_API_KEY environment variable.');
30
+ }
31
+ const response = await fetch(`${baseUrl}/images/generations`, {
32
+ method: 'POST',
33
+ headers: {
34
+ 'Content-Type': 'application/json',
35
+ Authorization: `Bearer ${key}`,
36
+ },
37
+ body: JSON.stringify({
38
+ model: 'dall-e-3',
39
+ prompt,
40
+ n: 1,
41
+ size: size || '1024x1024',
42
+ quality: quality || 'standard',
43
+ style: style || 'vivid',
44
+ response_format: 'url',
45
+ }),
46
+ });
47
+ if (!response.ok) {
48
+ const error = await response.text();
49
+ throw new Error(`Image generation failed: ${response.status} ${error}`);
50
+ }
51
+ const data = (await response.json());
52
+ const image = data.data[0];
53
+ return {
54
+ url: image.url,
55
+ revisedPrompt: image.revised_prompt,
56
+ size: size || '1024x1024',
57
+ quality: quality || 'standard',
58
+ style: style || 'vivid',
59
+ };
60
+ },
61
+ });
62
+ }
63
+ export const generateImageSchema = z.object({
64
+ prompt: z.string(),
65
+ size: z.enum(['1024x1024', '1792x1024', '1024x1792']).optional(),
66
+ quality: z.enum(['standard', 'hd']).optional(),
67
+ style: z.enum(['vivid', 'natural']).optional(),
68
+ });
69
+ //# sourceMappingURL=image-generate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image-generate.js","sourceRoot":"","sources":["../../src/tools/image-generate.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,10 @@ export { sqlQuery } from './sql-query';
16
16
  export { vectorSearch } from './vector-search';
17
17
  export { sendEmail } from './email';
18
18
  export { githubApi } from './github';
19
+ export { createAnalyzeImageTool, type AnalyzeImageConfig, type AnalyzeImageInput, } from './image-analyze';
20
+ export { createGenerateImageTool, type GenerateImageConfig, type GenerateImageInput, } from './image-generate';
21
+ export { createTranscribeAudioTool, type TranscribeAudioConfig, type TranscriptionModel, type TranscriptionWord, type TranscriptionResult, } from './audio-transcribe';
22
+ export { createGenerateSpeechTool, type GenerateSpeechConfig, type TTSModel, type TTSVoice, type TTSFormat, type SpeechResult, } from './audio-generate';
19
23
  export declare const builtinTools: readonly [import("@cogitator-ai/types").Tool<{
20
24
  expression: string;
21
25
  }, {
@@ -27,8 +31,8 @@ export declare const builtinTools: readonly [import("@cogitator-ai/types").Tool<
27
31
  expression: string;
28
32
  error?: undefined;
29
33
  }>, import("@cogitator-ai/types").Tool<{
30
- timezone?: string | undefined;
31
34
  format?: "date" | "iso" | "unix" | "readable" | "time" | undefined;
35
+ timezone?: string | undefined;
32
36
  }, {
33
37
  error: string;
34
38
  timezone: string;
@@ -72,11 +76,11 @@ export declare const builtinTools: readonly [import("@cogitator-ai/types").Tool<
72
76
  error?: undefined;
73
77
  }>, import("@cogitator-ai/types").Tool<{
74
78
  length: number;
75
- charset?: "numeric" | "alphanumeric" | "alpha" | "hex" | undefined;
79
+ charset?: "hex" | "numeric" | "alphanumeric" | "alpha" | undefined;
76
80
  }, {
77
81
  result: string;
78
82
  length: number;
79
- charset: "numeric" | "alphanumeric" | "alpha" | "hex";
83
+ charset: "hex" | "numeric" | "alphanumeric" | "alpha";
80
84
  }>, import("@cogitator-ai/types").Tool<{
81
85
  data: string;
82
86
  encoding?: "base64" | "hex" | undefined;
@@ -174,7 +178,7 @@ export declare const builtinTools: readonly [import("@cogitator-ai/types").Tool<
174
178
  flags?: undefined;
175
179
  }>, import("@cogitator-ai/types").Tool<{
176
180
  path: string;
177
- encoding?: "base64" | "utf-8" | undefined;
181
+ encoding?: "utf-8" | "base64" | undefined;
178
182
  }, {
179
183
  content: string;
180
184
  path: string;
@@ -196,7 +200,7 @@ export declare const builtinTools: readonly [import("@cogitator-ai/types").Tool<
196
200
  }>, import("@cogitator-ai/types").Tool<{
197
201
  path: string;
198
202
  content: string;
199
- encoding?: "base64" | "utf-8" | undefined;
203
+ encoding?: "utf-8" | "base64" | undefined;
200
204
  createDirs?: boolean | undefined;
201
205
  }, {
202
206
  success: boolean;
@@ -261,8 +265,8 @@ export declare const builtinTools: readonly [import("@cogitator-ai/types").Tool<
261
265
  url: string;
262
266
  timeout?: number | undefined;
263
267
  method?: "POST" | "GET" | "PUT" | "PATCH" | "DELETE" | "HEAD" | "OPTIONS" | undefined;
264
- headers?: Record<string, string> | undefined;
265
268
  body?: string | undefined;
269
+ headers?: Record<string, string> | undefined;
266
270
  }, {
267
271
  status: number;
268
272
  statusText: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAElD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEnD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAErF,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAqBrC,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA2Bf,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAElD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEnD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAErF,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,OAAO,EACL,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,GACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,uBAAuB,EACvB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,GACxB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,yBAAyB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,GACzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,wBAAwB,EACxB,KAAK,oBAAoB,EACzB,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,YAAY,GAClB,MAAM,kBAAkB,CAAC;AAqB1B,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA2Bf,CAAC"}
@@ -16,6 +16,10 @@ export { sqlQuery } from './sql-query';
16
16
  export { vectorSearch } from './vector-search';
17
17
  export { sendEmail } from './email';
18
18
  export { githubApi } from './github';
19
+ export { createAnalyzeImageTool, } from './image-analyze';
20
+ export { createGenerateImageTool, } from './image-generate';
21
+ export { createTranscribeAudioTool, } from './audio-transcribe';
22
+ export { createGenerateSpeechTool, } from './audio-generate';
19
23
  import { calculator } from './calculator';
20
24
  import { datetime } from './datetime';
21
25
  import { uuid } from './uuid';