llmjs2 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -2,11 +2,11 @@
2
2
 
3
3
  LLM abstraction layer for Node.js. Unified API for multiple LLM providers with error handling and automatic retry logic.
4
4
 
5
- **Supported Providers**: OpenAI, Ollama
5
+ **Supported Providers**: Ollama
6
6
 
7
7
  ## Features
8
8
 
9
- - 🚀 **Unified API**: Single interface for multiple LLM providers
9
+ - 🚀 **Unified API**: Single interface for Ollama provider
10
10
  - **Automatic Retries**: Exponential backoff retry logic with configurable parameters
11
11
  - ⚙️ **Type-Safe**: Full TypeScript support with comprehensive type definitions
12
12
  - 🛡️ **Robust Error Handling**: Custom error types with retryability information
@@ -22,14 +22,14 @@ npm install llmjs2
22
22
 
23
23
  ## Quick Start
24
24
 
25
- ### Basic Completion
25
+ ### Basic Completion (Ollama)
26
26
 
27
27
  ```javascript
28
28
  import { completion } from 'llmjs2';
29
29
 
30
30
  const result = await completion({
31
- model: 'openai/gpt-4',
32
- apiKey: 'sk-...', // Or use OPENAI_API_KEY env var
31
+ model: 'ollama/mistral',
32
+ baseUrl: 'http://localhost:11434',
33
33
  messages: [
34
34
  { role: 'system', content: 'You are a helpful assistant.' },
35
35
  { role: 'user', content: 'What is TypeScript?' }
@@ -61,12 +61,10 @@ console.log(result.content);
61
61
  import { Agent } from 'llmjs2';
62
62
 
63
63
  const agent = new Agent({
64
- model: 'openai/gpt-4',
65
- apiKey: 'sk-...',
64
+ model: 'ollama/qwen3.5:397b-cloud',
65
+ baseUrl: 'https://ollama.com',
66
66
  instruction: 'You are a helpful assistant that explains technical concepts.',
67
67
  tools: [], // Optional function calling
68
- maxTokens: 500,
69
- temperature: 0.7
70
68
  });
71
69
 
72
70
  // Generate response (maintains conversation history)
@@ -105,18 +103,15 @@ agent.addMessage('system', 'New instruction');
105
103
 
106
104
  ### `completion(request: CompletionRequest): Promise<CompletionResponse>`
107
105
 
108
- Create a completion request. Supports both OpenAI and Ollama.
106
+ Create a completion request. Supports Ollama.
109
107
 
110
108
  **Parameters:**
111
109
 
112
110
  - `model` (string, required): Model identifier
113
- - OpenAI: `openai/gpt-4`, `openai/gpt-3.5-turbo`, etc.
114
- - Ollama: `ollama/mistral`, `ollama/neural-chat`, etc.
111
+ - Ollama: `ollama/mistral`, `ollama/neural-chat`, `ollama/qwen3.5:397b-cloud`, etc.
115
112
 
116
113
  - `messages` (Message[], required): Array of messages with `role` and `content`
117
114
 
118
- - `apiKey` (string, optional): API key for OpenAI (required for OpenAI models)
119
-
120
115
  - `baseUrl` (string, optional): Custom API endpoint (mainly for Ollama)
121
116
 
122
117
  - `maxTokens` (number, optional): Maximum tokens to generate
@@ -190,8 +185,8 @@ Validate that a provider is configured correctly and accessible.
190
185
  import { validateProvider } from 'llmjs2';
191
186
 
192
187
  try {
193
- await validateProvider('openai/gpt-4', 'sk-...');
194
- console.log('OpenAI provider is valid');
188
+ await validateProvider('ollama/mistral', process.env.OLLAMA_CLOUD_API_KEY);
189
+ console.log('Ollama provider is valid');
195
190
  } catch (error) {
196
191
  console.error('Provider validation failed:', error.message);
197
192
  }
@@ -245,8 +240,8 @@ Generate a response while maintaining conversation history.
245
240
  **Example:**
246
241
  ```javascript
247
242
  const agent = new Agent({
248
- model: 'openai/gpt-4',
249
- apiKey: 'sk-...',
243
+ model: 'ollama/qwen3.5:397b-cloud',
244
+ baseUrl: 'https://ollama.com',
250
245
  instruction: 'You are a coding expert.'
251
246
  });
