@lobehub/chat 1.1.4 → 1.1.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.
Files changed (36) hide show
  1. package/CHANGELOG.md +58 -0
  2. package/README.md +1 -1
  3. package/README.zh-CN.md +1 -1
  4. package/docs/self-hosting/advanced/model-list.mdx +1 -1
  5. package/package.json +2 -2
  6. package/src/app/(main)/(mobile)/me/(home)/__tests__/UserBanner.test.tsx +1 -1
  7. package/src/app/(main)/(mobile)/me/(home)/features/UserBanner.tsx +1 -1
  8. package/src/app/(main)/settings/llm/components/ProviderConfig/index.tsx +1 -1
  9. package/src/app/api/webhooks/clerk/route.ts +6 -86
  10. package/src/app/trpc/tools/[trpc]/route.ts +28 -0
  11. package/src/config/__tests__/analytics.test.ts +0 -23
  12. package/src/config/analytics.ts +9 -95
  13. package/src/config/auth.ts +3 -23
  14. package/src/config/llm.ts +3 -42
  15. package/src/database/server/migrations/0003_naive_echo.sql +46 -0
  16. package/src/database/server/migrations/meta/0003_snapshot.json +1823 -0
  17. package/src/database/server/migrations/meta/_journal.json +7 -0
  18. package/src/database/server/models/__tests__/user.test.ts +3 -3
  19. package/src/database/server/models/user.ts +4 -4
  20. package/src/database/server/schemas/lobechat.ts +56 -5
  21. package/src/features/User/{UserLoginOrSignup.tsx → UserLoginOrSignup/Community.tsx} +1 -1
  22. package/src/features/User/UserLoginOrSignup/index.tsx +1 -0
  23. package/src/features/User/UserPanel/LangButton.tsx +3 -3
  24. package/src/features/User/UserPanel/ThemeButton.tsx +3 -3
  25. package/src/server/routers/edge/config/index.test.ts +0 -14
  26. package/src/server/routers/lambda/importer.ts +1 -3
  27. package/src/server/routers/lambda/user.ts +21 -14
  28. package/src/server/routers/tools/index.ts +7 -0
  29. package/src/server/services/user/index.ts +96 -0
  30. package/src/services/__tests__/chat.test.ts +9 -2
  31. package/src/services/chat.ts +4 -0
  32. package/src/types/user/settings/keyVaults.ts +1 -0
  33. package/vitest.config.ts +7 -1
  34. /package/src/{database/server → server}/modules/DataImporter/__tests__/fixtures/messages.json +0 -0
  35. /package/src/{database/server → server}/modules/DataImporter/__tests__/index.test.ts +0 -0
  36. /package/src/{database/server → server}/modules/DataImporter/index.ts +0 -0
