@lov3kaizen/agentsea-crews 1.0.1 → 1.1.1

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.
@@ -0,0 +1,975 @@
1
+ import { h as Task, i as TaskStatus, j as TaskPriority, k as CrewAgentConfig, l as CoreLLMProvider, A as AgentExecutionResult, m as CapableAgent, d as TaskConfig, n as RankedAgent, D as DelegationStrategyType, o as CrewAgent, E as ExecutionContext, p as TaskBid, W as WorkflowContext, S as StepResult, q as WorkflowStepConfig, r as ConditionalStepConfig, P as ParallelStepConfig, L as LoopStepConfig, s as WorkflowDefinition, t as DAG, u as DAGResult, v as DAGEvent, V as ValidationResult, w as TaskResult, x as WorkflowCheckpoint } from './Crew-BnvVjN7A.mjs';
2
+ export { y as AgentCapabilities, z as AgentErrorEvent, B as AgentMetrics, F as AgentResponseEvent, G as AgentThinkingEvent, H as AgentToolResultEvent, I as AgentToolUseEvent, J as AuctionStartedEvent, K as BaseEvent, M as Capability, N as CapabilityMatch, O as CheckpointConfig, Q as CollaborationMessageEvent, U as ConflictDetectedEvent, X as ConflictEscalatedEvent, Y as ConflictResolvedEvent, Z as ConsensusReachedEvent, _ as ConsensusRequestedEvent, $ as ConsensusVoteEvent, a0 as ContextCheckpoint, a as Crew, a1 as CrewAbortedEvent, a2 as CrewAgentOptions, a3 as CrewAgentStats, a4 as CrewCheckpoint, a5 as CrewCompletedEvent, e as CrewConfig, a6 as CrewErrorEvent, b as CrewEvent, a7 as CrewEventHandler, f as CrewExecutionOptions, a8 as CrewMemoryConfig, c as CrewMetrics, a9 as CrewPausedEvent, aa as CrewProgress, g as CrewResult, ab as CrewResumedEvent, ac as CrewStartedEvent, ad as CrewStatus, C as CrewStatusDetails, ae as DAGNode, af as DebugBreakpointEvent, ag as DelegationDecisionEvent, ah as DelegationFailedEvent, ai as DelegationRejectedEvent, aj as DelegationStats, ak as EventFilterOptions, al as EventSubscription, am as ExecutionContextConfig, an as HelpProvidedEvent, ao as HelpRequest, ap as HelpRequestEvent, aq as HelpRequestedEvent, ar as HelpResponse, as as HelpResponseEvent, at as KnowledgeContributedEvent, au as KnowledgeSharedEvent, av as ManagerConfig, aw as MetricsUpdateEvent, ax as PRIORITY_WEIGHTS, ay as PROFICIENCY_WEIGHTS, az as ProficiencyLevel, aA as RetryConfig, aB as Role, R as RoleConfig, aC as StepMode, aD as TaskAssignedEvent, aE as TaskCompletedEvent, aF as TaskFailedEvent, aG as TaskMetadata, aH as TaskProgressEvent, aI as TaskQueuedEvent, aJ as TaskRetriedEvent, aK as TaskStartedEvent, aL as TaskState, T as TimelineEntry, aM as WorkflowCheckpointEvent, aN as WorkflowStep, aO as WorkflowStepCompletedEvent, aP as WorkflowStepStartedEvent, aQ as createCrew, aR as createCrewAgent, aS as createExecutionContext, aT as createRole, aU as createTask } from './Crew-BnvVjN7A.mjs';
3
+ import { EventEmitter } from 'eventemitter3';
4
+ export { A as AgentInspection, a as AgentStatus, B as Breakpoint, b as BreakpointType, C as CrewDashboard, c as DashboardConfig, d as DashboardSnapshot, e as DashboardUpdate, f as DebugContext, D as DebugMode, g as DebugModeConfig, S as StepResult, h as createDashboard, i as createDebugMode } from './DebugMode-CbYgA7Yw.mjs';
5
+ export { CodeReviewCrewOptions, CodeReviewTasks, CustomerSupportCrewOptions, CustomerSupportTasks, ResearchCrewOptions, ResearchTasks, WritingCrewOptions, WritingTasks, createCodeReviewCrew, createCodeReviewCrewConfig, createCustomerSupportCrew, createCustomerSupportCrewConfig, createResearchCrew, createResearchCrewConfig, createWritingCrew, createWritingCrewConfig } from './templates/index.mjs';
6
+
7
+ interface TaskQueueConfig {
8
+ maxSize?: number;
9
+ autoSort?: boolean;
10
+ defaultPriority?: 'critical' | 'high' | 'medium' | 'low';
11
+ }
12
+ declare class TaskQueue {
13
+ private tasks;
14
+ private taskMap;
15
+ private readonly maxSize;
16
+ private readonly autoSort;
17
+ private dirty;
18
+ constructor(config?: TaskQueueConfig);
19
+ enqueue(task: Task): void;
20
+ enqueueMany(tasks: Task[]): void;
21
+ dequeue(): Task | undefined;
22
+ peek(): Task | undefined;
23
+ get(id: string): Task | undefined;
24
+ remove(id: string): Task | undefined;
25
+ has(id: string): boolean;
26
+ clear(): void;
27
+ getByStatus(status: TaskStatus): Task[];
28
+ getByPriority(priority: TaskPriority): Task[];
29
+ getReadyTasks(completedTaskIds?: Set<string>): Task[];
30
+ getByAgent(agentName: string): Task[];
31
+ getByTag(tag: string): Task[];
32
+ getPending(): Task[];
33
+ getBlocked(): Task[];
34
+ getInProgress(): Task[];
35
+ getFailed(): Task[];
36
+ getRetryable(): Task[];
37
+ getOverdue(): Task[];
38
+ getNextReady(n: number, completedTaskIds?: Set<string>): Task[];
39
+ get size(): number;
40
+ isEmpty(): boolean;
41
+ isFull(): boolean;
42
+ getAll(): Task[];
43
+ getAllIds(): string[];
44
+ getStats(): TaskQueueStats;
45
+ sort(): void;
46
+ updateBlockedTasks(completedTaskIds: Set<string>): number;
47
+ blockDependentTasks(failedTaskId: string): number;
48
+ reprioritize(taskId: string, _newPriority: TaskPriority): boolean;
49
+ [Symbol.iterator](): Iterator<Task>;
50
+ forEach(callback: (task: Task, index: number) => void): void;
51
+ filter(predicate: (task: Task) => boolean): Task[];
52
+ find(predicate: (task: Task) => boolean): Task | undefined;
53
+ }
54
+ interface TaskQueueStats {
55
+ total: number;
56
+ byStatus: Record<TaskStatus, number>;
57
+ byPriority: Record<TaskPriority, number>;
58
+ overdue: number;
59
+ retryable: number;
60
+ }
61
+ declare function createTaskQueue(config?: TaskQueueConfig): TaskQueue;
62
+
63
+ declare function createCoreExecutor(config: CrewAgentConfig, options?: {
64
+ provider?: CoreLLMProvider;
65
+ }): (input: string, systemPrompt: string) => Promise<AgentExecutionResult>;
66
+
67
+ type AgentStatus = 'available' | 'busy' | 'unavailable' | 'error';
68
+ interface RegisteredAgent<T extends CapableAgent = CapableAgent> {
69
+ agent: T;
70
+ status: AgentStatus;
71
+ currentTask?: string;
72
+ registeredAt: Date;
73
+ lastActiveAt?: Date;
74
+ tasksCompleted: number;
75
+ tasksFailed: number;
76
+ metadata?: Record<string, unknown>;
77
+ }
78
+ interface AgentRegistryConfig {
79
+ allowDuplicates?: boolean;
80
+ trackStats?: boolean;
81
+ }
82
+ declare class AgentRegistry<T extends CapableAgent = CapableAgent> {
83
+ private agents;
84
+ private readonly allowDuplicates;
85
+ private readonly trackStats;
86
+ constructor(config?: AgentRegistryConfig);
87
+ register(agent: T, metadata?: Record<string, unknown>): void;
88
+ registerMany(agents: T[]): void;
89
+ unregister(name: string): boolean;
90
+ has(name: string): boolean;
91
+ get(name: string): T | undefined;
92
+ getEntry(name: string): RegisteredAgent<T> | undefined;
93
+ getAll(): T[];
94
+ getAllEntries(): RegisteredAgent<T>[];
95
+ getNames(): string[];
96
+ get size(): number;
97
+ getStatus(name: string): AgentStatus | undefined;
98
+ setStatus(name: string, status: AgentStatus): void;
99
+ markBusy(name: string, taskId: string): void;
100
+ markAvailable(name: string): void;
101
+ recordTaskCompletion(name: string, success: boolean): void;
102
+ findByCapability(capabilityName: string): T[];
103
+ findByRole(roleName: string): T[];
104
+ findBestMatch(task: TaskConfig): T | undefined;
105
+ rankForTask(task: TaskConfig): RankedAgent[];
106
+ findCapableAgents(task: TaskConfig): T[];
107
+ getAvailable(): T[];
108
+ getBusy(): T[];
109
+ getByStatus(status: AgentStatus): T[];
110
+ getAvailableCount(): number;
111
+ hasAvailable(): boolean;
112
+ getStats(): RegistryStats;
113
+ getAgentStats(name: string): AgentStats | undefined;
114
+ [Symbol.iterator](): Iterator<T>;
115
+ forEach(callback: (agent: T, name: string) => void): void;
116
+ clear(): void;
117
+ resetAllStatuses(): void;
118
+ }
119
+ interface RegistryStats {
120
+ total: number;
121
+ available: number;
122
+ busy: number;
123
+ unavailable: number;
124
+ error: number;
125
+ totalTasksCompleted: number;
126
+ totalTasksFailed: number;
127
+ }
128
+ interface AgentStats {
129
+ name: string;
130
+ status: AgentStatus;
131
+ currentTask?: string;
132
+ tasksCompleted: number;
133
+ tasksFailed: number;
134
+ successRate: number;
135
+ registeredAt: Date;
136
+ lastActiveAt?: Date;
137
+ }
138
+ declare function createAgentRegistry<T extends CapableAgent = CapableAgent>(config?: AgentRegistryConfig): AgentRegistry<T>;
139
+
140
+ interface DelegationResult {
141
+ selectedAgent: string;
142
+ reason: string;
143
+ confidence: number;
144
+ alternativeAgents?: string[];
145
+ decisionTimeMs?: number;
146
+ metadata?: Record<string, unknown>;
147
+ }
148
+ interface DelegationFailure {
149
+ reason: string;
150
+ consideredAgents: string[];
151
+ suggestions?: string[];
152
+ }
153
+ interface DelegationStrategy {
154
+ readonly name: DelegationStrategyType;
155
+ selectAgent(task: TaskConfig, agents: CrewAgent[], context: ExecutionContext): Promise<DelegationResult>;
156
+ assignTasks?(tasks: TaskConfig[], agents: CrewAgent[], context: ExecutionContext): Promise<Map<string, string>>;
157
+ reset?(): void;
158
+ }
159
+ declare abstract class BaseDelegationStrategy implements DelegationStrategy {
160
+ abstract readonly name: DelegationStrategyType;
161
+ abstract selectAgent(task: TaskConfig, agents: CrewAgent[], context: ExecutionContext): Promise<DelegationResult>;
162
+ assignTasks(tasks: TaskConfig[], agents: CrewAgent[], context: ExecutionContext): Promise<Map<string, string>>;
163
+ protected filterAvailable(agents: CrewAgent[]): CrewAgent[];
164
+ protected createFailure(reason: string, agents: CrewAgent[]): never;
165
+ reset(): void;
166
+ }
167
+ declare class DelegationError extends Error {
168
+ readonly failure: DelegationFailure;
169
+ constructor(failureOrReason: DelegationFailure | string, agents?: CrewAgent[], lastError?: string);
170
+ }
171
+
172
+ interface RoundRobinConfig {
173
+ skipBusy?: boolean;
174
+ wrapAround?: boolean;
175
+ }
176
+ declare class RoundRobinStrategy extends BaseDelegationStrategy {
177
+ readonly name: "round-robin";
178
+ private currentIndex;
179
+ private readonly skipBusy;
180
+ private readonly wrapAround;
181
+ constructor(config?: RoundRobinConfig);
182
+ selectAgent(task: TaskConfig, agents: CrewAgent[], _context: ExecutionContext): Promise<DelegationResult>;
183
+ assignTasks(tasks: TaskConfig[], agents: CrewAgent[], _context: ExecutionContext): Promise<Map<string, string>>;
184
+ reset(): void;
185
+ getCurrentPosition(): number;
186
+ setPosition(position: number): void;
187
+ }
188
+ declare function createRoundRobinStrategy(config?: RoundRobinConfig): RoundRobinStrategy;
189
+
190
+ interface BestMatchConfig {
191
+ minimumScore?: number;
192
+ useKeywordMatching?: boolean;
193
+ capabilityWeight?: number;
194
+ preferAvailable?: boolean;
195
+ }
196
+ declare class BestMatchStrategy extends BaseDelegationStrategy {
197
+ readonly name: "best-match";
198
+ private readonly minimumScore;
199
+ private readonly useKeywordMatching;
200
+ private readonly capabilityWeight;
201
+ private readonly preferAvailable;
202
+ constructor(config?: BestMatchConfig);
203
+ selectAgent(task: TaskConfig, agents: CrewAgent[], _context: ExecutionContext): Promise<DelegationResult>;
204
+ private rankAgents;
205
+ private buildReason;
206
+ findCapableAgents(task: TaskConfig, agents: CrewAgent[]): CrewAgent[];
207
+ }
208
+ declare function createBestMatchStrategy(config?: BestMatchConfig): BestMatchStrategy;
209
+
210
+ interface AuctionConfig {
211
+ biddingTimeMs?: number;
212
+ minimumBid?: number;
213
+ selectionCriteria?: 'confidence' | 'fastest' | 'cheapest';
214
+ allowRebidding?: boolean;
215
+ bidTimeoutMs?: number;
216
+ }
217
+ declare class AuctionStrategy extends BaseDelegationStrategy {
218
+ readonly name: "auction";
219
+ private readonly biddingTimeMs;
220
+ private readonly minimumBid;
221
+ private readonly selectionCriteria;
222
+ private readonly allowRebidding;
223
+ private readonly bidTimeoutMs;
224
+ constructor(config?: AuctionConfig);
225
+ selectAgent(task: TaskConfig, agents: CrewAgent[], context: ExecutionContext): Promise<DelegationResult>;
226
+ private collectBids;
227
+ private getBidWithTimeout;
228
+ private selectWinner;
229
+ private buildReason;
230
+ runMultiRoundAuction(task: TaskConfig, agents: CrewAgent[], rounds?: number): Promise<TaskBid[]>;
231
+ }
232
+ declare function createAuctionStrategy(config?: AuctionConfig): AuctionStrategy;
233
+
234
+ interface AgentHierarchy {
235
+ managers: string[];
236
+ workers: Map<string, string[]>;
237
+ authorityLevels?: Map<string, number>;
238
+ }
239
+ interface HierarchicalConfig {
240
+ hierarchy?: AgentHierarchy | string[];
241
+ managersCanExecute?: boolean;
242
+ escalateToManager?: boolean;
243
+ useCapabilityMatching?: boolean;
244
+ }
245
+ declare class HierarchicalStrategy extends BaseDelegationStrategy {
246
+ readonly name: "hierarchical";
247
+ private hierarchy;
248
+ private readonly managersCanExecute;
249
+ private readonly escalateToManager;
250
+ private readonly useCapabilityMatching;
251
+ private rolePriority;
252
+ constructor(config?: HierarchicalConfig);
253
+ setHierarchy(hierarchy: AgentHierarchy): void;
254
+ addManager(managerName: string, workers?: string[]): void;
255
+ addWorker(managerName: string, workerName: string): void;
256
+ selectAgent(task: TaskConfig, agents: CrewAgent[], _context: ExecutionContext): Promise<DelegationResult>;
257
+ private autoDetectHierarchy;
258
+ private findManagerForTask;
259
+ private selectWorker;
260
+ private fallbackSelection;
261
+ private selectByRolePriority;
262
+ reset(): void;
263
+ getHierarchy(): AgentHierarchy;
264
+ }
265
+ declare function createHierarchicalStrategy(config?: HierarchicalConfig): HierarchicalStrategy;
266
+
267
+ interface Vote {
268
+ voter: string;
269
+ candidate: string;
270
+ weight: number;
271
+ reasoning?: string;
272
+ }
273
+ interface ConsensusConfig {
274
+ requiredAgreement?: number;
275
+ maxRounds?: number;
276
+ tieBreaker?: 'random' | 'first' | 'manager' | 'highest-capability';
277
+ voteTimeoutMs?: number;
278
+ weightedVoting?: boolean;
279
+ minimumVotes?: number;
280
+ }
281
+ interface VotingRound {
282
+ round: number;
283
+ votes: Vote[];
284
+ tally: Map<string, number>;
285
+ winner?: string;
286
+ consensusReached: boolean;
287
+ agreementRatio: number;
288
+ }
289
+ declare class ConsensusStrategy extends BaseDelegationStrategy {
290
+ readonly name: "consensus";
291
+ private readonly requiredAgreement;
292
+ private readonly maxRounds;
293
+ private readonly tieBreaker;
294
+ private readonly voteTimeoutMs;
295
+ private readonly weightedVoting;
296
+ private readonly minimumVotes;
297
+ constructor(config?: ConsensusConfig);
298
+ selectAgent(task: TaskConfig, agents: CrewAgent[], context: ExecutionContext): Promise<DelegationResult>;
299
+ private runVotingRound;
300
+ private collectVotes;
301
+ private getVote;
302
+ private tallyVotes;
303
+ private breakTie;
304
+ runWithDeliberation(task: TaskConfig, agents: CrewAgent[], context: ExecutionContext): Promise<{
305
+ result: DelegationResult;
306
+ deliberation: VotingRound[];
307
+ consensus: boolean;
308
+ }>;
309
+ }
310
+ declare function createConsensusStrategy(config?: ConsensusConfig): ConsensusStrategy;
311
+
312
+ declare function createStrategy(type: DelegationStrategyType, config?: Record<string, unknown>): DelegationStrategy;
313
+ declare const STRATEGY_TYPES: DelegationStrategyType[];
314
+
315
+ interface DelegationCoordinatorConfig {
316
+ defaultStrategy?: DelegationStrategyType;
317
+ strategyConfigs?: Partial<Record<DelegationStrategyType, Record<string, unknown>>>;
318
+ enableFallback?: boolean;
319
+ fallbackOrder?: DelegationStrategyType[];
320
+ maxAttempts?: number;
321
+ trackHistory?: boolean;
322
+ }
323
+ interface DelegationHistoryEntry {
324
+ taskId: string;
325
+ strategy: DelegationStrategyType;
326
+ result: DelegationResult;
327
+ timestamp: Date;
328
+ attempt: number;
329
+ }
330
+ declare class DelegationCoordinator {
331
+ private readonly strategies;
332
+ private readonly defaultStrategy;
333
+ private readonly enableFallback;
334
+ private readonly fallbackOrder;
335
+ private readonly maxAttempts;
336
+ private readonly trackHistory;
337
+ private readonly history;
338
+ constructor(config?: DelegationCoordinatorConfig);
339
+ registerStrategy(type: DelegationStrategyType, strategy: DelegationStrategy): void;
340
+ getStrategy(type: DelegationStrategyType): DelegationStrategy | undefined;
341
+ delegate(task: TaskConfig, agents: CrewAgent[], context: ExecutionContext, strategyType?: DelegationStrategyType): Promise<DelegationResult>;
342
+ delegateBatch(tasks: TaskConfig[], agents: CrewAgent[], context: ExecutionContext, strategyType?: DelegationStrategyType): Promise<Map<string, DelegationResult>>;
343
+ findBestAgent(task: TaskConfig, agents: CrewAgent[], context: ExecutionContext): Promise<CrewAgent | undefined>;
344
+ getRecommendations(task: TaskConfig, agents: CrewAgent[], context: ExecutionContext, limit?: number): Promise<Array<{
345
+ agent: CrewAgent;
346
+ score: number;
347
+ reason: string;
348
+ }>>;
349
+ getHistory(taskId?: string): DelegationHistoryEntry[];
350
+ getStatistics(): {
351
+ totalDelegations: number;
352
+ byStrategy: Record<string, number>;
353
+ averageConfidence: number;
354
+ averageAttempts: number;
355
+ };
356
+ clearHistory(): void;
357
+ reset(): void;
358
+ private buildStrategyOrder;
359
+ }
360
+ declare function createDelegationCoordinator(config?: DelegationCoordinatorConfig): DelegationCoordinator;
361
+
362
+ type CollaborationMessageType = 'request' | 'response' | 'broadcast' | 'acknowledgment' | 'knowledge' | 'question' | 'answer';
363
+ interface CollaborationMessage {
364
+ id: string;
365
+ type: CollaborationMessageType;
366
+ from: string;
367
+ to: string;
368
+ content: string;
369
+ metadata?: Record<string, unknown>;
370
+ replyTo?: string;
371
+ timestamp: Date;
372
+ }
373
+ interface HelpResponse {
374
+ requestId: string;
375
+ responder: string;
376
+ helpful: boolean;
377
+ response: string;
378
+ suggestions?: string[];
379
+ timestamp: Date;
380
+ }
381
+ interface Knowledge {
382
+ id: string;
383
+ contributor: string;
384
+ type: 'fact' | 'insight' | 'procedure' | 'example' | 'warning';
385
+ content: string;
386
+ tags: string[];
387
+ confidence: number;
388
+ timestamp: Date;
389
+ }
390
+ interface CollaborationChannel {
391
+ name: string;
392
+ participants: string[];
393
+ messages: CollaborationMessage[];
394
+ created: Date;
395
+ }
396
+ interface CollaborationConfig {
397
+ persistMessages?: boolean;
398
+ maxMessagesPerChannel?: number;
399
+ helpRequestTimeoutMs?: number;
400
+ autoExtractKnowledge?: boolean;
401
+ }
402
+ declare class CollaborationManager {
403
+ private readonly agents;
404
+ private readonly channels;
405
+ private readonly pendingHelpRequests;
406
+ private readonly knowledge;
407
+ private readonly config;
408
+ private messageCounter;
409
+ constructor(config?: CollaborationConfig);
410
+ registerAgent(agent: CrewAgent): void;
411
+ unregisterAgent(agentName: string): void;
412
+ createChannel(name: string, participants: string[]): CollaborationChannel;
413
+ sendMessage(from: string, to: string, content: string, context: ExecutionContext, options?: {
414
+ type?: CollaborationMessageType;
415
+ replyTo?: string;
416
+ metadata?: Record<string, unknown>;
417
+ }): Promise<CollaborationMessage>;
418
+ broadcast(from: string, content: string, context: ExecutionContext): Promise<CollaborationMessage>;
419
+ requestHelp(requester: string, task: TaskConfig, question: string, context: ExecutionContext, priority?: 'low' | 'normal' | 'high' | 'urgent'): Promise<HelpResponse[]>;
420
+ private getHelpFromAgent;
421
+ shareKnowledge(contributor: string, type: Knowledge['type'], content: string, tags: string[], context: ExecutionContext, confidence?: number): Knowledge;
422
+ searchKnowledge(query: string, limit?: number): Knowledge[];
423
+ getKnowledgeByType(type: Knowledge['type']): Knowledge[];
424
+ getKnowledgeByContributor(contributor: string): Knowledge[];
425
+ getConversation(agent1: string, agent2: string): CollaborationMessage[];
426
+ getAgentChannels(agentName: string): CollaborationChannel[];
427
+ clear(): void;
428
+ getStatistics(): {
429
+ totalMessages: number;
430
+ totalChannels: number;
431
+ totalKnowledge: number;
432
+ messagesByAgent: Record<string, number>;
433
+ knowledgeByType: Record<string, number>;
434
+ };
435
+ }
436
+ declare function createCollaborationManager(config?: CollaborationConfig): CollaborationManager;
437
+
438
+ type ConflictType = 'disagreement' | 'resource' | 'priority' | 'dependency' | 'output' | 'assertion';
439
+ interface AgentResponse {
440
+ agentName: string;
441
+ content: string;
442
+ confidence: number;
443
+ reasoning?: string;
444
+ metadata?: Record<string, unknown>;
445
+ }
446
+ interface Conflict {
447
+ id: string;
448
+ type: ConflictType;
449
+ description: string;
450
+ participants: string[];
451
+ responses: AgentResponse[];
452
+ task?: TaskConfig;
453
+ severity: 'low' | 'medium' | 'high' | 'critical';
454
+ detected: Date;
455
+ }
456
+ type ResolutionStrategy = 'voting' | 'authority' | 'consensus' | 'merge' | 'human' | 'newest' | 'highest-confidence';
457
+ interface Resolution {
458
+ conflictId: string;
459
+ strategy: ResolutionStrategy;
460
+ winner?: AgentResponse;
461
+ merged?: string;
462
+ explanation: string;
463
+ successful: boolean;
464
+ escalated: boolean;
465
+ resolved: Date;
466
+ }
467
+ interface ConflictResolverConfig {
468
+ defaultStrategy?: ResolutionStrategy;
469
+ autoResolveThreshold?: number;
470
+ autoDetect?: boolean;
471
+ escalateOnRepeated?: number;
472
+ trackHistory?: boolean;
473
+ }
474
+ declare class ConflictResolver {
475
+ private readonly config;
476
+ private readonly history;
477
+ private readonly conflictCounts;
478
+ private conflictCounter;
479
+ constructor(config?: ConflictResolverConfig);
480
+ detectConflict(responses: AgentResponse[], task: TaskConfig, context: ExecutionContext): Conflict | null;
481
+ resolve(conflict: Conflict, context: ExecutionContext, strategy?: ResolutionStrategy): Promise<Resolution>;
482
+ private createConflict;
483
+ private detectDisagreement;
484
+ private detectContradiction;
485
+ private areContradictory;
486
+ private resolveByConfidence;
487
+ private resolveByNewest;
488
+ private normalizeContent;
489
+ private resolveByVoting;
490
+ private resolveByAuthority;
491
+ private resolveByConsensus;
492
+ private resolveByMerge;
493
+ private escalate;
494
+ getHistory(conflictId?: string): Resolution[];
495
+ getStatistics(): {
496
+ totalConflicts: number;
497
+ byStrategy: Record<string, number>;
498
+ successRate: number;
499
+ escalationRate: number;
500
+ };
501
+ clear(): void;
502
+ }
503
+ declare function createConflictResolver(config?: ConflictResolverConfig): ConflictResolver;
504
+
505
+ type StepHandler = (context: WorkflowContext) => Promise<StepResult>;
506
+ type ConditionFn = (context: WorkflowContext) => boolean | Promise<boolean>;
507
+ interface StepDefinition {
508
+ type: 'step' | 'parallel' | 'conditional' | 'loop' | 'checkpoint';
509
+ config: WorkflowStepConfig | ParallelStepConfig | ConditionalStepConfig | LoopStepConfig;
510
+ handler?: StepHandler;
511
+ children?: StepDefinition[];
512
+ }
513
+ declare class BranchBuilder {
514
+ private readonly parent;
515
+ private readonly condition;
516
+ private thenSteps;
517
+ private elseSteps;
518
+ constructor(parent: WorkflowBuilder, condition: ConditionFn);
519
+ then(builder: (b: WorkflowBuilder) => WorkflowBuilder): BranchBuilder;
520
+ otherwise(builder: (b: WorkflowBuilder) => WorkflowBuilder): BranchBuilder;
521
+ endBranch(): WorkflowBuilder;
522
+ }
523
+ declare class LoopBuilder {
524
+ private readonly parent;
525
+ private readonly condition;
526
+ private bodySteps;
527
+ private maxIter;
528
+ constructor(parent: WorkflowBuilder, condition: ConditionFn);
529
+ do(builder: (b: WorkflowBuilder) => WorkflowBuilder): LoopBuilder;
530
+ maxIterations(max: number): LoopBuilder;
531
+ endLoop(): WorkflowBuilder;
532
+ }
533
+ declare class WorkflowBuilder {
534
+ private readonly name;
535
+ private description?;
536
+ private readonly steps;
537
+ private readonly stepHandlers;
538
+ private checkpointEnabled;
539
+ private checkpointInterval;
540
+ constructor(name: string);
541
+ describe(description: string): WorkflowBuilder;
542
+ addStep(name: string, handler: StepHandler, options?: Partial<WorkflowStepConfig>): WorkflowBuilder;
543
+ parallel(...steps: Array<{
544
+ name: string;
545
+ handler: StepHandler;
546
+ }>): WorkflowBuilder;
547
+ sequential(...steps: Array<{
548
+ name: string;
549
+ handler: StepHandler;
550
+ }>): WorkflowBuilder;
551
+ when(condition: ConditionFn): BranchBuilder;
552
+ while(condition: ConditionFn): LoopBuilder;
553
+ checkpoint(name: string): WorkflowBuilder;
554
+ enableCheckpoints(interval?: number | 'after-step'): WorkflowBuilder;
555
+ task(name: string, description: string, options?: {
556
+ agent?: string;
557
+ requiredCapabilities?: string[];
558
+ timeout?: number;
559
+ }): WorkflowBuilder;
560
+ crew(name: string, description: string, options?: {
561
+ tasks?: Array<{
562
+ description: string;
563
+ expectedOutput: string;
564
+ }>;
565
+ timeout?: number;
566
+ }): WorkflowBuilder;
567
+ addConditional(config: ConditionalStepConfig, thenSteps: StepDefinition[], elseSteps: StepDefinition[]): void;
568
+ addLoop(config: LoopStepConfig, bodySteps: StepDefinition[]): void;
569
+ getSteps(): StepDefinition[];
570
+ build(): WorkflowDefinition;
571
+ getHandler(stepName: string): StepHandler | undefined;
572
+ validate(): {
573
+ valid: boolean;
574
+ errors: string[];
575
+ };
576
+ }
577
+ declare function workflow(name: string): WorkflowBuilder;
578
+
579
+ interface DAGExecutorConfig {
580
+ maxParallel?: number;
581
+ defaultTimeout?: number;
582
+ retryOnFailure?: boolean;
583
+ maxRetries?: number;
584
+ enableCaching?: boolean;
585
+ }
586
+ interface NodeState {
587
+ status: 'pending' | 'running' | 'completed' | 'failed' | 'skipped';
588
+ result?: StepResult;
589
+ error?: string;
590
+ startTime?: Date;
591
+ endTime?: Date;
592
+ retries: number;
593
+ }
594
+ declare class DAGExecutor {
595
+ private readonly dag;
596
+ private readonly _handlers;
597
+ private readonly config;
598
+ private readonly nodeStates;
599
+ private readonly cache;
600
+ private aborted;
601
+ constructor(dag: DAG, handlers: Map<string, StepHandler>, config?: DAGExecutorConfig);
602
+ execute(context: ExecutionContext): Promise<DAGResult>;
603
+ executeStream(context: ExecutionContext): AsyncGenerator<DAGEvent>;
604
+ private executeNode;
605
+ private buildWorkflowContext;
606
+ private createTimeout;
607
+ private getReadyNodes;
608
+ private getDependentNodes;
609
+ private updateNodeState;
610
+ private isComplete;
611
+ private isSuccessful;
612
+ private getPendingCount;
613
+ abort(): void;
614
+ validate(): ValidationResult;
615
+ private detectCycle;
616
+ getState(): Map<string, NodeState>;
617
+ getStatistics(): {
618
+ totalNodes: number;
619
+ completed: number;
620
+ failed: number;
621
+ skipped: number;
622
+ pending: number;
623
+ running: number;
624
+ };
625
+ }
626
+ declare function createDAGFromSteps(steps: WorkflowStepConfig[], _handlers: Map<string, StepHandler>): DAG;
627
+ declare function createDAGExecutor(dag: DAG, handlers: Map<string, StepHandler>, config?: DAGExecutorConfig): DAGExecutor;
628
+
629
+ interface ParallelExecutionOptions {
630
+ maxConcurrency?: number;
631
+ taskTimeout?: number;
632
+ failFast?: boolean;
633
+ continueOnError?: boolean;
634
+ }
635
+ interface ParallelTaskResult {
636
+ taskId: string;
637
+ status: 'success' | 'failed' | 'timeout';
638
+ result?: TaskResult;
639
+ error?: string;
640
+ executionTimeMs: number;
641
+ }
642
+ interface BatchResult {
643
+ results: ParallelTaskResult[];
644
+ totalTimeMs: number;
645
+ successCount: number;
646
+ failureCount: number;
647
+ allSuccessful: boolean;
648
+ }
649
+ declare class ParallelExecutor {
650
+ private readonly options;
651
+ constructor(options?: ParallelExecutionOptions);
652
+ executeBatch(tasks: TaskConfig[], executor: (task: TaskConfig) => Promise<TaskResult>, _context?: ExecutionContext): Promise<BatchResult>;
653
+ executeWithAgents(tasks: TaskConfig[], agents: CrewAgent[], context: ExecutionContext): Promise<BatchResult>;
654
+ map<T, R>(items: T[], mapper: (item: T, index: number) => Promise<R>): Promise<Array<{
655
+ item: T;
656
+ result?: R;
657
+ error?: string;
658
+ }>>;
659
+ executeBatches<T, R>(items: T[], batchSize: number, processor: (batch: T[]) => Promise<R[]>): Promise<R[]>;
660
+ private createTimeout;
661
+ }
662
+ declare function createParallelExecutor(options?: ParallelExecutionOptions): ParallelExecutor;
663
+
664
+ interface CheckpointStorage {
665
+ save(checkpoint: WorkflowCheckpoint): Promise<string>;
666
+ load(checkpointId: string): Promise<WorkflowCheckpoint | null>;
667
+ list(workflowId: string): Promise<string[]>;
668
+ delete(checkpointId: string): Promise<void>;
669
+ deleteAll(workflowId: string): Promise<void>;
670
+ }
671
+ declare class InMemoryCheckpointStorage implements CheckpointStorage {
672
+ private readonly checkpoints;
673
+ save(checkpoint: WorkflowCheckpoint): Promise<string>;
674
+ load(checkpointId: string): Promise<WorkflowCheckpoint | null>;
675
+ list(workflowId: string): Promise<string[]>;
676
+ delete(checkpointId: string): Promise<void>;
677
+ deleteAll(workflowId: string): Promise<void>;
678
+ clear(): void;
679
+ }
680
+ interface CheckpointManagerConfig {
681
+ storage?: CheckpointStorage;
682
+ autoCheckpointInterval?: number | 'after-step';
683
+ maxCheckpoints?: number;
684
+ compress?: boolean;
685
+ }
686
+ declare class CheckpointManager {
687
+ private readonly storage;
688
+ private readonly config;
689
+ private autoCheckpointTimer?;
690
+ private stepCounter;
691
+ private currentWorkflowId?;
692
+ constructor(config?: CheckpointManagerConfig);
693
+ save(workflowId: string, state: WorkflowState): Promise<WorkflowCheckpoint>;
694
+ load(checkpointId: string): Promise<WorkflowCheckpoint | null>;
695
+ loadLatest(workflowId: string): Promise<WorkflowCheckpoint | null>;
696
+ delete(checkpointId: string): Promise<void>;
697
+ deleteAll(workflowId: string): Promise<void>;
698
+ list(workflowId: string): Promise<WorkflowCheckpoint[]>;
699
+ enableAutoCheckpoint(workflowId: string, getState: () => WorkflowState): void;
700
+ disableAutoCheckpoint(): void;
701
+ onStepComplete(workflowId: string, state: WorkflowState): Promise<void>;
702
+ restore(checkpointId: string): Promise<WorkflowState | null>;
703
+ private cleanupOldCheckpoints;
704
+ export(workflowId: string): Promise<string>;
705
+ import(data: string): Promise<number>;
706
+ getStatistics(workflowId: string): Promise<CheckpointStatistics>;
707
+ }
708
+ interface WorkflowState {
709
+ currentStepIndex: number;
710
+ stepResults: Map<string, StepResult>;
711
+ variables: Map<string, unknown>;
712
+ metadata?: Record<string, unknown>;
713
+ }
714
+ interface CheckpointStatistics {
715
+ checkpointCount: number;
716
+ estimatedSizeBytes: number;
717
+ oldestCheckpoint: Date | null;
718
+ newestCheckpoint: Date | null;
719
+ }
720
+ declare function createCheckpointManager(config?: CheckpointManagerConfig): CheckpointManager;
721
+
722
+ interface MemoryChangeEvent {
723
+ type: 'set' | 'delete' | 'clear';
724
+ key?: string;
725
+ value?: unknown;
726
+ previousValue?: unknown;
727
+ agent?: string;
728
+ timestamp: Date;
729
+ }
730
+ interface MemoryNamespace {
731
+ name: string;
732
+ data: Map<string, unknown>;
733
+ created: Date;
734
+ lastAccessed: Date;
735
+ }
736
+ interface SharedMemoryConfig {
737
+ maxEntriesPerNamespace?: number;
738
+ trackHistory?: boolean;
739
+ maxHistoryEntries?: number;
740
+ persist?: boolean;
741
+ }
742
+ declare class SharedMemory extends EventEmitter<{
743
+ change: (event: MemoryChangeEvent) => void;
744
+ namespaceCreated: (name: string) => void;
745
+ namespaceDeleted: (name: string) => void;
746
+ }> {
747
+ private readonly namespaces;
748
+ private readonly agentNamespaces;
749
+ private readonly history;
750
+ private readonly config;
751
+ constructor(config?: SharedMemoryConfig);
752
+ setShared(key: string, value: unknown, agent?: string): void;
753
+ getShared<T>(key: string): T | undefined;
754
+ deleteShared(key: string, agent?: string): boolean;
755
+ hasShared(key: string): boolean;
756
+ getSharedKeys(): string[];
757
+ setForAgent(agentName: string, key: string, value: unknown): void;
758
+ getForAgent<T>(agentName: string, key: string): T | undefined;
759
+ deleteForAgent(agentName: string, key: string): boolean;
760
+ getAgentKeys(agentName: string): string[];
761
+ clearAgent(agentName: string): void;
762
+ broadcast(key: string, value: unknown, fromAgent?: string): void;
763
+ createNamespace(name: string): MemoryNamespace;
764
+ deleteNamespace(name: string): boolean;
765
+ clearNamespace(name: string, agent?: string): void;
766
+ getNamespaces(): string[];
767
+ set(namespace: string, key: string, value: unknown, agent?: string): void;
768
+ get<T>(namespace: string, key: string): T | undefined;
769
+ delete(namespace: string, key: string, agent?: string): boolean;
770
+ has(namespace: string, key: string): boolean;
771
+ getKeys(namespace: string): string[];
772
+ private addToHistory;
773
+ getHistory(filter?: {
774
+ agent?: string;
775
+ key?: string;
776
+ type?: 'set' | 'delete' | 'clear';
777
+ since?: Date;
778
+ }): MemoryChangeEvent[];
779
+ clearHistory(): void;
780
+ export(): Record<string, Record<string, unknown>>;
781
+ import(data: Record<string, Record<string, unknown>>): void;
782
+ clear(): void;
783
+ getStatistics(): {
784
+ totalNamespaces: number;
785
+ totalEntries: number;
786
+ entriesByNamespace: Record<string, number>;
787
+ historyEntries: number;
788
+ };
789
+ }
790
+ declare function createSharedMemory(config?: SharedMemoryConfig): SharedMemory;
791
+
792
+ type MessageRole = 'user' | 'assistant' | 'system' | 'tool';
793
+ interface ConversationMessage {
794
+ id: string;
795
+ role: MessageRole;
796
+ content: string;
797
+ agentName?: string;
798
+ timestamp: Date;
799
+ metadata?: {
800
+ toolCall?: {
801
+ name: string;
802
+ input: unknown;
803
+ output?: unknown;
804
+ };
805
+ tokens?: number;
806
+ model?: string;
807
+ taskId?: string;
808
+ };
809
+ }
810
+ interface MultiAgentMessage extends ConversationMessage {
811
+ agentName: string;
812
+ replyTo?: string;
813
+ threadId?: string;
814
+ }
815
+ interface ConversationThread {
816
+ id: string;
817
+ title?: string;
818
+ participants: string[];
819
+ messages: MultiAgentMessage[];
820
+ created: Date;
821
+ lastActivity: Date;
822
+ }
823
+ interface ConversationHistoryConfig {
824
+ maxMessagesPerAgent?: number;
825
+ maxTotalMessages?: number;
826
+ enableThreads?: boolean;
827
+ autoSummarize?: boolean;
828
+ }
829
+ declare class ConversationHistory {
830
+ private readonly agentMessages;
831
+ private readonly threads;
832
+ private readonly allMessages;
833
+ private readonly config;
834
+ private currentThreadId?;
835
+ constructor(config?: ConversationHistoryConfig);
836
+ addMessage(agentName: string, message: Omit<ConversationMessage, 'id' | 'timestamp'>): MultiAgentMessage;
837
+ addUserMessage(content: string, agentName?: string): MultiAgentMessage;
838
+ addAssistantMessage(agentName: string, content: string, metadata?: ConversationMessage['metadata']): MultiAgentMessage;
839
+ addSystemMessage(agentName: string, content: string): MultiAgentMessage;
840
+ addToolMessage(agentName: string, toolName: string, input: unknown, output: unknown): MultiAgentMessage;
841
+ getAgentHistory(agentName: string, options?: {
842
+ limit?: number;
843
+ since?: Date;
844
+ role?: MessageRole;
845
+ }): ConversationMessage[];
846
+ getFullHistory(options?: {
847
+ limit?: number;
848
+ since?: Date;
849
+ agents?: string[];
850
+ }): MultiAgentMessage[];
851
+ getConversation(agent1: string, agent2: string, limit?: number): MultiAgentMessage[];
852
+ getRecent(count?: number): MultiAgentMessage[];
853
+ searchHistory(query: string, options?: {
854
+ limit?: number;
855
+ agent?: string;
856
+ caseSensitive?: boolean;
857
+ }): MultiAgentMessage[];
858
+ createThread(title?: string, participants?: string[]): ConversationThread;
859
+ switchThread(threadId: string): boolean;
860
+ getCurrentThread(): ConversationThread | undefined;
861
+ getThread(threadId: string): ConversationThread | undefined;
862
+ getThreads(): ConversationThread[];
863
+ deleteThread(threadId: string): boolean;
864
+ buildAgentContext(agentName: string, maxMessages?: number): ConversationMessage[];
865
+ buildLLMContext(agentName: string, options?: {
866
+ maxMessages?: number;
867
+ includeSystem?: boolean;
868
+ includeTools?: boolean;
869
+ }): Array<{
870
+ role: string;
871
+ content: string;
872
+ }>;
873
+ summarize(messages: ConversationMessage[]): string;
874
+ getParticipants(): string[];
875
+ getMessageCount(agentName?: string): number;
876
+ clear(): void;
877
+ clearAgent(agentName: string): void;
878
+ export(): {
879
+ messages: MultiAgentMessage[];
880
+ threads: ConversationThread[];
881
+ };
882
+ import(data: {
883
+ messages: MultiAgentMessage[];
884
+ threads?: ConversationThread[];
885
+ }): void;
886
+ getStatistics(): {
887
+ totalMessages: number;
888
+ messagesByAgent: Record<string, number>;
889
+ messagesByRole: Record<string, number>;
890
+ totalThreads: number;
891
+ averageMessagesPerAgent: number;
892
+ };
893
+ }
894
+ declare function createConversationHistory(config?: ConversationHistoryConfig): ConversationHistory;
895
+
896
+ type KnowledgeType = 'fact' | 'procedure' | 'concept' | 'example' | 'rule' | 'definition' | 'insight' | 'warning';
897
+ interface KnowledgeItem {
898
+ id: string;
899
+ type: KnowledgeType;
900
+ title: string;
901
+ content: string;
902
+ tags: string[];
903
+ source?: string;
904
+ contributor?: string;
905
+ confidence: number;
906
+ references?: string[];
907
+ created: Date;
908
+ updated: Date;
909
+ accessCount: number;
910
+ metadata?: Record<string, unknown>;
911
+ }
912
+ interface KnowledgeQueryOptions {
913
+ type?: KnowledgeType;
914
+ tags?: string[];
915
+ contributor?: string;
916
+ minConfidence?: number;
917
+ limit?: number;
918
+ sortBy?: 'relevance' | 'recency' | 'confidence' | 'access';
919
+ }
920
+ interface KnowledgeBaseConfig {
921
+ maxItems?: number;
922
+ autoIndex?: boolean;
923
+ minConfidence?: number;
924
+ deduplicate?: boolean;
925
+ }
926
+ declare class KnowledgeBase {
927
+ private readonly items;
928
+ private readonly tagIndex;
929
+ private readonly typeIndex;
930
+ private readonly contributorIndex;
931
+ private readonly config;
932
+ constructor(config?: KnowledgeBaseConfig);
933
+ add(item: Omit<KnowledgeItem, 'id' | 'created' | 'updated' | 'accessCount'>): KnowledgeItem;
934
+ get(id: string): KnowledgeItem | undefined;
935
+ update(id: string, updates: Partial<Omit<KnowledgeItem, 'id' | 'created' | 'accessCount'>>): KnowledgeItem;
936
+ delete(id: string): boolean;
937
+ search(query: string, options?: KnowledgeQueryOptions): KnowledgeItem[];
938
+ getByTag(tag: string, limit?: number): KnowledgeItem[];
939
+ getByType(type: KnowledgeType, limit?: number): KnowledgeItem[];
940
+ getByContributor(contributor: string, limit?: number): KnowledgeItem[];
941
+ getRelated(id: string, limit?: number): KnowledgeItem[];
942
+ contributeKnowledge(agentName: string, type: KnowledgeType, title: string, content: string, tags?: string[], confidence?: number): KnowledgeItem;
943
+ addFact(title: string, content: string, tags?: string[], source?: string): KnowledgeItem;
944
+ addProcedure(title: string, steps: string[], tags?: string[]): KnowledgeItem;
945
+ addInsight(title: string, content: string, contributor: string, tags?: string[]): KnowledgeItem;
946
+ addWarning(title: string, content: string, tags?: string[]): KnowledgeItem;
947
+ private indexItem;
948
+ private unindexItem;
949
+ private textSearch;
950
+ private sortResults;
951
+ private findDuplicate;
952
+ private evictLeastUsed;
953
+ getTags(): string[];
954
+ getTypes(): KnowledgeType[];
955
+ getContributors(): string[];
956
+ getAll(): KnowledgeItem[];
957
+ getCount(): number;
958
+ clear(): void;
959
+ export(): KnowledgeItem[];
960
+ import(items: KnowledgeItem[]): number;
961
+ getStatistics(): {
962
+ totalItems: number;
963
+ itemsByType: Record<string, number>;
964
+ itemsByContributor: Record<string, number>;
965
+ totalTags: number;
966
+ averageConfidence: number;
967
+ mostUsedTags: Array<{
968
+ tag: string;
969
+ count: number;
970
+ }>;
971
+ };
972
+ }
973
+ declare function createKnowledgeBase(config?: KnowledgeBaseConfig): KnowledgeBase;
974
+
975
+ export { AgentExecutionResult, AgentRegistry, type AgentRegistryConfig, type AgentResponse, AuctionStrategy, BaseDelegationStrategy, type BatchResult, BestMatchStrategy, BranchBuilder, CapableAgent, CheckpointManager, type CheckpointManagerConfig, type CheckpointStatistics, type CheckpointStorage, type CollaborationChannel, type CollaborationConfig, CollaborationManager, type CollaborationMessage, type CollaborationMessageType, type ConditionFn, ConditionalStepConfig, type Conflict, ConflictResolver, type ConflictResolverConfig, type ConflictType, ConsensusStrategy, ConversationHistory, type ConversationHistoryConfig, type ConversationMessage, type ConversationThread, CoreLLMProvider, CrewAgent, CrewAgentConfig, DAG, DAGEvent, DAGExecutor, type DAGExecutorConfig, DAGResult, DelegationCoordinator, type DelegationCoordinatorConfig, DelegationError, type DelegationFailure, type DelegationHistoryEntry, type DelegationResult, type DelegationStrategy, DelegationStrategyType, ExecutionContext, HierarchicalStrategy, InMemoryCheckpointStorage, type Knowledge, KnowledgeBase, type KnowledgeBaseConfig, type KnowledgeItem, type KnowledgeQueryOptions, type KnowledgeType, LoopBuilder, LoopStepConfig, type MemoryChangeEvent, type MemoryNamespace, type MessageRole, type MultiAgentMessage, type ParallelExecutionOptions, ParallelExecutor, ParallelStepConfig, type ParallelTaskResult, RankedAgent, type RegisteredAgent, type Resolution, type ResolutionStrategy, RoundRobinStrategy, STRATEGY_TYPES, SharedMemory, type SharedMemoryConfig, type StepHandler, Task, TaskBid, TaskConfig, TaskPriority, TaskQueue, type TaskQueueConfig, type TaskQueueStats, TaskResult, TaskStatus, ValidationResult, WorkflowBuilder, WorkflowCheckpoint, WorkflowContext, WorkflowDefinition, type WorkflowState, WorkflowStepConfig, createAgentRegistry, createAuctionStrategy, createBestMatchStrategy, createCheckpointManager, createCollaborationManager, createConflictResolver, createConsensusStrategy, createConversationHistory, createCoreExecutor, createDAGExecutor, createDAGFromSteps, createDelegationCoordinator, createHierarchicalStrategy, createKnowledgeBase, createParallelExecutor, createRoundRobinStrategy, createSharedMemory, createStrategy, createTaskQueue, workflow };