252
247
 
@@ -312,8 +307,8 @@ import { completion, LLMError } from 'llmjs2';
312
307
 
313
308
  try {
314
309
  const result = await completion({
315
- model: 'openai/gpt-4',
316
- apiKey: 'sk-...',
310
+ model: 'ollama/mistral',
311
+ baseUrl: 'http://localhost:11434',
317
312
  messages: [{ role: 'user', content: 'Hello' }]
318
313
  });
319
314
  } catch (error) {
@@ -329,30 +324,25 @@ try {
329
324
 
330
325
  ## Advanced Usage
331
326
 
332
- ### Function Calling
327
+ ### Function Calling (Ollama + embedded handlers)
333
328
 
334
329
  ```javascript
335
330
  import { completion } from 'llmjs2';
336
331
 
337
332
  const result = await completion({
338
- model: 'openai/gpt-4',
339
- apiKey: 'sk-...',
333
+ model: 'ollama/mistral',
334
+ baseUrl: 'http://localhost:11434',
340
335
  messages: [
341
336
  { role: 'user', content: 'What is the weather in San Francisco?' }
342
337
  ],
343
338
  tools: [
344
339
  {
345
- type: 'function',
346
- function: {
347
- name: 'get_weather',
348
- description: 'Get weather for a location',
349
- parameters: {
350
- type: 'object',
351
- properties: {
352
- location: { type: 'string' },
353
- unit: { type: 'string', enum: ['celsius', 'fahrenheit'] }
354
- },
355
- required: ['location']
340
+ name: 'get_weather',
341
+ description: 'Get weather for a location',
342
+ parameters: {
343
+ location: { type: 'string', required: true },
344
+ unit: { type: 'string', enum: ['celsius', 'fahrenheit'] }
345
+ },
356
346
  }
357
347
  }
358
348
  }
@@ -373,8 +363,8 @@ if (result.toolCalls) {
373
363
  import { completion } from 'llmjs2';
374
364
 
375
365
  const result = await completion({
376
- model: 'openai/gpt-4',
377
- apiKey: 'sk-...',
366
+ model: 'ollama/mistral',
367
+ baseUrl: 'http://localhost:11434',
378
368
  messages: [{ role: 'user', content: 'Hello' }],
379
369
  headers: {
380
370
  'X-Custom-Header': 'custom-value'
@@ -385,7 +375,6 @@ const result = await completion({
385
375
  ### Provider-Specific Configuration
386
376
 
387
377
  For Ollama with custom settings:
388
-
389
378
  ```javascript
390
379
  import { completion } from 'llmjs2';
391
380
 
@@ -404,9 +393,6 @@ const result = await completion({
404
393
 
405
394
  ## Environment Variables
406
395
 
407
- **OpenAI:**
408
- - `OPENAI_API_KEY`: Your OpenAI API key (alternative to passing `apiKey`)
409
-
410
396
  **Ollama:**
411
397
  - Ollama reads from local `http://localhost:11434` by default
412
398
  - Override with `baseUrl` parameter in request
@@ -478,7 +464,7 @@ MIT - See LICENSE file for details
478
464
 
479
465
  ### 1.0.0
480
466
  - Initial production release
481
- - Full OpenAI and Ollama support
467
+ - Ollama support
482
468
  - Streaming API with async generators
483
469
  - Automatic retry with exponential backoff
484
470
  - Comprehensive error handling
package/dist/agent.d.ts CHANGED
@@ -14,9 +14,9 @@ export interface AgentConfig {
14
14
  baseUrl?: string;
15
15
  /** System instruction for the agent */
16
16
  instruction?: string;
17
- /** Available tools/functions */
17
+ /** Available tools/functions with optional embedded handlers */
18
18
  tools?: Tool[];
19
- /** Tool executor function - receives tool name and arguments, returns result string */
19
+ /** Tool executor function - receives tool name and arguments (deprecated: use tool.handler instead) */
20
20
  toolExecutor?: (toolName: string, args: Record<string, unknown>) => string;
21
21
  }
22
22
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAIL,kBAAkB,EAClB,eAAe,EACf,OAAO,EACP,IAAI,EAEL,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,2DAA2D;IAC3D,KAAK,EAAE,MAAM,CAAC;IAEd,0FAA0F;IAC1F,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,sEAAsE;IACtE,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,uCAAuC;IACvC,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,gCAAgC;IAChC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;IAEf,uFAAuF;IACvF,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC;CAC5E;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,0BAA0B;IAC1B,UAAU,EAAE,MAAM,CAAC;IAEnB,uCAAuC;IACvC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAElB,8CAA8C;IAC9C,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IAEtB,mCAAmC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,yBAAyB;IACzB,QAAQ,EAAE,MAAM,CAAC;IAEjB,6CAA6C;IAC7C,UAAU,EAAE,kBAAkB,CAAC;CAChC;AAED;;GAEG;AACH,qBAAa,KAAK;IAChB,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,mBAAmB,CAAiB;gBAEhC,MAAM,EAAE,WAAW;IAgB/B;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAiF7E;;OAEG;YACW,aAAa;IAY3B;;OAEG;IACI,cAAc,CACnB,OAAO,EAAE,oBAAoB,GAC5B,aAAa,CAAC,eAAe,CAAC;IAoDjC;;OAEG;IACH,UAAU,IAAI,OAAO,EAAE;IAIvB;;OAEG;IACH,YAAY,IAAI,IAAI;IAapB;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAOxE;;OAEG;IACH,SAAS,IAAI,WAAW;CAGzB"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAIL,kBAAkB,EAClB,eAAe,EACf,OAAO,EACP,IAAI,EAEL,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,2DAA2D;IAC3D,KAAK,EAAE,MAAM,CAAC;IAEd,0FAA0F;IAC1F,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,sEAAsE;IACtE,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,uCAAuC;IACvC,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,gEAAgE;IAChE,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;IAEf,uGAAuG;IACvG,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC;CAC5E;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,0BAA0B;IAC1B,UAAU,EAAE,MAAM,CAAC;IAEnB,uCAAuC;IACvC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAElB,8CAA8C;IAC9C,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IAEtB,mCAAmC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,yBAAyB;IACzB,QAAQ,EAAE,MAAM,CAAC;IAEjB,6CAA6C;IAC7C,UAAU,EAAE,kBAAkB,CAAC;CAChC;AAED;;GAEG;AACH,qBAAa,KAAK;IAChB,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,mBAAmB,CAAiB;gBAEhC,MAAM,EAAE,WAAW;IAgB/B;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IA2F7E;;OAEG;YACW,aAAa;IAY3B;;OAEG;IACI,cAAc,CACnB,OAAO,EAAE,oBAAoB,GAC5B,aAAa,CAAC,eAAe,CAAC;IAoDjC;;OAEG;IACH,UAAU,IAAI,OAAO,EAAE;IAIvB;;OAEG;IACH,YAAY,IAAI,IAAI;IAapB;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAOxE;;OAEG;IACH,SAAS,IAAI,WAAW;CAGzB"}
package/dist/agent.js CHANGED
@@ -57,13 +57,23 @@ export class Agent {
57
57
  for (const toolCall of toolCalls) {
58
58
  try {
59
59
  let result;
60
- if (this.config.toolExecutor) {
61
- // Use provided tool executor
60
+ // Try to find and execute handler from tool definition (supports old and new tool schema)
61
+ const tool = this.config.tools?.find((t) => {
62
+ const toolName = 'function' in t && t.function ? t.function.name : t.name;
63
+ return toolName === toolCall.name;
64
+ });
65
+ if (tool?.handler) {
66
+ // Use embedded handler from tool definition
67
+ const handlerResult = await tool.handler(toolCall.arguments);
68
+ result = typeof handlerResult === 'string' ? handlerResult : String(handlerResult);
69
+ }
70
+ else if (this.config.toolExecutor) {
71
+ // Fallback to provided tool executor
62
72
  result = this.config.toolExecutor(toolCall.name, toolCall.arguments);
63
73
  }
64
74
  else {
65
- // Fallback: return error
66
- result = `Tool '${toolCall.name}' not configured`;
75
+ // No handler or executor configured
76
+ result = `Tool '${toolCall.name}' has no handler configured`;
67
77
  }
68
78
  toolResults.push(`Tool: ${toolCall.name}\nResult: ${result}`);
69
79
  }
package/dist/agent.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../src/providers/openai.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACf,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,YAAY,EAIb,MAAM,WAAW,CAAC;AAwEnB;;GAEG;AACH,qBAAa,cAAe,SAAQ,YAAY;IAC9C,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAuC;gBAE1C,MAAM,EAAE,cAAc;IAclC;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAOjC;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAa/B;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAqFvE;;OAEG;IACI,cAAc,CACnB,OAAO,EAAE,iBAAiB,GACzB,aAAa,CAAC,eAAe,CAAC;IAiDjC;;OAEG;IACH,OAAO,CAAC,WAAW;IAsFnB;;OAEG;IACH,OAAO,CAAC,iBAAiB;CAgH1B"}
1
+ {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../src/providers/openai.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACf,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,YAAY,EAIb,MAAM,WAAW,CAAC;AAwEnB;;GAEG;AACH,qBAAa,cAAe,SAAQ,YAAY;IAC9C,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAuC;gBAE1C,MAAM,EAAE,cAAc;IAclC;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAOjC;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAa/B;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAoGvE;;OAEG;IACI,cAAc,CACnB,OAAO,EAAE,iBAAiB,GACzB,aAAa,CAAC,eAAe,CAAC;IAsEjC;;OAEG;IACH,OAAO,CAAC,WAAW;IAsFnB;;OAEG;IACH,OAAO,CAAC,iBAAiB;CAgH1B"}
@@ -69,8 +69,21 @@ export class OpenAIProvider extends BaseProvider {
69
69
  openaiRequest.presence_penalty = request.presencePenalty;
70
70
  if (request.stop)
71
71
  openaiRequest.stop = request.stop;
72
- if (request.tools)
73
- openaiRequest.tools = request.tools;
72
+ if (request.tools) {
73
+ openaiRequest.tools = request.tools.map((tool) => {
74
+ const finalName = 'function' in tool && tool.function?.name ? tool.function.name : tool.name;
75
+ const finalDescription = 'function' in tool && tool.function?.description ? tool.function.description : tool.description;
76
+ const finalParameters = 'function' in tool && tool.function?.parameters ? tool.function.parameters : tool.parameters;
77
+ return {
78
+ type: 'function',
79
+ function: {
80
+ name: finalName,
81
+ description: finalDescription,
82
+ parameters: finalParameters,
83
+ },
84
+ };
85
+ });
86
+ }
74
87
  if (request.toolChoice)
75
88
  openaiRequest.tool_choice = request.toolChoice;
76
89
  this.logger('debug', 'OpenAI completion request', {
@@ -139,8 +152,28 @@ export class OpenAIProvider extends BaseProvider {
139
152
  openaiRequest.presence_penalty = request.presencePenalty;
140
153
  if (request.stop)
141
154
  openaiRequest.stop = request.stop;
142
- if (request.tools)
143
- openaiRequest.tools = request.tools;
155
+ if (request.tools) {
156
+ openaiRequest.tools = request.tools.map((tool) => {
157
+ if ('function' in tool && tool.function?.name) {
158
+ return {
159
+ type: 'function',
160
+ function: {
161
+ name: tool.function.name,
162
+ description: tool.function.description,
163
+ parameters: tool.function.parameters,
164
+ },
165
+ };
166
+ }
167
+ return {
168
+ type: 'function',
169
+ function: {
170
+ name: tool.name,
171
+ description: tool.description,
172
+ parameters: tool.parameters,
173
+ },
174
+ };
175
+ });
176
+ }
144
177
  if (request.toolChoice)
145
178
  openaiRequest.tool_choice = request.toolChoice;
146
179
  this.logger('debug', 'OpenAI stream request', { model });
@@ -1 +1 @@
1
- {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/providers/openai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/providers/openai.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -20,14 +20,23 @@ export interface Message {
20
20
  /**
21
21
  * Tool/function definition for function calling
22
22
  */
23
- export interface Tool {
24
- type: 'function';
23
+ export interface ToolBase {
24
+ type?: 'function';
25
+ description?: string;
26
+ parameters?: Record<string, unknown>;
27
+ handler?: (args: Record<string, unknown>) => string | Promise<string>;
28
+ }
29
+ export interface ToolV1 extends ToolBase {
25
30
  function: {
26
31
  name: string;
27
32
  description?: string;
28
33
  parameters?: Record<string, unknown>;
29
34
  };
30
35
  }
36
+ export interface ToolV2 extends ToolBase {
37
+ name: string;
38
+ }
39
+ export type Tool = ToolV1 | ToolV2;
31
40
  /**
32
41
  * Configuration for a completion request
33
42
  */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE/C;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;AAE1D;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACtC,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,gEAAgE;IAChE,KAAK,EAAE,MAAM,CAAC;IAEd,sCAAsC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,+CAA+C;IAC/C,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,kCAAkC;IAClC,QAAQ,EAAE,OAAO,EAAE,CAAC;IAEpB,iCAAiC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,2DAA2D;IAC3D,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,+BAA+B;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,+BAA+B;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,6CAA6C;IAC7C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,4CAA4C;IAC5C,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,qBAAqB;IACrB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAEhB,2CAA2C;IAC3C,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;IAEf,uBAAuB;IACvB,UAAU,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;IAE1C,2CAA2C;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjC,sCAAsC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,0BAA0B;IAC1B,KAAK,CAAC,EAAE;QACN,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAC;IAEhB,qBAAqB;IACrB,KAAK,EAAE,MAAM,CAAC;IAEd,kBAAkB;IAClB,UAAU,CAAC,EAAE,eAAe,GAAG,QAAQ,GAAG,YAAY,GAAG,UAAU,GAAG,MAAM,CAAC;IAE7E,uCAAuC;IACvC,KAAK,CAAC,EAAE;QACN,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IAEF,mDAAmD;IACnD,GAAG,CAAC,EAAE,OAAO,CAAC;IAEd,kCAAkC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,8CAA8C;IAC9C,SAAS,CAAC,EAAE,KAAK,CAAC;QAChB,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACpC,CAAC,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IAEd,kCAAkC;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,6BAA6B;IAC7B,KAAK,CAAC,EAAE;QACN,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,oBAAoB;IACpB,IAAI,EAAE,YAAY,CAAC;IAEnB,cAAc;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,uBAAuB;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,oBAAoB;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,sBAAsB;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,0BAA0B;IAC1B,KAAK,CAAC,EAAE;QACN,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;IAEF,qBAAqB;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,aAAc,SAAQ,KAAK;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,kCAAkC;IAClC,QAAQ,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAElE,kCAAkC;IAClC,cAAc,CACZ,OAAO,EAAE,iBAAiB,GACzB,aAAa,CAAC,eAAe,CAAC,CAAC;IAElC,iDAAiD;IACjD,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1B,2DAA2D;IAC3D,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAElC,mCAAmC;IACnC,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;IAE/B,iCAAiC;IACjC,SAAS,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI,CAAC;CACnF;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,2CAA2C;IAC3C,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,6BAA6B;IAC7B,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAElE,8BAA8B;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,mCAAmC;IACnC,WAAW,CAAC,EAAE;QACZ,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;CACH"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "llmjs2",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "description": "LLM abstraction layer for Node.js. Unified API for OpenAI and Ollama with error handling and retry logic.",
5
5
  "main": "dist/dex.js",
6
6
  "types": "dist/index.d.ts",
package/src/agent.ts CHANGED
@@ -29,10 +29,10 @@ export interface AgentConfig {
29
29
  /** System instruction for the agent */
30
30
  instruction?: string;
31
31
 
32
- /** Available tools/functions */
32
+ /** Available tools/functions with optional embedded handlers */
33
33
  tools?: Tool[];
34
34
 
35
- /** Tool executor function - receives tool name and arguments, returns result string */
35
+ /** Tool executor function - receives tool name and arguments (deprecated: use tool.handler instead) */
36
36
  toolExecutor?: (toolName: string, args: Record<string, unknown>) => string;
37
37
  }
38
38
 
@@ -134,12 +134,22 @@ export class Agent {
134
134
  try {
135
135
  let result: string;
136
136
 
137
- if (this.config.toolExecutor) {
138
- // Use provided tool executor
137
+ // Try to find and execute handler from tool definition (supports old and new tool schema)
138
+ const tool = this.config.tools?.find((t) => {
139
+ const toolName = 'function' in t && t.function ? t.function.name : (t as any).name;
140
+ return toolName === toolCall.name;
141
+ });
142
+
143
+ if (tool?.handler) {
144
+ // Use embedded handler from tool definition
145
+ const handlerResult = await tool.handler(toolCall.arguments);
146
+ result = typeof handlerResult === 'string' ? handlerResult : String(handlerResult);
147
+ } else if (this.config.toolExecutor) {
148
+ // Fallback to provided tool executor
139
149
  result = this.config.toolExecutor(toolCall.name, toolCall.arguments);
140
150
  } else {
141
- // Fallback: return error
142
- result = `Tool '${toolCall.name}' not configured`;
151
+ // No handler or executor configured
152
+ result = `Tool '${toolCall.name}' has no handler configured`;
143
153
  }
144
154
 
145
155
  toolResults.push(`Tool: ${toolCall.name}\nResult: ${result}`);
@@ -164,7 +164,22 @@ export class OpenAIProvider extends BaseProvider {
164
164
  if (request.presencePenalty !== undefined)
165
165
  openaiRequest.presence_penalty = request.presencePenalty;
166
166
  if (request.stop) openaiRequest.stop = request.stop;
167
- if (request.tools) openaiRequest.tools = request.tools;
167
+ if (request.tools) {
168
+ openaiRequest.tools = request.tools.map((tool) => {
169
+ const finalName = 'function' in tool && tool.function?.name ? tool.function.name : (tool as any).name;
170
+ const finalDescription = 'function' in tool && tool.function?.description ? tool.function.description : tool.description;
171
+ const finalParameters = 'function' in tool && tool.function?.parameters ? tool.function.parameters : tool.parameters;
172
+
173
+ return {
174
+ type: 'function',
175
+ function: {
176
+ name: finalName,
177
+ description: finalDescription,
178
+ parameters: finalParameters,
179
+ },
180
+ };
181
+ });
182
+ }
168
183
  if (request.toolChoice) openaiRequest.tool_choice = request.toolChoice;
169
184
 
170
185
  this.logger('debug', 'OpenAI completion request', {
@@ -252,7 +267,28 @@ export class OpenAIProvider extends BaseProvider {
252
267
  if (request.presencePenalty !== undefined)
253
268
  openaiRequest.presence_penalty = request.presencePenalty;
254
269
  if (request.stop) openaiRequest.stop = request.stop;
255
- if (request.tools) openaiRequest.tools = request.tools;
270
+ if (request.tools) {
271
+ openaiRequest.tools = request.tools.map((tool) => {
272
+ if ('function' in tool && tool.function?.name) {
273
+ return {
274
+ type: 'function',
275
+ function: {
276
+ name: tool.function.name,
277
+ description: tool.function.description,
278
+ parameters: tool.function.parameters,
279
+ },
280
+ };
281
+ }
282
+ return {
283
+ type: 'function',
284
+ function: {
285
+ name: (tool as any).name,
286
+ description: tool.description,
287
+ parameters: tool.parameters,
288
+ },
289
+ };
290
+ });
291
+ }
256
292
  if (request.toolChoice) openaiRequest.tool_choice = request.toolChoice;
257
293
 
258
294
  this.logger('debug', 'OpenAI stream request', { model });
package/src/types.ts CHANGED
@@ -24,8 +24,14 @@ export interface Message {
24
24
  /**
25
25
  * Tool/function definition for function calling
26
26
  */
27
- export interface Tool {
28
- type: 'function';
27
+ export interface ToolBase {
28
+ type?: 'function';
29
+ description?: string;
30
+ parameters?: Record<string, unknown>;
31
+ handler?: (args: Record<string, unknown>) => string | Promise<string>;
32
+ }
33
+
34
+ export interface ToolV1 extends ToolBase {
29
35
  function: {
30
36
  name: string;
31
37
  description?: string;
@@ -33,6 +39,12 @@ export interface Tool {
33
39
  };
34
40
  }
35
41
 
42
+ export interface ToolV2 extends ToolBase {
43
+ name: string;
44
+ }
45
+
46
+ export type Tool = ToolV1 | ToolV2;
47
+
36
48
  /**
37
49
  * Configuration for a completion request
38
50
  */