agentic-qe 2.5.10 → 2.6.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 (371) hide show
  1. package/.claude/agents/qe-code-intelligence.md +359 -0
  2. package/CHANGELOG.md +146 -0
  3. package/README.md +3 -2
  4. package/dist/agents/BaseAgent.d.ts +48 -0
  5. package/dist/agents/BaseAgent.d.ts.map +1 -1
  6. package/dist/agents/BaseAgent.js +126 -0
  7. package/dist/agents/BaseAgent.js.map +1 -1
  8. package/dist/agents/CodeIntelligenceAgent.d.ts +133 -0
  9. package/dist/agents/CodeIntelligenceAgent.d.ts.map +1 -0
  10. package/dist/agents/CodeIntelligenceAgent.js +473 -0
  11. package/dist/agents/CodeIntelligenceAgent.js.map +1 -0
  12. package/dist/agents/context/ContextCache.d.ts +105 -0
  13. package/dist/agents/context/ContextCache.d.ts.map +1 -0
  14. package/dist/agents/context/ContextCache.js +235 -0
  15. package/dist/agents/context/ContextCache.js.map +1 -0
  16. package/dist/agents/context/ContextFormatter.d.ts +92 -0
  17. package/dist/agents/context/ContextFormatter.d.ts.map +1 -0
  18. package/dist/agents/context/ContextFormatter.js +338 -0
  19. package/dist/agents/context/ContextFormatter.js.map +1 -0
  20. package/dist/agents/context/GraphExpander.d.ts +87 -0
  21. package/dist/agents/context/GraphExpander.d.ts.map +1 -0
  22. package/dist/agents/context/GraphExpander.js +215 -0
  23. package/dist/agents/context/GraphExpander.js.map +1 -0
  24. package/dist/agents/context/KnowledgeGraphContextBuilder.d.ts +160 -0
  25. package/dist/agents/context/KnowledgeGraphContextBuilder.d.ts.map +1 -0
  26. package/dist/agents/context/KnowledgeGraphContextBuilder.js +300 -0
  27. package/dist/agents/context/KnowledgeGraphContextBuilder.js.map +1 -0
  28. package/dist/agents/context/index.d.ts +15 -0
  29. package/dist/agents/context/index.d.ts.map +1 -0
  30. package/dist/agents/context/index.js +18 -0
  31. package/dist/agents/context/index.js.map +1 -0
  32. package/dist/agents/index.d.ts +1 -0
  33. package/dist/agents/index.d.ts.map +1 -1
  34. package/dist/agents/index.js +67 -3
  35. package/dist/agents/index.js.map +1 -1
  36. package/dist/agents/pool/AgentPool.d.ts +112 -0
  37. package/dist/agents/pool/AgentPool.d.ts.map +1 -0
  38. package/dist/agents/pool/AgentPool.js +573 -0
  39. package/dist/agents/pool/AgentPool.js.map +1 -0
  40. package/dist/agents/pool/QEAgentPoolFactory.d.ts +118 -0
  41. package/dist/agents/pool/QEAgentPoolFactory.d.ts.map +1 -0
  42. package/dist/agents/pool/QEAgentPoolFactory.js +251 -0
  43. package/dist/agents/pool/QEAgentPoolFactory.js.map +1 -0
  44. package/dist/agents/pool/index.d.ts +34 -0
  45. package/dist/agents/pool/index.d.ts.map +1 -0
  46. package/dist/agents/pool/index.js +44 -0
  47. package/dist/agents/pool/index.js.map +1 -0
  48. package/dist/agents/pool/types.d.ts +227 -0
  49. package/dist/agents/pool/types.d.ts.map +1 -0
  50. package/dist/agents/pool/types.js +28 -0
  51. package/dist/agents/pool/types.js.map +1 -0
  52. package/dist/cli/commands/knowledge-graph.d.ts +112 -0
  53. package/dist/cli/commands/knowledge-graph.d.ts.map +1 -0
  54. package/dist/cli/commands/knowledge-graph.js +466 -0
  55. package/dist/cli/commands/knowledge-graph.js.map +1 -0
  56. package/dist/cli/formatters/KGOutputFormatter.d.ts +50 -0
  57. package/dist/cli/formatters/KGOutputFormatter.d.ts.map +1 -0
  58. package/dist/cli/formatters/KGOutputFormatter.js +237 -0
  59. package/dist/cli/formatters/KGOutputFormatter.js.map +1 -0
  60. package/dist/cli/index-working.js +138 -0
  61. package/dist/cli/index-working.js.map +1 -1
  62. package/dist/cli/init/claude-config.d.ts +13 -1
  63. package/dist/cli/init/claude-config.d.ts.map +1 -1
  64. package/dist/cli/init/claude-config.js +70 -8
  65. package/dist/cli/init/claude-config.js.map +1 -1
  66. package/dist/cli/init/code-intelligence-init.d.ts +52 -0
  67. package/dist/cli/init/code-intelligence-init.d.ts.map +1 -0
  68. package/dist/cli/init/code-intelligence-init.js +250 -0
  69. package/dist/cli/init/code-intelligence-init.js.map +1 -0
  70. package/dist/cli/init/index.d.ts +2 -2
  71. package/dist/cli/init/index.d.ts.map +1 -1
  72. package/dist/cli/init/index.js +10 -1
  73. package/dist/cli/init/index.js.map +1 -1
  74. package/dist/code-intelligence/chunking/ASTChunker.d.ts +64 -0
  75. package/dist/code-intelligence/chunking/ASTChunker.d.ts.map +1 -0
  76. package/dist/code-intelligence/chunking/ASTChunker.js +344 -0
  77. package/dist/code-intelligence/chunking/ASTChunker.js.map +1 -0
  78. package/dist/code-intelligence/chunking/ChunkSplitter.d.ts +48 -0
  79. package/dist/code-intelligence/chunking/ChunkSplitter.d.ts.map +1 -0
  80. package/dist/code-intelligence/chunking/ChunkSplitter.js +278 -0
  81. package/dist/code-intelligence/chunking/ChunkSplitter.js.map +1 -0
  82. package/dist/code-intelligence/chunking/index.d.ts +8 -0
  83. package/dist/code-intelligence/chunking/index.d.ts.map +1 -0
  84. package/dist/code-intelligence/chunking/index.js +13 -0
  85. package/dist/code-intelligence/chunking/index.js.map +1 -0
  86. package/dist/code-intelligence/chunking/types.d.ts +52 -0
  87. package/dist/code-intelligence/chunking/types.d.ts.map +1 -0
  88. package/dist/code-intelligence/chunking/types.js +6 -0
  89. package/dist/code-intelligence/chunking/types.js.map +1 -0
  90. package/dist/code-intelligence/config/database-schema.d.ts +245 -0
  91. package/dist/code-intelligence/config/database-schema.d.ts.map +1 -0
  92. package/dist/code-intelligence/config/database-schema.js +110 -0
  93. package/dist/code-intelligence/config/database-schema.js.map +1 -0
  94. package/dist/code-intelligence/config/environment.d.ts +53 -0
  95. package/dist/code-intelligence/config/environment.d.ts.map +1 -0
  96. package/dist/code-intelligence/config/environment.js +86 -0
  97. package/dist/code-intelligence/config/environment.js.map +1 -0
  98. package/dist/code-intelligence/config/index.d.ts +10 -0
  99. package/dist/code-intelligence/config/index.d.ts.map +1 -0
  100. package/dist/code-intelligence/config/index.js +36 -0
  101. package/dist/code-intelligence/config/index.js.map +1 -0
  102. package/dist/code-intelligence/embeddings/EmbeddingCache.d.ts +81 -0
  103. package/dist/code-intelligence/embeddings/EmbeddingCache.d.ts.map +1 -0
  104. package/dist/code-intelligence/embeddings/EmbeddingCache.js +168 -0
  105. package/dist/code-intelligence/embeddings/EmbeddingCache.js.map +1 -0
  106. package/dist/code-intelligence/embeddings/NomicEmbedder.d.ts +82 -0
  107. package/dist/code-intelligence/embeddings/NomicEmbedder.d.ts.map +1 -0
  108. package/dist/code-intelligence/embeddings/NomicEmbedder.js +233 -0
  109. package/dist/code-intelligence/embeddings/NomicEmbedder.js.map +1 -0
  110. package/dist/code-intelligence/embeddings/OllamaClient.d.ts +42 -0
  111. package/dist/code-intelligence/embeddings/OllamaClient.d.ts.map +1 -0
  112. package/dist/code-intelligence/embeddings/OllamaClient.js +142 -0
  113. package/dist/code-intelligence/embeddings/OllamaClient.js.map +1 -0
  114. package/dist/code-intelligence/embeddings/index.d.ts +33 -0
  115. package/dist/code-intelligence/embeddings/index.d.ts.map +1 -0
  116. package/dist/code-intelligence/embeddings/index.js +39 -0
  117. package/dist/code-intelligence/embeddings/index.js.map +1 -0
  118. package/dist/code-intelligence/embeddings/types.d.ts +84 -0
  119. package/dist/code-intelligence/embeddings/types.d.ts.map +1 -0
  120. package/dist/code-intelligence/embeddings/types.js +19 -0
  121. package/dist/code-intelligence/embeddings/types.js.map +1 -0
  122. package/dist/code-intelligence/graph/GraphBuilder.d.ts +126 -0
  123. package/dist/code-intelligence/graph/GraphBuilder.d.ts.map +1 -0
  124. package/dist/code-intelligence/graph/GraphBuilder.js +416 -0
  125. package/dist/code-intelligence/graph/GraphBuilder.js.map +1 -0
  126. package/dist/code-intelligence/graph/ImportParser.d.ts +72 -0
  127. package/dist/code-intelligence/graph/ImportParser.d.ts.map +1 -0
  128. package/dist/code-intelligence/graph/ImportParser.js +422 -0
  129. package/dist/code-intelligence/graph/ImportParser.js.map +1 -0
  130. package/dist/code-intelligence/graph/RelationshipExtractor.d.ts +74 -0
  131. package/dist/code-intelligence/graph/RelationshipExtractor.d.ts.map +1 -0
  132. package/dist/code-intelligence/graph/RelationshipExtractor.js +310 -0
  133. package/dist/code-intelligence/graph/RelationshipExtractor.js.map +1 -0
  134. package/dist/code-intelligence/graph/TestMapper.d.ts +99 -0
  135. package/dist/code-intelligence/graph/TestMapper.d.ts.map +1 -0
  136. package/dist/code-intelligence/graph/TestMapper.js +335 -0
  137. package/dist/code-intelligence/graph/TestMapper.js.map +1 -0
  138. package/dist/code-intelligence/graph/index.d.ts +14 -0
  139. package/dist/code-intelligence/graph/index.d.ts.map +1 -0
  140. package/dist/code-intelligence/graph/index.js +19 -0
  141. package/dist/code-intelligence/graph/index.js.map +1 -0
  142. package/dist/code-intelligence/graph/types.d.ts +141 -0
  143. package/dist/code-intelligence/graph/types.d.ts.map +1 -0
  144. package/dist/code-intelligence/graph/types.js +18 -0
  145. package/dist/code-intelligence/graph/types.js.map +1 -0
  146. package/dist/code-intelligence/indexing/FileWatcher.d.ts +90 -0
  147. package/dist/code-intelligence/indexing/FileWatcher.d.ts.map +1 -0
  148. package/dist/code-intelligence/indexing/FileWatcher.js +304 -0
  149. package/dist/code-intelligence/indexing/FileWatcher.js.map +1 -0
  150. package/dist/code-intelligence/indexing/GitChangeDetector.d.ts +76 -0
  151. package/dist/code-intelligence/indexing/GitChangeDetector.d.ts.map +1 -0
  152. package/dist/code-intelligence/indexing/GitChangeDetector.js +347 -0
  153. package/dist/code-intelligence/indexing/GitChangeDetector.js.map +1 -0
  154. package/dist/code-intelligence/indexing/IncrementalIndexer.d.ts +108 -0
  155. package/dist/code-intelligence/indexing/IncrementalIndexer.d.ts.map +1 -0
  156. package/dist/code-intelligence/indexing/IncrementalIndexer.js +269 -0
  157. package/dist/code-intelligence/indexing/IncrementalIndexer.js.map +1 -0
  158. package/dist/code-intelligence/indexing/index.d.ts +11 -0
  159. package/dist/code-intelligence/indexing/index.d.ts.map +1 -0
  160. package/dist/code-intelligence/indexing/index.js +18 -0
  161. package/dist/code-intelligence/indexing/index.js.map +1 -0
  162. package/dist/code-intelligence/indexing/types.d.ts +133 -0
  163. package/dist/code-intelligence/indexing/types.d.ts.map +1 -0
  164. package/dist/code-intelligence/indexing/types.js +27 -0
  165. package/dist/code-intelligence/indexing/types.js.map +1 -0
  166. package/dist/code-intelligence/orchestrator/CodeIntelligenceOrchestrator.d.ts +150 -0
  167. package/dist/code-intelligence/orchestrator/CodeIntelligenceOrchestrator.d.ts.map +1 -0
  168. package/dist/code-intelligence/orchestrator/CodeIntelligenceOrchestrator.js +806 -0
  169. package/dist/code-intelligence/orchestrator/CodeIntelligenceOrchestrator.js.map +1 -0
  170. package/dist/code-intelligence/orchestrator/index.d.ts +8 -0
  171. package/dist/code-intelligence/orchestrator/index.d.ts.map +1 -0
  172. package/dist/code-intelligence/orchestrator/index.js +24 -0
  173. package/dist/code-intelligence/orchestrator/index.js.map +1 -0
  174. package/dist/code-intelligence/orchestrator/types.d.ts +164 -0
  175. package/dist/code-intelligence/orchestrator/types.d.ts.map +1 -0
  176. package/dist/code-intelligence/orchestrator/types.js +18 -0
  177. package/dist/code-intelligence/orchestrator/types.js.map +1 -0
  178. package/dist/code-intelligence/parser/LanguageRegistry.d.ts +13 -0
  179. package/dist/code-intelligence/parser/LanguageRegistry.d.ts.map +1 -0
  180. package/dist/code-intelligence/parser/LanguageRegistry.js +150 -0
  181. package/dist/code-intelligence/parser/LanguageRegistry.js.map +1 -0
  182. package/dist/code-intelligence/parser/TreeSitterParser.d.ts +98 -0
  183. package/dist/code-intelligence/parser/TreeSitterParser.d.ts.map +1 -0
  184. package/dist/code-intelligence/parser/TreeSitterParser.js +530 -0
  185. package/dist/code-intelligence/parser/TreeSitterParser.js.map +1 -0
  186. package/dist/code-intelligence/parser/extractors/BaseExtractor.d.ts +36 -0
  187. package/dist/code-intelligence/parser/extractors/BaseExtractor.d.ts.map +1 -0
  188. package/dist/code-intelligence/parser/extractors/BaseExtractor.js +31 -0
  189. package/dist/code-intelligence/parser/extractors/BaseExtractor.js.map +1 -0
  190. package/dist/code-intelligence/parser/extractors/GoExtractor.d.ts +21 -0
  191. package/dist/code-intelligence/parser/extractors/GoExtractor.d.ts.map +1 -0
  192. package/dist/code-intelligence/parser/extractors/GoExtractor.js +249 -0
  193. package/dist/code-intelligence/parser/extractors/GoExtractor.js.map +1 -0
  194. package/dist/code-intelligence/parser/extractors/JavaScriptExtractor.d.ts +21 -0
  195. package/dist/code-intelligence/parser/extractors/JavaScriptExtractor.d.ts.map +1 -0
  196. package/dist/code-intelligence/parser/extractors/JavaScriptExtractor.js +217 -0
  197. package/dist/code-intelligence/parser/extractors/JavaScriptExtractor.js.map +1 -0
  198. package/dist/code-intelligence/parser/extractors/PythonExtractor.d.ts +20 -0
  199. package/dist/code-intelligence/parser/extractors/PythonExtractor.d.ts.map +1 -0
  200. package/dist/code-intelligence/parser/extractors/PythonExtractor.js +237 -0
  201. package/dist/code-intelligence/parser/extractors/PythonExtractor.js.map +1 -0
  202. package/dist/code-intelligence/parser/extractors/RustExtractor.d.ts +21 -0
  203. package/dist/code-intelligence/parser/extractors/RustExtractor.d.ts.map +1 -0
  204. package/dist/code-intelligence/parser/extractors/RustExtractor.js +234 -0
  205. package/dist/code-intelligence/parser/extractors/RustExtractor.js.map +1 -0
  206. package/dist/code-intelligence/parser/extractors/TypeScriptExtractor.d.ts +23 -0
  207. package/dist/code-intelligence/parser/extractors/TypeScriptExtractor.d.ts.map +1 -0
  208. package/dist/code-intelligence/parser/extractors/TypeScriptExtractor.js +247 -0
  209. package/dist/code-intelligence/parser/extractors/TypeScriptExtractor.js.map +1 -0
  210. package/dist/code-intelligence/parser/extractors/index.d.ts +7 -0
  211. package/dist/code-intelligence/parser/extractors/index.d.ts.map +1 -0
  212. package/dist/code-intelligence/parser/extractors/index.js +16 -0
  213. package/dist/code-intelligence/parser/extractors/index.js.map +1 -0
  214. package/dist/code-intelligence/parser/index.d.ts +8 -0
  215. package/dist/code-intelligence/parser/index.d.ts.map +1 -0
  216. package/dist/code-intelligence/parser/index.js +12 -0
  217. package/dist/code-intelligence/parser/index.js.map +1 -0
  218. package/dist/code-intelligence/parser/types.d.ts +60 -0
  219. package/dist/code-intelligence/parser/types.d.ts.map +1 -0
  220. package/dist/code-intelligence/parser/types.js +6 -0
  221. package/dist/code-intelligence/parser/types.js.map +1 -0
  222. package/dist/code-intelligence/rag/ContextBuilder.d.ts +82 -0
  223. package/dist/code-intelligence/rag/ContextBuilder.d.ts.map +1 -0
  224. package/dist/code-intelligence/rag/ContextBuilder.js +242 -0
  225. package/dist/code-intelligence/rag/ContextBuilder.js.map +1 -0
  226. package/dist/code-intelligence/rag/GraphExpander.d.ts +95 -0
  227. package/dist/code-intelligence/rag/GraphExpander.d.ts.map +1 -0
  228. package/dist/code-intelligence/rag/GraphExpander.js +250 -0
  229. package/dist/code-intelligence/rag/GraphExpander.js.map +1 -0
  230. package/dist/code-intelligence/rag/index.d.ts +9 -0
  231. package/dist/code-intelligence/rag/index.d.ts.map +1 -0
  232. package/dist/code-intelligence/rag/index.js +25 -0
  233. package/dist/code-intelligence/rag/index.js.map +1 -0
  234. package/dist/code-intelligence/rag/types.d.ts +121 -0
  235. package/dist/code-intelligence/rag/types.d.ts.map +1 -0
  236. package/dist/code-intelligence/rag/types.js +50 -0
  237. package/dist/code-intelligence/rag/types.js.map +1 -0
  238. package/dist/code-intelligence/retrieval/SemanticRetriever.d.ts +62 -0
  239. package/dist/code-intelligence/retrieval/SemanticRetriever.d.ts.map +1 -0
  240. package/dist/code-intelligence/retrieval/SemanticRetriever.js +174 -0
  241. package/dist/code-intelligence/retrieval/SemanticRetriever.js.map +1 -0
  242. package/dist/code-intelligence/retrieval/index.d.ts +9 -0
  243. package/dist/code-intelligence/retrieval/index.d.ts.map +1 -0
  244. package/dist/code-intelligence/retrieval/index.js +16 -0
  245. package/dist/code-intelligence/retrieval/index.js.map +1 -0
  246. package/dist/code-intelligence/retrieval/types.d.ts +118 -0
  247. package/dist/code-intelligence/retrieval/types.d.ts.map +1 -0
  248. package/dist/code-intelligence/retrieval/types.js +46 -0
  249. package/dist/code-intelligence/retrieval/types.js.map +1 -0
  250. package/dist/code-intelligence/router/CodeIntelligenceHybridRouter.d.ts +167 -0
  251. package/dist/code-intelligence/router/CodeIntelligenceHybridRouter.d.ts.map +1 -0
  252. package/dist/code-intelligence/router/CodeIntelligenceHybridRouter.js +365 -0
  253. package/dist/code-intelligence/router/CodeIntelligenceHybridRouter.js.map +1 -0
  254. package/dist/code-intelligence/router/index.d.ts +7 -0
  255. package/dist/code-intelligence/router/index.d.ts.map +1 -0
  256. package/dist/code-intelligence/router/index.js +14 -0
  257. package/dist/code-intelligence/router/index.js.map +1 -0
  258. package/dist/code-intelligence/search/BM25Search.d.ts +74 -0
  259. package/dist/code-intelligence/search/BM25Search.d.ts.map +1 -0
  260. package/dist/code-intelligence/search/BM25Search.js +233 -0
  261. package/dist/code-intelligence/search/BM25Search.js.map +1 -0
  262. package/dist/code-intelligence/search/HybridSearchEngine.d.ts +94 -0
  263. package/dist/code-intelligence/search/HybridSearchEngine.d.ts.map +1 -0
  264. package/dist/code-intelligence/search/HybridSearchEngine.js +168 -0
  265. package/dist/code-intelligence/search/HybridSearchEngine.js.map +1 -0
  266. package/dist/code-intelligence/search/RRFFusion.d.ts +46 -0
  267. package/dist/code-intelligence/search/RRFFusion.d.ts.map +1 -0
  268. package/dist/code-intelligence/search/RRFFusion.js +223 -0
  269. package/dist/code-intelligence/search/RRFFusion.js.map +1 -0
  270. package/dist/code-intelligence/search/VectorSearch.d.ts +157 -0
  271. package/dist/code-intelligence/search/VectorSearch.d.ts.map +1 -0
  272. package/dist/code-intelligence/search/VectorSearch.js +301 -0
  273. package/dist/code-intelligence/search/VectorSearch.js.map +1 -0
  274. package/dist/code-intelligence/search/index.d.ts +14 -0
  275. package/dist/code-intelligence/search/index.d.ts.map +1 -0
  276. package/dist/code-intelligence/search/index.js +23 -0
  277. package/dist/code-intelligence/search/index.js.map +1 -0
  278. package/dist/code-intelligence/search/types.d.ts +201 -0
  279. package/dist/code-intelligence/search/types.d.ts.map +1 -0
  280. package/dist/code-intelligence/search/types.js +35 -0
  281. package/dist/code-intelligence/search/types.js.map +1 -0
  282. package/dist/code-intelligence/service/CodeIntelligenceService.d.ts +171 -0
  283. package/dist/code-intelligence/service/CodeIntelligenceService.d.ts.map +1 -0
  284. package/dist/code-intelligence/service/CodeIntelligenceService.js +325 -0
  285. package/dist/code-intelligence/service/CodeIntelligenceService.js.map +1 -0
  286. package/dist/code-intelligence/service/index.d.ts +7 -0
  287. package/dist/code-intelligence/service/index.d.ts.map +1 -0
  288. package/dist/code-intelligence/service/index.js +14 -0
  289. package/dist/code-intelligence/service/index.js.map +1 -0
  290. package/dist/code-intelligence/storage/CodeChunkStore.d.ts +213 -0
  291. package/dist/code-intelligence/storage/CodeChunkStore.d.ts.map +1 -0
  292. package/dist/code-intelligence/storage/CodeChunkStore.js +542 -0
  293. package/dist/code-intelligence/storage/CodeChunkStore.js.map +1 -0
  294. package/dist/code-intelligence/storage/index.d.ts +7 -0
  295. package/dist/code-intelligence/storage/index.d.ts.map +1 -0
  296. package/dist/code-intelligence/storage/index.js +13 -0
  297. package/dist/code-intelligence/storage/index.js.map +1 -0
  298. package/dist/code-intelligence/visualization/ClassDiagramBuilder.d.ts +51 -0
  299. package/dist/code-intelligence/visualization/ClassDiagramBuilder.d.ts.map +1 -0
  300. package/dist/code-intelligence/visualization/ClassDiagramBuilder.js +180 -0
  301. package/dist/code-intelligence/visualization/ClassDiagramBuilder.js.map +1 -0
  302. package/dist/code-intelligence/visualization/DependencyGraphBuilder.d.ts +66 -0
  303. package/dist/code-intelligence/visualization/DependencyGraphBuilder.d.ts.map +1 -0
  304. package/dist/code-intelligence/visualization/DependencyGraphBuilder.js +203 -0
  305. package/dist/code-intelligence/visualization/DependencyGraphBuilder.js.map +1 -0
  306. package/dist/code-intelligence/visualization/MermaidGenerator.d.ts +76 -0
  307. package/dist/code-intelligence/visualization/MermaidGenerator.d.ts.map +1 -0
  308. package/dist/code-intelligence/visualization/MermaidGenerator.js +368 -0
  309. package/dist/code-intelligence/visualization/MermaidGenerator.js.map +1 -0
  310. package/dist/code-intelligence/visualization/index.d.ts +9 -0
  311. package/dist/code-intelligence/visualization/index.d.ts.map +1 -0
  312. package/dist/code-intelligence/visualization/index.js +15 -0
  313. package/dist/code-intelligence/visualization/index.js.map +1 -0
  314. package/dist/core/FleetManager.d.ts +27 -0
  315. package/dist/core/FleetManager.d.ts.map +1 -1
  316. package/dist/core/FleetManager.js +84 -0
  317. package/dist/core/FleetManager.js.map +1 -1
  318. package/dist/core/memory/HNSWVectorMemory.js +1 -1
  319. package/dist/core/memory/HNSWVectorMemory.js.map +1 -1
  320. package/dist/mcp/handlers/agent-spawn.d.ts +71 -5
  321. package/dist/mcp/handlers/agent-spawn.d.ts.map +1 -1
  322. package/dist/mcp/handlers/agent-spawn.js +336 -110
  323. package/dist/mcp/handlers/agent-spawn.js.map +1 -1
  324. package/dist/mcp/handlers/fleet-init.d.ts +24 -0
  325. package/dist/mcp/handlers/fleet-init.d.ts.map +1 -1
  326. package/dist/mcp/handlers/fleet-init.js +56 -4
  327. package/dist/mcp/handlers/fleet-init.js.map +1 -1
  328. package/dist/mcp/server-instructions.d.ts +1 -1
  329. package/dist/mcp/server-instructions.d.ts.map +1 -1
  330. package/dist/mcp/server-instructions.js +1 -1
  331. package/dist/mcp/server-instructions.js.map +1 -1
  332. package/dist/memory/HNSWPatternStore.d.ts.map +1 -1
  333. package/dist/memory/HNSWPatternStore.js.map +1 -1
  334. package/dist/plugins/BasePlugin.d.ts +111 -0
  335. package/dist/plugins/BasePlugin.d.ts.map +1 -0
  336. package/dist/plugins/BasePlugin.js +154 -0
  337. package/dist/plugins/BasePlugin.js.map +1 -0
  338. package/dist/plugins/PluginManager.d.ts +145 -0
  339. package/dist/plugins/PluginManager.d.ts.map +1 -0
  340. package/dist/plugins/PluginManager.js +862 -0
  341. package/dist/plugins/PluginManager.js.map +1 -0
  342. package/dist/plugins/adapters/McpToolsPlugin.d.ts +98 -0
  343. package/dist/plugins/adapters/McpToolsPlugin.d.ts.map +1 -0
  344. package/dist/plugins/adapters/McpToolsPlugin.js +518 -0
  345. package/dist/plugins/adapters/McpToolsPlugin.js.map +1 -0
  346. package/dist/plugins/adapters/PlaywrightPlugin.d.ts +63 -0
  347. package/dist/plugins/adapters/PlaywrightPlugin.d.ts.map +1 -0
  348. package/dist/plugins/adapters/PlaywrightPlugin.js +451 -0
  349. package/dist/plugins/adapters/PlaywrightPlugin.js.map +1 -0
  350. package/dist/plugins/adapters/VitestPlugin.d.ts +74 -0
  351. package/dist/plugins/adapters/VitestPlugin.d.ts.map +1 -0
  352. package/dist/plugins/adapters/VitestPlugin.js +589 -0
  353. package/dist/plugins/adapters/VitestPlugin.js.map +1 -0
  354. package/dist/plugins/adapters/index.d.ts +8 -0
  355. package/dist/plugins/adapters/index.d.ts.map +1 -0
  356. package/dist/plugins/adapters/index.js +17 -0
  357. package/dist/plugins/adapters/index.js.map +1 -0
  358. package/dist/plugins/index.d.ts +32 -0
  359. package/dist/plugins/index.d.ts.map +1 -0
  360. package/dist/plugins/index.js +48 -0
  361. package/dist/plugins/index.js.map +1 -0
  362. package/dist/plugins/types.d.ts +528 -0
  363. package/dist/plugins/types.d.ts.map +1 -0
  364. package/dist/plugins/types.js +61 -0
  365. package/dist/plugins/types.js.map +1 -0
  366. package/dist/types/index.d.ts +2 -1
  367. package/dist/types/index.d.ts.map +1 -1
  368. package/dist/types/index.js +2 -0
  369. package/dist/types/index.js.map +1 -1
  370. package/docs/reference/agents.md +44 -1
  371. package/package.json +15 -1
