@mtkn/mega-agent 0.1.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/dist/artifact/artifact.repository.d.ts +17 -0
- package/dist/artifact/artifact.repository.d.ts.map +1 -0
- package/dist/artifact/artifact.repository.js +66 -0
- package/dist/artifact/artifact.repository.js.map +1 -0
- package/dist/artifact/artifact.service.d.ts +22 -0
- package/dist/artifact/artifact.service.d.ts.map +1 -0
- package/dist/artifact/artifact.service.js +87 -0
- package/dist/artifact/artifact.service.js.map +1 -0
- package/dist/artifact/artifact.types.d.ts +41 -0
- package/dist/artifact/artifact.types.d.ts.map +1 -0
- package/dist/artifact/artifact.types.js +6 -0
- package/dist/artifact/artifact.types.js.map +1 -0
- package/dist/artifact/index.d.ts +6 -0
- package/dist/artifact/index.d.ts.map +1 -0
- package/dist/artifact/index.js +4 -0
- package/dist/artifact/index.js.map +1 -0
- package/dist/chat/chat-memory.integration.d.ts +59 -0
- package/dist/chat/chat-memory.integration.d.ts.map +1 -0
- package/dist/chat/chat-memory.integration.js +148 -0
- package/dist/chat/chat-memory.integration.js.map +1 -0
- package/dist/chat/chat.repository.d.ts +58 -0
- package/dist/chat/chat.repository.d.ts.map +1 -0
- package/dist/chat/chat.repository.js +128 -0
- package/dist/chat/chat.repository.js.map +1 -0
- package/dist/chat/chat.service.d.ts +28 -0
- package/dist/chat/chat.service.d.ts.map +1 -0
- package/dist/chat/chat.service.js +217 -0
- package/dist/chat/chat.service.js.map +1 -0
- package/dist/chat/chat.types.d.ts +198 -0
- package/dist/chat/chat.types.d.ts.map +1 -0
- package/dist/chat/chat.types.js +8 -0
- package/dist/chat/chat.types.js.map +1 -0
- package/dist/chat/index.d.ts +17 -0
- package/dist/chat/index.d.ts.map +1 -0
- package/dist/chat/index.js +16 -0
- package/dist/chat/index.js.map +1 -0
- package/dist/chat/memory-detector.d.ts +53 -0
- package/dist/chat/memory-detector.d.ts.map +1 -0
- package/dist/chat/memory-detector.js +172 -0
- package/dist/chat/memory-detector.js.map +1 -0
- package/dist/chat/prompts/index.d.ts +6 -0
- package/dist/chat/prompts/index.d.ts.map +1 -0
- package/dist/chat/prompts/index.js +6 -0
- package/dist/chat/prompts/index.js.map +1 -0
- package/dist/chat/prompts/system.prompts.d.ts +23 -0
- package/dist/chat/prompts/system.prompts.d.ts.map +1 -0
- package/dist/chat/prompts/system.prompts.js +102 -0
- package/dist/chat/prompts/system.prompts.js.map +1 -0
- package/dist/chat/response-parser.d.ts +24 -0
- package/dist/chat/response-parser.d.ts.map +1 -0
- package/dist/chat/response-parser.js +198 -0
- package/dist/chat/response-parser.js.map +1 -0
- package/dist/chat/response.types.d.ts +90 -0
- package/dist/chat/response.types.d.ts.map +1 -0
- package/dist/chat/response.types.js +6 -0
- package/dist/chat/response.types.js.map +1 -0
- package/dist/common/errors.d.ts +60 -0
- package/dist/common/errors.d.ts.map +1 -0
- package/dist/common/errors.js +105 -0
- package/dist/common/errors.js.map +1 -0
- package/dist/common/index.d.ts +3 -0
- package/dist/common/index.d.ts.map +1 -0
- package/dist/common/index.js +3 -0
- package/dist/common/index.js.map +1 -0
- package/dist/common/retry.d.ts +23 -0
- package/dist/common/retry.d.ts.map +1 -0
- package/dist/common/retry.js +57 -0
- package/dist/common/retry.js.map +1 -0
- package/dist/create-mega-agent.d.ts +100 -0
- package/dist/create-mega-agent.d.ts.map +1 -0
- package/dist/create-mega-agent.js +153 -0
- package/dist/create-mega-agent.js.map +1 -0
- package/dist/embedding/embedding.service.d.ts +34 -0
- package/dist/embedding/embedding.service.d.ts.map +1 -0
- package/dist/embedding/embedding.service.js +68 -0
- package/dist/embedding/embedding.service.js.map +1 -0
- package/dist/embedding/embedding.types.d.ts +38 -0
- package/dist/embedding/embedding.types.d.ts.map +1 -0
- package/dist/embedding/embedding.types.js +6 -0
- package/dist/embedding/embedding.types.js.map +1 -0
- package/dist/embedding/index.d.ts +9 -0
- package/dist/embedding/index.d.ts.map +1 -0
- package/dist/embedding/index.js +9 -0
- package/dist/embedding/index.js.map +1 -0
- package/dist/embedding/providers/base.provider.d.ts +29 -0
- package/dist/embedding/providers/base.provider.d.ts.map +1 -0
- package/dist/embedding/providers/base.provider.js +19 -0
- package/dist/embedding/providers/base.provider.js.map +1 -0
- package/dist/embedding/providers/index.d.ts +7 -0
- package/dist/embedding/providers/index.d.ts.map +1 -0
- package/dist/embedding/providers/index.js +7 -0
- package/dist/embedding/providers/index.js.map +1 -0
- package/dist/embedding/providers/openai.provider.d.ts +17 -0
- package/dist/embedding/providers/openai.provider.d.ts.map +1 -0
- package/dist/embedding/providers/openai.provider.js +73 -0
- package/dist/embedding/providers/openai.provider.js.map +1 -0
- package/dist/http/chat.controller.d.ts +30 -0
- package/dist/http/chat.controller.d.ts.map +1 -0
- package/dist/http/chat.controller.js +163 -0
- package/dist/http/chat.controller.js.map +1 -0
- package/dist/http/chat.routes.d.ts +5 -0
- package/dist/http/chat.routes.d.ts.map +1 -0
- package/dist/http/chat.routes.js +38 -0
- package/dist/http/chat.routes.js.map +1 -0
- package/dist/http/chat.validation.d.ts +70 -0
- package/dist/http/chat.validation.d.ts.map +1 -0
- package/dist/http/chat.validation.js +28 -0
- package/dist/http/chat.validation.js.map +1 -0
- package/dist/incident/incident.correlator.d.ts +39 -0
- package/dist/incident/incident.correlator.d.ts.map +1 -0
- package/dist/incident/incident.correlator.js +129 -0
- package/dist/incident/incident.correlator.js.map +1 -0
- package/dist/incident/incident.detector.d.ts +62 -0
- package/dist/incident/incident.detector.d.ts.map +1 -0
- package/dist/incident/incident.detector.js +192 -0
- package/dist/incident/incident.detector.js.map +1 -0
- package/dist/incident/incident.repository.d.ts +79 -0
- package/dist/incident/incident.repository.d.ts.map +1 -0
- package/dist/incident/incident.repository.js +216 -0
- package/dist/incident/incident.repository.js.map +1 -0
- package/dist/incident/incident.service.d.ts +71 -0
- package/dist/incident/incident.service.d.ts.map +1 -0
- package/dist/incident/incident.service.js +217 -0
- package/dist/incident/incident.service.js.map +1 -0
- package/dist/incident/incident.types.d.ts +115 -0
- package/dist/incident/incident.types.d.ts.map +1 -0
- package/dist/incident/incident.types.js +6 -0
- package/dist/incident/incident.types.js.map +1 -0
- package/dist/incident/index.d.ts +13 -0
- package/dist/incident/index.d.ts.map +1 -0
- package/dist/incident/index.js +13 -0
- package/dist/incident/index.js.map +1 -0
- package/dist/index.d.ts +26 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +26 -0
- package/dist/index.js.map +1 -0
- package/dist/llm/index.d.ts +8 -0
- package/dist/llm/index.d.ts.map +1 -0
- package/dist/llm/index.js +9 -0
- package/dist/llm/index.js.map +1 -0
- package/dist/llm/llm.service.d.ts +52 -0
- package/dist/llm/llm.service.d.ts.map +1 -0
- package/dist/llm/llm.service.js +141 -0
- package/dist/llm/llm.service.js.map +1 -0
- package/dist/llm/llm.types.d.ts +77 -0
- package/dist/llm/llm.types.d.ts.map +1 -0
- package/dist/llm/llm.types.js +5 -0
- package/dist/llm/llm.types.js.map +1 -0
- package/dist/llm/providers/anthropic.provider.d.ts +16 -0
- package/dist/llm/providers/anthropic.provider.d.ts.map +1 -0
- package/dist/llm/providers/anthropic.provider.js +118 -0
- package/dist/llm/providers/anthropic.provider.js.map +1 -0
- package/dist/llm/providers/base.provider.d.ts +17 -0
- package/dist/llm/providers/base.provider.d.ts.map +1 -0
- package/dist/llm/providers/base.provider.js +18 -0
- package/dist/llm/providers/base.provider.js.map +1 -0
- package/dist/llm/providers/custom.provider.d.ts +15 -0
- package/dist/llm/providers/custom.provider.d.ts.map +1 -0
- package/dist/llm/providers/custom.provider.js +110 -0
- package/dist/llm/providers/custom.provider.js.map +1 -0
- package/dist/llm/providers/gemini.provider.d.ts +19 -0
- package/dist/llm/providers/gemini.provider.d.ts.map +1 -0
- package/dist/llm/providers/gemini.provider.js +98 -0
- package/dist/llm/providers/gemini.provider.js.map +1 -0
- package/dist/llm/providers/index.d.ts +10 -0
- package/dist/llm/providers/index.d.ts.map +1 -0
- package/dist/llm/providers/index.js +10 -0
- package/dist/llm/providers/index.js.map +1 -0
- package/dist/llm/providers/openai.provider.d.ts +15 -0
- package/dist/llm/providers/openai.provider.d.ts.map +1 -0
- package/dist/llm/providers/openai.provider.js +57 -0
- package/dist/llm/providers/openai.provider.js.map +1 -0
- package/dist/mcp/index.d.ts +13 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/index.js +17 -0
- package/dist/mcp/index.js.map +1 -0
- package/dist/mcp/mcp.client.d.ts +57 -0
- package/dist/mcp/mcp.client.d.ts.map +1 -0
- package/dist/mcp/mcp.client.js +150 -0
- package/dist/mcp/mcp.client.js.map +1 -0
- package/dist/mcp/mcp.service.d.ts +64 -0
- package/dist/mcp/mcp.service.d.ts.map +1 -0
- package/dist/mcp/mcp.service.js +207 -0
- package/dist/mcp/mcp.service.js.map +1 -0
- package/dist/mcp/mcp.types.d.ts +142 -0
- package/dist/mcp/mcp.types.d.ts.map +1 -0
- package/dist/mcp/mcp.types.js +6 -0
- package/dist/mcp/mcp.types.js.map +1 -0
- package/dist/mcp/presets/common-sources.d.ts +28 -0
- package/dist/mcp/presets/common-sources.d.ts.map +1 -0
- package/dist/mcp/presets/common-sources.js +114 -0
- package/dist/mcp/presets/common-sources.js.map +1 -0
- package/dist/mcp/presets/index.d.ts +5 -0
- package/dist/mcp/presets/index.d.ts.map +1 -0
- package/dist/mcp/presets/index.js +5 -0
- package/dist/mcp/presets/index.js.map +1 -0
- package/dist/mcp/source.repository.d.ts +68 -0
- package/dist/mcp/source.repository.d.ts.map +1 -0
- package/dist/mcp/source.repository.js +114 -0
- package/dist/mcp/source.repository.js.map +1 -0
- package/dist/mcp/source.service.d.ts +74 -0
- package/dist/mcp/source.service.d.ts.map +1 -0
- package/dist/mcp/source.service.js +181 -0
- package/dist/mcp/source.service.js.map +1 -0
- package/dist/mcp/transports/http.transport.d.ts +45 -0
- package/dist/mcp/transports/http.transport.d.ts.map +1 -0
- package/dist/mcp/transports/http.transport.js +64 -0
- package/dist/mcp/transports/http.transport.js.map +1 -0
- package/dist/mcp/transports/index.d.ts +7 -0
- package/dist/mcp/transports/index.d.ts.map +1 -0
- package/dist/mcp/transports/index.js +7 -0
- package/dist/mcp/transports/index.js.map +1 -0
- package/dist/mcp/transports/stdio.transport.d.ts +21 -0
- package/dist/mcp/transports/stdio.transport.d.ts.map +1 -0
- package/dist/mcp/transports/stdio.transport.js +29 -0
- package/dist/mcp/transports/stdio.transport.js.map +1 -0
- package/dist/memory/index.d.ts +10 -0
- package/dist/memory/index.d.ts.map +1 -0
- package/dist/memory/index.js +10 -0
- package/dist/memory/index.js.map +1 -0
- package/dist/memory/memory.repository.d.ts +62 -0
- package/dist/memory/memory.repository.d.ts.map +1 -0
- package/dist/memory/memory.repository.js +148 -0
- package/dist/memory/memory.repository.js.map +1 -0
- package/dist/memory/memory.service.d.ts +63 -0
- package/dist/memory/memory.service.d.ts.map +1 -0
- package/dist/memory/memory.service.js +263 -0
- package/dist/memory/memory.service.js.map +1 -0
- package/dist/memory/memory.types.d.ts +104 -0
- package/dist/memory/memory.types.d.ts.map +1 -0
- package/dist/memory/memory.types.js +8 -0
- package/dist/memory/memory.types.js.map +1 -0
- package/dist/qdrant/index.d.ts +8 -0
- package/dist/qdrant/index.d.ts.map +1 -0
- package/dist/qdrant/index.js +6 -0
- package/dist/qdrant/index.js.map +1 -0
- package/dist/qdrant/qdrant.service.d.ts +63 -0
- package/dist/qdrant/qdrant.service.d.ts.map +1 -0
- package/dist/qdrant/qdrant.service.js +201 -0
- package/dist/qdrant/qdrant.service.js.map +1 -0
- package/dist/qdrant/qdrant.types.d.ts +55 -0
- package/dist/qdrant/qdrant.types.d.ts.map +1 -0
- package/dist/qdrant/qdrant.types.js +6 -0
- package/dist/qdrant/qdrant.types.js.map +1 -0
- package/dist/tools/core-tools.d.ts +7 -0
- package/dist/tools/core-tools.d.ts.map +1 -0
- package/dist/tools/core-tools.js +52 -0
- package/dist/tools/core-tools.js.map +1 -0
- package/dist/tools/index.d.ts +4 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +3 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/tool-registry.d.ts +51 -0
- package/dist/tools/tool-registry.d.ts.map +1 -0
- package/dist/tools/tool-registry.js +50 -0
- package/dist/tools/tool-registry.js.map +1 -0
- package/dist/workflow/actions/base.action.d.ts +50 -0
- package/dist/workflow/actions/base.action.d.ts.map +1 -0
- package/dist/workflow/actions/base.action.js +59 -0
- package/dist/workflow/actions/base.action.js.map +1 -0
- package/dist/workflow/actions/incident.action.d.ts +13 -0
- package/dist/workflow/actions/incident.action.d.ts.map +1 -0
- package/dist/workflow/actions/incident.action.js +70 -0
- package/dist/workflow/actions/incident.action.js.map +1 -0
- package/dist/workflow/actions/index.d.ts +9 -0
- package/dist/workflow/actions/index.d.ts.map +1 -0
- package/dist/workflow/actions/index.js +11 -0
- package/dist/workflow/actions/index.js.map +1 -0
- package/dist/workflow/actions/notify.action.d.ts +18 -0
- package/dist/workflow/actions/notify.action.d.ts.map +1 -0
- package/dist/workflow/actions/notify.action.js +106 -0
- package/dist/workflow/actions/notify.action.js.map +1 -0
- package/dist/workflow/actions/report.action.d.ts +13 -0
- package/dist/workflow/actions/report.action.d.ts.map +1 -0
- package/dist/workflow/actions/report.action.js +64 -0
- package/dist/workflow/actions/report.action.js.map +1 -0
- package/dist/workflow/index.d.ts +10 -0
- package/dist/workflow/index.d.ts.map +1 -0
- package/dist/workflow/index.js +11 -0
- package/dist/workflow/index.js.map +1 -0
- package/dist/workflow/workflow.repository.d.ts +90 -0
- package/dist/workflow/workflow.repository.d.ts.map +1 -0
- package/dist/workflow/workflow.repository.js +238 -0
- package/dist/workflow/workflow.repository.js.map +1 -0
- package/dist/workflow/workflow.service.d.ts +98 -0
- package/dist/workflow/workflow.service.d.ts.map +1 -0
- package/dist/workflow/workflow.service.js +374 -0
- package/dist/workflow/workflow.service.js.map +1 -0
- package/dist/workflow/workflow.types.d.ts +146 -0
- package/dist/workflow/workflow.types.d.ts.map +1 -0
- package/dist/workflow/workflow.types.js +8 -0
- package/dist/workflow/workflow.types.js.map +1 -0
- package/package.json +67 -0
- package/prisma/schema.prisma +551 -0
- package/scripts/prisma-sync.mjs +187 -0
|
@@ -0,0 +1,551 @@
|
|
|
1
|
+
// ============================================================
|
|
2
|
+
// @7style/mega-agent — Reference Prisma Schema
|
|
3
|
+
// ============================================================
|
|
4
|
+
//
|
|
5
|
+
// Bu dosya @7style/mega-agent paketinin ihtiyaç duyduğu veritabanı
|
|
6
|
+
// modellerini ve enum'larını dokümante eder.
|
|
7
|
+
//
|
|
8
|
+
// Host entegrasyonu için: npx mega-agent-prisma-sync --target prisma/schema.prisma
|
|
9
|
+
//
|
|
10
|
+
// Generator ve datasource blokları paketin kendi build'i için gereklidir.
|
|
11
|
+
// Host uygulamanız kendi generator/datasource bloklarını kullanmalıdır.
|
|
12
|
+
|
|
13
|
+
generator client {
|
|
14
|
+
provider = "prisma-client-js"
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
datasource db {
|
|
18
|
+
provider = "postgresql"
|
|
19
|
+
url = env("DATABASE_URL")
|
|
20
|
+
}
|
|
21
|
+
//
|
|
22
|
+
// ── HOST ENTEGRASYON REHBERİ ────────────────────────────────
|
|
23
|
+
//
|
|
24
|
+
// 1. Aşağıdaki tüm enum ve modelleri kendi schema.prisma dosyanıza kopyalayın.
|
|
25
|
+
//
|
|
26
|
+
// 2. userId alanı olan her modele User relation ekleyin:
|
|
27
|
+
//
|
|
28
|
+
// AI modelinde şu satırı ekleyin:
|
|
29
|
+
// user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
|
30
|
+
//
|
|
31
|
+
// User modelinize şu reverse relation'ları ekleyin:
|
|
32
|
+
// aiMemories AiMemory[]
|
|
33
|
+
// aiMemorySuggestions AiMemorySuggestion[]
|
|
34
|
+
// aiChats AiChat[]
|
|
35
|
+
// aiArtifacts AiArtifact[]
|
|
36
|
+
// aiMcpSources AiMcpSource[]
|
|
37
|
+
// aiWorkflows AiWorkflow[]
|
|
38
|
+
// aiIncidents AiIncident[]
|
|
39
|
+
// aiTimelineEvents AiTimelineEvent[]
|
|
40
|
+
// aiReports AiReport[]
|
|
41
|
+
// aiPreferences AiUserPreferences?
|
|
42
|
+
//
|
|
43
|
+
// 3. NOTIFICATION MODELİ (host tarafından sağlanmalı):
|
|
44
|
+
// Workflow servisi prisma.notification.create() kullanır.
|
|
45
|
+
// Host'unuzda en az şu alanlara sahip bir Notification modeli olmalı:
|
|
46
|
+
//
|
|
47
|
+
// model Notification {
|
|
48
|
+
// id Int @id @default(autoincrement())
|
|
49
|
+
// userId Int @map("user_id")
|
|
50
|
+
// type String
|
|
51
|
+
// title String
|
|
52
|
+
// message String
|
|
53
|
+
// isRead Boolean @default(false) @map("is_read")
|
|
54
|
+
// createdAt DateTime @default(now()) @map("created_at")
|
|
55
|
+
// user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
|
56
|
+
// @@map("notifications")
|
|
57
|
+
// }
|
|
58
|
+
//
|
|
59
|
+
// 4. Migration çalıştırın:
|
|
60
|
+
// npx prisma migrate dev --name add_mega_agent_models
|
|
61
|
+
//
|
|
62
|
+
// 5. Prisma Client'ı yeniden oluşturun:
|
|
63
|
+
// npx prisma generate
|
|
64
|
+
//
|
|
65
|
+
// ── userId OLAN MODELLER (10 doğrudan) ──────────────────────
|
|
66
|
+
// AiMemory, AiMemorySuggestion, AiChat, AiArtifact,
|
|
67
|
+
// AiIncident, AiMcpSource, AiWorkflow, AiReport,
|
|
68
|
+
// AiTimelineEvent, AiUserPreferences
|
|
69
|
+
//
|
|
70
|
+
// ── userId OLMAYAN MODELLER (2 dolaylı) ─────────────────────
|
|
71
|
+
// AiChatMessage (AiChat.userId üzerinden)
|
|
72
|
+
// AiWorkflowExecution (AiWorkflow.userId üzerinden)
|
|
73
|
+
//
|
|
74
|
+
// ============================================================
|
|
75
|
+
|
|
76
|
+
// ── ENUMS ───────────────────────────────────────────────────
|
|
77
|
+
|
|
78
|
+
enum MemoryType {
|
|
79
|
+
INSIGHT @map("insight")
|
|
80
|
+
PATTERN @map("pattern")
|
|
81
|
+
INCIDENT @map("incident")
|
|
82
|
+
REPORT_SUMMARY @map("report_summary")
|
|
83
|
+
USER_PREFERENCE @map("user_preference")
|
|
84
|
+
FACT @map("fact")
|
|
85
|
+
DECISION @map("decision")
|
|
86
|
+
|
|
87
|
+
@@map("memory_type")
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
enum MemoryStatus {
|
|
91
|
+
ACTIVE @map("active")
|
|
92
|
+
DORMANT @map("dormant")
|
|
93
|
+
ARCHIVED @map("archived")
|
|
94
|
+
|
|
95
|
+
@@map("memory_status")
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
enum MemorySourceType {
|
|
99
|
+
CHAT @map("chat")
|
|
100
|
+
AGENT @map("agent")
|
|
101
|
+
USER @map("user_source")
|
|
102
|
+
SYSTEM @map("system")
|
|
103
|
+
|
|
104
|
+
@@map("memory_source_type")
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
enum ChatMode {
|
|
108
|
+
EXPLORE @map("explore")
|
|
109
|
+
GENERATE @map("generate")
|
|
110
|
+
EXECUTE @map("execute")
|
|
111
|
+
AUTOMATE @map("automate")
|
|
112
|
+
|
|
113
|
+
@@map("chat_mode")
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
enum MessageRole {
|
|
117
|
+
USER @map("user_role")
|
|
118
|
+
ASSISTANT @map("assistant")
|
|
119
|
+
SYSTEM @map("system_role")
|
|
120
|
+
|
|
121
|
+
@@map("message_role")
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
enum ArtifactType {
|
|
125
|
+
REPORT @map("report")
|
|
126
|
+
TABLE @map("table")
|
|
127
|
+
CHART @map("chart")
|
|
128
|
+
CODE @map("code")
|
|
129
|
+
IMAGE @map("image")
|
|
130
|
+
DATASET @map("dataset")
|
|
131
|
+
|
|
132
|
+
@@map("artifact_type")
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
enum SourceStatus {
|
|
136
|
+
CONNECTED @map("connected")
|
|
137
|
+
DISCONNECTED @map("disconnected")
|
|
138
|
+
ERROR @map("error")
|
|
139
|
+
PENDING @map("pending")
|
|
140
|
+
|
|
141
|
+
@@map("source_status")
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
enum IncidentSeverity {
|
|
145
|
+
INFO @map("info")
|
|
146
|
+
LOW @map("low")
|
|
147
|
+
MEDIUM @map("medium")
|
|
148
|
+
HIGH @map("high")
|
|
149
|
+
CRITICAL @map("critical")
|
|
150
|
+
|
|
151
|
+
@@map("incident_severity")
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
enum IncidentStatus {
|
|
155
|
+
OPEN @map("open")
|
|
156
|
+
INVESTIGATING @map("investigating")
|
|
157
|
+
RESOLVED @map("resolved")
|
|
158
|
+
IGNORED @map("ignored")
|
|
159
|
+
|
|
160
|
+
@@map("incident_status")
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
enum EventType {
|
|
164
|
+
SIGNAL @map("signal")
|
|
165
|
+
MEMORY @map("memory")
|
|
166
|
+
REPO @map("repo")
|
|
167
|
+
EVENT @map("event")
|
|
168
|
+
LOG @map("log")
|
|
169
|
+
AI_INCIDENT @map("ai_incident")
|
|
170
|
+
WORKFLOW @map("workflow")
|
|
171
|
+
|
|
172
|
+
@@map("event_type")
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
enum EventSeverity {
|
|
176
|
+
SEV_LOW @map("low")
|
|
177
|
+
SEV_MEDIUM @map("medium")
|
|
178
|
+
SEV_HIGH @map("high")
|
|
179
|
+
SEV_CRITICAL @map("critical")
|
|
180
|
+
|
|
181
|
+
@@map("event_severity")
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
enum AgentWorkflowStatus {
|
|
185
|
+
WF_ACTIVE @map("active")
|
|
186
|
+
WF_PAUSED @map("paused")
|
|
187
|
+
WF_ERROR @map("error")
|
|
188
|
+
WF_DISABLED @map("disabled")
|
|
189
|
+
|
|
190
|
+
@@map("agent_workflow_status")
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
enum TriggerType {
|
|
194
|
+
SCHEDULE @map("schedule")
|
|
195
|
+
EVENT_TRIGGER @map("event")
|
|
196
|
+
THRESHOLD @map("threshold")
|
|
197
|
+
MANUAL @map("manual")
|
|
198
|
+
|
|
199
|
+
@@map("trigger_type")
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
enum ExecutionStatus {
|
|
203
|
+
RUNNING @map("running")
|
|
204
|
+
SUCCESS @map("success")
|
|
205
|
+
FAILED @map("failed")
|
|
206
|
+
CANCELLED @map("cancelled")
|
|
207
|
+
|
|
208
|
+
@@map("execution_status")
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
enum ReportType {
|
|
212
|
+
DAILY @map("daily")
|
|
213
|
+
WEEKLY @map("weekly")
|
|
214
|
+
MONTHLY @map("monthly")
|
|
215
|
+
CUSTOM @map("custom")
|
|
216
|
+
|
|
217
|
+
@@map("report_type")
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
// ── AI MODELS ───────────────────────────────────────────────
|
|
221
|
+
|
|
222
|
+
// ── MEMORY SYSTEM ───────────────────────────────────────────
|
|
223
|
+
|
|
224
|
+
model AiMemory {
|
|
225
|
+
id String @id @default(cuid())
|
|
226
|
+
userId Int @map("user_id")
|
|
227
|
+
|
|
228
|
+
type MemoryType
|
|
229
|
+
status MemoryStatus @default(ACTIVE)
|
|
230
|
+
title String @db.VarChar(255)
|
|
231
|
+
content String @db.Text
|
|
232
|
+
summary String? @db.VarChar(500)
|
|
233
|
+
|
|
234
|
+
sourceType MemorySourceType @map("source_type")
|
|
235
|
+
sourceId String? @map("source_id")
|
|
236
|
+
|
|
237
|
+
confidence Float @default(1.0)
|
|
238
|
+
importance Int @default(5)
|
|
239
|
+
qdrantId String? @unique @map("qdrant_id")
|
|
240
|
+
|
|
241
|
+
tags String[] @default([])
|
|
242
|
+
metadata Json?
|
|
243
|
+
|
|
244
|
+
expiresAt DateTime? @map("expires_at")
|
|
245
|
+
lastAccessedAt DateTime? @map("last_accessed_at")
|
|
246
|
+
accessCount Int @default(0) @map("access_count")
|
|
247
|
+
|
|
248
|
+
createdAt DateTime @default(now()) @map("created_at")
|
|
249
|
+
updatedAt DateTime @updatedAt @map("updated_at")
|
|
250
|
+
|
|
251
|
+
// host: add User relation — see integration guide
|
|
252
|
+
chatMessages AiChatMessage[] @relation("MemoryChatMessages")
|
|
253
|
+
artifacts AiArtifact[] @relation("MemoryArtifacts")
|
|
254
|
+
|
|
255
|
+
@@index([userId, type])
|
|
256
|
+
@@index([userId, status])
|
|
257
|
+
@@index([userId, createdAt])
|
|
258
|
+
@@index([status, importance])
|
|
259
|
+
@@map("ai_memories")
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
model AiMemorySuggestion {
|
|
263
|
+
id String @id @default(cuid())
|
|
264
|
+
userId Int @map("user_id")
|
|
265
|
+
|
|
266
|
+
type MemoryType
|
|
267
|
+
title String @db.VarChar(255)
|
|
268
|
+
content String @db.Text
|
|
269
|
+
|
|
270
|
+
sourceType MemorySourceType @map("source_type")
|
|
271
|
+
sourceId String? @map("source_id")
|
|
272
|
+
|
|
273
|
+
status String @default("pending")
|
|
274
|
+
confidence Float @default(0.8)
|
|
275
|
+
|
|
276
|
+
createdAt DateTime @default(now()) @map("created_at")
|
|
277
|
+
resolvedAt DateTime? @map("resolved_at")
|
|
278
|
+
|
|
279
|
+
// host: add User relation — see integration guide
|
|
280
|
+
|
|
281
|
+
@@index([userId, status])
|
|
282
|
+
@@map("ai_memory_suggestions")
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
// ── CHAT SYSTEM ─────────────────────────────────────────────
|
|
286
|
+
|
|
287
|
+
model AiChat {
|
|
288
|
+
id String @id @default(cuid())
|
|
289
|
+
userId Int @map("user_id")
|
|
290
|
+
|
|
291
|
+
title String? @db.VarChar(255)
|
|
292
|
+
mode ChatMode @default(EXPLORE)
|
|
293
|
+
model String @default("claude-opus-4-6")
|
|
294
|
+
temperature Float @default(0.7)
|
|
295
|
+
systemPrompt String? @map("system_prompt") @db.Text
|
|
296
|
+
metadata Json?
|
|
297
|
+
|
|
298
|
+
createdAt DateTime @default(now()) @map("created_at")
|
|
299
|
+
updatedAt DateTime @updatedAt @map("updated_at")
|
|
300
|
+
|
|
301
|
+
// host: add User relation — see integration guide
|
|
302
|
+
messages AiChatMessage[]
|
|
303
|
+
|
|
304
|
+
@@index([userId])
|
|
305
|
+
@@index([createdAt])
|
|
306
|
+
@@index([userId, mode])
|
|
307
|
+
@@map("ai_chats")
|
|
308
|
+
}
|
|
309
|
+
|
|
310
|
+
model AiChatMessage {
|
|
311
|
+
id String @id @default(cuid())
|
|
312
|
+
chatId String @map("chat_id")
|
|
313
|
+
|
|
314
|
+
role MessageRole
|
|
315
|
+
content String @db.Text
|
|
316
|
+
model String?
|
|
317
|
+
tokens Int?
|
|
318
|
+
latencyMs Int? @map("latency_ms")
|
|
319
|
+
|
|
320
|
+
usedMemoryIds String[] @default([]) @map("used_memory_ids")
|
|
321
|
+
|
|
322
|
+
createdAt DateTime @default(now()) @map("created_at")
|
|
323
|
+
|
|
324
|
+
chat AiChat @relation(fields: [chatId], references: [id], onDelete: Cascade)
|
|
325
|
+
memories AiMemory[] @relation("MemoryChatMessages")
|
|
326
|
+
artifacts AiArtifact[] @relation("MessageArtifacts")
|
|
327
|
+
|
|
328
|
+
@@index([chatId])
|
|
329
|
+
@@index([createdAt])
|
|
330
|
+
@@map("ai_chat_messages")
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
// ── ARTIFACT SYSTEM ─────────────────────────────────────────
|
|
334
|
+
|
|
335
|
+
model AiArtifact {
|
|
336
|
+
id String @id @default(cuid())
|
|
337
|
+
userId Int @map("user_id")
|
|
338
|
+
|
|
339
|
+
type ArtifactType
|
|
340
|
+
title String @db.VarChar(255)
|
|
341
|
+
description String? @db.Text
|
|
342
|
+
content Json
|
|
343
|
+
|
|
344
|
+
sourceType String? @map("source_type")
|
|
345
|
+
sourceId String? @map("source_id")
|
|
346
|
+
|
|
347
|
+
tags String[] @default([])
|
|
348
|
+
metadata Json?
|
|
349
|
+
|
|
350
|
+
createdAt DateTime @default(now()) @map("created_at")
|
|
351
|
+
updatedAt DateTime @updatedAt @map("updated_at")
|
|
352
|
+
|
|
353
|
+
// host: add User relation — see integration guide
|
|
354
|
+
memories AiMemory[] @relation("MemoryArtifacts")
|
|
355
|
+
chatMessages AiChatMessage[] @relation("MessageArtifacts")
|
|
356
|
+
reports AiReport[]
|
|
357
|
+
|
|
358
|
+
@@index([userId, type])
|
|
359
|
+
@@index([createdAt])
|
|
360
|
+
@@map("ai_artifacts")
|
|
361
|
+
}
|
|
362
|
+
|
|
363
|
+
// ── INCIDENT SYSTEM ─────────────────────────────────────────
|
|
364
|
+
|
|
365
|
+
model AiIncident {
|
|
366
|
+
id String @id @default(uuid())
|
|
367
|
+
userId Int @map("user_id")
|
|
368
|
+
fingerprint String
|
|
369
|
+
title String @db.VarChar(255)
|
|
370
|
+
description String? @db.Text
|
|
371
|
+
severity IncidentSeverity
|
|
372
|
+
status IncidentStatus @default(OPEN)
|
|
373
|
+
firstSeenAt DateTime @map("first_seen_at")
|
|
374
|
+
lastSeenAt DateTime @map("last_seen_at")
|
|
375
|
+
resolvedAt DateTime? @map("resolved_at")
|
|
376
|
+
occurrences Int @default(1)
|
|
377
|
+
evidence Json
|
|
378
|
+
relatedMemories Json @map("related_memories")
|
|
379
|
+
metadata Json?
|
|
380
|
+
createdAt DateTime @default(now()) @map("created_at")
|
|
381
|
+
updatedAt DateTime @updatedAt @map("updated_at")
|
|
382
|
+
|
|
383
|
+
// host: add User relation — see integration guide
|
|
384
|
+
|
|
385
|
+
@@unique([userId, fingerprint])
|
|
386
|
+
@@index([userId, status])
|
|
387
|
+
@@index([userId, severity])
|
|
388
|
+
@@index([status])
|
|
389
|
+
@@index([lastSeenAt])
|
|
390
|
+
@@map("ai_incidents")
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
// ── MCP SOURCE SYSTEM ───────────────────────────────────────
|
|
394
|
+
|
|
395
|
+
model AiMcpSource {
|
|
396
|
+
id String @id @default(cuid())
|
|
397
|
+
userId Int @map("user_id")
|
|
398
|
+
|
|
399
|
+
name String @db.VarChar(255)
|
|
400
|
+
type String
|
|
401
|
+
description String? @db.Text
|
|
402
|
+
status SourceStatus @default(PENDING)
|
|
403
|
+
endpoint String?
|
|
404
|
+
|
|
405
|
+
credentials Json?
|
|
406
|
+
lastSyncAt DateTime? @map("last_sync_at")
|
|
407
|
+
metadata Json?
|
|
408
|
+
|
|
409
|
+
createdAt DateTime @default(now()) @map("created_at")
|
|
410
|
+
updatedAt DateTime @updatedAt @map("updated_at")
|
|
411
|
+
|
|
412
|
+
// host: add User relation — see integration guide
|
|
413
|
+
|
|
414
|
+
@@index([userId])
|
|
415
|
+
@@index([type])
|
|
416
|
+
@@map("ai_mcp_sources")
|
|
417
|
+
}
|
|
418
|
+
|
|
419
|
+
// ── WORKFLOW SYSTEM ─────────────────────────────────────────
|
|
420
|
+
|
|
421
|
+
model AiWorkflow {
|
|
422
|
+
id String @id @default(cuid())
|
|
423
|
+
userId Int @map("user_id")
|
|
424
|
+
|
|
425
|
+
name String @db.VarChar(255)
|
|
426
|
+
description String? @db.Text
|
|
427
|
+
status AgentWorkflowStatus @default(WF_ACTIVE)
|
|
428
|
+
|
|
429
|
+
triggerType TriggerType @map("trigger_type")
|
|
430
|
+
triggerConfig Json @map("trigger_config")
|
|
431
|
+
condition String? @db.Text
|
|
432
|
+
|
|
433
|
+
actions Json
|
|
434
|
+
|
|
435
|
+
lastRunId String? @map("last_run_id")
|
|
436
|
+
lastRunAt DateTime? @map("last_run_at")
|
|
437
|
+
lastRunStatus ExecutionStatus? @map("last_run_status")
|
|
438
|
+
|
|
439
|
+
createdAt DateTime @default(now()) @map("created_at")
|
|
440
|
+
updatedAt DateTime @updatedAt @map("updated_at")
|
|
441
|
+
|
|
442
|
+
// host: add User relation — see integration guide
|
|
443
|
+
executions AiWorkflowExecution[]
|
|
444
|
+
|
|
445
|
+
@@index([userId])
|
|
446
|
+
@@index([status])
|
|
447
|
+
@@index([triggerType])
|
|
448
|
+
@@map("ai_workflows")
|
|
449
|
+
}
|
|
450
|
+
|
|
451
|
+
model AiWorkflowExecution {
|
|
452
|
+
id String @id @default(cuid())
|
|
453
|
+
workflowId String @map("workflow_id")
|
|
454
|
+
|
|
455
|
+
status ExecutionStatus
|
|
456
|
+
startedAt DateTime @default(now()) @map("started_at")
|
|
457
|
+
completedAt DateTime? @map("completed_at")
|
|
458
|
+
duration Int?
|
|
459
|
+
|
|
460
|
+
output String? @db.Text
|
|
461
|
+
error String? @db.Text
|
|
462
|
+
triggerData Json? @map("trigger_data")
|
|
463
|
+
actionResults Json? @map("action_results")
|
|
464
|
+
|
|
465
|
+
createdAt DateTime @default(now()) @map("created_at")
|
|
466
|
+
|
|
467
|
+
workflow AiWorkflow @relation(fields: [workflowId], references: [id], onDelete: Cascade)
|
|
468
|
+
|
|
469
|
+
@@index([workflowId])
|
|
470
|
+
@@index([status])
|
|
471
|
+
@@index([startedAt])
|
|
472
|
+
@@map("ai_workflow_executions")
|
|
473
|
+
}
|
|
474
|
+
|
|
475
|
+
// ── REPORT SYSTEM ───────────────────────────────────────────
|
|
476
|
+
|
|
477
|
+
model AiReport {
|
|
478
|
+
id String @id @default(uuid())
|
|
479
|
+
userId Int @map("user_id")
|
|
480
|
+
type ReportType
|
|
481
|
+
title String @db.VarChar(255)
|
|
482
|
+
date DateTime
|
|
483
|
+
summary String @db.Text
|
|
484
|
+
highlights Json
|
|
485
|
+
metrics Json?
|
|
486
|
+
artifactId String? @map("artifact_id")
|
|
487
|
+
metadata Json?
|
|
488
|
+
createdAt DateTime @default(now()) @map("created_at")
|
|
489
|
+
updatedAt DateTime @updatedAt @map("updated_at")
|
|
490
|
+
|
|
491
|
+
// host: add User relation — see integration guide
|
|
492
|
+
artifact AiArtifact? @relation(fields: [artifactId], references: [id])
|
|
493
|
+
|
|
494
|
+
@@index([userId])
|
|
495
|
+
@@index([type])
|
|
496
|
+
@@index([date])
|
|
497
|
+
@@index([userId, type, date])
|
|
498
|
+
@@map("ai_reports")
|
|
499
|
+
}
|
|
500
|
+
|
|
501
|
+
// ── TIMELINE SYSTEM ─────────────────────────────────────────
|
|
502
|
+
|
|
503
|
+
model AiTimelineEvent {
|
|
504
|
+
id String @id @default(uuid())
|
|
505
|
+
userId Int @map("user_id")
|
|
506
|
+
type EventType
|
|
507
|
+
title String @db.VarChar(255)
|
|
508
|
+
details String? @db.Text
|
|
509
|
+
source String @db.VarChar(100)
|
|
510
|
+
sourceId String? @map("source_id") @db.VarChar(255)
|
|
511
|
+
severity EventSeverity?
|
|
512
|
+
metadata Json?
|
|
513
|
+
occurredAt DateTime @map("occurred_at")
|
|
514
|
+
createdAt DateTime @default(now()) @map("created_at")
|
|
515
|
+
|
|
516
|
+
// host: add User relation — see integration guide
|
|
517
|
+
|
|
518
|
+
@@index([userId])
|
|
519
|
+
@@index([occurredAt])
|
|
520
|
+
@@index([type])
|
|
521
|
+
@@index([userId, occurredAt])
|
|
522
|
+
@@index([userId, type])
|
|
523
|
+
@@map("ai_timeline_events")
|
|
524
|
+
}
|
|
525
|
+
|
|
526
|
+
// ── USER PREFERENCES ────────────────────────────────────────
|
|
527
|
+
|
|
528
|
+
model AiUserPreferences {
|
|
529
|
+
id String @id @default(uuid())
|
|
530
|
+
userId Int @unique @map("user_id")
|
|
531
|
+
|
|
532
|
+
// AI Settings
|
|
533
|
+
defaultModel String @default("auto") @map("default_model")
|
|
534
|
+
defaultToolsEnabled Boolean @default(true) @map("default_tools_enabled")
|
|
535
|
+
defaultTemperature Float @default(0.7) @map("default_temperature")
|
|
536
|
+
|
|
537
|
+
// Memory Settings
|
|
538
|
+
memoryRetentionDays Int @default(90) @map("memory_retention_days")
|
|
539
|
+
autoArchiveMemory Boolean @default(true) @map("auto_archive_memory")
|
|
540
|
+
|
|
541
|
+
// Notification Settings
|
|
542
|
+
incidentAlerts Boolean @default(true) @map("incident_alerts")
|
|
543
|
+
reportDelivery Boolean @default(true) @map("report_delivery")
|
|
544
|
+
|
|
545
|
+
createdAt DateTime @default(now()) @map("created_at")
|
|
546
|
+
updatedAt DateTime @updatedAt @map("updated_at")
|
|
547
|
+
|
|
548
|
+
// host: add User relation — see integration guide
|
|
549
|
+
|
|
550
|
+
@@map("ai_user_preferences")
|
|
551
|
+
}
|