agentic-qe 2.6.0 → 2.6.2
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/CHANGELOG.md +156 -0
- package/README.md +222 -159
- package/dist/agents/BaseAgent.d.ts +19 -0
- package/dist/agents/BaseAgent.d.ts.map +1 -1
- package/dist/agents/BaseAgent.js +41 -1
- package/dist/agents/BaseAgent.js.map +1 -1
- package/dist/agents/CodeIntelligenceAgent.d.ts +14 -0
- package/dist/agents/CodeIntelligenceAgent.d.ts.map +1 -1
- package/dist/agents/CodeIntelligenceAgent.js +66 -0
- package/dist/agents/CodeIntelligenceAgent.js.map +1 -1
- package/dist/agents/CoverageAnalyzerAgent.d.ts +8 -0
- package/dist/agents/CoverageAnalyzerAgent.d.ts.map +1 -1
- package/dist/agents/CoverageAnalyzerAgent.js +65 -1
- package/dist/agents/CoverageAnalyzerAgent.js.map +1 -1
- package/dist/agents/TestGeneratorAgent.d.ts +2 -2
- package/dist/agents/TestGeneratorAgent.d.ts.map +1 -1
- package/dist/agents/TestGeneratorAgent.js +16 -6
- package/dist/agents/TestGeneratorAgent.js.map +1 -1
- package/dist/agents/adapters/AgentLLMAdapter.d.ts +127 -0
- package/dist/agents/adapters/AgentLLMAdapter.d.ts.map +1 -0
- package/dist/agents/adapters/AgentLLMAdapter.js +366 -0
- package/dist/agents/adapters/AgentLLMAdapter.js.map +1 -0
- package/dist/agents/adapters/index.d.ts +1 -0
- package/dist/agents/adapters/index.d.ts.map +1 -1
- package/dist/agents/adapters/index.js +5 -1
- package/dist/agents/adapters/index.js.map +1 -1
- package/dist/agents/interfaces/IAgentLLM.d.ts +257 -0
- package/dist/agents/interfaces/IAgentLLM.d.ts.map +1 -0
- package/dist/agents/interfaces/IAgentLLM.js +39 -0
- package/dist/agents/interfaces/IAgentLLM.js.map +1 -0
- package/dist/agents/interfaces/index.d.ts +10 -0
- package/dist/agents/interfaces/index.d.ts.map +1 -0
- package/dist/agents/interfaces/index.js +14 -0
- package/dist/agents/interfaces/index.js.map +1 -0
- package/dist/agents/n8n/N8nBaseAgent.d.ts +18 -0
- package/dist/agents/n8n/N8nBaseAgent.d.ts.map +1 -1
- package/dist/agents/n8n/N8nBaseAgent.js +80 -0
- package/dist/agents/n8n/N8nBaseAgent.js.map +1 -1
- package/dist/agents/pool/AgentPool.d.ts +112 -0
- package/dist/agents/pool/AgentPool.d.ts.map +1 -0
- package/dist/agents/pool/AgentPool.js +573 -0
- package/dist/agents/pool/AgentPool.js.map +1 -0
- package/dist/agents/pool/QEAgentPoolFactory.d.ts +118 -0
- package/dist/agents/pool/QEAgentPoolFactory.d.ts.map +1 -0
- package/dist/agents/pool/QEAgentPoolFactory.js +251 -0
- package/dist/agents/pool/QEAgentPoolFactory.js.map +1 -0
- package/dist/agents/pool/index.d.ts +34 -0
- package/dist/agents/pool/index.d.ts.map +1 -0
- package/dist/agents/pool/index.js +44 -0
- package/dist/agents/pool/index.js.map +1 -0
- package/dist/agents/pool/types.d.ts +227 -0
- package/dist/agents/pool/types.d.ts.map +1 -0
- package/dist/agents/pool/types.js +28 -0
- package/dist/agents/pool/types.js.map +1 -0
- package/dist/cli/commands/providers.d.ts +50 -0
- package/dist/cli/commands/providers.d.ts.map +1 -0
- package/dist/cli/commands/providers.js +403 -0
- package/dist/cli/commands/providers.js.map +1 -0
- package/dist/cli/index.js +62 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/code-intelligence/indexing/FileWatcher.d.ts.map +1 -1
- package/dist/code-intelligence/indexing/FileWatcher.js +11 -8
- package/dist/code-intelligence/indexing/FileWatcher.js.map +1 -1
- package/dist/config/ConfigLoader.d.ts +85 -0
- package/dist/config/ConfigLoader.d.ts.map +1 -0
- package/dist/config/ConfigLoader.js +420 -0
- package/dist/config/ConfigLoader.js.map +1 -0
- package/dist/config/ProviderConfig.d.ts +153 -0
- package/dist/config/ProviderConfig.d.ts.map +1 -0
- package/dist/config/ProviderConfig.js +155 -0
- package/dist/config/ProviderConfig.js.map +1 -0
- package/dist/config/index.d.ts +35 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +45 -0
- package/dist/config/index.js.map +1 -0
- package/dist/core/memory/HNSWVectorMemory.js +1 -1
- package/dist/mcp/handlers/agent-spawn.d.ts +71 -5
- package/dist/mcp/handlers/agent-spawn.d.ts.map +1 -1
- package/dist/mcp/handlers/agent-spawn.js +336 -110
- package/dist/mcp/handlers/agent-spawn.js.map +1 -1
- package/dist/mcp/handlers/fleet-init.d.ts +24 -0
- package/dist/mcp/handlers/fleet-init.d.ts.map +1 -1
- package/dist/mcp/handlers/fleet-init.js +56 -4
- package/dist/mcp/handlers/fleet-init.js.map +1 -1
- package/dist/mcp/server-instructions.d.ts +1 -1
- package/dist/mcp/server-instructions.js +1 -1
- package/dist/mcp/server.d.ts +1 -0
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/memory/HNSWPatternStore.d.ts.map +1 -1
- package/dist/memory/HNSWPatternStore.js +23 -0
- package/dist/memory/HNSWPatternStore.js.map +1 -1
- package/dist/memory/RuVectorPatternStore.d.ts +5 -0
- package/dist/memory/RuVectorPatternStore.d.ts.map +1 -1
- package/dist/memory/RuVectorPatternStore.js +11 -0
- package/dist/memory/RuVectorPatternStore.js.map +1 -1
- package/dist/plugins/BasePlugin.d.ts +111 -0
- package/dist/plugins/BasePlugin.d.ts.map +1 -0
- package/dist/plugins/BasePlugin.js +154 -0
- package/dist/plugins/BasePlugin.js.map +1 -0
- package/dist/plugins/PluginManager.d.ts +145 -0
- package/dist/plugins/PluginManager.d.ts.map +1 -0
- package/dist/plugins/PluginManager.js +862 -0
- package/dist/plugins/PluginManager.js.map +1 -0
- package/dist/plugins/adapters/McpToolsPlugin.d.ts +98 -0
- package/dist/plugins/adapters/McpToolsPlugin.d.ts.map +1 -0
- package/dist/plugins/adapters/McpToolsPlugin.js +518 -0
- package/dist/plugins/adapters/McpToolsPlugin.js.map +1 -0
- package/dist/plugins/adapters/PlaywrightPlugin.d.ts +63 -0
- package/dist/plugins/adapters/PlaywrightPlugin.d.ts.map +1 -0
- package/dist/plugins/adapters/PlaywrightPlugin.js +451 -0
- package/dist/plugins/adapters/PlaywrightPlugin.js.map +1 -0
- package/dist/plugins/adapters/VitestPlugin.d.ts +74 -0
- package/dist/plugins/adapters/VitestPlugin.d.ts.map +1 -0
- package/dist/plugins/adapters/VitestPlugin.js +589 -0
- package/dist/plugins/adapters/VitestPlugin.js.map +1 -0
- package/dist/plugins/adapters/index.d.ts +8 -0
- package/dist/plugins/adapters/index.d.ts.map +1 -0
- package/dist/plugins/adapters/index.js +17 -0
- package/dist/plugins/adapters/index.js.map +1 -0
- package/dist/plugins/index.d.ts +32 -0
- package/dist/plugins/index.d.ts.map +1 -0
- package/dist/plugins/index.js +48 -0
- package/dist/plugins/index.js.map +1 -0
- package/dist/plugins/types.d.ts +528 -0
- package/dist/plugins/types.d.ts.map +1 -0
- package/dist/plugins/types.js +61 -0
- package/dist/plugins/types.js.map +1 -0
- package/dist/providers/CostOptimizationStrategies.d.ts +297 -0
- package/dist/providers/CostOptimizationStrategies.d.ts.map +1 -0
- package/dist/providers/CostOptimizationStrategies.js +831 -0
- package/dist/providers/CostOptimizationStrategies.js.map +1 -0
- package/dist/providers/HybridRouter.d.ts +142 -5
- package/dist/providers/HybridRouter.d.ts.map +1 -1
- package/dist/providers/HybridRouter.js +472 -6
- package/dist/providers/HybridRouter.js.map +1 -1
- package/dist/providers/HybridRouterComplexityIntegration.d.ts +169 -0
- package/dist/providers/HybridRouterComplexityIntegration.d.ts.map +1 -0
- package/dist/providers/HybridRouterComplexityIntegration.js +319 -0
- package/dist/providers/HybridRouterComplexityIntegration.js.map +1 -0
- package/dist/providers/HybridRouterModelSelection.d.ts +106 -0
- package/dist/providers/HybridRouterModelSelection.d.ts.map +1 -0
- package/dist/providers/HybridRouterModelSelection.js +420 -0
- package/dist/providers/HybridRouterModelSelection.js.map +1 -0
- package/dist/providers/LLMProviderFactory.d.ts +23 -9
- package/dist/providers/LLMProviderFactory.d.ts.map +1 -1
- package/dist/providers/LLMProviderFactory.js +54 -11
- package/dist/providers/LLMProviderFactory.js.map +1 -1
- package/dist/providers/OllamaProvider.d.ts +122 -0
- package/dist/providers/OllamaProvider.d.ts.map +1 -0
- package/dist/providers/OllamaProvider.js +425 -0
- package/dist/providers/OllamaProvider.js.map +1 -0
- package/dist/providers/index.d.ts +6 -1
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js +17 -1
- package/dist/providers/index.js.map +1 -1
- package/dist/routing/ComplexityClassifier.d.ts +266 -0
- package/dist/routing/ComplexityClassifier.d.ts.map +1 -0
- package/dist/routing/ComplexityClassifier.js +567 -0
- package/dist/routing/ComplexityClassifier.js.map +1 -0
- package/dist/routing/ModelCapabilityRegistry.d.ts +98 -0
- package/dist/routing/ModelCapabilityRegistry.d.ts.map +1 -0
- package/dist/routing/ModelCapabilityRegistry.js +216 -0
- package/dist/routing/ModelCapabilityRegistry.js.map +1 -0
- package/dist/routing/index.d.ts +13 -0
- package/dist/routing/index.d.ts.map +1 -0
- package/dist/routing/index.js +24 -0
- package/dist/routing/index.js.map +1 -0
- package/docs/reference/model-capability-registry.md +402 -0
- package/docs/reference/provider-config-schema.md +608 -0
- package/package.json +21 -3
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Multi-Provider Configuration System
|
|
4
|
+
*
|
|
5
|
+
* Defines configuration types for managing multiple LLM providers
|
|
6
|
+
* with support for YAML-based configuration, environment variables,
|
|
7
|
+
* rate limiting, cost tracking, and fallback chains.
|
|
8
|
+
*
|
|
9
|
+
* @module config/ProviderConfig
|
|
10
|
+
* @version 1.0.0
|
|
11
|
+
*/
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.DEFAULT_MODE_CONFIGS = exports.DEFAULT_PROVIDER_CONFIGS = void 0;
|
|
14
|
+
/**
|
|
15
|
+
* Default provider configurations for common providers
|
|
16
|
+
*/
|
|
17
|
+
exports.DEFAULT_PROVIDER_CONFIGS = {
|
|
18
|
+
ollama: {
|
|
19
|
+
type: 'ollama',
|
|
20
|
+
baseUrl: 'http://localhost:11434',
|
|
21
|
+
defaultModel: 'llama3.2:3b',
|
|
22
|
+
supportsStreaming: true,
|
|
23
|
+
supportsCaching: false,
|
|
24
|
+
supportsEmbeddings: true,
|
|
25
|
+
supportsVision: false,
|
|
26
|
+
costPer1MTokens: { input: 0, output: 0 }, // Free local inference
|
|
27
|
+
},
|
|
28
|
+
groq: {
|
|
29
|
+
type: 'groq',
|
|
30
|
+
baseUrl: 'https://api.groq.com/openai/v1',
|
|
31
|
+
defaultModel: 'llama-3.3-70b-versatile',
|
|
32
|
+
supportsStreaming: true,
|
|
33
|
+
supportsCaching: false,
|
|
34
|
+
supportsEmbeddings: false,
|
|
35
|
+
supportsVision: false,
|
|
36
|
+
costPer1MTokens: { input: 0.59, output: 0.79 },
|
|
37
|
+
limits: {
|
|
38
|
+
requestsPerMinute: 30,
|
|
39
|
+
requestsPerDay: 14400,
|
|
40
|
+
tokensPerMinute: 20000,
|
|
41
|
+
tokensPerDay: 1000000,
|
|
42
|
+
},
|
|
43
|
+
},
|
|
44
|
+
openrouter: {
|
|
45
|
+
type: 'openrouter',
|
|
46
|
+
baseUrl: 'https://openrouter.ai/api/v1',
|
|
47
|
+
defaultModel: 'anthropic/claude-3.5-sonnet',
|
|
48
|
+
supportsStreaming: true,
|
|
49
|
+
supportsCaching: true,
|
|
50
|
+
supportsEmbeddings: false,
|
|
51
|
+
supportsVision: true,
|
|
52
|
+
costPer1MTokens: { input: 3.0, output: 15.0 },
|
|
53
|
+
},
|
|
54
|
+
claude: {
|
|
55
|
+
type: 'claude',
|
|
56
|
+
baseUrl: 'https://api.anthropic.com/v1',
|
|
57
|
+
defaultModel: 'claude-sonnet-4-20250514',
|
|
58
|
+
supportsStreaming: true,
|
|
59
|
+
supportsCaching: true,
|
|
60
|
+
supportsEmbeddings: false,
|
|
61
|
+
supportsVision: true,
|
|
62
|
+
costPer1MTokens: {
|
|
63
|
+
input: 3.0,
|
|
64
|
+
output: 15.0,
|
|
65
|
+
cacheReadMultiplier: 0.1,
|
|
66
|
+
cacheWriteMultiplier: 1.25,
|
|
67
|
+
},
|
|
68
|
+
},
|
|
69
|
+
ruvllm: {
|
|
70
|
+
type: 'ruvllm',
|
|
71
|
+
baseUrl: 'http://localhost:8080',
|
|
72
|
+
defaultModel: 'ruvllm-default',
|
|
73
|
+
supportsStreaming: true,
|
|
74
|
+
supportsCaching: true,
|
|
75
|
+
supportsEmbeddings: true,
|
|
76
|
+
supportsVision: false,
|
|
77
|
+
costPer1MTokens: { input: 0, output: 0 }, // Free local inference
|
|
78
|
+
},
|
|
79
|
+
google: {
|
|
80
|
+
type: 'google',
|
|
81
|
+
baseUrl: 'https://generativelanguage.googleapis.com/v1',
|
|
82
|
+
defaultModel: 'gemini-2.0-flash-exp',
|
|
83
|
+
supportsStreaming: true,
|
|
84
|
+
supportsCaching: false,
|
|
85
|
+
supportsEmbeddings: true,
|
|
86
|
+
supportsVision: true,
|
|
87
|
+
costPer1MTokens: { input: 0, output: 0 }, // Free tier available
|
|
88
|
+
},
|
|
89
|
+
together: {
|
|
90
|
+
type: 'together',
|
|
91
|
+
baseUrl: 'https://api.together.xyz/v1',
|
|
92
|
+
defaultModel: 'meta-llama/Meta-Llama-3.1-70B-Instruct-Turbo',
|
|
93
|
+
supportsStreaming: true,
|
|
94
|
+
supportsCaching: false,
|
|
95
|
+
supportsEmbeddings: false,
|
|
96
|
+
supportsVision: false,
|
|
97
|
+
costPer1MTokens: { input: 0.88, output: 0.88 },
|
|
98
|
+
},
|
|
99
|
+
github: {
|
|
100
|
+
type: 'github',
|
|
101
|
+
baseUrl: 'https://models.inference.ai.azure.com',
|
|
102
|
+
defaultModel: 'gpt-4o',
|
|
103
|
+
supportsStreaming: true,
|
|
104
|
+
supportsCaching: false,
|
|
105
|
+
supportsEmbeddings: false,
|
|
106
|
+
supportsVision: true,
|
|
107
|
+
costPer1MTokens: { input: 0, output: 0 }, // Free for GitHub users
|
|
108
|
+
},
|
|
109
|
+
};
|
|
110
|
+
/**
|
|
111
|
+
* Default multi-provider configurations for common deployment modes
|
|
112
|
+
*/
|
|
113
|
+
exports.DEFAULT_MODE_CONFIGS = {
|
|
114
|
+
local_first: {
|
|
115
|
+
mode: 'local_first',
|
|
116
|
+
enableHealthChecks: true,
|
|
117
|
+
healthCheckInterval: 60000,
|
|
118
|
+
maxConsecutiveFailures: 3,
|
|
119
|
+
enableRetries: true,
|
|
120
|
+
maxRetries: 2,
|
|
121
|
+
enableCostTracking: true,
|
|
122
|
+
},
|
|
123
|
+
hosted: {
|
|
124
|
+
mode: 'hosted',
|
|
125
|
+
enableHealthChecks: true,
|
|
126
|
+
healthCheckInterval: 300000, // 5 minutes
|
|
127
|
+
maxConsecutiveFailures: 5,
|
|
128
|
+
enableRetries: true,
|
|
129
|
+
maxRetries: 3,
|
|
130
|
+
enableCostTracking: true,
|
|
131
|
+
enableCaching: true,
|
|
132
|
+
cacheTTL: 3600,
|
|
133
|
+
},
|
|
134
|
+
free_only: {
|
|
135
|
+
mode: 'free_only',
|
|
136
|
+
enableHealthChecks: true,
|
|
137
|
+
healthCheckInterval: 60000,
|
|
138
|
+
maxConsecutiveFailures: 2,
|
|
139
|
+
enableRetries: true,
|
|
140
|
+
maxRetries: 3,
|
|
141
|
+
enableCostTracking: false, // No cost tracking needed for free tier
|
|
142
|
+
},
|
|
143
|
+
hybrid: {
|
|
144
|
+
mode: 'hybrid',
|
|
145
|
+
enableHealthChecks: true,
|
|
146
|
+
healthCheckInterval: 120000, // 2 minutes
|
|
147
|
+
maxConsecutiveFailures: 3,
|
|
148
|
+
enableRetries: true,
|
|
149
|
+
maxRetries: 3,
|
|
150
|
+
enableCostTracking: true,
|
|
151
|
+
enableCaching: true,
|
|
152
|
+
cacheTTL: 1800,
|
|
153
|
+
},
|
|
154
|
+
};
|
|
155
|
+
//# sourceMappingURL=ProviderConfig.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProviderConfig.js","sourceRoot":"","sources":["../../src/config/ProviderConfig.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration Module - Multi-Provider LLM Configuration System
|
|
3
|
+
*
|
|
4
|
+
* Exports all configuration types, loaders, and utilities for managing
|
|
5
|
+
* multiple LLM providers with YAML-based configuration and environment
|
|
6
|
+
* variable support.
|
|
7
|
+
*
|
|
8
|
+
* @module config
|
|
9
|
+
* @version 1.0.0
|
|
10
|
+
*/
|
|
11
|
+
export { TaskType, ProviderType, DeploymentMode, RateLimitConfig, CostConfig, ProviderConfig, CostBudgetConfig, MultiProviderConfig, ConfigValidationResult, DEFAULT_PROVIDER_CONFIGS, DEFAULT_MODE_CONFIGS, } from './ProviderConfig';
|
|
12
|
+
export { ConfigLoadOptions, ConfigLoader, loadConfig, validateConfig, } from './ConfigLoader';
|
|
13
|
+
/**
|
|
14
|
+
* Example usage:
|
|
15
|
+
*
|
|
16
|
+
* ```typescript
|
|
17
|
+
* import { loadConfig, MultiProviderConfig } from './config';
|
|
18
|
+
*
|
|
19
|
+
* // Load from default location (.aqe/providers.yaml)
|
|
20
|
+
* const config = await loadConfig();
|
|
21
|
+
*
|
|
22
|
+
* // Load from specific file
|
|
23
|
+
* const config = await loadConfig({
|
|
24
|
+
* configPath: './my-config.yaml',
|
|
25
|
+
* loadFromEnv: true,
|
|
26
|
+
* mergeDefaults: true,
|
|
27
|
+
* validate: true,
|
|
28
|
+
* });
|
|
29
|
+
*
|
|
30
|
+
* // Access configuration
|
|
31
|
+
* console.log('Mode:', config.mode);
|
|
32
|
+
* console.log('Providers:', config.providers.map(p => p.type));
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
35
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,eAAe,EACf,UAAU,EACV,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,sBAAsB,EACtB,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,UAAU,EACV,cAAc,GACf,MAAM,gBAAgB,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;GAqBG"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Configuration Module - Multi-Provider LLM Configuration System
|
|
4
|
+
*
|
|
5
|
+
* Exports all configuration types, loaders, and utilities for managing
|
|
6
|
+
* multiple LLM providers with YAML-based configuration and environment
|
|
7
|
+
* variable support.
|
|
8
|
+
*
|
|
9
|
+
* @module config
|
|
10
|
+
* @version 1.0.0
|
|
11
|
+
*/
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.validateConfig = exports.loadConfig = exports.ConfigLoader = exports.DEFAULT_MODE_CONFIGS = exports.DEFAULT_PROVIDER_CONFIGS = void 0;
|
|
14
|
+
// Core configuration types
|
|
15
|
+
var ProviderConfig_1 = require("./ProviderConfig");
|
|
16
|
+
Object.defineProperty(exports, "DEFAULT_PROVIDER_CONFIGS", { enumerable: true, get: function () { return ProviderConfig_1.DEFAULT_PROVIDER_CONFIGS; } });
|
|
17
|
+
Object.defineProperty(exports, "DEFAULT_MODE_CONFIGS", { enumerable: true, get: function () { return ProviderConfig_1.DEFAULT_MODE_CONFIGS; } });
|
|
18
|
+
// Configuration loader
|
|
19
|
+
var ConfigLoader_1 = require("./ConfigLoader");
|
|
20
|
+
Object.defineProperty(exports, "ConfigLoader", { enumerable: true, get: function () { return ConfigLoader_1.ConfigLoader; } });
|
|
21
|
+
Object.defineProperty(exports, "loadConfig", { enumerable: true, get: function () { return ConfigLoader_1.loadConfig; } });
|
|
22
|
+
Object.defineProperty(exports, "validateConfig", { enumerable: true, get: function () { return ConfigLoader_1.validateConfig; } });
|
|
23
|
+
/**
|
|
24
|
+
* Example usage:
|
|
25
|
+
*
|
|
26
|
+
* ```typescript
|
|
27
|
+
* import { loadConfig, MultiProviderConfig } from './config';
|
|
28
|
+
*
|
|
29
|
+
* // Load from default location (.aqe/providers.yaml)
|
|
30
|
+
* const config = await loadConfig();
|
|
31
|
+
*
|
|
32
|
+
* // Load from specific file
|
|
33
|
+
* const config = await loadConfig({
|
|
34
|
+
* configPath: './my-config.yaml',
|
|
35
|
+
* loadFromEnv: true,
|
|
36
|
+
* mergeDefaults: true,
|
|
37
|
+
* validate: true,
|
|
38
|
+
* });
|
|
39
|
+
*
|
|
40
|
+
* // Access configuration
|
|
41
|
+
* console.log('Mode:', config.mode);
|
|
42
|
+
* console.log('Providers:', config.providers.map(p => p.type));
|
|
43
|
+
* ```
|
|
44
|
+
*/
|
|
45
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAEH,2BAA2B;AAC3B,mDAY0B;AAFxB,0HAAA,wBAAwB,OAAA;AACxB,sHAAA,oBAAoB,OAAA;AAGtB,uBAAuB;AACvB,+CAKwB;AAHtB,4GAAA,YAAY,OAAA;AACZ,0GAAA,UAAU,OAAA;AACV,8GAAA,cAAc,OAAA;AAGhB;;;;;;;;;;;;;;;;;;;;;GAqBG"}
|
|
@@ -4,16 +4,22 @@
|
|
|
4
4
|
* Handles spawning specialized QE agents with specific capabilities.
|
|
5
5
|
* Coordinates with Claude Flow for agent lifecycle management.
|
|
6
6
|
*
|
|
7
|
-
*
|
|
7
|
+
* Phase 3 D1: Integrated with AgentPool for 16x spawn speedup
|
|
8
|
+
*
|
|
9
|
+
* @version 2.0.0
|
|
8
10
|
* @author Agentic QE Team
|
|
9
11
|
*/
|
|
10
12
|
import { BaseHandler, HandlerResponse } from './base-handler.js';
|
|
11
13
|
import { AgentSpec } from '../tools.js';
|
|
12
14
|
import { AgentRegistry } from '../services/AgentRegistry.js';
|
|
13
15
|
import { HookExecutor } from '../services/HookExecutor.js';
|
|
16
|
+
import { PoolStats } from '../../agents/pool/index.js';
|
|
17
|
+
import { QEAgentType } from '../../types/index.js';
|
|
14
18
|
export interface AgentSpawnArgs {
|
|
15
19
|
spec: AgentSpec;
|
|
16
20
|
fleetId?: string;
|
|
21
|
+
/** Use pooled agent if available (default: true) */
|
|
22
|
+
usePool?: boolean;
|
|
17
23
|
}
|
|
18
24
|
export interface AgentInstance {
|
|
19
25
|
id: string;
|
|
@@ -34,20 +40,76 @@ export interface AgentInstance {
|
|
|
34
40
|
averageExecutionTime: number;
|
|
35
41
|
successRate: number;
|
|
36
42
|
};
|
|
43
|
+
/** Pool metadata if spawned from pool */
|
|
44
|
+
poolMeta?: {
|
|
45
|
+
poolId: string;
|
|
46
|
+
fromPool: boolean;
|
|
47
|
+
acquisitionTimeMs: number;
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Pool configuration for spawn handler
|
|
52
|
+
*/
|
|
53
|
+
export interface SpawnPoolConfig {
|
|
54
|
+
/** Enable pool-based spawning (default: true) */
|
|
55
|
+
enabled: boolean;
|
|
56
|
+
/** Pre-warm pool on handler creation */
|
|
57
|
+
warmupOnInit: boolean;
|
|
58
|
+
/** Agent types to pre-warm */
|
|
59
|
+
warmupTypes: QEAgentType[];
|
|
60
|
+
/** Enable debug logging */
|
|
61
|
+
debug: boolean;
|
|
37
62
|
}
|
|
38
63
|
export declare class AgentSpawnHandler extends BaseHandler {
|
|
39
64
|
private activeAgents;
|
|
40
65
|
private agentTypeConfigs;
|
|
41
66
|
private registry;
|
|
42
67
|
private hookExecutor;
|
|
43
|
-
|
|
68
|
+
private pool;
|
|
69
|
+
private poolConfig;
|
|
70
|
+
private poolInitPromise;
|
|
71
|
+
private pooledAgentMap;
|
|
72
|
+
private spawnMetrics;
|
|
73
|
+
constructor(registry: AgentRegistry, hookExecutor: HookExecutor, poolConfig?: Partial<SpawnPoolConfig>);
|
|
74
|
+
/**
|
|
75
|
+
* Initialize the agent pool
|
|
76
|
+
*/
|
|
77
|
+
private initializePool;
|
|
78
|
+
/**
|
|
79
|
+
* Warm up the pool with pre-allocated agents
|
|
80
|
+
* Called during fleet initialization for optimal performance
|
|
81
|
+
*/
|
|
82
|
+
warmupPool(types?: QEAgentType[]): Promise<void>;
|
|
83
|
+
/**
|
|
84
|
+
* Get pool statistics
|
|
85
|
+
*/
|
|
86
|
+
getPoolStats(): PoolStats | null;
|
|
87
|
+
/**
|
|
88
|
+
* Get spawn metrics for benchmarking
|
|
89
|
+
*/
|
|
90
|
+
getSpawnMetrics(): {
|
|
91
|
+
pooledSpawns: number;
|
|
92
|
+
directSpawns: number;
|
|
93
|
+
avgPooledTimeMs: number;
|
|
94
|
+
avgDirectTimeMs: number;
|
|
95
|
+
speedupFactor: number;
|
|
96
|
+
poolStats: PoolStats | null;
|
|
97
|
+
};
|
|
44
98
|
handle(args: AgentSpawnArgs): Promise<HandlerResponse>;
|
|
99
|
+
/**
|
|
100
|
+
* Spawn agent from pool (fast path)
|
|
101
|
+
*/
|
|
102
|
+
private spawnFromPool;
|
|
103
|
+
/**
|
|
104
|
+
* Spawn agent directly (legacy path)
|
|
105
|
+
*/
|
|
106
|
+
private spawnDirect;
|
|
107
|
+
private mergeCapabilities;
|
|
108
|
+
private mergeResources;
|
|
109
|
+
private getDefaultCapabilities;
|
|
45
110
|
private initializeAgentTypeConfigs;
|
|
46
111
|
private validateAgentSpec;
|
|
47
|
-
private spawnAgent;
|
|
48
|
-
private initializeAgent;
|
|
49
112
|
private registerWithFleet;
|
|
50
|
-
private getSetupTimeForType;
|
|
51
113
|
/**
|
|
52
114
|
* Get agent by ID
|
|
53
115
|
*/
|
|
@@ -68,5 +130,9 @@ export declare class AgentSpawnHandler extends BaseHandler {
|
|
|
68
130
|
* Terminate an agent
|
|
69
131
|
*/
|
|
70
132
|
terminateAgent(agentId: string): Promise<boolean>;
|
|
133
|
+
/**
|
|
134
|
+
* Shutdown the handler and pool
|
|
135
|
+
*/
|
|
136
|
+
shutdown(): Promise<void>;
|
|
71
137
|
}
|
|
72
138
|
//# sourceMappingURL=agent-spawn.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-spawn.d.ts","sourceRoot":"","sources":["../../../src/mcp/handlers/agent-spawn.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"agent-spawn.d.ts","sourceRoot":"","sources":["../../../src/mcp/handlers/agent-spawn.ts"],"names":[],"mappings":"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"}
|