crewx 0.2.4-dev.3 → 0.2.4-dev.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/dist/ai-provider.service.d.ts +2 -0
  2. package/dist/ai-provider.service.js +11 -8
  3. package/dist/ai-provider.service.js.map +1 -1
  4. package/dist/app.module.js +10 -1
  5. package/dist/app.module.js.map +1 -1
  6. package/dist/cli/mcp.handler.d.ts +3 -0
  7. package/dist/cli/mcp.handler.js +121 -0
  8. package/dist/cli/mcp.handler.js.map +1 -0
  9. package/dist/cli-options.d.ts +6 -0
  10. package/dist/cli-options.js +34 -4
  11. package/dist/cli-options.js.map +1 -1
  12. package/dist/crewx.tool.d.ts +1 -0
  13. package/dist/crewx.tool.js +3 -1
  14. package/dist/crewx.tool.js.map +1 -1
  15. package/dist/guards/bearer-auth.guard.d.ts +7 -0
  16. package/dist/guards/bearer-auth.guard.js +44 -0
  17. package/dist/guards/bearer-auth.guard.js.map +1 -0
  18. package/dist/health.controller.d.ts +6 -0
  19. package/dist/health.controller.js +32 -0
  20. package/dist/health.controller.js.map +1 -0
  21. package/dist/main.js +26 -4
  22. package/dist/main.js.map +1 -1
  23. package/dist/mcp.controller.js +2 -0
  24. package/dist/mcp.controller.js.map +1 -1
  25. package/dist/providers/ai-provider.interface.d.ts +1 -0
  26. package/dist/providers/ai-provider.interface.js +1 -0
  27. package/dist/providers/ai-provider.interface.js.map +1 -1
  28. package/dist/providers/base-ai.provider.js +2 -2
  29. package/dist/providers/base-ai.provider.js.map +1 -1
  30. package/dist/providers/claude.provider.js +3 -3
  31. package/dist/providers/claude.provider.js.map +1 -1
  32. package/dist/providers/codex.provider.js +2 -2
  33. package/dist/providers/codex.provider.js.map +1 -1
  34. package/dist/providers/copilot.provider.js +1 -1
  35. package/dist/providers/copilot.provider.js.map +1 -1
  36. package/dist/providers/dynamic-provider.factory.d.ts +24 -2
  37. package/dist/providers/dynamic-provider.factory.js +251 -8
  38. package/dist/providers/dynamic-provider.factory.js.map +1 -1
  39. package/dist/providers/gemini.provider.js +5 -5
  40. package/dist/providers/gemini.provider.js.map +1 -1
  41. package/dist/services/auth.service.d.ts +9 -0
  42. package/dist/services/auth.service.js +47 -0
  43. package/dist/services/auth.service.js.map +1 -0
  44. package/dist/services/config.service.d.ts +4 -2
  45. package/dist/services/config.service.js +16 -5
  46. package/dist/services/config.service.js.map +1 -1
  47. package/dist/services/mcp-client.service.d.ts +26 -0
  48. package/dist/services/mcp-client.service.js +81 -0
  49. package/dist/services/mcp-client.service.js.map +1 -0
  50. package/dist/services/remote-agent.service.d.ts +22 -0
  51. package/dist/services/remote-agent.service.js +80 -0
  52. package/dist/services/remote-agent.service.js.map +1 -0
  53. package/dist/services/tool-call.service.js +243 -1
  54. package/dist/services/tool-call.service.js.map +1 -1
  55. package/dist/tsconfig.tsbuildinfo +1 -1
  56. package/package.json +1 -1
