@sowonai/crewx-cli 0.4.0-dev.10 → 0.4.0-dev.12

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 (39) hide show
  1. package/README.md +3 -5
  2. package/dist/ai-provider.service.d.ts +7 -12
  3. package/dist/ai-provider.service.js +41 -19
  4. package/dist/ai-provider.service.js.map +1 -1
  5. package/dist/ai.service.d.ts +5 -45
  6. package/dist/ai.service.js +7 -584
  7. package/dist/ai.service.js.map +1 -1
  8. package/dist/app.module.js +55 -8
  9. package/dist/app.module.js.map +1 -1
  10. package/dist/crewx.tool.d.ts +5 -2
  11. package/dist/crewx.tool.js +90 -48
  12. package/dist/crewx.tool.js.map +1 -1
  13. package/dist/providers/dynamic-provider.factory.d.ts +9 -51
  14. package/dist/providers/dynamic-provider.factory.js +44 -506
  15. package/dist/providers/dynamic-provider.factory.js.map +1 -1
  16. package/dist/services/config.service.d.ts +1 -1
  17. package/dist/services/remote-agent.service.d.ts +1 -1
  18. package/dist/utils/stdin-utils.d.ts +4 -25
  19. package/dist/utils/stdin-utils.js +2 -23
  20. package/dist/utils/stdin-utils.js.map +1 -1
  21. package/package.json +2 -2
  22. package/dist/providers/base-ai.provider.d.ts +0 -1
  23. package/dist/providers/base-ai.provider.js +0 -6
  24. package/dist/providers/base-ai.provider.js.map +0 -1
  25. package/dist/providers/claude.provider.d.ts +0 -5
  26. package/dist/providers/claude.provider.js +0 -32
  27. package/dist/providers/claude.provider.js.map +0 -1
  28. package/dist/providers/codex.provider.d.ts +0 -4
  29. package/dist/providers/codex.provider.js +0 -30
  30. package/dist/providers/codex.provider.js.map +0 -1
  31. package/dist/providers/copilot.provider.d.ts +0 -5
  32. package/dist/providers/copilot.provider.js +0 -32
  33. package/dist/providers/copilot.provider.js.map +0 -1
  34. package/dist/providers/gemini.provider.d.ts +0 -5
  35. package/dist/providers/gemini.provider.js +0 -32
  36. package/dist/providers/gemini.provider.js.map +0 -1
  37. package/dist/utils/mention-parser.d.ts +0 -18
  38. package/dist/utils/mention-parser.js +0 -136
  39. package/dist/utils/mention-parser.js.map +0 -1
package/README.md CHANGED
@@ -322,11 +322,9 @@ packages/cli/
322
322
  │ │ ├── execute.handler.ts
323
323
  │ │ ├── chat.handler.ts
324
324
  │ │ └── ...
325
- │ ├── providers/ # AI provider implementations (NestJS wrappers)
326
- │ │ ├── claude.provider.ts # Extends SDK ClaudeProvider
327
- │ │ ├── gemini.provider.ts # Extends SDK GeminiProvider
328
- │ │ ├── copilot.provider.ts # Extends SDK CopilotProvider
329
- │ │ └── codex.provider.ts # Extends SDK CodexProvider
325
+ │ ├── providers/ # CLI-specific provider utilities
326
+ │ │ ├── dynamic-provider.factory.ts # Security wrapper over SDK dynamic providers
327
+ │ │ └── logger.adapter.ts # Nest logger adapter for SDK providers
330
328
  │ ├── services/ # Business logic
331
329
  │ │ ├── ai.service.ts
332
330
  │ │ ├── ai-provider.service.ts
@@ -1,24 +1,19 @@
1
1
  import { OnModuleInit } from '@nestjs/common';
2
- import { AIProvider, AIQueryOptions, AIResponse } from '@sowonai/crewx-sdk';
3
- import { ClaudeProvider } from './providers/claude.provider';
4
- import { CopilotProvider } from './providers/copilot.provider';
5
- import { GeminiProvider } from './providers/gemini.provider';
6
- import { CodexProvider } from './providers/codex.provider';
2
+ import { AIProvider, AIQueryOptions, AIResponse, type PluginProviderConfig, type RemoteProviderConfig } from '@sowonai/crewx-sdk';
7
3
  import { DynamicProviderFactory } from './providers/dynamic-provider.factory';
8
- import { RemoteProviderConfig } from './providers/dynamic-provider.factory';
9
4
  import { ConfigService } from './services/config.service';
