dolphin-server-modules 2.9.5 → 2.9.6
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 +45 -83
- package/TUTORIAL_NEPALI.md +65 -31
- package/dist/ai/dolphin-agent/agent.d.ts +25 -0
- package/dist/ai/dolphin-agent/agent.js +362 -0
- package/dist/ai/dolphin-agent/agent.js.map +1 -0
- package/dist/ai/dolphin-agent/config.d.ts +9 -0
- package/dist/ai/dolphin-agent/config.js +52 -0
- package/dist/ai/dolphin-agent/config.js.map +1 -0
- package/dist/ai/dolphin-agent/index.d.ts +5 -0
- package/dist/ai/dolphin-agent/index.js +13 -0
- package/dist/ai/dolphin-agent/index.js.map +1 -0
- package/dist/bin/cli.js +27 -125
- package/dist/bin/cli.js.map +1 -1
- package/dist/services/ai-service.d.ts +6 -0
- package/dist/services/ai-service.js +142 -23
- package/dist/services/ai-service.js.map +1 -1
- package/package.json +1 -1
- package/dist/adapters/mongoose/index.test.d.ts +0 -1
- package/dist/adapters/mongoose/index.test.js +0 -145
- package/dist/adapters/mongoose/index.test.js.map +0 -1
- package/dist/adapters/mongoose/integration.test.d.ts +0 -5
- package/dist/adapters/mongoose/integration.test.js +0 -217
- package/dist/adapters/mongoose/integration.test.js.map +0 -1
- package/dist/auth/auth.test.d.ts +0 -1
- package/dist/auth/auth.test.js +0 -286
- package/dist/auth/auth.test.js.map +0 -1
- package/dist/authController/authController.test.d.ts +0 -1
- package/dist/authController/authController.test.js +0 -359
- package/dist/authController/authController.test.js.map +0 -1
- package/dist/controller/controller.test.d.ts +0 -1
- package/dist/controller/controller.test.js +0 -37
- package/dist/controller/controller.test.js.map +0 -1
- package/dist/curd/crud.test.d.ts +0 -1
- package/dist/curd/crud.test.js +0 -104
- package/dist/curd/crud.test.js.map +0 -1
- package/dist/demo-server.d.ts +0 -1
- package/dist/demo-server.js +0 -191
- package/dist/demo-server.js.map +0 -1
- package/dist/djson/djson.test.d.ts +0 -1
- package/dist/djson/djson.test.js +0 -200
- package/dist/djson/djson.test.js.map +0 -1
- package/dist/dolphin-bench.d.ts +0 -1
- package/dist/dolphin-bench.js +0 -63
- package/dist/dolphin-bench.js.map +0 -1
- package/dist/hard-performance-test.d.ts +0 -1
- package/dist/hard-performance-test.js +0 -97
- package/dist/hard-performance-test.js.map +0 -1
- package/dist/middleware/zod.test.d.ts +0 -1
- package/dist/middleware/zod.test.js +0 -74
- package/dist/middleware/zod.test.js.map +0 -1
- package/dist/performance-test.d.ts +0 -1
- package/dist/performance-test.js +0 -92
- package/dist/performance-test.js.map +0 -1
- package/dist/real-test-mongoose.d.ts +0 -1
- package/dist/real-test-mongoose.js +0 -104
- package/dist/real-test-mongoose.js.map +0 -1
- package/dist/realtime/realtime.test.d.ts +0 -1
- package/dist/realtime/realtime.test.js +0 -623
- package/dist/realtime/realtime.test.js.map +0 -1
- package/dist/router/router.test.d.ts +0 -1
- package/dist/router/router.test.js +0 -45
- package/dist/router/router.test.js.map +0 -1
- package/dist/server/server.test.d.ts +0 -1
- package/dist/server/server.test.js +0 -299
- package/dist/server/server.test.js.map +0 -1
- package/dist/signaling/signaling.test.d.ts +0 -1
- package/dist/signaling/signaling.test.js +0 -112
- package/dist/signaling/signaling.test.js.map +0 -1
- package/dist/swagger/swagger.test.d.ts +0 -1
- package/dist/swagger/swagger.test.js +0 -38
- package/dist/swagger/swagger.test.js.map +0 -1
- package/dist/test-2fa-real.d.ts +0 -1
- package/dist/test-2fa-real.js +0 -105
- package/dist/test-2fa-real.js.map +0 -1
- package/dist/test-dolphin.d.ts +0 -1
- package/dist/test-dolphin.js +0 -98
- package/dist/test-dolphin.js.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
package/dist/bin/cli.js
CHANGED
|
@@ -23,8 +23,10 @@ const aiConfig = {
|
|
|
23
23
|
baseUrl: process.env.DOLPHIN_AI_BASE_URL,
|
|
24
24
|
model: process.env.DOLPHIN_AI_MODEL
|
|
25
25
|
};
|
|
26
|
-
|
|
27
|
-
|
|
26
|
+
const useOllama = process.env.USE_OLLAMA === 'true';
|
|
27
|
+
const hasAnyKey = aiConfig.apiKey || process.env.GROQ_API_KEY || process.env.OPENAI_API_KEY;
|
|
28
|
+
if (!hasAnyKey && !useOllama && ['generate', 'generate-full', 'chat'].includes(command)) {
|
|
29
|
+
CLIUI.error('API Key not found! Please set DOLPHIN_AI_KEY, GEMINI_API_KEY, or GROQ_API_KEY in your .env file.');
|
|
28
30
|
process.exit(1);
|
|
29
31
|
}
|
|
30
32
|
const ai = new AIService(aiConfig);
|
|
@@ -83,7 +85,18 @@ Project Structure:
|
|
|
83
85
|
- .env (env vars)
|
|
84
86
|
Return ONLY a JSON object where keys are file paths and values are code content. No markdown.`;
|
|
85
87
|
const response = await ai.request(fullPrompt, systemPrompt);
|
|
86
|
-
|
|
88
|
+
// Extract only the part between { and } to avoid AI's conversational chatter
|
|
89
|
+
const jsonMatch = response.match(/\{[\s\S]*\}/);
|
|
90
|
+
const cleaned = jsonMatch ? jsonMatch[0] : response.replace(/```json|```/g, '').trim();
|
|
91
|
+
let files;
|
|
92
|
+
try {
|
|
93
|
+
files = JSON.parse(cleaned);
|
|
94
|
+
}
|
|
95
|
+
catch (err) {
|
|
96
|
+
// AI le pathayeko "raw newlines" ra illegal control characters lai escape garne
|
|
97
|
+
const sanitized = cleaned.replace(/[\x00-\x1F\x7F-\x9F]/g, (c) => c === '\n' ? '\\n' : (c === '\r' ? '\\r' : (c === '\t' ? '\\t' : '')));
|
|
98
|
+
files = JSON.parse(sanitized);
|
|
99
|
+
}
|
|
87
100
|
Object.entries(files).forEach(([fPath, content]) => {
|
|
88
101
|
const fullPath = path.join(process.cwd(), fPath);
|
|
89
102
|
// Don't overwrite existing .env files to protect API keys
|
|
@@ -114,128 +127,12 @@ OPENAI_API_KEY=your_openai_api_key_here
|
|
|
114
127
|
}
|
|
115
128
|
break;
|
|
116
129
|
case 'chat':
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
Available Tools:
|
|
124
|
-
1. {"tool": "read", "path": "file_path"} - Read a file
|
|
125
|
-
2. {"tool": "write", "path": "path", "content": "..."} - Create/Edit a file (Uses ESM: import/export)
|
|
126
|
-
3. {"tool": "list", "path": "dir"} - List files
|
|
127
|
-
4. {"tool": "shell", "cmd": "..."} - Run a terminal command
|
|
128
|
-
5. {"tool": "done", "msg": "..."} - Final answer
|
|
129
|
-
|
|
130
|
-
CRITICAL RULES:
|
|
131
|
-
- PATHS: Always use paths relative to the project root (e.g., "controllers/user.js"). DO NOT use "cd" in shell commands.
|
|
132
|
-
- ESM: ALWAYS use "import" and "export". NEVER use "require".
|
|
133
|
-
- JSON: Each tool call must be a valid JSON block. You can provide multiple blocks.`;
|
|
134
|
-
let currentAgentDir = process.cwd();
|
|
135
|
-
const chatLoop = () => {
|
|
136
|
-
rl.question('\n💬 You: ', async (input) => {
|
|
137
|
-
if (input.toLowerCase() === 'exit')
|
|
138
|
-
return rl.close();
|
|
139
|
-
let currentPrompt = input;
|
|
140
|
-
let isRunning = true;
|
|
141
|
-
while (isRunning) {
|
|
142
|
-
CLIUI.startSpinner('Agent is thinking');
|
|
143
|
-
try {
|
|
144
|
-
const response = await ai.request(currentPrompt, agentSystemPrompt);
|
|
145
|
-
CLIUI.stopSpinner();
|
|
146
|
-
const jsonBlocks = response.match(/\{[\s\S]*?\}/g) || [];
|
|
147
|
-
let toolCalls = [];
|
|
148
|
-
for (const block of jsonBlocks) {
|
|
149
|
-
try {
|
|
150
|
-
const parsed = JSON.parse(block);
|
|
151
|
-
if (parsed.tool)
|
|
152
|
-
toolCalls.push(parsed);
|
|
153
|
-
}
|
|
154
|
-
catch (e) { }
|
|
155
|
-
}
|
|
156
|
-
if (toolCalls.length > 0) {
|
|
157
|
-
let results = '';
|
|
158
|
-
for (const toolCall of toolCalls) {
|
|
159
|
-
switch (toolCall.tool) {
|
|
160
|
-
case 'read':
|
|
161
|
-
const rPath = path.resolve(currentAgentDir, toolCall.path);
|
|
162
|
-
if (fs.existsSync(rPath)) {
|
|
163
|
-
const content = fs.readFileSync(rPath, 'utf8');
|
|
164
|
-
console.log(`📖 Read ${toolCall.path}`);
|
|
165
|
-
results += `Content of ${toolCall.path}:\n${content}\n\n`;
|
|
166
|
-
}
|
|
167
|
-
else {
|
|
168
|
-
results += `Error: ${toolCall.path} not found.\n`;
|
|
169
|
-
}
|
|
170
|
-
break;
|
|
171
|
-
case 'write':
|
|
172
|
-
const wPath = path.resolve(currentAgentDir, toolCall.path);
|
|
173
|
-
fs.mkdirSync(path.dirname(wPath), { recursive: true });
|
|
174
|
-
fs.writeFileSync(wPath, toolCall.content);
|
|
175
|
-
console.log(`📝 Wrote to ${toolCall.path}`);
|
|
176
|
-
results += `Successfully wrote ${toolCall.path}.\n`;
|
|
177
|
-
break;
|
|
178
|
-
case 'list':
|
|
179
|
-
const lPath = path.resolve(currentAgentDir, toolCall.path || '.');
|
|
180
|
-
if (fs.existsSync(lPath)) {
|
|
181
|
-
const files = fs.readdirSync(lPath);
|
|
182
|
-
console.log(`📁 Files in ${toolCall.path || '.'}: ${files.join(', ')}`);
|
|
183
|
-
results += `Files in ${toolCall.path || '.'}:\n${files.join('\n')}\n`;
|
|
184
|
-
}
|
|
185
|
-
else {
|
|
186
|
-
results += `Error: Directory ${toolCall.path} not found.\n`;
|
|
187
|
-
}
|
|
188
|
-
break;
|
|
189
|
-
case 'shell':
|
|
190
|
-
if (toolCall.cmd.startsWith('cd ')) {
|
|
191
|
-
const targetDir = toolCall.cmd.substring(3).trim();
|
|
192
|
-
const newPath = path.resolve(currentAgentDir, targetDir);
|
|
193
|
-
if (fs.existsSync(newPath)) {
|
|
194
|
-
currentAgentDir = newPath;
|
|
195
|
-
console.log(`📂 Changed directory to: ${currentAgentDir}`);
|
|
196
|
-
results += `Changed directory to: ${currentAgentDir}\n`;
|
|
197
|
-
}
|
|
198
|
-
else {
|
|
199
|
-
results += `Error: Directory ${targetDir} does not exist.\n`;
|
|
200
|
-
}
|
|
201
|
-
}
|
|
202
|
-
else {
|
|
203
|
-
console.log(`💻 Running: ${toolCall.cmd}`);
|
|
204
|
-
const { execSync } = await import('child_process');
|
|
205
|
-
try {
|
|
206
|
-
const output = execSync(toolCall.cmd, { cwd: currentAgentDir }).toString();
|
|
207
|
-
results += `Shell Output of "${toolCall.cmd}":\n${output}\n`;
|
|
208
|
-
}
|
|
209
|
-
catch (err) {
|
|
210
|
-
results += `Shell Error of "${toolCall.cmd}":\n${err.message}\n`;
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
break;
|
|
214
|
-
case 'done':
|
|
215
|
-
console.log(`✔ ${toolCall.msg || 'Task complete'}`);
|
|
216
|
-
isRunning = false;
|
|
217
|
-
break;
|
|
218
|
-
}
|
|
219
|
-
}
|
|
220
|
-
if (results) {
|
|
221
|
-
currentPrompt = `Results of actions (Current Dir: ${currentAgentDir}):\n${results}\n\nWhat next?`;
|
|
222
|
-
continue;
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
else {
|
|
226
|
-
console.log(`🤖 AI: ${response}`);
|
|
227
|
-
isRunning = false;
|
|
228
|
-
}
|
|
229
|
-
}
|
|
230
|
-
catch (e) {
|
|
231
|
-
CLIUI.stopSpinner(false, e.message);
|
|
232
|
-
isRunning = false;
|
|
233
|
-
}
|
|
234
|
-
}
|
|
235
|
-
chatLoop();
|
|
236
|
-
});
|
|
237
|
-
};
|
|
238
|
-
chatLoop();
|
|
130
|
+
import('../ai/dolphin-agent/index.js').then(agentModule => {
|
|
131
|
+
const agent = agentModule.initAgentHook({ framework: 'dolphin', autoGenerateEnv: false });
|
|
132
|
+
agent.interactiveChat();
|
|
133
|
+
}).catch(err => {
|
|
134
|
+
CLIUI.error(`[Dolphin-Agent] Failed to start chat: ${err.message}`);
|
|
135
|
+
});
|
|
239
136
|
break;
|
|
240
137
|
case 'init':
|
|
241
138
|
case 'init-prod':
|
|
@@ -248,6 +145,11 @@ CRITICAL RULES:
|
|
|
248
145
|
});
|
|
249
146
|
fs.writeFileSync(path.join(process.cwd(), 'app.js'), TEMPLATES.app);
|
|
250
147
|
CLIUI.success('Folders and app.js created.');
|
|
148
|
+
import('../ai/dolphin-agent/index.js').then(agentModule => {
|
|
149
|
+
agentModule.initAgentHook({ framework: 'dolphin', autoGenerateEnv: true });
|
|
150
|
+
}).catch(err => {
|
|
151
|
+
CLIUI.error(`[Dolphin-Agent] Initialization failed: ${err.message}`);
|
|
152
|
+
});
|
|
251
153
|
break;
|
|
252
154
|
case 'add':
|
|
253
155
|
const subCommand = args[1];
|
package/dist/bin/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/bin/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACnC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC;AAElC,qBAAqB;AACrB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;AACjD,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;IACzB,MAAM,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACpD,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QAClC,MAAM,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7C,IAAI,GAAG,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QAC1D,CAAC;IACL,CAAC,CAAC,CAAC;AACP,CAAC;AAED,MAAM,QAAQ,GAAG;IACb,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;IAC/E,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB;IACxC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB;CACtC,CAAC;AAEF,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,eAAe,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;IAC9E,KAAK,CAAC,KAAK,CAAC,mFAAmF,CAAC,CAAC;IACjG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC;AAED,MAAM,EAAE,GAAG,IAAI,SAAS,CAAC,QAAQ,CAAC,CAAC;AAEnC,KAAK,UAAU,GAAG;IACd,QAAQ,OAAO,EAAE,CAAC;QACd,KAAK,OAAO;YACR,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC;YAC5F,KAAK,CAAC,OAAO,CAAC,uCAAuC,IAAI,EAAE,CAAC,CAAC;YAC7D,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBACrC,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC;gBACrD,GAAG,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;YAC7C,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE;gBACrB,KAAK,CAAC,OAAO,CAAC,sCAAsC,IAAI,EAAE,CAAC,CAAC;YAChE,CAAC,CAAC,CAAC;YACH,MAAM;QAEV,KAAK,UAAU;YACX,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvC,IAAI,CAAC,MAAM;gBAAE,OAAO,KAAK,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;YAEzE,KAAK,CAAC,YAAY,CAAC,uBAAuB,CAAC,CAAC;YAC5C,IAAI,CAAC;gBACD,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,+CAA+C,CAAC,CAAC;gBAC3F,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,0BAA0B,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC1E,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,iBAAiB,CAAC,EAAE,SAAS,CAAC,CAAC;gBACzE,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,iCAAiC,CAAC,CAAC;YAC/D,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBACd,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;YACxC,CAAC;YACD,MAAM;QAEV,KAAK,eAAe;YAChB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC3C,IAAI,CAAC,UAAU;gBAAE,OAAO,KAAK,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;YAE1F,KAAK,CAAC,YAAY,CAAC,qCAAqC,CAAC,CAAC;YAC1D,IAAI,CAAC;gBACD,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;8FAmByD,CAAC;gBAC/E,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;gBAC5D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBAEtE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,EAAE;oBAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAe,CAAC,CAAC;oBAE3D,0DAA0D;oBAC1D,IAAI,KAAK,KAAK,MAAM,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;wBAC9C,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;wBACxD,OAAO;oBACX,CAAC;oBAED,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC1D,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAiB,CAAC,CAAC;oBAC9C,OAAO,CAAC,GAAG,CAAC,iBAAiB,KAAK,EAAE,CAAC,CAAC;gBAC1C,CAAC,CAAC,CAAC;gBAEH,wCAAwC;gBACxC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;gBACjD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC1B,MAAM,UAAU,GAAG;;;;;CAKtC,CAAC;oBACkB,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;oBACtC,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;gBACtD,CAAC;gBACD,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,mCAAmC,CAAC,CAAC;YACjE,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBACd,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;YACxC,CAAC;YACD,MAAM;QAEV,KAAK,MAAM;YACP,KAAK,CAAC,OAAO,CAAC,kCAAkC,CAAC,CAAC;YAClD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;YAC1C,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YAEtF,MAAM,iBAAiB,GAAG;;;;;;;;;;;;;oFAa8C,CAAC;YAEzE,IAAI,eAAe,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;YAEpC,MAAM,QAAQ,GAAG,GAAG,EAAE;gBAClB,EAAE,CAAC,QAAQ,CAAC,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;oBACtC,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,MAAM;wBAAE,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC;oBAEtD,IAAI,aAAa,GAAG,KAAK,CAAC;oBAC1B,IAAI,SAAS,GAAG,IAAI,CAAC;oBAErB,OAAO,SAAS,EAAE,CAAC;wBACf,KAAK,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC;wBACxC,IAAI,CAAC;4BACD,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,aAAa,EAAE,iBAAiB,CAAC,CAAC;4BACpE,KAAK,CAAC,WAAW,EAAE,CAAC;4BAEpB,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;4BACzD,IAAI,SAAS,GAAU,EAAE,CAAC;4BAE1B,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;gCAC7B,IAAI,CAAC;oCACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oCACjC,IAAI,MAAM,CAAC,IAAI;wCAAE,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gCAC5C,CAAC;gCAAC,OAAO,CAAC,EAAE,CAAC,CAAA,CAAC;4BAClB,CAAC;4BAED,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gCACvB,IAAI,OAAO,GAAG,EAAE,CAAC;gCACjB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;oCAC/B,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;wCACpB,KAAK,MAAM;4CACP,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;4CAC3D,IAAI,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gDACvB,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;gDAC/C,OAAO,CAAC,GAAG,CAAC,WAAW,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;gDACxC,OAAO,IAAI,cAAc,QAAQ,CAAC,IAAI,MAAM,OAAO,MAAM,CAAC;4CAC9D,CAAC;iDAAM,CAAC;gDACJ,OAAO,IAAI,UAAU,QAAQ,CAAC,IAAI,eAAe,CAAC;4CACtD,CAAC;4CACD,MAAM;wCACV,KAAK,OAAO;4CACR,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;4CAC3D,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;4CACvD,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;4CAC1C,OAAO,CAAC,GAAG,CAAC,eAAe,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;4CAC5C,OAAO,IAAI,sBAAsB,QAAQ,CAAC,IAAI,KAAK,CAAC;4CACpD,MAAM;wCACV,KAAK,MAAM;4CACP,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,QAAQ,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC;4CAClE,IAAI,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gDACvB,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gDACpC,OAAO,CAAC,GAAG,CAAC,eAAe,QAAQ,CAAC,IAAI,IAAI,GAAG,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gDACxE,OAAO,IAAI,YAAY,QAAQ,CAAC,IAAI,IAAI,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;4CAC1E,CAAC;iDAAM,CAAC;gDACJ,OAAO,IAAI,oBAAoB,QAAQ,CAAC,IAAI,eAAe,CAAC;4CAChE,CAAC;4CACD,MAAM;wCACV,KAAK,OAAO;4CACR,IAAI,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gDACjC,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gDACnD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;gDACzD,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;oDACzB,eAAe,GAAG,OAAO,CAAC;oDAC1B,OAAO,CAAC,GAAG,CAAC,4BAA4B,eAAe,EAAE,CAAC,CAAC;oDAC3D,OAAO,IAAI,yBAAyB,eAAe,IAAI,CAAC;gDAC5D,CAAC;qDAAM,CAAC;oDACJ,OAAO,IAAI,oBAAoB,SAAS,oBAAoB,CAAC;gDACjE,CAAC;4CACL,CAAC;iDAAM,CAAC;gDACJ,OAAO,CAAC,GAAG,CAAC,eAAe,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;gDAC3C,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;gDACnD,IAAI,CAAC;oDACD,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;oDAC3E,OAAO,IAAI,oBAAoB,QAAQ,CAAC,GAAG,OAAO,MAAM,IAAI,CAAC;gDACjE,CAAC;gDAAC,OAAO,GAAQ,EAAE,CAAC;oDAChB,OAAO,IAAI,mBAAmB,QAAQ,CAAC,GAAG,OAAO,GAAG,CAAC,OAAO,IAAI,CAAC;gDACrE,CAAC;4CACL,CAAC;4CACD,MAAM;wCACV,KAAK,MAAM;4CACP,OAAO,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,GAAG,IAAI,eAAe,EAAE,CAAC,CAAC;4CACpD,SAAS,GAAG,KAAK,CAAC;4CAClB,MAAM;oCACd,CAAC;gCACL,CAAC;gCACD,IAAI,OAAO,EAAE,CAAC;oCACV,aAAa,GAAG,oCAAoC,eAAe,OAAO,OAAO,gBAAgB,CAAC;oCAClG,SAAS;gCACb,CAAC;4BACL,CAAC;iCAAM,CAAC;gCACJ,OAAO,CAAC,GAAG,CAAC,UAAU,QAAQ,EAAE,CAAC,CAAC;gCAClC,SAAS,GAAG,KAAK,CAAC;4BACtB,CAAC;wBACL,CAAC;wBAAC,OAAO,CAAM,EAAE,CAAC;4BACd,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;4BACpC,SAAS,GAAG,KAAK,CAAC;wBACtB,CAAC;oBACL,CAAC;oBACD,QAAQ,EAAE,CAAC;gBACf,CAAC,CAAC,CAAC;YACP,CAAC,CAAC;YACF,QAAQ,EAAE,CAAC;YACX,MAAM;QAEV,KAAK,MAAM,CAAC;QACZ,KAAK,WAAW;YACZ,KAAK,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;YAChD,MAAM,IAAI,GAAG,CAAC,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;YACrF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;gBACf,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC;gBACxC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;oBAAE,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAChE,CAAC,CAAC,CAAC;YACH,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;YACpE,KAAK,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;YAC7C,MAAM;QAEV,KAAK,KAAK;YACN,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3B,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBACrB,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;oBACtB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAC;oBACrD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;wBAAE,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC5E,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;oBACpE,KAAK,CAAC,OAAO,CAAC,wCAAwC,CAAC,CAAC;gBAC5D,CAAC;qBAAM,CAAC;oBACJ,KAAK,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;gBAC1E,CAAC;YACL,CAAC;iBAAM,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;gBAC/B,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,CAAC,CAAC;gBAC9D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAC;gBACpD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;oBAAE,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBACpF,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;oBAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBAE1E,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;gBACtE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;gBACtE,KAAK,CAAC,OAAO,CAAC,uCAAuC,CAAC,CAAC;YAC3D,CAAC;iBAAM,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;gBAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBACrB,IAAI,CAAC,IAAI;oBAAE,OAAO,KAAK,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;gBAErE,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,CAAC,CAAC;gBAC9D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAC;gBAEpD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;oBAAE,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBACpF,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;oBAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBAE1E,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,EAAG,SAAS,CAAC,IAAY,CAAC,IAAI,CAAC,CAAC,CAAC;gBACtG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,KAAK,CAAC,EAAG,SAAS,CAAC,SAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;gBAExF,KAAK,CAAC,OAAO,CAAC,iCAAiC,IAAI,0BAA0B,CAAC,CAAC;gBAC/E,OAAO,CAAC,GAAG,CAAC,6BAA6B,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;gBAClE,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,KAAK,CAAC,CAAC;YACnD,CAAC;iBAAM,CAAC;gBACJ,KAAK,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;YAC1D,CAAC;YACD,MAAM;QAEV,KAAK,IAAI,CAAC;QACV,KAAK,WAAW;YACZ,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;YACrC,MAAM;QAEV,KAAK,MAAM,CAAC;QACZ;YACI,KAAK,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;YACvC,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;aAWX,CAAC,CAAC;YACH,MAAM;IACd,CAAC;AACL,CAAC;AAED,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;IACd,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAC7B,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/bin/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,9 +8,15 @@ export declare class AIService {
|
|
|
8
8
|
private providers;
|
|
9
9
|
private currentProviderIdx;
|
|
10
10
|
private currentModelIdx;
|
|
11
|
+
history: {
|
|
12
|
+
role: string;
|
|
13
|
+
content: string;
|
|
14
|
+
}[];
|
|
11
15
|
constructor(config: AIServiceConfig);
|
|
16
|
+
clearHistory(): void;
|
|
12
17
|
private initializeProviders;
|
|
13
18
|
request(prompt: string, systemPrompt?: string): Promise<string>;
|
|
19
|
+
requestStream(prompt: string, systemPrompt: string | undefined, onChunk: (chunk: string) => void): Promise<string>;
|
|
14
20
|
private retryLoop;
|
|
15
21
|
private executeRequest;
|
|
16
22
|
}
|
|
@@ -1,24 +1,39 @@
|
|
|
1
1
|
import https from 'https';
|
|
2
|
+
import http from 'http';
|
|
2
3
|
import { URL } from 'url';
|
|
3
4
|
export class AIService {
|
|
4
5
|
config;
|
|
5
6
|
providers = [];
|
|
6
7
|
currentProviderIdx = 0;
|
|
7
8
|
currentModelIdx = 0;
|
|
9
|
+
history = [];
|
|
8
10
|
constructor(config) {
|
|
9
11
|
this.config = config;
|
|
10
12
|
this.initializeProviders();
|
|
11
13
|
}
|
|
14
|
+
clearHistory() {
|
|
15
|
+
this.history = [];
|
|
16
|
+
}
|
|
12
17
|
initializeProviders() {
|
|
13
18
|
// 1. Google Gemini (Primary or Custom if baseUrl is set)
|
|
14
19
|
this.providers.push({
|
|
15
20
|
name: 'Google Gemini',
|
|
16
21
|
baseUrl: this.config.baseUrl || 'https://generativelanguage.googleapis.com',
|
|
17
22
|
apiKey: this.config.apiKey,
|
|
18
|
-
models: this.config.model ? [this.config.model] : ['gemini-2.
|
|
23
|
+
models: this.config.model ? [this.config.model] : ['gemini-2.0-flash-exp', 'gemini-1.5-pro'],
|
|
19
24
|
isCustom: !!this.config.baseUrl
|
|
20
25
|
});
|
|
21
|
-
// 2.
|
|
26
|
+
// 2. Ollama (Local)
|
|
27
|
+
if (process.env.OLLAMA_BASE_URL || process.env.USE_OLLAMA === 'true') {
|
|
28
|
+
this.providers.push({
|
|
29
|
+
name: 'Ollama (Local)',
|
|
30
|
+
baseUrl: process.env.OLLAMA_BASE_URL || 'http://localhost:11434/v1',
|
|
31
|
+
apiKey: 'ollama',
|
|
32
|
+
models: [process.env.OLLAMA_MODEL || 'llama3', 'mistral', 'codellama'],
|
|
33
|
+
isCustom: true
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
// 3. Groq Fallback
|
|
22
37
|
if (process.env.GROQ_API_KEY) {
|
|
23
38
|
this.providers.push({
|
|
24
39
|
name: 'Groq Cloud',
|
|
@@ -28,7 +43,7 @@ export class AIService {
|
|
|
28
43
|
isCustom: true
|
|
29
44
|
});
|
|
30
45
|
}
|
|
31
|
-
//
|
|
46
|
+
// 4. OpenAI Fallback
|
|
32
47
|
if (process.env.OPENAI_API_KEY) {
|
|
33
48
|
this.providers.push({
|
|
34
49
|
name: 'OpenAI',
|
|
@@ -38,26 +53,120 @@ export class AIService {
|
|
|
38
53
|
isCustom: true
|
|
39
54
|
});
|
|
40
55
|
}
|
|
41
|
-
// 4. Mistral Fallback
|
|
42
|
-
if (process.env.MISTRAL_API_KEY) {
|
|
43
|
-
this.providers.push({
|
|
44
|
-
name: 'Mistral AI',
|
|
45
|
-
baseUrl: 'https://api.mistral.ai/v1',
|
|
46
|
-
apiKey: process.env.MISTRAL_API_KEY,
|
|
47
|
-
models: ['mistral-tiny', 'mistral-small'],
|
|
48
|
-
isCustom: true
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
56
|
}
|
|
52
57
|
async request(prompt, systemPrompt) {
|
|
53
58
|
this.currentProviderIdx = 0;
|
|
54
59
|
this.currentModelIdx = 0;
|
|
55
|
-
|
|
60
|
+
// Add user message to history
|
|
61
|
+
this.history.push({ role: 'user', content: prompt });
|
|
62
|
+
const response = await this.retryLoop(prompt, systemPrompt);
|
|
63
|
+
// Add AI response to history
|
|
64
|
+
this.history.push({ role: 'assistant', content: response });
|
|
65
|
+
return response;
|
|
66
|
+
}
|
|
67
|
+
async requestStream(prompt, systemPrompt, onChunk) {
|
|
68
|
+
this.history.push({ role: 'user', content: prompt });
|
|
69
|
+
// Find first available provider with a key
|
|
70
|
+
let providerIdx = 0;
|
|
71
|
+
while (providerIdx < this.providers.length) {
|
|
72
|
+
const p = this.providers[providerIdx];
|
|
73
|
+
if (p.apiKey || p.name.includes('Ollama'))
|
|
74
|
+
break;
|
|
75
|
+
providerIdx++;
|
|
76
|
+
}
|
|
77
|
+
const provider = this.providers[providerIdx];
|
|
78
|
+
if (!provider)
|
|
79
|
+
throw new Error('No valid AI provider found.');
|
|
80
|
+
const model = provider.models[0]; // Use first model for streaming
|
|
81
|
+
const url = new URL(provider.baseUrl);
|
|
82
|
+
const isCustom = provider.isCustom;
|
|
83
|
+
const protocol = url.protocol === 'https:' ? https : http;
|
|
84
|
+
const apiPath = isCustom
|
|
85
|
+
? (url.pathname.endsWith('/') ? url.pathname + 'chat/completions' : url.pathname + '/chat/completions')
|
|
86
|
+
: `/v1/models/${model}:streamGenerateContent?key=${encodeURIComponent(provider.apiKey)}`;
|
|
87
|
+
const data = isCustom ? JSON.stringify({
|
|
88
|
+
model: model,
|
|
89
|
+
messages: [
|
|
90
|
+
...(systemPrompt ? [{ role: 'system', content: `${systemPrompt}\nCurrent Date: ${new Date().toISOString()}` }] : []),
|
|
91
|
+
...this.history
|
|
92
|
+
],
|
|
93
|
+
temperature: 0.1,
|
|
94
|
+
stream: true
|
|
95
|
+
}) : JSON.stringify({
|
|
96
|
+
contents: this.history.map(h => ({ role: h.role === 'assistant' ? 'model' : 'user', parts: [{ text: h.content }] })),
|
|
97
|
+
system_instruction: systemPrompt ? { parts: [{ text: systemPrompt }] } : undefined
|
|
98
|
+
});
|
|
99
|
+
const options = {
|
|
100
|
+
hostname: url.hostname,
|
|
101
|
+
port: url.port || (url.protocol === 'https:' ? 443 : 80),
|
|
102
|
+
path: apiPath.replace('//', '/'),
|
|
103
|
+
method: 'POST',
|
|
104
|
+
headers: {
|
|
105
|
+
'Content-Type': 'application/json',
|
|
106
|
+
...(isCustom ? { 'Authorization': `Bearer ${provider.apiKey}` } : {})
|
|
107
|
+
}
|
|
108
|
+
};
|
|
109
|
+
let fullResponse = '';
|
|
110
|
+
let streamBuffer = '';
|
|
111
|
+
return new Promise((resolve, reject) => {
|
|
112
|
+
const req = protocol.request(options, (res) => {
|
|
113
|
+
res.on('data', (chunk) => {
|
|
114
|
+
streamBuffer += chunk.toString();
|
|
115
|
+
if (isCustom) {
|
|
116
|
+
const lines = streamBuffer.split('\n');
|
|
117
|
+
// Keep the last incomplete line in the buffer
|
|
118
|
+
streamBuffer = lines.pop() || '';
|
|
119
|
+
for (const line of lines) {
|
|
120
|
+
const trimmed = line.trim();
|
|
121
|
+
if (!trimmed.startsWith('data: '))
|
|
122
|
+
continue;
|
|
123
|
+
const raw = trimmed.replace('data: ', '').trim();
|
|
124
|
+
if (raw === '[DONE]')
|
|
125
|
+
continue;
|
|
126
|
+
try {
|
|
127
|
+
const json = JSON.parse(raw);
|
|
128
|
+
const content = json.choices?.[0]?.delta?.content || '';
|
|
129
|
+
if (content) {
|
|
130
|
+
fullResponse += content;
|
|
131
|
+
onChunk(content);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
catch (e) {
|
|
135
|
+
// If it's a partial JSON, we might need to put it back,
|
|
136
|
+
// but with 'data: ' prefix it should be a full line.
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
else {
|
|
141
|
+
// Gemini Stream handling (simplified)
|
|
142
|
+
try {
|
|
143
|
+
const json = JSON.parse(streamBuffer);
|
|
144
|
+
const content = json.candidates?.[0]?.content?.parts?.[0]?.text || '';
|
|
145
|
+
if (content) {
|
|
146
|
+
fullResponse += content;
|
|
147
|
+
onChunk(content);
|
|
148
|
+
streamBuffer = ''; // Clear after successful parse
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
catch (e) {
|
|
152
|
+
// Wait for more data
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
});
|
|
156
|
+
res.on('end', () => {
|
|
157
|
+
this.history.push({ role: 'assistant', content: fullResponse });
|
|
158
|
+
resolve(fullResponse);
|
|
159
|
+
});
|
|
160
|
+
});
|
|
161
|
+
req.on('error', reject);
|
|
162
|
+
req.write(data);
|
|
163
|
+
req.end();
|
|
164
|
+
});
|
|
56
165
|
}
|
|
57
166
|
async retryLoop(prompt, systemPrompt) {
|
|
58
167
|
const provider = this.providers[this.currentProviderIdx];
|
|
59
168
|
if (!provider) {
|
|
60
|
-
throw new Error('All AI providers (Gemini, Groq, OpenAI
|
|
169
|
+
throw new Error('All AI providers (Gemini, Ollama, Groq, OpenAI) failed or keys are missing.');
|
|
61
170
|
}
|
|
62
171
|
if (!provider.apiKey) {
|
|
63
172
|
this.currentProviderIdx++;
|
|
@@ -74,8 +183,15 @@ export class AIService {
|
|
|
74
183
|
}
|
|
75
184
|
catch (error) {
|
|
76
185
|
console.log(`⚠️ ${provider.name} Failed (${model}): ${error.message || 'Unknown Error'}`);
|
|
77
|
-
if (error.message?.includes('429') || error.message?.includes('quota')) {
|
|
78
|
-
|
|
186
|
+
if (error.message?.includes('429') || error.message?.toLowerCase().includes('quota')) {
|
|
187
|
+
const attempt = this.currentModelIdx + 1;
|
|
188
|
+
const backoff = Math.pow(2, attempt) * 1000 + Math.random() * 1000;
|
|
189
|
+
await new Promise(r => setTimeout(r, backoff));
|
|
190
|
+
}
|
|
191
|
+
if (this.currentModelIdx >= provider.models.length - 1) {
|
|
192
|
+
this.currentProviderIdx++;
|
|
193
|
+
this.currentModelIdx = 0;
|
|
194
|
+
return this.retryLoop(prompt, systemPrompt);
|
|
79
195
|
}
|
|
80
196
|
this.currentModelIdx++;
|
|
81
197
|
return this.retryLoop(prompt, systemPrompt);
|
|
@@ -84,17 +200,20 @@ export class AIService {
|
|
|
84
200
|
executeRequest(prompt, systemPrompt, provider, model) {
|
|
85
201
|
const url = new URL(provider.baseUrl);
|
|
86
202
|
const isCustom = provider.isCustom;
|
|
203
|
+
const protocol = url.protocol === 'https:' ? https : http;
|
|
87
204
|
const apiPath = isCustom
|
|
88
205
|
? (url.pathname.endsWith('/') ? url.pathname + 'chat/completions' : url.pathname + '/chat/completions')
|
|
89
|
-
: `/
|
|
206
|
+
: `/v1/models/${model}:generateContent?key=${encodeURIComponent(provider.apiKey)}`;
|
|
90
207
|
const data = isCustom ? JSON.stringify({
|
|
91
208
|
model: model,
|
|
92
209
|
messages: [
|
|
93
|
-
...(systemPrompt ? [{ role: 'system', content: systemPrompt }] : []),
|
|
94
|
-
|
|
95
|
-
]
|
|
210
|
+
...(systemPrompt ? [{ role: 'system', content: `${systemPrompt}\nCurrent Date: ${new Date().toISOString()}` }] : []),
|
|
211
|
+
...this.history
|
|
212
|
+
],
|
|
213
|
+
temperature: 0.1
|
|
96
214
|
}) : JSON.stringify({
|
|
97
|
-
contents:
|
|
215
|
+
contents: this.history.map(h => ({ role: h.role === 'assistant' ? 'model' : 'user', parts: [{ text: h.content }] })),
|
|
216
|
+
system_instruction: systemPrompt ? { parts: [{ text: systemPrompt }] } : undefined
|
|
98
217
|
});
|
|
99
218
|
const options = {
|
|
100
219
|
hostname: url.hostname,
|
|
@@ -107,7 +226,7 @@ export class AIService {
|
|
|
107
226
|
}
|
|
108
227
|
};
|
|
109
228
|
return new Promise((resolve, reject) => {
|
|
110
|
-
const req =
|
|
229
|
+
const req = protocol.request(options, (res) => {
|
|
111
230
|
let body = '';
|
|
112
231
|
res.on('data', (d) => body += d);
|
|
113
232
|
res.on('end', () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-service.js","sourceRoot":"","sources":["../../src/services/ai-service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ai-service.js","sourceRoot":"","sources":["../../src/services/ai-service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|