@@ -0,0 +1,81 @@
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 McpClientService_1;
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.McpClientService = void 0;
11
+ const common_1 = require("@nestjs/common");
12
+ let McpClientService = McpClientService_1 = class McpClientService {
13
+ constructor() {
14
+ this.logger = new common_1.Logger(McpClientService_1.name);
15
+ }
16
+ resolveEndpoint(baseUrl, path) {
17
+ const trimmed = baseUrl.endsWith('/') ? baseUrl.slice(0, -1) : baseUrl;
18
+ return `${trimmed}${path}`;
19
+ }
20
+ buildHeaders(options) {
21
+ const headers = {
22
+ 'Content-Type': 'application/json',
23
+ ...(options.headers || {}),
24
+ };
25
+ if (options.apiKey) {
26
+ headers['Authorization'] = `Bearer ${options.apiKey}`;
27
+ }
28
+ return headers;
29
+ }
30
+ async sendRequest(method, params = {}, options) {
31
+ const url = this.resolveEndpoint(options.baseUrl, '/mcp');
32
+ const requestBody = {
33
+ jsonrpc: '2.0',
34
+ id: `${method}-${Date.now()}`,
35
+ method,
36
+ params,
37
+ };
38
+ const controller = new AbortController();
39
+ const timeoutMs = options.timeoutMs ?? 15000;
40
+ const timeout = setTimeout(() => controller.abort(), timeoutMs);
41
+ try {
42
+ const response = await fetch(url, {
43
+ method: 'POST',
44
+ headers: this.buildHeaders(options),
45
+ body: JSON.stringify(requestBody),
46
+ signal: controller.signal,
47
+ });
48
+ clearTimeout(timeout);
49
+ if (!response.ok) {
50
+ const text = await response.text();
51
+ throw new Error(`HTTP ${response.status}: ${response.statusText} - ${text}`);
52
+ }
53
+ const payload = (await response.json());
54
+ if (payload.error) {
55
+ throw new Error(payload.error.message || 'MCP server returned an error');
56
+ }
57
+ return payload.result;
58
+ }
59
+ catch (error) {
60
+ this.logger.error(`MCP request failed (method: ${method}, url: ${url}): ${error.message || error}`);
61
+ throw error;
62
+ }
63
+ }
64
+ async listTools(options) {
65
+ return this.sendRequest('tools/list', {}, options);
66
+ }
67
+ async callTool(toolName, args, options) {
68
+ return this.sendRequest('tools/call', { name: toolName, arguments: args }, options);
69
+ }
70
+ async queryAgent(payload, options) {
71
+ return this.callTool('crewx_queryAgent', payload, options);
72
+ }
73
+ async executeAgent(payload, options) {
74
+ return this.callTool('crewx_executeAgent', payload, options);
75
+ }
76
+ };
77
+ exports.McpClientService = McpClientService;
78
+ exports.McpClientService = McpClientService = McpClientService_1 = __decorate([
79
+ (0, common_1.Injectable)()
80
+ ], McpClientService);
81
+ //# sourceMappingURL=mcp-client.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-client.service.js","sourceRoot":"","sources":["../../src/services/mcp-client.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { AgentLoaderService } from './agent-loader.service';
2
+ import { ConfigService } from './config.service';
3
+ import { AgentInfo } from '../agent.types';
4
+ import { RemoteProviderConfig } from '../providers/dynamic-provider.factory';
5
+ export interface RemoteAgentDescriptor {
6
+ agent: AgentInfo;
7
+ provider: RemoteProviderConfig;
8
+ transport: 'http' | 'file';
9
+ location: string;
10
+ }
11
+ export declare class RemoteAgentService {
12
+ private readonly agentLoaderService;
13
+ private readonly configService;
14
+ private readonly logger;
15
+ constructor(agentLoaderService: AgentLoaderService, configService: ConfigService);
16
+ private normalizeProviderName;
17
+ private resolveRemoteProviderConfig;
18
+ private detectTransport;
19
+ getRemoteAgents(): Promise<RemoteAgentDescriptor[]>;
20
+ getRemoteAgent(agentId: string): Promise<RemoteAgentDescriptor | undefined>;
21
+ isRemoteAgent(agentId: string): Promise<boolean>;
22
+ }
@@ -0,0 +1,80 @@
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 RemoteAgentService_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.RemoteAgentService = void 0;
14
+ const common_1 = require("@nestjs/common");
15
+ const agent_loader_service_1 = require("./agent-loader.service");
16
+ const config_service_1 = require("./config.service");
17
+ let RemoteAgentService = RemoteAgentService_1 = class RemoteAgentService {
18
+ constructor(agentLoaderService, configService) {
19
+ this.agentLoaderService = agentLoaderService;
20
+ this.configService = configService;
21
+ this.logger = new common_1.Logger(RemoteAgentService_1.name);
22
+ }
23
+ normalizeProviderName(provider) {
24
+ if (Array.isArray(provider)) {
25
+ return provider.find((id) => typeof id === 'string' && id.startsWith('remote/')) || null;
26
+ }
27
+ if (typeof provider === 'string' && provider.startsWith('remote/')) {
28
+ return provider;
29
+ }
30
+ return null;
31
+ }
32
+ resolveRemoteProviderConfig(providerName) {
33
+ const remoteProviders = this.configService.getRemoteProviders();
34
+ const identifier = providerName.includes('/') ? providerName.split('/')[1] : providerName;
35
+ return remoteProviders.find((provider) => provider.id === identifier);
36
+ }
37
+ detectTransport(location) {
38
+ if (location.startsWith('http://') || location.startsWith('https://')) {
39
+ return 'http';
40
+ }
41
+ return 'file';
42
+ }
43
+ async getRemoteAgents() {
44
+ const allAgents = await this.agentLoaderService.getAllAgents();
45
+ const descriptors = [];
46
+ for (const agent of allAgents) {
47
+ const providerName = this.normalizeProviderName(agent.provider);
48
+ if (!providerName) {
49
+ continue;
50
+ }
51
+ const providerConfig = this.resolveRemoteProviderConfig(providerName);
52
+ if (!providerConfig) {
53
+ this.logger.warn(`Remote provider configuration not found for '${providerName}'`);
54
+ continue;
55
+ }
56
+ descriptors.push({
57
+ agent,
58
+ provider: providerConfig,
59
+ transport: this.detectTransport(providerConfig.location),
60
+ location: providerConfig.location,
61
+ });
62
+ }
63
+ return descriptors;
64
+ }
65
+ async getRemoteAgent(agentId) {
66
+ const remoteAgents = await this.getRemoteAgents();
67
+ return remoteAgents.find((descriptor) => descriptor.agent.id === agentId);
68
+ }
69
+ async isRemoteAgent(agentId) {
70
+ const descriptor = await this.getRemoteAgent(agentId);
71
+ return Boolean(descriptor);
72
+ }
73
+ };
74
+ exports.RemoteAgentService = RemoteAgentService;
75
+ exports.RemoteAgentService = RemoteAgentService = RemoteAgentService_1 = __decorate([
76
+ (0, common_1.Injectable)(),
77
+ __metadata("design:paramtypes", [agent_loader_service_1.AgentLoaderService,
78
+ config_service_1.ConfigService])
79
+ ], RemoteAgentService);
80
+ //# sourceMappingURL=remote-agent.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remote-agent.service.js","sourceRoot":"","sources":["../../src/services/remote-agent.service.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.ToolCallService = void 0;
13
13
  const common_1 = require("@nestjs/common");
