@weavelogic/knowledge-graph-agent 0.6.0 → 0.7.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.
Files changed (219) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +70 -3
  3. package/dist/_virtual/__vite-browser-external.js +2 -2
  4. package/dist/_virtual/__vite-browser-external.js.map +1 -1
  5. package/dist/_virtual/index12.js +7 -0
  6. package/dist/_virtual/index12.js.map +1 -0
  7. package/dist/_virtual/ort-web.min.js +8 -0
  8. package/dist/_virtual/ort-web.min.js.map +1 -0
  9. package/dist/_virtual/ort-web.min2.js +5 -0
  10. package/dist/_virtual/ort-web.min2.js.map +1 -0
  11. package/dist/agents/base-agent.d.ts +63 -0
  12. package/dist/agents/base-agent.d.ts.map +1 -1
  13. package/dist/agents/base-agent.js +139 -0
  14. package/dist/agents/base-agent.js.map +1 -1
  15. package/dist/agents/coordinator-agent.d.ts +422 -0
  16. package/dist/agents/coordinator-agent.d.ts.map +1 -0
  17. package/dist/agents/documenter-agent.d.ts +298 -0
  18. package/dist/agents/documenter-agent.d.ts.map +1 -0
  19. package/dist/agents/index.d.ts +11 -1
  20. package/dist/agents/index.d.ts.map +1 -1
  21. package/dist/agents/index.js +4 -0
  22. package/dist/agents/index.js.map +1 -1
  23. package/dist/agents/mixins/index.d.ts +9 -0
  24. package/dist/agents/mixins/index.d.ts.map +1 -0
  25. package/dist/agents/mixins/trajectory-mixin.d.ts +112 -0
  26. package/dist/agents/mixins/trajectory-mixin.d.ts.map +1 -0
  27. package/dist/agents/optimizer-agent.d.ts +388 -0
  28. package/dist/agents/optimizer-agent.d.ts.map +1 -0
  29. package/dist/agents/planner-agent.d.ts +395 -0
  30. package/dist/agents/planner-agent.d.ts.map +1 -0
  31. package/dist/agents/registry.d.ts.map +1 -1
  32. package/dist/agents/registry.js +5 -0
  33. package/dist/agents/registry.js.map +1 -1
  34. package/dist/agents/reviewer-agent.d.ts +330 -0
  35. package/dist/agents/reviewer-agent.d.ts.map +1 -0
  36. package/dist/agents/types.d.ts +12 -1
  37. package/dist/agents/types.d.ts.map +1 -1
  38. package/dist/agents/types.js +1 -0
  39. package/dist/agents/types.js.map +1 -1
  40. package/dist/cli/commands/hive-mind/add-frontmatter.d.ts +102 -0
  41. package/dist/cli/commands/hive-mind/add-frontmatter.d.ts.map +1 -0
  42. package/dist/cli/commands/hive-mind/add-frontmatter.js +439 -0
  43. package/dist/cli/commands/hive-mind/add-frontmatter.js.map +1 -0
  44. package/dist/cli/commands/hive-mind/analyze-links.d.ts +80 -0
  45. package/dist/cli/commands/hive-mind/analyze-links.d.ts.map +1 -0
  46. package/dist/cli/commands/hive-mind/analyze-links.js +367 -0
  47. package/dist/cli/commands/hive-mind/analyze-links.js.map +1 -0
  48. package/dist/cli/commands/hive-mind/find-connections.d.ts +75 -0
  49. package/dist/cli/commands/hive-mind/find-connections.d.ts.map +1 -0
  50. package/dist/cli/commands/hive-mind/find-connections.js +347 -0
  51. package/dist/cli/commands/hive-mind/find-connections.js.map +1 -0
  52. package/dist/cli/commands/hive-mind/index.d.ts +37 -0
  53. package/dist/cli/commands/hive-mind/index.d.ts.map +1 -0
  54. package/dist/cli/commands/hive-mind/index.js +33 -0
  55. package/dist/cli/commands/hive-mind/index.js.map +1 -0
  56. package/dist/cli/commands/hive-mind/validate-names.d.ts +79 -0
  57. package/dist/cli/commands/hive-mind/validate-names.d.ts.map +1 -0
  58. package/dist/cli/commands/hive-mind/validate-names.js +353 -0
  59. package/dist/cli/commands/hive-mind/validate-names.js.map +1 -0
  60. package/dist/cli/commands/vector.js +2 -0
  61. package/dist/cli/commands/vector.js.map +1 -1
  62. package/dist/cli/index.d.ts.map +1 -1
  63. package/dist/cli/index.js +7 -0
  64. package/dist/cli/index.js.map +1 -1
  65. package/dist/equilibrium/agent-equilibrium.d.ts +194 -0
  66. package/dist/equilibrium/agent-equilibrium.d.ts.map +1 -0
  67. package/dist/equilibrium/agent-equilibrium.js +304 -0
  68. package/dist/equilibrium/agent-equilibrium.js.map +1 -0
  69. package/dist/equilibrium/graph-equilibrium.d.ts +177 -0
  70. package/dist/equilibrium/graph-equilibrium.d.ts.map +1 -0
  71. package/dist/equilibrium/index.d.ts +11 -0
  72. package/dist/equilibrium/index.d.ts.map +1 -0
  73. package/dist/equilibrium/memory-equilibrium.d.ts +153 -0
  74. package/dist/equilibrium/memory-equilibrium.d.ts.map +1 -0
  75. package/dist/graphql/resolvers/index.d.ts.map +1 -1
  76. package/dist/graphql/resolvers/queries.d.ts +11 -0
  77. package/dist/graphql/resolvers/queries.d.ts.map +1 -1
  78. package/dist/index.d.ts +2 -0
  79. package/dist/index.d.ts.map +1 -1
  80. package/dist/index.js +10 -4
  81. package/dist/index.js.map +1 -1
  82. package/dist/inference/index.d.ts +9 -0
  83. package/dist/inference/index.d.ts.map +1 -0
  84. package/dist/inference/model-selection.d.ts +131 -0
  85. package/dist/inference/model-selection.d.ts.map +1 -0
  86. package/dist/integrations/agentic-flow/adapters/agent-booster-adapter.d.ts +265 -0
  87. package/dist/integrations/agentic-flow/adapters/agent-booster-adapter.d.ts.map +1 -0
  88. package/dist/integrations/agentic-flow/adapters/agentdb-adapter.d.ts +197 -0
  89. package/dist/integrations/agentic-flow/adapters/agentdb-adapter.d.ts.map +1 -0
  90. package/dist/integrations/agentic-flow/adapters/agentdb-vector-store.d.ts +249 -0
  91. package/dist/integrations/agentic-flow/adapters/agentdb-vector-store.d.ts.map +1 -0
  92. package/dist/integrations/agentic-flow/adapters/base-adapter.d.ts +120 -0
  93. package/dist/integrations/agentic-flow/adapters/base-adapter.d.ts.map +1 -0
  94. package/dist/integrations/agentic-flow/adapters/federation-hub-adapter.d.ts +444 -0
  95. package/dist/integrations/agentic-flow/adapters/federation-hub-adapter.d.ts.map +1 -0
  96. package/dist/integrations/agentic-flow/adapters/index.d.ts +17 -0
  97. package/dist/integrations/agentic-flow/adapters/index.d.ts.map +1 -0
  98. package/dist/integrations/agentic-flow/adapters/model-router-adapter.d.ts +242 -0
  99. package/dist/integrations/agentic-flow/adapters/model-router-adapter.d.ts.map +1 -0
  100. package/dist/integrations/agentic-flow/adapters/quic-transport-adapter.d.ts +364 -0
  101. package/dist/integrations/agentic-flow/adapters/quic-transport-adapter.d.ts.map +1 -0
  102. package/dist/integrations/agentic-flow/adapters/reasoning-bank-adapter.d.ts +209 -0
  103. package/dist/integrations/agentic-flow/adapters/reasoning-bank-adapter.d.ts.map +1 -0
  104. package/dist/integrations/agentic-flow/benchmark/index.d.ts +9 -0
  105. package/dist/integrations/agentic-flow/benchmark/index.d.ts.map +1 -0
  106. package/dist/integrations/agentic-flow/benchmark/vector-benchmark.d.ts +253 -0
  107. package/dist/integrations/agentic-flow/benchmark/vector-benchmark.d.ts.map +1 -0
  108. package/dist/integrations/agentic-flow/config.d.ts +109 -0
  109. package/dist/integrations/agentic-flow/config.d.ts.map +1 -0
  110. package/dist/integrations/agentic-flow/feature-flags.d.ts +140 -0
  111. package/dist/integrations/agentic-flow/feature-flags.d.ts.map +1 -0
  112. package/dist/integrations/agentic-flow/index.d.ts +22 -0
  113. package/dist/integrations/agentic-flow/index.d.ts.map +1 -0
  114. package/dist/integrations/agentic-flow/migration/index.d.ts +9 -0
  115. package/dist/integrations/agentic-flow/migration/index.d.ts.map +1 -0
  116. package/dist/integrations/agentic-flow/migration/migrate-to-agentdb.d.ts +242 -0
  117. package/dist/integrations/agentic-flow/migration/migrate-to-agentdb.d.ts.map +1 -0
  118. package/dist/learning/index.d.ts +91 -0
  119. package/dist/learning/index.d.ts.map +1 -0
  120. package/dist/learning/learning-loop.d.ts +176 -0
  121. package/dist/learning/learning-loop.d.ts.map +1 -0
  122. package/dist/learning/services/ab-testing-framework.d.ts +135 -0
  123. package/dist/learning/services/ab-testing-framework.d.ts.map +1 -0
  124. package/dist/learning/services/agent-priming-service.d.ts +207 -0
  125. package/dist/learning/services/agent-priming-service.d.ts.map +1 -0
  126. package/dist/learning/services/daily-log-generator.d.ts +113 -0
  127. package/dist/learning/services/daily-log-generator.d.ts.map +1 -0
  128. package/dist/learning/services/index.d.ts +14 -0
  129. package/dist/learning/services/index.d.ts.map +1 -0
  130. package/dist/learning/services/memory-extraction-service.d.ts +87 -0
  131. package/dist/learning/services/memory-extraction-service.d.ts.map +1 -0
  132. package/dist/learning/services/task-completion-consumer.d.ts +162 -0
  133. package/dist/learning/services/task-completion-consumer.d.ts.map +1 -0
  134. package/dist/learning/services/trajectory-tracker.d.ts +174 -0
  135. package/dist/learning/services/trajectory-tracker.d.ts.map +1 -0
  136. package/dist/learning/types.d.ts +516 -0
  137. package/dist/learning/types.d.ts.map +1 -0
  138. package/dist/mcp/clients/claude-flow-memory-client.d.ts +259 -0
  139. package/dist/mcp/clients/claude-flow-memory-client.d.ts.map +1 -0
  140. package/dist/mcp/clients/claude-flow-memory-client.js +305 -0
  141. package/dist/mcp/clients/claude-flow-memory-client.js.map +1 -0
  142. package/dist/mcp/clients/index.d.ts +11 -0
  143. package/dist/mcp/clients/index.d.ts.map +1 -0
  144. package/dist/mcp/clients/mcp-client-adapter.d.ts +146 -0
  145. package/dist/mcp/clients/mcp-client-adapter.d.ts.map +1 -0
  146. package/dist/mcp/clients/mcp-client-adapter.js +372 -0
  147. package/dist/mcp/clients/mcp-client-adapter.js.map +1 -0
  148. package/dist/mcp/index.d.ts +10 -0
  149. package/dist/mcp/index.d.ts.map +1 -0
  150. package/dist/memory/vault-sync.d.ts +12 -0
  151. package/dist/memory/vault-sync.d.ts.map +1 -1
  152. package/dist/memory/vault-sync.js +94 -11
  153. package/dist/memory/vault-sync.js.map +1 -1
  154. package/dist/node_modules/@huggingface/jinja/dist/index.js +118 -0
  155. package/dist/node_modules/@huggingface/jinja/dist/index.js.map +1 -0
  156. package/dist/node_modules/@typescript-eslint/project-service/dist/index.js +1 -1
  157. package/dist/node_modules/@xenova/transformers/src/backends/onnx.js +24 -0
  158. package/dist/node_modules/@xenova/transformers/src/backends/onnx.js.map +1 -0
  159. package/dist/node_modules/@xenova/transformers/src/configs.js +52 -0
  160. package/dist/node_modules/@xenova/transformers/src/configs.js.map +1 -0
  161. package/dist/node_modules/@xenova/transformers/src/env.js +35 -0
  162. package/dist/node_modules/@xenova/transformers/src/env.js.map +1 -0
  163. package/dist/node_modules/@xenova/transformers/src/models.js +3852 -0
  164. package/dist/node_modules/@xenova/transformers/src/models.js.map +1 -0
  165. package/dist/node_modules/@xenova/transformers/src/tokenizers.js +144 -0
  166. package/dist/node_modules/@xenova/transformers/src/tokenizers.js.map +1 -0
  167. package/dist/node_modules/@xenova/transformers/src/utils/core.js +52 -0
  168. package/dist/node_modules/@xenova/transformers/src/utils/core.js.map +1 -0
  169. package/dist/node_modules/@xenova/transformers/src/utils/generation.js +623 -0
  170. package/dist/node_modules/@xenova/transformers/src/utils/generation.js.map +1 -0
  171. package/dist/node_modules/@xenova/transformers/src/utils/hub.js +395 -0
  172. package/dist/node_modules/@xenova/transformers/src/utils/hub.js.map +1 -0
  173. package/dist/node_modules/@xenova/transformers/src/utils/image.js +12 -0
  174. package/dist/node_modules/@xenova/transformers/src/utils/image.js.map +1 -0
  175. package/dist/node_modules/@xenova/transformers/src/utils/maths.js +89 -0
  176. package/dist/node_modules/@xenova/transformers/src/utils/maths.js.map +1 -0
  177. package/dist/node_modules/@xenova/transformers/src/utils/tensor.js +750 -0
  178. package/dist/node_modules/@xenova/transformers/src/utils/tensor.js.map +1 -0
  179. package/dist/node_modules/fdir/dist/index.js +13 -13
  180. package/dist/node_modules/fdir/dist/index.js.map +1 -1
  181. package/dist/node_modules/onnxruntime-common/dist/lib/backend-impl.js +67 -0
  182. package/dist/node_modules/onnxruntime-common/dist/lib/backend-impl.js.map +1 -0
  183. package/dist/node_modules/onnxruntime-common/dist/lib/env-impl.js +24 -0
  184. package/dist/node_modules/onnxruntime-common/dist/lib/env-impl.js.map +1 -0
  185. package/dist/node_modules/onnxruntime-common/dist/lib/env.js +6 -0
  186. package/dist/node_modules/onnxruntime-common/dist/lib/env.js.map +1 -0
  187. package/dist/node_modules/onnxruntime-common/dist/lib/index.js +11 -0
  188. package/dist/node_modules/onnxruntime-common/dist/lib/index.js.map +1 -0
  189. package/dist/node_modules/onnxruntime-common/dist/lib/inference-session-impl.js +162 -0
  190. package/dist/node_modules/onnxruntime-common/dist/lib/inference-session-impl.js.map +1 -0
  191. package/dist/node_modules/onnxruntime-common/dist/lib/inference-session.js +6 -0
  192. package/dist/node_modules/onnxruntime-common/dist/lib/inference-session.js.map +1 -0
  193. package/dist/node_modules/onnxruntime-common/dist/lib/tensor-impl.js +393 -0
  194. package/dist/node_modules/onnxruntime-common/dist/lib/tensor-impl.js.map +1 -0
  195. package/dist/node_modules/onnxruntime-common/dist/lib/tensor.js +6 -0
  196. package/dist/node_modules/onnxruntime-common/dist/lib/tensor.js.map +1 -0
  197. package/dist/node_modules/onnxruntime-web/dist/ort-web.min.js +12919 -0
  198. package/dist/node_modules/onnxruntime-web/dist/ort-web.min.js.map +1 -0
  199. package/dist/node_modules/tinyglobby/dist/index.js +14 -14
  200. package/dist/node_modules/tinyglobby/dist/index.js.map +1 -1
  201. package/dist/node_modules/typescript/lib/typescript.js +24 -24
  202. package/dist/node_modules/typescript/lib/typescript.js.map +1 -1
  203. package/dist/transport/agent-transport.d.ts +269 -0
  204. package/dist/transport/agent-transport.d.ts.map +1 -0
  205. package/dist/transport/index.d.ts +10 -0
  206. package/dist/transport/index.d.ts.map +1 -0
  207. package/dist/vector/index.d.ts +1 -1
  208. package/dist/vector/index.d.ts.map +1 -1
  209. package/dist/vector/services/embedding-service.d.ts +244 -0
  210. package/dist/vector/services/embedding-service.d.ts.map +1 -0
  211. package/dist/vector/services/embedding-service.js +10 -0
  212. package/dist/vector/services/embedding-service.js.map +1 -0
  213. package/dist/vector/services/hybrid-search.d.ts +320 -0
  214. package/dist/vector/services/hybrid-search.d.ts.map +1 -0
  215. package/dist/vector/services/hybrid-search.js +3 -0
  216. package/dist/vector/services/hybrid-search.js.map +1 -0
  217. package/dist/vector/services/index.d.ts +4 -0
  218. package/dist/vector/services/index.d.ts.map +1 -1
  219. package/package.json +10 -1
