@vezlo/assistant-server 2.11.0 ā 2.12.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.
- package/README.md +11 -1
- package/database-schema.sql +33 -7
- package/dist/src/bootstrap/initializeServices.d.ts +4 -0
- package/dist/src/bootstrap/initializeServices.d.ts.map +1 -1
- package/dist/src/bootstrap/initializeServices.js +13 -5
- package/dist/src/bootstrap/initializeServices.js.map +1 -1
- package/dist/src/config/defaultAISettings.d.ts +20 -0
- package/dist/src/config/defaultAISettings.d.ts.map +1 -0
- package/dist/src/config/defaultAISettings.js +52 -0
- package/dist/src/config/defaultAISettings.js.map +1 -0
- package/dist/src/controllers/AISettingsController.d.ts +22 -0
- package/dist/src/controllers/AISettingsController.d.ts.map +1 -0
- package/dist/src/controllers/AISettingsController.js +119 -0
- package/dist/src/controllers/AISettingsController.js.map +1 -0
- package/dist/src/controllers/ChatController.d.ts +3 -0
- package/dist/src/controllers/ChatController.d.ts.map +1 -1
- package/dist/src/controllers/ChatController.js +60 -4
- package/dist/src/controllers/ChatController.js.map +1 -1
- package/dist/src/controllers/DatabaseToolConfigController.d.ts.map +1 -1
- package/dist/src/controllers/DatabaseToolConfigController.js +61 -12
- package/dist/src/controllers/DatabaseToolConfigController.js.map +1 -1
- package/dist/src/migrations/011_create_database_tool_configs.d.ts.map +1 -1
- package/dist/src/migrations/011_create_database_tool_configs.js +11 -9
- package/dist/src/migrations/011_create_database_tool_configs.js.map +1 -1
- package/dist/src/migrations/012_create_ai_settings.d.ts +4 -0
- package/dist/src/migrations/012_create_ai_settings.d.ts.map +1 -0
- package/dist/src/migrations/012_create_ai_settings.js +36 -0
- package/dist/src/migrations/012_create_ai_settings.js.map +1 -0
- package/dist/src/server.js +130 -0
- package/dist/src/server.js.map +1 -1
- package/dist/src/services/AIService.d.ts +7 -2
- package/dist/src/services/AIService.d.ts.map +1 -1
- package/dist/src/services/AIService.js +43 -66
- package/dist/src/services/AIService.js.map +1 -1
- package/dist/src/services/AISettingsService.d.ts +45 -0
- package/dist/src/services/AISettingsService.d.ts.map +1 -0
- package/dist/src/services/AISettingsService.js +162 -0
- package/dist/src/services/AISettingsService.js.map +1 -0
- package/dist/src/services/DatabaseToolConfigService.d.ts +19 -17
- package/dist/src/services/DatabaseToolConfigService.d.ts.map +1 -1
- package/dist/src/services/DatabaseToolConfigService.js +34 -25
- package/dist/src/services/DatabaseToolConfigService.js.map +1 -1
- package/dist/src/services/IntentService.d.ts +7 -2
- package/dist/src/services/IntentService.d.ts.map +1 -1
- package/dist/src/services/IntentService.js +51 -28
- package/dist/src/services/IntentService.js.map +1 -1
- package/dist/src/services/PromptService.d.ts +59 -0
- package/dist/src/services/PromptService.d.ts.map +1 -0
- package/dist/src/services/PromptService.js +199 -0
- package/dist/src/services/PromptService.js.map +1 -0
- package/dist/src/services/ResponseGenerationService.d.ts +13 -0
- package/dist/src/services/ResponseGenerationService.d.ts.map +1 -1
- package/dist/src/services/ResponseGenerationService.js +10 -2
- package/dist/src/services/ResponseGenerationService.js.map +1 -1
- package/dist/src/services/SetupService.d.ts.map +1 -1
- package/dist/src/services/SetupService.js +10 -0
- package/dist/src/services/SetupService.js.map +1 -1
- package/env.example +2 -0
- package/package.json +3 -1
- package/scripts/seed-ai-settings.js +120 -0
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Seed AI Settings Script for Vezlo Assistant Server
|
|
5
|
+
* Seeds or updates AI settings for all existing companies
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
const { config } = require('dotenv');
|
|
9
|
+
const { initializeSupabase } = require('../dist/src/config/database.js');
|
|
10
|
+
const { AISettingsService } = require('../dist/src/services/AISettingsService.js');
|
|
11
|
+
const { DEFAULT_AI_SETTINGS } = require('../dist/src/config/defaultAISettings.js');
|
|
12
|
+
const logger = require('../dist/src/config/logger.js');
|
|
13
|
+
|
|
14
|
+
// Load environment variables
|
|
15
|
+
config();
|
|
16
|
+
|
|
17
|
+
async function seedAISettings() {
|
|
18
|
+
try {
|
|
19
|
+
console.log('š Starting AI Settings Seed...\n');
|
|
20
|
+
|
|
21
|
+
// Initialize Supabase
|
|
22
|
+
const supabase = initializeSupabase();
|
|
23
|
+
|
|
24
|
+
// Wait for schema cache to refresh
|
|
25
|
+
console.log('ā³ Waiting for schema cache to refresh...');
|
|
26
|
+
await new Promise(resolve => setTimeout(resolve, 2000));
|
|
27
|
+
|
|
28
|
+
const aiSettingsService = new AISettingsService(supabase);
|
|
29
|
+
|
|
30
|
+
// Get all companies
|
|
31
|
+
const { data: companies, error: companiesError } = await supabase
|
|
32
|
+
.from('vezlo_companies')
|
|
33
|
+
.select('id, uuid, name');
|
|
34
|
+
|
|
35
|
+
if (companiesError) {
|
|
36
|
+
throw new Error(`Failed to fetch companies: ${companiesError.message}`);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
if (!companies || companies.length === 0) {
|
|
40
|
+
console.log('ā ļø No companies found in database');
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
console.log(`š Found ${companies.length} company(ies)\n`);
|
|
45
|
+
|
|
46
|
+
let seededCount = 0;
|
|
47
|
+
let updatedCount = 0;
|
|
48
|
+
let skippedCount = 0;
|
|
49
|
+
|
|
50
|
+
for (const company of companies) {
|
|
51
|
+
try {
|
|
52
|
+
// Check if AI settings already exist
|
|
53
|
+
const { data: existing, error: checkError } = await supabase
|
|
54
|
+
.from('vezlo_ai_settings')
|
|
55
|
+
.select('id, settings')
|
|
56
|
+
.eq('company_id', company.id)
|
|
57
|
+
.single();
|
|
58
|
+
|
|
59
|
+
if (checkError && checkError.code !== 'PGRST116') {
|
|
60
|
+
// PGRST116 = not found error (expected if no settings exist)
|
|
61
|
+
console.log(` ā ļø Error checking settings for ${company.name}: ${checkError.message}`);
|
|
62
|
+
skippedCount++;
|
|
63
|
+
continue;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
if (existing) {
|
|
67
|
+
// Settings exist - update with defaults
|
|
68
|
+
console.log(` š Updating AI settings for: ${company.name}`);
|
|
69
|
+
|
|
70
|
+
const { error: updateError } = await supabase
|
|
71
|
+
.from('vezlo_ai_settings')
|
|
72
|
+
.update({
|
|
73
|
+
settings: DEFAULT_AI_SETTINGS,
|
|
74
|
+
updated_at: new Date().toISOString()
|
|
75
|
+
})
|
|
76
|
+
.eq('company_id', company.id);
|
|
77
|
+
|
|
78
|
+
if (updateError) {
|
|
79
|
+
console.log(` ā Failed to update for ${company.name}: ${updateError.message}`);
|
|
80
|
+
skippedCount++;
|
|
81
|
+
} else {
|
|
82
|
+
console.log(` ā
Updated AI settings for: ${company.name}`);
|
|
83
|
+
updatedCount++;
|
|
84
|
+
}
|
|
85
|
+
} else {
|
|
86
|
+
// Settings don't exist - create new
|
|
87
|
+
console.log(` š Creating AI settings for: ${company.name}`);
|
|
88
|
+
|
|
89
|
+
await aiSettingsService.createDefaultSettings(company.id);
|
|
90
|
+
|
|
91
|
+
console.log(` ā
Created AI settings for: ${company.name}`);
|
|
92
|
+
seededCount++;
|
|
93
|
+
}
|
|
94
|
+
} catch (companyError) {
|
|
95
|
+
console.log(` ā Error processing ${company.name}:`, companyError.message);
|
|
96
|
+
skippedCount++;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
// Display summary
|
|
101
|
+
console.log('\nš AI Settings Seed Completed!');
|
|
102
|
+
console.log('=====================================');
|
|
103
|
+
console.log(` Total Companies: ${companies.length}`);
|
|
104
|
+
console.log(` ā
Created: ${seededCount}`);
|
|
105
|
+
console.log(` š Updated: ${updatedCount}`);
|
|
106
|
+
console.log(` ā ļø Skipped: ${skippedCount}`);
|
|
107
|
+
console.log('');
|
|
108
|
+
|
|
109
|
+
} catch (error) {
|
|
110
|
+
console.error('ā Seed failed:', error);
|
|
111
|
+
process.exit(1);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
// Run seed if called directly
|
|
116
|
+
if (require.main === module) {
|
|
117
|
+
seedAISettings();
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
module.exports = { seedAISettings };
|