claude-flow 2.0.0-alpha.66 → 2.0.0-alpha.67

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 (110) hide show
  1. package/.claude/cache/agent-pool.json +33 -0
  2. package/.claude/cache/memory-optimization.json +19 -0
  3. package/.claude/cache/neural-optimization.json +25 -0
  4. package/.claude/cache/optimized-hooks.json +19 -0
  5. package/.claude/cache/parallel-processing.json +26 -0
  6. package/.claude/optimized-settings.json +270 -0
  7. package/.claude/settings-enhanced.json +278 -0
  8. package/.claude/settings.json +105 -8
  9. package/CHANGELOG.md +18 -0
  10. package/bin/claude-flow +1 -1
  11. package/dist/cli/simple-commands/hive-mind.js +1 -1
  12. package/dist/cli/simple-commands/hive-mind.js.map +1 -1
  13. package/dist/cli/simple-commands/hooks.js +6 -4
  14. package/dist/cli/simple-commands/hooks.js.map +1 -1
  15. package/dist/providers/anthropic-provider.d.ts +27 -0
  16. package/dist/providers/anthropic-provider.d.ts.map +1 -0
  17. package/dist/providers/anthropic-provider.js +247 -0
  18. package/dist/providers/anthropic-provider.js.map +1 -0
  19. package/dist/providers/base-provider.d.ts +134 -0
  20. package/dist/providers/base-provider.d.ts.map +1 -0
  21. package/dist/providers/base-provider.js +407 -0
  22. package/dist/providers/base-provider.js.map +1 -0
  23. package/dist/providers/cohere-provider.d.ts +28 -0
  24. package/dist/providers/cohere-provider.d.ts.map +1 -0
  25. package/dist/providers/cohere-provider.js +407 -0
  26. package/dist/providers/cohere-provider.js.map +1 -0
  27. package/dist/providers/google-provider.d.ts +23 -0
  28. package/dist/providers/google-provider.d.ts.map +1 -0
  29. package/dist/providers/google-provider.js +362 -0
  30. package/dist/providers/google-provider.js.map +1 -0
  31. package/dist/providers/index.d.ts +14 -0
  32. package/dist/providers/index.d.ts.map +1 -0
  33. package/dist/providers/index.js +18 -0
  34. package/dist/providers/index.js.map +1 -0
  35. package/dist/providers/ollama-provider.d.ts +23 -0
  36. package/dist/providers/ollama-provider.d.ts.map +1 -0
  37. package/dist/providers/ollama-provider.js +374 -0
  38. package/dist/providers/ollama-provider.js.map +1 -0
  39. package/dist/providers/openai-provider.d.ts +23 -0
  40. package/dist/providers/openai-provider.d.ts.map +1 -0
  41. package/dist/providers/openai-provider.js +349 -0
  42. package/dist/providers/openai-provider.js.map +1 -0
  43. package/dist/providers/provider-manager.d.ts +139 -0
  44. package/dist/providers/provider-manager.d.ts.map +1 -0
  45. package/dist/providers/provider-manager.js +513 -0
  46. package/dist/providers/provider-manager.js.map +1 -0
  47. package/dist/providers/types.d.ts +356 -0
  48. package/dist/providers/types.d.ts.map +1 -0
  49. package/dist/providers/types.js +61 -0
  50. package/dist/providers/types.js.map +1 -0
  51. package/dist/providers/utils.d.ts +37 -0
  52. package/dist/providers/utils.d.ts.map +1 -0
  53. package/dist/providers/utils.js +322 -0
  54. package/dist/providers/utils.js.map +1 -0
  55. package/dist/services/agentic-flow-hooks/hook-manager.d.ts +70 -0
  56. package/dist/services/agentic-flow-hooks/hook-manager.d.ts.map +1 -0
  57. package/dist/services/agentic-flow-hooks/hook-manager.js +512 -0
  58. package/dist/services/agentic-flow-hooks/hook-manager.js.map +1 -0
  59. package/dist/services/agentic-flow-hooks/index.d.ts +36 -0
  60. package/dist/services/agentic-flow-hooks/index.d.ts.map +1 -0
  61. package/dist/services/agentic-flow-hooks/index.js +325 -0
  62. package/dist/services/agentic-flow-hooks/index.js.map +1 -0
  63. package/dist/services/agentic-flow-hooks/llm-hooks.d.ts +33 -0
  64. package/dist/services/agentic-flow-hooks/llm-hooks.d.ts.map +1 -0
  65. package/dist/services/agentic-flow-hooks/llm-hooks.js +415 -0
  66. package/dist/services/agentic-flow-hooks/llm-hooks.js.map +1 -0
  67. package/dist/services/agentic-flow-hooks/memory-hooks.d.ts +45 -0
  68. package/dist/services/agentic-flow-hooks/memory-hooks.d.ts.map +1 -0
  69. package/dist/services/agentic-flow-hooks/memory-hooks.js +532 -0
  70. package/dist/services/agentic-flow-hooks/memory-hooks.js.map +1 -0
  71. package/dist/services/agentic-flow-hooks/neural-hooks.d.ts +39 -0
  72. package/dist/services/agentic-flow-hooks/neural-hooks.d.ts.map +1 -0
  73. package/dist/services/agentic-flow-hooks/neural-hooks.js +561 -0
  74. package/dist/services/agentic-flow-hooks/neural-hooks.js.map +1 -0
  75. package/dist/services/agentic-flow-hooks/performance-hooks.d.ts +33 -0
  76. package/dist/services/agentic-flow-hooks/performance-hooks.d.ts.map +1 -0
  77. package/dist/services/agentic-flow-hooks/performance-hooks.js +621 -0
  78. package/dist/services/agentic-flow-hooks/performance-hooks.js.map +1 -0
  79. package/dist/services/agentic-flow-hooks/types.d.ts +379 -0
  80. package/dist/services/agentic-flow-hooks/types.d.ts.map +1 -0
  81. package/dist/services/agentic-flow-hooks/types.js +8 -0
  82. package/dist/services/agentic-flow-hooks/types.js.map +1 -0
  83. package/dist/services/agentic-flow-hooks/workflow-hooks.d.ts +39 -0
  84. package/dist/services/agentic-flow-hooks/workflow-hooks.d.ts.map +1 -0
  85. package/dist/services/agentic-flow-hooks/workflow-hooks.js +742 -0
  86. package/dist/services/agentic-flow-hooks/workflow-hooks.js.map +1 -0
  87. package/package.json +1 -1
  88. package/scripts/optimize-performance.js +400 -0
  89. package/scripts/performance-monitor.js +263 -0
  90. package/src/cli/help-text.js +1 -1
  91. package/src/cli/simple-cli.js +1 -1
  92. package/src/cli/simple-commands/hive-mind.js +1 -1
  93. package/src/providers/anthropic-provider.ts +282 -0
  94. package/src/providers/base-provider.ts +560 -0
  95. package/src/providers/cohere-provider.ts +521 -0
  96. package/src/providers/google-provider.ts +477 -0
  97. package/src/providers/index.ts +21 -0
  98. package/src/providers/ollama-provider.ts +489 -0
  99. package/src/providers/openai-provider.ts +476 -0
  100. package/src/providers/provider-manager.ts +654 -0
  101. package/src/providers/types.ts +531 -0
  102. package/src/providers/utils.ts +376 -0
  103. package/src/services/agentic-flow-hooks/hook-manager.ts +701 -0
  104. package/src/services/agentic-flow-hooks/index.ts +386 -0
  105. package/src/services/agentic-flow-hooks/llm-hooks.ts +557 -0
  106. package/src/services/agentic-flow-hooks/memory-hooks.ts +710 -0
  107. package/src/services/agentic-flow-hooks/neural-hooks.ts +758 -0
  108. package/src/services/agentic-flow-hooks/performance-hooks.ts +827 -0
  109. package/src/services/agentic-flow-hooks/types.ts +503 -0
  110. package/src/services/agentic-flow-hooks/workflow-hooks.ts +1026 -0
