@sowonai/crewx-cli 0.4.0-dev.5 → 0.4.0-dev.50
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/README.md +40 -6
- package/dist/ai-provider.service.d.ts +7 -12
- package/dist/ai-provider.service.js +42 -20
- package/dist/ai-provider.service.js.map +1 -1
- package/dist/ai.service.d.ts +5 -45
- package/dist/ai.service.js +10 -587
- package/dist/ai.service.js.map +1 -1
- package/dist/app.module.js +67 -9
- package/dist/app.module.js.map +1 -1
- package/dist/cli/chat.handler.d.ts +2 -1
- package/dist/cli/chat.handler.js +26 -11
- package/dist/cli/chat.handler.js.map +1 -1
- package/dist/cli/doctor.handler.js +8 -40
- package/dist/cli/doctor.handler.js.map +1 -1
- package/dist/cli/execute.handler.js +8 -6
- package/dist/cli/execute.handler.js.map +1 -1
- package/dist/cli/mcp.handler.js.map +1 -1
- package/dist/cli/query.handler.js +4 -2
- package/dist/cli/query.handler.js.map +1 -1
- package/dist/cli-options.d.ts +2 -0
- package/dist/cli-options.js +10 -0
- package/dist/cli-options.js.map +1 -1
- package/dist/crewx.tool.d.ts +18 -2
- package/dist/crewx.tool.js +542 -105
- package/dist/crewx.tool.js.map +1 -1
- package/dist/providers/dynamic-provider.factory.d.ts +9 -51
- package/dist/providers/dynamic-provider.factory.js +44 -506
- package/dist/providers/dynamic-provider.factory.js.map +1 -1
- package/dist/providers/logger.adapter.d.ts +4 -0
- package/dist/providers/logger.adapter.js +56 -0
- package/dist/providers/logger.adapter.js.map +1 -0
- package/dist/services/agent-loader.service.d.ts +6 -2
- package/dist/services/agent-loader.service.js +210 -26
- package/dist/services/agent-loader.service.js.map +1 -1
- package/dist/services/config.service.d.ts +7 -27
- package/dist/services/config.service.js +80 -38
- package/dist/services/config.service.js.map +1 -1
- package/dist/services/document-loader.service.d.ts +9 -4
- package/dist/services/document-loader.service.js +21 -7
- package/dist/services/document-loader.service.js.map +1 -1
- package/dist/services/parallel-processing.service.d.ts +17 -17
- package/dist/services/parallel-processing.service.js +261 -196
- package/dist/services/parallel-processing.service.js.map +1 -1
- package/dist/services/provider-bridge.service.d.ts +35 -0
- package/dist/services/provider-bridge.service.js +224 -0
- package/dist/services/provider-bridge.service.js.map +1 -0
- package/dist/services/remote-agent.service.d.ts +4 -7
- package/dist/services/remote-agent.service.js +41 -95
- package/dist/services/remote-agent.service.js.map +1 -1
- package/dist/services/task-management.service.d.ts +3 -3
- package/dist/services/task-management.service.js.map +1 -1
- package/dist/services/template.service.d.ts +2 -0
- package/dist/services/template.service.js +46 -1
- package/dist/services/template.service.js.map +1 -1
- package/dist/services/tool-call.service.d.ts +2 -36
- package/dist/services/tool-call.service.js.map +1 -1
- package/dist/slack/formatters/message.formatter.d.ts +5 -2
- package/dist/slack/formatters/message.formatter.js +55 -2
- package/dist/slack/formatters/message.formatter.js.map +1 -1
- package/dist/slack/slack-bot.js +1 -2
- package/dist/slack/slack-bot.js.map +1 -1
- package/dist/utils/stdin-utils.d.ts +4 -25
- package/dist/utils/stdin-utils.js +2 -23
- package/dist/utils/stdin-utils.js.map +1 -1
- package/dist/utils/template-processor.d.ts +2 -29
- package/dist/utils/template-processor.js +5 -2
- package/dist/utils/template-processor.js.map +1 -1
- package/dist/utils/terminal-message-formatter.d.ts +23 -0
- package/dist/utils/terminal-message-formatter.js +136 -0
- package/dist/utils/terminal-message-formatter.js.map +1 -0
- package/package.json +30 -32
- package/scripts/postbuild-cli.mjs +20 -1
- package/templates/agents/default.yaml +468 -0
- package/templates/agents/minimal.yaml +16 -0
- package/templates/documents/crewx-manual.md +387 -0
- package/templates/versions.json +19 -0
- package/dist/providers/base-ai.provider.d.ts +0 -50
- package/dist/providers/base-ai.provider.js +0 -624
- package/dist/providers/base-ai.provider.js.map +0 -1
- package/dist/providers/claude.provider.d.ts +0 -25
- package/dist/providers/claude.provider.js +0 -362
- package/dist/providers/claude.provider.js.map +0 -1
- package/dist/providers/codex.provider.d.ts +0 -17
- package/dist/providers/codex.provider.js +0 -99
- package/dist/providers/codex.provider.js.map +0 -1
- package/dist/providers/copilot.provider.d.ts +0 -25
- package/dist/providers/copilot.provider.js +0 -266
- package/dist/providers/copilot.provider.js.map +0 -1
- package/dist/providers/gemini.provider.d.ts +0 -22
- package/dist/providers/gemini.provider.js +0 -147
- package/dist/providers/gemini.provider.js.map +0 -1
- package/dist/utils/mention-parser.d.ts +0 -18
- package/dist/utils/mention-parser.js +0 -136
- 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/ #
|
|
326
|
-
│ │ ├──
|
|
327
|
-
│ │
|
|
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
|
-
│ │ ├──
|
|
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
|
|
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
|
-
|
|
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():
|
|
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(
|
|
24
|
-
this.
|
|
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.
|
|
36
|
-
|
|
37
|
-
|
|
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 (!
|
|
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();
|
|
@@ -100,7 +125,7 @@ let AIProviderService = AIProviderService_1 = class AIProviderService {
|
|
|
100
125
|
await Promise.all(checks);
|
|
101
126
|
this.logger.log(`Available providers: ${this.availableProviders.join(', ')}`);
|
|
102
127
|
}
|
|
103
|
-
async queryAI(prompt, providerName =
|
|
128
|
+
async queryAI(prompt, providerName = crewx_sdk_1.BuiltInProviders.CLAUDE, options = {}) {
|
|
104
129
|
const provider = this.providers.get(providerName);
|
|
105
130
|
if (!provider) {
|
|
106
131
|
throw new crewx_sdk_1.ProviderNotAvailableError(providerName);
|
|
@@ -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", [
|
|
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":";;;;;;;;;;;;;AAAA,2CAAkE;AAClE,
|
|
1
|
+
{"version":3,"file":"ai-provider.service.js","sourceRoot":"","sources":["../src/ai-provider.service.ts"],"names":[],"mappings":"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"}
|
package/dist/ai.service.d.ts
CHANGED
|
@@ -1,53 +1,13 @@
|
|
|
1
|
+
import { type AIResponse, type AIQueryOptions } from '@sowonai/crewx-sdk';
|
|
1
2
|
import { AIProviderService } from './ai-provider.service';
|
|
2
|
-
export
|
|
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
|
-
|
|
31
|
-
|
|
32
|
-
|
|
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;
|