14
14
  const fs_1 = require("fs");
15
+ const child_process_1 = require("child_process");
16
+ const path_1 = require("path");
15
17
  const agent_loader_service_1 = require("./agent-loader.service");
16
18
  const DocumentManager_1 = require("../knowledge/DocumentManager");
17
19
  let ToolCallService = class ToolCallService {
@@ -89,6 +91,154 @@ let ToolCallService = class ToolCallService {
89
91
  }
90
92
  },
91
93
  });
94
+ this.register({
95
+ name: 'run_shell',
96
+ description: 'Execute a shell command in the current workspace directory',
97
+ input_schema: {
98
+ type: 'object',
99
+ properties: {
100
+ command: {
101
+ type: 'string',
102
+ description: 'Shell command to execute (executed via bash -lc)',
103
+ },
104
+ cwd: {
105
+ type: 'string',
106
+ description: 'Optional working directory (relative or absolute)',
107
+ },
108
+ timeout: {
109
+ type: 'number',
110
+ description: 'Optional timeout in milliseconds (default: 120000)',
111
+ },
112
+ },
113
+ required: ['command'],
114
+ },
115
+ output_schema: {
116
+ type: 'object',
117
+ properties: {
118
+ stdout: { type: 'string', description: 'Standard output from the command' },
119
+ stderr: { type: 'string', description: 'Standard error from the command' },
120
+ exitCode: { type: 'number', description: 'Process exit code' },
121
+ timedOut: { type: 'boolean', description: 'Indicates whether the process was terminated due to timeout' },
122
+ },
123
+ },
124
+ }, {
125
+ execute: async (context) => {
126
+ const startTime = Date.now();
127
+ const { command, cwd, timeout } = context.input;
128
+ if (!command || typeof command !== 'string') {
129
+ return {
130
+ success: false,
131
+ error: 'Invalid input: command is required and must be a string',
132
+ metadata: {
133
+ executionTime: Date.now() - startTime,
134
+ toolName: 'run_shell',
135
+ runId: context.runId,
136
+ },
137
+ };
138
+ }
139
+ const workingDir = cwd && typeof cwd === 'string' ? (0, path_1.resolve)(process.cwd(), cwd) : process.cwd();
140
+ const maxTimeout = typeof timeout === 'number' && timeout > 0 ? timeout : 120000;
141
+ return await new Promise((resolveResult) => {
142
+ try {
143
+ const child = (0, child_process_1.spawn)('bash', ['-lc', command], {
144
+ cwd: workingDir,
145
+ env: { ...process.env },
146
+ });
147
+ let stdout = '';
148
+ let stderr = '';
149
+ let timedOut = false;
150
+ child.stdout.on('data', (data) => {
151
+ stdout += data.toString();
152
+ });
153
+ child.stderr.on('data', (data) => {
154
+ stderr += data.toString();
155
+ });
156
+ const timeoutId = setTimeout(() => {
157
+ timedOut = true;
158
+ child.kill('SIGTERM');
159
+ }, maxTimeout);
160
+ child.on('error', (error) => {
161
+ clearTimeout(timeoutId);
162
+ resolveResult({
163
+ success: false,
164
+ error: `Failed to execute command: ${error.message}`,
165
+ metadata: {
166
+ executionTime: Date.now() - startTime,
167
+ toolName: 'run_shell',
168
+ runId: context.runId,
169
+ },
170
+ });
171
+ });
172
+ child.on('close', (code) => {
173
+ clearTimeout(timeoutId);
174
+ const executionTime = Date.now() - startTime;
175
+ if (timedOut) {
176
+ resolveResult({
177
+ success: false,
178
+ error: `Command timed out after ${maxTimeout}ms`,
179
+ metadata: {
180
+ executionTime,
181
+ toolName: 'run_shell',
182
+ runId: context.runId,
183
+ },
184
+ data: {
185
+ stdout,
186
+ stderr,
187
+ exitCode: code ?? -1,
188
+ timedOut: true,
189
+ },
190
+ });
191
+ return;
192
+ }
193
+ if (code === 0) {
194
+ resolveResult({
195
+ success: true,
196
+ data: {
197
+ stdout: stdout.trim(),
198
+ stderr: stderr.trim(),
199
+ exitCode: code ?? 0,
200
+ timedOut: false,
201
+ },
202
+ metadata: {
203
+ executionTime,
204
+ toolName: 'run_shell',
205
+ runId: context.runId,
206
+ },
207
+ });
208
+ }
209
+ else {
210
+ resolveResult({
211
+ success: false,
212
+ error: stderr.trim() || `Command exited with code ${code}`,
213
+ data: {
214
+ stdout: stdout.trim(),
215
+ stderr: stderr.trim(),
216
+ exitCode: code ?? -1,
217
+ timedOut: false,
218
+ },
219
+ metadata: {
220
+ executionTime,
221
+ toolName: 'run_shell',
222
+ runId: context.runId,
223
+ },
224
+ });
225
+ }
226
+ });
227
+ }
228
+ catch (error) {
229
+ resolveResult({
230
+ success: false,
231
+ error: `Failed to execute command: ${error.message}`,
232
+ metadata: {
233
+ executionTime: Date.now() - startTime,
234
+ toolName: 'run_shell',
235
+ runId: context.runId,
236
+ },
237
+ });
238
+ }
239
+ });
240
+ },
241
+ });
92
242
  this.register({
93
243
  name: 'read_file',
94
244
  description: 'Read the contents of a file from the filesystem',
@@ -152,6 +302,98 @@ let ToolCallService = class ToolCallService {
152
302
  }
153
303
  },
154
304
  });