@@ -5,115 +5,265 @@
5
5
  * Handles spawning specialized QE agents with specific capabilities.
6
6
  * Coordinates with Claude Flow for agent lifecycle management.
7
7
  *
8
- * @version 1.0.0
8
+ * Phase 3 D1: Integrated with AgentPool for 16x spawn speedup
9
+ *
10
+ * @version 2.0.0
9
11
  * @author Agentic QE Team
10
12
  */
11
13
  Object.defineProperty(exports, "__esModule", { value: true });
12
14
  exports.AgentSpawnHandler = void 0;
13
15
  const base_handler_js_1 = require("./base-handler.js");
14
16
  const SecureRandom_js_1 = require("../../utils/SecureRandom.js");
17
+ const index_js_1 = require("../../agents/pool/index.js");
18
+ const index_js_2 = require("../../types/index.js");
19
+ const DEFAULT_SPAWN_POOL_CONFIG = {
20
+ enabled: true,
21
+ warmupOnInit: false, // Will be enabled via fleet init
22
+ warmupTypes: [
23
+ index_js_2.QEAgentType.TEST_GENERATOR,
24
+ index_js_2.QEAgentType.COVERAGE_ANALYZER,
25
+ index_js_2.QEAgentType.QUALITY_GATE,
26
+ ],
27
+ debug: false,
28
+ };
15
29
  class AgentSpawnHandler extends base_handler_js_1.BaseHandler {
16
- constructor(registry, hookExecutor) {
30
+ constructor(registry, hookExecutor, poolConfig = {}) {
17
31
  super();
18
32
  this.activeAgents = new Map();
19
33
  this.agentTypeConfigs = new Map();
34
+ // Pool integration (Phase 3 D1)
35
+ this.pool = null;
36
+ this.poolInitPromise = null;
37
+ this.pooledAgentMap = new Map(); // agentId -> poolId
38
+ // Spawn metrics for benchmarking
39
+ this.spawnMetrics = {
40
+ pooledSpawns: 0,
41
+ directSpawns: 0,
42
+ totalPooledTimeMs: 0,
43
+ totalDirectTimeMs: 0,
44
+ };
20
45
  this.registry = registry;
21
46
  this.hookExecutor = hookExecutor;
47
+ this.poolConfig = { ...DEFAULT_SPAWN_POOL_CONFIG, ...poolConfig };
22
48
  this.initializeAgentTypeConfigs();
49
+ // Initialize pool if enabled
50
+ if (this.poolConfig.enabled) {
51
+ this.initializePool();
52
+ }
53
+ }
54
+ /**
55
+ * Initialize the agent pool
56
+ */
57
+ async initializePool() {
58
+ if (this.poolInitPromise) {
59
+ return this.poolInitPromise;
60
+ }
61
+ this.poolInitPromise = (async () => {
62
+ try {
63
+ // Create agent creator that uses the registry
64
+ const agentCreator = async (type) => {
65
+ const { agent } = await this.registry.spawnAgent(type, {
66
+ name: `pooled-${type}-${Date.now()}`,
67
+ description: `Pooled ${type} agent`,
68
+ capabilities: this.getDefaultCapabilities(type),
69
+ });
70
+ return agent;
71
+ };
72
+ this.pool = await (0, index_js_1.createQEAgentPool)(agentCreator, { enableLearning: true, debug: this.poolConfig.debug }, { debug: this.poolConfig.debug });
73
+ if (this.poolConfig.warmupOnInit) {
74
+ await this.warmupPool();
75
+ }
76
+ this.log('info', 'Agent pool initialized', {
77
+ enabled: true,
78
+ warmupTypes: this.poolConfig.warmupTypes,
79
+ });
80
+ }
81
+ catch (error) {
82
+ this.log('error', 'Failed to initialize agent pool', {
83
+ error: error instanceof Error ? error.message : String(error),
84
+ });
85
+ this.pool = null;
86
+ }
87
+ })();
88
+ return this.poolInitPromise;
89
+ }
90
+ /**
91
+ * Warm up the pool with pre-allocated agents
92
+ * Called during fleet initialization for optimal performance
93
+ */
94
+ async warmupPool(types) {
95
+ if (!this.pool) {
96
+ await this.initializePool();
97
+ }
98
+ if (!this.pool) {
99
+ this.log('warn', 'Cannot warmup pool - pool not available');
100
+ return;
101
+ }
102
+ const typesToWarm = types || this.poolConfig.warmupTypes;
103
+ this.log('info', 'Warming up agent pool', { types: typesToWarm });
104
+ const startTime = Date.now();
105
+ await this.pool.warmup(typesToWarm);
106
+ const elapsed = Date.now() - startTime;
107
+ this.log('info', 'Pool warmup complete', {
108
+ elapsed: `${elapsed}ms`,
109
+ stats: this.pool.getStats(),
110
+ });
111
+ }
112
+ /**
113
+ * Get pool statistics
114
+ */
115
+ getPoolStats() {
116
+ return this.pool?.getStats() || null;
117
+ }
118
+ /**
119
+ * Get spawn metrics for benchmarking
120
+ */
121
+ getSpawnMetrics() {
122
+ const pooled = this.spawnMetrics.pooledSpawns;
123
+ const direct = this.spawnMetrics.directSpawns;
124
+ return {
125
+ pooledSpawns: pooled,
126
+ directSpawns: direct,
127
+ avgPooledTimeMs: pooled > 0 ? this.spawnMetrics.totalPooledTimeMs / pooled : 0,
128
+ avgDirectTimeMs: direct > 0 ? this.spawnMetrics.totalDirectTimeMs / direct : 0,
129
+ speedupFactor: pooled > 0 && direct > 0
130
+ ? (this.spawnMetrics.totalDirectTimeMs / direct) /
131
+ (this.spawnMetrics.totalPooledTimeMs / pooled)
132
+ : 0,
133
+ poolStats: this.getPoolStats(),
134
+ };
23
135
  }
24
136
  async handle(args) {
25
137
  const requestId = this.generateRequestId();
26
- this.log('info', 'Spawning QE agent', { requestId, spec: args.spec });
138
+ const usePool = args.usePool !== false && this.poolConfig.enabled;
139
+ this.log('info', 'Spawning QE agent', {
140
+ requestId,
141
+ spec: args.spec,
142
+ usePool,
143
+ });
27
144
  try {
28
145
  // Validate required parameters
29
146
  this.validateRequired(args, ['spec']);
30
147
  this.validateAgentSpec(args.spec);
31
- const { result: agentInstance, executionTime } = await this.measureExecutionTime(() => this.spawnAgent(args.spec, args.fleetId));
148
+ const startTime = Date.now();
149
+ let agentInstance;
150
+ // Try pooled spawn first if enabled
151
+ if (usePool && this.pool) {
152
+ agentInstance = await this.spawnFromPool(args.spec, args.fleetId, startTime);
153
+ }
154
+ else {
155
+ agentInstance = await this.spawnDirect(args.spec, args.fleetId, startTime);
156
+ }
157
+ const executionTime = Date.now() - startTime;
32
158
  this.log('info', `Agent spawned successfully in ${executionTime.toFixed(2)}ms`, {
33
159
  agentId: agentInstance.id,
34
160
  type: agentInstance.type,
35
- fleetId: agentInstance.fleetId
161
+ fleetId: agentInstance.fleetId,
162
+ fromPool: agentInstance.poolMeta?.fromPool ?? false,
36
163
  });
37
164
  return this.createSuccessResponse(agentInstance, requestId);
38
165
  }
39
166
  catch (error) {
40
- this.log('error', 'Agent spawn failed', { error: error instanceof Error ? error.message : String(error) });
167
+ this.log('error', 'Agent spawn failed', {
168
+ error: error instanceof Error ? error.message : String(error),
169
+ });
41
170
  return this.createErrorResponse(error instanceof Error ? error.message : 'Agent spawn failed', requestId);
42
171
  }
43
172
  }
44
- initializeAgentTypeConfigs() {
45
- this.agentTypeConfigs.set('test-generator', {
46
- defaultCapabilities: ['unit-test-generation', 'integration-test-generation', 'property-based-testing'],
47
- defaultResources: { memory: 512, cpu: 1, storage: 256 },
48
- specializations: ['boundary-analysis', 'edge-case-detection', 'test-data-synthesis']
49
- });
50
- this.agentTypeConfigs.set('coverage-analyzer', {
51
- defaultCapabilities: ['coverage-analysis', 'gap-identification', 'trend-analysis'],
52
- defaultResources: { memory: 256, cpu: 0.5, storage: 128 },
53
- specializations: ['critical-path-analysis', 'coverage-optimization', 'risk-assessment']
54
- });
55
- this.agentTypeConfigs.set('quality-gate', {
56
- defaultCapabilities: ['quality-metrics', 'threshold-enforcement', 'decision-making'],
57
- defaultResources: { memory: 128, cpu: 0.5, storage: 64 },
58
- specializations: ['composite-metrics', 'trend-monitoring', 'automated-decisions']
59
- });
60
- this.agentTypeConfigs.set('performance-tester', {
61
- defaultCapabilities: ['load-testing', 'stress-testing', 'bottleneck-detection'],
62
- defaultResources: { memory: 1024, cpu: 2, storage: 512 },
63
- specializations: ['resource-monitoring', 'baseline-comparison', 'regression-detection']
64
- });
65
- this.agentTypeConfigs.set('security-scanner', {
66
- defaultCapabilities: ['vulnerability-scanning', 'compliance-checking', 'security-testing'],
67
- defaultResources: { memory: 512, cpu: 1, storage: 256 },
68
- specializations: ['owasp-scanning', 'penetration-testing', 'compliance-validation']
69
- });
70
- this.agentTypeConfigs.set('chaos-engineer', {
71
- defaultCapabilities: ['failure-injection', 'resilience-testing', 'recovery-validation'],
72
- defaultResources: { memory: 256, cpu: 1, storage: 128 },
73
- specializations: ['controlled-chaos', 'blast-radius-control', 'disaster-recovery']
74
- });
75
- this.agentTypeConfigs.set('visual-tester', {
76
- defaultCapabilities: ['visual-regression', 'cross-browser-testing', 'accessibility-testing'],
77
- defaultResources: { memory: 1024, cpu: 1, storage: 1024 },
78
- specializations: ['screenshot-comparison', 'responsive-testing', 'wcag-compliance']
79
- });
80
- }
81
- validateAgentSpec(spec) {
82
- const validTypes = Array.from(this.agentTypeConfigs.keys());
83
- if (!validTypes.includes(spec.type)) {
84
- throw new Error(`Invalid agent type: ${spec.type}. Must be one of: ${validTypes.join(', ')}`);
173
+ /**
174
+ * Spawn agent from pool (fast path)
175
+ */
176
+ async spawnFromPool(spec, fleetId, startTime) {
177
+ const agentType = spec.type;
178
+ try {
179
+ const result = await this.pool.acquire(agentType, {
180
+ timeoutMs: 5000,
181
+ waitIfUnavailable: true,
182
+ });
183
+ const acquisitionTime = Date.now() - startTime;
184
+ this.spawnMetrics.pooledSpawns++;
185
+ this.spawnMetrics.totalPooledTimeMs += acquisitionTime;
186
+ const agent = result.agent.getBaseAgent();
187
+ const agentId = agent.getAgentId().id;
188
+ // Track pool mapping for release
189
+ this.pooledAgentMap.set(agentId, result.meta.poolId);
190
+ // Execute hooks
191
+ await this.hookExecutor.executePreTask({
192
+ description: `Spawning ${spec.type} agent (pooled)`,
193
+ agentType: spec.type,
194
+ });
195
+ // Register with fleet if specified
196
+ if (fleetId) {
197
+ await this.registerWithFleet({
198
+ id: agentId,
199
+ type: spec.type,
200
+ name: spec.name || `${spec.type}-${agentId.split('-').pop()}`,
201
+ capabilities: this.mergeCapabilities(spec),
202
+ status: 'active',
203
+ resources: this.mergeResources(spec),
204
+ fleetId,
205
+ spawnedAt: new Date().toISOString(),
206
+ lastActivity: new Date().toISOString(),
207
+ metrics: { tasksCompleted: 0, averageExecutionTime: 0, successRate: 1.0 },
208
+ }, fleetId);
209
+ }
210
+ await this.hookExecutor.executePostTask({
211
+ taskId: agentId,
212
+ agentType: spec.type,
213
+ results: { status: 'spawned', agentId, fromPool: true },
214
+ });
215
+ const agentInstance = {
216
+ id: agentId,
217
+ type: spec.type,
218
+ name: spec.name || `${spec.type}-${agentId.split('-').pop()}`,
219
+ capabilities: this.mergeCapabilities(spec),
220
+ status: 'active',
221
+ resources: this.mergeResources(spec),
222
+ fleetId,
223
+ spawnedAt: new Date().toISOString(),
224
+ lastActivity: new Date().toISOString(),
225
+ metrics: { tasksCompleted: 0, averageExecutionTime: 0, successRate: 1.0 },
226
+ poolMeta: {
227
+ poolId: result.meta.poolId,
228
+ fromPool: result.fromPool,
229
+ acquisitionTimeMs: result.acquisitionTimeMs,
230
+ },
231
+ };
232
+ this.activeAgents.set(agentId, agentInstance);
233
+ return agentInstance;
85
234
  }
86
- if (!spec.capabilities || spec.capabilities.length === 0) {
87
- throw new Error('Agent must have at least one capability');
235
+ catch (error) {
236
+ // Fall back to direct spawn if pool fails
237
+ this.log('warn', 'Pool acquisition failed, falling back to direct spawn', {
238
+ error: error instanceof Error ? error.message : String(error),
239
+ });
240
+ return this.spawnDirect(spec, fleetId, startTime);
88
241
  }
89
242
  }
90
- async spawnAgent(spec, fleetId) {
243
+ /**
244
+ * Spawn agent directly (legacy path)
245
+ */
246
+ async spawnDirect(spec, fleetId, startTime) {
91
247
  const agentId = `agent-${spec.type}-${Date.now()}-${SecureRandom_js_1.SecureRandom.generateId(3)}`;
92
248
  const typeConfig = this.agentTypeConfigs.get(spec.type);
93
- // Merge capabilities
94
- const capabilities = [
95
- ...typeConfig.defaultCapabilities,
96
- ...spec.capabilities.filter(cap => !typeConfig.defaultCapabilities.includes(cap))
97
- ];
98
- // Merge resources
99
- const resources = {
100
- ...typeConfig.defaultResources,
101
- ...spec.resources
102
- };
249
+ const capabilities = this.mergeCapabilities(spec);
250
+ const resources = this.mergeResources(spec);
103
251
  // Execute pre-task hook
104
252
  await this.hookExecutor.executePreTask({
105
253
  description: `Spawning ${spec.type} agent`,
106
- agentType: spec.type
254
+ agentType: spec.type,
107
255
  });
108
256
  // Spawn agent via registry
109
- // Note: Cast to any to work around BaseAgentConfig type issue in AgentRegistry
110
257
  const { id, agent } = await this.registry.spawnAgent(spec.type, {
111
258
  name: spec.name || `${spec.type}-${agentId.split('-').pop()}`,
112
259
  description: `${spec.type} agent spawned via MCP`,
113
260
  capabilities,
114
261
  resources,
115
- fleetId
262
+ fleetId,
116
263
  });
264
+ const spawnTime = Date.now() - startTime;
265
+ this.spawnMetrics.directSpawns++;
266
+ this.spawnMetrics.totalDirectTimeMs += spawnTime;
117
267
  // Register with Claude Flow if part of a fleet
118
268
  if (fleetId) {
119
269
  await this.registerWithFleet({
@@ -126,24 +276,26 @@ class AgentSpawnHandler extends base_handler_js_1.BaseHandler {
126
276
  fleetId,
127
277
  spawnedAt: new Date().toISOString(),
128
278
  lastActivity: new Date().toISOString(),
129
- metrics: { tasksCompleted: 0, averageExecutionTime: 0, successRate: 1.0 }
279
+ metrics: { tasksCompleted: 0, averageExecutionTime: 0, successRate: 1.0 },
130
280
  }, fleetId);
131
281
  }
132
282
  // Execute post-task hook
133
283
  await this.hookExecutor.executePostTask({
134
284
  taskId: id,
135
285
  agentType: spec.type,
136
- results: { status: 'spawned', agentId: id }
286
+ results: { status: 'spawned', agentId: id },
137
287
  });
138
- // Get agent status and metrics from registry
139
288
  const agentStatus = agent.getStatus();
140
289
  const metrics = this.registry.getAgentMetrics(id);
141
- // Map agent status to instance status
142
- const instanceStatus = agentStatus.status === 'active' ? 'active' :
143
- agentStatus.status === 'idle' ? 'idle' :
144
- agentStatus.status === 'busy' ? 'busy' :
145
- agentStatus.status === 'error' ? 'error' : 'active';
146
- // Create agent instance with real data
290
+ const instanceStatus = agentStatus.status === 'active'
291
+ ? 'active'
292
+ : agentStatus.status === 'idle'
293
+ ? 'idle'
294
+ : agentStatus.status === 'busy'
295
+ ? 'busy'
296
+ : agentStatus.status === 'error'
297
+ ? 'error'
298
+ : 'active';
147
299
  const agentInstance = {
148
300
  id,
149
301
  type: spec.type,
@@ -154,56 +306,106 @@ class AgentSpawnHandler extends base_handler_js_1.BaseHandler {
154
306
  fleetId,
155
307
  spawnedAt: new Date().toISOString(),
156
308
  lastActivity: new Date().toISOString(),
157
- metrics: metrics ? {
158
- tasksCompleted: metrics.tasksCompleted,
159
- averageExecutionTime: metrics.averageExecutionTime,
160
- successRate: 1.0 // Calculate from error count if needed
161
- } : {
162
- tasksCompleted: 0,
163
- averageExecutionTime: 0,
164
- successRate: 1.0
165
- }
309
+ metrics: metrics
310
+ ? {
311
+ tasksCompleted: metrics.tasksCompleted,
312
+ averageExecutionTime: metrics.averageExecutionTime,
313
+ successRate: 1.0,
314
+ }
315
+ : {
316
+ tasksCompleted: 0,
317
+ averageExecutionTime: 0,
318
+ successRate: 1.0,
319
+ },
166
320
  };
167
- // Store agent instance
168
321
  this.activeAgents.set(id, agentInstance);
169
322
  return agentInstance;
170
323
  }
171
- async initializeAgent(agent) {
172
- this.log('info', 'Initializing agent capabilities', {
173
- agentId: agent.id,
174
- type: agent.type,
175
- capabilities: agent.capabilities
324
+ mergeCapabilities(spec) {
325
+ const typeConfig = this.agentTypeConfigs.get(spec.type);
326
+ return [
327
+ ...typeConfig.defaultCapabilities,
328
+ ...spec.capabilities.filter((cap) => !typeConfig.defaultCapabilities.includes(cap)),
329
+ ];
330
+ }
331
+ mergeResources(spec) {
332
+ const typeConfig = this.agentTypeConfigs.get(spec.type);
333
+ return {
334
+ ...typeConfig.defaultResources,
335
+ ...spec.resources,
336
+ };
337
+ }
338
+ getDefaultCapabilities(type) {
339
+ const typeConfig = this.agentTypeConfigs.get(type);
340
+ return typeConfig?.defaultCapabilities || [];
341
+ }
342
+ initializeAgentTypeConfigs() {
343
+ this.agentTypeConfigs.set('test-generator', {
344
+ defaultCapabilities: [
345
+ 'unit-test-generation',
346
+ 'integration-test-generation',
347
+ 'property-based-testing',
348
+ ],
349
+ defaultResources: { memory: 512, cpu: 1, storage: 256 },
350
+ specializations: ['boundary-analysis', 'edge-case-detection', 'test-data-synthesis'],
176
351
  });
177
- // Simulate agent setup based on type
178
- const setupTime = this.getSetupTimeForType(agent.type);
179
- await new Promise(resolve => setTimeout(resolve, setupTime));
180
- this.log('info', 'Agent capabilities initialized', { agentId: agent.id });
352
+ this.agentTypeConfigs.set('coverage-analyzer', {
353
+ defaultCapabilities: ['coverage-analysis', 'gap-identification', 'trend-analysis'],
354
+ defaultResources: { memory: 256, cpu: 0.5, storage: 128 },
355
+ specializations: ['critical-path-analysis', 'coverage-optimization', 'risk-assessment'],
356
+ });
357
+ this.agentTypeConfigs.set('quality-gate', {
358
+ defaultCapabilities: ['quality-metrics', 'threshold-enforcement', 'decision-making'],
359
+ defaultResources: { memory: 128, cpu: 0.5, storage: 64 },
360
+ specializations: ['composite-metrics', 'trend-monitoring', 'automated-decisions'],
361
+ });
362
+ this.agentTypeConfigs.set('performance-tester', {
363
+ defaultCapabilities: ['load-testing', 'stress-testing', 'bottleneck-detection'],
364
+ defaultResources: { memory: 1024, cpu: 2, storage: 512 },
365
+ specializations: ['resource-monitoring', 'baseline-comparison', 'regression-detection'],
366
+ });
367
+ this.agentTypeConfigs.set('security-scanner', {
368
+ defaultCapabilities: ['vulnerability-scanning', 'compliance-checking', 'security-testing'],
369
+ defaultResources: { memory: 512, cpu: 1, storage: 256 },
370
+ specializations: ['owasp-scanning', 'penetration-testing', 'compliance-validation'],
371
+ });
372
+ this.agentTypeConfigs.set('chaos-engineer', {
373
+ defaultCapabilities: ['failure-injection', 'resilience-testing', 'recovery-validation'],
374
+ defaultResources: { memory: 256, cpu: 1, storage: 128 },
375
+ specializations: ['controlled-chaos', 'blast-radius-control', 'disaster-recovery'],
376
+ });
377
+ this.agentTypeConfigs.set('visual-tester', {
378
+ defaultCapabilities: [
379
+ 'visual-regression',
380
+ 'cross-browser-testing',
381
+ 'accessibility-testing',
382
+ ],
383
+ defaultResources: { memory: 1024, cpu: 1, storage: 1024 },
384
+ specializations: ['screenshot-comparison', 'responsive-testing', 'wcag-compliance'],
385
+ });
386
+ }
387
+ validateAgentSpec(spec) {
388
+ const validTypes = Array.from(this.agentTypeConfigs.keys());
389
+ if (!validTypes.includes(spec.type)) {
390
+ throw new Error(`Invalid agent type: ${spec.type}. Must be one of: ${validTypes.join(', ')}`);
391
+ }
392
+ if (!spec.capabilities || spec.capabilities.length === 0) {
393
+ throw new Error('Agent must have at least one capability');
394
+ }
181
395
  }
182
396
  async registerWithFleet(agent, fleetId) {
183
397
  this.log('info', 'Registering agent with fleet', {
184
398
  agentId: agent.id,
185
- fleetId
399
+ fleetId,
186
400
  });
187
401
  // This would integrate with Claude Flow fleet coordination
188
402
  // For now, we simulate the registration
189
- await new Promise(resolve => setTimeout(resolve, 50));
403
+ await new Promise((resolve) => setTimeout(resolve, 50));
190
404
  this.log('info', 'Agent registered with fleet', {
191
405
  agentId: agent.id,
192
- fleetId
406
+ fleetId,
193
407
  });
194
408
  }
195
- getSetupTimeForType(type) {
196
- const setupTimes = {
197
- 'test-generator': 200,
198
- 'coverage-analyzer': 100,
199
- 'quality-gate': 50,
200
- 'performance-tester': 300,
201
- 'security-scanner': 250,
202
- 'chaos-engineer': 150,
203
- 'visual-tester': 400
204
- };
205
- return setupTimes[type] || 100;
206
- }
207
409
  /**
208
410
  * Get agent by ID
209
411
  */
@@ -214,8 +416,7 @@ class AgentSpawnHandler extends base_handler_js_1.BaseHandler {
214
416
  * List agents by fleet
215
417
  */
216
418
  listAgentsByFleet(fleetId) {
217
- return Array.from(this.activeAgents.values())
218
- .filter(agent => agent.fleetId === fleetId);
419
+ return Array.from(this.activeAgents.values()).filter((agent) => agent.fleetId === fleetId);
219
420
  }
220
421
  /**
221
422
  * List all active agents
@@ -244,13 +445,38 @@ class AgentSpawnHandler extends base_handler_js_1.BaseHandler {
244
445
  return false;
245
446
  }
246
447
  this.log('info', 'Terminating agent', { agentId, type: agent.type });
448
+ // Return to pool if pooled
449
+ const poolId = this.pooledAgentMap.get(agentId);
450
+ if (poolId && this.pool) {
451
+ try {
452
+ await this.pool.release(poolId);
453
+ this.pooledAgentMap.delete(agentId);
454
+ this.log('info', 'Agent returned to pool', { agentId, poolId });
455
+ }
456
+ catch (error) {
457
+ this.log('warn', 'Failed to return agent to pool', {
458
+ agentId,
459
+ error: error instanceof Error ? error.message : String(error),
460
+ });
461
+ }
462
+ }
247
463
  // Update status
248
464
  agent.status = 'terminated';
249
- // Clean up resources
250
- // In a real implementation, this would properly close agent connections and clean up
251
465
  this.activeAgents.delete(agentId);
252
466
  return true;
253
467
  }
468
+ /**
469
+ * Shutdown the handler and pool
470
+ */
471
+ async shutdown() {
472
+ this.log('info', 'Shutting down agent spawn handler');
473
+ if (this.pool) {
474
+ await this.pool.shutdown();
475
+ this.pool = null;
476
+ }
477
+ this.activeAgents.clear();
478
+ this.pooledAgentMap.clear();
479
+ }
254
480
  }
255
481
  exports.AgentSpawnHandler = AgentSpawnHandler;
256
482
  //# sourceMappingURL=agent-spawn.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent-spawn.js","sourceRoot":"","sources":["../../../src/mcp/handlers/agent-spawn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-spawn.js","sourceRoot":"","sources":["../../../src/mcp/handlers/agent-spawn.ts"],"names":[],"mappings":"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"}