@sowonai/crewx-cli 0.4.0-dev.3 → 0.4.0-dev.31

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 (89) hide show
  1. package/README.md +40 -6
  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 +67 -9
  9. package/dist/app.module.js.map +1 -1
  10. package/dist/cli/chat.handler.d.ts +2 -1
  11. package/dist/cli/chat.handler.js +26 -11
  12. package/dist/cli/chat.handler.js.map +1 -1
  13. package/dist/cli/doctor.handler.js +8 -40
  14. package/dist/cli/doctor.handler.js.map +1 -1
  15. package/dist/cli/execute.handler.js +8 -6
  16. package/dist/cli/execute.handler.js.map +1 -1
  17. package/dist/cli/mcp.handler.js.map +1 -1
  18. package/dist/cli/query.handler.js +4 -2
  19. package/dist/cli/query.handler.js.map +1 -1
  20. package/dist/cli-options.d.ts +2 -0
  21. package/dist/cli-options.js +10 -0
  22. package/dist/cli-options.js.map +1 -1
  23. package/dist/crewx.tool.d.ts +18 -2
  24. package/dist/crewx.tool.js +509 -105
  25. package/dist/crewx.tool.js.map +1 -1
  26. package/dist/providers/dynamic-provider.factory.d.ts +9 -51
  27. package/dist/providers/dynamic-provider.factory.js +44 -506
  28. package/dist/providers/dynamic-provider.factory.js.map +1 -1
  29. package/dist/providers/logger.adapter.d.ts +4 -0
  30. package/dist/providers/logger.adapter.js +56 -0
  31. package/dist/providers/logger.adapter.js.map +1 -0
  32. package/dist/services/agent-loader.service.d.ts +6 -2
  33. package/dist/services/agent-loader.service.js +207 -25
  34. package/dist/services/agent-loader.service.js.map +1 -1
  35. package/dist/services/config.service.d.ts +7 -27
  36. package/dist/services/config.service.js +80 -38
  37. package/dist/services/config.service.js.map +1 -1
  38. package/dist/services/parallel-processing.service.d.ts +17 -17
  39. package/dist/services/parallel-processing.service.js +259 -196
  40. package/dist/services/parallel-processing.service.js.map +1 -1
  41. package/dist/services/provider-bridge.service.d.ts +35 -0
  42. package/dist/services/provider-bridge.service.js +224 -0
  43. package/dist/services/provider-bridge.service.js.map +1 -0
  44. package/dist/services/remote-agent.service.d.ts +4 -7
  45. package/dist/services/remote-agent.service.js +41 -95
  46. package/dist/services/remote-agent.service.js.map +1 -1
  47. package/dist/services/template.service.d.ts +2 -0
  48. package/dist/services/template.service.js +46 -1
  49. package/dist/services/template.service.js.map +1 -1
  50. package/dist/services/tool-call.service.d.ts +2 -36
  51. package/dist/services/tool-call.service.js.map +1 -1
  52. package/dist/slack/formatters/message.formatter.d.ts +5 -2
  53. package/dist/slack/formatters/message.formatter.js +55 -2
  54. package/dist/slack/formatters/message.formatter.js.map +1 -1
  55. package/dist/slack/slack-bot.js +1 -2
  56. package/dist/slack/slack-bot.js.map +1 -1
  57. package/dist/utils/stdin-utils.d.ts +4 -25
  58. package/dist/utils/stdin-utils.js +2 -23
  59. package/dist/utils/stdin-utils.js.map +1 -1
  60. package/dist/utils/template-processor.d.ts +2 -29
  61. package/dist/utils/template-processor.js +1 -1
  62. package/dist/utils/template-processor.js.map +1 -1
  63. package/dist/utils/terminal-message-formatter.d.ts +23 -0
  64. package/dist/utils/terminal-message-formatter.js +136 -0
  65. package/dist/utils/terminal-message-formatter.js.map +1 -0
  66. package/package.json +2 -3
  67. package/scripts/postbuild-cli.mjs +20 -1
  68. package/templates/agents/default.yaml +926 -0
  69. package/templates/agents/minimal.yaml +16 -0
  70. package/templates/documents/crewcode-manual.md +292 -0
  71. package/templates/versions.json +19 -0
  72. package/dist/providers/base-ai.provider.d.ts +0 -50
  73. package/dist/providers/base-ai.provider.js +0 -624
  74. package/dist/providers/base-ai.provider.js.map +0 -1
  75. package/dist/providers/claude.provider.d.ts +0 -25
  76. package/dist/providers/claude.provider.js +0 -362
  77. package/dist/providers/claude.provider.js.map +0 -1
  78. package/dist/providers/codex.provider.d.ts +0 -17
  79. package/dist/providers/codex.provider.js +0 -99
  80. package/dist/providers/codex.provider.js.map +0 -1
  81. package/dist/providers/copilot.provider.d.ts +0 -25
  82. package/dist/providers/copilot.provider.js +0 -266
  83. package/dist/providers/copilot.provider.js.map +0 -1
  84. package/dist/providers/gemini.provider.d.ts +0 -22
  85. package/dist/providers/gemini.provider.js +0 -147
  86. package/dist/providers/gemini.provider.js.map +0 -1
  87. package/dist/utils/mention-parser.d.ts +0 -18
  88. package/dist/utils/mention-parser.js +0 -136
  89. package/dist/utils/mention-parser.js.map +0 -1