305
+ this.register({
306
+ name: 'write_to_file',
307
+ description: 'Write content to a file on the filesystem. Creates the file if it does not exist, or overwrites it if it does.',
308
+ input_schema: {
309
+ type: 'object',
310
+ properties: {
311
+ path: {
312
+ type: 'string',
313
+ description: 'The path to the file to write',
314
+ },
315
+ content: {
316
+ type: 'string',
317
+ description: 'The content to write to the file',
318
+ },
319
+ },
320
+ required: ['path', 'content'],
321
+ },
322
+ output_schema: {
323
+ type: 'object',
324
+ properties: {
325
+ success: {
326
+ type: 'boolean',
327
+ description: 'Whether the write operation succeeded',
328
+ },
329
+ path: {
330
+ type: 'string',
331
+ description: 'The path of the written file',
332
+ },
333
+ bytesWritten: {
334
+ type: 'number',
335
+ description: 'Number of bytes written',
336
+ },
337
+ },
338
+ required: ['success', 'path'],
339
+ },
340
+ }, {
341
+ execute: async (context) => {
342
+ const startTime = Date.now();
343
+ try {
344
+ const { path, content } = context.input;
345
+ if (!path || typeof path !== 'string') {
346
+ return {
347
+ success: false,
348
+ error: 'Invalid input: path is required and must be a string',
349
+ metadata: {
350
+ executionTime: Date.now() - startTime,
351
+ toolName: 'write_to_file',
352
+ runId: context.runId,
353
+ },
354
+ };
355
+ }
356
+ if (content === undefined || content === null) {
357
+ return {
358
+ success: false,
359
+ error: 'Invalid input: content is required',
360
+ metadata: {
361
+ executionTime: Date.now() - startTime,
362
+ toolName: 'write_to_file',
363
+ runId: context.runId,
364
+ },
365
+ };
366
+ }
367
+ const contentStr = String(content);
368
+ (0, fs_1.writeFileSync)(path, contentStr, 'utf-8');
369
+ const bytesWritten = Buffer.byteLength(contentStr, 'utf-8');
370
+ return {
371
+ success: true,
372
+ data: {
373
+ success: true,
374
+ path,
375
+ bytesWritten,
376
+ },
377
+ metadata: {
378
+ executionTime: Date.now() - startTime,
379
+ toolName: 'write_to_file',
380
+ runId: context.runId,
381
+ },
382
+ };
383
+ }
384
+ catch (error) {
385
+ return {
386
+ success: false,
387
+ error: `Failed to write file: ${error.message}`,
388
+ metadata: {
389
+ executionTime: Date.now() - startTime,
390
+ toolName: 'write_to_file',
391
+ runId: context.runId,
392
+ },
393
+ };
394
+ }
395
+ },
396
+ });
155
397
  this.register({
156
398
  name: 'list_agents',
157
399
  description: 'List all available AI agents in the CodeCrew system. Returns detailed information about each agent including their ID, provider, capabilities, and specialties. Use this tool to discover which agents are available for delegation or collaboration.',
@@ -482,7 +724,7 @@ let ToolCallService = class ToolCallService {
482
724
  }
483
725
  },
484
726
  });
485
- this.logger.log('Built-in tools registered: hello, read_file, list_agents, get_markdown_headings, get_markdown_sections');
727
+ this.logger.log('Built-in tools registered: hello, read_file, write_to_file, run_shell, list_agents, get_markdown_headings, get_markdown_sections');
486
728
  }
487
729
  registerMcpTools() {
488
730
  if (!this.crewXTool) {
@@ -1 +1 @@
1
- {"version":3,"file":"tool-call.service.js","sourceRoot":"","sources":["../../src/services/tool-call.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-call.service.js","sourceRoot":"","sources":["../../src/services/tool-call.service.ts"],"names":[],"mappings":"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"}