@@ -0,0 +1,1823 @@
1
+ {
2
+ "_meta": {
3
+ "columns": {},
4
+ "schemas": {},
5
+ "tables": {}
6
+ },
7
+ "dialect": "postgresql",
8
+ "enums": {},
9
+ "id": "e8666496-0cbd-49c0-a4b3-ba7c1f6ef262",
10
+ "prevId": "33271ca1-9c63-4479-b6d5-757a050cd5d1",
11
+ "schemas": {},
12
+ "tables": {
13
+ "public.agents": {
14
+ "name": "agents",
15
+ "schema": "",
16
+ "columns": {
17
+ "id": {
18
+ "name": "id",
19
+ "type": "text",
20
+ "primaryKey": true,
21
+ "notNull": true
22
+ },
23
+ "slug": {
24
+ "name": "slug",
25
+ "type": "varchar(100)",
26
+ "primaryKey": false,
27
+ "notNull": false
28
+ },
29
+ "title": {
30
+ "name": "title",
31
+ "type": "text",
32
+ "primaryKey": false,
33
+ "notNull": false
34
+ },
35
+ "description": {
36
+ "name": "description",
37
+ "type": "text",
38
+ "primaryKey": false,
39
+ "notNull": false
40
+ },
41
+ "tags": {
42
+ "name": "tags",
43
+ "type": "jsonb",
44
+ "primaryKey": false,
45
+ "notNull": false,
46
+ "default": "'[]'::jsonb"
47
+ },
48
+ "avatar": {
49
+ "name": "avatar",
50
+ "type": "text",
51
+ "primaryKey": false,
52
+ "notNull": false
53
+ },
54
+ "background_color": {
55
+ "name": "background_color",
56
+ "type": "text",
57
+ "primaryKey": false,
58
+ "notNull": false
59
+ },
60
+ "plugins": {
61
+ "name": "plugins",
62
+ "type": "jsonb",
63
+ "primaryKey": false,
64
+ "notNull": false,
65
+ "default": "'[]'::jsonb"
66
+ },
67
+ "user_id": {
68
+ "name": "user_id",
69
+ "type": "text",
70
+ "primaryKey": false,
71
+ "notNull": true
72
+ },
73
+ "chat_config": {
74
+ "name": "chat_config",
75
+ "type": "jsonb",
76
+ "primaryKey": false,
77
+ "notNull": false
78
+ },
79
+ "few_shots": {
80
+ "name": "few_shots",
81
+ "type": "jsonb",
82
+ "primaryKey": false,
83
+ "notNull": false
84
+ },
85
+ "model": {
86
+ "name": "model",
87
+ "type": "text",
88
+ "primaryKey": false,
89
+ "notNull": false
90
+ },
91
+ "params": {
92
+ "name": "params",
93
+ "type": "jsonb",
94
+ "primaryKey": false,
95
+ "notNull": false,
96
+ "default": "'{}'::jsonb"
97
+ },
98
+ "provider": {
99
+ "name": "provider",
100
+ "type": "text",
101
+ "primaryKey": false,
102
+ "notNull": false
103
+ },
104
+ "system_role": {
105
+ "name": "system_role",
106
+ "type": "text",
107
+ "primaryKey": false,
108
+ "notNull": false
109
+ },
110
+ "tts": {
111
+ "name": "tts",
112
+ "type": "jsonb",
113
+ "primaryKey": false,
114
+ "notNull": false
115
+ },
116
+ "created_at": {
117
+ "name": "created_at",
118
+ "type": "timestamp with time zone",
119
+ "primaryKey": false,
120
+ "notNull": true,
121
+ "default": "now()"
122
+ },
123
+ "updated_at": {
124
+ "name": "updated_at",
125
+ "type": "timestamp with time zone",
126
+ "primaryKey": false,
127
+ "notNull": true,
128
+ "default": "now()"
129
+ }
130
+ },
131
+ "indexes": {},
132
+ "foreignKeys": {
133
+ "agents_user_id_users_id_fk": {
134
+ "name": "agents_user_id_users_id_fk",
135
+ "tableFrom": "agents",
136
+ "tableTo": "users",
137
+ "columnsFrom": ["user_id"],
138
+ "columnsTo": ["id"],
139
+ "onDelete": "cascade",
140
+ "onUpdate": "no action"
141
+ }
142
+ },
143
+ "compositePrimaryKeys": {},
144
+ "uniqueConstraints": {
145
+ "agents_slug_unique": {
146
+ "name": "agents_slug_unique",
147
+ "nullsNotDistinct": false,
148
+ "columns": ["slug"]
149
+ }
150
+ }
151
+ },
152
+ "public.agents_tags": {
153
+ "name": "agents_tags",
154
+ "schema": "",
155
+ "columns": {
156
+ "agent_id": {
157
+ "name": "agent_id",
158
+ "type": "text",
159
+ "primaryKey": false,
160
+ "notNull": true
161
+ },
162
+ "tag_id": {
163
+ "name": "tag_id",
164
+ "type": "integer",
165
+ "primaryKey": false,
166
+ "notNull": true
167
+ }
168
+ },
169
+ "indexes": {},
170
+ "foreignKeys": {
171
+ "agents_tags_agent_id_agents_id_fk": {
172
+ "name": "agents_tags_agent_id_agents_id_fk",
173
+ "tableFrom": "agents_tags",
174
+ "tableTo": "agents",
175
+ "columnsFrom": ["agent_id"],
176
+ "columnsTo": ["id"],
177
+ "onDelete": "cascade",
178
+ "onUpdate": "no action"
179
+ },
180
+ "agents_tags_tag_id_tags_id_fk": {
181
+ "name": "agents_tags_tag_id_tags_id_fk",
182
+ "tableFrom": "agents_tags",
183
+ "tableTo": "tags",
184
+ "columnsFrom": ["tag_id"],
185
+ "columnsTo": ["id"],
186
+ "onDelete": "cascade",
187
+ "onUpdate": "no action"
188
+ }
189
+ },
190
+ "compositePrimaryKeys": {
191
+ "agents_tags_agent_id_tag_id_pk": {
192
+ "name": "agents_tags_agent_id_tag_id_pk",
193
+ "columns": ["agent_id", "tag_id"]
194
+ }
195
+ },
196
+ "uniqueConstraints": {}
197
+ },
198
+ "public.agents_to_sessions": {
199
+ "name": "agents_to_sessions",
200
+ "schema": "",
201
+ "columns": {
202
+ "agent_id": {
203
+ "name": "agent_id",
204
+ "type": "text",
205
+ "primaryKey": false,
206
+ "notNull": true
207
+ },
208
+ "session_id": {
209
+ "name": "session_id",
210
+ "type": "text",
211
+ "primaryKey": false,
212
+ "notNull": true
213
+ }
214
+ },
215
+ "indexes": {},
216
+ "foreignKeys": {
217
+ "agents_to_sessions_agent_id_agents_id_fk": {
218
+ "name": "agents_to_sessions_agent_id_agents_id_fk",
219
+ "tableFrom": "agents_to_sessions",
220
+ "tableTo": "agents",
221
+ "columnsFrom": ["agent_id"],
222
+ "columnsTo": ["id"],
223
+ "onDelete": "cascade",
224
+ "onUpdate": "no action"
225
+ },
226
+ "agents_to_sessions_session_id_sessions_id_fk": {
227
+ "name": "agents_to_sessions_session_id_sessions_id_fk",
228
+ "tableFrom": "agents_to_sessions",
229
+ "tableTo": "sessions",
230
+ "columnsFrom": ["session_id"],
231
+ "columnsTo": ["id"],
232
+ "onDelete": "cascade",
233
+ "onUpdate": "no action"
234
+ }
235
+ },
236
+ "compositePrimaryKeys": {
237
+ "agents_to_sessions_agent_id_session_id_pk": {
238
+ "name": "agents_to_sessions_agent_id_session_id_pk",
239
+ "columns": ["agent_id", "session_id"]
240
+ }
241
+ },
242
+ "uniqueConstraints": {}
243
+ },
244
+ "public.files": {
245
+ "name": "files",
246
+ "schema": "",
247
+ "columns": {
248
+ "id": {
249
+ "name": "id",
250
+ "type": "text",
251
+ "primaryKey": true,
252
+ "notNull": true
253
+ },
254
+ "user_id": {
255
+ "name": "user_id",
256
+ "type": "text",
257
+ "primaryKey": false,
258
+ "notNull": true
259
+ },
260
+ "file_type": {
261
+ "name": "file_type",
262
+ "type": "varchar(255)",
263
+ "primaryKey": false,
264
+ "notNull": true
265
+ },
266
+ "name": {
267
+ "name": "name",
268
+ "type": "text",
269
+ "primaryKey": false,
270
+ "notNull": true
271
+ },
272
+ "size": {
273
+ "name": "size",
274
+ "type": "integer",
275
+ "primaryKey": false,
276
+ "notNull": true
277
+ },
278
+ "url": {
279
+ "name": "url",
280
+ "type": "text",
281
+ "primaryKey": false,
282
+ "notNull": true
283
+ },
284
+ "metadata": {
285
+ "name": "metadata",
286
+ "type": "jsonb",
287
+ "primaryKey": false,
288
+ "notNull": false
289
+ },
290
+ "created_at": {
291
+ "name": "created_at",
292
+ "type": "timestamp with time zone",
293
+ "primaryKey": false,
294
+ "notNull": true,
295
+ "default": "now()"
296
+ },
297
+ "updated_at": {
298
+ "name": "updated_at",
299
+ "type": "timestamp with time zone",
300
+ "primaryKey": false,
301
+ "notNull": true,
302
+ "default": "now()"
303
+ }
304
+ },
305
+ "indexes": {},
306
+ "foreignKeys": {
307
+ "files_user_id_users_id_fk": {
308
+ "name": "files_user_id_users_id_fk",
309
+ "tableFrom": "files",
310
+ "tableTo": "users",
311
+ "columnsFrom": ["user_id"],
312
+ "columnsTo": ["id"],
313
+ "onDelete": "cascade",
314
+ "onUpdate": "no action"
315
+ }
316
+ },
317
+ "compositePrimaryKeys": {},
318
+ "uniqueConstraints": {}
319
+ },
320
+ "public.files_to_agents": {
321
+ "name": "files_to_agents",
322
+ "schema": "",
323
+ "columns": {
324
+ "file_id": {
325
+ "name": "file_id",
326
+ "type": "text",
327
+ "primaryKey": false,
328
+ "notNull": true
329
+ },
330
+ "agent_id": {
331
+ "name": "agent_id",
332
+ "type": "text",
333
+ "primaryKey": false,
334
+ "notNull": true
335
+ }
336
+ },
337
+ "indexes": {},
338
+ "foreignKeys": {
339
+ "files_to_agents_file_id_files_id_fk": {
340
+ "name": "files_to_agents_file_id_files_id_fk",
341
+ "tableFrom": "files_to_agents",
342
+ "tableTo": "files",
343
+ "columnsFrom": ["file_id"],
344
+ "columnsTo": ["id"],
345
+ "onDelete": "cascade",
346
+ "onUpdate": "no action"
347
+ },
348
+ "files_to_agents_agent_id_agents_id_fk": {
349
+ "name": "files_to_agents_agent_id_agents_id_fk",
350
+ "tableFrom": "files_to_agents",
351
+ "tableTo": "agents",
352
+ "columnsFrom": ["agent_id"],
353
+ "columnsTo": ["id"],
354
+ "onDelete": "cascade",
355
+ "onUpdate": "no action"
356
+ }
357
+ },
358
+ "compositePrimaryKeys": {
359
+ "files_to_agents_file_id_agent_id_pk": {
360
+ "name": "files_to_agents_file_id_agent_id_pk",
361
+ "columns": ["file_id", "agent_id"]
362
+ }
363
+ },
364
+ "uniqueConstraints": {}
365
+ },
366
+ "public.files_to_messages": {
367
+ "name": "files_to_messages",
368
+ "schema": "",
369
+ "columns": {
370
+ "file_id": {
371
+ "name": "file_id",
372
+ "type": "text",
373
+ "primaryKey": false,
374
+ "notNull": true
375
+ },
376
+ "message_id": {
377
+ "name": "message_id",
378
+ "type": "text",
379
+ "primaryKey": false,
380
+ "notNull": true
381
+ }
382
+ },
383
+ "indexes": {},
384
+ "foreignKeys": {
385
+ "files_to_messages_file_id_files_id_fk": {
386
+ "name": "files_to_messages_file_id_files_id_fk",
387
+ "tableFrom": "files_to_messages",
388
+ "tableTo": "files",
389
+ "columnsFrom": ["file_id"],
390
+ "columnsTo": ["id"],
391
+ "onDelete": "cascade",
392
+ "onUpdate": "no action"
393
+ },
394
+ "files_to_messages_message_id_messages_id_fk": {
395
+ "name": "files_to_messages_message_id_messages_id_fk",
396
+ "tableFrom": "files_to_messages",
397
+ "tableTo": "messages",
398
+ "columnsFrom": ["message_id"],
399
+ "columnsTo": ["id"],
400
+ "onDelete": "cascade",
401
+ "onUpdate": "no action"
402
+ }
403
+ },
404
+ "compositePrimaryKeys": {
405
+ "files_to_messages_file_id_message_id_pk": {
406
+ "name": "files_to_messages_file_id_message_id_pk",
407
+ "columns": ["file_id", "message_id"]
408
+ }
409
+ },
410
+ "uniqueConstraints": {}
411
+ },
412
+ "public.files_to_sessions": {
413
+ "name": "files_to_sessions",
414
+ "schema": "",
415
+ "columns": {
416
+ "file_id": {
417
+ "name": "file_id",
418
+ "type": "text",
419
+ "primaryKey": false,
420
+ "notNull": true
421
+ },
422
+ "session_id": {
423
+ "name": "session_id",
424
+ "type": "text",
425
+ "primaryKey": false,
426
+ "notNull": true
427
+ }
428
+ },
429
+ "indexes": {},
430
+ "foreignKeys": {
431
+ "files_to_sessions_file_id_files_id_fk": {
432
+ "name": "files_to_sessions_file_id_files_id_fk",
433
+ "tableFrom": "files_to_sessions",
434
+ "tableTo": "files",
435
+ "columnsFrom": ["file_id"],
436
+ "columnsTo": ["id"],
437
+ "onDelete": "cascade",
438
+ "onUpdate": "no action"
439
+ },
440
+ "files_to_sessions_session_id_sessions_id_fk": {
441
+ "name": "files_to_sessions_session_id_sessions_id_fk",
442
+ "tableFrom": "files_to_sessions",
443
+ "tableTo": "sessions",
444
+ "columnsFrom": ["session_id"],
445
+ "columnsTo": ["id"],
446
+ "onDelete": "cascade",
447
+ "onUpdate": "no action"
448
+ }
449
+ },
450
+ "compositePrimaryKeys": {
451
+ "files_to_sessions_file_id_session_id_pk": {
452
+ "name": "files_to_sessions_file_id_session_id_pk",
453
+ "columns": ["file_id", "session_id"]
454
+ }
455
+ },
456
+ "uniqueConstraints": {}
457
+ },
458
+ "public.user_installed_plugins": {
459
+ "name": "user_installed_plugins",
460
+ "schema": "",
461
+ "columns": {
462
+ "user_id": {
463
+ "name": "user_id",
464
+ "type": "text",
465
+ "primaryKey": false,
466
+ "notNull": true
467
+ },
468
+ "identifier": {
469
+ "name": "identifier",
470
+ "type": "text",
471
+ "primaryKey": false,
472
+ "notNull": true
473
+ },
474
+ "type": {
475
+ "name": "type",
476
+ "type": "text",
477
+ "primaryKey": false,
478
+ "notNull": true
479
+ },
480
+ "manifest": {
481
+ "name": "manifest",
482
+ "type": "jsonb",
483
+ "primaryKey": false,
484
+ "notNull": false
485
+ },
486
+ "settings": {
487
+ "name": "settings",
488
+ "type": "jsonb",
489
+ "primaryKey": false,
490
+ "notNull": false
491
+ },
492
+ "custom_params": {
493
+ "name": "custom_params",
494
+ "type": "jsonb",
495
+ "primaryKey": false,
496
+ "notNull": false
497
+ },
498
+ "created_at": {
499
+ "name": "created_at",
500
+ "type": "timestamp with time zone",
501
+ "primaryKey": false,
502
+ "notNull": true,
503
+ "default": "now()"
504
+ },
505
+ "updated_at": {
506
+ "name": "updated_at",
507
+ "type": "timestamp with time zone",
508
+ "primaryKey": false,
509
+ "notNull": true,
510
+ "default": "now()"
511
+ }
512
+ },
513
+ "indexes": {},
514
+ "foreignKeys": {
515
+ "user_installed_plugins_user_id_users_id_fk": {
516
+ "name": "user_installed_plugins_user_id_users_id_fk",
517
+ "tableFrom": "user_installed_plugins",
518
+ "tableTo": "users",
519
+ "columnsFrom": ["user_id"],
520
+ "columnsTo": ["id"],
521
+ "onDelete": "cascade",
522
+ "onUpdate": "no action"
523
+ }
524
+ },
525
+ "compositePrimaryKeys": {
526
+ "user_installed_plugins_user_id_identifier_pk": {
527
+ "name": "user_installed_plugins_user_id_identifier_pk",
528
+ "columns": ["user_id", "identifier"]
529
+ }
530
+ },
531
+ "uniqueConstraints": {}
532
+ },
533
+ "public.market": {
534
+ "name": "market",
535
+ "schema": "",
536
+ "columns": {
537
+ "id": {
538
+ "name": "id",
539
+ "type": "serial",
540
+ "primaryKey": true,
541
+ "notNull": true
542
+ },
543
+ "agent_id": {
544
+ "name": "agent_id",
545
+ "type": "text",
546
+ "primaryKey": false,
547
+ "notNull": false
548
+ },
549
+ "plugin_id": {
550
+ "name": "plugin_id",
551
+ "type": "integer",
552
+ "primaryKey": false,
553
+ "notNull": false
554
+ },
555
+ "type": {
556
+ "name": "type",
557
+ "type": "text",
558
+ "primaryKey": false,
559
+ "notNull": true
560
+ },
561
+ "view": {
562
+ "name": "view",
563
+ "type": "integer",
564
+ "primaryKey": false,
565
+ "notNull": false,
566
+ "default": 0
567
+ },
568
+ "like": {
569
+ "name": "like",
570
+ "type": "integer",
571
+ "primaryKey": false,
572
+ "notNull": false,
573
+ "default": 0
574
+ },
575
+ "used": {
576
+ "name": "used",
577
+ "type": "integer",
578
+ "primaryKey": false,
579
+ "notNull": false,
580
+ "default": 0
581
+ },
582
+ "user_id": {
583
+ "name": "user_id",
584
+ "type": "text",
585
+ "primaryKey": false,
586
+ "notNull": true
587
+ },
588
+ "created_at": {
589
+ "name": "created_at",
590
+ "type": "timestamp with time zone",
591
+ "primaryKey": false,
592
+ "notNull": true,
593
+ "default": "now()"
594
+ },
595
+ "updated_at": {
596
+ "name": "updated_at",
597
+ "type": "timestamp with time zone",
598
+ "primaryKey": false,
599
+ "notNull": true,
600
+ "default": "now()"
601
+ }
602
+ },
603
+ "indexes": {},
604
+ "foreignKeys": {
605
+ "market_agent_id_agents_id_fk": {
606
+ "name": "market_agent_id_agents_id_fk",
607
+ "tableFrom": "market",
608
+ "tableTo": "agents",
609
+ "columnsFrom": ["agent_id"],
610
+ "columnsTo": ["id"],
611
+ "onDelete": "cascade",
612
+ "onUpdate": "no action"
613
+ },
614
+ "market_plugin_id_plugins_id_fk": {
615
+ "name": "market_plugin_id_plugins_id_fk",
616
+ "tableFrom": "market",
617
+ "tableTo": "plugins",
618
+ "columnsFrom": ["plugin_id"],
619
+ "columnsTo": ["id"],
620
+ "onDelete": "cascade",
621
+ "onUpdate": "no action"
622
+ },
623
+ "market_user_id_users_id_fk": {
624
+ "name": "market_user_id_users_id_fk",
625
+ "tableFrom": "market",
626
+ "tableTo": "users",
627
+ "columnsFrom": ["user_id"],
628
+ "columnsTo": ["id"],
629
+ "onDelete": "cascade",
630
+ "onUpdate": "no action"
631
+ }
632
+ },
633
+ "compositePrimaryKeys": {},
634
+ "uniqueConstraints": {}
635
+ },
636
+ "public.message_plugins": {
637
+ "name": "message_plugins",
638
+ "schema": "",
639
+ "columns": {
640
+ "id": {
641
+ "name": "id",
642
+ "type": "text",
643
+ "primaryKey": true,
644
+ "notNull": true
645
+ },
646
+ "tool_call_id": {
647
+ "name": "tool_call_id",
648
+ "type": "text",
649
+ "primaryKey": false,
650
+ "notNull": false
651
+ },
652
+ "type": {
653
+ "name": "type",
654
+ "type": "text",
655
+ "primaryKey": false,
656
+ "notNull": false,
657
+ "default": "'default'"
658
+ },
659
+ "api_name": {
660
+ "name": "api_name",
661
+ "type": "text",
662
+ "primaryKey": false,
663
+ "notNull": false
664
+ },
665
+ "arguments": {
666
+ "name": "arguments",
667
+ "type": "text",
668
+ "primaryKey": false,
669
+ "notNull": false
670
+ },
671
+ "identifier": {
672
+ "name": "identifier",
673
+ "type": "text",
674
+ "primaryKey": false,
675
+ "notNull": false
676
+ },
677
+ "state": {
678
+ "name": "state",
679
+ "type": "jsonb",
680
+ "primaryKey": false,
681
+ "notNull": false
682
+ },
683
+ "error": {
684
+ "name": "error",
685
+ "type": "jsonb",
686
+ "primaryKey": false,
687
+ "notNull": false
688
+ }
689
+ },
690
+ "indexes": {},
691
+ "foreignKeys": {
692
+ "message_plugins_id_messages_id_fk": {
693
+ "name": "message_plugins_id_messages_id_fk",
694
+ "tableFrom": "message_plugins",
695
+ "tableTo": "messages",
696
+ "columnsFrom": ["id"],
697
+ "columnsTo": ["id"],
698
+ "onDelete": "cascade",
699
+ "onUpdate": "no action"
700
+ }
701
+ },
702
+ "compositePrimaryKeys": {},
703
+ "uniqueConstraints": {}
704
+ },
705
+ "public.message_tts": {
706
+ "name": "message_tts",
707
+ "schema": "",
708
+ "columns": {
709
+ "id": {
710
+ "name": "id",
711
+ "type": "text",
712
+ "primaryKey": true,
713
+ "notNull": true
714
+ },
715
+ "content_md5": {
716
+ "name": "content_md5",
717
+ "type": "text",
718
+ "primaryKey": false,
719
+ "notNull": false
720
+ },
721
+ "file_id": {
722
+ "name": "file_id",
723
+ "type": "text",
724
+ "primaryKey": false,
725
+ "notNull": false
726
+ },
727
+ "voice": {
728
+ "name": "voice",
729
+ "type": "text",
730
+ "primaryKey": false,
731
+ "notNull": false
732
+ }
733
+ },
734
+ "indexes": {},
735
+ "foreignKeys": {
736
+ "message_tts_id_messages_id_fk": {
737
+ "name": "message_tts_id_messages_id_fk",
738
+ "tableFrom": "message_tts",
739
+ "tableTo": "messages",
740
+ "columnsFrom": ["id"],
741
+ "columnsTo": ["id"],
742
+ "onDelete": "cascade",
743
+ "onUpdate": "no action"
744
+ },
745
+ "message_tts_file_id_files_id_fk": {
746
+ "name": "message_tts_file_id_files_id_fk",
747
+ "tableFrom": "message_tts",
748
+ "tableTo": "files",
749
+ "columnsFrom": ["file_id"],
750
+ "columnsTo": ["id"],
751
+ "onDelete": "cascade",
752
+ "onUpdate": "no action"
753
+ }
754
+ },
755
+ "compositePrimaryKeys": {},
756
+ "uniqueConstraints": {}
757
+ },
758
+ "public.message_translates": {
759
+ "name": "message_translates",
760
+ "schema": "",
761
+ "columns": {
762
+ "id": {
763
+ "name": "id",
764
+ "type": "text",
765
+ "primaryKey": true,
766
+ "notNull": true
767
+ },
768
+ "content": {
769
+ "name": "content",
770
+ "type": "text",
771
+ "primaryKey": false,
772
+ "notNull": false
773
+ },
774
+ "from": {
775
+ "name": "from",
776
+ "type": "text",
777
+ "primaryKey": false,
778
+ "notNull": false
779
+ },
780
+ "to": {
781
+ "name": "to",
782
+ "type": "text",
783
+ "primaryKey": false,
784
+ "notNull": false
785
+ }
786
+ },
787
+ "indexes": {},
788
+ "foreignKeys": {
789
+ "message_translates_id_messages_id_fk": {
790
+ "name": "message_translates_id_messages_id_fk",
791
+ "tableFrom": "message_translates",
792
+ "tableTo": "messages",
793
+ "columnsFrom": ["id"],
794
+ "columnsTo": ["id"],
795
+ "onDelete": "cascade",
796
+ "onUpdate": "no action"
797
+ }
798
+ },
799
+ "compositePrimaryKeys": {},
800
+ "uniqueConstraints": {}
801
+ },
802
+ "public.messages": {
803
+ "name": "messages",
804
+ "schema": "",
805
+ "columns": {
806
+ "id": {
807
+ "name": "id",
808
+ "type": "text",
809
+ "primaryKey": true,
810
+ "notNull": true
811
+ },
812
+ "role": {
813
+ "name": "role",
814
+ "type": "text",
815
+ "primaryKey": false,
816
+ "notNull": true
817
+ },
818
+ "content": {
819
+ "name": "content",
820
+ "type": "text",
821
+ "primaryKey": false,
822
+ "notNull": false
823
+ },
824
+ "model": {
825
+ "name": "model",
826
+ "type": "text",
827
+ "primaryKey": false,
828
+ "notNull": false
829
+ },
830
+ "provider": {
831
+ "name": "provider",
832
+ "type": "text",
833
+ "primaryKey": false,
834
+ "notNull": false
835
+ },
836
+ "favorite": {
837
+ "name": "favorite",
838
+ "type": "boolean",
839
+ "primaryKey": false,
840
+ "notNull": false,
841
+ "default": false
842
+ },
843
+ "error": {
844
+ "name": "error",
845
+ "type": "jsonb",
846
+ "primaryKey": false,
847
+ "notNull": false
848
+ },
849
+ "tools": {
850
+ "name": "tools",
851
+ "type": "jsonb",
852
+ "primaryKey": false,
853
+ "notNull": false
854
+ },
855
+ "trace_id": {
856
+ "name": "trace_id",
857
+ "type": "text",
858
+ "primaryKey": false,
859
+ "notNull": false
860
+ },
861
+ "observation_id": {
862
+ "name": "observation_id",
863
+ "type": "text",
864
+ "primaryKey": false,
865
+ "notNull": false
866
+ },
867
+ "client_id": {
868
+ "name": "client_id",
869
+ "type": "text",
870
+ "primaryKey": false,
871
+ "notNull": false
872
+ },
873
+ "user_id": {
874
+ "name": "user_id",
875
+ "type": "text",
876
+ "primaryKey": false,
877
+ "notNull": true
878
+ },
879
+ "session_id": {
880
+ "name": "session_id",
881
+ "type": "text",
882
+ "primaryKey": false,
883
+ "notNull": false
884
+ },
885
+ "topic_id": {
886
+ "name": "topic_id",
887
+ "type": "text",
888
+ "primaryKey": false,
889
+ "notNull": false
890
+ },
891
+ "parent_id": {
892
+ "name": "parent_id",
893
+ "type": "text",
894
+ "primaryKey": false,
895
+ "notNull": false
896
+ },
897
+ "quota_id": {
898
+ "name": "quota_id",
899
+ "type": "text",
900
+ "primaryKey": false,
901
+ "notNull": false
902
+ },
903
+ "agent_id": {
904
+ "name": "agent_id",
905
+ "type": "text",
906
+ "primaryKey": false,
907
+ "notNull": false
908
+ },
909
+ "created_at": {
910
+ "name": "created_at",
911
+ "type": "timestamp with time zone",
912
+ "primaryKey": false,
913
+ "notNull": true,
914
+ "default": "now()"
915
+ },
916
+ "updated_at": {
917
+ "name": "updated_at",
918
+ "type": "timestamp with time zone",
919
+ "primaryKey": false,
920
+ "notNull": true,
921
+ "default": "now()"
922
+ }
923
+ },
924
+ "indexes": {
925
+ "messages_created_at_idx": {
926
+ "name": "messages_created_at_idx",
927
+ "columns": ["created_at"],
928
+ "isUnique": false
929
+ },
930
+ "message_client_id_user_unique": {
931
+ "name": "message_client_id_user_unique",
932
+ "columns": ["client_id", "user_id"],
933
+ "isUnique": true
934
+ }
935
+ },
936
+ "foreignKeys": {
937
+ "messages_user_id_users_id_fk": {
938
+ "name": "messages_user_id_users_id_fk",
939
+ "tableFrom": "messages",
940
+ "tableTo": "users",
941
+ "columnsFrom": ["user_id"],
942
+ "columnsTo": ["id"],
943
+ "onDelete": "cascade",
944
+ "onUpdate": "no action"
945
+ },
946
+ "messages_session_id_sessions_id_fk": {
947
+ "name": "messages_session_id_sessions_id_fk",
948
+ "tableFrom": "messages",
949
+ "tableTo": "sessions",
950
+ "columnsFrom": ["session_id"],
951
+ "columnsTo": ["id"],
952
+ "onDelete": "cascade",
953
+ "onUpdate": "no action"
954
+ },
955
+ "messages_topic_id_topics_id_fk": {
956
+ "name": "messages_topic_id_topics_id_fk",
957
+ "tableFrom": "messages",
958
+ "tableTo": "topics",
959
+ "columnsFrom": ["topic_id"],
960
+ "columnsTo": ["id"],
961
+ "onDelete": "cascade",
962
+ "onUpdate": "no action"
963
+ },
964
+ "messages_parent_id_messages_id_fk": {
965
+ "name": "messages_parent_id_messages_id_fk",
966
+ "tableFrom": "messages",
967
+ "tableTo": "messages",
968
+ "columnsFrom": ["parent_id"],
969
+ "columnsTo": ["id"],
970
+ "onDelete": "set null",
971
+ "onUpdate": "no action"
972
+ },
973
+ "messages_quota_id_messages_id_fk": {
974
+ "name": "messages_quota_id_messages_id_fk",
975
+ "tableFrom": "messages",
976
+ "tableTo": "messages",
977
+ "columnsFrom": ["quota_id"],
978
+ "columnsTo": ["id"],
979
+ "onDelete": "set null",
980
+ "onUpdate": "no action"
981
+ },
982
+ "messages_agent_id_agents_id_fk": {
983
+ "name": "messages_agent_id_agents_id_fk",
984
+ "tableFrom": "messages",
985
+ "tableTo": "agents",
986
+ "columnsFrom": ["agent_id"],
987
+ "columnsTo": ["id"],
988
+ "onDelete": "set null",
989
+ "onUpdate": "no action"
990
+ }
991
+ },
992
+ "compositePrimaryKeys": {},
993
+ "uniqueConstraints": {}
994
+ },
995
+ "public.plugins": {
996
+ "name": "plugins",
997
+ "schema": "",
998
+ "columns": {
999
+ "id": {
1000
+ "name": "id",
1001
+ "type": "serial",
1002
+ "primaryKey": true,
1003
+ "notNull": true
1004
+ },
1005
+ "identifier": {
1006
+ "name": "identifier",
1007
+ "type": "text",
1008
+ "primaryKey": false,
1009
+ "notNull": true
1010
+ },
1011
+ "title": {
1012
+ "name": "title",
1013
+ "type": "text",
1014
+ "primaryKey": false,
1015
+ "notNull": true
1016
+ },
1017
+ "description": {
1018
+ "name": "description",
1019
+ "type": "text",
1020
+ "primaryKey": false,
1021
+ "notNull": false
1022
+ },
1023
+ "avatar": {
1024
+ "name": "avatar",
1025
+ "type": "text",
1026
+ "primaryKey": false,
1027
+ "notNull": false
1028
+ },
1029
+ "author": {
1030
+ "name": "author",
1031
+ "type": "text",
1032
+ "primaryKey": false,
1033
+ "notNull": false
1034
+ },
1035
+ "manifest": {
1036
+ "name": "manifest",
1037
+ "type": "text",
1038
+ "primaryKey": false,
1039
+ "notNull": true
1040
+ },
1041
+ "locale": {
1042
+ "name": "locale",
1043
+ "type": "text",
1044
+ "primaryKey": false,
1045
+ "notNull": true
1046
+ },
1047
+ "created_at": {
1048
+ "name": "created_at",
1049
+ "type": "timestamp with time zone",
1050
+ "primaryKey": false,
1051
+ "notNull": true,
1052
+ "default": "now()"
1053
+ },
1054
+ "updated_at": {
1055
+ "name": "updated_at",
1056
+ "type": "timestamp with time zone",
1057
+ "primaryKey": false,
1058
+ "notNull": true,
1059
+ "default": "now()"
1060
+ }
1061
+ },
1062
+ "indexes": {},
1063
+ "foreignKeys": {},
1064
+ "compositePrimaryKeys": {},
1065
+ "uniqueConstraints": {
1066
+ "plugins_identifier_unique": {
1067
+ "name": "plugins_identifier_unique",
1068
+ "nullsNotDistinct": false,
1069
+ "columns": ["identifier"]
1070
+ }
1071
+ }
1072
+ },
1073
+ "public.plugins_tags": {
1074
+ "name": "plugins_tags",
1075
+ "schema": "",
1076
+ "columns": {
1077
+ "plugin_id": {
1078
+ "name": "plugin_id",
1079
+ "type": "integer",
1080
+ "primaryKey": false,
1081
+ "notNull": true
1082
+ },
1083
+ "tag_id": {
1084
+ "name": "tag_id",
1085
+ "type": "integer",
1086
+ "primaryKey": false,
1087
+ "notNull": true
1088
+ }
1089
+ },
1090
+ "indexes": {},
1091
+ "foreignKeys": {
1092
+ "plugins_tags_plugin_id_plugins_id_fk": {
1093
+ "name": "plugins_tags_plugin_id_plugins_id_fk",
1094
+ "tableFrom": "plugins_tags",
1095
+ "tableTo": "plugins",
1096
+ "columnsFrom": ["plugin_id"],
1097
+ "columnsTo": ["id"],
1098
+ "onDelete": "cascade",
1099
+ "onUpdate": "no action"
1100
+ },
1101
+ "plugins_tags_tag_id_tags_id_fk": {
1102
+ "name": "plugins_tags_tag_id_tags_id_fk",
1103
+ "tableFrom": "plugins_tags",
1104
+ "tableTo": "tags",
1105
+ "columnsFrom": ["tag_id"],
1106
+ "columnsTo": ["id"],
1107
+ "onDelete": "cascade",
1108
+ "onUpdate": "no action"
1109
+ }
1110
+ },
1111
+ "compositePrimaryKeys": {
1112
+ "plugins_tags_plugin_id_tag_id_pk": {
1113
+ "name": "plugins_tags_plugin_id_tag_id_pk",
1114
+ "columns": ["plugin_id", "tag_id"]
1115
+ }
1116
+ },
1117
+ "uniqueConstraints": {}
1118
+ },
1119
+ "public.session_groups": {
1120
+ "name": "session_groups",
1121
+ "schema": "",
1122
+ "columns": {
1123
+ "id": {
1124
+ "name": "id",
1125
+ "type": "text",
1126
+ "primaryKey": true,
1127
+ "notNull": true
1128
+ },
1129
+ "name": {
1130
+ "name": "name",
1131
+ "type": "text",
1132
+ "primaryKey": false,
1133
+ "notNull": true
1134
+ },
1135
+ "sort": {
1136
+ "name": "sort",
1137
+ "type": "integer",
1138
+ "primaryKey": false,
1139
+ "notNull": false
1140
+ },
1141
+ "user_id": {
1142
+ "name": "user_id",
1143
+ "type": "text",
1144
+ "primaryKey": false,
1145
+ "notNull": true
1146
+ },
1147
+ "client_id": {
1148
+ "name": "client_id",
1149
+ "type": "text",
1150
+ "primaryKey": false,
1151
+ "notNull": false
1152
+ },
1153
+ "created_at": {
1154
+ "name": "created_at",
1155
+ "type": "timestamp with time zone",
1156
+ "primaryKey": false,
1157
+ "notNull": true,
1158
+ "default": "now()"
1159
+ },
1160
+ "updated_at": {
1161
+ "name": "updated_at",
1162
+ "type": "timestamp with time zone",
1163
+ "primaryKey": false,
1164
+ "notNull": true,
1165
+ "default": "now()"
1166
+ }
1167
+ },
1168
+ "indexes": {},
1169
+ "foreignKeys": {
1170
+ "session_groups_user_id_users_id_fk": {
1171
+ "name": "session_groups_user_id_users_id_fk",
1172
+ "tableFrom": "session_groups",
1173
+ "tableTo": "users",
1174
+ "columnsFrom": ["user_id"],
1175
+ "columnsTo": ["id"],
1176
+ "onDelete": "cascade",
1177
+ "onUpdate": "no action"
1178
+ }
1179
+ },
1180
+ "compositePrimaryKeys": {},
1181
+ "uniqueConstraints": {
1182
+ "session_group_client_id_user_unique": {
1183
+ "name": "session_group_client_id_user_unique",
1184
+ "nullsNotDistinct": false,
1185
+ "columns": ["client_id", "user_id"]
1186
+ }
1187
+ }
1188
+ },
1189
+ "public.sessions": {
1190
+ "name": "sessions",
1191
+ "schema": "",
1192
+ "columns": {
1193
+ "id": {
1194
+ "name": "id",
1195
+ "type": "text",
1196
+ "primaryKey": true,
1197
+ "notNull": true
1198
+ },
1199
+ "slug": {
1200
+ "name": "slug",
1201
+ "type": "varchar(100)",
1202
+ "primaryKey": false,
1203
+ "notNull": true
1204
+ },
1205
+ "title": {
1206
+ "name": "title",
1207
+ "type": "text",
1208
+ "primaryKey": false,
1209
+ "notNull": false
1210
+ },
1211
+ "description": {
1212
+ "name": "description",
1213
+ "type": "text",
1214
+ "primaryKey": false,
1215
+ "notNull": false
1216
+ },
1217
+ "avatar": {
1218
+ "name": "avatar",
1219
+ "type": "text",
1220
+ "primaryKey": false,
1221
+ "notNull": false
1222
+ },
1223
+ "background_color": {
1224
+ "name": "background_color",
1225
+ "type": "text",
1226
+ "primaryKey": false,
1227
+ "notNull": false
1228
+ },
1229
+ "type": {
1230
+ "name": "type",
1231
+ "type": "text",
1232
+ "primaryKey": false,
1233
+ "notNull": false,
1234
+ "default": "'agent'"
1235
+ },
1236
+ "user_id": {
1237
+ "name": "user_id",
1238
+ "type": "text",
1239
+ "primaryKey": false,
1240
+ "notNull": true
1241
+ },
1242
+ "group_id": {
1243
+ "name": "group_id",
1244
+ "type": "text",
1245
+ "primaryKey": false,
1246
+ "notNull": false
1247
+ },
1248
+ "client_id": {
1249
+ "name": "client_id",
1250
+ "type": "text",
1251
+ "primaryKey": false,
1252
+ "notNull": false
1253
+ },
1254
+ "pinned": {
1255
+ "name": "pinned",
1256
+ "type": "boolean",
1257
+ "primaryKey": false,
1258
+ "notNull": false,
1259
+ "default": false
1260
+ },
1261
+ "created_at": {
1262
+ "name": "created_at",
1263
+ "type": "timestamp with time zone",
1264
+ "primaryKey": false,
1265
+ "notNull": true,
1266
+ "default": "now()"
1267
+ },
1268
+ "updated_at": {
1269
+ "name": "updated_at",
1270
+ "type": "timestamp with time zone",
1271
+ "primaryKey": false,
1272
+ "notNull": true,
1273
+ "default": "now()"
1274
+ }
1275
+ },
1276
+ "indexes": {
1277
+ "slug_user_id_unique": {
1278
+ "name": "slug_user_id_unique",
1279
+ "columns": ["slug", "user_id"],
1280
+ "isUnique": true
1281
+ }
1282
+ },
1283
+ "foreignKeys": {
1284
+ "sessions_user_id_users_id_fk": {
1285
+ "name": "sessions_user_id_users_id_fk",
1286
+ "tableFrom": "sessions",
1287
+ "tableTo": "users",
1288
+ "columnsFrom": ["user_id"],
1289
+ "columnsTo": ["id"],
1290
+ "onDelete": "cascade",
1291
+ "onUpdate": "no action"
1292
+ },
1293
+ "sessions_group_id_session_groups_id_fk": {
1294
+ "name": "sessions_group_id_session_groups_id_fk",
1295
+ "tableFrom": "sessions",
1296
+ "tableTo": "session_groups",
1297
+ "columnsFrom": ["group_id"],
1298
+ "columnsTo": ["id"],
1299
+ "onDelete": "set null",
1300
+ "onUpdate": "no action"
1301
+ }
1302
+ },
1303
+ "compositePrimaryKeys": {},
1304
+ "uniqueConstraints": {
1305
+ "sessions_client_id_user_id_unique": {
1306
+ "name": "sessions_client_id_user_id_unique",
1307
+ "nullsNotDistinct": false,
1308
+ "columns": ["client_id", "user_id"]
1309
+ }
1310
+ }
1311
+ },
1312
+ "public.tags": {
1313
+ "name": "tags",
1314
+ "schema": "",
1315
+ "columns": {
1316
+ "id": {
1317
+ "name": "id",
1318
+ "type": "serial",
1319
+ "primaryKey": true,
1320
+ "notNull": true
1321
+ },
1322
+ "slug": {
1323
+ "name": "slug",
1324
+ "type": "text",
1325
+ "primaryKey": false,
1326
+ "notNull": true
1327
+ },
1328
+ "name": {
1329
+ "name": "name",
1330
+ "type": "text",
1331
+ "primaryKey": false,
1332
+ "notNull": false
1333
+ },
1334
+ "user_id": {
1335
+ "name": "user_id",
1336
+ "type": "text",
1337
+ "primaryKey": false,
1338
+ "notNull": true
1339
+ },
1340
+ "created_at": {
1341
+ "name": "created_at",
1342
+ "type": "timestamp with time zone",
1343
+ "primaryKey": false,
1344
+ "notNull": true,
1345
+ "default": "now()"
1346
+ },
1347
+ "updated_at": {
1348
+ "name": "updated_at",
1349
+ "type": "timestamp with time zone",
1350
+ "primaryKey": false,
1351
+ "notNull": true,
1352
+ "default": "now()"
1353
+ }
1354
+ },
1355
+ "indexes": {},
1356
+ "foreignKeys": {
1357
+ "tags_user_id_users_id_fk": {
1358
+ "name": "tags_user_id_users_id_fk",
1359
+ "tableFrom": "tags",
1360
+ "tableTo": "users",
1361
+ "columnsFrom": ["user_id"],
1362
+ "columnsTo": ["id"],
1363
+ "onDelete": "cascade",
1364
+ "onUpdate": "no action"
1365
+ }
1366
+ },
1367
+ "compositePrimaryKeys": {},
1368
+ "uniqueConstraints": {
1369
+ "tags_slug_unique": {
1370
+ "name": "tags_slug_unique",
1371
+ "nullsNotDistinct": false,
1372
+ "columns": ["slug"]
1373
+ }
1374
+ }
1375
+ },
1376
+ "public.topics": {
1377
+ "name": "topics",
1378
+ "schema": "",
1379
+ "columns": {
1380
+ "id": {
1381
+ "name": "id",
1382
+ "type": "text",
1383
+ "primaryKey": true,
1384
+ "notNull": true
1385
+ },
1386
+ "session_id": {
1387
+ "name": "session_id",
1388
+ "type": "text",
1389
+ "primaryKey": false,
1390
+ "notNull": false
1391
+ },
1392
+ "user_id": {
1393
+ "name": "user_id",
1394
+ "type": "text",
1395
+ "primaryKey": false,
1396
+ "notNull": true
1397
+ },
1398
+ "favorite": {
1399
+ "name": "favorite",
1400
+ "type": "boolean",
1401
+ "primaryKey": false,
1402
+ "notNull": false,
1403
+ "default": false
1404
+ },
1405
+ "title": {
1406
+ "name": "title",
1407
+ "type": "text",
1408
+ "primaryKey": false,
1409
+ "notNull": false
1410
+ },
1411
+ "client_id": {
1412
+ "name": "client_id",
1413
+ "type": "text",
1414
+ "primaryKey": false,
1415
+ "notNull": false
1416
+ },
1417
+ "created_at": {
1418
+ "name": "created_at",
1419
+ "type": "timestamp with time zone",
1420
+ "primaryKey": false,
1421
+ "notNull": true,
1422
+ "default": "now()"
1423
+ },
1424
+ "updated_at": {
1425
+ "name": "updated_at",
1426
+ "type": "timestamp with time zone",
1427
+ "primaryKey": false,
1428
+ "notNull": true,
1429
+ "default": "now()"
1430
+ }
1431
+ },
1432
+ "indexes": {},
1433
+ "foreignKeys": {
1434
+ "topics_session_id_sessions_id_fk": {
1435
+ "name": "topics_session_id_sessions_id_fk",
1436
+ "tableFrom": "topics",
1437
+ "tableTo": "sessions",
1438
+ "columnsFrom": ["session_id"],
1439
+ "columnsTo": ["id"],
1440
+ "onDelete": "cascade",
1441
+ "onUpdate": "no action"
1442
+ },
1443
+ "topics_user_id_users_id_fk": {
1444
+ "name": "topics_user_id_users_id_fk",
1445
+ "tableFrom": "topics",
1446
+ "tableTo": "users",
1447
+ "columnsFrom": ["user_id"],
1448
+ "columnsTo": ["id"],
1449
+ "onDelete": "cascade",
1450
+ "onUpdate": "no action"
1451
+ }
1452
+ },
1453
+ "compositePrimaryKeys": {},
1454
+ "uniqueConstraints": {
1455
+ "topic_client_id_user_id_unique": {
1456
+ "name": "topic_client_id_user_id_unique",
1457
+ "nullsNotDistinct": false,
1458
+ "columns": ["client_id", "user_id"]
1459
+ }
1460
+ }
1461
+ },
1462
+ "public.user_budgets": {
1463
+ "name": "user_budgets",
1464
+ "schema": "",
1465
+ "columns": {
1466
+ "id": {
1467
+ "name": "id",
1468
+ "type": "text",
1469
+ "primaryKey": true,
1470
+ "notNull": true
1471
+ },
1472
+ "free_budget_id": {
1473
+ "name": "free_budget_id",
1474
+ "type": "text",
1475
+ "primaryKey": false,
1476
+ "notNull": false
1477
+ },
1478
+ "free_budget_key": {
1479
+ "name": "free_budget_key",
1480
+ "type": "text",
1481
+ "primaryKey": false,
1482
+ "notNull": false
1483
+ },
1484
+ "subscription_budget_id": {
1485
+ "name": "subscription_budget_id",
1486
+ "type": "text",
1487
+ "primaryKey": false,
1488
+ "notNull": false
1489
+ },
1490
+ "subscription_budget_key": {
1491
+ "name": "subscription_budget_key",
1492
+ "type": "text",
1493
+ "primaryKey": false,
1494
+ "notNull": false
1495
+ },
1496
+ "package_budget_id": {
1497
+ "name": "package_budget_id",
1498
+ "type": "text",
1499
+ "primaryKey": false,
1500
+ "notNull": false
1501
+ },
1502
+ "package_budget_key": {
1503
+ "name": "package_budget_key",
1504
+ "type": "text",
1505
+ "primaryKey": false,
1506
+ "notNull": false
1507
+ },
1508
+ "created_at": {
1509
+ "name": "created_at",
1510
+ "type": "timestamp with time zone",
1511
+ "primaryKey": false,
1512
+ "notNull": true,
1513
+ "default": "now()"
1514
+ },
1515
+ "updated_at": {
1516
+ "name": "updated_at",
1517
+ "type": "timestamp with time zone",
1518
+ "primaryKey": false,
1519
+ "notNull": true,
1520
+ "default": "now()"
1521
+ }
1522
+ },
1523
+ "indexes": {},
1524
+ "foreignKeys": {
1525
+ "user_budgets_id_users_id_fk": {
1526
+ "name": "user_budgets_id_users_id_fk",
1527
+ "tableFrom": "user_budgets",
1528
+ "tableTo": "users",
1529
+ "columnsFrom": ["id"],
1530
+ "columnsTo": ["id"],
1531
+ "onDelete": "cascade",
1532
+ "onUpdate": "no action"
1533
+ }
1534
+ },
1535
+ "compositePrimaryKeys": {},
1536
+ "uniqueConstraints": {}
1537
+ },
1538
+ "public.user_settings": {
1539
+ "name": "user_settings",
1540
+ "schema": "",
1541
+ "columns": {
1542
+ "id": {
1543
+ "name": "id",
1544
+ "type": "text",
1545
+ "primaryKey": true,
1546
+ "notNull": true
1547
+ },
1548
+ "tts": {
1549
+ "name": "tts",
1550
+ "type": "jsonb",
1551
+ "primaryKey": false,
1552
+ "notNull": false
1553
+ },
1554
+ "key_vaults": {
1555
+ "name": "key_vaults",
1556
+ "type": "text",
1557
+ "primaryKey": false,
1558
+ "notNull": false
1559
+ },
1560
+ "general": {
1561
+ "name": "general",
1562
+ "type": "jsonb",
1563
+ "primaryKey": false,
1564
+ "notNull": false
1565
+ },
1566
+ "language_model": {
1567
+ "name": "language_model",
1568
+ "type": "jsonb",
1569
+ "primaryKey": false,
1570
+ "notNull": false
1571
+ },
1572
+ "system_agent": {
1573
+ "name": "system_agent",
1574
+ "type": "jsonb",
1575
+ "primaryKey": false,
1576
+ "notNull": false
1577
+ },
1578
+ "default_agent": {
1579
+ "name": "default_agent",
1580
+ "type": "jsonb",
1581
+ "primaryKey": false,
1582
+ "notNull": false
1583
+ },
1584
+ "tool": {
1585
+ "name": "tool",
1586
+ "type": "jsonb",
1587
+ "primaryKey": false,
1588
+ "notNull": false
1589
+ }
1590
+ },
1591
+ "indexes": {},
1592
+ "foreignKeys": {
1593
+ "user_settings_id_users_id_fk": {
1594
+ "name": "user_settings_id_users_id_fk",
1595
+ "tableFrom": "user_settings",
1596
+ "tableTo": "users",
1597
+ "columnsFrom": ["id"],
1598
+ "columnsTo": ["id"],
1599
+ "onDelete": "cascade",
1600
+ "onUpdate": "no action"
1601
+ }
1602
+ },
1603
+ "compositePrimaryKeys": {},
1604
+ "uniqueConstraints": {}
1605
+ },
1606
+ "public.user_subscriptions": {
1607
+ "name": "user_subscriptions",
1608
+ "schema": "",
1609
+ "columns": {
1610
+ "id": {
1611
+ "name": "id",
1612
+ "type": "text",
1613
+ "primaryKey": true,
1614
+ "notNull": true
1615
+ },
1616
+ "user_id": {
1617
+ "name": "user_id",
1618
+ "type": "text",
1619
+ "primaryKey": false,
1620
+ "notNull": true
1621
+ },
1622
+ "stripe_id": {
1623
+ "name": "stripe_id",
1624
+ "type": "text",
1625
+ "primaryKey": false,
1626
+ "notNull": false
1627
+ },
1628
+ "currency": {
1629
+ "name": "currency",
1630
+ "type": "text",
1631
+ "primaryKey": false,
1632
+ "notNull": false
1633
+ },
1634
+ "pricing": {
1635
+ "name": "pricing",
1636
+ "type": "integer",
1637
+ "primaryKey": false,
1638
+ "notNull": false
1639
+ },
1640
+ "billing_paid_at": {
1641
+ "name": "billing_paid_at",
1642
+ "type": "integer",
1643
+ "primaryKey": false,
1644
+ "notNull": false
1645
+ },
1646
+ "billing_cycle_start": {
1647
+ "name": "billing_cycle_start",
1648
+ "type": "integer",
1649
+ "primaryKey": false,
1650
+ "notNull": false
1651
+ },
1652
+ "billing_cycle_end": {
1653
+ "name": "billing_cycle_end",
1654
+ "type": "integer",
1655
+ "primaryKey": false,
1656
+ "notNull": false
1657
+ },
1658
+ "cancel_at_period_end": {
1659
+ "name": "cancel_at_period_end",
1660
+ "type": "boolean",
1661
+ "primaryKey": false,
1662
+ "notNull": false
1663
+ },
1664
+ "cancel_at": {
1665
+ "name": "cancel_at",
1666
+ "type": "integer",
1667
+ "primaryKey": false,
1668
+ "notNull": false
1669
+ },
1670
+ "next_billing": {
1671
+ "name": "next_billing",
1672
+ "type": "jsonb",
1673
+ "primaryKey": false,
1674
+ "notNull": false
1675
+ },
1676
+ "plan": {
1677
+ "name": "plan",
1678
+ "type": "text",
1679
+ "primaryKey": false,
1680
+ "notNull": false
1681
+ },
1682
+ "recurring": {
1683
+ "name": "recurring",
1684
+ "type": "text",
1685
+ "primaryKey": false,
1686
+ "notNull": false
1687
+ },
1688
+ "storage_limit": {
1689
+ "name": "storage_limit",
1690
+ "type": "integer",
1691
+ "primaryKey": false,
1692
+ "notNull": false
1693
+ },
1694
+ "status": {
1695
+ "name": "status",
1696
+ "type": "integer",
1697
+ "primaryKey": false,
1698
+ "notNull": false
1699
+ },
1700
+ "created_at": {
1701
+ "name": "created_at",
1702
+ "type": "timestamp with time zone",
1703
+ "primaryKey": false,
1704
+ "notNull": true,
1705
+ "default": "now()"
1706
+ },
1707
+ "updated_at": {
1708
+ "name": "updated_at",
1709
+ "type": "timestamp with time zone",
1710
+ "primaryKey": false,
1711
+ "notNull": true,
1712
+ "default": "now()"
1713
+ }
1714
+ },
1715
+ "indexes": {},
1716
+ "foreignKeys": {
1717
+ "user_subscriptions_user_id_users_id_fk": {
1718
+ "name": "user_subscriptions_user_id_users_id_fk",
1719
+ "tableFrom": "user_subscriptions",
1720
+ "tableTo": "users",
1721
+ "columnsFrom": ["user_id"],
1722
+ "columnsTo": ["id"],
1723
+ "onDelete": "cascade",
1724
+ "onUpdate": "no action"
1725
+ }
1726
+ },
1727
+ "compositePrimaryKeys": {},
1728
+ "uniqueConstraints": {}
1729
+ },
1730
+ "public.users": {
1731
+ "name": "users",
1732
+ "schema": "",
1733
+ "columns": {
1734
+ "id": {
1735
+ "name": "id",
1736
+ "type": "text",
1737
+ "primaryKey": true,
1738
+ "notNull": true
1739
+ },
1740
+ "username": {
1741
+ "name": "username",
1742
+ "type": "text",
1743
+ "primaryKey": false,
1744
+ "notNull": false
1745
+ },
1746
+ "email": {
1747
+ "name": "email",
1748
+ "type": "text",
1749
+ "primaryKey": false,
1750
+ "notNull": false
1751
+ },
1752
+ "avatar": {
1753
+ "name": "avatar",
1754
+ "type": "text",
1755
+ "primaryKey": false,
1756
+ "notNull": false
1757
+ },
1758
+ "phone": {
1759
+ "name": "phone",
1760
+ "type": "text",
1761
+ "primaryKey": false,
1762
+ "notNull": false
1763
+ },
1764
+ "first_name": {
1765
+ "name": "first_name",
1766
+ "type": "text",
1767
+ "primaryKey": false,
1768
+ "notNull": false
1769
+ },
1770
+ "last_name": {
1771
+ "name": "last_name",
1772
+ "type": "text",
1773
+ "primaryKey": false,
1774
+ "notNull": false
1775
+ },
1776
+ "is_onboarded": {
1777
+ "name": "is_onboarded",
1778
+ "type": "boolean",
1779
+ "primaryKey": false,
1780
+ "notNull": false,
1781
+ "default": false
1782
+ },
1783
+ "clerk_created_at": {
1784
+ "name": "clerk_created_at",
1785
+ "type": "timestamp with time zone",
1786
+ "primaryKey": false,
1787
+ "notNull": false
1788
+ },
1789
+ "preference": {
1790
+ "name": "preference",
1791
+ "type": "jsonb",
1792
+ "primaryKey": false,
1793
+ "notNull": false
1794
+ },
1795
+ "created_at": {
1796
+ "name": "created_at",
1797
+ "type": "timestamp with time zone",
1798
+ "primaryKey": false,
1799
+ "notNull": true,
1800
+ "default": "now()"
1801
+ },
1802
+ "updated_at": {
1803
+ "name": "updated_at",
1804
+ "type": "timestamp with time zone",
1805
+ "primaryKey": false,
1806
+ "notNull": true,
1807
+ "default": "now()"
1808
+ }
1809
+ },
1810
+ "indexes": {},
1811
+ "foreignKeys": {},
1812
+ "compositePrimaryKeys": {},
1813
+ "uniqueConstraints": {
1814
+ "users_username_unique": {
1815
+ "name": "users_username_unique",
1816
+ "nullsNotDistinct": false,
1817
+ "columns": ["username"]
1818
+ }
1819
+ }
1820
+ }
1821
+ },
1822
+ "version": "6"
1823
+ }