package/README.md CHANGED
@@ -322,25 +322,55 @@ packages/cli/
322
322
  │ │ ├── execute.handler.ts
323
323
  │ │ ├── chat.handler.ts
324
324
  │ │ └── ...
325
- │ ├── providers/ # AI provider implementations
326
- │ │ ├── claude.provider.ts
327
- │ │ ├── gemini.provider.ts
328
- │ │ ├── copilot.provider.ts
329
- │ │ └── codex.provider.ts
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
333
- │ │ ├── config.service.ts
331
+ │ │ ├── remote-agent.service.ts # Uses SDK RemoteAgentManager
334
332
  │ │ └── ...
335
333
  │ ├── slack/ # Slack integration
336
334
  │ │ ├── slack-bot.ts
337
335
  │ │ └── formatters/
336
+ │ │ └── message.formatter.ts # Extends SDK BaseMessageFormatter
338
337
  │ ├── conversation/ # Conversation management
339
338
  │ ├── guards/ # Security
340
339
  │ └── utils/ # Utilities
341
340
  └── tests/ # Tests
342
341
  ```
343
342
 
343
+ ### SDK Integration (WBS-9)
344
+
345
+ The CLI uses SDK components as a foundation, adding NestJS integration and platform-specific features:
346
+
347
+ #### Message Formatting
348
+ - **SDK**: `BaseMessageFormatter` provides core formatting logic
349
+ - **CLI**: `SlackMessageFormatter` extends SDK base with Slack-specific features (emoji, blocks, markdown)
350
+
351
+ #### AI Providers
352
+ - **SDK**: `BaseAIProvider`, `ClaudeProvider`, `GeminiProvider`, `CopilotProvider`, `CodexProvider`
353
+ - **CLI**: NestJS `@Injectable()` wrappers that:
354
+ - Inject NestJS logger via `LoggerAdapter`
355
+ - Integrate with `AIService` and `ConfigService`
356
+ - Add platform-specific tool execution
357
+
358
+ #### Remote Agents
359
+ - **SDK**: `RemoteAgentManager` handles remote communication
360
+ - **CLI**: `RemoteAgentService` wraps SDK manager with:
361
+ - NestJS dependency injection
362
+ - Agent configuration loading
363
+ - Tool name mapping
364
+ - MCP protocol integration
365
+
366
+ #### Benefits
367
+ 1. **Reusable Core**: SDK components work in any Node.js environment
368
+ 2. **Clean Separation**: Platform logic (NestJS, Slack) stays in CLI
369
+ 3. **Testability**: SDK tests verify core logic, CLI tests verify integration
370
+ 4. **Extensibility**: Custom integrations can use SDK directly
371
+
372
+ For migration details, see [WBS-9 Integration Guide](../../docs/wbs-9-phase1-5-integration.md).
373
+
344
374
  ## Development
345
375
 
346
376
  ### Setup
@@ -495,6 +525,10 @@ The CLI is optimized for:
495
525
  - [Agent Configuration](../../docs/agent-configuration.md) - Configuration details
496
526
  - [Remote Agents](../../docs/remote-agents.md) - Distributed setup
497
527
  - [Template System](../../docs/templates.md) - Knowledge management
528
+ - [Template Variables](../../docs/template-variables.md) - Dynamic variables and TemplateContext usage (WBS-14)
529
+ - [Context Integration Standard](../../packages/docs/context-integration-standard.md) - TemplateContext pipeline and layout responsibilities
530
+ - [Context Migration Guide](../../packages/docs/context-integration-migration.md) - Upgrade steps for custom agents
531
+ - [Layout DSL Reference](../../packages/docs/layout-dsl-field-reference.md) - Layout fields, props, and helpers
498
532
  - [MCP Integration](../../docs/mcp-integration.md) - IDE setup
499
533
 
500
534
  ## Contributing
@@ -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":"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"}
@@ -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;