@smilique/said 1.0.13 → 1.0.14
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/dist/agent.d.ts +14 -1
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +54 -65
- package/dist/agent.js.map +1 -1
- package/dist/main.js +3 -2
- package/dist/main.js.map +1 -1
- package/dist/provider.d.ts +43 -3
- package/dist/provider.d.ts.map +1 -1
- package/dist/provider.js +65 -8
- package/dist/provider.js.map +1 -1
- package/package.json +1 -1
package/dist/agent.d.ts
CHANGED
|
@@ -31,9 +31,18 @@ export interface ChatCompletionOptions {
|
|
|
31
31
|
stream?: boolean;
|
|
32
32
|
}
|
|
33
33
|
export interface LLMProvider {
|
|
34
|
-
chatCompletion(options: ChatCompletionOptions): Promise<
|
|
34
|
+
chatCompletion(options: ChatCompletionOptions): Promise<{
|
|
35
|
+
content: string;
|
|
36
|
+
toolCalls?: ToolCall[];
|
|
37
|
+
}>;
|
|
35
38
|
chatCompletionStream(options: ChatCompletionOptions): AsyncIterable<string>;
|
|
36
39
|
getLastTokenUsage?(): TokenUsage;
|
|
40
|
+
setTools?(tools: any[]): void;
|
|
41
|
+
}
|
|
42
|
+
export interface ToolCall {
|
|
43
|
+
id: string;
|
|
44
|
+
name: string;
|
|
45
|
+
arguments: Record<string, any>;
|
|
37
46
|
}
|
|
38
47
|
export declare class Agent extends Service {
|
|
39
48
|
private provider;
|
|
@@ -47,6 +56,10 @@ export declare class Agent extends Service {
|
|
|
47
56
|
private getEnvironmentInfo;
|
|
48
57
|
private buildSystemPrompt;
|
|
49
58
|
setProvider(provider: LLMProvider | null): void;
|
|
59
|
+
/**
|
|
60
|
+
* Convert skills to function schema and set up in provider
|
|
61
|
+
*/
|
|
62
|
+
private setupProviderTools;
|
|
50
63
|
getSkillRegistry(): SkillRegistry;
|
|
51
64
|
registerSkill(skill: Skill): void;
|
|
52
65
|
unregisterSkill(name: string): boolean;
|
package/dist/agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,KAAK,EAAE,KAAK,EAA6B,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAuB,MAAM,sBAAsB,CAAC;AAE1E,MAAM,WAAW,UAAU;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,KAAK,CAAC;QACd,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;QACtC,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAY,SAAQ,aAAa;IAChD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|
package/dist/agent.js
CHANGED
|
@@ -126,6 +126,28 @@ For normal responses (without skills), just respond as a helpful assistant. Be c
|
|
|
126
126
|
}
|
|
127
127
|
setProvider(provider) {
|
|
128
128
|
this.provider = provider;
|
|
129
|
+
// Set up tools in provider if supported
|
|
130
|
+
this.setupProviderTools();
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Convert skills to function schema and set up in provider
|
|
134
|
+
*/
|
|
135
|
+
setupProviderTools() {
|
|
136
|
+
if (!this.provider?.setTools)
|
|
137
|
+
return;
|
|
138
|
+
const skills = this.listSkills();
|
|
139
|
+
const tools = skills.map(skill => ({
|
|
140
|
+
name: skill.name,
|
|
141
|
+
description: skill.description,
|
|
142
|
+
parameters: skill.parameters.map(p => ({
|
|
143
|
+
name: p.name,
|
|
144
|
+
description: p.description,
|
|
145
|
+
type: p.type,
|
|
146
|
+
required: p.required,
|
|
147
|
+
schema: p.schema,
|
|
148
|
+
})),
|
|
149
|
+
}));
|
|
150
|
+
this.provider.setTools(tools);
|
|
129
151
|
}
|
|
130
152
|
getSkillRegistry() {
|
|
131
153
|
return this.skillRegistry;
|
|
@@ -280,50 +302,6 @@ For normal responses (without skills), just respond as a helpful assistant. Be c
|
|
|
280
302
|
if (!this.provider) {
|
|
281
303
|
throw new Error('LLM provider not set');
|
|
282
304
|
}
|
|
283
|
-
// Check if message contains a direct skill invocation (from user)
|
|
284
|
-
const skillMatch = userMessage.match(/\[\[([\w-]+)(?::(\w+))?\s*(.*?)\]\]/);
|
|
285
|
-
if (skillMatch) {
|
|
286
|
-
let skillName = skillMatch[1];
|
|
287
|
-
const action = skillMatch[2] || 'execute';
|
|
288
|
-
const paramsStr = skillMatch[3];
|
|
289
|
-
// Resolve skill name (handle aliases)
|
|
290
|
-
skillName = this.resolveSkillName(skillName);
|
|
291
|
-
// Check if skill exists
|
|
292
|
-
const availableSkills = this.listSkills().map(s => s.name).join(', ');
|
|
293
|
-
if (!this.skillRegistry.has(skillName)) {
|
|
294
|
-
return `Error: Skill "${skillName}" not found. Available skills: ${availableSkills}`;
|
|
295
|
-
}
|
|
296
|
-
let params = {};
|
|
297
|
-
if (paramsStr) {
|
|
298
|
-
// Strip leading/trailing quotes if present
|
|
299
|
-
let cleanParamsStr = paramsStr.trim();
|
|
300
|
-
if ((cleanParamsStr.startsWith('"') && cleanParamsStr.endsWith('"')) ||
|
|
301
|
-
(cleanParamsStr.startsWith("'") && cleanParamsStr.endsWith("'"))) {
|
|
302
|
-
cleanParamsStr = cleanParamsStr.slice(1, -1);
|
|
303
|
-
}
|
|
304
|
-
try {
|
|
305
|
-
params = JSON.parse(cleanParamsStr);
|
|
306
|
-
}
|
|
307
|
-
catch {
|
|
308
|
-
// If not JSON, treat as single parameter
|
|
309
|
-
params = { value: cleanParamsStr };
|
|
310
|
-
}
|
|
311
|
-
}
|
|
312
|
-
// Add action as operation if specified
|
|
313
|
-
if (action && action !== 'execute') {
|
|
314
|
-
params.operation = action;
|
|
315
|
-
}
|
|
316
|
-
const skillContext = {
|
|
317
|
-
sessionId: String(chatId),
|
|
318
|
-
};
|
|
319
|
-
const result = await this.skillRegistry.execute(skillName, params, skillContext);
|
|
320
|
-
if (result.success) {
|
|
321
|
-
return `Result: ${JSON.stringify(result.data, null, 2)}`;
|
|
322
|
-
}
|
|
323
|
-
else {
|
|
324
|
-
return `Error: ${result.error}`;
|
|
325
|
-
}
|
|
326
|
-
}
|
|
327
305
|
// Get or create conversation context
|
|
328
306
|
let context = this.contexts.get(chatId);
|
|
329
307
|
if (!context) {
|
|
@@ -335,36 +313,47 @@ For normal responses (without skills), just respond as a helpful assistant. Be c
|
|
|
335
313
|
}
|
|
336
314
|
// Add user message
|
|
337
315
|
context.messages.push({ role: 'user', content: userMessage });
|
|
338
|
-
// Tool execution loop
|
|
316
|
+
// Tool execution loop using native function calling
|
|
339
317
|
let finalResponse = '';
|
|
340
318
|
for (let iteration = 0; iteration < this.maxToolIterations; iteration++) {
|
|
341
319
|
// Trim context if too long
|
|
342
320
|
this.trimContext(context);
|
|
343
|
-
// Get response from provider
|
|
344
|
-
const
|
|
321
|
+
// Get response from provider (may include tool calls)
|
|
322
|
+
const result = await this.provider.chatCompletion({
|
|
345
323
|
messages: context.messages,
|
|
346
324
|
});
|
|
347
|
-
|
|
348
|
-
const
|
|
349
|
-
if (
|
|
350
|
-
console.log(`[Agent]
|
|
351
|
-
//
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
325
|
+
const response = result.content;
|
|
326
|
+
const toolCalls = result.toolCalls;
|
|
327
|
+
if (toolCalls && toolCalls.length > 0) {
|
|
328
|
+
console.log(`[Agent] Received ${toolCalls.length} tool call(s) from LLM`);
|
|
329
|
+
// Execute each tool call
|
|
330
|
+
for (const toolCall of toolCalls) {
|
|
331
|
+
const toolName = toolCall.name;
|
|
332
|
+
const toolArgs = toolCall.arguments;
|
|
333
|
+
console.log(`[Agent] Executing tool: ${toolName}`, toolArgs);
|
|
334
|
+
// Resolve skill name (handle aliases)
|
|
335
|
+
const resolvedName = this.resolveSkillName(toolName);
|
|
336
|
+
// Execute skill
|
|
337
|
+
const skillContext = {
|
|
338
|
+
sessionId: String(chatId),
|
|
339
|
+
};
|
|
340
|
+
const skillResult = await this.skillRegistry.execute(resolvedName, toolArgs, skillContext);
|
|
341
|
+
const resultContent = skillResult.success
|
|
342
|
+
? JSON.stringify(skillResult.data, null, 2)
|
|
343
|
+
: `Error: ${skillResult.error}`;
|
|
344
|
+
console.log(`[Agent] Tool result: ${resultContent.substring(0, 100)}...`);
|
|
345
|
+
// Add tool result to context as a tool message
|
|
346
|
+
context.messages.push({
|
|
347
|
+
role: 'tool',
|
|
348
|
+
content: resultContent,
|
|
349
|
+
tool_call_id: toolCall.id,
|
|
350
|
+
name: toolName,
|
|
351
|
+
});
|
|
363
352
|
}
|
|
364
|
-
// Continue to next iteration to let LLM process the
|
|
353
|
+
// Continue to next iteration to let LLM process the tool results
|
|
365
354
|
continue;
|
|
366
355
|
}
|
|
367
|
-
// No
|
|
356
|
+
// No tool calls - this is the final response
|
|
368
357
|
context.messages.push({ role: 'assistant', content: response });
|
|
369
358
|
finalResponse = response;
|
|
370
359
|
break;
|
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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"}
|
package/dist/main.js
CHANGED
|
@@ -32,8 +32,7 @@ async function main() {
|
|
|
32
32
|
}
|
|
33
33
|
// Create agent
|
|
34
34
|
const agent = new Agent({ name: 'agent' }, eventEmitter);
|
|
35
|
-
|
|
36
|
-
// Register built-in skills
|
|
35
|
+
// Register built-in skills FIRST (before setting provider)
|
|
37
36
|
const fileEditSkill = new FileEditSkill();
|
|
38
37
|
const webSurfSkill = new WebSurfSkill();
|
|
39
38
|
const apiCallSkill = new ApiCallSkill();
|
|
@@ -42,6 +41,8 @@ async function main() {
|
|
|
42
41
|
agent.registerSkill(webSurfSkill);
|
|
43
42
|
agent.registerSkill(apiCallSkill);
|
|
44
43
|
agent.registerSkill(toolCallSkill);
|
|
44
|
+
// Set provider AFTER skills are registered (so tools can be set up)
|
|
45
|
+
agent.setProvider(provider);
|
|
45
46
|
// Create scheduler
|
|
46
47
|
const scheduler = new SchedulerService({ name: 'scheduler' }, eventEmitter);
|
|
47
48
|
// Set up auto-update if enabled
|
package/dist/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAG7C,KAAK,UAAU,IAAI;IACjB,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAE5B,iDAAiD;IACjD,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;QAC5D,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC;IAExC,kEAAkE;IAClE,IAAI,QAAQ,GAAG,IAAI,CAAC;IACpB,IAAI,aAAa,GAAkB,IAAI,CAAC;IAExC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,aAAa,GAAG,GAAG,MAAM,CAAC,QAAQ,4DAA4D,CAAC;QAC/F,OAAO,CAAC,IAAI,CAAC,YAAY,aAAa,EAAE,CAAC,CAAC;IAC5C,CAAC;SAAM,CAAC;QACN,QAAQ,GAAG,IAAI,QAAQ,CACrB,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,EAC3F,YAAY,CACb,CAAC;IACJ,CAAC;IAED,eAAe;IACf,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,YAAY,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
|
package/dist/provider.d.ts
CHANGED
|
@@ -2,8 +2,15 @@ import { Service, type ServiceConfig } from './service.js';
|
|
|
2
2
|
import { EventEmitter } from 'eventemitter3';
|
|
3
3
|
import { type ProviderType } from './providers/index.js';
|
|
4
4
|
export interface ChatMessage {
|
|
5
|
-
role: 'system' | 'user' | 'assistant';
|
|
5
|
+
role: 'system' | 'user' | 'assistant' | 'tool';
|
|
6
6
|
content: string;
|
|
7
|
+
tool_call_id?: string;
|
|
8
|
+
name?: string;
|
|
9
|
+
}
|
|
10
|
+
export interface ToolCall {
|
|
11
|
+
id: string;
|
|
12
|
+
name: string;
|
|
13
|
+
arguments: Record<string, any>;
|
|
7
14
|
}
|
|
8
15
|
export interface ChatCompletionOptions {
|
|
9
16
|
messages: ChatMessage[];
|
|
@@ -11,6 +18,7 @@ export interface ChatCompletionOptions {
|
|
|
11
18
|
temperature?: number;
|
|
12
19
|
maxTokens?: number;
|
|
13
20
|
stream?: boolean;
|
|
21
|
+
tools?: any[];
|
|
14
22
|
}
|
|
15
23
|
export interface TokenUsage {
|
|
16
24
|
promptTokens: number;
|
|
@@ -18,9 +26,13 @@ export interface TokenUsage {
|
|
|
18
26
|
totalTokens: number;
|
|
19
27
|
}
|
|
20
28
|
export interface LLMProvider {
|
|
21
|
-
chatCompletion(options: ChatCompletionOptions): Promise<
|
|
29
|
+
chatCompletion(options: ChatCompletionOptions): Promise<{
|
|
30
|
+
content: string;
|
|
31
|
+
toolCalls?: ToolCall[];
|
|
32
|
+
}>;
|
|
22
33
|
chatCompletionStream(options: ChatCompletionOptions): AsyncIterable<string>;
|
|
23
34
|
getLastTokenUsage(): TokenUsage;
|
|
35
|
+
setTools(tools: any[]): void;
|
|
24
36
|
}
|
|
25
37
|
export interface ProviderConfig extends ServiceConfig {
|
|
26
38
|
provider: ProviderType;
|
|
@@ -40,7 +52,32 @@ export declare class Provider extends Service implements LLMProvider {
|
|
|
40
52
|
private model;
|
|
41
53
|
private providerType;
|
|
42
54
|
private lastTokenUsage;
|
|
55
|
+
private tools;
|
|
43
56
|
constructor(config: ProviderConfig, eventEmitter?: EventEmitter);
|
|
57
|
+
/**
|
|
58
|
+
* Set tools for function calling
|
|
59
|
+
*/
|
|
60
|
+
setTools(tools: any[]): void;
|
|
61
|
+
/**
|
|
62
|
+
* Convert skill parameters to OpenAI function schema
|
|
63
|
+
*/
|
|
64
|
+
private skillToFunctionSchema;
|
|
65
|
+
/**
|
|
66
|
+
* Convert array of skills to OpenAI function tools
|
|
67
|
+
*/
|
|
68
|
+
toolsFromSkills(skills: Array<{
|
|
69
|
+
name: string;
|
|
70
|
+
description: string;
|
|
71
|
+
parameters: Array<{
|
|
72
|
+
name: string;
|
|
73
|
+
description: string;
|
|
74
|
+
type: string;
|
|
75
|
+
required: boolean;
|
|
76
|
+
schema?: {
|
|
77
|
+
enum?: string[];
|
|
78
|
+
};
|
|
79
|
+
}>;
|
|
80
|
+
}>): any[];
|
|
44
81
|
initialize(): Promise<void>;
|
|
45
82
|
start(): Promise<void>;
|
|
46
83
|
stop(): Promise<void>;
|
|
@@ -61,7 +98,10 @@ export declare class Provider extends Service implements LLMProvider {
|
|
|
61
98
|
* Handle streaming chat completion for MiniMax (custom API)
|
|
62
99
|
*/
|
|
63
100
|
private handleMiniMaxStream;
|
|
64
|
-
chatCompletion(options: ChatCompletionOptions): Promise<
|
|
101
|
+
chatCompletion(options: ChatCompletionOptions): Promise<{
|
|
102
|
+
content: string;
|
|
103
|
+
toolCalls?: ToolCall[];
|
|
104
|
+
}>;
|
|
65
105
|
chatCompletionStream(options: ChatCompletionOptions): AsyncIterable<string>;
|
|
66
106
|
}
|
|
67
107
|
//# sourceMappingURL=provider.d.ts.map
|
package/dist/provider.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAa,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpE,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"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"}
|
package/dist/provider.js
CHANGED
|
@@ -19,9 +19,54 @@ export class Provider extends Service {
|
|
|
19
19
|
completionTokens: 0,
|
|
20
20
|
totalTokens: 0,
|
|
21
21
|
};
|
|
22
|
+
tools = [];
|
|
22
23
|
constructor(config, eventEmitter) {
|
|
23
24
|
super(config, eventEmitter);
|
|
24
25
|
}
|
|
26
|
+
/**
|
|
27
|
+
* Set tools for function calling
|
|
28
|
+
*/
|
|
29
|
+
setTools(tools) {
|
|
30
|
+
this.tools = tools;
|
|
31
|
+
console.log(`[Provider] Set ${tools.length} tools for function calling`);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Convert skill parameters to OpenAI function schema
|
|
35
|
+
*/
|
|
36
|
+
skillToFunctionSchema(skill) {
|
|
37
|
+
const properties = {};
|
|
38
|
+
const required = [];
|
|
39
|
+
for (const param of skill.parameters) {
|
|
40
|
+
properties[param.name] = {
|
|
41
|
+
type: param.type,
|
|
42
|
+
description: param.description,
|
|
43
|
+
};
|
|
44
|
+
if (param.schema?.enum) {
|
|
45
|
+
properties[param.name].enum = param.schema.enum;
|
|
46
|
+
}
|
|
47
|
+
if (param.required) {
|
|
48
|
+
required.push(param.name);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
return {
|
|
52
|
+
type: 'function',
|
|
53
|
+
function: {
|
|
54
|
+
name: skill.name,
|
|
55
|
+
description: skill.description,
|
|
56
|
+
parameters: {
|
|
57
|
+
type: 'object',
|
|
58
|
+
properties,
|
|
59
|
+
required,
|
|
60
|
+
},
|
|
61
|
+
},
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Convert array of skills to OpenAI function tools
|
|
66
|
+
*/
|
|
67
|
+
toolsFromSkills(skills) {
|
|
68
|
+
return skills.map(skill => this.skillToFunctionSchema(skill));
|
|
69
|
+
}
|
|
25
70
|
async initialize() {
|
|
26
71
|
const config = loadConfig();
|
|
27
72
|
this.providerType = config.provider;
|
|
@@ -82,13 +127,14 @@ export class Provider extends Service {
|
|
|
82
127
|
if (!this.client) {
|
|
83
128
|
throw new Error('Provider not initialized');
|
|
84
129
|
}
|
|
130
|
+
// Use tools from options or from class
|
|
131
|
+
const tools = options.tools || this.tools;
|
|
85
132
|
const response = await this.client.chat.completions.create({
|
|
86
133
|
model: options.model || this.model,
|
|
87
134
|
messages: options.messages,
|
|
88
135
|
temperature: options.temperature ?? 0.7,
|
|
89
136
|
max_tokens: options.maxTokens,
|
|
90
|
-
|
|
91
|
-
tools: [],
|
|
137
|
+
tools: tools.length > 0 ? tools : undefined,
|
|
92
138
|
});
|
|
93
139
|
// Track token usage
|
|
94
140
|
if (response.usage) {
|
|
@@ -98,7 +144,20 @@ export class Provider extends Service {
|
|
|
98
144
|
totalTokens: response.usage.total_tokens || 0,
|
|
99
145
|
};
|
|
100
146
|
}
|
|
101
|
-
|
|
147
|
+
// Extract tool calls if present
|
|
148
|
+
const toolCalls = [];
|
|
149
|
+
const responseToolCalls = response.choices[0]?.message?.tool_calls || [];
|
|
150
|
+
for (const tc of responseToolCalls) {
|
|
151
|
+
toolCalls.push({
|
|
152
|
+
id: tc.id || `call_${Date.now()}`,
|
|
153
|
+
name: tc.function.name,
|
|
154
|
+
arguments: JSON.parse(tc.function.arguments || '{}'),
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
return {
|
|
158
|
+
content: response.choices[0]?.message?.content || '',
|
|
159
|
+
toolCalls: toolCalls.length > 0 ? toolCalls : undefined,
|
|
160
|
+
};
|
|
102
161
|
}
|
|
103
162
|
/**
|
|
104
163
|
* Handle streaming chat completion for OpenAI-compatible APIs
|
|
@@ -146,8 +205,6 @@ export class Provider extends Service {
|
|
|
146
205
|
messages: options.messages,
|
|
147
206
|
temperature: options.temperature ?? 0.7,
|
|
148
207
|
max_tokens: options.maxTokens,
|
|
149
|
-
// Disable native tool calling - we use our own skill system
|
|
150
|
-
tools: [],
|
|
151
208
|
};
|
|
152
209
|
const response = await fetch(`${providerDef.baseUrl}/text/chatcompletion`, {
|
|
153
210
|
method: 'POST',
|
|
@@ -183,8 +240,6 @@ export class Provider extends Service {
|
|
|
183
240
|
temperature: options.temperature ?? 0.7,
|
|
184
241
|
max_tokens: options.maxTokens,
|
|
185
242
|
stream: true,
|
|
186
|
-
// Disable native tool calling - we use our own skill system
|
|
187
|
-
tools: [],
|
|
188
243
|
};
|
|
189
244
|
const response = await fetch(`${providerDef.baseUrl}/text/chatcompletion`, {
|
|
190
245
|
method: 'POST',
|
|
@@ -251,7 +306,9 @@ export class Provider extends Service {
|
|
|
251
306
|
// Route to appropriate handler based on provider type
|
|
252
307
|
switch (this.providerType) {
|
|
253
308
|
case 'minimax':
|
|
254
|
-
return
|
|
309
|
+
// MiniMax doesn't support native tool calling - return content only
|
|
310
|
+
const content = await this.handleMiniMaxCompletion(options);
|
|
311
|
+
return { content };
|
|
255
312
|
case 'anthropic':
|
|
256
313
|
case 'google':
|
|
257
314
|
// For now, throw an error for unsupported custom API providers
|
package/dist/provider.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAsB,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAkB,MAAM,aAAa,CAAC;AAEzD,OAAO,EAAE,SAAS,EAAqB,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"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"}
|