feat: implement S4 versioning system, fix Gemini API integration, and add whoami command

This commit is contained in:
s41r4j
2026-01-28 23:45:14 +05:30
parent 687dd1920f
commit 9eaa68165e
5 changed files with 428 additions and 9 deletions
+10 -3
View File
@@ -15,7 +15,7 @@ class AIProviderManager {
resolveProvider(preference = 'auto') {
if (preference === 'none') return 'none';
// Check if preferred provider's key is available
if (preference === 'openai' && process.env.OPENAI_API_KEY) return 'openai';
if (preference === 'gemini' && process.env.GEMINI_API_KEY) return 'gemini';
@@ -25,7 +25,7 @@ class AIProviderManager {
if (process.env.GEMINI_API_KEY) return 'gemini';
if (process.env.OPENAI_API_KEY) return 'openai';
if (process.env.GROQ_API_KEY) return 'groq';
return 'none';
}
@@ -90,7 +90,14 @@ class AIProviderManager {
model: actualModel,
contents: prompt,
});
return (await response.response.text()).trim();
// Handle @google/genai v1.5+ raw response structure
if (response && response.candidates && response.candidates.length > 0) {
const parts = response.candidates[0].content.parts;
return parts.map(p => p.text || '').join('').trim();
}
return '';
}
async generateWithOpenAI(prompt, model, options) {