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,386 @@
1
+ /**
2
+ * Agentic Flow Hook System
3
+ *
4
+ * Main entry point for the hook system integration with agentic-flow.
5
+ * Provides initialization, registration, and management of all hook types.
6
+ */
7
+
8
+ import { agenticHookManager } from './hook-manager.js';
9
+ import { registerLLMHooks } from './llm-hooks.js';
10
+ import { registerMemoryHooks } from './memory-hooks.js';
11
+ import { registerNeuralHooks } from './neural-hooks.js';
12
+ import { registerPerformanceHooks } from './performance-hooks.js';
13
+ import { registerWorkflowHooks } from './workflow-hooks.js';
14
+ import { Logger } from '../../core/logger.js';
15
+
16
+ export * from './types.js';
17
+ export { agenticHookManager } from './hook-manager.js';
18
+ export * from './llm-hooks.js';
19
+ export * from './memory-hooks.js';
20
+ export * from './neural-hooks.js';
21
+ export * from './performance-hooks.js';
22
+ export * from './workflow-hooks.js';
23
+
24
+ const logger = new Logger({
25
+ level: 'info',
26
+ format: 'text',
27
+ destination: 'console'
28
+ }, { prefix: 'AgenticFlowHooks' });
29
+
30
+ /**
31
+ * Initialize the agentic-flow hook system
32
+ */
33
+ export async function initializeAgenticFlowHooks(): Promise<void> {
34
+ logger.info('Initializing agentic-flow hook system...');
35
+
36
+ try {
37
+ // Register all hook types
38
+ registerLLMHooks();
39
+ logger.debug('LLM hooks registered');
40
+
41
+ registerMemoryHooks();
42
+ logger.debug('Memory hooks registered');
43
+
44
+ registerNeuralHooks();
45
+ logger.debug('Neural hooks registered');
46
+
47
+ registerPerformanceHooks();
48
+ logger.debug('Performance hooks registered');
49
+
50
+ registerWorkflowHooks();
51
+ logger.debug('Workflow hooks registered');
52
+
53
+ // Set up default pipelines
54
+ await setupDefaultPipelines();
55
+
56
+ // Initialize metrics collection
57
+ startMetricsCollection();
58
+
59
+ logger.info('Agentic-flow hook system initialized successfully');
60
+ } catch (error) {
61
+ logger.error('Failed to initialize agentic-flow hooks:', error);
62
+ throw error;
63
+ }
64
+ }
65
+
66
+ /**
67
+ * Set up default hook pipelines
68
+ */
69
+ async function setupDefaultPipelines(): Promise<void> {
70
+ // LLM Call Pipeline
71
+ agenticHookManager.createPipeline({
72
+ id: 'llm-call-pipeline',
73
+ name: 'LLM Call Pipeline',
74
+ stages: [
75
+ {
76
+ name: 'pre-call',
77
+ hooks: agenticHookManager.getHooks('pre-llm-call'),
78
+ parallel: false,
79
+ },
80
+ {
81
+ name: 'call-execution',
82
+ hooks: [], // Actual LLM call happens here
83
+ parallel: false,
84
+ },
85
+ {
86
+ name: 'post-call',
87
+ hooks: agenticHookManager.getHooks('post-llm-call'),
88
+ parallel: true,
89
+ },
90
+ ],
91
+ errorStrategy: 'continue',
92
+ });
93
+
94
+ // Memory Operation Pipeline
95
+ agenticHookManager.createPipeline({
96
+ id: 'memory-operation-pipeline',
97
+ name: 'Memory Operation Pipeline',
98
+ stages: [
99
+ {
100
+ name: 'validation',
101
+ hooks: agenticHookManager.getHooks('pre-memory-store'),
102
+ parallel: false,
103
+ },
104
+ {
105
+ name: 'storage',
106
+ hooks: agenticHookManager.getHooks('post-memory-store'),
107
+ parallel: true,
108
+ },
109
+ {
110
+ name: 'sync',
111
+ hooks: agenticHookManager.getHooks('memory-sync'),
112
+ parallel: true,
113
+ condition: (ctx) => ctx.metadata.crossProvider === true,
114
+ },
115
+ ],
116
+ errorStrategy: 'rollback',
117
+ });
118
+
119
+ // Workflow Execution Pipeline
120
+ agenticHookManager.createPipeline({
121
+ id: 'workflow-execution-pipeline',
122
+ name: 'Workflow Execution Pipeline',
123
+ stages: [
124
+ {
125
+ name: 'initialization',
126
+ hooks: agenticHookManager.getHooks('workflow-start'),
127
+ parallel: false,
128
+ },
129
+ {
130
+ name: 'execution',
131
+ hooks: [
132
+ ...agenticHookManager.getHooks('workflow-step'),
133
+ ...agenticHookManager.getHooks('workflow-decision'),
134
+ ],
135
+ parallel: false,
136
+ },
137
+ {
138
+ name: 'completion',
139
+ hooks: agenticHookManager.getHooks('workflow-complete'),
140
+ parallel: true,
141
+ },
142
+ ],
143
+ errorStrategy: 'fail-fast',
144
+ });
145
+ }
146
+
147
+ /**
148
+ * Start background metrics collection
149
+ */
150
+ function startMetricsCollection(): void {
151
+ // Collect metrics every 30 seconds
152
+ setInterval(() => {
153
+ const metrics = agenticHookManager.getMetrics();
154
+
155
+ // Log high-level metrics
156
+ logger.debug('Hook system metrics:', {
157
+ totalHooks: metrics['hooks.count'],
158
+ totalExecutions: metrics['hooks.executions'],
159
+ errorRate: metrics['hooks.errors'] / metrics['hooks.executions'] || 0,
160
+ cacheHitRate: metrics['hooks.cacheHits'] / metrics['hooks.executions'] || 0,
161
+ });
162
+
163
+ // Emit metrics event
164
+ agenticHookManager.emit('metrics:collected', metrics);
165
+ }, 30000);
166
+ }
167
+
168
+ /**
169
+ * Shutdown the hook system gracefully
170
+ */
171
+ export async function shutdownAgenticFlowHooks(): Promise<void> {
172
+ logger.info('Shutting down agentic-flow hook system...');
173
+
174
+ try {
175
+ // Wait for active executions to complete
176
+ const maxWaitTime = 10000; // 10 seconds
177
+ const startTime = Date.now();
178
+
179
+ while (agenticHookManager.getMetrics()['executions.active'] > 0) {
180
+ if (Date.now() - startTime > maxWaitTime) {
181
+ logger.warn('Timeout waiting for active executions to complete');
182
+ break;
183
+ }
184
+ await new Promise(resolve => setTimeout(resolve, 100));
185
+ }
186
+
187
+ // Remove all listeners
188
+ agenticHookManager.removeAllListeners();
189
+
190
+ logger.info('Agentic-flow hook system shut down successfully');
191
+ } catch (error) {
192
+ logger.error('Error during hook system shutdown:', error);
193
+ throw error;
194
+ }
195
+ }
196
+
197
+ /**
198
+ * Get hook system status
199
+ */
200
+ export function getHookSystemStatus(): {
201
+ initialized: boolean;
202
+ metrics: Record<string, any>;
203
+ pipelines: string[];
204
+ activeExecutions: number;
205
+ } {
206
+ const metrics = agenticHookManager.getMetrics();
207
+
208
+ return {
209
+ initialized: metrics['hooks.count'] > 0,
210
+ metrics,
211
+ pipelines: [
212
+ 'llm-call-pipeline',
213
+ 'memory-operation-pipeline',
214
+ 'workflow-execution-pipeline',
215
+ ],
216
+ activeExecutions: metrics['executions.active'] || 0,
217
+ };
218
+ }
219
+
220
+ /**
221
+ * Create a context builder for hook execution
222
+ */
223
+ export function createHookContext(): HookContextBuilder {
224
+ class ContextBuilder implements HookContextBuilder {
225
+ private context: Partial<AgenticHookContext> = {
226
+ timestamp: Date.now(),
227
+ correlationId: this.generateCorrelationId(),
228
+ metadata: {},
229
+ };
230
+
231
+ withSession(sessionId: string): HookContextBuilder {
232
+ this.context.sessionId = sessionId;
233
+ return this;
234
+ }
235
+
236
+ withMemory(namespace: string, provider: string): HookContextBuilder {
237
+ this.context.memory = {
238
+ namespace,
239
+ provider,
240
+ cache: new Map(),
241
+ };
242
+ return this;
243
+ }
244
+
245
+ withNeural(modelId: string): HookContextBuilder {
246
+ this.context.neural = {
247
+ modelId,
248
+ patterns: this.createPatternStore(),
249
+ training: {
250
+ epoch: 0,
251
+ loss: 0,
252
+ accuracy: 0,
253
+ learningRate: 0.001,
254
+ optimizer: 'adam',
255
+ checkpoints: [],
256
+ },
257
+ };
258
+ return this;
259
+ }
260
+
261
+ withPerformance(metrics: PerformanceMetric[]): HookContextBuilder {
262
+ const metricsMap = new Map<string, PerformanceMetric>();
263
+ metrics.forEach(m => metricsMap.set(m.name, m));
264
+
265
+ this.context.performance = {
266
+ metrics: metricsMap,
267
+ bottlenecks: [],
268
+ optimizations: [],
269
+ };
270
+ return this;
271
+ }
272
+
273
+ withMetadata(metadata: Record<string, any>): HookContextBuilder {
274
+ this.context.metadata = { ...this.context.metadata, ...metadata };
275
+ return this;
276
+ }
277
+
278
+ build(): AgenticHookContext {
279
+ if (!this.context.sessionId) {
280
+ this.context.sessionId = this.generateSessionId();
281
+ }
282
+
283
+ if (!this.context.memory) {
284
+ this.context.memory = {
285
+ namespace: 'default',
286
+ provider: 'memory',
287
+ cache: new Map(),
288
+ };
289
+ }
290
+
291
+ if (!this.context.neural) {
292
+ this.context.neural = {
293
+ modelId: 'default',
294
+ patterns: this.createPatternStore(),
295
+ training: {
296
+ epoch: 0,
297
+ loss: 0,
298
+ accuracy: 0,
299
+ learningRate: 0.001,
300
+ optimizer: 'adam',
301
+ checkpoints: [],
302
+ },
303
+ };
304
+ }
305
+
306
+ if (!this.context.performance) {
307
+ this.context.performance = {
308
+ metrics: new Map(),
309
+ bottlenecks: [],
310
+ optimizations: [],
311
+ };
312
+ }
313
+
314
+ return this.context as AgenticHookContext;
315
+ }
316
+
317
+ private generateCorrelationId(): string {
318
+ return `corr_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
319
+ }
320
+
321
+ private generateSessionId(): string {
322
+ return `sess_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
323
+ }
324
+
325
+ private createPatternStore(): PatternStore {
326
+ const patterns = new Map<string, Pattern>();
327
+
328
+ return {
329
+ add(pattern: Pattern): void {
330
+ patterns.set(pattern.id, pattern);
331
+ },
332
+
333
+ get(id: string): Pattern | undefined {
334
+ return patterns.get(id);
335
+ },
336
+
337
+ findSimilar(pattern: Partial<Pattern>, threshold: number): Pattern[] {
338
+ const results: Pattern[] = [];
339
+
340
+ for (const p of patterns.values()) {
341
+ // Simple similarity check
342
+ if (p.type === pattern.type && p.confidence >= threshold) {
343
+ results.push(p);
344
+ }
345
+ }
346
+
347
+ return results;
348
+ },
349
+
350
+ getByType(type: Pattern['type']): Pattern[] {
351
+ return Array.from(patterns.values()).filter(p => p.type === type);
352
+ },
353
+
354
+ prune(maxAge: number): void {
355
+ const cutoff = Date.now() - maxAge;
356
+ for (const [id, pattern] of patterns) {
357
+ if (pattern.context.timestamp < cutoff) {
358
+ patterns.delete(id);
359
+ }
360
+ }
361
+ },
362
+
363
+ export(): Pattern[] {
364
+ return Array.from(patterns.values());
365
+ },
366
+
367
+ import(newPatterns: Pattern[]): void {
368
+ for (const pattern of newPatterns) {
369
+ patterns.set(pattern.id, pattern);
370
+ }
371
+ },
372
+ };
373
+ }
374
+ }
375
+
376
+ return new ContextBuilder();
377
+ }
378
+
379
+ // Import types for the context builder
380
+ import type {
381
+ AgenticHookContext,
382
+ HookContextBuilder,
383
+ PatternStore,
384
+ Pattern,
385
+ PerformanceMetric,
386
+ } from './types.js';