@sowonai/crewx-sdk 0.1.0-dev.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +558 -0
- package/dist/config/index.d.ts +1 -0
- package/dist/config/index.js +18 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/timeout.config.d.ts +14 -0
- package/dist/config/timeout.config.js +34 -0
- package/dist/config/timeout.config.js.map +1 -0
- package/dist/constants/index.d.ts +4 -0
- package/dist/constants/index.js +8 -0
- package/dist/constants/index.js.map +1 -0
- package/dist/constants.d.ts +1 -0
- package/dist/constants.js +18 -0
- package/dist/constants.js.map +1 -0
- package/dist/conversation/conversation-config.d.ts +9 -0
- package/dist/conversation/conversation-config.js +22 -0
- package/dist/conversation/conversation-config.js.map +1 -0
- package/dist/conversation/conversation-history.interface.d.ts +25 -0
- package/dist/conversation/conversation-history.interface.js +3 -0
- package/dist/conversation/conversation-history.interface.js.map +1 -0
- package/dist/conversation/conversation-storage.service.d.ts +16 -0
- package/dist/conversation/conversation-storage.service.js +213 -0
- package/dist/conversation/conversation-storage.service.js.map +1 -0
- package/dist/conversation/index.d.ts +3 -0
- package/dist/conversation/index.js +20 -0
- package/dist/conversation/index.js.map +1 -0
- package/dist/core/agent/agent-factory.d.ts +30 -0
- package/dist/core/agent/agent-factory.js +31 -0
- package/dist/core/agent/agent-factory.js.map +1 -0
- package/dist/core/agent/agent-runtime.d.ts +36 -0
- package/dist/core/agent/agent-runtime.js +96 -0
- package/dist/core/agent/agent-runtime.js.map +1 -0
- package/dist/core/agent/event-bus.d.ts +44 -0
- package/dist/core/agent/event-bus.js +43 -0
- package/dist/core/agent/event-bus.js.map +1 -0
- package/dist/core/agent/index.d.ts +3 -0
- package/dist/core/agent/index.js +11 -0
- package/dist/core/agent/index.js.map +1 -0
- package/dist/core/providers/ai-provider.interface.d.ts +50 -0
- package/dist/core/providers/ai-provider.interface.js +23 -0
- package/dist/core/providers/ai-provider.interface.js.map +1 -0
- package/dist/core/providers/base-ai.provider.d.ts +67 -0
- package/dist/core/providers/base-ai.provider.js +624 -0
- package/dist/core/providers/base-ai.provider.js.map +1 -0
- package/dist/core/providers/claude.provider.d.ts +24 -0
- package/dist/core/providers/claude.provider.js +361 -0
- package/dist/core/providers/claude.provider.js.map +1 -0
- package/dist/core/providers/codex.provider.d.ts +17 -0
- package/dist/core/providers/codex.provider.js +99 -0
- package/dist/core/providers/codex.provider.js.map +1 -0
- package/dist/core/providers/copilot.provider.d.ts +24 -0
- package/dist/core/providers/copilot.provider.js +266 -0
- package/dist/core/providers/copilot.provider.js.map +1 -0
- package/dist/core/providers/dynamic-provider.factory.d.ts +55 -0
- package/dist/core/providers/dynamic-provider.factory.js +587 -0
- package/dist/core/providers/dynamic-provider.factory.js.map +1 -0
- package/dist/core/providers/gemini.provider.d.ts +21 -0
- package/dist/core/providers/gemini.provider.js +147 -0
- package/dist/core/providers/gemini.provider.js.map +1 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.js +34 -0
- package/dist/index.js.map +1 -0
- package/dist/internal/index.d.ts +1 -0
- package/dist/internal/index.js +6 -0
- package/dist/internal/index.js.map +1 -0
- package/dist/knowledge/DocumentManager.d.ts +4 -0
- package/dist/knowledge/DocumentManager.js +119 -0
- package/dist/knowledge/DocumentManager.js.map +1 -0
- package/dist/knowledge/index.d.ts +1 -0
- package/dist/knowledge/index.js +18 -0
- package/dist/knowledge/index.js.map +1 -0
- package/dist/types/agent.types.d.ts +117 -0
- package/dist/types/agent.types.js +16 -0
- package/dist/types/agent.types.js.map +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.js +18 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types.d.ts +1 -0
- package/dist/types.js +18 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/error-utils.d.ts +3 -0
- package/dist/utils/error-utils.js +27 -0
- package/dist/utils/error-utils.js.map +1 -0
- package/dist/utils/index.d.ts +4 -0
- package/dist/utils/index.js +21 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/math-utils.d.ts +3 -0
- package/dist/utils/math-utils.js +10 -0
- package/dist/utils/math-utils.js.map +1 -0
- package/dist/utils/mention-parser.d.ts +18 -0
- package/dist/utils/mention-parser.js +136 -0
- package/dist/utils/mention-parser.js.map +1 -0
- package/dist/utils/string-utils.d.ts +1 -0
- package/dist/utils/string-utils.js +10 -0
- package/dist/utils/string-utils.js.map +1 -0
- package/dist/utils.d.ts +3 -0
- package/dist/utils.js +20 -0
- package/dist/utils.js.map +1 -0
- package/dist/version.d.ts +1 -0
- package/dist/version.js +17 -0
- package/dist/version.js.map +1 -0
- package/package.json +54 -0
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var _a;
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.GeminiProvider = void 0;
|
|
14
|
+
const common_1 = require("@nestjs/common");
|
|
15
|
+
const base_ai_provider_1 = require("./base-ai.provider");
|
|
16
|
+
const ai_provider_interface_1 = require("./ai-provider.interface");
|
|
17
|
+
let GeminiProvider = class GeminiProvider extends base_ai_provider_1.BaseAIProvider {
|
|
18
|
+
constructor(toolCallService) {
|
|
19
|
+
super('GeminiProvider');
|
|
20
|
+
this.name = ai_provider_interface_1.BuiltInProviders.GEMINI;
|
|
21
|
+
if (toolCallService) {
|
|
22
|
+
this.setToolCallService(toolCallService);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
getCliCommand() {
|
|
26
|
+
return 'gemini';
|
|
27
|
+
}
|
|
28
|
+
getDefaultArgs() {
|
|
29
|
+
return [];
|
|
30
|
+
}
|
|
31
|
+
getExecuteArgs() {
|
|
32
|
+
return [];
|
|
33
|
+
}
|
|
34
|
+
getPromptInArgs() {
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
getNotInstalledMessage() {
|
|
38
|
+
return 'Gemini CLI is not installed.';
|
|
39
|
+
}
|
|
40
|
+
buildPromptWithTools(prompt, tools) {
|
|
41
|
+
if (!tools || tools.length === 0) {
|
|
42
|
+
return prompt;
|
|
43
|
+
}
|
|
44
|
+
return prompt;
|
|
45
|
+
}
|
|
46
|
+
async query(prompt, options = {}) {
|
|
47
|
+
if (!this.toolCallService) {
|
|
48
|
+
this.logger.warn('ToolCallService not available, falling back to regular query');
|
|
49
|
+
return super.query(prompt, options);
|
|
50
|
+
}
|
|
51
|
+
return this.queryWithTools(prompt, options);
|
|
52
|
+
}
|
|
53
|
+
async execute(prompt, options = {}) {
|
|
54
|
+
if (this.toolCallService) {
|
|
55
|
+
this.logger.log('GeminiProvider: Using queryWithTools in execute mode');
|
|
56
|
+
return this.queryWithTools(prompt, options);
|
|
57
|
+
}
|
|
58
|
+
this.logger.warn('GeminiProvider: ToolCallService not available, falling back to base execute');
|
|
59
|
+
return super.execute(prompt, options);
|
|
60
|
+
}
|
|
61
|
+
parseToolUseProviderSpecific(parsed) {
|
|
62
|
+
if (parsed.response && typeof parsed.response === 'string') {
|
|
63
|
+
const responseXml = parsed.response.match(/<crew(?:code|x)_tool_call>\s*([\s\S]*?)\s*<\/crew(?:code|x)_tool_call>/);
|
|
64
|
+
if (responseXml && responseXml[1]) {
|
|
65
|
+
try {
|
|
66
|
+
const jsonContent = responseXml[1].trim();
|
|
67
|
+
const toolParsed = JSON.parse(jsonContent);
|
|
68
|
+
if (toolParsed.type === 'tool_use' && toolParsed.name && toolParsed.input !== undefined) {
|
|
69
|
+
this.logger.log(`Tool use detected from Gemini JSON response field: ${toolParsed.name}`);
|
|
70
|
+
return {
|
|
71
|
+
isToolUse: true,
|
|
72
|
+
toolName: toolParsed.name,
|
|
73
|
+
toolInput: toolParsed.input,
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
catch (e) {
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
return { isToolUse: false };
|
|
82
|
+
}
|
|
83
|
+
async queryWithTools(prompt, options = {}, maxTurns = 5) {
|
|
84
|
+
if (!this.toolCallService) {
|
|
85
|
+
this.logger.warn('ToolCallService not available, falling back to regular query');
|
|
86
|
+
return super.query(prompt, options);
|
|
87
|
+
}
|
|
88
|
+
let turn = 0;
|
|
89
|
+
let currentPrompt = prompt;
|
|
90
|
+
const tools = this.toolCallService.list();
|
|
91
|
+
currentPrompt = this.buildPromptWithTools(currentPrompt, tools);
|
|
92
|
+
while (turn < maxTurns) {
|
|
93
|
+
this.logger.log(`Tool call turn ${turn + 1}/${maxTurns}`);
|
|
94
|
+
if (options.taskId) {
|
|
95
|
+
this['appendTaskLog'](options.taskId, 'INFO', `--- Tool Call Turn ${turn + 1}/${maxTurns} ---`);
|
|
96
|
+
}
|
|
97
|
+
const response = await super.query(currentPrompt, options);
|
|
98
|
+
if (!response.success) {
|
|
99
|
+
return response;
|
|
100
|
+
}
|
|
101
|
+
const toolUse = this.parseToolUse(response.content);
|
|
102
|
+
if (!toolUse.isToolUse) {
|
|
103
|
+
if (options.taskId) {
|
|
104
|
+
this['appendTaskLog'](options.taskId, 'INFO', `No tool use detected, returning final response`);
|
|
105
|
+
}
|
|
106
|
+
return response;
|
|
107
|
+
}
|
|
108
|
+
this.logger.log(`Executing tool: ${toolUse.toolName} with input ${JSON.stringify(toolUse.toolInput)}`);
|
|
109
|
+
if (options.taskId) {
|
|
110
|
+
this['appendTaskLog'](options.taskId, 'INFO', `🔧 Gemini requested tool: ${toolUse.toolName}`);
|
|
111
|
+
this['appendTaskLog'](options.taskId, 'INFO', `Tool input: ${JSON.stringify(toolUse.toolInput, null, 2)}`);
|
|
112
|
+
}
|
|
113
|
+
const toolResult = await this.toolCallService.execute(toolUse.toolName, toolUse.toolInput);
|
|
114
|
+
this.logger.log(`Tool result: ${JSON.stringify(toolResult)}`);
|
|
115
|
+
if (options.taskId) {
|
|
116
|
+
this['appendTaskLog'](options.taskId, 'INFO', `✅ Tool executed successfully`);
|
|
117
|
+
this['appendTaskLog'](options.taskId, 'INFO', `Tool result preview: ${JSON.stringify(toolResult).substring(0, 500)}...`);
|
|
118
|
+
}
|
|
119
|
+
currentPrompt = this.buildToolResultPrompt(toolUse.toolName, toolUse.toolInput, toolResult);
|
|
120
|
+
turn++;
|
|
121
|
+
}
|
|
122
|
+
this.logger.warn('Max turns reached without final response');
|
|
123
|
+
return {
|
|
124
|
+
content: 'Maximum conversation turns reached without completing the task.',
|
|
125
|
+
provider: this.name,
|
|
126
|
+
command: '',
|
|
127
|
+
success: false,
|
|
128
|
+
taskId: options.taskId,
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
buildToolResultPrompt(toolName, toolInput, toolResult) {
|
|
132
|
+
const resultData = toolResult.success && toolResult.data ? toolResult.data : toolResult;
|
|
133
|
+
return `The ${toolName} tool has been executed successfully.
|
|
134
|
+
|
|
135
|
+
<tool_result>
|
|
136
|
+
${JSON.stringify(resultData, null, 2)}
|
|
137
|
+
</tool_result>
|
|
138
|
+
|
|
139
|
+
Based on the tool execution result above, please provide a clear, detailed, and user-friendly response to the user's original request. Present the information in an organized and easy-to-read format.`;
|
|
140
|
+
}
|
|
141
|
+
};
|
|
142
|
+
exports.GeminiProvider = GeminiProvider;
|
|
143
|
+
exports.GeminiProvider = GeminiProvider = __decorate([
|
|
144
|
+
(0, common_1.Injectable)(),
|
|
145
|
+
__metadata("design:paramtypes", [typeof (_a = typeof base_ai_provider_1.ToolCallService !== "undefined" && base_ai_provider_1.ToolCallService) === "function" ? _a : Object])
|
|
146
|
+
], GeminiProvider);
|
|
147
|
+
//# sourceMappingURL=gemini.provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gemini.provider.js","sourceRoot":"","sources":["../../../src/core/providers/gemini.provider.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export { SERVER_NAME, PREFIX_TOOL_NAME, DEFAULT_MAX_FILE_SIZE, DEFAULT_MAX_FILES, } from './constants';
|
|
2
|
+
export type { TimeoutConfig } from './config/timeout.config';
|
|
3
|
+
export { getTimeoutConfig, getDefaultTimeoutConfig } from './config/timeout.config';
|
|
4
|
+
export type { ConversationMessage, ConversationThread, FetchHistoryOptions, IConversationHistoryProvider, } from './conversation/conversation-history.interface';
|
|
5
|
+
export type { ConversationConfig } from './conversation/conversation-config';
|
|
6
|
+
export { DEFAULT_CONVERSATION_CONFIG, getConversationConfig, } from './conversation/conversation-config';
|
|
7
|
+
export { DocumentManager } from './knowledge/DocumentManager';
|
|
8
|
+
export { ProviderNamespace, BuiltInProviders, ProviderNotAvailableError, } from './core/providers/ai-provider.interface';
|
|
9
|
+
export type { ProviderNamespaceType, AIProvider, AIQueryOptions, AIResponse, } from './core/providers/ai-provider.interface';
|
|
10
|
+
export type { AgentAction, AgentConfig, AgentsConfig, AgentInfo, AgentQueryOptions, AgentResponse, RemoteAgentConfigInput, RemoteAgentInfo, } from './types/agent.types';
|
|
11
|
+
export { ExecutionMode, SecurityLevel } from './types/agent.types';
|
|
12
|
+
export { getErrorMessage, getErrorStack, isError } from './utils/error-utils';
|
|
13
|
+
export { MentionParser, loadAvailableAgents, type MentionTask, type ParsedMentions, } from './utils/mention-parser';
|
|
14
|
+
export { createCrewxAgent, loadAgentConfigFromYaml, type CrewxAgent, type CrewxAgentConfig, type CrewxAgentResult, type ProviderConfig as AgentProviderConfig, type KnowledgeBaseConfig, } from './core/agent';
|
|
15
|
+
export { type AgentQueryRequest, type AgentExecuteRequest, type AgentResult, type CallStackFrame, type EventListener, } from './core/agent';
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.loadAgentConfigFromYaml = exports.createCrewxAgent = exports.loadAvailableAgents = exports.MentionParser = exports.isError = exports.getErrorStack = exports.getErrorMessage = exports.SecurityLevel = exports.ExecutionMode = exports.ProviderNotAvailableError = exports.BuiltInProviders = exports.ProviderNamespace = exports.DocumentManager = exports.getConversationConfig = exports.DEFAULT_CONVERSATION_CONFIG = exports.getDefaultTimeoutConfig = exports.getTimeoutConfig = exports.DEFAULT_MAX_FILES = exports.DEFAULT_MAX_FILE_SIZE = exports.PREFIX_TOOL_NAME = exports.SERVER_NAME = void 0;
|
|
4
|
+
var constants_1 = require("./constants");
|
|
5
|
+
Object.defineProperty(exports, "SERVER_NAME", { enumerable: true, get: function () { return constants_1.SERVER_NAME; } });
|
|
6
|
+
Object.defineProperty(exports, "PREFIX_TOOL_NAME", { enumerable: true, get: function () { return constants_1.PREFIX_TOOL_NAME; } });
|
|
7
|
+
Object.defineProperty(exports, "DEFAULT_MAX_FILE_SIZE", { enumerable: true, get: function () { return constants_1.DEFAULT_MAX_FILE_SIZE; } });
|
|
8
|
+
Object.defineProperty(exports, "DEFAULT_MAX_FILES", { enumerable: true, get: function () { return constants_1.DEFAULT_MAX_FILES; } });
|
|
9
|
+
var timeout_config_1 = require("./config/timeout.config");
|
|
10
|
+
Object.defineProperty(exports, "getTimeoutConfig", { enumerable: true, get: function () { return timeout_config_1.getTimeoutConfig; } });
|
|
11
|
+
Object.defineProperty(exports, "getDefaultTimeoutConfig", { enumerable: true, get: function () { return timeout_config_1.getDefaultTimeoutConfig; } });
|
|
12
|
+
var conversation_config_1 = require("./conversation/conversation-config");
|
|
13
|
+
Object.defineProperty(exports, "DEFAULT_CONVERSATION_CONFIG", { enumerable: true, get: function () { return conversation_config_1.DEFAULT_CONVERSATION_CONFIG; } });
|
|
14
|
+
Object.defineProperty(exports, "getConversationConfig", { enumerable: true, get: function () { return conversation_config_1.getConversationConfig; } });
|
|
15
|
+
var DocumentManager_1 = require("./knowledge/DocumentManager");
|
|
16
|
+
Object.defineProperty(exports, "DocumentManager", { enumerable: true, get: function () { return DocumentManager_1.DocumentManager; } });
|
|
17
|
+
var ai_provider_interface_1 = require("./core/providers/ai-provider.interface");
|
|
18
|
+
Object.defineProperty(exports, "ProviderNamespace", { enumerable: true, get: function () { return ai_provider_interface_1.ProviderNamespace; } });
|
|
19
|
+
Object.defineProperty(exports, "BuiltInProviders", { enumerable: true, get: function () { return ai_provider_interface_1.BuiltInProviders; } });
|
|
20
|
+
Object.defineProperty(exports, "ProviderNotAvailableError", { enumerable: true, get: function () { return ai_provider_interface_1.ProviderNotAvailableError; } });
|
|
21
|
+
var agent_types_1 = require("./types/agent.types");
|
|
22
|
+
Object.defineProperty(exports, "ExecutionMode", { enumerable: true, get: function () { return agent_types_1.ExecutionMode; } });
|
|
23
|
+
Object.defineProperty(exports, "SecurityLevel", { enumerable: true, get: function () { return agent_types_1.SecurityLevel; } });
|
|
24
|
+
var error_utils_1 = require("./utils/error-utils");
|
|
25
|
+
Object.defineProperty(exports, "getErrorMessage", { enumerable: true, get: function () { return error_utils_1.getErrorMessage; } });
|
|
26
|
+
Object.defineProperty(exports, "getErrorStack", { enumerable: true, get: function () { return error_utils_1.getErrorStack; } });
|
|
27
|
+
Object.defineProperty(exports, "isError", { enumerable: true, get: function () { return error_utils_1.isError; } });
|
|
28
|
+
var mention_parser_1 = require("./utils/mention-parser");
|
|
29
|
+
Object.defineProperty(exports, "MentionParser", { enumerable: true, get: function () { return mention_parser_1.MentionParser; } });
|
|
30
|
+
Object.defineProperty(exports, "loadAvailableAgents", { enumerable: true, get: function () { return mention_parser_1.loadAvailableAgents; } });
|
|
31
|
+
var agent_1 = require("./core/agent");
|
|
32
|
+
Object.defineProperty(exports, "createCrewxAgent", { enumerable: true, get: function () { return agent_1.createCrewxAgent; } });
|
|
33
|
+
Object.defineProperty(exports, "loadAgentConfigFromYaml", { enumerable: true, get: function () { return agent_1.loadAgentConfigFromYaml; } });
|
|
34
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAMA,yCAKqB;AAJnB,wGAAA,WAAW,OAAA;AACX,6GAAA,gBAAgB,OAAA;AAChB,kHAAA,qBAAqB,OAAA;AACrB,8GAAA,iBAAiB,OAAA;AAKnB,0DAAoF;AAA3E,kHAAA,gBAAgB,OAAA;AAAE,yHAAA,uBAAuB,OAAA;AAUlD,0EAG4C;AAF1C,kIAAA,2BAA2B,OAAA;AAC3B,4HAAA,qBAAqB,OAAA;AAIvB,+DAA8D;AAArD,kHAAA,eAAe,OAAA;AAGxB,gFAIgD;AAH9C,0HAAA,iBAAiB,OAAA;AACjB,yHAAA,gBAAgB,OAAA;AAChB,kIAAA,yBAAyB,OAAA;AAoB3B,mDAAmE;AAA1D,4GAAA,aAAa,OAAA;AAAE,4GAAA,aAAa,OAAA;AAGrC,mDAA8E;AAArE,8GAAA,eAAe,OAAA;AAAE,4GAAA,aAAa,OAAA;AAAE,sGAAA,OAAO,OAAA;AAChD,yDAKgC;AAJ9B,+GAAA,aAAa,OAAA;AACb,qHAAA,mBAAmB,OAAA;AAMrB,sCAQsB;AAPpB,yGAAA,gBAAgB,OAAA;AAChB,gHAAA,uBAAuB,OAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { ConversationStorageService } from '../conversation/conversation-storage.service';
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ConversationStorageService = void 0;
|
|
4
|
+
var conversation_storage_service_1 = require("../conversation/conversation-storage.service");
|
|
5
|
+
Object.defineProperty(exports, "ConversationStorageService", { enumerable: true, get: function () { return conversation_storage_service_1.ConversationStorageService; } });
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/internal/index.ts"],"names":[],"mappings":";;;AAIA,6FAA0F;AAAjF,0IAAA,0BAA0B,OAAA"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DocumentManager = void 0;
|
|
4
|
+
let remarkParse;
|
|
5
|
+
let remarkStringify;
|
|
6
|
+
let unified;
|
|
7
|
+
let visit;
|
|
8
|
+
async function loadRemarkModules() {
|
|
9
|
+
if (!remarkParse) {
|
|
10
|
+
const remarkParseModule = await (new Function('return import("remark-parse")')());
|
|
11
|
+
const remarkStringifyModule = await (new Function('return import("remark-stringify")')());
|
|
12
|
+
const unifiedModule = await (new Function('return import("unified")')());
|
|
13
|
+
const visitModule = await (new Function('return import("unist-util-visit")')());
|
|
14
|
+
remarkParse = remarkParseModule.default;
|
|
15
|
+
remarkStringify = remarkStringifyModule.default;
|
|
16
|
+
unified = unifiedModule.unified;
|
|
17
|
+
visit = visitModule.visit;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
class DocumentManager {
|
|
21
|
+
static async extractToc(markdown, maxDepth = 3) {
|
|
22
|
+
await loadRemarkModules();
|
|
23
|
+
const normalized = markdown.replace(/^[ \t]+/gm, '').trim();
|
|
24
|
+
const tree = unified().use(remarkParse).parse(normalized);
|
|
25
|
+
const toc = [];
|
|
26
|
+
function extractText(node) {
|
|
27
|
+
if (node.type === 'text')
|
|
28
|
+
return node.value;
|
|
29
|
+
if (node.children)
|
|
30
|
+
return node.children.map(extractText).join('');
|
|
31
|
+
return '';
|
|
32
|
+
}
|
|
33
|
+
function visitNode(node) {
|
|
34
|
+
if (node.type === 'heading' && node.depth <= maxDepth) {
|
|
35
|
+
const text = extractText(node);
|
|
36
|
+
toc.push(`${'#'.repeat(node.depth)} ${text}`);
|
|
37
|
+
}
|
|
38
|
+
if (node.children)
|
|
39
|
+
node.children.forEach(visitNode);
|
|
40
|
+
}
|
|
41
|
+
visitNode(tree);
|
|
42
|
+
return toc.join('\n');
|
|
43
|
+
}
|
|
44
|
+
static async selectSection(markdown, selector) {
|
|
45
|
+
await loadRemarkModules();
|
|
46
|
+
if (!selector)
|
|
47
|
+
return undefined;
|
|
48
|
+
const tree = unified().use(remarkParse).parse(markdown);
|
|
49
|
+
const lines = markdown.split(/\r?\n/);
|
|
50
|
+
const siblings = tree.children;
|
|
51
|
+
const isId = selector.startsWith('#');
|
|
52
|
+
const target = isId ? selector.slice(1) : selector.replace(/^#+\s*/, '').trim();
|
|
53
|
+
let startIndex = -1;
|
|
54
|
+
let sectionDepth = 0;
|
|
55
|
+
for (let idx = 0; idx < siblings.length; idx++) {
|
|
56
|
+
const node = siblings[idx];
|
|
57
|
+
if (node.type === 'heading') {
|
|
58
|
+
let id;
|
|
59
|
+
if (node.position) {
|
|
60
|
+
const raw = lines[node.position.start.line - 1];
|
|
61
|
+
if (raw) {
|
|
62
|
+
const match = raw.match(/^(#{1,6})\s+.*?\s*\{#(.+?)\}/);
|
|
63
|
+
if (match)
|
|
64
|
+
id = match[2];
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
const text = extractText(node);
|
|
68
|
+
const computedId = id || node.data?.hProperties?.id || slugify(text);
|
|
69
|
+
if ((isId && computedId === target) || (!isId && text === target)) {
|
|
70
|
+
startIndex = idx;
|
|
71
|
+
sectionDepth = node.depth;
|
|
72
|
+
break;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
if (startIndex < 0) {
|
|
77
|
+
const targetText = selector.replace(/^#+\s*/, '').trim();
|
|
78
|
+
for (let idx = 0; idx < siblings.length; idx++) {
|
|
79
|
+
const node = siblings[idx];
|
|
80
|
+
if (node.type === 'heading') {
|
|
81
|
+
const text = extractText(node).trim();
|
|
82
|
+
if (text === targetText) {
|
|
83
|
+
startIndex = idx;
|
|
84
|
+
sectionDepth = node.depth;
|
|
85
|
+
break;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
if (startIndex < 0)
|
|
91
|
+
return undefined;
|
|
92
|
+
const nodes = [];
|
|
93
|
+
for (let i = startIndex; i < siblings.length; i++) {
|
|
94
|
+
const node = siblings[i];
|
|
95
|
+
if (node.type === 'heading' && node.depth <= sectionDepth && i > startIndex) {
|
|
96
|
+
break;
|
|
97
|
+
}
|
|
98
|
+
nodes.push(node);
|
|
99
|
+
}
|
|
100
|
+
const sectionTree = { type: 'root', children: nodes };
|
|
101
|
+
return unified().use(remarkStringify).stringify(sectionTree);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
exports.DocumentManager = DocumentManager;
|
|
105
|
+
function slugify(text) {
|
|
106
|
+
return text
|
|
107
|
+
.toLowerCase()
|
|
108
|
+
.trim()
|
|
109
|
+
.replace(/[\s]+/g, '-')
|
|
110
|
+
.replace(/[^\w-]/g, '');
|
|
111
|
+
}
|
|
112
|
+
function extractText(node) {
|
|
113
|
+
let text = '';
|
|
114
|
+
visit(node, 'text', (n) => {
|
|
115
|
+
text += n.value;
|
|
116
|
+
});
|
|
117
|
+
return text;
|
|
118
|
+
}
|
|
119
|
+
//# sourceMappingURL=DocumentManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DocumentManager.js","sourceRoot":"","sources":["../../src/knowledge/DocumentManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './DocumentManager';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./DocumentManager"), exports);
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/knowledge/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC"}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
export interface RemoteAgentToolsConfig {
|
|
2
|
+
query?: string;
|
|
3
|
+
execute?: string;
|
|
4
|
+
}
|
|
5
|
+
export interface RemoteAgentConfigInput {
|
|
6
|
+
type: 'mcp-http';
|
|
7
|
+
url: string;
|
|
8
|
+
apiKey?: string;
|
|
9
|
+
api_key?: string;
|
|
10
|
+
agentId?: string;
|
|
11
|
+
agent_id?: string;
|
|
12
|
+
timeoutMs?: number;
|
|
13
|
+
timeout_ms?: number;
|
|
14
|
+
tools?: RemoteAgentToolsConfig;
|
|
15
|
+
}
|
|
16
|
+
export interface RemoteAgentInfo {
|
|
17
|
+
type: 'mcp-http';
|
|
18
|
+
url: string;
|
|
19
|
+
apiKey?: string;
|
|
20
|
+
agentId?: string;
|
|
21
|
+
timeoutMs?: number;
|
|
22
|
+
tools?: RemoteAgentToolsConfig;
|
|
23
|
+
}
|
|
24
|
+
export interface AgentConfig {
|
|
25
|
+
id: string;
|
|
26
|
+
working_directory: string;
|
|
27
|
+
inline: {
|
|
28
|
+
type: 'agent';
|
|
29
|
+
provider: 'claude' | 'gemini' | 'copilot';
|
|
30
|
+
system_prompt: string;
|
|
31
|
+
model?: string;
|
|
32
|
+
documents?: Record<string, string>;
|
|
33
|
+
};
|
|
34
|
+
options?: {
|
|
35
|
+
query?: string[];
|
|
36
|
+
execute?: string[];
|
|
37
|
+
};
|
|
38
|
+
tools?: string[];
|
|
39
|
+
capabilities?: {
|
|
40
|
+
autonomous_work?: boolean;
|
|
41
|
+
file_operations?: boolean;
|
|
42
|
+
tool_access?: string[];
|
|
43
|
+
};
|
|
44
|
+
remote?: RemoteAgentConfigInput;
|
|
45
|
+
}
|
|
46
|
+
export declare enum SecurityLevel {
|
|
47
|
+
SAFE = "safe",
|
|
48
|
+
MODERATE = "moderate",
|
|
49
|
+
DANGEROUS = "dangerous",
|
|
50
|
+
CRITICAL = "critical"
|
|
51
|
+
}
|
|
52
|
+
export declare enum ExecutionMode {
|
|
53
|
+
QUERY = "query",
|
|
54
|
+
EXECUTE = "execute"
|
|
55
|
+
}
|
|
56
|
+
export interface AgentsConfig {
|
|
57
|
+
documents?: Record<string, string>;
|
|
58
|
+
agents: AgentConfig[];
|
|
59
|
+
}
|
|
60
|
+
export interface AgentQueryOptions {
|
|
61
|
+
workingDirectory?: string;
|
|
62
|
+
context?: string;
|
|
63
|
+
timeout?: number;
|
|
64
|
+
readOnlyMode?: boolean;
|
|
65
|
+
executionMode?: ExecutionMode;
|
|
66
|
+
securityLevel?: SecurityLevel;
|
|
67
|
+
additionalArgs?: string[];
|
|
68
|
+
model?: string;
|
|
69
|
+
}
|
|
70
|
+
export interface AgentResponse {
|
|
71
|
+
content: string;
|
|
72
|
+
agent: string;
|
|
73
|
+
provider: string;
|
|
74
|
+
command: string;
|
|
75
|
+
success: boolean;
|
|
76
|
+
error?: string;
|
|
77
|
+
actions?: AgentAction[];
|
|
78
|
+
readOnly?: boolean;
|
|
79
|
+
taskId?: string;
|
|
80
|
+
}
|
|
81
|
+
export interface AgentAction {
|
|
82
|
+
type: 'file_read' | 'file_write' | 'tool_call' | 'analysis';
|
|
83
|
+
target: string;
|
|
84
|
+
result: string;
|
|
85
|
+
timestamp: Date;
|
|
86
|
+
}
|
|
87
|
+
export interface AgentInfo {
|
|
88
|
+
id: string;
|
|
89
|
+
name?: string;
|
|
90
|
+
role?: string;
|
|
91
|
+
team?: string;
|
|
92
|
+
provider: 'claude' | 'gemini' | 'copilot' | 'remote' | `remote/${string}` | ('claude' | 'gemini' | 'copilot')[];
|
|
93
|
+
workingDirectory: string;
|
|
94
|
+
capabilities: string[];
|
|
95
|
+
description: string;
|
|
96
|
+
specialties?: string[];
|
|
97
|
+
systemPrompt?: string;
|
|
98
|
+
options?: string[] | {
|
|
99
|
+
query?: string[] | {
|
|
100
|
+
claude?: string[];
|
|
101
|
+
gemini?: string[];
|
|
102
|
+
copilot?: string[];
|
|
103
|
+
};
|
|
104
|
+
execute?: string[] | {
|
|
105
|
+
claude?: string[];
|
|
106
|
+
gemini?: string[];
|
|
107
|
+
copilot?: string[];
|
|
108
|
+
};
|
|
109
|
+
};
|
|
110
|
+
inline?: {
|
|
111
|
+
type: 'agent';
|
|
112
|
+
provider: 'claude' | 'gemini' | 'copilot';
|
|
113
|
+
system_prompt: string;
|
|
114
|
+
model?: string;
|
|
115
|
+
};
|
|
116
|
+
remote?: RemoteAgentInfo;
|
|
117
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ExecutionMode = exports.SecurityLevel = void 0;
|
|
4
|
+
var SecurityLevel;
|
|
5
|
+
(function (SecurityLevel) {
|
|
6
|
+
SecurityLevel["SAFE"] = "safe";
|
|
7
|
+
SecurityLevel["MODERATE"] = "moderate";
|
|
8
|
+
SecurityLevel["DANGEROUS"] = "dangerous";
|
|
9
|
+
SecurityLevel["CRITICAL"] = "critical";
|
|
10
|
+
})(SecurityLevel || (exports.SecurityLevel = SecurityLevel = {}));
|
|
11
|
+
var ExecutionMode;
|
|
12
|
+
(function (ExecutionMode) {
|
|
13
|
+
ExecutionMode["QUERY"] = "query";
|
|
14
|
+
ExecutionMode["EXECUTE"] = "execute";
|
|
15
|
+
})(ExecutionMode || (exports.ExecutionMode = ExecutionMode = {}));
|
|
16
|
+
//# sourceMappingURL=agent.types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent.types.js","sourceRoot":"","sources":["../../src/types/agent.types.ts"],"names":[],"mappings":";;;AAwDA,IAAY,aAKX;AALD,WAAY,aAAa;IACvB,8BAAa,CAAA;IACb,sCAAqB,CAAA;IACrB,wCAAuB,CAAA;IACvB,sCAAqB,CAAA;AACvB,CAAC,EALW,aAAa,6BAAb,aAAa,QAKxB;AAGD,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,gCAAe,CAAA;IACf,oCAAmB,CAAA;AACrB,CAAC,EAHW,aAAa,6BAAb,aAAa,QAGxB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './agent.types';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./agent.types"), exports);
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './types/agent.types';
|
package/dist/types.js
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./types/agent.types"), exports);
|
|
18
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isError = isError;
|
|
4
|
+
exports.getErrorMessage = getErrorMessage;
|
|
5
|
+
exports.getErrorStack = getErrorStack;
|
|
6
|
+
function isError(error) {
|
|
7
|
+
return error instanceof Error;
|
|
8
|
+
}
|
|
9
|
+
function getErrorMessage(error) {
|
|
10
|
+
if (isError(error)) {
|
|
11
|
+
return error.message;
|
|
12
|
+
}
|
|
13
|
+
if (typeof error === 'string') {
|
|
14
|
+
return error;
|
|
15
|
+
}
|
|
16
|
+
if (error && typeof error === 'object' && 'message' in error) {
|
|
17
|
+
return String(error.message);
|
|
18
|
+
}
|
|
19
|
+
return 'An unknown error occurred';
|
|
20
|
+
}
|
|
21
|
+
function getErrorStack(error) {
|
|
22
|
+
if (isError(error)) {
|
|
23
|
+
return error.stack;
|
|
24
|
+
}
|
|
25
|
+
return undefined;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=error-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-utils.js","sourceRoot":"","sources":["../../src/utils/error-utils.ts"],"names":[],"mappings":";;AAIA,0BAEC;AAED,0CAWC;AAED,sCAKC;AAtBD,SAAgB,OAAO,CAAC,KAAc;IACpC,OAAO,KAAK,YAAY,KAAK,CAAC;AAChC,CAAC;AAED,SAAgB,eAAe,CAAC,KAAc;IAC5C,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACnB,OAAO,KAAK,CAAC,OAAO,CAAC;IACvB,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;QAC7D,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IACD,OAAO,2BAA2B,CAAC;AACrC,CAAC;AAED,SAAgB,aAAa,CAAC,KAAc;IAC1C,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACnB,OAAO,KAAK,CAAC,KAAK,CAAC;IACrB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
|