@redplanethq/sdk 0.1.6 → 0.1.7
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/index.d.mts +44 -12
- package/dist/index.d.ts +44 -12
- package/dist/index.js +43 -8
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +43 -8
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -76,6 +76,7 @@ interface DocumentNode {
|
|
|
76
76
|
/**
|
|
77
77
|
* Interface for episodic node in the reified knowledge graph
|
|
78
78
|
* Episodes are containers for statements and represent source information
|
|
79
|
+
* Unified architecture: Both conversations and documents use Episodes with sessionId grouping
|
|
79
80
|
*/
|
|
80
81
|
interface EpisodicNode {
|
|
81
82
|
uuid: string;
|
|
@@ -88,10 +89,16 @@ interface EpisodicNode {
|
|
|
88
89
|
validAt: Date;
|
|
89
90
|
labelIds: string[];
|
|
90
91
|
userId: string;
|
|
91
|
-
sessionId
|
|
92
|
-
|
|
92
|
+
sessionId: string;
|
|
93
|
+
queueId?: string;
|
|
94
|
+
type?: EpisodeType;
|
|
93
95
|
chunkIndex?: number;
|
|
94
|
-
|
|
96
|
+
totalChunks?: number;
|
|
97
|
+
version?: number;
|
|
98
|
+
contentHash?: string;
|
|
99
|
+
previousVersionSessionId?: string;
|
|
100
|
+
chunkHashes?: string[];
|
|
101
|
+
recallCount?: number;
|
|
95
102
|
}
|
|
96
103
|
/**
|
|
97
104
|
* Episodic node without embeddings for query responses
|
|
@@ -102,7 +109,7 @@ type EpisodicNodeWithoutEmbeddings = Omit<EpisodicNode, "contentEmbedding">;
|
|
|
102
109
|
* Helper to get episodic node properties for Cypher RETURN clause (excludes embeddings)
|
|
103
110
|
* Usage in Cypher: RETURN ${EPISODIC_NODE_PROPERTIES} as episode
|
|
104
111
|
*/
|
|
105
|
-
declare const EPISODIC_NODE_PROPERTIES = "{\n uuid: e.uuid,\n content: e.content,\n originalContent: e.originalContent,\n source: e.source,\n metadata: e.metadata,\n createdAt: e.createdAt,\n userId: e.userId,\n sessionId: e.sessionId,\n labelIds: e.labelIds,\n validAt: e.validAt,\n recallCount: e.recallCount,\n chunkIndex: e.chunkIndex,\n
|
|
112
|
+
declare const EPISODIC_NODE_PROPERTIES = "{\n uuid: e.uuid,\n content: e.content,\n originalContent: e.originalContent,\n source: e.source,\n metadata: e.metadata,\n createdAt: e.createdAt,\n userId: e.userId,\n sessionId: e.sessionId,\n queueId: e.queueId,\n labelIds: e.labelIds,\n validAt: e.validAt,\n recallCount: e.recallCount,\n type: e.type,\n chunkIndex: e.chunkIndex,\n totalChunks: e.totalChunks,\n version: e.version,\n contentHash: e.contentHash,\n previousVersionSessionId: e.previousVersionSessionId,\n chunkHashes: e.chunkHashes\n}";
|
|
106
113
|
declare const STATEMENT_NODE_PROPERTIES = "{\n uuid: s.uuid,\n fact: s.fact,\n createdAt: s.createdAt,\n userId: s.userId,\n validAt: s.validAt,\n invalidAt: s.invalidAt,\n invalidatedBy: s.invalidatedBy,\n attributes: s.attributes,\n recallCount: s.recallCount,\n provenanceCount: s.provenanceCount\n}";
|
|
107
114
|
declare const ENTITY_NODE_PROPERTIES = "{\n uuid: ent.uuid,\n name: ent.name,\n createdAt: ent.createdAt,\n userId: ent.userId,\n attributes: ent.attributes\n}";
|
|
108
115
|
declare const COMPACTED_SESSION_NODE_PROPERTIES = "{\n uuid: cs.uuid,\n sessionId: cs.sessionId,\n summary: cs.summary,\n episodeCount: cs.episodeCount,\n startTime: cs.startTime,\n endTime: cs.endTime,\n createdAt: cs.createdAt,\n updatedAt: cs.updatedAt,\n confidence: cs.confidence,\n userId: cs.userId,\n source: cs.source,\n compressionRatio: cs.compressionRatio,\n metadata: cs.metadata\n}";
|
|
@@ -168,16 +175,36 @@ type AddEpisodeParams = {
|
|
|
168
175
|
metadata?: Record<string, any>;
|
|
169
176
|
source: string;
|
|
170
177
|
userId: string;
|
|
171
|
-
|
|
172
|
-
sessionId
|
|
178
|
+
labelIds?: string[];
|
|
179
|
+
sessionId: string;
|
|
180
|
+
queueId?: string;
|
|
173
181
|
type?: EpisodeType;
|
|
174
|
-
|
|
182
|
+
chunkIndex?: number;
|
|
183
|
+
totalChunks?: number;
|
|
184
|
+
version?: number;
|
|
185
|
+
contentHash?: string;
|
|
186
|
+
previousVersionSessionId?: string;
|
|
187
|
+
chunkHashes?: string[];
|
|
175
188
|
};
|
|
176
189
|
type AddEpisodeResult = {
|
|
177
|
-
episodeUuid: string;
|
|
178
|
-
|
|
190
|
+
episodeUuid: string | null;
|
|
191
|
+
type: EpisodeType;
|
|
179
192
|
statementsCreated: number;
|
|
180
193
|
processingTimeMs: number;
|
|
194
|
+
tokenUsage?: {
|
|
195
|
+
high: {
|
|
196
|
+
input: number;
|
|
197
|
+
output: number;
|
|
198
|
+
total: number;
|
|
199
|
+
};
|
|
200
|
+
low: {
|
|
201
|
+
input: number;
|
|
202
|
+
output: number;
|
|
203
|
+
total: number;
|
|
204
|
+
};
|
|
205
|
+
};
|
|
206
|
+
totalChunks?: number;
|
|
207
|
+
currentChunk?: number;
|
|
181
208
|
};
|
|
182
209
|
interface ExtractedTripleData {
|
|
183
210
|
source: string;
|
|
@@ -264,9 +291,13 @@ declare enum IntegrationEventType {
|
|
|
264
291
|
*/
|
|
265
292
|
SPEC = "spec",
|
|
266
293
|
/**
|
|
267
|
-
*
|
|
294
|
+
* Get available MCP tools for this integration
|
|
295
|
+
*/
|
|
296
|
+
GET_TOOLS = "get-tools",
|
|
297
|
+
/**
|
|
298
|
+
* Call a specific MCP tool
|
|
268
299
|
*/
|
|
269
|
-
|
|
300
|
+
CALL_TOOL = "call-tool"
|
|
270
301
|
}
|
|
271
302
|
interface IntegrationDefinition {
|
|
272
303
|
name: string;
|
|
@@ -516,7 +547,8 @@ declare abstract class IntegrationCLI {
|
|
|
516
547
|
private setupDataCommands;
|
|
517
548
|
private setupSpecCommand;
|
|
518
549
|
private setupSyncCommand;
|
|
519
|
-
private
|
|
550
|
+
private setupGetToolsCommand;
|
|
551
|
+
private setupCallToolCommand;
|
|
520
552
|
protected abstract handleEvent(eventPayload: IntegrationEventPayload): Promise<Message[]>;
|
|
521
553
|
protected abstract getSpec(): Promise<Spec>;
|
|
522
554
|
parse(): void;
|
package/dist/index.d.ts
CHANGED
|
@@ -76,6 +76,7 @@ interface DocumentNode {
|
|
|
76
76
|
/**
|
|
77
77
|
* Interface for episodic node in the reified knowledge graph
|
|
78
78
|
* Episodes are containers for statements and represent source information
|
|
79
|
+
* Unified architecture: Both conversations and documents use Episodes with sessionId grouping
|
|
79
80
|
*/
|
|
80
81
|
interface EpisodicNode {
|
|
81
82
|
uuid: string;
|
|
@@ -88,10 +89,16 @@ interface EpisodicNode {
|
|
|
88
89
|
validAt: Date;
|
|
89
90
|
labelIds: string[];
|
|
90
91
|
userId: string;
|
|
91
|
-
sessionId
|
|
92
|
-
|
|
92
|
+
sessionId: string;
|
|
93
|
+
queueId?: string;
|
|
94
|
+
type?: EpisodeType;
|
|
93
95
|
chunkIndex?: number;
|
|
94
|
-
|
|
96
|
+
totalChunks?: number;
|
|
97
|
+
version?: number;
|
|
98
|
+
contentHash?: string;
|
|
99
|
+
previousVersionSessionId?: string;
|
|
100
|
+
chunkHashes?: string[];
|
|
101
|
+
recallCount?: number;
|
|
95
102
|
}
|
|
96
103
|
/**
|
|
97
104
|
* Episodic node without embeddings for query responses
|
|
@@ -102,7 +109,7 @@ type EpisodicNodeWithoutEmbeddings = Omit<EpisodicNode, "contentEmbedding">;
|
|
|
102
109
|
* Helper to get episodic node properties for Cypher RETURN clause (excludes embeddings)
|
|
103
110
|
* Usage in Cypher: RETURN ${EPISODIC_NODE_PROPERTIES} as episode
|
|
104
111
|
*/
|
|
105
|
-
declare const EPISODIC_NODE_PROPERTIES = "{\n uuid: e.uuid,\n content: e.content,\n originalContent: e.originalContent,\n source: e.source,\n metadata: e.metadata,\n createdAt: e.createdAt,\n userId: e.userId,\n sessionId: e.sessionId,\n labelIds: e.labelIds,\n validAt: e.validAt,\n recallCount: e.recallCount,\n chunkIndex: e.chunkIndex,\n
|
|
112
|
+
declare const EPISODIC_NODE_PROPERTIES = "{\n uuid: e.uuid,\n content: e.content,\n originalContent: e.originalContent,\n source: e.source,\n metadata: e.metadata,\n createdAt: e.createdAt,\n userId: e.userId,\n sessionId: e.sessionId,\n queueId: e.queueId,\n labelIds: e.labelIds,\n validAt: e.validAt,\n recallCount: e.recallCount,\n type: e.type,\n chunkIndex: e.chunkIndex,\n totalChunks: e.totalChunks,\n version: e.version,\n contentHash: e.contentHash,\n previousVersionSessionId: e.previousVersionSessionId,\n chunkHashes: e.chunkHashes\n}";
|
|
106
113
|
declare const STATEMENT_NODE_PROPERTIES = "{\n uuid: s.uuid,\n fact: s.fact,\n createdAt: s.createdAt,\n userId: s.userId,\n validAt: s.validAt,\n invalidAt: s.invalidAt,\n invalidatedBy: s.invalidatedBy,\n attributes: s.attributes,\n recallCount: s.recallCount,\n provenanceCount: s.provenanceCount\n}";
|
|
107
114
|
declare const ENTITY_NODE_PROPERTIES = "{\n uuid: ent.uuid,\n name: ent.name,\n createdAt: ent.createdAt,\n userId: ent.userId,\n attributes: ent.attributes\n}";
|
|
108
115
|
declare const COMPACTED_SESSION_NODE_PROPERTIES = "{\n uuid: cs.uuid,\n sessionId: cs.sessionId,\n summary: cs.summary,\n episodeCount: cs.episodeCount,\n startTime: cs.startTime,\n endTime: cs.endTime,\n createdAt: cs.createdAt,\n updatedAt: cs.updatedAt,\n confidence: cs.confidence,\n userId: cs.userId,\n source: cs.source,\n compressionRatio: cs.compressionRatio,\n metadata: cs.metadata\n}";
|
|
@@ -168,16 +175,36 @@ type AddEpisodeParams = {
|
|
|
168
175
|
metadata?: Record<string, any>;
|
|
169
176
|
source: string;
|
|
170
177
|
userId: string;
|
|
171
|
-
|
|
172
|
-
sessionId
|
|
178
|
+
labelIds?: string[];
|
|
179
|
+
sessionId: string;
|
|
180
|
+
queueId?: string;
|
|
173
181
|
type?: EpisodeType;
|
|
174
|
-
|
|
182
|
+
chunkIndex?: number;
|
|
183
|
+
totalChunks?: number;
|
|
184
|
+
version?: number;
|
|
185
|
+
contentHash?: string;
|
|
186
|
+
previousVersionSessionId?: string;
|
|
187
|
+
chunkHashes?: string[];
|
|
175
188
|
};
|
|
176
189
|
type AddEpisodeResult = {
|
|
177
|
-
episodeUuid: string;
|
|
178
|
-
|
|
190
|
+
episodeUuid: string | null;
|
|
191
|
+
type: EpisodeType;
|
|
179
192
|
statementsCreated: number;
|
|
180
193
|
processingTimeMs: number;
|
|
194
|
+
tokenUsage?: {
|
|
195
|
+
high: {
|
|
196
|
+
input: number;
|
|
197
|
+
output: number;
|
|
198
|
+
total: number;
|
|
199
|
+
};
|
|
200
|
+
low: {
|
|
201
|
+
input: number;
|
|
202
|
+
output: number;
|
|
203
|
+
total: number;
|
|
204
|
+
};
|
|
205
|
+
};
|
|
206
|
+
totalChunks?: number;
|
|
207
|
+
currentChunk?: number;
|
|
181
208
|
};
|
|
182
209
|
interface ExtractedTripleData {
|
|
183
210
|
source: string;
|
|
@@ -264,9 +291,13 @@ declare enum IntegrationEventType {
|
|
|
264
291
|
*/
|
|
265
292
|
SPEC = "spec",
|
|
266
293
|
/**
|
|
267
|
-
*
|
|
294
|
+
* Get available MCP tools for this integration
|
|
295
|
+
*/
|
|
296
|
+
GET_TOOLS = "get-tools",
|
|
297
|
+
/**
|
|
298
|
+
* Call a specific MCP tool
|
|
268
299
|
*/
|
|
269
|
-
|
|
300
|
+
CALL_TOOL = "call-tool"
|
|
270
301
|
}
|
|
271
302
|
interface IntegrationDefinition {
|
|
272
303
|
name: string;
|
|
@@ -516,7 +547,8 @@ declare abstract class IntegrationCLI {
|
|
|
516
547
|
private setupDataCommands;
|
|
517
548
|
private setupSpecCommand;
|
|
518
549
|
private setupSyncCommand;
|
|
519
|
-
private
|
|
550
|
+
private setupGetToolsCommand;
|
|
551
|
+
private setupCallToolCommand;
|
|
520
552
|
protected abstract handleEvent(eventPayload: IntegrationEventPayload): Promise<Message[]>;
|
|
521
553
|
protected abstract getSpec(): Promise<Spec>;
|
|
522
554
|
parse(): void;
|
package/dist/index.js
CHANGED
|
@@ -86,11 +86,17 @@ var EPISODIC_NODE_PROPERTIES = `{
|
|
|
86
86
|
createdAt: e.createdAt,
|
|
87
87
|
userId: e.userId,
|
|
88
88
|
sessionId: e.sessionId,
|
|
89
|
+
queueId: e.queueId,
|
|
89
90
|
labelIds: e.labelIds,
|
|
90
91
|
validAt: e.validAt,
|
|
91
92
|
recallCount: e.recallCount,
|
|
93
|
+
type: e.type,
|
|
92
94
|
chunkIndex: e.chunkIndex,
|
|
93
|
-
|
|
95
|
+
totalChunks: e.totalChunks,
|
|
96
|
+
version: e.version,
|
|
97
|
+
contentHash: e.contentHash,
|
|
98
|
+
previousVersionSessionId: e.previousVersionSessionId,
|
|
99
|
+
chunkHashes: e.chunkHashes
|
|
94
100
|
}`;
|
|
95
101
|
var STATEMENT_NODE_PROPERTIES = `{
|
|
96
102
|
uuid: s.uuid,
|
|
@@ -176,7 +182,8 @@ exports.IntegrationEventType = void 0;
|
|
|
176
182
|
IntegrationEventType2["IDENTIFY"] = "identify";
|
|
177
183
|
IntegrationEventType2["SYNC"] = "sync";
|
|
178
184
|
IntegrationEventType2["SPEC"] = "spec";
|
|
179
|
-
IntegrationEventType2["
|
|
185
|
+
IntegrationEventType2["GET_TOOLS"] = "get-tools";
|
|
186
|
+
IntegrationEventType2["CALL_TOOL"] = "call-tool";
|
|
180
187
|
})(exports.IntegrationEventType || (exports.IntegrationEventType = {}));
|
|
181
188
|
var Spec = class {
|
|
182
189
|
static {
|
|
@@ -246,7 +253,8 @@ var IntegrationCLI = class {
|
|
|
246
253
|
this.setupAccountCommands();
|
|
247
254
|
this.setupDataCommands();
|
|
248
255
|
this.setupSyncCommand();
|
|
249
|
-
this.
|
|
256
|
+
this.setupGetToolsCommand();
|
|
257
|
+
this.setupCallToolCommand();
|
|
250
258
|
}
|
|
251
259
|
setupAccountCommands() {
|
|
252
260
|
this.program.command("setup").description(`Set up a new ${this.integrationName} integration account`).requiredOption("--event-body <body>", "Event body JSON (e.g. OAuth response or setup data)").requiredOption("--integration-definition <definition>", "Integration definition JSON").action(async (options) => {
|
|
@@ -336,19 +344,46 @@ var IntegrationCLI = class {
|
|
|
336
344
|
}
|
|
337
345
|
});
|
|
338
346
|
}
|
|
339
|
-
|
|
340
|
-
this.program.command("
|
|
347
|
+
setupGetToolsCommand() {
|
|
348
|
+
this.program.command("get-tools").description("Get available MCP tools for this integration").requiredOption("--config <config>", "Integration configuration JSON").requiredOption("--integration-definition <definition>", "Integration definition JSON").action(async (options) => {
|
|
341
349
|
try {
|
|
342
350
|
const config = JSON.parse(options.config);
|
|
343
351
|
const integrationDefinition = JSON.parse(options.integrationDefinition);
|
|
344
|
-
await this.handleEvent({
|
|
345
|
-
event: exports.IntegrationEventType.
|
|
352
|
+
const messages = await this.handleEvent({
|
|
353
|
+
event: exports.IntegrationEventType.GET_TOOLS,
|
|
346
354
|
eventBody: {},
|
|
347
355
|
config,
|
|
348
356
|
integrationDefinition
|
|
349
357
|
});
|
|
358
|
+
for (const message of messages) {
|
|
359
|
+
console.log(JSON.stringify(message));
|
|
360
|
+
}
|
|
350
361
|
} catch (error) {
|
|
351
|
-
console.error("Error
|
|
362
|
+
console.error("Error getting tools:", error);
|
|
363
|
+
process.exit(1);
|
|
364
|
+
}
|
|
365
|
+
});
|
|
366
|
+
}
|
|
367
|
+
setupCallToolCommand() {
|
|
368
|
+
this.program.command("call-tool").description("Call a specific MCP tool").requiredOption("--config <config>", "Integration configuration JSON").requiredOption("--integration-definition <definition>", "Integration definition JSON").requiredOption("--tool-name <name>", "Name of the tool to call").requiredOption("--tool-arguments <arguments>", "Tool arguments as JSON").action(async (options) => {
|
|
369
|
+
try {
|
|
370
|
+
const config = JSON.parse(options.config);
|
|
371
|
+
const integrationDefinition = JSON.parse(options.integrationDefinition);
|
|
372
|
+
const toolArguments = JSON.parse(options.toolArguments);
|
|
373
|
+
const messages = await this.handleEvent({
|
|
374
|
+
event: exports.IntegrationEventType.CALL_TOOL,
|
|
375
|
+
eventBody: {
|
|
376
|
+
name: options.toolName,
|
|
377
|
+
arguments: toolArguments
|
|
378
|
+
},
|
|
379
|
+
config,
|
|
380
|
+
integrationDefinition
|
|
381
|
+
});
|
|
382
|
+
for (const message of messages) {
|
|
383
|
+
console.log(JSON.stringify(message));
|
|
384
|
+
}
|
|
385
|
+
} catch (error) {
|
|
386
|
+
console.error("Error calling tool:", error);
|
|
352
387
|
process.exit(1);
|
|
353
388
|
}
|
|
354
389
|
});
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../types/dist/llm/llm.entity.js","../../types/dist/graph/graph.entity.js","../../types/dist/conversation-execution-step/conversation-execution.entity.js","../../types/dist/oauth/params.js","../../types/dist/integration.js","../../types/dist/user/index.js","../../types/dist/pattern.js","../../types/dist/search.js","../src/integrations/integration-cli.ts"],"names":["LLMModelEnum","LLMModelType","GPT35TURBO","GPT4TURBO","GPT4O","GPT41","GPT41MINI","GPT41NANO","LLAMA3","CLAUDEOPUS","CLAUDESONNET","CLAUDEHAIKU","GEMINI25FLASH","GEMINI25PRO","GEMINI20FLASH","GEMINI20FLASHLITE","LLMMappings","OpenAIModels","ClaudeModels","GeminiModels","EPISODIC_NODE_PROPERTIES","STATEMENT_NODE_PROPERTIES","ENTITY_NODE_PROPERTIES","COMPACTED_SESSION_NODE_PROPERTIES","EpisodeTypeEnum","EpisodeType","CONVERSATION","DOCUMENT","IMAGE","ActionStatusEnum","ActionStatus","ACCEPT","DECLINE","QUESTION","TOOL_REQUEST","SUCCESS","FAILED","OAuth2Params","APIKeyParams","IntegrationEventType","Spec","UserTypeEnum","EXPLICIT_PATTERN_TYPES","THEME","TOPIC","DOMAIN","INTEREST_AREA","IMPLICIT_PATTERN_TYPES","PREFERENCE","HABIT","WORKFLOW","COMMUNICATION_STYLE","DECISION_PATTERN","TEMPORAL_PATTERN","BEHAVIORAL_PATTERN","LEARNING_STYLE","COLLABORATION_STYLE","PATTERN_TYPES","Object","assign","QUALITY_THRESHOLDS","HIGH_QUALITY_EPISODE","MEDIUM_QUALITY_EPISODE","LOW_QUALITY_EPISODE","CONFIDENT_RESULT","UNCERTAIN_RESULT","NO_RESULT","MINIMUM_GAP_RATIO","IntegrationCLI","program","integrationName","version","constructor","Command","setupProgram","name","description","setupSpecCommand","setupAccountCommands","setupDataCommands","setupSyncCommand","setupMCPCommand","command","requiredOption","action","options","eventBody","JSON","parse","integrationDefinition","messages","handleEvent","event","SETUP","message","console","log","stringify","error","process","exit","eventData","config","PROCESS","webhookData","IDENTIFY","spec","getSpec","type","data","option","state","SYNC","MCP","getProgram"],"mappings":"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","file":"index.js","sourcesContent":["export var LLMModelEnum;\n(function (LLMModelEnum) {\n LLMModelEnum[\"GPT35TURBO\"] = \"GPT35TURBO\";\n LLMModelEnum[\"GPT4TURBO\"] = \"GPT4TURBO\";\n LLMModelEnum[\"GPT4O\"] = \"GPT4O\";\n LLMModelEnum[\"GPT41\"] = \"GPT41\";\n LLMModelEnum[\"GPT41MINI\"] = \"GPT41MINI\";\n LLMModelEnum[\"GPT41NANO\"] = \"GPT41NANO\";\n LLMModelEnum[\"LLAMA3\"] = \"LLAMA3\";\n LLMModelEnum[\"CLAUDEOPUS\"] = \"CLAUDEOPUS\";\n LLMModelEnum[\"CLAUDESONNET\"] = \"CLAUDESONNET\";\n LLMModelEnum[\"CLAUDEHAIKU\"] = \"CLAUDEHAIKU\";\n LLMModelEnum[\"GEMINI25FLASH\"] = \"GEMINI25FLASH\";\n LLMModelEnum[\"GEMINI25PRO\"] = \"GEMINI25PRO\";\n LLMModelEnum[\"GEMINI20FLASH\"] = \"GEMINI20FLASH\";\n LLMModelEnum[\"GEMINI20FLASHLITE\"] = \"GEMINI20FLASHLITE\";\n})(LLMModelEnum || (LLMModelEnum = {}));\nexport const LLMModelType = {\n GPT35TURBO: \"GPT35TURBO\",\n GPT4TURBO: \"GPT4TURBO\",\n GPT4O: \"GPT4O\",\n GPT41: \"GPT41\",\n GPT41MINI: \"GPT41MINI\",\n GPT41NANO: \"GPT41NANO\",\n LLAMA3: \"LLAMA3\",\n CLAUDEOPUS: \"CLAUDEOPUS\",\n CLAUDESONNET: \"CLAUDESONNET\",\n CLAUDEHAIKU: \"CLAUDEHAIKU\",\n GEMINI25FLASH: \"GEMINI25FLASH\",\n GEMINI25PRO: \"GEMINI25PRO\",\n GEMINI20FLASH: \"GEMINI20FLASH\",\n GEMINI20FLASHLITE: \"GEMINI20FLASHLITE\",\n};\nexport var LLMMappings;\n(function (LLMMappings) {\n LLMMappings[\"GPT35TURBO\"] = \"gpt-3.5-turbo\";\n LLMMappings[\"GPT4TURBO\"] = \"gpt-4-turbo\";\n LLMMappings[\"GPT4O\"] = \"gpt-4o\";\n LLMMappings[\"GPT41\"] = \"gpt-4.1-2025-04-14\";\n LLMMappings[\"GPT41MINI\"] = \"gpt-4.1-mini-2025-04-14\";\n LLMMappings[\"GPT41NANO\"] = \"gpt-4.1-nano-2025-04-14\";\n LLMMappings[\"LLAMA3\"] = \"llama3\";\n LLMMappings[\"CLAUDEOPUS\"] = \"claude-3-opus-20240229\";\n LLMMappings[\"CLAUDESONNET\"] = \"claude-3-7-sonnet-20250219\";\n LLMMappings[\"CLAUDEHAIKU\"] = \"claude-3-5-haiku-20241022\";\n LLMMappings[\"GEMINI25FLASH\"] = \"gemini-2.5-flash-preview-04-17\";\n LLMMappings[\"GEMINI25PRO\"] = \"gemini-2.5-pro-preview-03-25\";\n LLMMappings[\"GEMINI20FLASH\"] = \"gemini-2.0-flash\";\n LLMMappings[\"GEMINI20FLASHLITE\"] = \"gemini-2.0-flash-lite\";\n})(LLMMappings || (LLMMappings = {}));\nexport const OpenAIModels = [\n LLMModelEnum.GPT35TURBO,\n LLMModelEnum.GPT4TURBO,\n LLMModelEnum.GPT4O,\n LLMModelEnum.GPT41,\n LLMModelEnum.GPT41MINI,\n LLMModelEnum.GPT41NANO,\n];\nexport const ClaudeModels = [\n LLMModelEnum.CLAUDEOPUS,\n LLMModelEnum.CLAUDESONNET,\n LLMModelEnum.CLAUDEHAIKU,\n];\nexport const GeminiModels = [\n LLMModelEnum.GEMINI25FLASH,\n LLMModelEnum.GEMINI25PRO,\n LLMModelEnum.GEMINI20FLASH,\n LLMModelEnum.GEMINI20FLASHLITE,\n];\n","/**\n * Helper to get episodic node properties for Cypher RETURN clause (excludes embeddings)\n * Usage in Cypher: RETURN ${EPISODIC_NODE_PROPERTIES} as episode\n */\nexport const EPISODIC_NODE_PROPERTIES = `{\n uuid: e.uuid,\n content: e.content,\n originalContent: e.originalContent,\n source: e.source,\n metadata: e.metadata,\n createdAt: e.createdAt,\n userId: e.userId,\n sessionId: e.sessionId,\n labelIds: e.labelIds,\n validAt: e.validAt,\n recallCount: e.recallCount,\n chunkIndex: e.chunkIndex,\n documentId: e.documentId\n}`;\nexport const STATEMENT_NODE_PROPERTIES = `{\n uuid: s.uuid,\n fact: s.fact,\n createdAt: s.createdAt,\n userId: s.userId,\n validAt: s.validAt,\n invalidAt: s.invalidAt,\n invalidatedBy: s.invalidatedBy,\n attributes: s.attributes,\n recallCount: s.recallCount,\n provenanceCount: s.provenanceCount\n}`;\nexport const ENTITY_NODE_PROPERTIES = `{\n uuid: ent.uuid,\n name: ent.name,\n createdAt: ent.createdAt,\n userId: ent.userId,\n attributes: ent.attributes\n}`;\nexport const COMPACTED_SESSION_NODE_PROPERTIES = `{\n uuid: cs.uuid,\n sessionId: cs.sessionId,\n summary: cs.summary,\n episodeCount: cs.episodeCount,\n startTime: cs.startTime,\n endTime: cs.endTime,\n createdAt: cs.createdAt,\n updatedAt: cs.updatedAt,\n confidence: cs.confidence,\n userId: cs.userId,\n source: cs.source,\n compressionRatio: cs.compressionRatio,\n metadata: cs.metadata\n}`;\nexport var EpisodeTypeEnum;\n(function (EpisodeTypeEnum) {\n EpisodeTypeEnum[\"CONVERSATION\"] = \"CONVERSATION\";\n EpisodeTypeEnum[\"DOCUMENT\"] = \"DOCUMENT\";\n})(EpisodeTypeEnum || (EpisodeTypeEnum = {}));\nexport const EpisodeType = {\n CONVERSATION: \"CONVERSATION\",\n DOCUMENT: \"DOCUMENT\",\n IMAGE: \"IMAGE\",\n};\n","export var ActionStatusEnum;\n(function (ActionStatusEnum) {\n ActionStatusEnum[\"ACCEPT\"] = \"ACCEPT\";\n ActionStatusEnum[\"DECLINE\"] = \"DECLINE\";\n ActionStatusEnum[\"QUESTION\"] = \"QUESTION\";\n ActionStatusEnum[\"TOOL_REQUEST\"] = \"TOOL_REQUEST\";\n ActionStatusEnum[\"SUCCESS\"] = \"SUCCESS\";\n ActionStatusEnum[\"FAILED\"] = \"FAILED\";\n})(ActionStatusEnum || (ActionStatusEnum = {}));\nexport const ActionStatus = {\n ACCEPT: \"ACCEPT\",\n DECLINE: \"DECLINE\",\n QUESTION: \"QUESTION\",\n TOOL_REQUEST: \"TOOL_REQUEST\",\n SUCCESS: \"SUCCESS\",\n FAILED: \"FAILED\",\n};\n","export class OAuth2Params {\n}\nexport class APIKeyParams {\n}\n","export var IntegrationEventType;\n(function (IntegrationEventType) {\n /**\n * Processes authentication data and returns tokens/credentials to be saved\n */\n IntegrationEventType[\"SETUP\"] = \"setup\";\n /**\n * Processing incoming data from the integration\n */\n IntegrationEventType[\"PROCESS\"] = \"process\";\n /**\n * Identifying which account a webhook belongs to\n */\n IntegrationEventType[\"IDENTIFY\"] = \"identify\";\n /**\n * Scheduled synchronization of data\n */\n IntegrationEventType[\"SYNC\"] = \"sync\";\n /**\n * For returning integration metadata/config\n */\n IntegrationEventType[\"SPEC\"] = \"spec\";\n /**\n * For to start mcp\n */\n IntegrationEventType[\"MCP\"] = \"mcp\";\n})(IntegrationEventType || (IntegrationEventType = {}));\nexport class Spec {\n}\n","export var UserTypeEnum;\n(function (UserTypeEnum) {\n UserTypeEnum[\"Agent\"] = \"Agent\";\n UserTypeEnum[\"User\"] = \"User\";\n UserTypeEnum[\"System\"] = \"System\";\n})(UserTypeEnum || (UserTypeEnum = {}));\n","// Pattern types for categorization (guidelines, not restrictions)\n// LLM can suggest new pattern types beyond these categories\nexport const EXPLICIT_PATTERN_TYPES = {\n // Derived from space themes and explicit content\n THEME: \"theme\", // High-level thematic content\n TOPIC: \"topic\", // Specific subject matter\n DOMAIN: \"domain\", // Knowledge or work domains\n INTEREST_AREA: \"interest_area\", // Areas of personal interest\n};\nexport const IMPLICIT_PATTERN_TYPES = {\n // Discovered from behavioral analysis and content patterns\n PREFERENCE: \"preference\", // Personal preferences and choices\n HABIT: \"habit\", // Recurring behaviors and routines\n WORKFLOW: \"workflow\", // Work and process patterns\n COMMUNICATION_STYLE: \"communication_style\", // How user communicates\n DECISION_PATTERN: \"decision_pattern\", // Decision-making approaches\n TEMPORAL_PATTERN: \"temporal_pattern\", // Time-based behavioral patterns\n BEHAVIORAL_PATTERN: \"behavioral_pattern\", // General behavioral tendencies\n LEARNING_STYLE: \"learning_style\", // How user learns and processes info\n COLLABORATION_STYLE: \"collaboration_style\", // How user works with others\n};\n// Combined pattern types for reference\nexport const PATTERN_TYPES = Object.assign(Object.assign({}, EXPLICIT_PATTERN_TYPES), IMPLICIT_PATTERN_TYPES);\n","/**\n * Quality thresholds for filtering\n */\nexport const QUALITY_THRESHOLDS = {\n // Adaptive episode-level scoring (based on available sources)\n HIGH_QUALITY_EPISODE: 5.0, // For Episode Graph or BFS results (max score ~10+)\n MEDIUM_QUALITY_EPISODE: 1.0, // For Vector-only results (max score ~1.5)\n LOW_QUALITY_EPISODE: 0.3, // For BM25-only results (max score ~0.5)\n // Overall result confidence\n CONFIDENT_RESULT: 0.7, // High confidence, skip LLM validation\n UNCERTAIN_RESULT: 0.3, // Borderline, use LLM validation\n NO_RESULT: 0.3, // Too low, return empty\n // Score gap detection\n MINIMUM_GAP_RATIO: 0.5, // 50% score drop = gap\n};\n","import { Command } from 'commander';\nimport {\n IntegrationEventPayload,\n Spec,\n Message,\n IntegrationEventType,\n} from '@core/types';\n\nexport abstract class IntegrationCLI {\n protected program: Command;\n protected integrationName: string;\n protected version: string;\n\n constructor(integrationName: string, version: string = '1.0.0') {\n this.integrationName = integrationName;\n this.version = version;\n this.program = new Command();\n this.setupProgram();\n }\n\n private setupProgram(): void {\n this.program\n .name(`${this.integrationName}-integration`)\n .description(`${this.integrationName} integration CLI`)\n .version(this.version);\n\n this.setupSpecCommand();\n this.setupAccountCommands();\n this.setupDataCommands();\n this.setupSyncCommand();\n this.setupMCPCommand();\n }\n\n private setupAccountCommands(): void {\n this.program\n .command('setup')\n .description(`Set up a new ${this.integrationName} integration account`)\n .requiredOption(\n '--event-body <body>',\n 'Event body JSON (e.g. OAuth response or setup data)',\n )\n .requiredOption(\n '--integration-definition <definition>',\n 'Integration definition JSON',\n )\n .action(async (options) => {\n try {\n const eventBody = JSON.parse(options.eventBody);\n const integrationDefinition = JSON.parse(\n options.integrationDefinition,\n );\n\n const messages: Message[] = await this.handleEvent({\n event: IntegrationEventType.SETUP,\n eventBody,\n integrationDefinition,\n });\n\n for (const message of messages) {\n console.log(JSON.stringify(message));\n }\n } catch (error) {\n console.error('Error during setup:', error);\n process.exit(1);\n }\n });\n }\n\n private setupDataCommands(): void {\n this.program\n .command('process')\n .description(`Process ${this.integrationName} integration data`)\n .requiredOption('--event-data <data>', 'Event data JSON')\n .requiredOption('--config <config>', 'Integration configuration JSON')\n .action(async (options) => {\n try {\n const eventData = JSON.parse(options.eventData);\n const config = JSON.parse(options.config);\n\n const messages: Message[] = await this.handleEvent({\n event: IntegrationEventType.PROCESS,\n eventBody: eventData,\n config,\n });\n\n for (const message of messages) {\n console.log(JSON.stringify(message));\n }\n } catch (error) {\n console.error('Error processing data:', error);\n process.exit(1);\n }\n });\n\n this.program\n .command('identify')\n .description('Identify webhook account')\n .requiredOption('--webhook-data <data>', 'Webhook data JSON')\n .action(async (options) => {\n try {\n const webhookData = JSON.parse(options.webhookData);\n\n const messages: Message[] = await this.handleEvent({\n event: IntegrationEventType.IDENTIFY,\n eventBody: webhookData,\n });\n\n for (const message of messages) {\n console.log(JSON.stringify(message));\n }\n } catch (error) {\n console.error('Error identifying account:', error);\n process.exit(1);\n }\n });\n }\n\n private setupSpecCommand(): void {\n this.program\n .command('spec')\n .description('Get integration specification')\n .action(async () => {\n try {\n const spec = await this.getSpec();\n const message: Message = {\n type: 'spec',\n data: spec,\n };\n // For spec, we keep the single message output for compatibility\n console.log(JSON.stringify(message));\n } catch (error) {\n console.error('Error getting spec:', error);\n process.exit(1);\n }\n });\n }\n\n private setupSyncCommand(): void {\n this.program\n .command('sync')\n .description('Perform scheduled sync')\n .requiredOption('--config <config>', 'Integration configuration JSON')\n .option('--state <state>', 'Integration state JSON', '{}')\n .action(async (options) => {\n try {\n const config = JSON.parse(options.config);\n const state = options.state ? JSON.parse(options.state) : {};\n\n const messages: Message[] = await this.handleEvent({\n event: IntegrationEventType.SYNC,\n eventBody: {},\n config,\n state,\n });\n\n for (const message of messages) {\n console.log(JSON.stringify(message));\n }\n } catch (error) {\n console.error('Error during sync:', error);\n process.exit(1);\n }\n });\n }\n\n private setupMCPCommand(): void {\n this.program\n .command('mcp')\n .description('To start the mcp')\n .requiredOption('--config <config>', 'Integration configuration JSON')\n .requiredOption(\n '--integration-definition <definition>',\n 'Integration definition JSON',\n )\n .action(async (options) => {\n try {\n const config = JSON.parse(options.config);\n const integrationDefinition = JSON.parse(\n options.integrationDefinition,\n );\n await this.handleEvent({\n event: IntegrationEventType.MCP,\n eventBody: {},\n config,\n integrationDefinition,\n });\n } catch (error) {\n console.error('Error during sync:', error);\n process.exit(1);\n }\n });\n }\n\n /**\n * Abstract method that must be implemented by each integration\n * This method should handle the integration-specific logic for each event type\n * and return an array of Message objects.\n */\n protected abstract handleEvent(\n eventPayload: IntegrationEventPayload,\n ): Promise<Message[]>;\n\n /**\n * Abstract method that must be implemented by each integration\n * This method should return the integration specification\n */\n protected abstract getSpec(): Promise<Spec>;\n\n /**\n * Parse and execute the CLI commands\n */\n public parse(): void {\n this.program.parse();\n }\n\n /**\n * Get the commander program instance for additional customization\n */\n public getProgram(): Command {\n return this.program;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../types/dist/llm/llm.entity.js","../../types/dist/graph/graph.entity.js","../../types/dist/conversation-execution-step/conversation-execution.entity.js","../../types/dist/oauth/params.js","../../types/dist/integration.js","../../types/dist/user/index.js","../../types/dist/pattern.js","../../types/dist/search.js","../src/integrations/integration-cli.ts"],"names":["LLMModelEnum","LLMModelType","GPT35TURBO","GPT4TURBO","GPT4O","GPT41","GPT41MINI","GPT41NANO","LLAMA3","CLAUDEOPUS","CLAUDESONNET","CLAUDEHAIKU","GEMINI25FLASH","GEMINI25PRO","GEMINI20FLASH","GEMINI20FLASHLITE","LLMMappings","OpenAIModels","ClaudeModels","GeminiModels","EPISODIC_NODE_PROPERTIES","STATEMENT_NODE_PROPERTIES","ENTITY_NODE_PROPERTIES","COMPACTED_SESSION_NODE_PROPERTIES","EpisodeTypeEnum","EpisodeType","CONVERSATION","DOCUMENT","IMAGE","ActionStatusEnum","ActionStatus","ACCEPT","DECLINE","QUESTION","TOOL_REQUEST","SUCCESS","FAILED","OAuth2Params","APIKeyParams","IntegrationEventType","Spec","UserTypeEnum","EXPLICIT_PATTERN_TYPES","THEME","TOPIC","DOMAIN","INTEREST_AREA","IMPLICIT_PATTERN_TYPES","PREFERENCE","HABIT","WORKFLOW","COMMUNICATION_STYLE","DECISION_PATTERN","TEMPORAL_PATTERN","BEHAVIORAL_PATTERN","LEARNING_STYLE","COLLABORATION_STYLE","PATTERN_TYPES","Object","assign","QUALITY_THRESHOLDS","HIGH_QUALITY_EPISODE","MEDIUM_QUALITY_EPISODE","LOW_QUALITY_EPISODE","CONFIDENT_RESULT","UNCERTAIN_RESULT","NO_RESULT","MINIMUM_GAP_RATIO","IntegrationCLI","program","integrationName","version","constructor","Command","setupProgram","name","description","setupSpecCommand","setupAccountCommands","setupDataCommands","setupSyncCommand","setupGetToolsCommand","setupCallToolCommand","command","requiredOption","action","options","eventBody","JSON","parse","integrationDefinition","messages","handleEvent","event","SETUP","message","console","log","stringify","error","process","exit","eventData","config","PROCESS","webhookData","IDENTIFY","spec","getSpec","type","data","option","state","SYNC","GET_TOOLS","toolArguments","CALL_TOOL","toolName","arguments","getProgram"],"mappings":";;;;;;;;AAAWA;AACV,CAAA,SAAUA,aAAY,EAAA;AACnBA,EAAAA,aAAAA,CAAa,YAAA,CAAgB,GAAA,YAAA;AAC7BA,EAAAA,aAAAA,CAAa,WAAA,CAAe,GAAA,WAAA;AAC5BA,EAAAA,aAAAA,CAAa,OAAA,CAAW,GAAA,OAAA;AACxBA,EAAAA,aAAAA,CAAa,OAAA,CAAW,GAAA,OAAA;AACxBA,EAAAA,aAAAA,CAAa,WAAA,CAAe,GAAA,WAAA;AAC5BA,EAAAA,aAAAA,CAAa,WAAA,CAAe,GAAA,WAAA;AAC5BA,EAAAA,aAAAA,CAAa,QAAA,CAAY,GAAA,QAAA;AACzBA,EAAAA,aAAAA,CAAa,YAAA,CAAgB,GAAA,YAAA;AAC7BA,EAAAA,aAAAA,CAAa,cAAA,CAAkB,GAAA,cAAA;AAC/BA,EAAAA,aAAAA,CAAa,aAAA,CAAiB,GAAA,aAAA;AAC9BA,EAAAA,aAAAA,CAAa,eAAA,CAAmB,GAAA,eAAA;AAChCA,EAAAA,aAAAA,CAAa,aAAA,CAAiB,GAAA,aAAA;AAC9BA,EAAAA,aAAAA,CAAa,eAAA,CAAmB,GAAA,eAAA;AAChCA,EAAAA,aAAAA,CAAa,mBAAA,CAAuB,GAAA,mBAAA;AACxC,CAAGA,EAAAA,oBAAAA,KAAiBA,oBAAe,GAAA,EAAC,CAAA,CAAA;AAC7B,IAAMC,YAAe,GAAA;EACxBC,UAAY,EAAA,YAAA;EACZC,SAAW,EAAA,WAAA;EACXC,KAAO,EAAA,OAAA;EACPC,KAAO,EAAA,OAAA;EACPC,SAAW,EAAA,WAAA;EACXC,SAAW,EAAA,WAAA;EACXC,MAAQ,EAAA,QAAA;EACRC,UAAY,EAAA,YAAA;EACZC,YAAc,EAAA,cAAA;EACdC,WAAa,EAAA,aAAA;EACbC,aAAe,EAAA,eAAA;EACfC,WAAa,EAAA,aAAA;EACbC,aAAe,EAAA,eAAA;EACfC,iBAAmB,EAAA;AACvB;AACWC;AACV,CAAA,SAAUA,YAAW,EAAA;AAClBA,EAAAA,YAAAA,CAAY,YAAA,CAAgB,GAAA,eAAA;AAC5BA,EAAAA,YAAAA,CAAY,WAAA,CAAe,GAAA,aAAA;AAC3BA,EAAAA,YAAAA,CAAY,OAAA,CAAW,GAAA,QAAA;AACvBA,EAAAA,YAAAA,CAAY,OAAA,CAAW,GAAA,oBAAA;AACvBA,EAAAA,YAAAA,CAAY,WAAA,CAAe,GAAA,yBAAA;AAC3BA,EAAAA,YAAAA,CAAY,WAAA,CAAe,GAAA,yBAAA;AAC3BA,EAAAA,YAAAA,CAAY,QAAA,CAAY,GAAA,QAAA;AACxBA,EAAAA,YAAAA,CAAY,YAAA,CAAgB,GAAA,wBAAA;AAC5BA,EAAAA,YAAAA,CAAY,cAAA,CAAkB,GAAA,4BAAA;AAC9BA,EAAAA,YAAAA,CAAY,aAAA,CAAiB,GAAA,2BAAA;AAC7BA,EAAAA,YAAAA,CAAY,eAAA,CAAmB,GAAA,gCAAA;AAC/BA,EAAAA,YAAAA,CAAY,aAAA,CAAiB,GAAA,8BAAA;AAC7BA,EAAAA,YAAAA,CAAY,eAAA,CAAmB,GAAA,kBAAA;AAC/BA,EAAAA,YAAAA,CAAY,mBAAA,CAAuB,GAAA,uBAAA;AACvC,CAAGA,EAAAA,mBAAAA,KAAgBA,mBAAc,GAAA,EAAC,CAAA,CAAA;AAC3B,IAAMC,YAAe,GAAA;EACxBjB,oBAAaE,CAAAA,UAAAA;EACbF,oBAAaG,CAAAA,SAAAA;EACbH,oBAAaI,CAAAA,KAAAA;EACbJ,oBAAaK,CAAAA,KAAAA;EACbL,oBAAaM,CAAAA,SAAAA;EACbN,oBAAaO,CAAAA;;AAEV,IAAMW,YAAe,GAAA;EACxBlB,oBAAaS,CAAAA,UAAAA;EACbT,oBAAaU,CAAAA,YAAAA;EACbV,oBAAaW,CAAAA;;AAEV,IAAMQ,YAAe,GAAA;EACxBnB,oBAAaY,CAAAA,aAAAA;EACbZ,oBAAaa,CAAAA,WAAAA;EACbb,oBAAac,CAAAA,aAAAA;EACbd,oBAAae,CAAAA;;;;AC/DV,IAAMK,wBAA2B,GAAA,CAAA;;;;;;;;;;;;;;;;;;;;;AAqBjC,IAAMC,yBAA4B,GAAA,CAAA;;;;;;;;;;;;AAYlC,IAAMC,sBAAyB,GAAA,CAAA;;;;;;;AAO/B,IAAMC,iCAAoC,GAAA,CAAA;;;;;;;;;;;;;;;AAetCC;AACV,CAAA,SAAUA,gBAAe,EAAA;AACtBA,EAAAA,gBAAAA,CAAgB,cAAA,CAAkB,GAAA,cAAA;AAClCA,EAAAA,gBAAAA,CAAgB,UAAA,CAAc,GAAA,UAAA;AAClC,CAAGA,EAAAA,uBAAAA,KAAoBA,uBAAkB,GAAA,EAAC,CAAA,CAAA;AACnC,IAAMC,WAAc,GAAA;EACvBC,YAAc,EAAA,cAAA;EACdC,QAAU,EAAA,UAAA;EACVC,KAAO,EAAA;AACX;;;ACpEWC;AACV,CAAA,SAAUA,iBAAgB,EAAA;AACvBA,EAAAA,iBAAAA,CAAiB,QAAA,CAAY,GAAA,QAAA;AAC7BA,EAAAA,iBAAAA,CAAiB,SAAA,CAAa,GAAA,SAAA;AAC9BA,EAAAA,iBAAAA,CAAiB,UAAA,CAAc,GAAA,UAAA;AAC/BA,EAAAA,iBAAAA,CAAiB,cAAA,CAAkB,GAAA,cAAA;AACnCA,EAAAA,iBAAAA,CAAiB,SAAA,CAAa,GAAA,SAAA;AAC9BA,EAAAA,iBAAAA,CAAiB,QAAA,CAAY,GAAA,QAAA;AACjC,CAAGA,EAAAA,wBAAAA,KAAqBA,wBAAmB,GAAA,EAAC,CAAA,CAAA;AACrC,IAAMC,YAAe,GAAA;EACxBC,MAAQ,EAAA,QAAA;EACRC,OAAS,EAAA,SAAA;EACTC,QAAU,EAAA,UAAA;EACVC,YAAc,EAAA,cAAA;EACdC,OAAS,EAAA,SAAA;EACTC,MAAQ,EAAA;AACZ;;;AChBO,IAAMC,eAAN,MAAMA;EAAb;;;AACA;AACO,IAAMC,eAAN,MAAMA;EAFb;;;AAGA;;;ACHWC;AACV,CAAA,SAAUA,qBAAoB,EAAA;AAI3BA,EAAAA,qBAAAA,CAAqB,OAAA,CAAW,GAAA,OAAA;AAIhCA,EAAAA,qBAAAA,CAAqB,SAAA,CAAa,GAAA,SAAA;AAIlCA,EAAAA,qBAAAA,CAAqB,UAAA,CAAc,GAAA,UAAA;AAInCA,EAAAA,qBAAAA,CAAqB,MAAA,CAAU,GAAA,MAAA;AAI/BA,EAAAA,qBAAAA,CAAqB,MAAA,CAAU,GAAA,MAAA;AAI/BA,EAAAA,qBAAAA,CAAqB,WAAA,CAAe,GAAA,WAAA;AAIpCA,EAAAA,qBAAAA,CAAqB,WAAA,CAAe,GAAA,WAAA;AACxC,CAAGA,EAAAA,4BAAAA,KAAyBA,4BAAuB,GAAA,EAAC,CAAA,CAAA;AAC7C,IAAMC,OAAN,MAAMA;EA/Bb;;;AAgCA;;;AChCWC;AACV,CAAA,SAAUA,aAAY,EAAA;AACnBA,EAAAA,aAAAA,CAAa,OAAA,CAAW,GAAA,OAAA;AACxBA,EAAAA,aAAAA,CAAa,MAAA,CAAU,GAAA,MAAA;AACvBA,EAAAA,aAAAA,CAAa,QAAA,CAAY,GAAA,QAAA;AAC7B,CAAGA,EAAAA,oBAAAA,KAAiBA,oBAAe,GAAA,EAAC,CAAA,CAAA;;;ACH7B,IAAMC,sBAAyB,GAAA;;EAElCC,KAAO,EAAA,OAAA;EACPC,KAAO,EAAA,OAAA;EACPC,MAAQ,EAAA,QAAA;EACRC,aAAe,EAAA;AACnB;AACO,IAAMC,sBAAyB,GAAA;;EAElCC,UAAY,EAAA,YAAA;EACZC,KAAO,EAAA,OAAA;EACPC,QAAU,EAAA,UAAA;EACVC,mBAAqB,EAAA,qBAAA;EACrBC,gBAAkB,EAAA,kBAAA;EAClBC,gBAAkB,EAAA,kBAAA;EAClBC,kBAAoB,EAAA,oBAAA;EACpBC,cAAgB,EAAA,gBAAA;EAChBC,mBAAqB,EAAA;AACzB;AAEaC,IAAAA,aAAAA,GAAgBC,OAAOC,MAAOD,CAAAA,MAAAA,CAAOC,OAAO,EAAC,EAAGjB,sBAAAA,CAAAA,EAAyBK,sBAAAA;;;ACnB/E,IAAMa,kBAAqB,GAAA;;EAE9BC,oBAAsB,EAAA,CAAA;EACtBC,sBAAwB,EAAA,CAAA;EACxBC,mBAAqB,EAAA,GAAA;;EAErBC,gBAAkB,EAAA,GAAA;EAClBC,gBAAkB,EAAA,GAAA;EAClBC,SAAW,EAAA,GAAA;;EAEXC,iBAAmB,EAAA;AACvB;ACNO,IAAeC,iBAAf,MAAeA;EARtB;;;AASYC,EAAAA,OAAAA;AACAC,EAAAA,eAAAA;AACAC,EAAAA,OAAAA;EAEVC,WAAYF,CAAAA,eAAAA,EAAyBC,UAAkB,OAAS,EAAA;AAC9D,IAAA,IAAA,CAAKD,eAAkBA,GAAAA,eAAAA;AACvB,IAAA,IAAA,CAAKC,OAAUA,GAAAA,OAAAA;AACf,IAAKF,IAAAA,CAAAA,OAAAA,GAAU,IAAII,iBAAAA,EAAAA;AACnB,IAAA,IAAA,CAAKC,YAAY,EAAA;AACnB;EAEQA,YAAqB,GAAA;AAC3B,IAAA,IAAA,CAAKL,OACFM,CAAAA,IAAAA,CAAK,CAAG,EAAA,IAAA,CAAKL,eAAe,CAAc,YAAA,CAAA,CAAA,CAC1CM,WAAY,CAAA,CAAA,EAAG,KAAKN,eAAe,CAAA,gBAAA,CAAkB,CACrDC,CAAAA,OAAAA,CAAQ,KAAKA,OAAO,CAAA;AAEvB,IAAA,IAAA,CAAKM,gBAAgB,EAAA;AACrB,IAAA,IAAA,CAAKC,oBAAoB,EAAA;AACzB,IAAA,IAAA,CAAKC,iBAAiB,EAAA;AACtB,IAAA,IAAA,CAAKC,gBAAgB,EAAA;AACrB,IAAA,IAAA,CAAKC,oBAAoB,EAAA;AACzB,IAAA,IAAA,CAAKC,oBAAoB,EAAA;AAC3B;EAEQJ,oBAA6B,GAAA;AACnC,IAAKT,IAAAA,CAAAA,OAAAA,CACFc,QAAQ,OAAA,CAAA,CACRP,YAAY,CAAgB,aAAA,EAAA,IAAA,CAAKN,eAAe,CAAsB,oBAAA,CAAA,CAAA,CACtEc,eACC,qBACA,EAAA,qDAAA,EAEDA,cACC,CAAA,uCAAA,EACA,6BAAA,CAEDC,CAAAA,MAAAA,CAAO,OAAOC,OAAAA,KAAAA;AACb,MAAI,IAAA;AACF,QAAA,MAAMC,SAAYC,GAAAA,IAAAA,CAAKC,KAAMH,CAAAA,OAAAA,CAAQC,SAAS,CAAA;AAC9C,QAAA,MAAMG,qBAAwBF,GAAAA,IAAAA,CAAKC,KACjCH,CAAAA,OAAAA,CAAQI,qBAAqB,CAAA;AAG/B,QAAMC,MAAAA,QAAAA,GAAsB,MAAM,IAAA,CAAKC,WAAY,CAAA;AACjDC,UAAAA,KAAAA,EAAOtD,4BAAqBuD,CAAAA,KAAAA;AAC5BP,UAAAA,SAAAA;AACAG,UAAAA;SACF,CAAA;AAEA,QAAA,KAAA,MAAWK,WAAWJ,QAAU,EAAA;AAC9BK,UAAAA,OAAAA,CAAQC,GAAIT,CAAAA,IAAAA,CAAKU,SAAUH,CAAAA,OAAAA,CAAAA,CAAAA;AAC7B;AACF,OAAA,CAAA,OAASI,KAAO,EAAA;AACdH,QAAQG,OAAAA,CAAAA,KAAAA,CAAM,uBAAuBA,KAAAA,CAAAA;AACrCC,QAAAA,OAAAA,CAAQC,KAAK,CAAA,CAAA;AACf;KACF,CAAA;AACJ;EAEQtB,iBAA0B,GAAA;AAChC,IAAKV,IAAAA,CAAAA,OAAAA,CACFc,QAAQ,SAAA,CAAA,CACRP,YAAY,CAAW,QAAA,EAAA,IAAA,CAAKN,eAAe,CAAmB,iBAAA,CAAA,CAAA,CAC9Dc,eAAe,qBAAuB,EAAA,iBAAA,EACtCA,cAAe,CAAA,mBAAA,EAAqB,gCAAA,CACpCC,CAAAA,MAAAA,CAAO,OAAOC,OAAAA,KAAAA;AACb,MAAI,IAAA;AACF,QAAA,MAAMgB,SAAYd,GAAAA,IAAAA,CAAKC,KAAMH,CAAAA,OAAAA,CAAQgB,SAAS,CAAA;AAC9C,QAAA,MAAMC,MAASf,GAAAA,IAAAA,CAAKC,KAAMH,CAAAA,OAAAA,CAAQiB,MAAM,CAAA;AAExC,QAAMZ,MAAAA,QAAAA,GAAsB,MAAM,IAAA,CAAKC,WAAY,CAAA;AACjDC,UAAAA,KAAAA,EAAOtD,4BAAqBiE,CAAAA,OAAAA;UAC5BjB,SAAWe,EAAAA,SAAAA;AACXC,UAAAA;SACF,CAAA;AAEA,QAAA,KAAA,MAAWR,WAAWJ,QAAU,EAAA;AAC9BK,UAAAA,OAAAA,CAAQC,GAAIT,CAAAA,IAAAA,CAAKU,SAAUH,CAAAA,OAAAA,CAAAA,CAAAA;AAC7B;AACF,OAAA,CAAA,OAASI,KAAO,EAAA;AACdH,QAAQG,OAAAA,CAAAA,KAAAA,CAAM,0BAA0BA,KAAAA,CAAAA;AACxCC,QAAAA,OAAAA,CAAQC,KAAK,CAAA,CAAA;AACf;KACF,CAAA;AAEF,IAAA,IAAA,CAAKhC,OACFc,CAAAA,OAAAA,CAAQ,UAAA,CAAA,CACRP,WAAY,CAAA,0BAAA,CACZQ,CAAAA,cAAAA,CAAe,uBAAyB,EAAA,mBAAA,CACxCC,CAAAA,MAAAA,CAAO,OAAOC,OAAAA,KAAAA;AACb,MAAI,IAAA;AACF,QAAA,MAAMmB,WAAcjB,GAAAA,IAAAA,CAAKC,KAAMH,CAAAA,OAAAA,CAAQmB,WAAW,CAAA;AAElD,QAAMd,MAAAA,QAAAA,GAAsB,MAAM,IAAA,CAAKC,WAAY,CAAA;AACjDC,UAAAA,KAAAA,EAAOtD,4BAAqBmE,CAAAA,QAAAA;UAC5BnB,SAAWkB,EAAAA;SACb,CAAA;AAEA,QAAA,KAAA,MAAWV,WAAWJ,QAAU,EAAA;AAC9BK,UAAAA,OAAAA,CAAQC,GAAIT,CAAAA,IAAAA,CAAKU,SAAUH,CAAAA,OAAAA,CAAAA,CAAAA;AAC7B;AACF,OAAA,CAAA,OAASI,KAAO,EAAA;AACdH,QAAQG,OAAAA,CAAAA,KAAAA,CAAM,8BAA8BA,KAAAA,CAAAA;AAC5CC,QAAAA,OAAAA,CAAQC,KAAK,CAAA,CAAA;AACf;KACF,CAAA;AACJ;EAEQxB,gBAAyB,GAAA;AAC/B,IAAKR,IAAAA,CAAAA,OAAAA,CACFc,QAAQ,MAAA,CAAA,CACRP,YAAY,+BAAA,CAAA,CACZS,OAAO,YAAA;AACN,MAAI,IAAA;AACF,QAAMsB,MAAAA,IAAAA,GAAO,MAAM,IAAA,CAAKC,OAAO,EAAA;AAC/B,QAAA,MAAMb,OAAmB,GAAA;UACvBc,IAAM,EAAA,MAAA;UACNC,IAAMH,EAAAA;AACR,SAAA;AAEAX,QAAAA,OAAAA,CAAQC,GAAIT,CAAAA,IAAAA,CAAKU,SAAUH,CAAAA,OAAAA,CAAAA,CAAAA;AAC7B,OAAA,CAAA,OAASI,KAAO,EAAA;AACdH,QAAQG,OAAAA,CAAAA,KAAAA,CAAM,uBAAuBA,KAAAA,CAAAA;AACrCC,QAAAA,OAAAA,CAAQC,KAAK,CAAA,CAAA;AACf;KACF,CAAA;AACJ;EAEQrB,gBAAyB,GAAA;AAC/B,IAAA,IAAA,CAAKX,QACFc,OAAQ,CAAA,MAAA,EACRP,WAAY,CAAA,wBAAA,EACZQ,cAAe,CAAA,mBAAA,EAAqB,gCAAA,CAAA,CACpC2B,OAAO,iBAAmB,EAAA,wBAAA,EAA0B,IAAA,CACpD1B,CAAAA,MAAAA,CAAO,OAAOC,OAAAA,KAAAA;AACb,MAAI,IAAA;AACF,QAAA,MAAMiB,MAASf,GAAAA,IAAAA,CAAKC,KAAMH,CAAAA,OAAAA,CAAQiB,MAAM,CAAA;AACxC,QAAMS,MAAAA,KAAAA,GAAQ1B,QAAQ0B,KAAQxB,GAAAA,IAAAA,CAAKC,MAAMH,OAAQ0B,CAAAA,KAAK,IAAI,EAAC;AAE3D,QAAMrB,MAAAA,QAAAA,GAAsB,MAAM,IAAA,CAAKC,WAAY,CAAA;AACjDC,UAAAA,KAAAA,EAAOtD,4BAAqB0E,CAAAA,IAAAA;AAC5B1B,UAAAA,SAAAA,EAAW,EAAC;AACZgB,UAAAA,MAAAA;AACAS,UAAAA;SACF,CAAA;AAEA,QAAA,KAAA,MAAWjB,WAAWJ,QAAU,EAAA;AAC9BK,UAAAA,OAAAA,CAAQC,GAAIT,CAAAA,IAAAA,CAAKU,SAAUH,CAAAA,OAAAA,CAAAA,CAAAA;AAC7B;AACF,OAAA,CAAA,OAASI,KAAO,EAAA;AACdH,QAAQG,OAAAA,CAAAA,KAAAA,CAAM,sBAAsBA,KAAAA,CAAAA;AACpCC,QAAAA,OAAAA,CAAQC,KAAK,CAAA,CAAA;AACf;KACF,CAAA;AACJ;EAEQpB,oBAA6B,GAAA;AACnC,IAAA,IAAA,CAAKZ,QACFc,OAAQ,CAAA,WAAA,CACRP,CAAAA,WAAAA,CAAY,8CAAA,CACZQ,CAAAA,cAAAA,CAAe,mBAAqB,EAAA,gCAAA,EACpCA,cACC,CAAA,uCAAA,EACA,6BAAA,CAEDC,CAAAA,MAAAA,CAAO,OAAOC,OAAAA,KAAAA;AACb,MAAI,IAAA;AACF,QAAA,MAAMiB,MAASf,GAAAA,IAAAA,CAAKC,KAAMH,CAAAA,OAAAA,CAAQiB,MAAM,CAAA;AACxC,QAAA,MAAMb,qBAAwBF,GAAAA,IAAAA,CAAKC,KACjCH,CAAAA,OAAAA,CAAQI,qBAAqB,CAAA;AAE/B,QAAMC,MAAAA,QAAAA,GAAsB,MAAM,IAAA,CAAKC,WAAY,CAAA;AACjDC,UAAAA,KAAAA,EAAOtD,4BAAqB2E,CAAAA,SAAAA;AAC5B3B,UAAAA,SAAAA,EAAW,EAAC;AACZgB,UAAAA,MAAAA;AACAb,UAAAA;SACF,CAAA;AAEA,QAAA,KAAA,MAAWK,WAAWJ,QAAU,EAAA;AAC9BK,UAAAA,OAAAA,CAAQC,GAAIT,CAAAA,IAAAA,CAAKU,SAAUH,CAAAA,OAAAA,CAAAA,CAAAA;AAC7B;AACF,OAAA,CAAA,OAASI,KAAO,EAAA;AACdH,QAAQG,OAAAA,CAAAA,KAAAA,CAAM,wBAAwBA,KAAAA,CAAAA;AACtCC,QAAAA,OAAAA,CAAQC,KAAK,CAAA,CAAA;AACf;KACF,CAAA;AACJ;EAEQnB,oBAA6B,GAAA;AACnC,IAAKb,IAAAA,CAAAA,OAAAA,CACFc,OAAQ,CAAA,WAAA,CACRP,CAAAA,WAAAA,CAAY,0BAAA,CACZQ,CAAAA,cAAAA,CAAe,mBAAqB,EAAA,gCAAA,CACpCA,CAAAA,cAAAA,CACC,yCACA,6BAAA,CAAA,CAEDA,cAAe,CAAA,oBAAA,EAAsB,0BAAA,CAAA,CACrCA,cAAe,CAAA,8BAAA,EAAgC,wBAAA,CAAA,CAC/CC,MAAO,CAAA,OAAOC,OAAAA,KAAAA;AACb,MAAI,IAAA;AACF,QAAA,MAAMiB,MAASf,GAAAA,IAAAA,CAAKC,KAAMH,CAAAA,OAAAA,CAAQiB,MAAM,CAAA;AACxC,QAAA,MAAMb,qBAAwBF,GAAAA,IAAAA,CAAKC,KACjCH,CAAAA,OAAAA,CAAQI,qBAAqB,CAAA;AAE/B,QAAA,MAAMyB,aAAgB3B,GAAAA,IAAAA,CAAKC,KAAMH,CAAAA,OAAAA,CAAQ6B,aAAa,CAAA;AAEtD,QAAMxB,MAAAA,QAAAA,GAAsB,MAAM,IAAA,CAAKC,WAAY,CAAA;AACjDC,UAAAA,KAAAA,EAAOtD,4BAAqB6E,CAAAA,SAAAA;UAC5B7B,SAAW,EAAA;AACTZ,YAAAA,IAAAA,EAAMW,OAAQ+B,CAAAA,QAAAA;YACdC,SAAWH,EAAAA;AACb,WAAA;AACAZ,UAAAA,MAAAA;AACAb,UAAAA;SACF,CAAA;AAEA,QAAA,KAAA,MAAWK,WAAWJ,QAAU,EAAA;AAC9BK,UAAAA,OAAAA,CAAQC,GAAIT,CAAAA,IAAAA,CAAKU,SAAUH,CAAAA,OAAAA,CAAAA,CAAAA;AAC7B;AACF,OAAA,CAAA,OAASI,KAAO,EAAA;AACdH,QAAQG,OAAAA,CAAAA,KAAAA,CAAM,uBAAuBA,KAAAA,CAAAA;AACrCC,QAAAA,OAAAA,CAAQC,KAAK,CAAA,CAAA;AACf;KACF,CAAA;AACJ;;;;EAoBOZ,KAAc,GAAA;AACnB,IAAA,IAAA,CAAKpB,QAAQoB,KAAK,EAAA;AACpB;;;;EAKO8B,UAAsB,GAAA;AAC3B,IAAA,OAAO,IAAKlD,CAAAA,OAAAA;AACd;AACF","file":"index.js","sourcesContent":["export var LLMModelEnum;\n(function (LLMModelEnum) {\n LLMModelEnum[\"GPT35TURBO\"] = \"GPT35TURBO\";\n LLMModelEnum[\"GPT4TURBO\"] = \"GPT4TURBO\";\n LLMModelEnum[\"GPT4O\"] = \"GPT4O\";\n LLMModelEnum[\"GPT41\"] = \"GPT41\";\n LLMModelEnum[\"GPT41MINI\"] = \"GPT41MINI\";\n LLMModelEnum[\"GPT41NANO\"] = \"GPT41NANO\";\n LLMModelEnum[\"LLAMA3\"] = \"LLAMA3\";\n LLMModelEnum[\"CLAUDEOPUS\"] = \"CLAUDEOPUS\";\n LLMModelEnum[\"CLAUDESONNET\"] = \"CLAUDESONNET\";\n LLMModelEnum[\"CLAUDEHAIKU\"] = \"CLAUDEHAIKU\";\n LLMModelEnum[\"GEMINI25FLASH\"] = \"GEMINI25FLASH\";\n LLMModelEnum[\"GEMINI25PRO\"] = \"GEMINI25PRO\";\n LLMModelEnum[\"GEMINI20FLASH\"] = \"GEMINI20FLASH\";\n LLMModelEnum[\"GEMINI20FLASHLITE\"] = \"GEMINI20FLASHLITE\";\n})(LLMModelEnum || (LLMModelEnum = {}));\nexport const LLMModelType = {\n GPT35TURBO: \"GPT35TURBO\",\n GPT4TURBO: \"GPT4TURBO\",\n GPT4O: \"GPT4O\",\n GPT41: \"GPT41\",\n GPT41MINI: \"GPT41MINI\",\n GPT41NANO: \"GPT41NANO\",\n LLAMA3: \"LLAMA3\",\n CLAUDEOPUS: \"CLAUDEOPUS\",\n CLAUDESONNET: \"CLAUDESONNET\",\n CLAUDEHAIKU: \"CLAUDEHAIKU\",\n GEMINI25FLASH: \"GEMINI25FLASH\",\n GEMINI25PRO: \"GEMINI25PRO\",\n GEMINI20FLASH: \"GEMINI20FLASH\",\n GEMINI20FLASHLITE: \"GEMINI20FLASHLITE\",\n};\nexport var LLMMappings;\n(function (LLMMappings) {\n LLMMappings[\"GPT35TURBO\"] = \"gpt-3.5-turbo\";\n LLMMappings[\"GPT4TURBO\"] = \"gpt-4-turbo\";\n LLMMappings[\"GPT4O\"] = \"gpt-4o\";\n LLMMappings[\"GPT41\"] = \"gpt-4.1-2025-04-14\";\n LLMMappings[\"GPT41MINI\"] = \"gpt-4.1-mini-2025-04-14\";\n LLMMappings[\"GPT41NANO\"] = \"gpt-4.1-nano-2025-04-14\";\n LLMMappings[\"LLAMA3\"] = \"llama3\";\n LLMMappings[\"CLAUDEOPUS\"] = \"claude-3-opus-20240229\";\n LLMMappings[\"CLAUDESONNET\"] = \"claude-3-7-sonnet-20250219\";\n LLMMappings[\"CLAUDEHAIKU\"] = \"claude-3-5-haiku-20241022\";\n LLMMappings[\"GEMINI25FLASH\"] = \"gemini-2.5-flash-preview-04-17\";\n LLMMappings[\"GEMINI25PRO\"] = \"gemini-2.5-pro-preview-03-25\";\n LLMMappings[\"GEMINI20FLASH\"] = \"gemini-2.0-flash\";\n LLMMappings[\"GEMINI20FLASHLITE\"] = \"gemini-2.0-flash-lite\";\n})(LLMMappings || (LLMMappings = {}));\nexport const OpenAIModels = [\n LLMModelEnum.GPT35TURBO,\n LLMModelEnum.GPT4TURBO,\n LLMModelEnum.GPT4O,\n LLMModelEnum.GPT41,\n LLMModelEnum.GPT41MINI,\n LLMModelEnum.GPT41NANO,\n];\nexport const ClaudeModels = [\n LLMModelEnum.CLAUDEOPUS,\n LLMModelEnum.CLAUDESONNET,\n LLMModelEnum.CLAUDEHAIKU,\n];\nexport const GeminiModels = [\n LLMModelEnum.GEMINI25FLASH,\n LLMModelEnum.GEMINI25PRO,\n LLMModelEnum.GEMINI20FLASH,\n LLMModelEnum.GEMINI20FLASHLITE,\n];\n","/**\n * Helper to get episodic node properties for Cypher RETURN clause (excludes embeddings)\n * Usage in Cypher: RETURN ${EPISODIC_NODE_PROPERTIES} as episode\n */\nexport const EPISODIC_NODE_PROPERTIES = `{\n uuid: e.uuid,\n content: e.content,\n originalContent: e.originalContent,\n source: e.source,\n metadata: e.metadata,\n createdAt: e.createdAt,\n userId: e.userId,\n sessionId: e.sessionId,\n queueId: e.queueId,\n labelIds: e.labelIds,\n validAt: e.validAt,\n recallCount: e.recallCount,\n type: e.type,\n chunkIndex: e.chunkIndex,\n totalChunks: e.totalChunks,\n version: e.version,\n contentHash: e.contentHash,\n previousVersionSessionId: e.previousVersionSessionId,\n chunkHashes: e.chunkHashes\n}`;\nexport const STATEMENT_NODE_PROPERTIES = `{\n uuid: s.uuid,\n fact: s.fact,\n createdAt: s.createdAt,\n userId: s.userId,\n validAt: s.validAt,\n invalidAt: s.invalidAt,\n invalidatedBy: s.invalidatedBy,\n attributes: s.attributes,\n recallCount: s.recallCount,\n provenanceCount: s.provenanceCount\n}`;\nexport const ENTITY_NODE_PROPERTIES = `{\n uuid: ent.uuid,\n name: ent.name,\n createdAt: ent.createdAt,\n userId: ent.userId,\n attributes: ent.attributes\n}`;\nexport const COMPACTED_SESSION_NODE_PROPERTIES = `{\n uuid: cs.uuid,\n sessionId: cs.sessionId,\n summary: cs.summary,\n episodeCount: cs.episodeCount,\n startTime: cs.startTime,\n endTime: cs.endTime,\n createdAt: cs.createdAt,\n updatedAt: cs.updatedAt,\n confidence: cs.confidence,\n userId: cs.userId,\n source: cs.source,\n compressionRatio: cs.compressionRatio,\n metadata: cs.metadata\n}`;\nexport var EpisodeTypeEnum;\n(function (EpisodeTypeEnum) {\n EpisodeTypeEnum[\"CONVERSATION\"] = \"CONVERSATION\";\n EpisodeTypeEnum[\"DOCUMENT\"] = \"DOCUMENT\";\n})(EpisodeTypeEnum || (EpisodeTypeEnum = {}));\nexport const EpisodeType = {\n CONVERSATION: \"CONVERSATION\",\n DOCUMENT: \"DOCUMENT\",\n IMAGE: \"IMAGE\",\n};\n","export var ActionStatusEnum;\n(function (ActionStatusEnum) {\n ActionStatusEnum[\"ACCEPT\"] = \"ACCEPT\";\n ActionStatusEnum[\"DECLINE\"] = \"DECLINE\";\n ActionStatusEnum[\"QUESTION\"] = \"QUESTION\";\n ActionStatusEnum[\"TOOL_REQUEST\"] = \"TOOL_REQUEST\";\n ActionStatusEnum[\"SUCCESS\"] = \"SUCCESS\";\n ActionStatusEnum[\"FAILED\"] = \"FAILED\";\n})(ActionStatusEnum || (ActionStatusEnum = {}));\nexport const ActionStatus = {\n ACCEPT: \"ACCEPT\",\n DECLINE: \"DECLINE\",\n QUESTION: \"QUESTION\",\n TOOL_REQUEST: \"TOOL_REQUEST\",\n SUCCESS: \"SUCCESS\",\n FAILED: \"FAILED\",\n};\n","export class OAuth2Params {\n}\nexport class APIKeyParams {\n}\n","export var IntegrationEventType;\n(function (IntegrationEventType) {\n /**\n * Processes authentication data and returns tokens/credentials to be saved\n */\n IntegrationEventType[\"SETUP\"] = \"setup\";\n /**\n * Processing incoming data from the integration\n */\n IntegrationEventType[\"PROCESS\"] = \"process\";\n /**\n * Identifying which account a webhook belongs to\n */\n IntegrationEventType[\"IDENTIFY\"] = \"identify\";\n /**\n * Scheduled synchronization of data\n */\n IntegrationEventType[\"SYNC\"] = \"sync\";\n /**\n * For returning integration metadata/config\n */\n IntegrationEventType[\"SPEC\"] = \"spec\";\n /**\n * Get available MCP tools for this integration\n */\n IntegrationEventType[\"GET_TOOLS\"] = \"get-tools\";\n /**\n * Call a specific MCP tool\n */\n IntegrationEventType[\"CALL_TOOL\"] = \"call-tool\";\n})(IntegrationEventType || (IntegrationEventType = {}));\nexport class Spec {\n}\n","export var UserTypeEnum;\n(function (UserTypeEnum) {\n UserTypeEnum[\"Agent\"] = \"Agent\";\n UserTypeEnum[\"User\"] = \"User\";\n UserTypeEnum[\"System\"] = \"System\";\n})(UserTypeEnum || (UserTypeEnum = {}));\n","// Pattern types for categorization (guidelines, not restrictions)\n// LLM can suggest new pattern types beyond these categories\nexport const EXPLICIT_PATTERN_TYPES = {\n // Derived from space themes and explicit content\n THEME: \"theme\", // High-level thematic content\n TOPIC: \"topic\", // Specific subject matter\n DOMAIN: \"domain\", // Knowledge or work domains\n INTEREST_AREA: \"interest_area\", // Areas of personal interest\n};\nexport const IMPLICIT_PATTERN_TYPES = {\n // Discovered from behavioral analysis and content patterns\n PREFERENCE: \"preference\", // Personal preferences and choices\n HABIT: \"habit\", // Recurring behaviors and routines\n WORKFLOW: \"workflow\", // Work and process patterns\n COMMUNICATION_STYLE: \"communication_style\", // How user communicates\n DECISION_PATTERN: \"decision_pattern\", // Decision-making approaches\n TEMPORAL_PATTERN: \"temporal_pattern\", // Time-based behavioral patterns\n BEHAVIORAL_PATTERN: \"behavioral_pattern\", // General behavioral tendencies\n LEARNING_STYLE: \"learning_style\", // How user learns and processes info\n COLLABORATION_STYLE: \"collaboration_style\", // How user works with others\n};\n// Combined pattern types for reference\nexport const PATTERN_TYPES = Object.assign(Object.assign({}, EXPLICIT_PATTERN_TYPES), IMPLICIT_PATTERN_TYPES);\n","/**\n * Quality thresholds for filtering\n */\nexport const QUALITY_THRESHOLDS = {\n // Adaptive episode-level scoring (based on available sources)\n HIGH_QUALITY_EPISODE: 5.0, // For Episode Graph or BFS results (max score ~10+)\n MEDIUM_QUALITY_EPISODE: 1.0, // For Vector-only results (max score ~1.5)\n LOW_QUALITY_EPISODE: 0.3, // For BM25-only results (max score ~0.5)\n // Overall result confidence\n CONFIDENT_RESULT: 0.7, // High confidence, skip LLM validation\n UNCERTAIN_RESULT: 0.3, // Borderline, use LLM validation\n NO_RESULT: 0.3, // Too low, return empty\n // Score gap detection\n MINIMUM_GAP_RATIO: 0.5, // 50% score drop = gap\n};\n","import { Command } from 'commander';\nimport {\n IntegrationEventPayload,\n Spec,\n Message,\n IntegrationEventType,\n} from '@core/types';\n\nexport abstract class IntegrationCLI {\n protected program: Command;\n protected integrationName: string;\n protected version: string;\n\n constructor(integrationName: string, version: string = '1.0.0') {\n this.integrationName = integrationName;\n this.version = version;\n this.program = new Command();\n this.setupProgram();\n }\n\n private setupProgram(): void {\n this.program\n .name(`${this.integrationName}-integration`)\n .description(`${this.integrationName} integration CLI`)\n .version(this.version);\n\n this.setupSpecCommand();\n this.setupAccountCommands();\n this.setupDataCommands();\n this.setupSyncCommand();\n this.setupGetToolsCommand();\n this.setupCallToolCommand();\n }\n\n private setupAccountCommands(): void {\n this.program\n .command('setup')\n .description(`Set up a new ${this.integrationName} integration account`)\n .requiredOption(\n '--event-body <body>',\n 'Event body JSON (e.g. OAuth response or setup data)',\n )\n .requiredOption(\n '--integration-definition <definition>',\n 'Integration definition JSON',\n )\n .action(async (options) => {\n try {\n const eventBody = JSON.parse(options.eventBody);\n const integrationDefinition = JSON.parse(\n options.integrationDefinition,\n );\n\n const messages: Message[] = await this.handleEvent({\n event: IntegrationEventType.SETUP,\n eventBody,\n integrationDefinition,\n });\n\n for (const message of messages) {\n console.log(JSON.stringify(message));\n }\n } catch (error) {\n console.error('Error during setup:', error);\n process.exit(1);\n }\n });\n }\n\n private setupDataCommands(): void {\n this.program\n .command('process')\n .description(`Process ${this.integrationName} integration data`)\n .requiredOption('--event-data <data>', 'Event data JSON')\n .requiredOption('--config <config>', 'Integration configuration JSON')\n .action(async (options) => {\n try {\n const eventData = JSON.parse(options.eventData);\n const config = JSON.parse(options.config);\n\n const messages: Message[] = await this.handleEvent({\n event: IntegrationEventType.PROCESS,\n eventBody: eventData,\n config,\n });\n\n for (const message of messages) {\n console.log(JSON.stringify(message));\n }\n } catch (error) {\n console.error('Error processing data:', error);\n process.exit(1);\n }\n });\n\n this.program\n .command('identify')\n .description('Identify webhook account')\n .requiredOption('--webhook-data <data>', 'Webhook data JSON')\n .action(async (options) => {\n try {\n const webhookData = JSON.parse(options.webhookData);\n\n const messages: Message[] = await this.handleEvent({\n event: IntegrationEventType.IDENTIFY,\n eventBody: webhookData,\n });\n\n for (const message of messages) {\n console.log(JSON.stringify(message));\n }\n } catch (error) {\n console.error('Error identifying account:', error);\n process.exit(1);\n }\n });\n }\n\n private setupSpecCommand(): void {\n this.program\n .command('spec')\n .description('Get integration specification')\n .action(async () => {\n try {\n const spec = await this.getSpec();\n const message: Message = {\n type: 'spec',\n data: spec,\n };\n // For spec, we keep the single message output for compatibility\n console.log(JSON.stringify(message));\n } catch (error) {\n console.error('Error getting spec:', error);\n process.exit(1);\n }\n });\n }\n\n private setupSyncCommand(): void {\n this.program\n .command('sync')\n .description('Perform scheduled sync')\n .requiredOption('--config <config>', 'Integration configuration JSON')\n .option('--state <state>', 'Integration state JSON', '{}')\n .action(async (options) => {\n try {\n const config = JSON.parse(options.config);\n const state = options.state ? JSON.parse(options.state) : {};\n\n const messages: Message[] = await this.handleEvent({\n event: IntegrationEventType.SYNC,\n eventBody: {},\n config,\n state,\n });\n\n for (const message of messages) {\n console.log(JSON.stringify(message));\n }\n } catch (error) {\n console.error('Error during sync:', error);\n process.exit(1);\n }\n });\n }\n\n private setupGetToolsCommand(): void {\n this.program\n .command('get-tools')\n .description('Get available MCP tools for this integration')\n .requiredOption('--config <config>', 'Integration configuration JSON')\n .requiredOption(\n '--integration-definition <definition>',\n 'Integration definition JSON',\n )\n .action(async (options) => {\n try {\n const config = JSON.parse(options.config);\n const integrationDefinition = JSON.parse(\n options.integrationDefinition,\n );\n const messages: Message[] = await this.handleEvent({\n event: IntegrationEventType.GET_TOOLS,\n eventBody: {},\n config,\n integrationDefinition,\n });\n\n for (const message of messages) {\n console.log(JSON.stringify(message));\n }\n } catch (error) {\n console.error('Error getting tools:', error);\n process.exit(1);\n }\n });\n }\n\n private setupCallToolCommand(): void {\n this.program\n .command('call-tool')\n .description('Call a specific MCP tool')\n .requiredOption('--config <config>', 'Integration configuration JSON')\n .requiredOption(\n '--integration-definition <definition>',\n 'Integration definition JSON',\n )\n .requiredOption('--tool-name <name>', 'Name of the tool to call')\n .requiredOption('--tool-arguments <arguments>', 'Tool arguments as JSON')\n .action(async (options) => {\n try {\n const config = JSON.parse(options.config);\n const integrationDefinition = JSON.parse(\n options.integrationDefinition,\n );\n const toolArguments = JSON.parse(options.toolArguments);\n\n const messages: Message[] = await this.handleEvent({\n event: IntegrationEventType.CALL_TOOL,\n eventBody: {\n name: options.toolName,\n arguments: toolArguments,\n },\n config,\n integrationDefinition,\n });\n\n for (const message of messages) {\n console.log(JSON.stringify(message));\n }\n } catch (error) {\n console.error('Error calling tool:', error);\n process.exit(1);\n }\n });\n }\n\n /**\n * Abstract method that must be implemented by each integration\n * This method should handle the integration-specific logic for each event type\n * and return an array of Message objects.\n */\n protected abstract handleEvent(\n eventPayload: IntegrationEventPayload,\n ): Promise<Message[]>;\n\n /**\n * Abstract method that must be implemented by each integration\n * This method should return the integration specification\n */\n protected abstract getSpec(): Promise<Spec>;\n\n /**\n * Parse and execute the CLI commands\n */\n public parse(): void {\n this.program.parse();\n }\n\n /**\n * Get the commander program instance for additional customization\n */\n public getProgram(): Command {\n return this.program;\n }\n}\n"]}
|
package/dist/index.mjs
CHANGED
|
@@ -84,11 +84,17 @@ var EPISODIC_NODE_PROPERTIES = `{
|
|
|
84
84
|
createdAt: e.createdAt,
|
|
85
85
|
userId: e.userId,
|
|
86
86
|
sessionId: e.sessionId,
|
|
87
|
+
queueId: e.queueId,
|
|
87
88
|
labelIds: e.labelIds,
|
|
88
89
|
validAt: e.validAt,
|
|
89
90
|
recallCount: e.recallCount,
|
|
91
|
+
type: e.type,
|
|
90
92
|
chunkIndex: e.chunkIndex,
|
|
91
|
-
|
|
93
|
+
totalChunks: e.totalChunks,
|
|
94
|
+
version: e.version,
|
|
95
|
+
contentHash: e.contentHash,
|
|
96
|
+
previousVersionSessionId: e.previousVersionSessionId,
|
|
97
|
+
chunkHashes: e.chunkHashes
|
|
92
98
|
}`;
|
|
93
99
|
var STATEMENT_NODE_PROPERTIES = `{
|
|
94
100
|
uuid: s.uuid,
|
|
@@ -174,7 +180,8 @@ var IntegrationEventType;
|
|
|
174
180
|
IntegrationEventType2["IDENTIFY"] = "identify";
|
|
175
181
|
IntegrationEventType2["SYNC"] = "sync";
|
|
176
182
|
IntegrationEventType2["SPEC"] = "spec";
|
|
177
|
-
IntegrationEventType2["
|
|
183
|
+
IntegrationEventType2["GET_TOOLS"] = "get-tools";
|
|
184
|
+
IntegrationEventType2["CALL_TOOL"] = "call-tool";
|
|
178
185
|
})(IntegrationEventType || (IntegrationEventType = {}));
|
|
179
186
|
var Spec = class {
|
|
180
187
|
static {
|
|
@@ -244,7 +251,8 @@ var IntegrationCLI = class {
|
|
|
244
251
|
this.setupAccountCommands();
|
|
245
252
|
this.setupDataCommands();
|
|
246
253
|
this.setupSyncCommand();
|
|
247
|
-
this.
|
|
254
|
+
this.setupGetToolsCommand();
|
|
255
|
+
this.setupCallToolCommand();
|
|
248
256
|
}
|
|
249
257
|
setupAccountCommands() {
|
|
250
258
|
this.program.command("setup").description(`Set up a new ${this.integrationName} integration account`).requiredOption("--event-body <body>", "Event body JSON (e.g. OAuth response or setup data)").requiredOption("--integration-definition <definition>", "Integration definition JSON").action(async (options) => {
|
|
@@ -334,19 +342,46 @@ var IntegrationCLI = class {
|
|
|
334
342
|
}
|
|
335
343
|
});
|
|
336
344
|
}
|
|
337
|
-
|
|
338
|
-
this.program.command("
|
|
345
|
+
setupGetToolsCommand() {
|
|
346
|
+
this.program.command("get-tools").description("Get available MCP tools for this integration").requiredOption("--config <config>", "Integration configuration JSON").requiredOption("--integration-definition <definition>", "Integration definition JSON").action(async (options) => {
|
|
339
347
|
try {
|
|
340
348
|
const config = JSON.parse(options.config);
|
|
341
349
|
const integrationDefinition = JSON.parse(options.integrationDefinition);
|
|
342
|
-
await this.handleEvent({
|
|
343
|
-
event: IntegrationEventType.
|
|
350
|
+
const messages = await this.handleEvent({
|
|
351
|
+
event: IntegrationEventType.GET_TOOLS,
|
|
344
352
|
eventBody: {},
|
|
345
353
|
config,
|
|
346
354
|
integrationDefinition
|
|
347
355
|
});
|
|
356
|
+
for (const message of messages) {
|
|
357
|
+
console.log(JSON.stringify(message));
|
|
358
|
+
}
|
|
348
359
|
} catch (error) {
|
|
349
|
-
console.error("Error
|
|
360
|
+
console.error("Error getting tools:", error);
|
|
361
|
+
process.exit(1);
|
|
362
|
+
}
|
|
363
|
+
});
|
|
364
|
+
}
|
|
365
|
+
setupCallToolCommand() {
|
|
366
|
+
this.program.command("call-tool").description("Call a specific MCP tool").requiredOption("--config <config>", "Integration configuration JSON").requiredOption("--integration-definition <definition>", "Integration definition JSON").requiredOption("--tool-name <name>", "Name of the tool to call").requiredOption("--tool-arguments <arguments>", "Tool arguments as JSON").action(async (options) => {
|
|
367
|
+
try {
|
|
368
|
+
const config = JSON.parse(options.config);
|
|
369
|
+
const integrationDefinition = JSON.parse(options.integrationDefinition);
|
|
370
|
+
const toolArguments = JSON.parse(options.toolArguments);
|
|
371
|
+
const messages = await this.handleEvent({
|
|
372
|
+
event: IntegrationEventType.CALL_TOOL,
|
|
373
|
+
eventBody: {
|
|
374
|
+
name: options.toolName,
|
|
375
|
+
arguments: toolArguments
|
|
376
|
+
},
|
|
377
|
+
config,
|
|
378
|
+
integrationDefinition
|
|
379
|
+
});
|
|
380
|
+
for (const message of messages) {
|
|
381
|
+
console.log(JSON.stringify(message));
|
|
382
|
+
}
|
|
383
|
+
} catch (error) {
|
|
384
|
+
console.error("Error calling tool:", error);
|
|
350
385
|
process.exit(1);
|
|
351
386
|
}
|
|
352
387
|
});
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../types/dist/llm/llm.entity.js","../../types/dist/graph/graph.entity.js","../../types/dist/conversation-execution-step/conversation-execution.entity.js","../../types/dist/oauth/params.js","../../types/dist/integration.js","../../types/dist/user/index.js","../../types/dist/pattern.js","../../types/dist/search.js","../src/integrations/integration-cli.ts"],"names":["LLMModelEnum","LLMModelType","GPT35TURBO","GPT4TURBO","GPT4O","GPT41","GPT41MINI","GPT41NANO","LLAMA3","CLAUDEOPUS","CLAUDESONNET","CLAUDEHAIKU","GEMINI25FLASH","GEMINI25PRO","GEMINI20FLASH","GEMINI20FLASHLITE","LLMMappings","OpenAIModels","ClaudeModels","GeminiModels","EPISODIC_NODE_PROPERTIES","STATEMENT_NODE_PROPERTIES","ENTITY_NODE_PROPERTIES","COMPACTED_SESSION_NODE_PROPERTIES","EpisodeTypeEnum","EpisodeType","CONVERSATION","DOCUMENT","IMAGE","ActionStatusEnum","ActionStatus","ACCEPT","DECLINE","QUESTION","TOOL_REQUEST","SUCCESS","FAILED","OAuth2Params","APIKeyParams","IntegrationEventType","Spec","UserTypeEnum","EXPLICIT_PATTERN_TYPES","THEME","TOPIC","DOMAIN","INTEREST_AREA","IMPLICIT_PATTERN_TYPES","PREFERENCE","HABIT","WORKFLOW","COMMUNICATION_STYLE","DECISION_PATTERN","TEMPORAL_PATTERN","BEHAVIORAL_PATTERN","LEARNING_STYLE","COLLABORATION_STYLE","PATTERN_TYPES","Object","assign","QUALITY_THRESHOLDS","HIGH_QUALITY_EPISODE","MEDIUM_QUALITY_EPISODE","LOW_QUALITY_EPISODE","CONFIDENT_RESULT","UNCERTAIN_RESULT","NO_RESULT","MINIMUM_GAP_RATIO","IntegrationCLI","program","integrationName","version","constructor","Command","setupProgram","name","description","setupSpecCommand","setupAccountCommands","setupDataCommands","setupSyncCommand","setupMCPCommand","command","requiredOption","action","options","eventBody","JSON","parse","integrationDefinition","messages","handleEvent","event","SETUP","message","console","log","stringify","error","process","exit","eventData","config","PROCESS","webhookData","IDENTIFY","spec","getSpec","type","data","option","state","SYNC","MCP","getProgram"],"mappings":"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","file":"index.mjs","sourcesContent":["export var LLMModelEnum;\n(function (LLMModelEnum) {\n LLMModelEnum[\"GPT35TURBO\"] = \"GPT35TURBO\";\n LLMModelEnum[\"GPT4TURBO\"] = \"GPT4TURBO\";\n LLMModelEnum[\"GPT4O\"] = \"GPT4O\";\n LLMModelEnum[\"GPT41\"] = \"GPT41\";\n LLMModelEnum[\"GPT41MINI\"] = \"GPT41MINI\";\n LLMModelEnum[\"GPT41NANO\"] = \"GPT41NANO\";\n LLMModelEnum[\"LLAMA3\"] = \"LLAMA3\";\n LLMModelEnum[\"CLAUDEOPUS\"] = \"CLAUDEOPUS\";\n LLMModelEnum[\"CLAUDESONNET\"] = \"CLAUDESONNET\";\n LLMModelEnum[\"CLAUDEHAIKU\"] = \"CLAUDEHAIKU\";\n LLMModelEnum[\"GEMINI25FLASH\"] = \"GEMINI25FLASH\";\n LLMModelEnum[\"GEMINI25PRO\"] = \"GEMINI25PRO\";\n LLMModelEnum[\"GEMINI20FLASH\"] = \"GEMINI20FLASH\";\n LLMModelEnum[\"GEMINI20FLASHLITE\"] = \"GEMINI20FLASHLITE\";\n})(LLMModelEnum || (LLMModelEnum = {}));\nexport const LLMModelType = {\n GPT35TURBO: \"GPT35TURBO\",\n GPT4TURBO: \"GPT4TURBO\",\n GPT4O: \"GPT4O\",\n GPT41: \"GPT41\",\n GPT41MINI: \"GPT41MINI\",\n GPT41NANO: \"GPT41NANO\",\n LLAMA3: \"LLAMA3\",\n CLAUDEOPUS: \"CLAUDEOPUS\",\n CLAUDESONNET: \"CLAUDESONNET\",\n CLAUDEHAIKU: \"CLAUDEHAIKU\",\n GEMINI25FLASH: \"GEMINI25FLASH\",\n GEMINI25PRO: \"GEMINI25PRO\",\n GEMINI20FLASH: \"GEMINI20FLASH\",\n GEMINI20FLASHLITE: \"GEMINI20FLASHLITE\",\n};\nexport var LLMMappings;\n(function (LLMMappings) {\n LLMMappings[\"GPT35TURBO\"] = \"gpt-3.5-turbo\";\n LLMMappings[\"GPT4TURBO\"] = \"gpt-4-turbo\";\n LLMMappings[\"GPT4O\"] = \"gpt-4o\";\n LLMMappings[\"GPT41\"] = \"gpt-4.1-2025-04-14\";\n LLMMappings[\"GPT41MINI\"] = \"gpt-4.1-mini-2025-04-14\";\n LLMMappings[\"GPT41NANO\"] = \"gpt-4.1-nano-2025-04-14\";\n LLMMappings[\"LLAMA3\"] = \"llama3\";\n LLMMappings[\"CLAUDEOPUS\"] = \"claude-3-opus-20240229\";\n LLMMappings[\"CLAUDESONNET\"] = \"claude-3-7-sonnet-20250219\";\n LLMMappings[\"CLAUDEHAIKU\"] = \"claude-3-5-haiku-20241022\";\n LLMMappings[\"GEMINI25FLASH\"] = \"gemini-2.5-flash-preview-04-17\";\n LLMMappings[\"GEMINI25PRO\"] = \"gemini-2.5-pro-preview-03-25\";\n LLMMappings[\"GEMINI20FLASH\"] = \"gemini-2.0-flash\";\n LLMMappings[\"GEMINI20FLASHLITE\"] = \"gemini-2.0-flash-lite\";\n})(LLMMappings || (LLMMappings = {}));\nexport const OpenAIModels = [\n LLMModelEnum.GPT35TURBO,\n LLMModelEnum.GPT4TURBO,\n LLMModelEnum.GPT4O,\n LLMModelEnum.GPT41,\n LLMModelEnum.GPT41MINI,\n LLMModelEnum.GPT41NANO,\n];\nexport const ClaudeModels = [\n LLMModelEnum.CLAUDEOPUS,\n LLMModelEnum.CLAUDESONNET,\n LLMModelEnum.CLAUDEHAIKU,\n];\nexport const GeminiModels = [\n LLMModelEnum.GEMINI25FLASH,\n LLMModelEnum.GEMINI25PRO,\n LLMModelEnum.GEMINI20FLASH,\n LLMModelEnum.GEMINI20FLASHLITE,\n];\n","/**\n * Helper to get episodic node properties for Cypher RETURN clause (excludes embeddings)\n * Usage in Cypher: RETURN ${EPISODIC_NODE_PROPERTIES} as episode\n */\nexport const EPISODIC_NODE_PROPERTIES = `{\n uuid: e.uuid,\n content: e.content,\n originalContent: e.originalContent,\n source: e.source,\n metadata: e.metadata,\n createdAt: e.createdAt,\n userId: e.userId,\n sessionId: e.sessionId,\n labelIds: e.labelIds,\n validAt: e.validAt,\n recallCount: e.recallCount,\n chunkIndex: e.chunkIndex,\n documentId: e.documentId\n}`;\nexport const STATEMENT_NODE_PROPERTIES = `{\n uuid: s.uuid,\n fact: s.fact,\n createdAt: s.createdAt,\n userId: s.userId,\n validAt: s.validAt,\n invalidAt: s.invalidAt,\n invalidatedBy: s.invalidatedBy,\n attributes: s.attributes,\n recallCount: s.recallCount,\n provenanceCount: s.provenanceCount\n}`;\nexport const ENTITY_NODE_PROPERTIES = `{\n uuid: ent.uuid,\n name: ent.name,\n createdAt: ent.createdAt,\n userId: ent.userId,\n attributes: ent.attributes\n}`;\nexport const COMPACTED_SESSION_NODE_PROPERTIES = `{\n uuid: cs.uuid,\n sessionId: cs.sessionId,\n summary: cs.summary,\n episodeCount: cs.episodeCount,\n startTime: cs.startTime,\n endTime: cs.endTime,\n createdAt: cs.createdAt,\n updatedAt: cs.updatedAt,\n confidence: cs.confidence,\n userId: cs.userId,\n source: cs.source,\n compressionRatio: cs.compressionRatio,\n metadata: cs.metadata\n}`;\nexport var EpisodeTypeEnum;\n(function (EpisodeTypeEnum) {\n EpisodeTypeEnum[\"CONVERSATION\"] = \"CONVERSATION\";\n EpisodeTypeEnum[\"DOCUMENT\"] = \"DOCUMENT\";\n})(EpisodeTypeEnum || (EpisodeTypeEnum = {}));\nexport const EpisodeType = {\n CONVERSATION: \"CONVERSATION\",\n DOCUMENT: \"DOCUMENT\",\n IMAGE: \"IMAGE\",\n};\n","export var ActionStatusEnum;\n(function (ActionStatusEnum) {\n ActionStatusEnum[\"ACCEPT\"] = \"ACCEPT\";\n ActionStatusEnum[\"DECLINE\"] = \"DECLINE\";\n ActionStatusEnum[\"QUESTION\"] = \"QUESTION\";\n ActionStatusEnum[\"TOOL_REQUEST\"] = \"TOOL_REQUEST\";\n ActionStatusEnum[\"SUCCESS\"] = \"SUCCESS\";\n ActionStatusEnum[\"FAILED\"] = \"FAILED\";\n})(ActionStatusEnum || (ActionStatusEnum = {}));\nexport const ActionStatus = {\n ACCEPT: \"ACCEPT\",\n DECLINE: \"DECLINE\",\n QUESTION: \"QUESTION\",\n TOOL_REQUEST: \"TOOL_REQUEST\",\n SUCCESS: \"SUCCESS\",\n FAILED: \"FAILED\",\n};\n","export class OAuth2Params {\n}\nexport class APIKeyParams {\n}\n","export var IntegrationEventType;\n(function (IntegrationEventType) {\n /**\n * Processes authentication data and returns tokens/credentials to be saved\n */\n IntegrationEventType[\"SETUP\"] = \"setup\";\n /**\n * Processing incoming data from the integration\n */\n IntegrationEventType[\"PROCESS\"] = \"process\";\n /**\n * Identifying which account a webhook belongs to\n */\n IntegrationEventType[\"IDENTIFY\"] = \"identify\";\n /**\n * Scheduled synchronization of data\n */\n IntegrationEventType[\"SYNC\"] = \"sync\";\n /**\n * For returning integration metadata/config\n */\n IntegrationEventType[\"SPEC\"] = \"spec\";\n /**\n * For to start mcp\n */\n IntegrationEventType[\"MCP\"] = \"mcp\";\n})(IntegrationEventType || (IntegrationEventType = {}));\nexport class Spec {\n}\n","export var UserTypeEnum;\n(function (UserTypeEnum) {\n UserTypeEnum[\"Agent\"] = \"Agent\";\n UserTypeEnum[\"User\"] = \"User\";\n UserTypeEnum[\"System\"] = \"System\";\n})(UserTypeEnum || (UserTypeEnum = {}));\n","// Pattern types for categorization (guidelines, not restrictions)\n// LLM can suggest new pattern types beyond these categories\nexport const EXPLICIT_PATTERN_TYPES = {\n // Derived from space themes and explicit content\n THEME: \"theme\", // High-level thematic content\n TOPIC: \"topic\", // Specific subject matter\n DOMAIN: \"domain\", // Knowledge or work domains\n INTEREST_AREA: \"interest_area\", // Areas of personal interest\n};\nexport const IMPLICIT_PATTERN_TYPES = {\n // Discovered from behavioral analysis and content patterns\n PREFERENCE: \"preference\", // Personal preferences and choices\n HABIT: \"habit\", // Recurring behaviors and routines\n WORKFLOW: \"workflow\", // Work and process patterns\n COMMUNICATION_STYLE: \"communication_style\", // How user communicates\n DECISION_PATTERN: \"decision_pattern\", // Decision-making approaches\n TEMPORAL_PATTERN: \"temporal_pattern\", // Time-based behavioral patterns\n BEHAVIORAL_PATTERN: \"behavioral_pattern\", // General behavioral tendencies\n LEARNING_STYLE: \"learning_style\", // How user learns and processes info\n COLLABORATION_STYLE: \"collaboration_style\", // How user works with others\n};\n// Combined pattern types for reference\nexport const PATTERN_TYPES = Object.assign(Object.assign({}, EXPLICIT_PATTERN_TYPES), IMPLICIT_PATTERN_TYPES);\n","/**\n * Quality thresholds for filtering\n */\nexport const QUALITY_THRESHOLDS = {\n // Adaptive episode-level scoring (based on available sources)\n HIGH_QUALITY_EPISODE: 5.0, // For Episode Graph or BFS results (max score ~10+)\n MEDIUM_QUALITY_EPISODE: 1.0, // For Vector-only results (max score ~1.5)\n LOW_QUALITY_EPISODE: 0.3, // For BM25-only results (max score ~0.5)\n // Overall result confidence\n CONFIDENT_RESULT: 0.7, // High confidence, skip LLM validation\n UNCERTAIN_RESULT: 0.3, // Borderline, use LLM validation\n NO_RESULT: 0.3, // Too low, return empty\n // Score gap detection\n MINIMUM_GAP_RATIO: 0.5, // 50% score drop = gap\n};\n","import { Command } from 'commander';\nimport {\n IntegrationEventPayload,\n Spec,\n Message,\n IntegrationEventType,\n} from '@core/types';\n\nexport abstract class IntegrationCLI {\n protected program: Command;\n protected integrationName: string;\n protected version: string;\n\n constructor(integrationName: string, version: string = '1.0.0') {\n this.integrationName = integrationName;\n this.version = version;\n this.program = new Command();\n this.setupProgram();\n }\n\n private setupProgram(): void {\n this.program\n .name(`${this.integrationName}-integration`)\n .description(`${this.integrationName} integration CLI`)\n .version(this.version);\n\n this.setupSpecCommand();\n this.setupAccountCommands();\n this.setupDataCommands();\n this.setupSyncCommand();\n this.setupMCPCommand();\n }\n\n private setupAccountCommands(): void {\n this.program\n .command('setup')\n .description(`Set up a new ${this.integrationName} integration account`)\n .requiredOption(\n '--event-body <body>',\n 'Event body JSON (e.g. OAuth response or setup data)',\n )\n .requiredOption(\n '--integration-definition <definition>',\n 'Integration definition JSON',\n )\n .action(async (options) => {\n try {\n const eventBody = JSON.parse(options.eventBody);\n const integrationDefinition = JSON.parse(\n options.integrationDefinition,\n );\n\n const messages: Message[] = await this.handleEvent({\n event: IntegrationEventType.SETUP,\n eventBody,\n integrationDefinition,\n });\n\n for (const message of messages) {\n console.log(JSON.stringify(message));\n }\n } catch (error) {\n console.error('Error during setup:', error);\n process.exit(1);\n }\n });\n }\n\n private setupDataCommands(): void {\n this.program\n .command('process')\n .description(`Process ${this.integrationName} integration data`)\n .requiredOption('--event-data <data>', 'Event data JSON')\n .requiredOption('--config <config>', 'Integration configuration JSON')\n .action(async (options) => {\n try {\n const eventData = JSON.parse(options.eventData);\n const config = JSON.parse(options.config);\n\n const messages: Message[] = await this.handleEvent({\n event: IntegrationEventType.PROCESS,\n eventBody: eventData,\n config,\n });\n\n for (const message of messages) {\n console.log(JSON.stringify(message));\n }\n } catch (error) {\n console.error('Error processing data:', error);\n process.exit(1);\n }\n });\n\n this.program\n .command('identify')\n .description('Identify webhook account')\n .requiredOption('--webhook-data <data>', 'Webhook data JSON')\n .action(async (options) => {\n try {\n const webhookData = JSON.parse(options.webhookData);\n\n const messages: Message[] = await this.handleEvent({\n event: IntegrationEventType.IDENTIFY,\n eventBody: webhookData,\n });\n\n for (const message of messages) {\n console.log(JSON.stringify(message));\n }\n } catch (error) {\n console.error('Error identifying account:', error);\n process.exit(1);\n }\n });\n }\n\n private setupSpecCommand(): void {\n this.program\n .command('spec')\n .description('Get integration specification')\n .action(async () => {\n try {\n const spec = await this.getSpec();\n const message: Message = {\n type: 'spec',\n data: spec,\n };\n // For spec, we keep the single message output for compatibility\n console.log(JSON.stringify(message));\n } catch (error) {\n console.error('Error getting spec:', error);\n process.exit(1);\n }\n });\n }\n\n private setupSyncCommand(): void {\n this.program\n .command('sync')\n .description('Perform scheduled sync')\n .requiredOption('--config <config>', 'Integration configuration JSON')\n .option('--state <state>', 'Integration state JSON', '{}')\n .action(async (options) => {\n try {\n const config = JSON.parse(options.config);\n const state = options.state ? JSON.parse(options.state) : {};\n\n const messages: Message[] = await this.handleEvent({\n event: IntegrationEventType.SYNC,\n eventBody: {},\n config,\n state,\n });\n\n for (const message of messages) {\n console.log(JSON.stringify(message));\n }\n } catch (error) {\n console.error('Error during sync:', error);\n process.exit(1);\n }\n });\n }\n\n private setupMCPCommand(): void {\n this.program\n .command('mcp')\n .description('To start the mcp')\n .requiredOption('--config <config>', 'Integration configuration JSON')\n .requiredOption(\n '--integration-definition <definition>',\n 'Integration definition JSON',\n )\n .action(async (options) => {\n try {\n const config = JSON.parse(options.config);\n const integrationDefinition = JSON.parse(\n options.integrationDefinition,\n );\n await this.handleEvent({\n event: IntegrationEventType.MCP,\n eventBody: {},\n config,\n integrationDefinition,\n });\n } catch (error) {\n console.error('Error during sync:', error);\n process.exit(1);\n }\n });\n }\n\n /**\n * Abstract method that must be implemented by each integration\n * This method should handle the integration-specific logic for each event type\n * and return an array of Message objects.\n */\n protected abstract handleEvent(\n eventPayload: IntegrationEventPayload,\n ): Promise<Message[]>;\n\n /**\n * Abstract method that must be implemented by each integration\n * This method should return the integration specification\n */\n protected abstract getSpec(): Promise<Spec>;\n\n /**\n * Parse and execute the CLI commands\n */\n public parse(): void {\n this.program.parse();\n }\n\n /**\n * Get the commander program instance for additional customization\n */\n public getProgram(): Command {\n return this.program;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../types/dist/llm/llm.entity.js","../../types/dist/graph/graph.entity.js","../../types/dist/conversation-execution-step/conversation-execution.entity.js","../../types/dist/oauth/params.js","../../types/dist/integration.js","../../types/dist/user/index.js","../../types/dist/pattern.js","../../types/dist/search.js","../src/integrations/integration-cli.ts"],"names":["LLMModelEnum","LLMModelType","GPT35TURBO","GPT4TURBO","GPT4O","GPT41","GPT41MINI","GPT41NANO","LLAMA3","CLAUDEOPUS","CLAUDESONNET","CLAUDEHAIKU","GEMINI25FLASH","GEMINI25PRO","GEMINI20FLASH","GEMINI20FLASHLITE","LLMMappings","OpenAIModels","ClaudeModels","GeminiModels","EPISODIC_NODE_PROPERTIES","STATEMENT_NODE_PROPERTIES","ENTITY_NODE_PROPERTIES","COMPACTED_SESSION_NODE_PROPERTIES","EpisodeTypeEnum","EpisodeType","CONVERSATION","DOCUMENT","IMAGE","ActionStatusEnum","ActionStatus","ACCEPT","DECLINE","QUESTION","TOOL_REQUEST","SUCCESS","FAILED","OAuth2Params","APIKeyParams","IntegrationEventType","Spec","UserTypeEnum","EXPLICIT_PATTERN_TYPES","THEME","TOPIC","DOMAIN","INTEREST_AREA","IMPLICIT_PATTERN_TYPES","PREFERENCE","HABIT","WORKFLOW","COMMUNICATION_STYLE","DECISION_PATTERN","TEMPORAL_PATTERN","BEHAVIORAL_PATTERN","LEARNING_STYLE","COLLABORATION_STYLE","PATTERN_TYPES","Object","assign","QUALITY_THRESHOLDS","HIGH_QUALITY_EPISODE","MEDIUM_QUALITY_EPISODE","LOW_QUALITY_EPISODE","CONFIDENT_RESULT","UNCERTAIN_RESULT","NO_RESULT","MINIMUM_GAP_RATIO","IntegrationCLI","program","integrationName","version","constructor","Command","setupProgram","name","description","setupSpecCommand","setupAccountCommands","setupDataCommands","setupSyncCommand","setupGetToolsCommand","setupCallToolCommand","command","requiredOption","action","options","eventBody","JSON","parse","integrationDefinition","messages","handleEvent","event","SETUP","message","console","log","stringify","error","process","exit","eventData","config","PROCESS","webhookData","IDENTIFY","spec","getSpec","type","data","option","state","SYNC","GET_TOOLS","toolArguments","CALL_TOOL","toolName","arguments","getProgram"],"mappings":"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","file":"index.mjs","sourcesContent":["export var LLMModelEnum;\n(function (LLMModelEnum) {\n LLMModelEnum[\"GPT35TURBO\"] = \"GPT35TURBO\";\n LLMModelEnum[\"GPT4TURBO\"] = \"GPT4TURBO\";\n LLMModelEnum[\"GPT4O\"] = \"GPT4O\";\n LLMModelEnum[\"GPT41\"] = \"GPT41\";\n LLMModelEnum[\"GPT41MINI\"] = \"GPT41MINI\";\n LLMModelEnum[\"GPT41NANO\"] = \"GPT41NANO\";\n LLMModelEnum[\"LLAMA3\"] = \"LLAMA3\";\n LLMModelEnum[\"CLAUDEOPUS\"] = \"CLAUDEOPUS\";\n LLMModelEnum[\"CLAUDESONNET\"] = \"CLAUDESONNET\";\n LLMModelEnum[\"CLAUDEHAIKU\"] = \"CLAUDEHAIKU\";\n LLMModelEnum[\"GEMINI25FLASH\"] = \"GEMINI25FLASH\";\n LLMModelEnum[\"GEMINI25PRO\"] = \"GEMINI25PRO\";\n LLMModelEnum[\"GEMINI20FLASH\"] = \"GEMINI20FLASH\";\n LLMModelEnum[\"GEMINI20FLASHLITE\"] = \"GEMINI20FLASHLITE\";\n})(LLMModelEnum || (LLMModelEnum = {}));\nexport const LLMModelType = {\n GPT35TURBO: \"GPT35TURBO\",\n GPT4TURBO: \"GPT4TURBO\",\n GPT4O: \"GPT4O\",\n GPT41: \"GPT41\",\n GPT41MINI: \"GPT41MINI\",\n GPT41NANO: \"GPT41NANO\",\n LLAMA3: \"LLAMA3\",\n CLAUDEOPUS: \"CLAUDEOPUS\",\n CLAUDESONNET: \"CLAUDESONNET\",\n CLAUDEHAIKU: \"CLAUDEHAIKU\",\n GEMINI25FLASH: \"GEMINI25FLASH\",\n GEMINI25PRO: \"GEMINI25PRO\",\n GEMINI20FLASH: \"GEMINI20FLASH\",\n GEMINI20FLASHLITE: \"GEMINI20FLASHLITE\",\n};\nexport var LLMMappings;\n(function (LLMMappings) {\n LLMMappings[\"GPT35TURBO\"] = \"gpt-3.5-turbo\";\n LLMMappings[\"GPT4TURBO\"] = \"gpt-4-turbo\";\n LLMMappings[\"GPT4O\"] = \"gpt-4o\";\n LLMMappings[\"GPT41\"] = \"gpt-4.1-2025-04-14\";\n LLMMappings[\"GPT41MINI\"] = \"gpt-4.1-mini-2025-04-14\";\n LLMMappings[\"GPT41NANO\"] = \"gpt-4.1-nano-2025-04-14\";\n LLMMappings[\"LLAMA3\"] = \"llama3\";\n LLMMappings[\"CLAUDEOPUS\"] = \"claude-3-opus-20240229\";\n LLMMappings[\"CLAUDESONNET\"] = \"claude-3-7-sonnet-20250219\";\n LLMMappings[\"CLAUDEHAIKU\"] = \"claude-3-5-haiku-20241022\";\n LLMMappings[\"GEMINI25FLASH\"] = \"gemini-2.5-flash-preview-04-17\";\n LLMMappings[\"GEMINI25PRO\"] = \"gemini-2.5-pro-preview-03-25\";\n LLMMappings[\"GEMINI20FLASH\"] = \"gemini-2.0-flash\";\n LLMMappings[\"GEMINI20FLASHLITE\"] = \"gemini-2.0-flash-lite\";\n})(LLMMappings || (LLMMappings = {}));\nexport const OpenAIModels = [\n LLMModelEnum.GPT35TURBO,\n LLMModelEnum.GPT4TURBO,\n LLMModelEnum.GPT4O,\n LLMModelEnum.GPT41,\n LLMModelEnum.GPT41MINI,\n LLMModelEnum.GPT41NANO,\n];\nexport const ClaudeModels = [\n LLMModelEnum.CLAUDEOPUS,\n LLMModelEnum.CLAUDESONNET,\n LLMModelEnum.CLAUDEHAIKU,\n];\nexport const GeminiModels = [\n LLMModelEnum.GEMINI25FLASH,\n LLMModelEnum.GEMINI25PRO,\n LLMModelEnum.GEMINI20FLASH,\n LLMModelEnum.GEMINI20FLASHLITE,\n];\n","/**\n * Helper to get episodic node properties for Cypher RETURN clause (excludes embeddings)\n * Usage in Cypher: RETURN ${EPISODIC_NODE_PROPERTIES} as episode\n */\nexport const EPISODIC_NODE_PROPERTIES = `{\n uuid: e.uuid,\n content: e.content,\n originalContent: e.originalContent,\n source: e.source,\n metadata: e.metadata,\n createdAt: e.createdAt,\n userId: e.userId,\n sessionId: e.sessionId,\n queueId: e.queueId,\n labelIds: e.labelIds,\n validAt: e.validAt,\n recallCount: e.recallCount,\n type: e.type,\n chunkIndex: e.chunkIndex,\n totalChunks: e.totalChunks,\n version: e.version,\n contentHash: e.contentHash,\n previousVersionSessionId: e.previousVersionSessionId,\n chunkHashes: e.chunkHashes\n}`;\nexport const STATEMENT_NODE_PROPERTIES = `{\n uuid: s.uuid,\n fact: s.fact,\n createdAt: s.createdAt,\n userId: s.userId,\n validAt: s.validAt,\n invalidAt: s.invalidAt,\n invalidatedBy: s.invalidatedBy,\n attributes: s.attributes,\n recallCount: s.recallCount,\n provenanceCount: s.provenanceCount\n}`;\nexport const ENTITY_NODE_PROPERTIES = `{\n uuid: ent.uuid,\n name: ent.name,\n createdAt: ent.createdAt,\n userId: ent.userId,\n attributes: ent.attributes\n}`;\nexport const COMPACTED_SESSION_NODE_PROPERTIES = `{\n uuid: cs.uuid,\n sessionId: cs.sessionId,\n summary: cs.summary,\n episodeCount: cs.episodeCount,\n startTime: cs.startTime,\n endTime: cs.endTime,\n createdAt: cs.createdAt,\n updatedAt: cs.updatedAt,\n confidence: cs.confidence,\n userId: cs.userId,\n source: cs.source,\n compressionRatio: cs.compressionRatio,\n metadata: cs.metadata\n}`;\nexport var EpisodeTypeEnum;\n(function (EpisodeTypeEnum) {\n EpisodeTypeEnum[\"CONVERSATION\"] = \"CONVERSATION\";\n EpisodeTypeEnum[\"DOCUMENT\"] = \"DOCUMENT\";\n})(EpisodeTypeEnum || (EpisodeTypeEnum = {}));\nexport const EpisodeType = {\n CONVERSATION: \"CONVERSATION\",\n DOCUMENT: \"DOCUMENT\",\n IMAGE: \"IMAGE\",\n};\n","export var ActionStatusEnum;\n(function (ActionStatusEnum) {\n ActionStatusEnum[\"ACCEPT\"] = \"ACCEPT\";\n ActionStatusEnum[\"DECLINE\"] = \"DECLINE\";\n ActionStatusEnum[\"QUESTION\"] = \"QUESTION\";\n ActionStatusEnum[\"TOOL_REQUEST\"] = \"TOOL_REQUEST\";\n ActionStatusEnum[\"SUCCESS\"] = \"SUCCESS\";\n ActionStatusEnum[\"FAILED\"] = \"FAILED\";\n})(ActionStatusEnum || (ActionStatusEnum = {}));\nexport const ActionStatus = {\n ACCEPT: \"ACCEPT\",\n DECLINE: \"DECLINE\",\n QUESTION: \"QUESTION\",\n TOOL_REQUEST: \"TOOL_REQUEST\",\n SUCCESS: \"SUCCESS\",\n FAILED: \"FAILED\",\n};\n","export class OAuth2Params {\n}\nexport class APIKeyParams {\n}\n","export var IntegrationEventType;\n(function (IntegrationEventType) {\n /**\n * Processes authentication data and returns tokens/credentials to be saved\n */\n IntegrationEventType[\"SETUP\"] = \"setup\";\n /**\n * Processing incoming data from the integration\n */\n IntegrationEventType[\"PROCESS\"] = \"process\";\n /**\n * Identifying which account a webhook belongs to\n */\n IntegrationEventType[\"IDENTIFY\"] = \"identify\";\n /**\n * Scheduled synchronization of data\n */\n IntegrationEventType[\"SYNC\"] = \"sync\";\n /**\n * For returning integration metadata/config\n */\n IntegrationEventType[\"SPEC\"] = \"spec\";\n /**\n * Get available MCP tools for this integration\n */\n IntegrationEventType[\"GET_TOOLS\"] = \"get-tools\";\n /**\n * Call a specific MCP tool\n */\n IntegrationEventType[\"CALL_TOOL\"] = \"call-tool\";\n})(IntegrationEventType || (IntegrationEventType = {}));\nexport class Spec {\n}\n","export var UserTypeEnum;\n(function (UserTypeEnum) {\n UserTypeEnum[\"Agent\"] = \"Agent\";\n UserTypeEnum[\"User\"] = \"User\";\n UserTypeEnum[\"System\"] = \"System\";\n})(UserTypeEnum || (UserTypeEnum = {}));\n","// Pattern types for categorization (guidelines, not restrictions)\n// LLM can suggest new pattern types beyond these categories\nexport const EXPLICIT_PATTERN_TYPES = {\n // Derived from space themes and explicit content\n THEME: \"theme\", // High-level thematic content\n TOPIC: \"topic\", // Specific subject matter\n DOMAIN: \"domain\", // Knowledge or work domains\n INTEREST_AREA: \"interest_area\", // Areas of personal interest\n};\nexport const IMPLICIT_PATTERN_TYPES = {\n // Discovered from behavioral analysis and content patterns\n PREFERENCE: \"preference\", // Personal preferences and choices\n HABIT: \"habit\", // Recurring behaviors and routines\n WORKFLOW: \"workflow\", // Work and process patterns\n COMMUNICATION_STYLE: \"communication_style\", // How user communicates\n DECISION_PATTERN: \"decision_pattern\", // Decision-making approaches\n TEMPORAL_PATTERN: \"temporal_pattern\", // Time-based behavioral patterns\n BEHAVIORAL_PATTERN: \"behavioral_pattern\", // General behavioral tendencies\n LEARNING_STYLE: \"learning_style\", // How user learns and processes info\n COLLABORATION_STYLE: \"collaboration_style\", // How user works with others\n};\n// Combined pattern types for reference\nexport const PATTERN_TYPES = Object.assign(Object.assign({}, EXPLICIT_PATTERN_TYPES), IMPLICIT_PATTERN_TYPES);\n","/**\n * Quality thresholds for filtering\n */\nexport const QUALITY_THRESHOLDS = {\n // Adaptive episode-level scoring (based on available sources)\n HIGH_QUALITY_EPISODE: 5.0, // For Episode Graph or BFS results (max score ~10+)\n MEDIUM_QUALITY_EPISODE: 1.0, // For Vector-only results (max score ~1.5)\n LOW_QUALITY_EPISODE: 0.3, // For BM25-only results (max score ~0.5)\n // Overall result confidence\n CONFIDENT_RESULT: 0.7, // High confidence, skip LLM validation\n UNCERTAIN_RESULT: 0.3, // Borderline, use LLM validation\n NO_RESULT: 0.3, // Too low, return empty\n // Score gap detection\n MINIMUM_GAP_RATIO: 0.5, // 50% score drop = gap\n};\n","import { Command } from 'commander';\nimport {\n IntegrationEventPayload,\n Spec,\n Message,\n IntegrationEventType,\n} from '@core/types';\n\nexport abstract class IntegrationCLI {\n protected program: Command;\n protected integrationName: string;\n protected version: string;\n\n constructor(integrationName: string, version: string = '1.0.0') {\n this.integrationName = integrationName;\n this.version = version;\n this.program = new Command();\n this.setupProgram();\n }\n\n private setupProgram(): void {\n this.program\n .name(`${this.integrationName}-integration`)\n .description(`${this.integrationName} integration CLI`)\n .version(this.version);\n\n this.setupSpecCommand();\n this.setupAccountCommands();\n this.setupDataCommands();\n this.setupSyncCommand();\n this.setupGetToolsCommand();\n this.setupCallToolCommand();\n }\n\n private setupAccountCommands(): void {\n this.program\n .command('setup')\n .description(`Set up a new ${this.integrationName} integration account`)\n .requiredOption(\n '--event-body <body>',\n 'Event body JSON (e.g. OAuth response or setup data)',\n )\n .requiredOption(\n '--integration-definition <definition>',\n 'Integration definition JSON',\n )\n .action(async (options) => {\n try {\n const eventBody = JSON.parse(options.eventBody);\n const integrationDefinition = JSON.parse(\n options.integrationDefinition,\n );\n\n const messages: Message[] = await this.handleEvent({\n event: IntegrationEventType.SETUP,\n eventBody,\n integrationDefinition,\n });\n\n for (const message of messages) {\n console.log(JSON.stringify(message));\n }\n } catch (error) {\n console.error('Error during setup:', error);\n process.exit(1);\n }\n });\n }\n\n private setupDataCommands(): void {\n this.program\n .command('process')\n .description(`Process ${this.integrationName} integration data`)\n .requiredOption('--event-data <data>', 'Event data JSON')\n .requiredOption('--config <config>', 'Integration configuration JSON')\n .action(async (options) => {\n try {\n const eventData = JSON.parse(options.eventData);\n const config = JSON.parse(options.config);\n\n const messages: Message[] = await this.handleEvent({\n event: IntegrationEventType.PROCESS,\n eventBody: eventData,\n config,\n });\n\n for (const message of messages) {\n console.log(JSON.stringify(message));\n }\n } catch (error) {\n console.error('Error processing data:', error);\n process.exit(1);\n }\n });\n\n this.program\n .command('identify')\n .description('Identify webhook account')\n .requiredOption('--webhook-data <data>', 'Webhook data JSON')\n .action(async (options) => {\n try {\n const webhookData = JSON.parse(options.webhookData);\n\n const messages: Message[] = await this.handleEvent({\n event: IntegrationEventType.IDENTIFY,\n eventBody: webhookData,\n });\n\n for (const message of messages) {\n console.log(JSON.stringify(message));\n }\n } catch (error) {\n console.error('Error identifying account:', error);\n process.exit(1);\n }\n });\n }\n\n private setupSpecCommand(): void {\n this.program\n .command('spec')\n .description('Get integration specification')\n .action(async () => {\n try {\n const spec = await this.getSpec();\n const message: Message = {\n type: 'spec',\n data: spec,\n };\n // For spec, we keep the single message output for compatibility\n console.log(JSON.stringify(message));\n } catch (error) {\n console.error('Error getting spec:', error);\n process.exit(1);\n }\n });\n }\n\n private setupSyncCommand(): void {\n this.program\n .command('sync')\n .description('Perform scheduled sync')\n .requiredOption('--config <config>', 'Integration configuration JSON')\n .option('--state <state>', 'Integration state JSON', '{}')\n .action(async (options) => {\n try {\n const config = JSON.parse(options.config);\n const state = options.state ? JSON.parse(options.state) : {};\n\n const messages: Message[] = await this.handleEvent({\n event: IntegrationEventType.SYNC,\n eventBody: {},\n config,\n state,\n });\n\n for (const message of messages) {\n console.log(JSON.stringify(message));\n }\n } catch (error) {\n console.error('Error during sync:', error);\n process.exit(1);\n }\n });\n }\n\n private setupGetToolsCommand(): void {\n this.program\n .command('get-tools')\n .description('Get available MCP tools for this integration')\n .requiredOption('--config <config>', 'Integration configuration JSON')\n .requiredOption(\n '--integration-definition <definition>',\n 'Integration definition JSON',\n )\n .action(async (options) => {\n try {\n const config = JSON.parse(options.config);\n const integrationDefinition = JSON.parse(\n options.integrationDefinition,\n );\n const messages: Message[] = await this.handleEvent({\n event: IntegrationEventType.GET_TOOLS,\n eventBody: {},\n config,\n integrationDefinition,\n });\n\n for (const message of messages) {\n console.log(JSON.stringify(message));\n }\n } catch (error) {\n console.error('Error getting tools:', error);\n process.exit(1);\n }\n });\n }\n\n private setupCallToolCommand(): void {\n this.program\n .command('call-tool')\n .description('Call a specific MCP tool')\n .requiredOption('--config <config>', 'Integration configuration JSON')\n .requiredOption(\n '--integration-definition <definition>',\n 'Integration definition JSON',\n )\n .requiredOption('--tool-name <name>', 'Name of the tool to call')\n .requiredOption('--tool-arguments <arguments>', 'Tool arguments as JSON')\n .action(async (options) => {\n try {\n const config = JSON.parse(options.config);\n const integrationDefinition = JSON.parse(\n options.integrationDefinition,\n );\n const toolArguments = JSON.parse(options.toolArguments);\n\n const messages: Message[] = await this.handleEvent({\n event: IntegrationEventType.CALL_TOOL,\n eventBody: {\n name: options.toolName,\n arguments: toolArguments,\n },\n config,\n integrationDefinition,\n });\n\n for (const message of messages) {\n console.log(JSON.stringify(message));\n }\n } catch (error) {\n console.error('Error calling tool:', error);\n process.exit(1);\n }\n });\n }\n\n /**\n * Abstract method that must be implemented by each integration\n * This method should handle the integration-specific logic for each event type\n * and return an array of Message objects.\n */\n protected abstract handleEvent(\n eventPayload: IntegrationEventPayload,\n ): Promise<Message[]>;\n\n /**\n * Abstract method that must be implemented by each integration\n * This method should return the integration specification\n */\n protected abstract getSpec(): Promise<Spec>;\n\n /**\n * Parse and execute the CLI commands\n */\n public parse(): void {\n this.program.parse();\n }\n\n /**\n * Get the commander program instance for additional customization\n */\n public getProgram(): Command {\n return this.program;\n }\n}\n"]}
|