@@ -0,0 +1,422 @@
1
+ /**
2
+ * Coordinator Agent
3
+ *
4
+ * Orchestrates multi-agent workflows with dependency resolution,
5
+ * task distribution, and progress tracking. The most complex agent
6
+ * type that manages coordination between other agents.
7
+ *
8
+ * @module agents/coordinator-agent
9
+ */
10
+ import { BaseAgent } from './base-agent.js';
11
+ import { AgentType, TaskPriority, type AgentConfig, type AgentTask, type AgentResult } from './types.js';
12
+ import { AgentRegistry } from './registry.js';
13
+ /**
14
+ * Task assignment status
15
+ */
16
+ export type TaskAssignmentStatus = 'pending' | 'running' | 'completed' | 'failed' | 'cancelled';
17
+ /**
18
+ * Task distribution strategy
19
+ */
20
+ export type DistributionStrategy = 'round-robin' | 'capability-match' | 'load-balanced' | 'equilibrium';
21
+ /**
22
+ * Workflow step definition
23
+ */
24
+ export interface WorkflowStep {
25
+ /** Unique step identifier */
26
+ id: string;
27
+ /** Agent type to execute this step */
28
+ agentType: AgentType;
29
+ /** Task description */
30
+ task: string;
31
+ /** Input data for the step */
32
+ input: Record<string, unknown>;
33
+ /** Optional timeout in milliseconds */
34
+ timeout?: number;
35
+ /** Optional retry configuration */
36
+ retry?: {
37
+ maxRetries: number;
38
+ backoffMs: number;
39
+ };
40
+ /** Whether this step is optional (workflow continues if it fails) */
41
+ optional?: boolean;
42
+ }
43
+ /**
44
+ * Workflow definition
45
+ */
46
+ export interface WorkflowDefinition {
47
+ /** Unique workflow identifier */
48
+ id: string;
49
+ /** Human-readable workflow name */
50
+ name: string;
51
+ /** Workflow description */
52
+ description?: string;
53
+ /** Steps in the workflow */
54
+ steps: WorkflowStep[];
55
+ /** Dependencies between steps (stepId -> [dependsOn stepIds]) */
56
+ dependencies: Map<string, string[]>;
57
+ /** Whether steps without dependencies can run in parallel */
58
+ parallel: boolean;
59
+ /** Overall workflow timeout in milliseconds */
60
+ timeout?: number;
61
+ /** Workflow metadata */
62
+ metadata?: Record<string, unknown>;
63
+ }
64
+ /**
65
+ * Task assignment tracking
66
+ */
67
+ export interface TaskAssignment {
68
+ /** Task identifier */
69
+ taskId: string;
70
+ /** Assigned agent identifier */
71
+ agentId: string;
72
+ /** Agent type */
73
+ agentType: AgentType;
74
+ /** Current assignment status */
75
+ status: TaskAssignmentStatus;
76
+ /** Assignment timestamp */
77
+ assignedAt: Date;
78
+ /** Completion timestamp */
79
+ completedAt?: Date;
80
+ /** Result if completed */
81
+ result?: AgentResult;
82
+ /** Number of retries attempted */
83
+ retries: number;
84
+ /** Error message if failed */
85
+ error?: string;
86
+ }
87
+ /**
88
+ * Workflow step result
89
+ */
90
+ export interface StepResult {
91
+ /** Step identifier */
92
+ stepId: string;
93
+ /** Whether the step succeeded */
94
+ success: boolean;
95
+ /** Result data */
96
+ data?: unknown;
97
+ /** Error if failed */
98
+ error?: string;
99
+ /** Execution duration in milliseconds */
100
+ durationMs: number;
101
+ /** Agent that executed the step */
102
+ agentId?: string;
103
+ }
104
+ /**
105
+ * Workflow execution result
106
+ */
107
+ export interface WorkflowResult {
108
+ /** Workflow identifier */
109
+ workflowId: string;
110
+ /** Whether the workflow succeeded */
111
+ success: boolean;
112
+ /** Results from each step */
113
+ stepResults: Map<string, StepResult>;
114
+ /** Overall execution duration in milliseconds */
115
+ durationMs: number;
116
+ /** Timestamp when workflow started */
117
+ startedAt: Date;
118
+ /** Timestamp when workflow completed */
119
+ completedAt: Date;
120
+ /** Error message if workflow failed */
121
+ error?: string;
122
+ /** Final aggregated output */
123
+ output?: Record<string, unknown>;
124
+ }
125
+ /**
126
+ * Progress report for tracking workflow execution
127
+ */
128
+ export interface ProgressReport {
129
+ /** Active workflows count */
130
+ activeWorkflows: number;
131
+ /** Pending tasks count */
132
+ pendingTasks: number;
133
+ /** Running tasks count */
134
+ runningTasks: number;
135
+ /** Completed tasks count */
136
+ completedTasks: number;
137
+ /** Failed tasks count */
138
+ failedTasks: number;
139
+ /** Task assignments by workflow */
140
+ workflowProgress: Map<string, {
141
+ workflowId: string;
142
+ totalSteps: number;
143
+ completedSteps: number;
144
+ failedSteps: number;
145
+ progress: number;
146
+ }>;
147
+ /** Agent utilization */
148
+ agentUtilization: Map<string, {
149
+ agentId: string;
150
+ agentType: AgentType;
151
+ activeTasks: number;
152
+ completedTasks: number;
153
+ }>;
154
+ /** Report timestamp */
155
+ timestamp: Date;
156
+ }
157
+ /**
158
+ * Agent requirements for spawning
159
+ */
160
+ export interface AgentRequirement {
161
+ /** Agent type to spawn */
162
+ type: AgentType;
163
+ /** Required capabilities */
164
+ capabilities?: string[];
165
+ /** Number of instances to spawn */
166
+ count?: number;
167
+ /** Custom configuration */
168
+ config?: Partial<AgentConfig>;
169
+ }
170
+ /**
171
+ * Task for delegation
172
+ */
173
+ export interface DelegateTask {
174
+ /** Task description */
175
+ description: string;
176
+ /** Required capabilities */
177
+ requiredCapabilities?: string[];
178
+ /** Preferred agent type */
179
+ preferredType?: AgentType;
180
+ /** Task priority */
181
+ priority?: TaskPriority;
182
+ /** Task input */
183
+ input?: Record<string, unknown>;
184
+ /** Timeout in milliseconds */
185
+ timeout?: number;
186
+ }
187
+ /**
188
+ * Coordinator agent configuration
189
+ */
190
+ export interface CoordinatorAgentConfig extends AgentConfig {
191
+ type: AgentType.COORDINATOR;
192
+ /** Custom agent registry (uses default if not provided) */
193
+ registry?: AgentRegistry;
194
+ /** Default distribution strategy */
195
+ defaultStrategy?: DistributionStrategy;
196
+ /** Maximum concurrent workflows */
197
+ maxConcurrentWorkflows?: number;
198
+ /** Maximum concurrent tasks per workflow */
199
+ maxConcurrentTasksPerWorkflow?: number;
200
+ }
201
+ /**
202
+ * Coordinator task type
203
+ */
204
+ export type CoordinatorTaskType = 'orchestrate' | 'delegate' | 'spawn' | 'distribute' | 'progress';
205
+ /**
206
+ * Coordinator Agent
207
+ *
208
+ * Orchestrates multi-agent workflows with:
209
+ * - Workflow definition and execution
210
+ * - Dependency resolution via topological sort
211
+ * - Task distribution across agents
212
+ * - Progress tracking and reporting
213
+ * - Failure handling with retry/fallback
214
+ *
215
+ * @example
216
+ * ```typescript
217
+ * const coordinator = new CoordinatorAgent({
218
+ * name: 'coordinator-agent',
219
+ * type: AgentType.COORDINATOR,
220
+ * });
221
+ *
222
+ * // Define a workflow
223
+ * const workflow: WorkflowDefinition = {
224
+ * id: 'research-implement',
225
+ * name: 'Research and Implement',
226
+ * steps: [
227
+ * { id: 'research', agentType: AgentType.RESEARCHER, task: 'Research requirements', input: {} },
228
+ * { id: 'implement', agentType: AgentType.CODER, task: 'Implement feature', input: {} },
229
+ * { id: 'test', agentType: AgentType.TESTER, task: 'Write tests', input: {} },
230
+ * ],
231
+ * dependencies: new Map([
232
+ * ['implement', ['research']],
233
+ * ['test', ['implement']],
234
+ * ]),
235
+ * parallel: true,
236
+ * };
237
+ *
238
+ * const result = await coordinator.orchestrateWorkflow(workflow);
239
+ * ```
240
+ */
241
+ export declare class CoordinatorAgent extends BaseAgent {
242
+ /** Agent registry for managing agents */
243
+ private readonly agentRegistry;
244
+ /** Task assignment queue */
245
+ private readonly taskQueue;
246
+ /** Active workflow executions */
247
+ private readonly activeWorkflows;
248
+ /** Workflow results cache */
249
+ private readonly workflowResults;
250
+ /** Agent task counts for load balancing */
251
+ private readonly agentTaskCounts;
252
+ /** Round-robin index per agent type */
253
+ private readonly roundRobinIndex;
254
+ /** Default distribution strategy */
255
+ private readonly defaultStrategy;
256
+ /** Maximum concurrent workflows */
257
+ private readonly maxConcurrentWorkflows;
258
+ /** Maximum concurrent tasks per workflow */
259
+ private readonly maxConcurrentTasksPerWorkflow;
260
+ constructor(config: Partial<CoordinatorAgentConfig> & {
261
+ name: string;
262
+ });
263
+ /**
264
+ * Execute coordinator task
265
+ */
266
+ protected executeTask(task: AgentTask): Promise<AgentResult>;
267
+ /**
268
+ * Orchestrate a workflow definition
269
+ */
270
+ orchestrateWorkflow(workflow: WorkflowDefinition): Promise<WorkflowResult>;
271
+ /**
272
+ * Execute a single workflow step
273
+ */
274
+ private executeStep;
275
+ /**
276
+ * Resolve execution order using topological sort
277
+ */
278
+ private resolveExecutionOrder;
279
+ /**
280
+ * Validate workflow definition
281
+ */
282
+ private validateWorkflow;
283
+ /**
284
+ * Delegate a task to the best matching agent
285
+ */
286
+ delegateTask(task: DelegateTask): Promise<string>;
287
+ /**
288
+ * Execute an assigned task and update assignment status
289
+ */
290
+ private executeAssignedTask;
291
+ /**
292
+ * Spawn agents based on requirements
293
+ */
294
+ spawnAgents(requirements: AgentRequirement[]): Promise<string[]>;
295
+ /**
296
+ * Distribute tasks across agents using specified strategy
297
+ */
298
+ distributeTasks(tasks: DelegateTask[], strategy?: DistributionStrategy): Promise<TaskAssignment[]>;
299
+ /**
300
+ * Round-robin distribution strategy
301
+ */
302
+ private distributeRoundRobin;
303
+ /**
304
+ * Capability-match distribution strategy
305
+ */
306
+ private distributeCapabilityMatch;
307
+ /**
308
+ * Load-balanced distribution strategy
309
+ */
310
+ private distributeLoadBalanced;
311
+ /**
312
+ * Equilibrium-based distribution strategy (SPEC-006a)
313
+ *
314
+ * Uses Nash equilibrium game-theoretic selection where agents compete
315
+ * based on capability match and task fit. Dominated agents with lower
316
+ * effectiveness naturally collapse, leaving optimal selections.
317
+ *
318
+ * Automatically triggered when:
319
+ * - Strategy is explicitly 'equilibrium'
320
+ * - More than 3 agents available (higher competition benefits from equilibrium)
321
+ */
322
+ private distributeEquilibrium;
323
+ /**
324
+ * Distribute tasks across federation nodes for parallel execution
325
+ *
326
+ * Uses Federation Hub for distributed execution when enabled,
327
+ * providing 3-5x parallel speedup across multiple nodes.
328
+ *
329
+ * Falls back to local distribution when federation is not available.
330
+ *
331
+ * @param tasks - Tasks to distribute
332
+ * @returns Task assignments
333
+ */
334
+ distributeFederated(tasks: DelegateTask[]): Promise<TaskAssignment[]>;
335
+ /**
336
+ * Monitor a federated task and update assignment status
337
+ */
338
+ private monitorFederatedTask;
339
+ /**
340
+ * Get comprehensive progress report
341
+ */
342
+ getProgressReport(): Promise<ProgressReport>;
343
+ private handleOrchestrateTask;
344
+ private handleDelegateTask;
345
+ private handleSpawnTask;
346
+ private handleDistributeTask;
347
+ private handleProgressTask;
348
+ /**
349
+ * Find an existing agent or spawn a new one
350
+ */
351
+ private findOrSpawnAgent;
352
+ /**
353
+ * Find the best matching agent for a task
354
+ */
355
+ private findBestAgent;
356
+ /**
357
+ * Increment task count for an agent
358
+ */
359
+ private incrementAgentTaskCount;
360
+ /**
361
+ * Decrement task count for an agent
362
+ */
363
+ private decrementAgentTaskCount;
364
+ /**
365
+ * Get workflow result by ID
366
+ */
367
+ getWorkflowResult(workflowId: string): WorkflowResult | undefined;
368
+ /**
369
+ * Get task assignment by task ID
370
+ */
371
+ getTaskAssignment(taskId: string): TaskAssignment | undefined;
372
+ /**
373
+ * Cancel a pending task
374
+ */
375
+ cancelTask(taskId: string): boolean;
376
+ /**
377
+ * Clear completed and failed tasks from queue
378
+ */
379
+ clearCompletedTasks(): number;
380
+ /**
381
+ * Get coordinator statistics
382
+ */
383
+ getStatistics(): {
384
+ activeWorkflows: number;
385
+ totalTasksQueued: number;
386
+ tasksByStatus: Record<TaskAssignmentStatus, number>;
387
+ agentTaskCounts: Map<string, number>;
388
+ workflowsCompleted: number;
389
+ };
390
+ /**
391
+ * Cleanup on terminate
392
+ */
393
+ protected cleanup(): Promise<void>;
394
+ }
395
+ /**
396
+ * Create a new coordinator agent
397
+ */
398
+ export declare function createCoordinatorAgent(config: Partial<CoordinatorAgentConfig> & {
399
+ name: string;
400
+ }): CoordinatorAgent;
401
+ /**
402
+ * Create a workflow definition
403
+ */
404
+ export declare function createWorkflow(id: string, name: string, steps: WorkflowStep[], options?: {
405
+ description?: string;
406
+ dependencies?: Map<string, string[]> | [string, string[]][];
407
+ parallel?: boolean;
408
+ timeout?: number;
409
+ metadata?: Record<string, unknown>;
410
+ }): WorkflowDefinition;
411
+ /**
412
+ * Create a workflow step
413
+ */
414
+ export declare function createWorkflowStep(id: string, agentType: AgentType, task: string, input?: Record<string, unknown>, options?: {
415
+ timeout?: number;
416
+ retry?: {
417
+ maxRetries: number;
418
+ backoffMs: number;
419
+ };
420
+ optional?: boolean;
421
+ }): WorkflowStep;
422
+ //# sourceMappingURL=coordinator-agent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coordinator-agent.d.ts","sourceRoot":"","sources":["../../src/agents/coordinator-agent.ts"],"names":[],"mappings":"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"}