@vezlo/assistant-server 2.9.0 → 2.11.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 +10 -0
- package/database-schema.sql +44 -0
- package/dist/src/bootstrap/initializeServices.d.ts +7 -0
- package/dist/src/bootstrap/initializeServices.d.ts.map +1 -1
- package/dist/src/bootstrap/initializeServices.js +25 -4
- package/dist/src/bootstrap/initializeServices.js.map +1 -1
- package/dist/src/controllers/ChatController.d.ts +6 -0
- package/dist/src/controllers/ChatController.d.ts.map +1 -1
- package/dist/src/controllers/ChatController.js +91 -17
- package/dist/src/controllers/ChatController.js.map +1 -1
- package/dist/src/controllers/DatabaseToolConfigController.d.ts +81 -0
- package/dist/src/controllers/DatabaseToolConfigController.d.ts.map +1 -0
- package/dist/src/controllers/DatabaseToolConfigController.js +524 -0
- package/dist/src/controllers/DatabaseToolConfigController.js.map +1 -0
- package/dist/src/controllers/KnowledgeController.js +4 -4
- package/dist/src/controllers/KnowledgeController.js.map +1 -1
- package/dist/src/migrations/011_create_database_tool_configs.d.ts +4 -0
- package/dist/src/migrations/011_create_database_tool_configs.d.ts.map +1 -0
- package/dist/src/migrations/011_create_database_tool_configs.js +49 -0
- package/dist/src/migrations/011_create_database_tool_configs.js.map +1 -0
- package/dist/src/server.js +399 -0
- package/dist/src/server.js.map +1 -1
- package/dist/src/services/AIService.d.ts +6 -0
- package/dist/src/services/AIService.d.ts.map +1 -1
- package/dist/src/services/AIService.js +30 -2
- package/dist/src/services/AIService.js.map +1 -1
- package/dist/src/services/DatabaseToolConfigService.d.ts +133 -0
- package/dist/src/services/DatabaseToolConfigService.d.ts.map +1 -0
- package/dist/src/services/DatabaseToolConfigService.js +442 -0
- package/dist/src/services/DatabaseToolConfigService.js.map +1 -0
- package/dist/src/services/DatabaseToolService.d.ts +75 -0
- package/dist/src/services/DatabaseToolService.d.ts.map +1 -0
- package/dist/src/services/DatabaseToolService.js +299 -0
- package/dist/src/services/DatabaseToolService.js.map +1 -0
- package/dist/src/services/IntentService.d.ts +12 -1
- package/dist/src/services/IntentService.d.ts.map +1 -1
- package/dist/src/services/IntentService.js +36 -5
- package/dist/src/services/IntentService.js.map +1 -1
- package/dist/src/services/KnowledgeBaseService.d.ts +4 -0
- package/dist/src/services/KnowledgeBaseService.d.ts.map +1 -1
- package/dist/src/services/KnowledgeBaseService.js +5 -1
- package/dist/src/services/KnowledgeBaseService.js.map +1 -1
- package/dist/src/services/ResponseGenerationService.d.ts +11 -4
- package/dist/src/services/ResponseGenerationService.d.ts.map +1 -1
- package/dist/src/services/ResponseGenerationService.js +51 -7
- package/dist/src/services/ResponseGenerationService.js.map +1 -1
- package/dist/src/services/ResponseStreamingService.d.ts +13 -1
- package/dist/src/services/ResponseStreamingService.d.ts.map +1 -1
- package/dist/src/services/ResponseStreamingService.js +50 -9
- package/dist/src/services/ResponseStreamingService.js.map +1 -1
- package/dist/src/services/ValidationService.d.ts +16 -0
- package/dist/src/services/ValidationService.d.ts.map +1 -0
- package/dist/src/services/ValidationService.js +83 -0
- package/dist/src/services/ValidationService.js.map +1 -0
- package/env.example +9 -0
- package/package.json +2 -1
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.up = up;
|
|
4
|
+
exports.down = down;
|
|
5
|
+
async function up(knex) {
|
|
6
|
+
// Table for storing external database configurations
|
|
7
|
+
await knex.schema.createTable('vezlo_database_tool_configs', (table) => {
|
|
8
|
+
table.uuid('id').primary().defaultTo(knex.raw('gen_random_uuid()'));
|
|
9
|
+
table.integer('company_id').notNullable().references('id').inTable('vezlo_companies').onDelete('CASCADE');
|
|
10
|
+
table.text('db_url_encrypted').notNullable(); // Encrypted database URL
|
|
11
|
+
table.text('db_key_encrypted').notNullable(); // Encrypted database key
|
|
12
|
+
table.boolean('enabled').defaultTo(true);
|
|
13
|
+
table.timestamp('created_at').defaultTo(knex.fn.now());
|
|
14
|
+
table.timestamp('updated_at').defaultTo(knex.fn.now());
|
|
15
|
+
// Index for quick lookups by company
|
|
16
|
+
table.index('company_id');
|
|
17
|
+
});
|
|
18
|
+
// Table for storing individual tool configurations per table
|
|
19
|
+
await knex.schema.createTable('vezlo_database_tools', (table) => {
|
|
20
|
+
table.uuid('id').primary().defaultTo(knex.raw('gen_random_uuid()'));
|
|
21
|
+
table.uuid('config_id').notNullable().references('id').inTable('vezlo_database_tool_configs').onDelete('CASCADE');
|
|
22
|
+
table.text('table_name').notNullable(); // Database table name
|
|
23
|
+
table.text('tool_name').notNullable(); // Generated tool name (e.g., 'get_user_details')
|
|
24
|
+
table.text('tool_description'); // Description for LLM
|
|
25
|
+
table.jsonb('columns').notNullable(); // Array of accessible column names
|
|
26
|
+
table.text('id_column').notNullable().defaultTo('id'); // Primary key column name
|
|
27
|
+
table.text('id_column_type').notNullable().defaultTo('integer'); // 'integer', 'uuid', 'string'
|
|
28
|
+
table.boolean('enabled').defaultTo(true);
|
|
29
|
+
// User filtering columns
|
|
30
|
+
table.boolean('requires_user_context').defaultTo(false); // Whether tool needs user filtering
|
|
31
|
+
table.text('user_filter_column').nullable(); // Column to filter by (e.g., 'uuid', 'company_id')
|
|
32
|
+
table.text('user_filter_type').nullable(); // 'uuid', 'integer', 'string'
|
|
33
|
+
table.text('user_context_key').nullable(); // Key from user_context (e.g., 'user_uuid', 'company_id')
|
|
34
|
+
table.timestamp('created_at').defaultTo(knex.fn.now());
|
|
35
|
+
table.timestamp('updated_at').defaultTo(knex.fn.now());
|
|
36
|
+
// Index for quick lookups
|
|
37
|
+
table.index('config_id');
|
|
38
|
+
table.index('enabled');
|
|
39
|
+
// Unique constraint: one tool per table per config
|
|
40
|
+
table.unique(['config_id', 'table_name']);
|
|
41
|
+
});
|
|
42
|
+
console.log('✅ Created vezlo_database_tool_configs and vezlo_database_tools tables');
|
|
43
|
+
}
|
|
44
|
+
async function down(knex) {
|
|
45
|
+
await knex.schema.dropTableIfExists('vezlo_database_tools');
|
|
46
|
+
await knex.schema.dropTableIfExists('vezlo_database_tool_configs');
|
|
47
|
+
console.log('✅ Dropped vezlo_database_tool_configs and vezlo_database_tools tables');
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=011_create_database_tool_configs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"011_create_database_tool_configs.js","sourceRoot":"","sources":["../../../src/migrations/011_create_database_tool_configs.ts"],"names":[],"mappings":"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"}
|
package/dist/src/server.js
CHANGED
|
@@ -115,6 +115,7 @@ let authController;
|
|
|
115
115
|
let apiKeyController;
|
|
116
116
|
let companyController;
|
|
117
117
|
let slackController;
|
|
118
|
+
let databaseToolConfigController;
|
|
118
119
|
async function initializeServices() {
|
|
119
120
|
try {
|
|
120
121
|
logger_1.default.info('Initializing Vezlo services...');
|
|
@@ -130,6 +131,7 @@ async function initializeServices() {
|
|
|
130
131
|
apiKeyController = controllers.apiKeyController;
|
|
131
132
|
companyController = controllers.companyController;
|
|
132
133
|
slackController = controllers.slackController;
|
|
134
|
+
databaseToolConfigController = controllers.databaseToolConfigController;
|
|
133
135
|
logger_1.default.info('All services initialized successfully');
|
|
134
136
|
}
|
|
135
137
|
catch (error) {
|
|
@@ -379,6 +381,403 @@ function setupRoutes() {
|
|
|
379
381
|
* description: Internal server error
|
|
380
382
|
*/
|
|
381
383
|
app.get('/api/company/analytics', (0, auth_1.authenticateUser)(supabase), (req, res) => companyController.getAnalytics(req, res));
|
|
384
|
+
// Database Tool Configuration API Routes
|
|
385
|
+
/**
|
|
386
|
+
* @swagger
|
|
387
|
+
* /api/database-tools/config:
|
|
388
|
+
* post:
|
|
389
|
+
* summary: Create database configuration
|
|
390
|
+
* description: Create external database configuration for tool integration (Admin only)
|
|
391
|
+
* tags: [Database Tools]
|
|
392
|
+
* security:
|
|
393
|
+
* - bearerAuth: []
|
|
394
|
+
* requestBody:
|
|
395
|
+
* required: true
|
|
396
|
+
* content:
|
|
397
|
+
* application/json:
|
|
398
|
+
* schema:
|
|
399
|
+
* type: object
|
|
400
|
+
* required:
|
|
401
|
+
* - db_url
|
|
402
|
+
* - db_key
|
|
403
|
+
* properties:
|
|
404
|
+
* db_url:
|
|
405
|
+
* type: string
|
|
406
|
+
* description: External database URL (Supabase)
|
|
407
|
+
* db_key:
|
|
408
|
+
* type: string
|
|
409
|
+
* description: Database API key
|
|
410
|
+
* responses:
|
|
411
|
+
* 201:
|
|
412
|
+
* description: Configuration created successfully
|
|
413
|
+
* 409:
|
|
414
|
+
* description: Configuration already exists
|
|
415
|
+
* 401:
|
|
416
|
+
* description: Not authenticated
|
|
417
|
+
*/
|
|
418
|
+
app.post('/api/database-tools/config', (0, auth_1.authenticateUser)(supabase), (req, res) => databaseToolConfigController.createConfig(req, res));
|
|
419
|
+
/**
|
|
420
|
+
* @swagger
|
|
421
|
+
* /api/database-tools/config:
|
|
422
|
+
* get:
|
|
423
|
+
* summary: Get database configuration
|
|
424
|
+
* description: Get current company's database configuration
|
|
425
|
+
* tags: [Database Tools]
|
|
426
|
+
* security:
|
|
427
|
+
* - bearerAuth: []
|
|
428
|
+
* responses:
|
|
429
|
+
* 200:
|
|
430
|
+
* description: Configuration retrieved successfully
|
|
431
|
+
* 404:
|
|
432
|
+
* description: No configuration found
|
|
433
|
+
*/
|
|
434
|
+
app.get('/api/database-tools/config', (0, auth_1.authenticateUser)(supabase), (req, res) => databaseToolConfigController.getConfig(req, res));
|
|
435
|
+
/**
|
|
436
|
+
* @swagger
|
|
437
|
+
* /api/database-tools/config/{configId}:
|
|
438
|
+
* put:
|
|
439
|
+
* summary: Update database configuration
|
|
440
|
+
* description: Update database configuration
|
|
441
|
+
* tags: [Database Tools]
|
|
442
|
+
* security:
|
|
443
|
+
* - bearerAuth: []
|
|
444
|
+
* parameters:
|
|
445
|
+
* - in: path
|
|
446
|
+
* name: configId
|
|
447
|
+
* required: true
|
|
448
|
+
* schema:
|
|
449
|
+
* type: string
|
|
450
|
+
* requestBody:
|
|
451
|
+
* content:
|
|
452
|
+
* application/json:
|
|
453
|
+
* schema:
|
|
454
|
+
* type: object
|
|
455
|
+
* properties:
|
|
456
|
+
* db_url:
|
|
457
|
+
* type: string
|
|
458
|
+
* db_key:
|
|
459
|
+
* type: string
|
|
460
|
+
* enabled:
|
|
461
|
+
* type: boolean
|
|
462
|
+
* responses:
|
|
463
|
+
* 200:
|
|
464
|
+
* description: Configuration updated successfully
|
|
465
|
+
*/
|
|
466
|
+
app.put('/api/database-tools/config/:configId', (0, auth_1.authenticateUser)(supabase), (req, res) => databaseToolConfigController.updateConfig(req, res));
|
|
467
|
+
/**
|
|
468
|
+
* @swagger
|
|
469
|
+
* /api/database-tools/config/{configId}:
|
|
470
|
+
* delete:
|
|
471
|
+
* summary: Delete database configuration
|
|
472
|
+
* description: Delete database configuration and all associated tools
|
|
473
|
+
* tags: [Database Tools]
|
|
474
|
+
* security:
|
|
475
|
+
* - bearerAuth: []
|
|
476
|
+
* parameters:
|
|
477
|
+
* - in: path
|
|
478
|
+
* name: configId
|
|
479
|
+
* required: true
|
|
480
|
+
* schema:
|
|
481
|
+
* type: string
|
|
482
|
+
* responses:
|
|
483
|
+
* 200:
|
|
484
|
+
* description: Configuration deleted successfully
|
|
485
|
+
*/
|
|
486
|
+
app.delete('/api/database-tools/config/:configId', (0, auth_1.authenticateUser)(supabase), (req, res) => databaseToolConfigController.deleteConfig(req, res));
|
|
487
|
+
/**
|
|
488
|
+
* @swagger
|
|
489
|
+
* /api/database-tools/validate:
|
|
490
|
+
* post:
|
|
491
|
+
* summary: Validate database connection
|
|
492
|
+
* description: Test database connection and credentials
|
|
493
|
+
* tags: [Database Tools]
|
|
494
|
+
* security:
|
|
495
|
+
* - bearerAuth: []
|
|
496
|
+
* requestBody:
|
|
497
|
+
* required: true
|
|
498
|
+
* content:
|
|
499
|
+
* application/json:
|
|
500
|
+
* schema:
|
|
501
|
+
* type: object
|
|
502
|
+
* required:
|
|
503
|
+
* - db_url
|
|
504
|
+
* - db_key
|
|
505
|
+
* properties:
|
|
506
|
+
* db_url:
|
|
507
|
+
* type: string
|
|
508
|
+
* db_key:
|
|
509
|
+
* type: string
|
|
510
|
+
* responses:
|
|
511
|
+
* 200:
|
|
512
|
+
* description: Validation result
|
|
513
|
+
*/
|
|
514
|
+
app.post('/api/database-tools/validate', (0, auth_1.authenticateUser)(supabase), (req, res) => databaseToolConfigController.validateConnection(req, res));
|
|
515
|
+
/**
|
|
516
|
+
* @swagger
|
|
517
|
+
* /api/database-tools/tables:
|
|
518
|
+
* post:
|
|
519
|
+
* summary: Get database tables
|
|
520
|
+
* description: Introspect database and get list of available tables
|
|
521
|
+
* tags: [Database Tools]
|
|
522
|
+
* security:
|
|
523
|
+
* - bearerAuth: []
|
|
524
|
+
* requestBody:
|
|
525
|
+
* required: true
|
|
526
|
+
* content:
|
|
527
|
+
* application/json:
|
|
528
|
+
* schema:
|
|
529
|
+
* type: object
|
|
530
|
+
* required:
|
|
531
|
+
* - db_url
|
|
532
|
+
* - db_key
|
|
533
|
+
* properties:
|
|
534
|
+
* db_url:
|
|
535
|
+
* type: string
|
|
536
|
+
* db_key:
|
|
537
|
+
* type: string
|
|
538
|
+
* responses:
|
|
539
|
+
* 200:
|
|
540
|
+
* description: List of tables
|
|
541
|
+
*/
|
|
542
|
+
app.post('/api/database-tools/tables', (0, auth_1.authenticateUser)(supabase), (req, res) => databaseToolConfigController.getTables(req, res));
|
|
543
|
+
/**
|
|
544
|
+
* @swagger
|
|
545
|
+
* /api/database-tools/tables/{tableName}/schema:
|
|
546
|
+
* post:
|
|
547
|
+
* summary: Get table schema
|
|
548
|
+
* description: Get columns and types for a specific table
|
|
549
|
+
* tags: [Database Tools]
|
|
550
|
+
* security:
|
|
551
|
+
* - bearerAuth: []
|
|
552
|
+
* parameters:
|
|
553
|
+
* - in: path
|
|
554
|
+
* name: tableName
|
|
555
|
+
* required: true
|
|
556
|
+
* schema:
|
|
557
|
+
* type: string
|
|
558
|
+
* requestBody:
|
|
559
|
+
* required: true
|
|
560
|
+
* content:
|
|
561
|
+
* application/json:
|
|
562
|
+
* schema:
|
|
563
|
+
* type: object
|
|
564
|
+
* required:
|
|
565
|
+
* - db_url
|
|
566
|
+
* - db_key
|
|
567
|
+
* properties:
|
|
568
|
+
* db_url:
|
|
569
|
+
* type: string
|
|
570
|
+
* db_key:
|
|
571
|
+
* type: string
|
|
572
|
+
* responses:
|
|
573
|
+
* 200:
|
|
574
|
+
* description: Table schema with columns
|
|
575
|
+
*/
|
|
576
|
+
app.post('/api/database-tools/tables/:tableName/schema', (0, auth_1.authenticateUser)(supabase), (req, res) => databaseToolConfigController.getTableSchema(req, res));
|
|
577
|
+
/**
|
|
578
|
+
* @swagger
|
|
579
|
+
* /api/database-tools/config/{configId}/tables:
|
|
580
|
+
* get:
|
|
581
|
+
* summary: Get available tables from saved config
|
|
582
|
+
* description: Retrieve tables from existing database configuration
|
|
583
|
+
* tags: [Database Tools]
|
|
584
|
+
* security:
|
|
585
|
+
* - bearerAuth: []
|
|
586
|
+
* parameters:
|
|
587
|
+
* - in: path
|
|
588
|
+
* name: configId
|
|
589
|
+
* required: true
|
|
590
|
+
* schema:
|
|
591
|
+
* type: string
|
|
592
|
+
* responses:
|
|
593
|
+
* 200:
|
|
594
|
+
* description: List of tables
|
|
595
|
+
*/
|
|
596
|
+
app.get('/api/database-tools/config/:configId/tables', (0, auth_1.authenticateUser)(supabase), (req, res) => databaseToolConfigController.getTablesFromConfig(req, res));
|
|
597
|
+
/**
|
|
598
|
+
* @swagger
|
|
599
|
+
* /api/database-tools/config/{configId}/tables/{tableName}/schema:
|
|
600
|
+
* get:
|
|
601
|
+
* summary: Get table schema from saved config
|
|
602
|
+
* description: Get table columns from existing database configuration
|
|
603
|
+
* tags: [Database Tools]
|
|
604
|
+
* security:
|
|
605
|
+
* - bearerAuth: []
|
|
606
|
+
* parameters:
|
|
607
|
+
* - in: path
|
|
608
|
+
* name: configId
|
|
609
|
+
* required: true
|
|
610
|
+
* schema:
|
|
611
|
+
* type: string
|
|
612
|
+
* - in: path
|
|
613
|
+
* name: tableName
|
|
614
|
+
* required: true
|
|
615
|
+
* schema:
|
|
616
|
+
* type: string
|
|
617
|
+
* responses:
|
|
618
|
+
* 200:
|
|
619
|
+
* description: Table schema with columns
|
|
620
|
+
*/
|
|
621
|
+
app.get('/api/database-tools/config/:configId/tables/:tableName/schema', (0, auth_1.authenticateUser)(supabase), (req, res) => databaseToolConfigController.getTableSchemaFromConfig(req, res));
|
|
622
|
+
/**
|
|
623
|
+
* @swagger
|
|
624
|
+
* /api/database-tools/tools:
|
|
625
|
+
* post:
|
|
626
|
+
* summary: Create a database tool
|
|
627
|
+
* description: Create a tool for a specific table with optional user-specific filtering
|
|
628
|
+
* tags: [Database Tools]
|
|
629
|
+
* security:
|
|
630
|
+
* - bearerAuth: []
|
|
631
|
+
* requestBody:
|
|
632
|
+
* required: true
|
|
633
|
+
* content:
|
|
634
|
+
* application/json:
|
|
635
|
+
* schema:
|
|
636
|
+
* type: object
|
|
637
|
+
* required:
|
|
638
|
+
* - config_id
|
|
639
|
+
* - table_name
|
|
640
|
+
* - tool_name
|
|
641
|
+
* - columns
|
|
642
|
+
* - id_column
|
|
643
|
+
* properties:
|
|
644
|
+
* config_id:
|
|
645
|
+
* type: string
|
|
646
|
+
* description: Database configuration UUID
|
|
647
|
+
* table_name:
|
|
648
|
+
* type: string
|
|
649
|
+
* description: Name of the database table
|
|
650
|
+
* tool_name:
|
|
651
|
+
* type: string
|
|
652
|
+
* description: Name of the AI tool (function name)
|
|
653
|
+
* tool_description:
|
|
654
|
+
* type: string
|
|
655
|
+
* description: Description of what the tool does
|
|
656
|
+
* columns:
|
|
657
|
+
* type: array
|
|
658
|
+
* items:
|
|
659
|
+
* type: string
|
|
660
|
+
* description: List of column names to include
|
|
661
|
+
* id_column:
|
|
662
|
+
* type: string
|
|
663
|
+
* description: Primary key column name
|
|
664
|
+
* id_column_type:
|
|
665
|
+
* type: string
|
|
666
|
+
* enum: [integer, uuid, string]
|
|
667
|
+
* description: Data type of the primary key
|
|
668
|
+
* requires_user_context:
|
|
669
|
+
* type: boolean
|
|
670
|
+
* description: Enable user-specific data filtering
|
|
671
|
+
* user_filter_column:
|
|
672
|
+
* type: string
|
|
673
|
+
* description: Column to filter by (e.g., user_uuid)
|
|
674
|
+
* user_filter_type:
|
|
675
|
+
* type: string
|
|
676
|
+
* enum: [integer, uuid, string]
|
|
677
|
+
* description: Data type of the filter column
|
|
678
|
+
* user_context_key:
|
|
679
|
+
* type: string
|
|
680
|
+
* description: Key from widget userContext (e.g., user_uuid, company_uuid)
|
|
681
|
+
* responses:
|
|
682
|
+
* 201:
|
|
683
|
+
* description: Tool created successfully
|
|
684
|
+
*/
|
|
685
|
+
app.post('/api/database-tools/tools', (0, auth_1.authenticateUser)(supabase), (req, res) => databaseToolConfigController.createTool(req, res));
|
|
686
|
+
/**
|
|
687
|
+
* @swagger
|
|
688
|
+
* /api/database-tools/tools:
|
|
689
|
+
* get:
|
|
690
|
+
* summary: Get all tools
|
|
691
|
+
* description: Get all enabled database tools for current company
|
|
692
|
+
* tags: [Database Tools]
|
|
693
|
+
* security:
|
|
694
|
+
* - bearerAuth: []
|
|
695
|
+
* responses:
|
|
696
|
+
* 200:
|
|
697
|
+
* description: List of tools
|
|
698
|
+
*/
|
|
699
|
+
app.get('/api/database-tools/tools', (0, auth_1.authenticateUser)(supabase), (req, res) => databaseToolConfigController.getTools(req, res));
|
|
700
|
+
/**
|
|
701
|
+
* @swagger
|
|
702
|
+
* /api/database-tools/tools/{toolId}:
|
|
703
|
+
* put:
|
|
704
|
+
* summary: Update a tool
|
|
705
|
+
* description: Update tool configuration including user filtering settings
|
|
706
|
+
* tags: [Database Tools]
|
|
707
|
+
* security:
|
|
708
|
+
* - bearerAuth: []
|
|
709
|
+
* parameters:
|
|
710
|
+
* - in: path
|
|
711
|
+
* name: toolId
|
|
712
|
+
* required: true
|
|
713
|
+
* schema:
|
|
714
|
+
* type: string
|
|
715
|
+
* description: Tool UUID
|
|
716
|
+
* requestBody:
|
|
717
|
+
* content:
|
|
718
|
+
* application/json:
|
|
719
|
+
* schema:
|
|
720
|
+
* type: object
|
|
721
|
+
* properties:
|
|
722
|
+
* tool_name:
|
|
723
|
+
* type: string
|
|
724
|
+
* description: Name of the AI tool
|
|
725
|
+
* tool_description:
|
|
726
|
+
* type: string
|
|
727
|
+
* description: Description of the tool
|
|
728
|
+
* columns:
|
|
729
|
+
* type: array
|
|
730
|
+
* items:
|
|
731
|
+
* type: string
|
|
732
|
+
* description: List of column names
|
|
733
|
+
* id_column:
|
|
734
|
+
* type: string
|
|
735
|
+
* description: Primary key column name
|
|
736
|
+
* id_column_type:
|
|
737
|
+
* type: string
|
|
738
|
+
* enum: [integer, uuid, string]
|
|
739
|
+
* description: Data type of primary key
|
|
740
|
+
* enabled:
|
|
741
|
+
* type: boolean
|
|
742
|
+
* description: Enable or disable the tool
|
|
743
|
+
* requires_user_context:
|
|
744
|
+
* type: boolean
|
|
745
|
+
* description: Enable user-specific filtering
|
|
746
|
+
* user_filter_column:
|
|
747
|
+
* type: string
|
|
748
|
+
* description: Column to filter by
|
|
749
|
+
* user_filter_type:
|
|
750
|
+
* type: string
|
|
751
|
+
* enum: [integer, uuid, string]
|
|
752
|
+
* description: Data type of filter column
|
|
753
|
+
* user_context_key:
|
|
754
|
+
* type: string
|
|
755
|
+
* description: Key from widget userContext
|
|
756
|
+
* responses:
|
|
757
|
+
* 200:
|
|
758
|
+
* description: Tool updated successfully
|
|
759
|
+
*/
|
|
760
|
+
app.put('/api/database-tools/tools/:toolId', (0, auth_1.authenticateUser)(supabase), (req, res) => databaseToolConfigController.updateTool(req, res));
|
|
761
|
+
/**
|
|
762
|
+
* @swagger
|
|
763
|
+
* /api/database-tools/tools/{toolId}:
|
|
764
|
+
* delete:
|
|
765
|
+
* summary: Delete a tool
|
|
766
|
+
* description: Delete database tool
|
|
767
|
+
* tags: [Database Tools]
|
|
768
|
+
* security:
|
|
769
|
+
* - bearerAuth: []
|
|
770
|
+
* parameters:
|
|
771
|
+
* - in: path
|
|
772
|
+
* name: toolId
|
|
773
|
+
* required: true
|
|
774
|
+
* schema:
|
|
775
|
+
* type: string
|
|
776
|
+
* responses:
|
|
777
|
+
* 200:
|
|
778
|
+
* description: Tool deleted successfully
|
|
779
|
+
*/
|
|
780
|
+
app.delete('/api/database-tools/tools/:toolId', (0, auth_1.authenticateUser)(supabase), (req, res) => databaseToolConfigController.deleteTool(req, res));
|
|
382
781
|
// Chat API Routes
|
|
383
782
|
/**
|
|
384
783
|
* @swagger
|
package/dist/src/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { AIServiceConfig, ChatContext, AIResponse } from '../types';
|
|
2
2
|
import { KnowledgeBaseService } from './KnowledgeBaseService';
|
|
3
|
+
import { DatabaseToolService } from './DatabaseToolService';
|
|
3
4
|
export declare class AIService {
|
|
4
5
|
private openai;
|
|
5
6
|
private systemPrompt;
|
|
@@ -7,8 +8,10 @@ export declare class AIService {
|
|
|
7
8
|
private navigationLinks;
|
|
8
9
|
private knowledgeBase;
|
|
9
10
|
private knowledgeBaseService?;
|
|
11
|
+
private databaseToolService?;
|
|
10
12
|
constructor(config: AIServiceConfig);
|
|
11
13
|
setKnowledgeBaseService(service: KnowledgeBaseService): void;
|
|
14
|
+
setDatabaseToolService(service: DatabaseToolService): void;
|
|
12
15
|
private buildSystemPrompt;
|
|
13
16
|
private buildKnowledgeBaseSection;
|
|
14
17
|
private buildGuardrailsPrompt;
|
|
@@ -16,6 +19,9 @@ export declare class AIService {
|
|
|
16
19
|
/**
|
|
17
20
|
* Generate streaming response from OpenAI
|
|
18
21
|
* Returns an async generator that yields content chunks and final response
|
|
22
|
+
*
|
|
23
|
+
* Note: Tool calling is not supported in streaming mode.
|
|
24
|
+
* If tools are needed, the system will fall back to non-streaming mode.
|
|
19
25
|
*/
|
|
20
26
|
generateResponseStream(message: string, context?: ChatContext | any): AsyncGenerator<{
|
|
21
27
|
chunk: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AIService.d.ts","sourceRoot":"","sources":["../../../src/services/AIService.ts"],"names":[],"mappings":"AACA,OAAO,EACL,eAAe,EACf,WAAW,EACX,UAAU,EAGX,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"AIService.d.ts","sourceRoot":"","sources":["../../../src/services/AIService.ts"],"names":[],"mappings":"AACA,OAAO,EACL,eAAe,EACf,WAAW,EACX,UAAU,EAGX,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAG5D,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,eAAe,CAAmB;IAC1C,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,oBAAoB,CAAC,CAAuB;IACpD,OAAO,CAAC,mBAAmB,CAAC,CAAsB;gBAEtC,MAAM,EAAE,eAAe;IAenC,uBAAuB,CAAC,OAAO,EAAE,oBAAoB,GAAG,IAAI;IAK5D,sBAAsB,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI;IAO1D,OAAO,CAAC,iBAAiB;IAuDzB,OAAO,CAAC,yBAAyB;IAWjC,OAAO,CAAC,qBAAqB;IASvB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,GAAG,GAAG,OAAO,CAAC,UAAU,CAAC;IAqFzF;;;;;;OAMG;IACI,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,GAAG,GAAG,cAAc,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,OAAO,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,IAAI,EAAE,OAAO,CAAC;IAwHlK,OAAO,CAAC,iBAAiB;CAsB1B"}
|
|
@@ -23,13 +23,25 @@ class AIService {
|
|
|
23
23
|
this.knowledgeBaseService = service;
|
|
24
24
|
this.systemPrompt = this.buildSystemPrompt();
|
|
25
25
|
}
|
|
26
|
+
setDatabaseToolService(service) {
|
|
27
|
+
this.databaseToolService = service;
|
|
28
|
+
logger_1.default.info('🔌 Database tool service attached to AI Service');
|
|
29
|
+
}
|
|
26
30
|
buildSystemPrompt() {
|
|
27
31
|
const orgName = this.config.organizationName || 'Your Organization';
|
|
28
32
|
const assistantName = this.config.assistantName || `${orgName} AI Assistant`;
|
|
33
|
+
const developerMode = process.env.DEVELOPER_MODE === 'true';
|
|
29
34
|
const introduction = `You are ${assistantName}, the primary AI guide for the ${orgName} platform and its knowledge base.
|
|
30
35
|
|
|
31
36
|
${this.config.platformDescription || `${orgName} helps teams capture product knowledge, documentation, and technical context so they can move faster with confidence.`}`;
|
|
32
|
-
const capabilities =
|
|
37
|
+
const capabilities = developerMode
|
|
38
|
+
? `## Core Capabilities (Developer Mode):
|
|
39
|
+
1. Analyze and explain code structure, functions, components, and implementation details.
|
|
40
|
+
2. Reference specific files, functions, classes, and code patterns from the knowledge base.
|
|
41
|
+
3. Provide technical guidance grounded STRICTLY in the actual codebase implementation.
|
|
42
|
+
4. Highlight code dependencies, function calls, and architectural patterns.
|
|
43
|
+
5. NEVER provide generic advice—always cite specific code elements from the sources.`
|
|
44
|
+
: `## Core Capabilities:
|
|
33
45
|
1. Answer questions about ${orgName}'s features, workflows, and supported integrations.
|
|
34
46
|
2. Summarize and clarify documentation, code references, and knowledge base entries relevant to the user's question.
|
|
35
47
|
3. Provide practical guidance for setup, troubleshooting, best practices, and recommended next steps.
|
|
@@ -37,7 +49,19 @@ ${this.config.platformDescription || `${orgName} helps teams capture product kno
|
|
|
37
49
|
5. Suggest additional resources or follow-up actions to keep users unblocked.`;
|
|
38
50
|
const knowledgeBaseSection = this.buildKnowledgeBaseSection();
|
|
39
51
|
const guardrails = this.buildGuardrailsPrompt();
|
|
40
|
-
const guidelines =
|
|
52
|
+
const guidelines = developerMode
|
|
53
|
+
? `## Conversational Guidelines (Developer Mode - STRICT):
|
|
54
|
+
1. **MANDATORY**: Reference specific code files, functions, components, and variables from knowledge base.
|
|
55
|
+
2. **CODE GROUNDING**: Every statement must cite actual code implementation details.
|
|
56
|
+
3. **NO GENERIC ANSWERS**: Never give general programming advice. Only explain what EXISTS in the codebase.
|
|
57
|
+
4. **FORMAT**: Start with "Based on [FileName.ext], the [function/component] implements..."
|
|
58
|
+
5. **CRITICAL**: If knowledge base contains code, explain HOW it works, not generic "how to" steps.
|
|
59
|
+
6. If no relevant code found, respond: "I couldn't find implementation details for this in the codebase. Please verify the code exists or contact the development team."
|
|
60
|
+
7. **Example Good Response**: "Based on RewardOrderDetailDialog.js, the handleRedemption() function processes rewards by calling rewardService.redeem() with the reward ID..."
|
|
61
|
+
8. **Example Bad Response**: "To redeem a reward, follow these steps: 1. Navigate to rewards section..."
|
|
62
|
+
|
|
63
|
+
**Remember**: You are analyzing an existing codebase for developers/PMs. Always ground responses in actual code.`
|
|
64
|
+
: `## Conversational Guidelines:
|
|
41
65
|
1. Be professional, concise, and oriented toward practical guidance.
|
|
42
66
|
2. **CRITICAL**: Answer ONLY using the "Relevant information from knowledge base" section provided above. Do NOT use your general training knowledge.
|
|
43
67
|
3. **Context Usage**: Use conversation history ONLY for context (pronouns, continuity). Use knowledge base chunks for answers.
|
|
@@ -145,9 +169,13 @@ The knowledge base contains curated content ingested through the src-to-kb pipel
|
|
|
145
169
|
/**
|
|
146
170
|
* Generate streaming response from OpenAI
|
|
147
171
|
* Returns an async generator that yields content chunks and final response
|
|
172
|
+
*
|
|
173
|
+
* Note: Tool calling is not supported in streaming mode.
|
|
174
|
+
* If tools are needed, the system will fall back to non-streaming mode.
|
|
148
175
|
*/
|
|
149
176
|
async *generateResponseStream(message, context) {
|
|
150
177
|
try {
|
|
178
|
+
// Note: Database tools are handled separately in ChatController before streaming
|
|
151
179
|
let knowledgeResults = '';
|
|
152
180
|
let hasKnowledgeContext = false;
|
|
153
181
|
// Check if knowledge results are already provided in context
|