@@ -0,0 +1,407 @@
1
+ /**
2
+ * Abstract Base Provider for LLM integrations
3
+ * Provides common functionality for all LLM providers
4
+ */
5
+ import { EventEmitter } from 'events';
6
+ import { circuitBreaker } from '../utils/helpers.js';
7
+ import { LLMProviderError, RateLimitError, ProviderUnavailableError, } from './types.js';
8
+ export class BaseProvider extends EventEmitter {
9
+ logger;
10
+ circuitBreaker;
11
+ healthCheckInterval;
12
+ lastHealthCheck;
13
+ requestCount = 0;
14
+ errorCount = 0;
15
+ totalTokens = 0;
16
+ totalCost = 0;
17
+ requestMetrics = new Map();
18
+ config;
19
+ constructor(options) {
20
+ super();
21
+ this.logger = options.logger;
22
+ this.config = options.config;
23
+ // Initialize circuit breaker
24
+ this.circuitBreaker = circuitBreaker(`llm-${this.name}`, {
25
+ threshold: options.circuitBreakerOptions?.threshold || 5,
26
+ timeout: options.circuitBreakerOptions?.timeout || 60000,
27
+ resetTimeout: options.circuitBreakerOptions?.resetTimeout || 300000,
28
+ });
29
+ // Start health checks if enabled
30
+ if (this.config.enableCaching) {
31
+ this.startHealthChecks();
32
+ }
33
+ }
34
+ /**
35
+ * Initialize the provider
36
+ */
37
+ async initialize() {
38
+ this.logger.info(`Initializing ${this.name} provider`, {
39
+ model: this.config.model,
40
+ temperature: this.config.temperature,
41
+ maxTokens: this.config.maxTokens,
42
+ });
43
+ // Validate configuration
44
+ this.validateConfig();
45
+ // Provider-specific initialization
46
+ await this.doInitialize();
47
+ // Perform initial health check
48
+ await this.healthCheck();
49
+ }
50
+ /**
51
+ * Validate provider configuration
52
+ */
53
+ validateConfig() {
54
+ if (!this.config.model) {
55
+ throw new Error(`Model is required for ${this.name} provider`);
56
+ }
57
+ if (!this.validateModel(this.config.model)) {
58
+ throw new Error(`Model ${this.config.model} is not supported by ${this.name} provider`);
59
+ }
60
+ if (this.config.temperature !== undefined) {
61
+ if (this.config.temperature < 0 || this.config.temperature > 2) {
62
+ throw new Error('Temperature must be between 0 and 2');
63
+ }
64
+ }
65
+ if (this.config.maxTokens !== undefined) {
66
+ const maxAllowed = this.capabilities.maxOutputTokens[this.config.model] || 4096;
67
+ if (this.config.maxTokens > maxAllowed) {
68
+ throw new Error(`Max tokens exceeds limit of ${maxAllowed} for model ${this.config.model}`);
69
+ }
70
+ }
71
+ }
72
+ /**
73
+ * Complete a request
74
+ */
75
+ async complete(request) {
76
+ const startTime = Date.now();
77
+ try {
78
+ // Use circuit breaker
79
+ const response = await this.circuitBreaker.execute(async () => {
80
+ return await this.doComplete(request);
81
+ });
82
+ // Track metrics
83
+ const latency = Date.now() - startTime;
84
+ this.trackRequest(request, response, latency);
85
+ // Emit events
86
+ this.emit('response', {
87
+ provider: this.name,
88
+ model: response.model,
89
+ latency,
90
+ tokens: response.usage.totalTokens,
91
+ cost: response.cost?.totalCost,
92
+ });
93
+ return response;
94
+ }
95
+ catch (error) {
96
+ this.errorCount++;
97
+ // Transform to provider error
98
+ const providerError = this.transformError(error);
99
+ // Track error
100
+ this.emit('error', {
101
+ provider: this.name,
102
+ error: providerError,
103
+ request,
104
+ });
105
+ throw providerError;
106
+ }
107
+ }
108
+ /**
109
+ * Stream complete a request
110
+ */
111
+ async *streamComplete(request) {
112
+ const startTime = Date.now();
113
+ let totalTokens = 0;
114
+ let totalCost = 0;
115
+ try {
116
+ // Check if streaming is supported
117
+ if (!this.capabilities.supportsStreaming) {
118
+ throw new LLMProviderError('Streaming not supported', 'STREAMING_NOT_SUPPORTED', this.name, undefined, false);
119
+ }
120
+ // Use circuit breaker
121
+ const stream = await this.circuitBreaker.execute(async () => {
122
+ return this.doStreamComplete(request);
123
+ });
124
+ // Process stream
125
+ for await (const event of stream) {
126
+ if (event.usage) {
127
+ totalTokens = event.usage.totalTokens;
128
+ }
129
+ if (event.cost) {
130
+ totalCost = event.cost.totalCost;
131
+ }
132
+ yield event;
133
+ }
134
+ // Track metrics
135
+ const latency = Date.now() - startTime;
136
+ this.trackStreamRequest(request, totalTokens, totalCost, latency);
137
+ }
138
+ catch (error) {
139
+ this.errorCount++;
140
+ // Transform to provider error
141
+ const providerError = this.transformError(error);
142
+ // Yield error event
143
+ yield {
144
+ type: 'error',
145
+ error: providerError,
146
+ };
147
+ throw providerError;
148
+ }
149
+ }
150
+ /**
151
+ * Validate if a model is supported
152
+ */
153
+ validateModel(model) {
154
+ return this.capabilities.supportedModels.includes(model);
155
+ }
156
+ /**
157
+ * Perform health check
158
+ */
159
+ async healthCheck() {
160
+ const startTime = Date.now();
161
+ try {
162
+ // Provider-specific health check
163
+ const result = await this.doHealthCheck();
164
+ this.lastHealthCheck = {
165
+ ...result,
166
+ latency: Date.now() - startTime,
167
+ timestamp: new Date(),
168
+ };
169
+ this.emit('health_check', this.lastHealthCheck);
170
+ return this.lastHealthCheck;
171
+ }
172
+ catch (error) {
173
+ this.lastHealthCheck = {
174
+ healthy: false,
175
+ error: error instanceof Error ? error.message : 'Unknown error',
176
+ latency: Date.now() - startTime,
177
+ timestamp: new Date(),
178
+ };
179
+ this.emit('health_check', this.lastHealthCheck);
180
+ return this.lastHealthCheck;
181
+ }
182
+ }
183
+ /**
184
+ * Get provider status
185
+ */
186
+ getStatus() {
187
+ const queueLength = this.requestMetrics.size;
188
+ const errorRate = this.requestCount > 0 ? this.errorCount / this.requestCount : 0;
189
+ return {
190
+ available: this.lastHealthCheck?.healthy ?? false,
191
+ currentLoad: queueLength / 100, // Normalize to 0-1
192
+ queueLength,
193
+ activeRequests: queueLength,
194
+ rateLimitRemaining: this.getRateLimitRemaining(),
195
+ rateLimitReset: this.getRateLimitReset(),
196
+ };
197
+ }
198
+ /**
199
+ * Get remaining rate limit (override in provider)
200
+ */
201
+ getRateLimitRemaining() {
202
+ return undefined;
203
+ }
204
+ /**
205
+ * Get rate limit reset time (override in provider)
206
+ */
207
+ getRateLimitReset() {
208
+ return undefined;
209
+ }
210
+ /**
211
+ * Estimate cost for a request
212
+ */
213
+ async estimateCost(request) {
214
+ const model = request.model || this.config.model;
215
+ const pricing = this.capabilities.pricing?.[model];
216
+ if (!pricing) {
217
+ return {
218
+ estimatedPromptTokens: 0,
219
+ estimatedCompletionTokens: 0,
220
+ estimatedTotalTokens: 0,
221
+ estimatedCost: {
222
+ prompt: 0,
223
+ completion: 0,
224
+ total: 0,
225
+ currency: 'USD',
226
+ },
227
+ confidence: 0,
228
+ };
229
+ }
230
+ // Estimate tokens (simple approximation, providers should override)
231
+ const promptTokens = this.estimateTokens(JSON.stringify(request.messages));
232
+ const completionTokens = request.maxTokens || this.config.maxTokens || 1000;
233
+ const promptCost = (promptTokens / 1000) * pricing.promptCostPer1k;
234
+ const completionCost = (completionTokens / 1000) * pricing.completionCostPer1k;
235
+ return {
236
+ estimatedPromptTokens: promptTokens,
237
+ estimatedCompletionTokens: completionTokens,
238
+ estimatedTotalTokens: promptTokens + completionTokens,
239
+ estimatedCost: {
240
+ prompt: promptCost,
241
+ completion: completionCost,
242
+ total: promptCost + completionCost,
243
+ currency: pricing.currency,
244
+ },
245
+ confidence: 0.7, // 70% confidence in estimation
246
+ };
247
+ }
248
+ /**
249
+ * Simple token estimation (4 chars = 1 token approximation)
250
+ */
251
+ estimateTokens(text) {
252
+ return Math.ceil(text.length / 4);
253
+ }
254
+ /**
255
+ * Get usage statistics
256
+ */
257
+ async getUsage(period = 'day') {
258
+ const now = new Date();
259
+ const start = this.getStartDate(now, period);
260
+ // In a real implementation, this would query a database
261
+ // For now, return current session stats
262
+ return {
263
+ period: { start, end: now },
264
+ requests: this.requestCount,
265
+ tokens: {
266
+ prompt: Math.floor(this.totalTokens * 0.7), // Estimate
267
+ completion: Math.floor(this.totalTokens * 0.3),
268
+ total: this.totalTokens,
269
+ },
270
+ cost: {
271
+ prompt: this.totalCost * 0.7,
272
+ completion: this.totalCost * 0.3,
273
+ total: this.totalCost,
274
+ currency: 'USD',
275
+ },
276
+ errors: this.errorCount,
277
+ averageLatency: this.calculateAverageLatency(),
278
+ modelBreakdown: {}, // Would need to track per model
279
+ };
280
+ }
281
+ /**
282
+ * Get start date for period
283
+ */
284
+ getStartDate(end, period) {
285
+ const start = new Date(end);
286
+ switch (period) {
287
+ case 'hour':
288
+ start.setHours(start.getHours() - 1);
289
+ break;
290
+ case 'day':
291
+ start.setDate(start.getDate() - 1);
292
+ break;
293
+ case 'week':
294
+ start.setDate(start.getDate() - 7);
295
+ break;
296
+ case 'month':
297
+ start.setMonth(start.getMonth() - 1);
298
+ break;
299
+ case 'all':
300
+ start.setFullYear(2020); // Arbitrary old date
301
+ break;
302
+ }
303
+ return start;
304
+ }
305
+ /**
306
+ * Calculate average latency
307
+ */
308
+ calculateAverageLatency() {
309
+ if (this.requestMetrics.size === 0)
310
+ return 0;
311
+ let totalLatency = 0;
312
+ let count = 0;
313
+ this.requestMetrics.forEach((metrics) => {
314
+ if (metrics.latency) {
315
+ totalLatency += metrics.latency;
316
+ count++;
317
+ }
318
+ });
319
+ return count > 0 ? totalLatency / count : 0;
320
+ }
321
+ /**
322
+ * Track successful request
323
+ */
324
+ trackRequest(request, response, latency) {
325
+ this.requestCount++;
326
+ this.totalTokens += response.usage.totalTokens;
327
+ if (response.cost) {
328
+ this.totalCost += response.cost.totalCost;
329
+ }
330
+ // Store metrics (in memory for now)
331
+ const requestId = response.id;
332
+ this.requestMetrics.set(requestId, {
333
+ timestamp: new Date(),
334
+ model: response.model,
335
+ tokens: response.usage.totalTokens,
336
+ cost: response.cost?.totalCost,
337
+ latency,
338
+ });
339
+ // Clean up old metrics (keep last 1000)
340
+ if (this.requestMetrics.size > 1000) {
341
+ const oldestKey = this.requestMetrics.keys().next().value;
342
+ this.requestMetrics.delete(oldestKey);
343
+ }
344
+ }
345
+ /**
346
+ * Track streaming request
347
+ */
348
+ trackStreamRequest(request, totalTokens, totalCost, latency) {
349
+ this.requestCount++;
350
+ this.totalTokens += totalTokens;
351
+ this.totalCost += totalCost;
352
+ // Store metrics
353
+ const requestId = `stream-${Date.now()}`;
354
+ this.requestMetrics.set(requestId, {
355
+ timestamp: new Date(),
356
+ model: request.model || this.config.model,
357
+ tokens: totalTokens,
358
+ cost: totalCost,
359
+ latency,
360
+ stream: true,
361
+ });
362
+ }
363
+ /**
364
+ * Transform errors to provider errors
365
+ */
366
+ transformError(error) {
367
+ if (error instanceof LLMProviderError) {
368
+ return error;
369
+ }
370
+ if (error instanceof Error) {
371
+ // Check for common error patterns
372
+ if (error.message.includes('rate limit')) {
373
+ return new RateLimitError(error.message, this.name);
374
+ }
375
+ if (error.message.includes('timeout') || error.message.includes('ETIMEDOUT')) {
376
+ return new LLMProviderError('Request timed out', 'TIMEOUT', this.name, undefined, true);
377
+ }
378
+ if (error.message.includes('ECONNREFUSED') || error.message.includes('fetch failed')) {
379
+ return new ProviderUnavailableError(this.name, { originalError: error.message });
380
+ }
381
+ }
382
+ return new LLMProviderError(error instanceof Error ? error.message : String(error), 'UNKNOWN', this.name, undefined, true);
383
+ }
384
+ /**
385
+ * Start periodic health checks
386
+ */
387
+ startHealthChecks() {
388
+ const interval = this.config.cacheTimeout || 300000; // 5 minutes default
389
+ this.healthCheckInterval = setInterval(() => {
390
+ this.healthCheck().catch((error) => {
391
+ this.logger.error(`Health check failed for ${this.name}`, error);
392
+ });
393
+ }, interval);
394
+ }
395
+ /**
396
+ * Clean up resources
397
+ */
398
+ destroy() {
399
+ if (this.healthCheckInterval) {
400
+ clearInterval(this.healthCheckInterval);
401
+ }
402
+ this.requestMetrics.clear();
403
+ this.removeAllListeners();
404
+ this.logger.info(`${this.name} provider destroyed`);
405
+ }
406
+ }
407
+ //# sourceMappingURL=base-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-provider.js","sourceRoot":"","sources":["../../src/providers/base-provider.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,cAAc,EAAkB,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAeL,gBAAgB,EAChB,cAAc,EACd,wBAAwB,GACzB,MAAM,YAAY,CAAC;AAapB,MAAM,OAAgB,YAAa,SAAQ,YAAY;IAI3C,MAAM,CAAU;IAChB,cAAc,CAAiB;IAC/B,mBAAmB,CAAkB;IACrC,eAAe,CAAqB;IACpC,YAAY,GAAG,CAAC,CAAC;IACjB,UAAU,GAAG,CAAC,CAAC;IACf,WAAW,GAAG,CAAC,CAAC;IAChB,SAAS,GAAG,CAAC,CAAC;IACd,cAAc,GAAqB,IAAI,GAAG,EAAE,CAAC;IAEhD,MAAM,CAAoB;IAEjC,YAAY,OAA4B;QACtC,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAE7B,6BAA6B;QAC7B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC,OAAO,IAAI,CAAC,IAAI,EAAE,EAAE;YACvD,SAAS,EAAE,OAAO,CAAC,qBAAqB,EAAE,SAAS,IAAI,CAAC;YACxD,OAAO,EAAE,OAAO,CAAC,qBAAqB,EAAE,OAAO,IAAI,KAAK;YACxD,YAAY,EAAE,OAAO,CAAC,qBAAqB,EAAE,YAAY,IAAI,MAAM;SACpE,CAAC,CAAC;QAEH,iCAAiC;QACjC,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;YAC9B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,IAAI,WAAW,EAAE;YACrD,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK;YACxB,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;YACpC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;SACjC,CAAC,CAAC;QAEH,yBAAyB;QACzB,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtB,mCAAmC;QACnC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAE1B,+BAA+B;QAC/B,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;IAC3B,CAAC;IAOD;;OAEG;IACO,cAAc;QACtB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,CAAC,IAAI,WAAW,CAAC,CAAC;QACjE,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,KAAK,wBAAwB,IAAI,CAAC,IAAI,WAAW,CAAC,CAAC;QAC1F,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YAC1C,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;gBAC/D,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;YACzD,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACxC,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC;YAChF,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,UAAU,EAAE,CAAC;gBACvC,MAAM,IAAI,KAAK,CAAC,+BAA+B,UAAU,cAAc,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YAC9F,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,OAAmB;QAChC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI,CAAC;YACH,sBAAsB;YACtB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;gBAC5D,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACxC,CAAC,CAAC,CAAC;YAEH,gBAAgB;YAChB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YACvC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YAE9C,cAAc;YACd,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBACpB,QAAQ,EAAE,IAAI,CAAC,IAAI;gBACnB,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,OAAO;gBACP,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,WAAW;gBAClC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,SAAS;aAC/B,CAAC,CAAC;YAEH,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,UAAU,EAAE,CAAC;YAElB,8BAA8B;YAC9B,MAAM,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YAEjD,cAAc;YACd,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;gBACjB,QAAQ,EAAE,IAAI,CAAC,IAAI;gBACnB,KAAK,EAAE,aAAa;gBACpB,OAAO;aACR,CAAC,CAAC;YAEH,MAAM,aAAa,CAAC;QACtB,CAAC;IACH,CAAC;IAOD;;OAEG;IACH,KAAK,CAAC,CAAC,cAAc,CAAC,OAAmB;QACvC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,IAAI,SAAS,GAAG,CAAC,CAAC;QAElB,IAAI,CAAC;YACH,kCAAkC;YAClC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,iBAAiB,EAAE,CAAC;gBACzC,MAAM,IAAI,gBAAgB,CACxB,yBAAyB,EACzB,yBAAyB,EACzB,IAAI,CAAC,IAAI,EACT,SAAS,EACT,KAAK,CACN,CAAC;YACJ,CAAC;YAED,sBAAsB;YACtB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;gBAC1D,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YACxC,CAAC,CAAC,CAAC;YAEH,iBAAiB;YACjB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBACjC,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;oBAChB,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC;gBACxC,CAAC;gBACD,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;oBACf,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;gBACnC,CAAC;gBAED,MAAM,KAAK,CAAC;YACd,CAAC;YAED,gBAAgB;YAChB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YACvC,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAEpE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,UAAU,EAAE,CAAC;YAElB,8BAA8B;YAC9B,MAAM,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YAEjD,oBAAoB;YACpB,MAAM;gBACJ,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,aAAa;aACrB,CAAC;YAEF,MAAM,aAAa,CAAC;QACtB,CAAC;IACH,CAAC;IAiBD;;OAEG;IACH,aAAa,CAAC,KAAe;QAC3B,OAAO,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC3D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW;QACf,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI,CAAC;YACH,iCAAiC;YACjC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;YAE1C,IAAI,CAAC,eAAe,GAAG;gBACrB,GAAG,MAAM;gBACT,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;gBAC/B,SAAS,EAAE,IAAI,IAAI,EAAE;aACtB,CAAC;YAEF,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;YAChD,OAAO,IAAI,CAAC,eAAe,CAAC;QAE9B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,eAAe,GAAG;gBACrB,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;gBAC/D,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;gBAC/B,SAAS,EAAE,IAAI,IAAI,EAAE;aACtB,CAAC;YAEF,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;YAChD,OAAO,IAAI,CAAC,eAAe,CAAC;QAC9B,CAAC;IACH,CAAC;IAOD;;OAEG;IACH,SAAS;QACP,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;QAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAElF,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,eAAe,EAAE,OAAO,IAAI,KAAK;YACjD,WAAW,EAAE,WAAW,GAAG,GAAG,EAAE,mBAAmB;YACnD,WAAW;YACX,cAAc,EAAE,WAAW;YAC3B,kBAAkB,EAAE,IAAI,CAAC,qBAAqB,EAAE;YAChD,cAAc,EAAE,IAAI,CAAC,iBAAiB,EAAE;SACzC,CAAC;IACJ,CAAC;IAED;;OAEG;IACO,qBAAqB;QAC7B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACO,iBAAiB;QACzB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,OAAmB;QACpC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;QACjD,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;QAEnD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;gBACL,qBAAqB,EAAE,CAAC;gBACxB,yBAAyB,EAAE,CAAC;gBAC5B,oBAAoB,EAAE,CAAC;gBACvB,aAAa,EAAE;oBACb,MAAM,EAAE,CAAC;oBACT,UAAU,EAAE,CAAC;oBACb,KAAK,EAAE,CAAC;oBACR,QAAQ,EAAE,KAAK;iBAChB;gBACD,UAAU,EAAE,CAAC;aACd,CAAC;QACJ,CAAC;QAED,oEAAoE;QACpE,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC3E,MAAM,gBAAgB,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC;QAE5E,MAAM,UAAU,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC;QACnE,MAAM,cAAc,GAAG,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,OAAO,CAAC,mBAAmB,CAAC;QAE/E,OAAO;YACL,qBAAqB,EAAE,YAAY;YACnC,yBAAyB,EAAE,gBAAgB;YAC3C,oBAAoB,EAAE,YAAY,GAAG,gBAAgB;YACrD,aAAa,EAAE;gBACb,MAAM,EAAE,UAAU;gBAClB,UAAU,EAAE,cAAc;gBAC1B,KAAK,EAAE,UAAU,GAAG,cAAc;gBAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ;aAC3B;YACD,UAAU,EAAE,GAAG,EAAE,+BAA+B;SACjD,CAAC;IACJ,CAAC;IAED;;OAEG;IACO,cAAc,CAAC,IAAY;QACnC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,SAAsB,KAAK;QACxC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAE7C,wDAAwD;QACxD,wCAAwC;QACxC,OAAO;YACL,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE;YAC3B,QAAQ,EAAE,IAAI,CAAC,YAAY;YAC3B,MAAM,EAAE;gBACN,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC,EAAE,WAAW;gBACvD,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;gBAC9C,KAAK,EAAE,IAAI,CAAC,WAAW;aACxB;YACD,IAAI,EAAE;gBACJ,MAAM,EAAE,IAAI,CAAC,SAAS,GAAG,GAAG;gBAC5B,UAAU,EAAE,IAAI,CAAC,SAAS,GAAG,GAAG;gBAChC,KAAK,EAAE,IAAI,CAAC,SAAS;gBACrB,QAAQ,EAAE,KAAK;aAChB;YACD,MAAM,EAAE,IAAI,CAAC,UAAU;YACvB,cAAc,EAAE,IAAI,CAAC,uBAAuB,EAAE;YAC9C,cAAc,EAAE,EAAE,EAAE,gCAAgC;SACrD,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,YAAY,CAAC,GAAS,EAAE,MAAmB;QACjD,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC;QAC5B,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,MAAM;gBACT,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;gBACrC,MAAM;YACR,KAAK,KAAK;gBACR,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,MAAM;gBACT,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,OAAO;gBACV,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;gBACrC,MAAM;YACR,KAAK,KAAK;gBACR,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,qBAAqB;gBAC9C,MAAM;QACV,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACK,uBAAuB;QAC7B,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QAE7C,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,IAAI,KAAK,GAAG,CAAC,CAAC;QAEd,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACtC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC;gBAChC,KAAK,EAAE,CAAC;YACV,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACO,YAAY,CAAC,OAAmB,EAAE,QAAqB,EAAE,OAAe;QAChF,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,WAAW,IAAI,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC;QAE/C,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YAClB,IAAI,CAAC,SAAS,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;QAC5C,CAAC;QAED,oCAAoC;QACpC,MAAM,SAAS,GAAG,QAAQ,CAAC,EAAE,CAAC;QAC9B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE;YACjC,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,WAAW;YAClC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,SAAS;YAC9B,OAAO;SACR,CAAC,CAAC;QAEH,wCAAwC;QACxC,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,GAAG,IAAI,EAAE,CAAC;YACpC,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;YAC1D,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED;;OAEG;IACO,kBAAkB,CAC1B,OAAmB,EACnB,WAAmB,EACnB,SAAiB,EACjB,OAAe;QAEf,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC;QAChC,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC;QAE5B,gBAAgB;QAChB,MAAM,SAAS,GAAG,UAAU,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QACzC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE;YACjC,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK;YACzC,MAAM,EAAE,WAAW;YACnB,IAAI,EAAE,SAAS;YACf,OAAO;YACP,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACO,cAAc,CAAC,KAAc;QACrC,IAAI,KAAK,YAAY,gBAAgB,EAAE,CAAC;YACtC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,kCAAkC;YAClC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBACzC,OAAO,IAAI,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YACtD,CAAC;YAED,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC7E,OAAO,IAAI,gBAAgB,CACzB,mBAAmB,EACnB,SAAS,EACT,IAAI,CAAC,IAAI,EACT,SAAS,EACT,IAAI,CACL,CAAC;YACJ,CAAC;YAED,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;gBACrF,OAAO,IAAI,wBAAwB,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACnF,CAAC;QACH,CAAC;QAED,OAAO,IAAI,gBAAgB,CACzB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACtD,SAAS,EACT,IAAI,CAAC,IAAI,EACT,SAAS,EACT,IAAI,CACL,CAAC;IACJ,CAAC;IAED;;OAEG;IACO,iBAAiB;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,CAAC,oBAAoB;QAEzE,IAAI,CAAC,mBAAmB,GAAG,WAAW,CAAC,GAAG,EAAE;YAC1C,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,IAAI,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,CAAC;YACnE,CAAC,CAAC,CAAC;QACL,CAAC,EAAE,QAAQ,CAAC,CAAC;IACf,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC7B,aAAa,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QAC5B,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,qBAAqB,CAAC,CAAC;IACtD,CAAC;CACF"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Cohere Provider Implementation
3
+ * Supports Command, Generate, and other Cohere models
4
+ */
5
+ import { BaseProvider } from './base-provider.js';
6
+ import { LLMProvider, LLMModel, LLMRequest, LLMResponse, LLMStreamEvent, ModelInfo, ProviderCapabilities, HealthCheckResult } from './types.js';
7
+ export declare class CohereProvider extends BaseProvider {
8
+ readonly name: LLMProvider;
9
+ readonly capabilities: ProviderCapabilities;
10
+ private baseUrl;
11
+ private headers;
12
+ protected doInitialize(): Promise<void>;
13
+ protected doComplete(request: LLMRequest): Promise<LLMResponse>;
14
+ private doChatComplete;
15
+ private doGenerateComplete;
16
+ protected doStreamComplete(request: LLMRequest): AsyncIterable<LLMStreamEvent>;
17
+ private streamChatComplete;
18
+ private streamGenerateComplete;
19
+ listModels(): Promise<LLMModel[]>;
20
+ getModelInfo(model: LLMModel): Promise<ModelInfo>;
21
+ protected doHealthCheck(): Promise<HealthCheckResult>;
22
+ private convertMessages;
23
+ private mapToCohereModel;
24
+ private mapFinishReason;
25
+ private getModelDescription;
26
+ private handleErrorResponse;
27
+ }
28
+ //# sourceMappingURL=cohere-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cohere-provider.d.ts","sourceRoot":"","sources":["../../src/providers/cohere-provider.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EACL,WAAW,EACX,QAAQ,EACR,UAAU,EACV,WAAW,EACX,cAAc,EACd,SAAS,EACT,oBAAoB,EACpB,iBAAiB,EAIlB,MAAM,YAAY,CAAC;AAsDpB,qBAAa,cAAe,SAAQ,YAAY;IAC9C,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAY;IACtC,QAAQ,CAAC,YAAY,EAAE,oBAAoB,CAgEzC;IAEF,OAAO,CAAC,OAAO,CAA8B;IAC7C,OAAO,CAAC,OAAO,CAA8B;cAE7B,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;cAY7B,UAAU,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC;YAWvD,cAAc;YAkEd,kBAAkB;cAkEf,gBAAgB,CAAC,OAAO,EAAE,UAAU,GAAG,aAAa,CAAC,cAAc,CAAC;YAWtE,kBAAkB;YAiGlB,sBAAsB;IAM/B,UAAU,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAIjC,YAAY,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC;cAiBvC,aAAa,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAwB3D,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,mBAAmB;YAWb,mBAAmB;CA4BlC"}