5
+ import { ToolCallService } from './services/tool-call.service';
10
6
  export declare class AIProviderService implements OnModuleInit {
11
- private readonly claudeProvider;
12
- private readonly copilotProvider;
13
- private readonly geminiProvider;
14
- private readonly codexProvider;
7
+ private readonly toolCallService;
15
8
  private readonly dynamicProviderFactory;
16
9
  private readonly configService;
17
10
  private readonly logger;
18
11
  private readonly providers;
19
12
  private availableProviders;
20
- constructor(claudeProvider: ClaudeProvider, copilotProvider: CopilotProvider, geminiProvider: GeminiProvider, codexProvider: CodexProvider, dynamicProviderFactory: DynamicProviderFactory, configService: ConfigService);
13
+ private readonly builtInProviderNames;
14
+ constructor(toolCallService: ToolCallService, dynamicProviderFactory: DynamicProviderFactory, configService: ConfigService);
21
15
  onModuleInit(): Promise<void>;
16
+ private createBuiltInProviders;
22
17
  private loadPluginProviders;
23
18
  reloadPluginProviders(): Promise<void>;
24
19
  private registerProvider;
@@ -31,6 +26,6 @@ export declare class AIProviderService implements OnModuleInit {
31
26
  validateCLIInstallation(): Promise<{
32
27
  [key: string]: boolean;
33
28
  }>;
34
- getPluginProviders(): any[];
29
+ getPluginProviders(): PluginProviderConfig[];
35
30
  getRemoteProviders(): RemoteProviderConfig[];
36
31
  }
@@ -13,31 +13,56 @@ Object.defineProperty(exports, "__esModule", { value: true });
13
13
  exports.AIProviderService = void 0;
14
14
  const common_1 = require("@nestjs/common");
15
15
  const crewx_sdk_1 = require("@sowonai/crewx-sdk");
16
- const claude_provider_1 = require("./providers/claude.provider");
17
- const copilot_provider_1 = require("./providers/copilot.provider");
18
- const gemini_provider_1 = require("./providers/gemini.provider");
19
- const codex_provider_1 = require("./providers/codex.provider");
20
16
  const dynamic_provider_factory_1 = require("./providers/dynamic-provider.factory");
21
17
  const config_service_1 = require("./services/config.service");
18
+ const tool_call_service_1 = require("./services/tool-call.service");
19
+ const logger_adapter_1 = require("./providers/logger.adapter");
20
+ const version_1 = require("./version");
22
21
  let AIProviderService = AIProviderService_1 = class AIProviderService {
23
- constructor(claudeProvider, copilotProvider, geminiProvider, codexProvider, dynamicProviderFactory, configService) {
24
- this.claudeProvider = claudeProvider;
25
- this.copilotProvider = copilotProvider;
26
- this.geminiProvider = geminiProvider;
27
- this.codexProvider = codexProvider;
22
+ constructor(toolCallService, dynamicProviderFactory, configService) {
23
+ this.toolCallService = toolCallService;
28
24
  this.dynamicProviderFactory = dynamicProviderFactory;
29
25
  this.configService = configService;
30
26
  this.logger = new common_1.Logger(AIProviderService_1.name);
31
27
  this.providers = new Map();
32
28
  this.availableProviders = [];
29
+ this.builtInProviderNames = new Set([
30
+ crewx_sdk_1.BuiltInProviders.CLAUDE,
31
+ crewx_sdk_1.BuiltInProviders.GEMINI,
32
+ crewx_sdk_1.BuiltInProviders.COPILOT,
33
+ crewx_sdk_1.BuiltInProviders.CODEX,
34
+ ]);
33
35
  }
34
36
  async onModuleInit() {
35
- this.registerProvider(this.claudeProvider);
36
- this.registerProvider(this.copilotProvider);
37
- this.registerProvider(this.geminiProvider);
38
- this.registerProvider(this.codexProvider);
37
+ for (const provider of this.createBuiltInProviders()) {
38
+ this.registerProvider(provider);
39
+ }
39
40
  await this.loadPluginProviders();
40
41
  }
42
+ createBuiltInProviders() {
43
+ return [
44
+ new crewx_sdk_1.ClaudeProvider({
45
+ logger: (0, logger_adapter_1.createLoggerAdapter)('ClaudeProvider'),
46
+ toolCallHandler: this.toolCallService,
47
+ crewxVersion: version_1.CREWX_VERSION,
48
+ }),
49
+ new crewx_sdk_1.GeminiProvider({
50
+ logger: (0, logger_adapter_1.createLoggerAdapter)('GeminiProvider'),
51
+ toolCallHandler: this.toolCallService,
52
+ crewxVersion: version_1.CREWX_VERSION,
53
+ }),
54
+ new crewx_sdk_1.CopilotProvider({
55
+ logger: (0, logger_adapter_1.createLoggerAdapter)('CopilotProvider'),
56
+ toolCallHandler: this.toolCallService,
57
+ crewxVersion: version_1.CREWX_VERSION,
58
+ }),
59
+ new crewx_sdk_1.CodexProvider({
60
+ logger: (0, logger_adapter_1.createLoggerAdapter)('CodexProvider'),
61
+ toolCallHandler: this.toolCallService,
62
+ crewxVersion: version_1.CREWX_VERSION,
63
+ }),
64
+ ];
65
+ }
41
66
  async loadPluginProviders() {
42
67
  try {
43
68
  const dynamicConfigs = this.configService.getDynamicProviders();
@@ -66,9 +91,8 @@ let AIProviderService = AIProviderService_1 = class AIProviderService {
66
91
  }
67
92
  }
68
93
  async reloadPluginProviders() {
69
- const builtInProviders = ['cli/claude', 'cli/gemini', 'cli/copilot', 'cli/codex'];
70
94
  for (const [name] of this.providers) {
71
- if (!builtInProviders.includes(name)) {
95
+ if (!this.builtInProviderNames.has(name)) {
72
96
  this.providers.delete(name);
73
97
  }
74
98
  }
@@ -80,6 +104,7 @@ let AIProviderService = AIProviderService_1 = class AIProviderService {
80
104
  }
81
105
  async initializeProviders() {
82
106
  this.logger.log('Initializing AI providers...');
107
+ this.availableProviders = [];
83
108
  const checks = Array.from(this.providers.entries()).map(async ([name, provider]) => {
84
109
  try {
85
110
  const isAvailable = await provider.isAvailable();
@@ -181,10 +206,7 @@ let AIProviderService = AIProviderService_1 = class AIProviderService {
181
206
  exports.AIProviderService = AIProviderService;
182
207
  exports.AIProviderService = AIProviderService = AIProviderService_1 = __decorate([
183
208
  (0, common_1.Injectable)(),
184
- __metadata("design:paramtypes", [claude_provider_1.ClaudeProvider,
185
- copilot_provider_1.CopilotProvider,
186
- gemini_provider_1.GeminiProvider,
187
- codex_provider_1.CodexProvider,
209
+ __metadata("design:paramtypes", [tool_call_service_1.ToolCallService,
188
210
  dynamic_provider_factory_1.DynamicProviderFactory,
189
211
  config_service_1.ConfigService])
190
212
  ], AIProviderService);
@@ -1 +1 @@
1
- {"version":3,"file":"ai-provider.service.js","sourceRoot":"","sources":["../src/ai-provider.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-provider.service.js","sourceRoot":"","sources":["../src/ai-provider.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAAkE;AAClE,kDAa4B;AAC5B,mFAA8E;AAC9E,8DAA0D;AAC1D,oEAA+D;AAC/D,+DAAiE;AACjE,uCAA0C;AAGnC,IAAM,iBAAiB,yBAAvB,MAAM,iBAAiB;IAW5B,YACmB,eAAgC,EAChC,sBAA8C,EAC9C,aAA4B;QAF5B,oBAAe,GAAf,eAAe,CAAiB;QAChC,2BAAsB,GAAtB,sBAAsB,CAAwB;QAC9C,kBAAa,GAAb,aAAa,CAAe;QAb9B,WAAM,GAAG,IAAI,eAAM,CAAC,mBAAiB,CAAC,IAAI,CAAC,CAAC;QAC5C,cAAS,GAAG,IAAI,GAAG,EAAsB,CAAC;QACnD,uBAAkB,GAAa,EAAE,CAAC;QACzB,yBAAoB,GAAG,IAAI,GAAG,CAAS;YACtD,4BAAgB,CAAC,MAAM;YACvB,4BAAgB,CAAC,MAAM;YACvB,4BAAgB,CAAC,OAAO;YACxB,4BAAgB,CAAC,KAAK;SACvB,CAAC,CAAC;IAMA,CAAC;IAEJ,KAAK,CAAC,YAAY;QAChB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,sBAAsB,EAAE,EAAE,CAAC;YACrD,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAClC,CAAC;QAED,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;IACnC,CAAC;IAEO,sBAAsB;QAC5B,OAAO;YACL,IAAI,0BAAiB,CAAC;gBACpB,MAAM,EAAE,IAAA,oCAAmB,EAAC,gBAAgB,CAAC;gBAC7C,eAAe,EAAE,IAAI,CAAC,eAAe;gBACrC,YAAY,EAAE,uBAAa;aAC5B,CAAC;YACF,IAAI,0BAAiB,CAAC;gBACpB,MAAM,EAAE,IAAA,oCAAmB,EAAC,gBAAgB,CAAC;gBAC7C,eAAe,EAAE,IAAI,CAAC,eAAe;gBACrC,YAAY,EAAE,uBAAa;aAC5B,CAAC;YACF,IAAI,2BAAkB,CAAC;gBACrB,MAAM,EAAE,IAAA,oCAAmB,EAAC,iBAAiB,CAAC;gBAC9C,eAAe,EAAE,IAAI,CAAC,eAAe;gBACrC,YAAY,EAAE,uBAAa;aAC5B,CAAC;YACF,IAAI,yBAAgB,CAAC;gBACnB,MAAM,EAAE,IAAA,oCAAmB,EAAC,eAAe,CAAC;gBAC5C,eAAe,EAAE,IAAI,CAAC,eAAe;gBACrC,YAAY,EAAE,uBAAa;aAC5B,CAAC;SACH,CAAC;IACJ,CAAC;IAKO,KAAK,CAAC,mBAAmB;QAC/B,IAAI,CAAC;YACH,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,mBAAmB,EAAE,CAAC;YAEhE,IAAI,CAAC,cAAc,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACnD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;gBAC1D,OAAO;YACT,CAAC;YAED,KAAK,MAAM,cAAc,IAAI,cAAc,EAAE,CAAC;gBAC5C,IAAI,CAAC;oBAEH,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,CAAC;wBAChE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oCAAqC,cAAsB,CAAC,EAAE,EAAE,CAAC,CAAC;wBACnF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;wBAC7E,SAAS;oBACX,CAAC;oBAGD,MAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;oBAC5E,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;oBAChC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,cAAc,CAAC,IAAI,cAAc,cAAc,CAAC,EAAE,EAAE,CAAC,CAAC;gBACxF,CAAC;gBAAC,OAAO,KAAU,EAAE,CAAC;oBACpB,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,oCAAqC,cAAsB,CAAC,EAAE,IAAI,SAAS,MAAM,KAAK,CAAC,OAAO,EAAE,EAChG,KAAK,CAAC,KAAK,CACZ,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;IAMD,KAAK,CAAC,qBAAqB;QAEzB,KAAK,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACpC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;QAGD,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;IACnC,CAAC;IAEO,gBAAgB,CAAC,QAAoB;QAC3C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,2BAA2B,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,mBAAmB;QACvB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;QAChD,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE;YACjF,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC;gBACjD,IAAI,WAAW,EAAE,CAAC;oBAChB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACnC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,wBAAwB,CAAC,CAAC;gBACrD,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,4BAA4B,CAAC,CAAC;gBAC1D,CAAC;gBACD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;YAC/B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,IAAI,YAAY,EAAE,KAAK,CAAC,CAAC;gBAC7D,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;YACtC,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,wBAAwB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,KAAK,CAAC,OAAO,CACX,MAAc,EACd,eAAuB,QAAQ,EAC/B,UAA0B,EAAE;QAE5B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAElD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,qCAAyB,CAAC,YAAY,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC;QACjD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,qCAAyB,CAAC,YAAY,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,CAAC;YAEH,IAAI,OAAQ,QAAgB,CAAC,cAAc,KAAK,UAAU,EAAE,CAAC;gBAC3D,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,YAAY,gBAAgB,CAAC,CAAC;gBAC1E,OAAO,MAAO,QAAgB,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACjE,CAAC;YAED,OAAO,MAAM,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC/C,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,YAAY,GAAG,EAAE,KAAK,CAAC,CAAC;YAC5D,OAAO;gBACL,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,YAAY;gBACtB,OAAO,EAAE,GAAG,YAAY,QAAQ;gBAChC,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,CAAC,OAAO,IAAI,wBAAwB;aACjD,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CACb,MAAc,EACd,YAAoB,EACpB,UAA0B,EAAE;QAE5B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAClD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,qCAAyB,CAAC,YAAY,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC;QACjD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,qCAAyB,CAAC,YAAY,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,CAAC;YAEH,IAAI,OAAQ,QAAgB,CAAC,cAAc,KAAK,UAAU,EAAE,CAAC;gBAC3D,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,YAAY,kBAAkB,CAAC,CAAC;gBAC5E,OAAO,MAAO,QAAgB,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACjE,CAAC;YAGD,OAAO,MAAO,QAAgB,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC1D,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mBAAmB,YAAY,GAAG,EAAE,KAAK,CAAC,CAAC;YAC7D,OAAO;gBACL,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,YAAY;gBACtB,OAAO,EAAE,GAAG,YAAY,UAAU;gBAClC,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,CAAC,OAAO,IAAI,wBAAwB;aACjD,CAAC;QACJ,CAAC;IACH,CAAC;IAED,qBAAqB;QAGnB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,uBAAuB;QAC3B,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC,qBAAqB,EAAE,CAAC;IACtC,CAAC;IAED,WAAW,CAAC,IAAY;QACtB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,uBAAuB;QAC3B,MAAM,YAAY,GAA+B,EAAE,CAAC;QAEpD,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAC9C,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC;QACpD,CAAC;QAED,OAAO,YAAY,CAAC;IACtB,CAAC;IAKD,kBAAkB;QAChB,OAAO,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE,CAAC;IACjD,CAAC;IAED,kBAAkB;QAChB,OAAO,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE,CAAC;IACjD,CAAC;CACF,CAAA;AA9OY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,mBAAU,GAAE;qCAayB,mCAAe;QACR,iDAAsB;QAC/B,8BAAa;GAdpC,iBAAiB,CA8O7B"}
@@ -1,53 +1,13 @@
1
+ import { type AIResponse, type AIQueryOptions } from '@sowonai/crewx-sdk';
1
2
  import { AIProviderService } from './ai-provider.service';
2
- export interface AIResponse {
3
- content: string;
4
- provider: string;
5
- command: string;
6
- success: boolean;
7
- error?: string;
8
- taskId?: string;
9
- }
10
- export interface AIQueryOptions {
11
- timeout?: number;
12
- workingDirectory?: string;
13
- additionalArgs?: string[];
14
- model?: string;
15
- securityKey?: string;
16
- agentId?: string;
17
- messages?: Array<{
18
- text: string;
19
- isAssistant: boolean;
20
- metadata?: Record<string, any>;
21
- }>;
22
- pipedContext?: string;
23
- }
3
+ export type { AIResponse, AIQueryOptions } from '@sowonai/crewx-sdk';
24
4
  export declare class AIService {
25
5
  private readonly aiProviderService;
26
6
  private readonly logger;
27
- private readonly logsDir;
28
- private readonly timeoutConfig;
29
7
  constructor(aiProviderService: AIProviderService);
30
- private createTaskLogFile;
31
- private appendTaskLog;
32
- private findClaudePath;
33
- queryClaudeCLI(prompt: string, options?: AIQueryOptions): Promise<AIResponse>;
34
- queryClaudeWithPermissions(prompt: string, options?: AIQueryOptions): Promise<AIResponse>;
35
- queryGeminiCLI(prompt: string, options?: AIQueryOptions & {
36
- taskId?: string;
37
- }): Promise<AIResponse>;
38
- executeGeminiCLI(prompt: string, options?: AIQueryOptions & {
39
- taskId?: string;
40
- }): Promise<AIResponse>;
41
- queryCopilotCLI(prompt: string, options?: AIQueryOptions): Promise<AIResponse>;
42
- queryAI(prompt: string, provider?: string, options?: AIQueryOptions & {
43
- taskId?: string;
44
- }): Promise<AIResponse>;
45
- executeAI(prompt: string, provider?: string, options?: AIQueryOptions & {
46
- taskId?: string;
47
- }): Promise<AIResponse>;
48
- executeGemini(prompt: string, options?: AIQueryOptions & {
49
- taskId?: string;
50
- }): Promise<AIResponse>;
8
+ queryAI(prompt: string, provider?: string, options?: AIQueryOptions): Promise<AIResponse>;
9
+ executeAI(prompt: string, provider?: string, options?: AIQueryOptions): Promise<AIResponse>;
10
+ executeGemini(prompt: string, options?: AIQueryOptions): Promise<AIResponse>;
51
11
  checkAvailableProviders(): Promise<string[]>;
52
12
  validateCLIInstallation(): Promise<{
53
13
  claude: boolean;