@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,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Structured Response Types
|
|
3
|
+
* Defines the rich response format for the Agent Workbench
|
|
4
|
+
*/
|
|
5
|
+
export type ResponseType = 'answer' | 'table' | 'chart' | 'agent_created' | 'report' | 'error';
|
|
6
|
+
export type QualitySignal = 'strong' | 'moderate' | 'weak';
|
|
7
|
+
export type SourceType = 'memory' | 'database' | 'api' | 'tool' | 'document';
|
|
8
|
+
export interface StructuredResponse {
|
|
9
|
+
/** Message type determines frontend card rendering */
|
|
10
|
+
type: ResponseType;
|
|
11
|
+
/** Markdown content (always present) */
|
|
12
|
+
content: string;
|
|
13
|
+
/** Type-specific structured data */
|
|
14
|
+
data?: TableData | ChartData | AgentData | Record<string, unknown>;
|
|
15
|
+
/** Response quality assessment */
|
|
16
|
+
quality?: QualityAssessment;
|
|
17
|
+
/** Sources used to generate this response */
|
|
18
|
+
sources?: ResponseSource[];
|
|
19
|
+
/** Tools called during generation */
|
|
20
|
+
toolsUsed?: ToolUsage[];
|
|
21
|
+
/** Memory operations */
|
|
22
|
+
memory?: MemoryAction;
|
|
23
|
+
/** Suggested artifact to save */
|
|
24
|
+
artifact?: SuggestedArtifact;
|
|
25
|
+
}
|
|
26
|
+
export interface TableData {
|
|
27
|
+
headers: string[];
|
|
28
|
+
rows: (string | number | null)[][];
|
|
29
|
+
totalRows?: number;
|
|
30
|
+
}
|
|
31
|
+
export interface ChartData {
|
|
32
|
+
chartType: 'bar' | 'line' | 'pie' | 'area';
|
|
33
|
+
labels: string[];
|
|
34
|
+
datasets: Array<{
|
|
35
|
+
label: string;
|
|
36
|
+
data: number[];
|
|
37
|
+
color?: string;
|
|
38
|
+
}>;
|
|
39
|
+
}
|
|
40
|
+
export interface AgentData {
|
|
41
|
+
agentType: string;
|
|
42
|
+
description: string;
|
|
43
|
+
trigger?: string;
|
|
44
|
+
condition?: string;
|
|
45
|
+
action?: string;
|
|
46
|
+
}
|
|
47
|
+
export interface QualityAssessment {
|
|
48
|
+
signal: QualitySignal;
|
|
49
|
+
confidence: number;
|
|
50
|
+
reasoning?: string;
|
|
51
|
+
}
|
|
52
|
+
export interface ResponseSource {
|
|
53
|
+
name: string;
|
|
54
|
+
type: SourceType;
|
|
55
|
+
relevance: number;
|
|
56
|
+
}
|
|
57
|
+
export interface ToolUsage {
|
|
58
|
+
name: string;
|
|
59
|
+
description: string;
|
|
60
|
+
executionTimeMs?: number;
|
|
61
|
+
}
|
|
62
|
+
export interface MemoryAction {
|
|
63
|
+
saved?: boolean;
|
|
64
|
+
savedContent?: string;
|
|
65
|
+
referencedIds?: string[];
|
|
66
|
+
}
|
|
67
|
+
export interface SuggestedArtifact {
|
|
68
|
+
suggestedTitle: string;
|
|
69
|
+
type: 'TABLE' | 'CHART' | 'REPORT' | 'CODE' | 'DATASET';
|
|
70
|
+
data: unknown;
|
|
71
|
+
}
|
|
72
|
+
export interface ResponseParseContext {
|
|
73
|
+
memoriesUsed: Array<{
|
|
74
|
+
id: string;
|
|
75
|
+
title: string;
|
|
76
|
+
score: number;
|
|
77
|
+
}>;
|
|
78
|
+
toolsCalled: Array<{
|
|
79
|
+
name: string;
|
|
80
|
+
durationMs: number;
|
|
81
|
+
}>;
|
|
82
|
+
modelUsed: string;
|
|
83
|
+
tokens: {
|
|
84
|
+
prompt: number;
|
|
85
|
+
completion: number;
|
|
86
|
+
total: number;
|
|
87
|
+
};
|
|
88
|
+
latencyMs: number;
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=response.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"response.types.d.ts","sourceRoot":"","sources":["../../src/chat/response.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"response.types.js","sourceRoot":"","sources":["../../src/chat/response.types.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Custom error classes for MegaAgent services
|
|
3
|
+
*/
|
|
4
|
+
export declare class MegaAgentError extends Error {
|
|
5
|
+
readonly code: string;
|
|
6
|
+
readonly statusCode: number;
|
|
7
|
+
readonly details?: Record<string, unknown> | undefined;
|
|
8
|
+
constructor(message: string, code: string, statusCode?: number, details?: Record<string, unknown> | undefined);
|
|
9
|
+
toJSON(): {
|
|
10
|
+
error: string;
|
|
11
|
+
message: string;
|
|
12
|
+
details: Record<string, unknown> | undefined;
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
export declare class MemoryNotFoundError extends MegaAgentError {
|
|
16
|
+
constructor(memoryId: string);
|
|
17
|
+
}
|
|
18
|
+
export declare class MemorySearchError extends MegaAgentError {
|
|
19
|
+
constructor(message: string, details?: Record<string, unknown>);
|
|
20
|
+
}
|
|
21
|
+
export declare class EmbeddingError extends MegaAgentError {
|
|
22
|
+
constructor(message: string);
|
|
23
|
+
}
|
|
24
|
+
export declare class ChatNotFoundError extends MegaAgentError {
|
|
25
|
+
constructor(chatId: string);
|
|
26
|
+
}
|
|
27
|
+
export declare class ChatAccessDeniedError extends MegaAgentError {
|
|
28
|
+
constructor(chatId: string);
|
|
29
|
+
}
|
|
30
|
+
export declare class MessageTooLongError extends MegaAgentError {
|
|
31
|
+
constructor(maxLength: number);
|
|
32
|
+
}
|
|
33
|
+
export declare class LLMError extends MegaAgentError {
|
|
34
|
+
constructor(provider: string, message: string);
|
|
35
|
+
}
|
|
36
|
+
export declare class LLMRateLimitError extends MegaAgentError {
|
|
37
|
+
constructor(provider: string, retryAfter?: number);
|
|
38
|
+
}
|
|
39
|
+
export declare class LLMContextTooLongError extends MegaAgentError {
|
|
40
|
+
constructor(provider: string, maxTokens: number);
|
|
41
|
+
}
|
|
42
|
+
export declare class ArtifactNotFoundError extends MegaAgentError {
|
|
43
|
+
constructor(artifactId: string);
|
|
44
|
+
}
|
|
45
|
+
export declare class ArtifactValidationError extends MegaAgentError {
|
|
46
|
+
constructor(errors: string[]);
|
|
47
|
+
}
|
|
48
|
+
export declare class McpConnectionError extends MegaAgentError {
|
|
49
|
+
constructor(serverId: string, message: string);
|
|
50
|
+
}
|
|
51
|
+
export declare class McpToolError extends MegaAgentError {
|
|
52
|
+
constructor(toolName: string, message: string);
|
|
53
|
+
}
|
|
54
|
+
export declare class QdrantError extends MegaAgentError {
|
|
55
|
+
constructor(message: string);
|
|
56
|
+
}
|
|
57
|
+
export declare class QdrantConnectionError extends MegaAgentError {
|
|
58
|
+
constructor();
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/common/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,qBAAa,cAAe,SAAQ,KAAK;aAGrB,IAAI,EAAE,MAAM;aACZ,UAAU,EAAE,MAAM;aAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAHjD,OAAO,EAAE,MAAM,EACC,IAAI,EAAE,MAAM,EACZ,UAAU,GAAE,MAAY,EACxB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA;IAOnD,MAAM;;;;;CAOP;AAGD,qBAAa,mBAAoB,SAAQ,cAAc;gBACzC,QAAQ,EAAE,MAAM;CAG7B;AAED,qBAAa,iBAAkB,SAAQ,cAAc;gBACvC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAG/D;AAED,qBAAa,cAAe,SAAQ,cAAc;gBACpC,OAAO,EAAE,MAAM;CAG5B;AAGD,qBAAa,iBAAkB,SAAQ,cAAc;gBACvC,MAAM,EAAE,MAAM;CAG3B;AAED,qBAAa,qBAAsB,SAAQ,cAAc;gBAC3C,MAAM,EAAE,MAAM;CAG3B;AAED,qBAAa,mBAAoB,SAAQ,cAAc;gBACzC,SAAS,EAAE,MAAM;CAG9B;AAGD,qBAAa,QAAS,SAAQ,cAAc;gBAC9B,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAG9C;AAED,qBAAa,iBAAkB,SAAQ,cAAc;gBACvC,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM;CAQlD;AAED,qBAAa,sBAAuB,SAAQ,cAAc;gBAC5C,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;CAQhD;AAGD,qBAAa,qBAAsB,SAAQ,cAAc;gBAC3C,UAAU,EAAE,MAAM;CAG/B;AAED,qBAAa,uBAAwB,SAAQ,cAAc;gBAC7C,MAAM,EAAE,MAAM,EAAE;CAG7B;AAGD,qBAAa,kBAAmB,SAAQ,cAAc;gBACxC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAG9C;AAED,qBAAa,YAAa,SAAQ,cAAc;gBAClC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAG9C;AAGD,qBAAa,WAAY,SAAQ,cAAc;gBACjC,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,qBAAsB,SAAQ,cAAc;;CAIxD"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Custom error classes for MegaAgent services
|
|
3
|
+
*/
|
|
4
|
+
export class MegaAgentError extends Error {
|
|
5
|
+
code;
|
|
6
|
+
statusCode;
|
|
7
|
+
details;
|
|
8
|
+
constructor(message, code, statusCode = 500, details) {
|
|
9
|
+
super(message);
|
|
10
|
+
this.code = code;
|
|
11
|
+
this.statusCode = statusCode;
|
|
12
|
+
this.details = details;
|
|
13
|
+
this.name = 'MegaAgentError';
|
|
14
|
+
Error.captureStackTrace(this, this.constructor);
|
|
15
|
+
}
|
|
16
|
+
toJSON() {
|
|
17
|
+
return {
|
|
18
|
+
error: this.code,
|
|
19
|
+
message: this.message,
|
|
20
|
+
details: this.details,
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
// Memory Errors
|
|
25
|
+
export class MemoryNotFoundError extends MegaAgentError {
|
|
26
|
+
constructor(memoryId) {
|
|
27
|
+
super(`Memory not found: ${memoryId}`, 'MEMORY_NOT_FOUND', 404);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
export class MemorySearchError extends MegaAgentError {
|
|
31
|
+
constructor(message, details) {
|
|
32
|
+
super(message, 'MEMORY_SEARCH_ERROR', 500, details);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
export class EmbeddingError extends MegaAgentError {
|
|
36
|
+
constructor(message) {
|
|
37
|
+
super(message, 'EMBEDDING_ERROR', 500);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
// Chat Errors
|
|
41
|
+
export class ChatNotFoundError extends MegaAgentError {
|
|
42
|
+
constructor(chatId) {
|
|
43
|
+
super(`Chat not found: ${chatId}`, 'CHAT_NOT_FOUND', 404);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
export class ChatAccessDeniedError extends MegaAgentError {
|
|
47
|
+
constructor(chatId) {
|
|
48
|
+
super(`Access denied to chat: ${chatId}`, 'CHAT_ACCESS_DENIED', 403);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
export class MessageTooLongError extends MegaAgentError {
|
|
52
|
+
constructor(maxLength) {
|
|
53
|
+
super(`Message exceeds maximum length of ${maxLength}`, 'MESSAGE_TOO_LONG', 400);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
// LLM Errors
|
|
57
|
+
export class LLMError extends MegaAgentError {
|
|
58
|
+
constructor(provider, message) {
|
|
59
|
+
super(`LLM error (${provider}): ${message}`, 'LLM_ERROR', 502);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
export class LLMRateLimitError extends MegaAgentError {
|
|
63
|
+
constructor(provider, retryAfter) {
|
|
64
|
+
super(`LLM rate limit exceeded (${provider})`, 'LLM_RATE_LIMIT', 429, retryAfter ? { retryAfter } : undefined);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
export class LLMContextTooLongError extends MegaAgentError {
|
|
68
|
+
constructor(provider, maxTokens) {
|
|
69
|
+
super(`Context exceeds maximum tokens (${maxTokens})`, 'LLM_CONTEXT_TOO_LONG', 400, { maxTokens, provider });
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
// Artifact Errors
|
|
73
|
+
export class ArtifactNotFoundError extends MegaAgentError {
|
|
74
|
+
constructor(artifactId) {
|
|
75
|
+
super(`Artifact not found: ${artifactId}`, 'ARTIFACT_NOT_FOUND', 404);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
export class ArtifactValidationError extends MegaAgentError {
|
|
79
|
+
constructor(errors) {
|
|
80
|
+
super('Artifact validation failed', 'ARTIFACT_VALIDATION_ERROR', 400, { errors });
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
// MCP Errors
|
|
84
|
+
export class McpConnectionError extends MegaAgentError {
|
|
85
|
+
constructor(serverId, message) {
|
|
86
|
+
super(`MCP connection error (${serverId}): ${message}`, 'MCP_CONNECTION_ERROR', 502);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
export class McpToolError extends MegaAgentError {
|
|
90
|
+
constructor(toolName, message) {
|
|
91
|
+
super(`MCP tool error (${toolName}): ${message}`, 'MCP_TOOL_ERROR', 500);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
// Qdrant Errors
|
|
95
|
+
export class QdrantError extends MegaAgentError {
|
|
96
|
+
constructor(message) {
|
|
97
|
+
super(`Qdrant error: ${message}`, 'QDRANT_ERROR', 500);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
export class QdrantConnectionError extends MegaAgentError {
|
|
101
|
+
constructor() {
|
|
102
|
+
super('Cannot connect to Qdrant', 'QDRANT_CONNECTION_ERROR', 503);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/common/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Retry utilities for MegaAgent services
|
|
3
|
+
*/
|
|
4
|
+
export interface RetryOptions {
|
|
5
|
+
maxRetries?: number;
|
|
6
|
+
initialDelayMs?: number;
|
|
7
|
+
maxDelayMs?: number;
|
|
8
|
+
backoffMultiplier?: number;
|
|
9
|
+
retryableErrors?: string[];
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Executes a function with retry logic and exponential backoff
|
|
13
|
+
*/
|
|
14
|
+
export declare function withRetry<T>(fn: () => Promise<T>, options?: RetryOptions): Promise<T>;
|
|
15
|
+
/**
|
|
16
|
+
* Specific retry wrapper for LLM calls
|
|
17
|
+
*/
|
|
18
|
+
export declare function withLLMRetry<T>(fn: () => Promise<T>): Promise<T>;
|
|
19
|
+
/**
|
|
20
|
+
* Specific retry wrapper for Qdrant calls
|
|
21
|
+
*/
|
|
22
|
+
export declare function withQdrantRetry<T>(fn: () => Promise<T>): Promise<T>;
|
|
23
|
+
//# sourceMappingURL=retry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../src/common/retry.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,YAAY;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B;AAUD;;GAEG;AACH,wBAAsB,SAAS,CAAC,CAAC,EAC/B,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,CAAC,CAAC,CA6BZ;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAMtE;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAMzE"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Retry utilities for MegaAgent services
|
|
3
|
+
*/
|
|
4
|
+
const DEFAULT_OPTIONS = {
|
|
5
|
+
maxRetries: 3,
|
|
6
|
+
initialDelayMs: 1000,
|
|
7
|
+
maxDelayMs: 30000,
|
|
8
|
+
backoffMultiplier: 2,
|
|
9
|
+
retryableErrors: ['ECONNRESET', 'ETIMEDOUT', 'ECONNREFUSED', 'rate_limit'],
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Executes a function with retry logic and exponential backoff
|
|
13
|
+
*/
|
|
14
|
+
export async function withRetry(fn, options) {
|
|
15
|
+
const opts = { ...DEFAULT_OPTIONS, ...options };
|
|
16
|
+
let lastError = null;
|
|
17
|
+
let delay = opts.initialDelayMs;
|
|
18
|
+
for (let attempt = 0; attempt <= opts.maxRetries; attempt++) {
|
|
19
|
+
try {
|
|
20
|
+
return await fn();
|
|
21
|
+
}
|
|
22
|
+
catch (error) {
|
|
23
|
+
lastError = error;
|
|
24
|
+
// Check if error is retryable
|
|
25
|
+
const isRetryable = opts.retryableErrors.some(e => lastError?.message?.includes(e) || lastError?.name?.includes(e));
|
|
26
|
+
if (!isRetryable || attempt === opts.maxRetries) {
|
|
27
|
+
throw error;
|
|
28
|
+
}
|
|
29
|
+
// Wait before retry
|
|
30
|
+
await new Promise(resolve => setTimeout(resolve, delay));
|
|
31
|
+
// Increase delay with exponential backoff
|
|
32
|
+
delay = Math.min(delay * opts.backoffMultiplier, opts.maxDelayMs);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
throw lastError;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Specific retry wrapper for LLM calls
|
|
39
|
+
*/
|
|
40
|
+
export async function withLLMRetry(fn) {
|
|
41
|
+
return withRetry(fn, {
|
|
42
|
+
maxRetries: 3,
|
|
43
|
+
initialDelayMs: 2000,
|
|
44
|
+
retryableErrors: ['rate_limit', 'overloaded', 'timeout', '529', '503'],
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Specific retry wrapper for Qdrant calls
|
|
49
|
+
*/
|
|
50
|
+
export async function withQdrantRetry(fn) {
|
|
51
|
+
return withRetry(fn, {
|
|
52
|
+
maxRetries: 2,
|
|
53
|
+
initialDelayMs: 500,
|
|
54
|
+
retryableErrors: ['ECONNRESET', 'ETIMEDOUT'],
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=retry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retry.js","sourceRoot":"","sources":["../../src/common/retry.ts"],"names":[],"mappings":"AAAA;;GAEG;AAUH,MAAM,eAAe,GAA2B;IAC9C,UAAU,EAAE,CAAC;IACb,cAAc,EAAE,IAAI;IACpB,UAAU,EAAE,KAAK;IACjB,iBAAiB,EAAE,CAAC;IACpB,eAAe,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,CAAC;CAC3E,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,EAAoB,EACpB,OAAsB;IAEtB,MAAM,IAAI,GAAG,EAAE,GAAG,eAAe,EAAE,GAAG,OAAO,EAAE,CAAC;IAChD,IAAI,SAAS,GAAiB,IAAI,CAAC;IACnC,IAAI,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC;IAEhC,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC;QAC5D,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,EAAE,CAAC;QACpB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,SAAS,GAAG,KAAc,CAAC;YAE3B,8BAA8B;YAC9B,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAC3C,CAAC,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CACrE,CAAC;YAEF,IAAI,CAAC,WAAW,IAAI,OAAO,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChD,MAAM,KAAK,CAAC;YACd,CAAC;YAED,oBAAoB;YACpB,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;YAEzD,0CAA0C;YAC1C,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED,MAAM,SAAS,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAI,EAAoB;IACxD,OAAO,SAAS,CAAC,EAAE,EAAE;QACnB,UAAU,EAAE,CAAC;QACb,cAAc,EAAE,IAAI;QACpB,eAAe,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC;KACvE,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAI,EAAoB;IAC3D,OAAO,SAAS,CAAC,EAAE,EAAE;QACnB,UAAU,EAAE,CAAC;QACb,cAAc,EAAE,GAAG;QACnB,eAAe,EAAE,CAAC,YAAY,EAAE,WAAW,CAAC;KAC7C,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* createMegaAgent() Factory
|
|
3
|
+
* Single entry point for initializing the entire Mega Agent stack.
|
|
4
|
+
* Host passes explicit config — no environment variable reading inside.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```typescript
|
|
8
|
+
* const agent = await createMegaAgent({
|
|
9
|
+
* prisma,
|
|
10
|
+
* logger,
|
|
11
|
+
* llm: { providers: [{ provider: 'anthropic', apiKey: '...', defaultModel: 'claude-sonnet-4-20250514' }] },
|
|
12
|
+
* memory: {
|
|
13
|
+
* embedding: { apiKey: '...', provider: 'openai' },
|
|
14
|
+
* qdrant: { host: 'localhost', port: 6333 },
|
|
15
|
+
* },
|
|
16
|
+
* });
|
|
17
|
+
*
|
|
18
|
+
* registerDomainTools(); // host-specific tools
|
|
19
|
+
* app.use('/api/chat', agent.createChatRouter(authMiddleware));
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* **Warning:** Calling this function more than once will overwrite global
|
|
23
|
+
* service state (all services use module-level singletons).
|
|
24
|
+
*/
|
|
25
|
+
import type { Router } from 'express';
|
|
26
|
+
import type { Prisma, PrismaClient } from '@prisma/client';
|
|
27
|
+
import type { LLMProviderConfig } from './llm/llm.types.js';
|
|
28
|
+
import type { EmbeddingProvider } from './embedding/embedding.types.js';
|
|
29
|
+
import type { MegaAgentPromptOptions } from './chat/prompts/system.prompts.js';
|
|
30
|
+
import type { AuthMiddleware } from './http/chat.routes.js';
|
|
31
|
+
import { LLMService } from './llm/index.js';
|
|
32
|
+
import { EmbeddingService } from './embedding/index.js';
|
|
33
|
+
import { QdrantService } from './qdrant/index.js';
|
|
34
|
+
import { MemoryService } from './memory/index.js';
|
|
35
|
+
import { ChatService } from './chat/chat.service.js';
|
|
36
|
+
/** Logger interface used by all services */
|
|
37
|
+
export interface LoggerLike {
|
|
38
|
+
info(message: string, meta?: object): void;
|
|
39
|
+
error(message: string, meta?: object): void;
|
|
40
|
+
warn(message: string, meta?: object): void;
|
|
41
|
+
debug(message: string, meta?: object): void;
|
|
42
|
+
}
|
|
43
|
+
/** Memory sub-system config (embedding + vector DB) */
|
|
44
|
+
export interface MegaAgentMemoryConfig {
|
|
45
|
+
embedding: {
|
|
46
|
+
apiKey: string;
|
|
47
|
+
provider?: EmbeddingProvider;
|
|
48
|
+
defaultModel?: string;
|
|
49
|
+
};
|
|
50
|
+
qdrant: {
|
|
51
|
+
host: string;
|
|
52
|
+
port: number;
|
|
53
|
+
apiKey?: string;
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
/** Top-level factory config */
|
|
57
|
+
export interface MegaAgentConfig {
|
|
58
|
+
/** Prisma client instance */
|
|
59
|
+
prisma: Prisma.TransactionClient | PrismaClient;
|
|
60
|
+
/** Logger instance */
|
|
61
|
+
logger: LoggerLike;
|
|
62
|
+
/** LLM provider configurations (at least one required) */
|
|
63
|
+
llm: {
|
|
64
|
+
providers: LLMProviderConfig[];
|
|
65
|
+
};
|
|
66
|
+
/** Memory sub-system — omit to disable memory */
|
|
67
|
+
memory?: MegaAgentMemoryConfig;
|
|
68
|
+
/** Agent identity for system prompt */
|
|
69
|
+
agent?: MegaAgentPromptOptions;
|
|
70
|
+
}
|
|
71
|
+
/** Service instances exposed to the host */
|
|
72
|
+
export interface MegaAgentServices {
|
|
73
|
+
chat: ChatService;
|
|
74
|
+
llm: LLMService;
|
|
75
|
+
memory: MemoryService | null;
|
|
76
|
+
embedding: EmbeddingService | null;
|
|
77
|
+
qdrant: QdrantService | null;
|
|
78
|
+
}
|
|
79
|
+
/** The initialized Mega Agent */
|
|
80
|
+
export interface MegaAgent {
|
|
81
|
+
/** Initialized service instances */
|
|
82
|
+
services: MegaAgentServices;
|
|
83
|
+
/** Agent prompt defaults, passed through from config */
|
|
84
|
+
promptOptions: MegaAgentPromptOptions;
|
|
85
|
+
/** Create an Express router for /api/chat endpoints */
|
|
86
|
+
createChatRouter(authMiddleware: AuthMiddleware): Router;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Initialize the full Mega Agent stack and return a configured agent.
|
|
90
|
+
*
|
|
91
|
+
* Init order:
|
|
92
|
+
* 1. LLM
|
|
93
|
+
* 2. Embedding + Qdrant (if memory config provided)
|
|
94
|
+
* 3. Memory (if embedding + qdrant succeeded)
|
|
95
|
+
* 4. Core tools (if memory available)
|
|
96
|
+
* 5. Workflow + Incident + Artifact
|
|
97
|
+
* 6. Chat + ChatMemoryIntegration
|
|
98
|
+
*/
|
|
99
|
+
export declare function createMegaAgent(config: MegaAgentConfig): Promise<MegaAgent>;
|
|
100
|
+
//# sourceMappingURL=create-mega-agent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-mega-agent.d.ts","sourceRoot":"","sources":["../src/create-mega-agent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAG5D,OAAO,EAAkB,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAwB,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,EAAqB,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAqB,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAmB,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAgBtE,4CAA4C;AAC5C,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7C;AAED,uDAAuD;AACvD,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE;QACT,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,iBAAiB,CAAC;QAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED,+BAA+B;AAC/B,MAAM,WAAW,eAAe;IAC9B,6BAA6B;IAC7B,MAAM,EAAE,MAAM,CAAC,iBAAiB,GAAG,YAAY,CAAC;IAChD,sBAAsB;IACtB,MAAM,EAAE,UAAU,CAAC;IACnB,0DAA0D;IAC1D,GAAG,EAAE;QACH,SAAS,EAAE,iBAAiB,EAAE,CAAC;KAChC,CAAC;IACF,iDAAiD;IACjD,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,uCAAuC;IACvC,KAAK,CAAC,EAAE,sBAAsB,CAAC;CAChC;AAID,4CAA4C;AAC5C,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,WAAW,CAAC;IAClB,GAAG,EAAE,UAAU,CAAC;IAChB,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACnC,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC;CAC9B;AAED,iCAAiC;AACjC,MAAM,WAAW,SAAS;IACxB,oCAAoC;IACpC,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,wDAAwD;IACxD,aAAa,EAAE,sBAAsB,CAAC;IACtC,uDAAuD;IACvD,gBAAgB,CAAC,cAAc,EAAE,cAAc,GAAG,MAAM,CAAC;CAC1D;AAID;;;;;;;;;;GAUG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC,CAiHjF"}
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* createMegaAgent() Factory
|
|
3
|
+
* Single entry point for initializing the entire Mega Agent stack.
|
|
4
|
+
* Host passes explicit config — no environment variable reading inside.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```typescript
|
|
8
|
+
* const agent = await createMegaAgent({
|
|
9
|
+
* prisma,
|
|
10
|
+
* logger,
|
|
11
|
+
* llm: { providers: [{ provider: 'anthropic', apiKey: '...', defaultModel: 'claude-sonnet-4-20250514' }] },
|
|
12
|
+
* memory: {
|
|
13
|
+
* embedding: { apiKey: '...', provider: 'openai' },
|
|
14
|
+
* qdrant: { host: 'localhost', port: 6333 },
|
|
15
|
+
* },
|
|
16
|
+
* });
|
|
17
|
+
*
|
|
18
|
+
* registerDomainTools(); // host-specific tools
|
|
19
|
+
* app.use('/api/chat', agent.createChatRouter(authMiddleware));
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* **Warning:** Calling this function more than once will overwrite global
|
|
23
|
+
* service state (all services use module-level singletons).
|
|
24
|
+
*/
|
|
25
|
+
// Service init functions & classes
|
|
26
|
+
import { initLLMService, LLMService } from './llm/index.js';
|
|
27
|
+
import { initEmbeddingService, EmbeddingService } from './embedding/index.js';
|
|
28
|
+
import { initQdrantService, QdrantService } from './qdrant/index.js';
|
|
29
|
+
import { initMemoryService, MemoryService } from './memory/index.js';
|
|
30
|
+
import { initChatService, ChatService } from './chat/chat.service.js';
|
|
31
|
+
import { initChatMemoryIntegration } from './chat/chat-memory.integration.js';
|
|
32
|
+
import { initWorkflowService } from './workflow/index.js';
|
|
33
|
+
import { initIncidentService } from './incident/index.js';
|
|
34
|
+
import { initArtifactService } from './artifact/index.js';
|
|
35
|
+
// Tools
|
|
36
|
+
import { registerTools } from './tools/tool-registry.js';
|
|
37
|
+
import { CORE_TOOLS } from './tools/core-tools.js';
|
|
38
|
+
// HTTP
|
|
39
|
+
import { ChatController } from './http/chat.controller.js';
|
|
40
|
+
import { createChatRoutes } from './http/chat.routes.js';
|
|
41
|
+
// ── Factory ───────────────────────────────────────────────────────
|
|
42
|
+
/**
|
|
43
|
+
* Initialize the full Mega Agent stack and return a configured agent.
|
|
44
|
+
*
|
|
45
|
+
* Init order:
|
|
46
|
+
* 1. LLM
|
|
47
|
+
* 2. Embedding + Qdrant (if memory config provided)
|
|
48
|
+
* 3. Memory (if embedding + qdrant succeeded)
|
|
49
|
+
* 4. Core tools (if memory available)
|
|
50
|
+
* 5. Workflow + Incident + Artifact
|
|
51
|
+
* 6. Chat + ChatMemoryIntegration
|
|
52
|
+
*/
|
|
53
|
+
export async function createMegaAgent(config) {
|
|
54
|
+
const { prisma, logger, llm, memory: memoryConfig, agent: agentOptions } = config;
|
|
55
|
+
// ── 1. LLM ────────────────────────────────────────────────────
|
|
56
|
+
if (llm.providers.length === 0) {
|
|
57
|
+
logger.warn('[MegaAgent] No LLM providers configured');
|
|
58
|
+
}
|
|
59
|
+
initLLMService({ logger, config: llm.providers });
|
|
60
|
+
const llmService = new LLMService();
|
|
61
|
+
logger.info('[MegaAgent] LLM service initialized');
|
|
62
|
+
// ── 2. Memory sub-system (optional) ───────────────────────────
|
|
63
|
+
let memoryService = null;
|
|
64
|
+
let embeddingService = null;
|
|
65
|
+
let qdrantService = null;
|
|
66
|
+
if (memoryConfig) {
|
|
67
|
+
try {
|
|
68
|
+
// Embedding
|
|
69
|
+
initEmbeddingService({
|
|
70
|
+
logger,
|
|
71
|
+
apiKey: memoryConfig.embedding.apiKey,
|
|
72
|
+
provider: memoryConfig.embedding.provider ?? 'openai',
|
|
73
|
+
defaultModel: memoryConfig.embedding.defaultModel,
|
|
74
|
+
});
|
|
75
|
+
embeddingService = new EmbeddingService();
|
|
76
|
+
logger.info('[MegaAgent] Embedding service initialized');
|
|
77
|
+
// Qdrant
|
|
78
|
+
initQdrantService({
|
|
79
|
+
logger,
|
|
80
|
+
host: memoryConfig.qdrant.host,
|
|
81
|
+
port: memoryConfig.qdrant.port,
|
|
82
|
+
apiKey: memoryConfig.qdrant.apiKey,
|
|
83
|
+
});
|
|
84
|
+
qdrantService = new QdrantService();
|
|
85
|
+
logger.info('[MegaAgent] Qdrant service initialized');
|
|
86
|
+
// Memory
|
|
87
|
+
initMemoryService({ prisma, logger, embeddingService, qdrantService });
|
|
88
|
+
memoryService = new MemoryService();
|
|
89
|
+
logger.info('[MegaAgent] Memory service initialized');
|
|
90
|
+
// Initialize Qdrant collection (fire-and-forget)
|
|
91
|
+
qdrantService
|
|
92
|
+
.initializeMemoryCollection(embeddingService.getDimensions())
|
|
93
|
+
.catch((err) => logger.error('[MegaAgent] Failed to init Qdrant memory collection', {
|
|
94
|
+
error: String(err),
|
|
95
|
+
}));
|
|
96
|
+
}
|
|
97
|
+
catch (err) {
|
|
98
|
+
logger.warn('[MegaAgent] Memory sub-system init failed, continuing without memory', {
|
|
99
|
+
error: String(err),
|
|
100
|
+
});
|
|
101
|
+
memoryService = null;
|
|
102
|
+
embeddingService = null;
|
|
103
|
+
qdrantService = null;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
// ── 3. Core tools (only if memory available) ──────────────────
|
|
107
|
+
if (memoryService) {
|
|
108
|
+
registerTools(CORE_TOOLS);
|
|
109
|
+
logger.info('[MegaAgent] Core tools registered');
|
|
110
|
+
}
|
|
111
|
+
// ── 4. Workflow + Incident + Artifact ─────────────────────────
|
|
112
|
+
initWorkflowService({ prisma, logger });
|
|
113
|
+
logger.info('[MegaAgent] Workflow service initialized');
|
|
114
|
+
try {
|
|
115
|
+
initIncidentService({ prisma, logger });
|
|
116
|
+
logger.info('[MegaAgent] Incident service initialized');
|
|
117
|
+
}
|
|
118
|
+
catch (err) {
|
|
119
|
+
logger.warn('[MegaAgent] Incident service init failed', { error: String(err) });
|
|
120
|
+
}
|
|
121
|
+
initArtifactService({ prisma, logger });
|
|
122
|
+
logger.info('[MegaAgent] Artifact service initialized');
|
|
123
|
+
// ── 5. Chat + Memory Integration ──────────────────────────────
|
|
124
|
+
initChatService({
|
|
125
|
+
prisma,
|
|
126
|
+
logger,
|
|
127
|
+
llmService,
|
|
128
|
+
memoryService: memoryService ?? undefined,
|
|
129
|
+
});
|
|
130
|
+
const chatService = new ChatService();
|
|
131
|
+
logger.info('[MegaAgent] Chat service initialized');
|
|
132
|
+
if (memoryService) {
|
|
133
|
+
initChatMemoryIntegration({ logger, memoryService, chatService });
|
|
134
|
+
logger.info('[MegaAgent] Chat memory integration initialized');
|
|
135
|
+
}
|
|
136
|
+
// ── Return ────────────────────────────────────────────────────
|
|
137
|
+
const services = {
|
|
138
|
+
chat: chatService,
|
|
139
|
+
llm: llmService,
|
|
140
|
+
memory: memoryService,
|
|
141
|
+
embedding: embeddingService,
|
|
142
|
+
qdrant: qdrantService,
|
|
143
|
+
};
|
|
144
|
+
return {
|
|
145
|
+
services,
|
|
146
|
+
promptOptions: agentOptions ?? {},
|
|
147
|
+
createChatRouter(authMiddleware) {
|
|
148
|
+
const controller = new ChatController(chatService);
|
|
149
|
+
return createChatRoutes(controller, authMiddleware);
|
|
150
|
+
},
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
//# sourceMappingURL=create-mega-agent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-mega-agent.js","sourceRoot":"","sources":["../src/create-mega-agent.ts"],"names":[],"mappings":"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"}
|