@weavelogic/knowledge-graph-agent 0.2.0 → 0.4.0

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 (711) hide show
  1. package/README.md +972 -303
  2. package/dist/_virtual/_commonjsHelpers.js +7 -0
  3. package/dist/_virtual/_commonjsHelpers.js.map +1 -0
  4. package/dist/_virtual/additionalItems.js +5 -0
  5. package/dist/_virtual/additionalItems.js.map +1 -0
  6. package/dist/_virtual/additionalProperties.js +5 -0
  7. package/dist/_virtual/additionalProperties.js.map +1 -0
  8. package/dist/_virtual/ajv.js +6 -0
  9. package/dist/_virtual/ajv.js.map +1 -0
  10. package/dist/_virtual/ajv2.js +5 -0
  11. package/dist/_virtual/ajv2.js.map +1 -0
  12. package/dist/_virtual/allOf.js +5 -0
  13. package/dist/_virtual/allOf.js.map +1 -0
  14. package/dist/_virtual/anyOf.js +5 -0
  15. package/dist/_virtual/anyOf.js.map +1 -0
  16. package/dist/_virtual/applicability.js +5 -0
  17. package/dist/_virtual/applicability.js.map +1 -0
  18. package/dist/_virtual/boolSchema.js +5 -0
  19. package/dist/_virtual/boolSchema.js.map +1 -0
  20. package/dist/_virtual/code.js +5 -0
  21. package/dist/_virtual/code.js.map +1 -0
  22. package/dist/_virtual/code2.js +5 -0
  23. package/dist/_virtual/code2.js.map +1 -0
  24. package/dist/_virtual/const.js +5 -0
  25. package/dist/_virtual/const.js.map +1 -0
  26. package/dist/_virtual/contains.js +5 -0
  27. package/dist/_virtual/contains.js.map +1 -0
  28. package/dist/_virtual/core.js +5 -0
  29. package/dist/_virtual/core.js.map +1 -0
  30. package/dist/_virtual/dataType.js +5 -0
  31. package/dist/_virtual/dataType.js.map +1 -0
  32. package/dist/_virtual/defaults.js +5 -0
  33. package/dist/_virtual/defaults.js.map +1 -0
  34. package/dist/_virtual/dependencies.js +5 -0
  35. package/dist/_virtual/dependencies.js.map +1 -0
  36. package/dist/_virtual/draft7.js +5 -0
  37. package/dist/_virtual/draft7.js.map +1 -0
  38. package/dist/_virtual/enum.js +5 -0
  39. package/dist/_virtual/enum.js.map +1 -0
  40. package/dist/_virtual/equal.js +5 -0
  41. package/dist/_virtual/equal.js.map +1 -0
  42. package/dist/_virtual/errors.js +5 -0
  43. package/dist/_virtual/errors.js.map +1 -0
  44. package/dist/_virtual/format.js +5 -0
  45. package/dist/_virtual/format.js.map +1 -0
  46. package/dist/_virtual/formats.js +5 -0
  47. package/dist/_virtual/formats.js.map +1 -0
  48. package/dist/_virtual/id.js +5 -0
  49. package/dist/_virtual/id.js.map +1 -0
  50. package/dist/_virtual/if.js +5 -0
  51. package/dist/_virtual/if.js.map +1 -0
  52. package/dist/_virtual/index.js +8 -0
  53. package/dist/_virtual/index.js.map +1 -0
  54. package/dist/_virtual/index10.js +5 -0
  55. package/dist/_virtual/index10.js.map +1 -0
  56. package/dist/_virtual/index11.js +5 -0
  57. package/dist/_virtual/index11.js.map +1 -0
  58. package/dist/_virtual/index12.js +5 -0
  59. package/dist/_virtual/index12.js.map +1 -0
  60. package/dist/_virtual/index2.js +5 -0
  61. package/dist/_virtual/index2.js.map +1 -0
  62. package/dist/_virtual/index3.js +5 -0
  63. package/dist/_virtual/index3.js.map +1 -0
  64. package/dist/_virtual/index4.js +5 -0
  65. package/dist/_virtual/index4.js.map +1 -0
  66. package/dist/_virtual/index5.js +5 -0
  67. package/dist/_virtual/index5.js.map +1 -0
  68. package/dist/_virtual/index6.js +5 -0
  69. package/dist/_virtual/index6.js.map +1 -0
  70. package/dist/_virtual/index7.js +5 -0
  71. package/dist/_virtual/index7.js.map +1 -0
  72. package/dist/_virtual/index8.js +5 -0
  73. package/dist/_virtual/index8.js.map +1 -0
  74. package/dist/_virtual/index9.js +5 -0
  75. package/dist/_virtual/index9.js.map +1 -0
  76. package/dist/_virtual/items.js +5 -0
  77. package/dist/_virtual/items.js.map +1 -0
  78. package/dist/_virtual/items2020.js +5 -0
  79. package/dist/_virtual/items2020.js.map +1 -0
  80. package/dist/_virtual/keyword.js +5 -0
  81. package/dist/_virtual/keyword.js.map +1 -0
  82. package/dist/_virtual/limit.js +5 -0
  83. package/dist/_virtual/limit.js.map +1 -0
  84. package/dist/_virtual/limitItems.js +5 -0
  85. package/dist/_virtual/limitItems.js.map +1 -0
  86. package/dist/_virtual/limitLength.js +5 -0
  87. package/dist/_virtual/limitLength.js.map +1 -0
  88. package/dist/_virtual/limitNumber.js +5 -0
  89. package/dist/_virtual/limitNumber.js.map +1 -0
  90. package/dist/_virtual/limitProperties.js +5 -0
  91. package/dist/_virtual/limitProperties.js.map +1 -0
  92. package/dist/_virtual/metadata.js +5 -0
  93. package/dist/_virtual/metadata.js.map +1 -0
  94. package/dist/_virtual/multipleOf.js +5 -0
  95. package/dist/_virtual/multipleOf.js.map +1 -0
  96. package/dist/_virtual/names.js +5 -0
  97. package/dist/_virtual/names.js.map +1 -0
  98. package/dist/_virtual/not.js +5 -0
  99. package/dist/_virtual/not.js.map +1 -0
  100. package/dist/_virtual/oneOf.js +5 -0
  101. package/dist/_virtual/oneOf.js.map +1 -0
  102. package/dist/_virtual/pattern.js +5 -0
  103. package/dist/_virtual/pattern.js.map +1 -0
  104. package/dist/_virtual/patternProperties.js +5 -0
  105. package/dist/_virtual/patternProperties.js.map +1 -0
  106. package/dist/_virtual/prefixItems.js +5 -0
  107. package/dist/_virtual/prefixItems.js.map +1 -0
  108. package/dist/_virtual/properties.js +5 -0
  109. package/dist/_virtual/properties.js.map +1 -0
  110. package/dist/_virtual/propertyNames.js +5 -0
  111. package/dist/_virtual/propertyNames.js.map +1 -0
  112. package/dist/_virtual/ref.js +5 -0
  113. package/dist/_virtual/ref.js.map +1 -0
  114. package/dist/_virtual/ref_error.js +5 -0
  115. package/dist/_virtual/ref_error.js.map +1 -0
  116. package/dist/_virtual/required.js +5 -0
  117. package/dist/_virtual/required.js.map +1 -0
  118. package/dist/_virtual/resolve.js +5 -0
  119. package/dist/_virtual/resolve.js.map +1 -0
  120. package/dist/_virtual/rules.js +5 -0
  121. package/dist/_virtual/rules.js.map +1 -0
  122. package/dist/_virtual/scope.js +5 -0
  123. package/dist/_virtual/scope.js.map +1 -0
  124. package/dist/_virtual/subschema.js +5 -0
  125. package/dist/_virtual/subschema.js.map +1 -0
  126. package/dist/_virtual/thenElse.js +5 -0
  127. package/dist/_virtual/thenElse.js.map +1 -0
  128. package/dist/_virtual/types.js +5 -0
  129. package/dist/_virtual/types.js.map +1 -0
  130. package/dist/_virtual/ucs2length.js +5 -0
  131. package/dist/_virtual/ucs2length.js.map +1 -0
  132. package/dist/_virtual/uniqueItems.js +5 -0
  133. package/dist/_virtual/uniqueItems.js.map +1 -0
  134. package/dist/_virtual/uri.js +5 -0
  135. package/dist/_virtual/uri.js.map +1 -0
  136. package/dist/_virtual/util.js +5 -0
  137. package/dist/_virtual/util.js.map +1 -0
  138. package/dist/_virtual/validation_error.js +5 -0
  139. package/dist/_virtual/validation_error.js.map +1 -0
  140. package/dist/agents/analyst-agent.d.ts +230 -0
  141. package/dist/agents/analyst-agent.d.ts.map +1 -0
  142. package/dist/agents/analyst-agent.js +793 -0
  143. package/dist/agents/analyst-agent.js.map +1 -0
  144. package/dist/agents/architect-agent.d.ts +248 -0
  145. package/dist/agents/architect-agent.d.ts.map +1 -0
  146. package/dist/agents/architect-agent.js +685 -0
  147. package/dist/agents/architect-agent.js.map +1 -0
  148. package/dist/agents/base-agent.d.ts +169 -0
  149. package/dist/agents/base-agent.d.ts.map +1 -0
  150. package/dist/agents/base-agent.js +441 -0
  151. package/dist/agents/base-agent.js.map +1 -0
  152. package/dist/agents/coder-agent.d.ts +191 -0
  153. package/dist/agents/coder-agent.d.ts.map +1 -0
  154. package/dist/agents/coder-agent.js +1008 -0
  155. package/dist/agents/coder-agent.js.map +1 -0
  156. package/dist/agents/index.d.ts +18 -0
  157. package/dist/agents/index.d.ts.map +1 -0
  158. package/dist/agents/index.js +40 -0
  159. package/dist/agents/index.js.map +1 -0
  160. package/dist/agents/registry.d.ts +213 -0
  161. package/dist/agents/registry.d.ts.map +1 -0
  162. package/dist/agents/registry.js +419 -0
  163. package/dist/agents/registry.js.map +1 -0
  164. package/dist/agents/researcher-agent.d.ts +226 -0
  165. package/dist/agents/researcher-agent.d.ts.map +1 -0
  166. package/dist/agents/researcher-agent.js +572 -0
  167. package/dist/agents/researcher-agent.js.map +1 -0
  168. package/dist/agents/rules-engine.d.ts +320 -0
  169. package/dist/agents/rules-engine.d.ts.map +1 -0
  170. package/dist/agents/rules-engine.js +552 -0
  171. package/dist/agents/rules-engine.js.map +1 -0
  172. package/dist/agents/tester-agent.d.ts +219 -0
  173. package/dist/agents/tester-agent.d.ts.map +1 -0
  174. package/dist/agents/tester-agent.js +683 -0
  175. package/dist/agents/tester-agent.js.map +1 -0
  176. package/dist/agents/types.d.ts +425 -0
  177. package/dist/agents/types.d.ts.map +1 -0
  178. package/dist/agents/types.js +57 -0
  179. package/dist/agents/types.js.map +1 -0
  180. package/dist/audit/config.d.ts +150 -0
  181. package/dist/audit/config.d.ts.map +1 -0
  182. package/dist/audit/config.js +111 -0
  183. package/dist/audit/config.js.map +1 -0
  184. package/dist/audit/index.d.ts +38 -0
  185. package/dist/audit/index.d.ts.map +1 -0
  186. package/dist/audit/services/audit-chain.d.ts +276 -0
  187. package/dist/audit/services/audit-chain.d.ts.map +1 -0
  188. package/dist/audit/services/audit-chain.js +502 -0
  189. package/dist/audit/services/audit-chain.js.map +1 -0
  190. package/dist/audit/services/index.d.ts +11 -0
  191. package/dist/audit/services/index.d.ts.map +1 -0
  192. package/dist/audit/services/syndication.d.ts +334 -0
  193. package/dist/audit/services/syndication.d.ts.map +1 -0
  194. package/dist/audit/services/syndication.js +589 -0
  195. package/dist/audit/services/syndication.js.map +1 -0
  196. package/dist/audit/types.d.ts +453 -0
  197. package/dist/audit/types.d.ts.map +1 -0
  198. package/dist/caching/index.d.ts +55 -0
  199. package/dist/caching/index.d.ts.map +1 -0
  200. package/dist/caching/index.js +206 -0
  201. package/dist/caching/index.js.map +1 -0
  202. package/dist/caching/lru-cache.d.ts +254 -0
  203. package/dist/caching/lru-cache.d.ts.map +1 -0
  204. package/dist/caching/types.d.ts +95 -0
  205. package/dist/caching/types.d.ts.map +1 -0
  206. package/dist/chunking/chunker.d.ts +94 -0
  207. package/dist/chunking/chunker.d.ts.map +1 -0
  208. package/dist/chunking/index.d.ts +125 -0
  209. package/dist/chunking/index.d.ts.map +1 -0
  210. package/dist/chunking/index.js +283 -0
  211. package/dist/chunking/index.js.map +1 -0
  212. package/dist/chunking/types.d.ts +92 -0
  213. package/dist/chunking/types.d.ts.map +1 -0
  214. package/dist/cli/commands/audit.d.ts +21 -0
  215. package/dist/cli/commands/audit.d.ts.map +1 -0
  216. package/dist/cli/commands/audit.js +621 -0
  217. package/dist/cli/commands/audit.js.map +1 -0
  218. package/dist/cli/commands/commit.d.ts +11 -0
  219. package/dist/cli/commands/commit.d.ts.map +1 -0
  220. package/dist/cli/commands/commit.js +379 -0
  221. package/dist/cli/commands/commit.js.map +1 -0
  222. package/dist/cli/commands/config.d.ts +8 -0
  223. package/dist/cli/commands/config.d.ts.map +1 -0
  224. package/dist/cli/commands/config.js +107 -0
  225. package/dist/cli/commands/config.js.map +1 -0
  226. package/dist/cli/commands/cultivate.d.ts +16 -0
  227. package/dist/cli/commands/cultivate.d.ts.map +1 -0
  228. package/dist/cli/commands/cultivate.js +254 -0
  229. package/dist/cli/commands/cultivate.js.map +1 -0
  230. package/dist/cli/commands/diagnostics.d.ts +8 -0
  231. package/dist/cli/commands/diagnostics.d.ts.map +1 -0
  232. package/dist/cli/commands/diagnostics.js +140 -0
  233. package/dist/cli/commands/diagnostics.js.map +1 -0
  234. package/dist/cli/commands/generate.d.ts +13 -0
  235. package/dist/cli/commands/generate.d.ts.map +1 -0
  236. package/dist/cli/commands/init-primitives.d.ts +19 -0
  237. package/dist/cli/commands/init-primitives.d.ts.map +1 -0
  238. package/dist/cli/commands/init-primitives.js +208 -0
  239. package/dist/cli/commands/init-primitives.js.map +1 -0
  240. package/dist/cli/commands/sop.d.ts +14 -0
  241. package/dist/cli/commands/sop.d.ts.map +1 -0
  242. package/dist/cli/commands/sop.js +598 -0
  243. package/dist/cli/commands/sop.js.map +1 -0
  244. package/dist/cli/commands/vector.d.ts +14 -0
  245. package/dist/cli/commands/vector.d.ts.map +1 -0
  246. package/dist/cli/commands/vector.js +429 -0
  247. package/dist/cli/commands/vector.js.map +1 -0
  248. package/dist/cli/commands/workflow.d.ts +12 -0
  249. package/dist/cli/commands/workflow.d.ts.map +1 -0
  250. package/dist/cli/commands/workflow.js +471 -0
  251. package/dist/cli/commands/workflow.js.map +1 -0
  252. package/dist/cli/index.d.ts.map +1 -1
  253. package/dist/cli/index.js +66 -1
  254. package/dist/cli/index.js.map +1 -1
  255. package/dist/config/index.d.ts +153 -0
  256. package/dist/config/index.d.ts.map +1 -0
  257. package/dist/config/index.js +141 -0
  258. package/dist/config/index.js.map +1 -0
  259. package/dist/config/manager.d.ts +136 -0
  260. package/dist/config/manager.d.ts.map +1 -0
  261. package/dist/config/types.d.ts +127 -0
  262. package/dist/config/types.d.ts.map +1 -0
  263. package/dist/core/cache.d.ts +185 -0
  264. package/dist/core/cache.d.ts.map +1 -0
  265. package/dist/core/cache.js +435 -0
  266. package/dist/core/cache.js.map +1 -0
  267. package/dist/cultivation/deep-analyzer.d.ts +129 -0
  268. package/dist/cultivation/deep-analyzer.d.ts.map +1 -0
  269. package/dist/cultivation/deep-analyzer.js +322 -0
  270. package/dist/cultivation/deep-analyzer.js.map +1 -0
  271. package/dist/cultivation/index.d.ts +13 -0
  272. package/dist/cultivation/index.d.ts.map +1 -0
  273. package/dist/cultivation/seed-generator.d.ts +92 -0
  274. package/dist/cultivation/seed-generator.d.ts.map +1 -0
  275. package/dist/cultivation/seed-generator.js +1033 -0
  276. package/dist/cultivation/seed-generator.js.map +1 -0
  277. package/dist/cultivation/types.d.ts +230 -0
  278. package/dist/cultivation/types.d.ts.map +1 -0
  279. package/dist/database/schemas/index.d.ts +85 -0
  280. package/dist/database/schemas/index.d.ts.map +1 -0
  281. package/dist/generators/claude-md.d.ts +7 -0
  282. package/dist/generators/claude-md.d.ts.map +1 -1
  283. package/dist/generators/claude-md.js.map +1 -1
  284. package/dist/generators/docs-init.d.ts +6 -0
  285. package/dist/generators/docs-init.d.ts.map +1 -1
  286. package/dist/generators/docs-init.js.map +1 -1
  287. package/dist/health/checks.d.ts +135 -0
  288. package/dist/health/checks.d.ts.map +1 -0
  289. package/dist/health/index.d.ts +119 -0
  290. package/dist/health/index.d.ts.map +1 -0
  291. package/dist/health/index.js +191 -0
  292. package/dist/health/index.js.map +1 -0
  293. package/dist/health/monitor.d.ts +146 -0
  294. package/dist/health/monitor.d.ts.map +1 -0
  295. package/dist/health/types.d.ts +135 -0
  296. package/dist/health/types.d.ts.map +1 -0
  297. package/dist/index.d.ts +32 -0
  298. package/dist/index.d.ts.map +1 -1
  299. package/dist/index.js +182 -1
  300. package/dist/index.js.map +1 -1
  301. package/dist/integrations/auto-commit.d.ts +175 -0
  302. package/dist/integrations/auto-commit.d.ts.map +1 -0
  303. package/dist/integrations/auto-commit.js +399 -0
  304. package/dist/integrations/auto-commit.js.map +1 -0
  305. package/dist/integrations/git.d.ts +299 -0
  306. package/dist/integrations/git.d.ts.map +1 -0
  307. package/dist/integrations/git.js +465 -0
  308. package/dist/integrations/git.js.map +1 -0
  309. package/dist/mcp-server/bin.d.ts +11 -0
  310. package/dist/mcp-server/bin.d.ts.map +1 -0
  311. package/dist/mcp-server/handlers/index.d.ts +57 -0
  312. package/dist/mcp-server/handlers/index.d.ts.map +1 -0
  313. package/dist/mcp-server/handlers/index.js +235 -0
  314. package/dist/mcp-server/handlers/index.js.map +1 -0
  315. package/dist/mcp-server/index.d.ts +28 -0
  316. package/dist/mcp-server/index.d.ts.map +1 -0
  317. package/dist/mcp-server/server.d.ts +133 -0
  318. package/dist/mcp-server/server.d.ts.map +1 -0
  319. package/dist/mcp-server/server.js +280 -0
  320. package/dist/mcp-server/server.js.map +1 -0
  321. package/dist/mcp-server/tools/agents/index.d.ts +10 -0
  322. package/dist/mcp-server/tools/agents/index.d.ts.map +1 -0
  323. package/dist/mcp-server/tools/agents/list.d.ts +19 -0
  324. package/dist/mcp-server/tools/agents/list.d.ts.map +1 -0
  325. package/dist/mcp-server/tools/agents/spawn.d.ts +19 -0
  326. package/dist/mcp-server/tools/agents/spawn.d.ts.map +1 -0
  327. package/dist/mcp-server/tools/audit/checkpoint.d.ts +58 -0
  328. package/dist/mcp-server/tools/audit/checkpoint.d.ts.map +1 -0
  329. package/dist/mcp-server/tools/audit/checkpoint.js +73 -0
  330. package/dist/mcp-server/tools/audit/checkpoint.js.map +1 -0
  331. package/dist/mcp-server/tools/audit/index.d.ts +53 -0
  332. package/dist/mcp-server/tools/audit/index.d.ts.map +1 -0
  333. package/dist/mcp-server/tools/audit/index.js +12 -0
  334. package/dist/mcp-server/tools/audit/index.js.map +1 -0
  335. package/dist/mcp-server/tools/audit/query.d.ts +58 -0
  336. package/dist/mcp-server/tools/audit/query.d.ts.map +1 -0
  337. package/dist/mcp-server/tools/audit/query.js +125 -0
  338. package/dist/mcp-server/tools/audit/query.js.map +1 -0
  339. package/dist/mcp-server/tools/audit/sync.d.ts +58 -0
  340. package/dist/mcp-server/tools/audit/sync.d.ts.map +1 -0
  341. package/dist/mcp-server/tools/audit/sync.js +126 -0
  342. package/dist/mcp-server/tools/audit/sync.js.map +1 -0
  343. package/dist/mcp-server/tools/graph/generate.d.ts +21 -0
  344. package/dist/mcp-server/tools/graph/generate.d.ts.map +1 -0
  345. package/dist/mcp-server/tools/graph/index.d.ts +11 -0
  346. package/dist/mcp-server/tools/graph/index.d.ts.map +1 -0
  347. package/dist/mcp-server/tools/graph/query.d.ts +22 -0
  348. package/dist/mcp-server/tools/graph/query.d.ts.map +1 -0
  349. package/dist/mcp-server/tools/graph/stats.d.ts +22 -0
  350. package/dist/mcp-server/tools/graph/stats.d.ts.map +1 -0
  351. package/dist/mcp-server/tools/health.d.ts +21 -0
  352. package/dist/mcp-server/tools/health.d.ts.map +1 -0
  353. package/dist/mcp-server/tools/index.d.ts +16 -0
  354. package/dist/mcp-server/tools/index.d.ts.map +1 -0
  355. package/dist/mcp-server/tools/registry.d.ts +90 -0
  356. package/dist/mcp-server/tools/registry.d.ts.map +1 -0
  357. package/dist/mcp-server/tools/registry.js +753 -0
  358. package/dist/mcp-server/tools/registry.js.map +1 -0
  359. package/dist/mcp-server/tools/search/index.d.ts +10 -0
  360. package/dist/mcp-server/tools/search/index.d.ts.map +1 -0
  361. package/dist/mcp-server/tools/search/nodes.d.ts +22 -0
  362. package/dist/mcp-server/tools/search/nodes.d.ts.map +1 -0
  363. package/dist/mcp-server/tools/search/tags.d.ts +22 -0
  364. package/dist/mcp-server/tools/search/tags.d.ts.map +1 -0
  365. package/dist/mcp-server/tools/vector/index.d.ts +12 -0
  366. package/dist/mcp-server/tools/vector/index.d.ts.map +1 -0
  367. package/dist/mcp-server/tools/vector/index.js +12 -0
  368. package/dist/mcp-server/tools/vector/index.js.map +1 -0
  369. package/dist/mcp-server/tools/vector/search.d.ts +41 -0
  370. package/dist/mcp-server/tools/vector/search.d.ts.map +1 -0
  371. package/dist/mcp-server/tools/vector/search.js +224 -0
  372. package/dist/mcp-server/tools/vector/search.js.map +1 -0
  373. package/dist/mcp-server/tools/vector/trajectory.d.ts +39 -0
  374. package/dist/mcp-server/tools/vector/trajectory.d.ts.map +1 -0
  375. package/dist/mcp-server/tools/vector/trajectory.js +170 -0
  376. package/dist/mcp-server/tools/vector/trajectory.js.map +1 -0
  377. package/dist/mcp-server/tools/vector/upsert.d.ts +44 -0
  378. package/dist/mcp-server/tools/vector/upsert.d.ts.map +1 -0
  379. package/dist/mcp-server/tools/vector/upsert.js +175 -0
  380. package/dist/mcp-server/tools/vector/upsert.js.map +1 -0
  381. package/dist/mcp-server/tools/workflow/index.d.ts +29 -0
  382. package/dist/mcp-server/tools/workflow/index.d.ts.map +1 -0
  383. package/dist/mcp-server/tools/workflow/index.js +12 -0
  384. package/dist/mcp-server/tools/workflow/index.js.map +1 -0
  385. package/dist/mcp-server/tools/workflow/list.d.ts +41 -0
  386. package/dist/mcp-server/tools/workflow/list.d.ts.map +1 -0
  387. package/dist/mcp-server/tools/workflow/list.js +195 -0
  388. package/dist/mcp-server/tools/workflow/list.js.map +1 -0
  389. package/dist/mcp-server/tools/workflow/start.d.ts +40 -0
  390. package/dist/mcp-server/tools/workflow/start.d.ts.map +1 -0
  391. package/dist/mcp-server/tools/workflow/start.js +165 -0
  392. package/dist/mcp-server/tools/workflow/start.js.map +1 -0
  393. package/dist/mcp-server/tools/workflow/status.d.ts +38 -0
  394. package/dist/mcp-server/tools/workflow/status.d.ts.map +1 -0
  395. package/dist/mcp-server/tools/workflow/status.js +97 -0
  396. package/dist/mcp-server/tools/workflow/status.js.map +1 -0
  397. package/dist/mcp-server/types/index.d.ts +286 -0
  398. package/dist/mcp-server/types/index.d.ts.map +1 -0
  399. package/dist/memory/index.d.ts +10 -0
  400. package/dist/memory/index.d.ts.map +1 -0
  401. package/dist/memory/vault-sync.d.ts +212 -0
  402. package/dist/memory/vault-sync.d.ts.map +1 -0
  403. package/dist/memory/vault-sync.js +463 -0
  404. package/dist/memory/vault-sync.js.map +1 -0
  405. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js +296 -0
  406. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js.map +1 -0
  407. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-compat.js +71 -0
  408. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-compat.js.map +1 -0
  409. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-json-schema-compat.js +26 -0
  410. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-json-schema-compat.js.map +1 -0
  411. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js +407 -0
  412. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js.map +1 -0
  413. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/types.js +1332 -0
  414. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/types.js.map +1 -0
  415. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/validation/ajv-provider.js +71 -0
  416. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/validation/ajv-provider.js.map +1 -0
  417. package/dist/node_modules/ajv/dist/ajv.js +84 -0
  418. package/dist/node_modules/ajv/dist/ajv.js.map +1 -0
  419. package/dist/node_modules/ajv/dist/compile/codegen/code.js +160 -0
  420. package/dist/node_modules/ajv/dist/compile/codegen/code.js.map +1 -0
  421. package/dist/node_modules/ajv/dist/compile/codegen/index.js +728 -0
  422. package/dist/node_modules/ajv/dist/compile/codegen/index.js.map +1 -0
  423. package/dist/node_modules/ajv/dist/compile/codegen/scope.js +152 -0
  424. package/dist/node_modules/ajv/dist/compile/codegen/scope.js.map +1 -0
  425. package/dist/node_modules/ajv/dist/compile/errors.js +131 -0
  426. package/dist/node_modules/ajv/dist/compile/errors.js.map +1 -0
  427. package/dist/node_modules/ajv/dist/compile/index.js +234 -0
  428. package/dist/node_modules/ajv/dist/compile/index.js.map +1 -0
  429. package/dist/node_modules/ajv/dist/compile/names.js +44 -0
  430. package/dist/node_modules/ajv/dist/compile/names.js.map +1 -0
  431. package/dist/node_modules/ajv/dist/compile/ref_error.js +22 -0
  432. package/dist/node_modules/ajv/dist/compile/ref_error.js.map +1 -0
  433. package/dist/node_modules/ajv/dist/compile/resolve.js +163 -0
  434. package/dist/node_modules/ajv/dist/compile/resolve.js.map +1 -0
  435. package/dist/node_modules/ajv/dist/compile/rules.js +35 -0
  436. package/dist/node_modules/ajv/dist/compile/rules.js.map +1 -0
  437. package/dist/node_modules/ajv/dist/compile/util.js +173 -0
  438. package/dist/node_modules/ajv/dist/compile/util.js.map +1 -0
  439. package/dist/node_modules/ajv/dist/compile/validate/applicability.js +27 -0
  440. package/dist/node_modules/ajv/dist/compile/validate/applicability.js.map +1 -0
  441. package/dist/node_modules/ajv/dist/compile/validate/boolSchema.js +58 -0
  442. package/dist/node_modules/ajv/dist/compile/validate/boolSchema.js.map +1 -0
  443. package/dist/node_modules/ajv/dist/compile/validate/dataType.js +193 -0
  444. package/dist/node_modules/ajv/dist/compile/validate/dataType.js.map +1 -0
  445. package/dist/node_modules/ajv/dist/compile/validate/defaults.js +43 -0
  446. package/dist/node_modules/ajv/dist/compile/validate/defaults.js.map +1 -0
  447. package/dist/node_modules/ajv/dist/compile/validate/index.js +522 -0
  448. package/dist/node_modules/ajv/dist/compile/validate/index.js.map +1 -0
  449. package/dist/node_modules/ajv/dist/compile/validate/keyword.js +126 -0
  450. package/dist/node_modules/ajv/dist/compile/validate/keyword.js.map +1 -0
  451. package/dist/node_modules/ajv/dist/compile/validate/subschema.js +89 -0
  452. package/dist/node_modules/ajv/dist/compile/validate/subschema.js.map +1 -0
  453. package/dist/node_modules/ajv/dist/core.js +628 -0
  454. package/dist/node_modules/ajv/dist/core.js.map +1 -0
  455. package/dist/node_modules/ajv/dist/refs/data.json.js +24 -0
  456. package/dist/node_modules/ajv/dist/refs/data.json.js.map +1 -0
  457. package/dist/node_modules/ajv/dist/refs/json-schema-draft-07.json.js +25 -0
  458. package/dist/node_modules/ajv/dist/refs/json-schema-draft-07.json.js.map +1 -0
  459. package/dist/node_modules/ajv/dist/runtime/equal.js +16 -0
  460. package/dist/node_modules/ajv/dist/runtime/equal.js.map +1 -0
  461. package/dist/node_modules/ajv/dist/runtime/ucs2length.js +30 -0
  462. package/dist/node_modules/ajv/dist/runtime/ucs2length.js.map +1 -0
  463. package/dist/node_modules/ajv/dist/runtime/uri.js +16 -0
  464. package/dist/node_modules/ajv/dist/runtime/uri.js.map +1 -0
  465. package/dist/node_modules/ajv/dist/runtime/validation_error.js +20 -0
  466. package/dist/node_modules/ajv/dist/runtime/validation_error.js.map +1 -0
  467. package/dist/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js +59 -0
  468. package/dist/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js.map +1 -0
  469. package/dist/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js +114 -0
  470. package/dist/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js.map +1 -0
  471. package/dist/node_modules/ajv/dist/vocabularies/applicator/allOf.js +32 -0
  472. package/dist/node_modules/ajv/dist/vocabularies/applicator/allOf.js.map +1 -0
  473. package/dist/node_modules/ajv/dist/vocabularies/applicator/anyOf.js +22 -0
  474. package/dist/node_modules/ajv/dist/vocabularies/applicator/anyOf.js.map +1 -0
  475. package/dist/node_modules/ajv/dist/vocabularies/applicator/contains.js +100 -0
  476. package/dist/node_modules/ajv/dist/vocabularies/applicator/contains.js.map +1 -0
  477. package/dist/node_modules/ajv/dist/vocabularies/applicator/dependencies.js +103 -0
  478. package/dist/node_modules/ajv/dist/vocabularies/applicator/dependencies.js.map +1 -0
  479. package/dist/node_modules/ajv/dist/vocabularies/applicator/if.js +75 -0
  480. package/dist/node_modules/ajv/dist/vocabularies/applicator/if.js.map +1 -0
  481. package/dist/node_modules/ajv/dist/vocabularies/applicator/index.js +68 -0
  482. package/dist/node_modules/ajv/dist/vocabularies/applicator/index.js.map +1 -0
  483. package/dist/node_modules/ajv/dist/vocabularies/applicator/items.js +64 -0
  484. package/dist/node_modules/ajv/dist/vocabularies/applicator/items.js.map +1 -0
  485. package/dist/node_modules/ajv/dist/vocabularies/applicator/items2020.js +43 -0
  486. package/dist/node_modules/ajv/dist/vocabularies/applicator/items2020.js.map +1 -0
  487. package/dist/node_modules/ajv/dist/vocabularies/applicator/not.js +36 -0
  488. package/dist/node_modules/ajv/dist/vocabularies/applicator/not.js.map +1 -0
  489. package/dist/node_modules/ajv/dist/vocabularies/applicator/oneOf.js +64 -0
  490. package/dist/node_modules/ajv/dist/vocabularies/applicator/oneOf.js.map +1 -0
  491. package/dist/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js +81 -0
  492. package/dist/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js.map +1 -0
  493. package/dist/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js +22 -0
  494. package/dist/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js.map +1 -0
  495. package/dist/node_modules/ajv/dist/vocabularies/applicator/properties.js +66 -0
  496. package/dist/node_modules/ajv/dist/vocabularies/applicator/properties.js.map +1 -0
  497. package/dist/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js +49 -0
  498. package/dist/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js.map +1 -0
  499. package/dist/node_modules/ajv/dist/vocabularies/applicator/thenElse.js +23 -0
  500. package/dist/node_modules/ajv/dist/vocabularies/applicator/thenElse.js.map +1 -0
  501. package/dist/node_modules/ajv/dist/vocabularies/code.js +140 -0
  502. package/dist/node_modules/ajv/dist/vocabularies/code.js.map +1 -0
  503. package/dist/node_modules/ajv/dist/vocabularies/core/id.js +19 -0
  504. package/dist/node_modules/ajv/dist/vocabularies/core/id.js.map +1 -0
  505. package/dist/node_modules/ajv/dist/vocabularies/core/index.js +27 -0
  506. package/dist/node_modules/ajv/dist/vocabularies/core/index.js.map +1 -0
  507. package/dist/node_modules/ajv/dist/vocabularies/core/ref.js +132 -0
  508. package/dist/node_modules/ajv/dist/vocabularies/core/ref.js.map +1 -0
  509. package/dist/node_modules/ajv/dist/vocabularies/discriminator/index.js +114 -0
  510. package/dist/node_modules/ajv/dist/vocabularies/discriminator/index.js.map +1 -0
  511. package/dist/node_modules/ajv/dist/vocabularies/discriminator/types.js +18 -0
  512. package/dist/node_modules/ajv/dist/vocabularies/discriminator/types.js.map +1 -0
  513. package/dist/node_modules/ajv/dist/vocabularies/draft7.js +31 -0
  514. package/dist/node_modules/ajv/dist/vocabularies/draft7.js.map +1 -0
  515. package/dist/node_modules/ajv/dist/vocabularies/format/format.js +95 -0
  516. package/dist/node_modules/ajv/dist/vocabularies/format/format.js.map +1 -0
  517. package/dist/node_modules/ajv/dist/vocabularies/format/index.js +16 -0
  518. package/dist/node_modules/ajv/dist/vocabularies/format/index.js.map +1 -0
  519. package/dist/node_modules/ajv/dist/vocabularies/metadata.js +27 -0
  520. package/dist/node_modules/ajv/dist/vocabularies/metadata.js.map +1 -0
  521. package/dist/node_modules/ajv/dist/vocabularies/validation/const.js +36 -0
  522. package/dist/node_modules/ajv/dist/vocabularies/validation/const.js.map +1 -0
  523. package/dist/node_modules/ajv/dist/vocabularies/validation/enum.js +56 -0
  524. package/dist/node_modules/ajv/dist/vocabularies/validation/enum.js.map +1 -0
  525. package/dist/node_modules/ajv/dist/vocabularies/validation/index.js +52 -0
  526. package/dist/node_modules/ajv/dist/vocabularies/validation/index.js.map +1 -0
  527. package/dist/node_modules/ajv/dist/vocabularies/validation/limitItems.js +34 -0
  528. package/dist/node_modules/ajv/dist/vocabularies/validation/limitItems.js.map +1 -0
  529. package/dist/node_modules/ajv/dist/vocabularies/validation/limitLength.js +39 -0
  530. package/dist/node_modules/ajv/dist/vocabularies/validation/limitLength.js.map +1 -0
  531. package/dist/node_modules/ajv/dist/vocabularies/validation/limitNumber.js +37 -0
  532. package/dist/node_modules/ajv/dist/vocabularies/validation/limitNumber.js.map +1 -0
  533. package/dist/node_modules/ajv/dist/vocabularies/validation/limitProperties.js +34 -0
  534. package/dist/node_modules/ajv/dist/vocabularies/validation/limitProperties.js.map +1 -0
  535. package/dist/node_modules/ajv/dist/vocabularies/validation/multipleOf.js +33 -0
  536. package/dist/node_modules/ajv/dist/vocabularies/validation/multipleOf.js.map +1 -0
  537. package/dist/node_modules/ajv/dist/vocabularies/validation/pattern.js +34 -0
  538. package/dist/node_modules/ajv/dist/vocabularies/validation/pattern.js.map +1 -0
  539. package/dist/node_modules/ajv/dist/vocabularies/validation/required.js +89 -0
  540. package/dist/node_modules/ajv/dist/vocabularies/validation/required.js.map +1 -0
  541. package/dist/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js +75 -0
  542. package/dist/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js.map +1 -0
  543. package/dist/node_modules/ajv-formats/dist/formats.js +209 -0
  544. package/dist/node_modules/ajv-formats/dist/formats.js.map +1 -0
  545. package/dist/node_modules/ajv-formats/dist/index.js +51 -0
  546. package/dist/node_modules/ajv-formats/dist/index.js.map +1 -0
  547. package/dist/node_modules/ajv-formats/dist/limit.js +80 -0
  548. package/dist/node_modules/ajv-formats/dist/limit.js.map +1 -0
  549. package/dist/node_modules/fast-deep-equal/index.js +39 -0
  550. package/dist/node_modules/fast-deep-equal/index.js.map +1 -0
  551. package/dist/node_modules/fast-uri/index.js +261 -0
  552. package/dist/node_modules/fast-uri/index.js.map +1 -0
  553. package/dist/node_modules/fast-uri/lib/schemes.js +215 -0
  554. package/dist/node_modules/fast-uri/lib/schemes.js.map +1 -0
  555. package/dist/node_modules/fast-uri/lib/utils.js +261 -0
  556. package/dist/node_modules/fast-uri/lib/utils.js.map +1 -0
  557. package/dist/node_modules/json-schema-traverse/index.js +92 -0
  558. package/dist/node_modules/json-schema-traverse/index.js.map +1 -0
  559. package/dist/node_modules/zod/v4/classic/errors.js +37 -0
  560. package/dist/node_modules/zod/v4/classic/errors.js.map +1 -0
  561. package/dist/node_modules/zod/v4/classic/iso.js +43 -0
  562. package/dist/node_modules/zod/v4/classic/iso.js.map +1 -0
  563. package/dist/node_modules/zod/v4/classic/parse.js +13 -0
  564. package/dist/node_modules/zod/v4/classic/parse.js.map +1 -0
  565. package/dist/node_modules/zod/v4/classic/schemas.js +688 -0
  566. package/dist/node_modules/zod/v4/classic/schemas.js.map +1 -0
  567. package/dist/node_modules/zod/v4/core/api.js +492 -0
  568. package/dist/node_modules/zod/v4/core/api.js.map +1 -0
  569. package/dist/node_modules/zod/v4/core/checks.js +405 -0
  570. package/dist/node_modules/zod/v4/core/checks.js.map +1 -0
  571. package/dist/node_modules/zod/v4/core/core.js +58 -0
  572. package/dist/node_modules/zod/v4/core/core.js.map +1 -0
  573. package/dist/node_modules/zod/v4/core/doc.js +38 -0
  574. package/dist/node_modules/zod/v4/core/doc.js.map +1 -0
  575. package/dist/node_modules/zod/v4/core/errors.js +82 -0
  576. package/dist/node_modules/zod/v4/core/errors.js.map +1 -0
  577. package/dist/node_modules/zod/v4/core/parse.js +60 -0
  578. package/dist/node_modules/zod/v4/core/parse.js.map +1 -0
  579. package/dist/node_modules/zod/v4/core/regexes.js +87 -0
  580. package/dist/node_modules/zod/v4/core/regexes.js.map +1 -0
  581. package/dist/node_modules/zod/v4/core/registries.js +52 -0
  582. package/dist/node_modules/zod/v4/core/registries.js.map +1 -0
  583. package/dist/node_modules/zod/v4/core/schemas.js +1283 -0
  584. package/dist/node_modules/zod/v4/core/schemas.js.map +1 -0
  585. package/dist/node_modules/zod/v4/core/util.js +341 -0
  586. package/dist/node_modules/zod/v4/core/util.js.map +1 -0
  587. package/dist/node_modules/zod/v4/core/versions.js +9 -0
  588. package/dist/node_modules/zod/v4/core/versions.js.map +1 -0
  589. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/string.js +2 -0
  590. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/string.js.map +1 -0
  591. package/dist/reasoning/index.d.ts +74 -0
  592. package/dist/reasoning/index.d.ts.map +1 -0
  593. package/dist/reasoning/index.js +124 -0
  594. package/dist/reasoning/index.js.map +1 -0
  595. package/dist/reasoning/tracker.d.ts +210 -0
  596. package/dist/reasoning/tracker.d.ts.map +1 -0
  597. package/dist/reasoning/types.d.ts +146 -0
  598. package/dist/reasoning/types.d.ts.map +1 -0
  599. package/dist/recovery/backup.d.ts +110 -0
  600. package/dist/recovery/backup.d.ts.map +1 -0
  601. package/dist/recovery/index.d.ts +70 -0
  602. package/dist/recovery/index.d.ts.map +1 -0
  603. package/dist/recovery/index.js +186 -0
  604. package/dist/recovery/index.js.map +1 -0
  605. package/dist/recovery/integrity.d.ts +74 -0
  606. package/dist/recovery/integrity.d.ts.map +1 -0
  607. package/dist/recovery/types.d.ts +94 -0
  608. package/dist/recovery/types.d.ts.map +1 -0
  609. package/dist/services/index.d.ts +130 -0
  610. package/dist/services/index.d.ts.map +1 -0
  611. package/dist/services/index.js +134 -0
  612. package/dist/services/index.js.map +1 -0
  613. package/dist/services/manager.d.ts +140 -0
  614. package/dist/services/manager.d.ts.map +1 -0
  615. package/dist/services/types.d.ts +106 -0
  616. package/dist/services/types.d.ts.map +1 -0
  617. package/dist/services/watchers.d.ts +95 -0
  618. package/dist/services/watchers.d.ts.map +1 -0
  619. package/dist/sops/compliance-checker.d.ts +83 -0
  620. package/dist/sops/compliance-checker.d.ts.map +1 -0
  621. package/dist/sops/compliance-checker.js +399 -0
  622. package/dist/sops/compliance-checker.js.map +1 -0
  623. package/dist/sops/gap-analyzer.d.ts +124 -0
  624. package/dist/sops/gap-analyzer.d.ts.map +1 -0
  625. package/dist/sops/gap-analyzer.js +313 -0
  626. package/dist/sops/gap-analyzer.js.map +1 -0
  627. package/dist/sops/index.d.ts +14 -0
  628. package/dist/sops/index.d.ts.map +1 -0
  629. package/dist/sops/overlay-manager.d.ts +115 -0
  630. package/dist/sops/overlay-manager.d.ts.map +1 -0
  631. package/dist/sops/overlay-manager.js +394 -0
  632. package/dist/sops/overlay-manager.js.map +1 -0
  633. package/dist/sops/registry.d.ts +73 -0
  634. package/dist/sops/registry.d.ts.map +1 -0
  635. package/dist/sops/registry.js +919 -0
  636. package/dist/sops/registry.js.map +1 -0
  637. package/dist/sops/types.d.ts +377 -0
  638. package/dist/sops/types.d.ts.map +1 -0
  639. package/dist/sops/types.js +46 -0
  640. package/dist/sops/types.js.map +1 -0
  641. package/dist/utils/error-recovery.d.ts +230 -0
  642. package/dist/utils/error-recovery.d.ts.map +1 -0
  643. package/dist/utils/error-recovery.js +228 -0
  644. package/dist/utils/error-recovery.js.map +1 -0
  645. package/dist/utils/error-taxonomy.d.ts +149 -0
  646. package/dist/utils/error-taxonomy.d.ts.map +1 -0
  647. package/dist/utils/error-taxonomy.js +260 -0
  648. package/dist/utils/error-taxonomy.js.map +1 -0
  649. package/dist/utils/index.d.ts +11 -0
  650. package/dist/utils/index.d.ts.map +1 -0
  651. package/dist/utils/logger.d.ts +139 -0
  652. package/dist/utils/logger.d.ts.map +1 -0
  653. package/dist/utils/logger.js +311 -0
  654. package/dist/utils/logger.js.map +1 -0
  655. package/dist/vector/config.d.ts +300 -0
  656. package/dist/vector/config.d.ts.map +1 -0
  657. package/dist/vector/config.js +124 -0
  658. package/dist/vector/config.js.map +1 -0
  659. package/dist/vector/index.d.ts +50 -0
  660. package/dist/vector/index.d.ts.map +1 -0
  661. package/dist/vector/services/index.d.ts +13 -0
  662. package/dist/vector/services/index.d.ts.map +1 -0
  663. package/dist/vector/services/trajectory-tracker.d.ts +405 -0
  664. package/dist/vector/services/trajectory-tracker.d.ts.map +1 -0
  665. package/dist/vector/services/trajectory-tracker.js +445 -0
  666. package/dist/vector/services/trajectory-tracker.js.map +1 -0
  667. package/dist/vector/services/vector-store.d.ts +339 -0
  668. package/dist/vector/services/vector-store.d.ts.map +1 -0
  669. package/dist/vector/services/vector-store.js +748 -0
  670. package/dist/vector/services/vector-store.js.map +1 -0
  671. package/dist/vector/types.d.ts +677 -0
  672. package/dist/vector/types.d.ts.map +1 -0
  673. package/dist/workflow/adapters/goap-adapter.d.ts +196 -0
  674. package/dist/workflow/adapters/goap-adapter.d.ts.map +1 -0
  675. package/dist/workflow/adapters/goap-adapter.js +706 -0
  676. package/dist/workflow/adapters/goap-adapter.js.map +1 -0
  677. package/dist/workflow/adapters/index.d.ts +10 -0
  678. package/dist/workflow/adapters/index.d.ts.map +1 -0
  679. package/dist/workflow/config.d.ts +135 -0
  680. package/dist/workflow/config.d.ts.map +1 -0
  681. package/dist/workflow/config.js +92 -0
  682. package/dist/workflow/config.js.map +1 -0
  683. package/dist/workflow/handlers/index.d.ts +9 -0
  684. package/dist/workflow/handlers/index.d.ts.map +1 -0
  685. package/dist/workflow/handlers/webhook-handlers.d.ts +397 -0
  686. package/dist/workflow/handlers/webhook-handlers.d.ts.map +1 -0
  687. package/dist/workflow/handlers/webhook-handlers.js +454 -0
  688. package/dist/workflow/handlers/webhook-handlers.js.map +1 -0
  689. package/dist/workflow/index.d.ts +42 -0
  690. package/dist/workflow/index.d.ts.map +1 -0
  691. package/dist/workflow/services/index.d.ts +9 -0
  692. package/dist/workflow/services/index.d.ts.map +1 -0
  693. package/dist/workflow/services/workflow-service.d.ts +318 -0
  694. package/dist/workflow/services/workflow-service.d.ts.map +1 -0
  695. package/dist/workflow/services/workflow-service.js +577 -0
  696. package/dist/workflow/services/workflow-service.js.map +1 -0
  697. package/dist/workflow/types.d.ts +470 -0
  698. package/dist/workflow/types.d.ts.map +1 -0
  699. package/dist/workflow/workflows/realtime-collab.d.ts +245 -0
  700. package/dist/workflow/workflows/realtime-collab.d.ts.map +1 -0
  701. package/dist/workflows/index.d.ts +11 -0
  702. package/dist/workflows/index.d.ts.map +1 -0
  703. package/dist/workflows/registry.d.ts +118 -0
  704. package/dist/workflows/registry.d.ts.map +1 -0
  705. package/dist/workflows/registry.js +575 -0
  706. package/dist/workflows/registry.js.map +1 -0
  707. package/dist/workflows/types.d.ts +322 -0
  708. package/dist/workflows/types.d.ts.map +1 -0
  709. package/dist/workflows/types.js +16 -0
  710. package/dist/workflows/types.js.map +1 -0
  711. package/package.json +1 -1
@@ -0,0 +1,419 @@
1
+ import { getLogger } from "../utils/logger.js";
2
+ import { AgentType, createAgentId, AgentStatus } from "./types.js";
3
+ class AgentRegistry {
4
+ registrations = /* @__PURE__ */ new Map();
5
+ instances = /* @__PURE__ */ new Map();
6
+ instancesByType = /* @__PURE__ */ new Map();
7
+ logger;
8
+ options;
9
+ healthCheckTimer;
10
+ constructor(options = {}) {
11
+ this.logger = options.logger ?? getLogger().child("agent-registry");
12
+ this.options = {
13
+ logger: this.logger,
14
+ maxAgentsPerType: options.maxAgentsPerType ?? 10,
15
+ defaultTimeout: options.defaultTimeout ?? 3e4,
16
+ enableHealthMonitoring: options.enableHealthMonitoring ?? false,
17
+ healthCheckInterval: options.healthCheckInterval ?? 3e4
18
+ };
19
+ for (const type of Object.values(AgentType)) {
20
+ this.instancesByType.set(type, /* @__PURE__ */ new Set());
21
+ }
22
+ if (this.options.enableHealthMonitoring) {
23
+ this.startHealthMonitoring();
24
+ }
25
+ }
26
+ // ============================================================================
27
+ // Registration Methods
28
+ // ============================================================================
29
+ /**
30
+ * Register an agent type with its factory function
31
+ */
32
+ register(type, factory, options) {
33
+ if (this.registrations.has(type)) {
34
+ this.logger.warn(`Overwriting existing registration for agent type: ${type}`);
35
+ }
36
+ const registration = {
37
+ type,
38
+ factory,
39
+ defaultConfig: options?.defaultConfig,
40
+ capabilities: options?.capabilities ?? [],
41
+ metadata: options?.metadata,
42
+ registeredAt: /* @__PURE__ */ new Date()
43
+ };
44
+ this.registrations.set(type, registration);
45
+ this.logger.info(`Registered agent type: ${type}`, {
46
+ capabilities: registration.capabilities.map((c) => c.name)
47
+ });
48
+ }
49
+ /**
50
+ * Unregister an agent type
51
+ */
52
+ unregister(type) {
53
+ const instances = this.instancesByType.get(type);
54
+ if (instances) {
55
+ for (const id of instances) {
56
+ void this.terminateAgent(id);
57
+ }
58
+ }
59
+ const result = this.registrations.delete(type);
60
+ if (result) {
61
+ this.logger.info(`Unregistered agent type: ${type}`);
62
+ }
63
+ return result;
64
+ }
65
+ /**
66
+ * Check if an agent type is registered
67
+ */
68
+ isRegistered(type) {
69
+ return this.registrations.has(type);
70
+ }
71
+ /**
72
+ * Get registration info for an agent type
73
+ */
74
+ getRegistration(type) {
75
+ return this.registrations.get(type);
76
+ }
77
+ // ============================================================================
78
+ // Agent Lifecycle Methods
79
+ // ============================================================================
80
+ /**
81
+ * Spawn a new agent instance
82
+ */
83
+ async spawn(type, config, options) {
84
+ const registration = this.registrations.get(type);
85
+ if (!registration) {
86
+ throw new Error(`Agent type not registered: ${type}`);
87
+ }
88
+ const existingCount = this.instancesByType.get(type)?.size ?? 0;
89
+ if (existingCount >= this.options.maxAgentsPerType) {
90
+ throw new Error(
91
+ `Maximum agents of type ${type} reached (${this.options.maxAgentsPerType})`
92
+ );
93
+ }
94
+ const fullConfig = {
95
+ ...registration.defaultConfig,
96
+ ...config,
97
+ type,
98
+ id: options?.id ?? createAgentId(type),
99
+ ...options?.configOverrides
100
+ };
101
+ this.logger.debug(`Spawning agent: ${fullConfig.id}`, {
102
+ type,
103
+ name: fullConfig.name
104
+ });
105
+ try {
106
+ const agent = await registration.factory(fullConfig);
107
+ this.instances.set(fullConfig.id, agent);
108
+ this.instancesByType.get(type)?.add(fullConfig.id);
109
+ this.logger.info(`Agent spawned: ${fullConfig.id}`, {
110
+ type,
111
+ name: fullConfig.name,
112
+ capabilities: fullConfig.capabilities
113
+ });
114
+ return agent;
115
+ } catch (error) {
116
+ this.logger.error(
117
+ `Failed to spawn agent: ${fullConfig.id}`,
118
+ error instanceof Error ? error : new Error(String(error))
119
+ );
120
+ throw error;
121
+ }
122
+ }
123
+ /**
124
+ * Spawn multiple agents in parallel
125
+ */
126
+ async spawnMultiple(specs) {
127
+ const results = await Promise.allSettled(
128
+ specs.map((spec) => this.spawn(spec.type, spec.config, spec.options))
129
+ );
130
+ const agents = [];
131
+ const errors = [];
132
+ for (const result of results) {
133
+ if (result.status === "fulfilled") {
134
+ agents.push(result.value);
135
+ } else {
136
+ errors.push(result.reason);
137
+ }
138
+ }
139
+ if (errors.length > 0) {
140
+ this.logger.warn(`${errors.length} agents failed to spawn`, {
141
+ totalRequested: specs.length,
142
+ spawned: agents.length,
143
+ failed: errors.length
144
+ });
145
+ }
146
+ return agents;
147
+ }
148
+ /**
149
+ * Get an agent instance by ID
150
+ */
151
+ get(id) {
152
+ return this.instances.get(id);
153
+ }
154
+ /**
155
+ * Get all agent instances
156
+ */
157
+ getAll() {
158
+ return Array.from(this.instances.values());
159
+ }
160
+ /**
161
+ * Get agents by type
162
+ */
163
+ getByType(type) {
164
+ const ids = this.instancesByType.get(type);
165
+ if (!ids) return [];
166
+ return Array.from(ids).map((id) => this.instances.get(id)).filter((agent) => agent !== void 0);
167
+ }
168
+ /**
169
+ * List all registered agent types
170
+ */
171
+ listTypes() {
172
+ return Array.from(this.registrations.entries()).map(([type, reg]) => ({
173
+ type,
174
+ capabilities: reg.capabilities,
175
+ instanceCount: this.instancesByType.get(type)?.size ?? 0
176
+ }));
177
+ }
178
+ /**
179
+ * List all active agent instances
180
+ */
181
+ listInstances() {
182
+ return Array.from(this.instances.entries()).map(([id, agent]) => ({
183
+ id,
184
+ type: agent.config.type,
185
+ name: agent.config.name,
186
+ status: agent.getStatus()
187
+ }));
188
+ }
189
+ /**
190
+ * Terminate an agent instance
191
+ */
192
+ async terminateAgent(id) {
193
+ const agent = this.instances.get(id);
194
+ if (!agent) {
195
+ return false;
196
+ }
197
+ try {
198
+ await agent.terminate();
199
+ this.instances.delete(id);
200
+ this.instancesByType.get(agent.config.type)?.delete(id);
201
+ this.logger.info(`Agent terminated: ${id}`);
202
+ return true;
203
+ } catch (error) {
204
+ this.logger.error(
205
+ `Failed to terminate agent: ${id}`,
206
+ error instanceof Error ? error : new Error(String(error))
207
+ );
208
+ this.instances.delete(id);
209
+ this.instancesByType.get(agent.config.type)?.delete(id);
210
+ return false;
211
+ }
212
+ }
213
+ /**
214
+ * Terminate all agents of a specific type
215
+ */
216
+ async terminateByType(type) {
217
+ const ids = this.instancesByType.get(type);
218
+ if (!ids || ids.size === 0) return 0;
219
+ const results = await Promise.allSettled(
220
+ Array.from(ids).map((id) => this.terminateAgent(id))
221
+ );
222
+ return results.filter((r) => r.status === "fulfilled" && r.value).length;
223
+ }
224
+ /**
225
+ * Terminate all agents
226
+ */
227
+ async terminateAll() {
228
+ const ids = Array.from(this.instances.keys());
229
+ const results = await Promise.allSettled(
230
+ ids.map((id) => this.terminateAgent(id))
231
+ );
232
+ return results.filter((r) => r.status === "fulfilled" && r.value).length;
233
+ }
234
+ // ============================================================================
235
+ // Health Monitoring Methods
236
+ // ============================================================================
237
+ /**
238
+ * Start health monitoring
239
+ */
240
+ startHealthMonitoring() {
241
+ if (this.healthCheckTimer) {
242
+ clearInterval(this.healthCheckTimer);
243
+ }
244
+ this.healthCheckTimer = setInterval(async () => {
245
+ await this.performHealthChecks();
246
+ }, this.options.healthCheckInterval);
247
+ this.logger.debug("Health monitoring started", {
248
+ interval: this.options.healthCheckInterval
249
+ });
250
+ }
251
+ /**
252
+ * Stop health monitoring
253
+ */
254
+ stopHealthMonitoring() {
255
+ if (this.healthCheckTimer) {
256
+ clearInterval(this.healthCheckTimer);
257
+ this.healthCheckTimer = void 0;
258
+ this.logger.debug("Health monitoring stopped");
259
+ }
260
+ }
261
+ /**
262
+ * Perform health checks on all agents
263
+ */
264
+ async performHealthChecks() {
265
+ const checks = [];
266
+ for (const [id, agent] of this.instances) {
267
+ const check = {
268
+ agentId: id,
269
+ healthy: true,
270
+ status: agent.getStatus(),
271
+ lastHeartbeat: /* @__PURE__ */ new Date()
272
+ };
273
+ if (agent.state.status === AgentStatus.RUNNING) {
274
+ const stuckThreshold = this.options.defaultTimeout * 2;
275
+ const elapsed = Date.now() - agent.state.lastActivity.getTime();
276
+ if (elapsed > stuckThreshold) {
277
+ check.healthy = false;
278
+ check.error = `Agent appears stuck (${elapsed}ms since last activity)`;
279
+ }
280
+ }
281
+ if (agent.state.errorCount > 5) {
282
+ check.healthy = false;
283
+ check.error = `High error count: ${agent.state.errorCount}`;
284
+ }
285
+ checks.push(check);
286
+ if (!check.healthy) {
287
+ this.logger.warn(`Unhealthy agent detected: ${id}`, {
288
+ status: check.status,
289
+ error: check.error
290
+ });
291
+ }
292
+ }
293
+ return checks;
294
+ }
295
+ /**
296
+ * Get health status for a specific agent
297
+ */
298
+ async getAgentHealth(id) {
299
+ const agent = this.instances.get(id);
300
+ if (!agent) return null;
301
+ return {
302
+ agentId: id,
303
+ healthy: agent.state.errorCount < 5,
304
+ status: agent.getStatus(),
305
+ lastHeartbeat: agent.state.lastActivity,
306
+ error: agent.state.errorCount >= 5 ? `High error count: ${agent.state.errorCount}` : void 0
307
+ };
308
+ }
309
+ // ============================================================================
310
+ // Utility Methods
311
+ // ============================================================================
312
+ /**
313
+ * Get registry statistics
314
+ */
315
+ getStats() {
316
+ const instancesByStatus = {};
317
+ for (const agent of this.instances.values()) {
318
+ const status = agent.getStatus();
319
+ instancesByStatus[status] = (instancesByStatus[status] ?? 0) + 1;
320
+ }
321
+ return {
322
+ registeredTypes: this.registrations.size,
323
+ totalInstances: this.instances.size,
324
+ instancesByType: Object.fromEntries(
325
+ Array.from(this.instancesByType.entries()).map(([type, ids]) => [
326
+ type,
327
+ ids.size
328
+ ])
329
+ ),
330
+ instancesByStatus
331
+ };
332
+ }
333
+ /**
334
+ * Clear all registrations and instances
335
+ */
336
+ async clear() {
337
+ await this.terminateAll();
338
+ this.registrations.clear();
339
+ this.stopHealthMonitoring();
340
+ this.logger.info("Registry cleared");
341
+ }
342
+ /**
343
+ * Dispose of the registry
344
+ */
345
+ async dispose() {
346
+ await this.clear();
347
+ this.logger.info("Registry disposed");
348
+ }
349
+ }
350
+ let defaultRegistry = null;
351
+ function getRegistry() {
352
+ if (!defaultRegistry) {
353
+ defaultRegistry = new AgentRegistry();
354
+ }
355
+ return defaultRegistry;
356
+ }
357
+ function createRegistry(options) {
358
+ return new AgentRegistry(options);
359
+ }
360
+ function setDefaultRegistry(registry) {
361
+ defaultRegistry = registry;
362
+ }
363
+ function registerDefaultAgents(registry, factories) {
364
+ const defaultCapabilities = {
365
+ [AgentType.RESEARCHER]: [
366
+ { name: "search", description: "Information search" },
367
+ { name: "analyze", description: "Data analysis" }
368
+ ],
369
+ [AgentType.CODER]: [
370
+ { name: "code", description: "Code generation" },
371
+ { name: "refactor", description: "Code refactoring" }
372
+ ],
373
+ [AgentType.TESTER]: [
374
+ { name: "test", description: "Test generation" },
375
+ { name: "coverage", description: "Coverage analysis" }
376
+ ],
377
+ [AgentType.ANALYST]: [
378
+ { name: "analyze", description: "Pattern analysis" },
379
+ { name: "report", description: "Report generation" }
380
+ ],
381
+ [AgentType.ARCHITECT]: [
382
+ { name: "design", description: "System design" },
383
+ { name: "document", description: "Architecture documentation" }
384
+ ],
385
+ [AgentType.REVIEWER]: [
386
+ { name: "review", description: "Code review" },
387
+ { name: "feedback", description: "Feedback generation" }
388
+ ],
389
+ [AgentType.COORDINATOR]: [
390
+ { name: "orchestrate", description: "Task orchestration" },
391
+ { name: "delegate", description: "Task delegation" }
392
+ ],
393
+ [AgentType.OPTIMIZER]: [
394
+ { name: "optimize", description: "Performance optimization" },
395
+ { name: "benchmark", description: "Benchmarking" }
396
+ ],
397
+ [AgentType.DOCUMENTER]: [
398
+ { name: "document", description: "Documentation generation" },
399
+ { name: "format", description: "Documentation formatting" }
400
+ ],
401
+ [AgentType.CUSTOM]: []
402
+ };
403
+ for (const type of Object.values(AgentType)) {
404
+ const factory = factories?.[type];
405
+ if (factory) {
406
+ registry.register(type, factory, {
407
+ capabilities: defaultCapabilities[type]
408
+ });
409
+ }
410
+ }
411
+ }
412
+ export {
413
+ AgentRegistry,
414
+ createRegistry,
415
+ getRegistry,
416
+ registerDefaultAgents,
417
+ setDefaultRegistry
418
+ };
419
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sources":["../../src/agents/registry.ts"],"sourcesContent":["/**\n * Agent Registry\n *\n * Manages agent type registration, instantiation, and lifecycle.\n * Provides a factory pattern for creating agents dynamically.\n *\n * @module agents/registry\n */\n\nimport { getLogger, type Logger } from '../utils/index.js';\nimport {\n AgentType,\n AgentStatus,\n type AgentConfig,\n type AgentFactory,\n type AgentInstance,\n type AgentState,\n type AgentCapability,\n type AgentHealthCheck,\n createAgentId,\n} from './types.js';\n\n// ============================================================================\n// Registry Types\n// ============================================================================\n\n/**\n * Agent registration entry\n */\ninterface AgentRegistration {\n /** Agent type */\n type: AgentType;\n\n /** Factory function */\n factory: AgentFactory;\n\n /** Default configuration */\n defaultConfig?: Partial<AgentConfig>;\n\n /** Agent capabilities */\n capabilities: AgentCapability[];\n\n /** Registration metadata */\n metadata?: Record<string, unknown>;\n\n /** Registration timestamp */\n registeredAt: Date;\n}\n\n/**\n * Registry configuration options\n */\nexport interface RegistryOptions {\n /** Logger instance */\n logger?: Logger;\n\n /** Maximum agents per type */\n maxAgentsPerType?: number;\n\n /** Default task timeout */\n defaultTimeout?: number;\n\n /** Enable health monitoring */\n enableHealthMonitoring?: boolean;\n\n /** Health check interval in ms */\n healthCheckInterval?: number;\n}\n\n/**\n * Agent spawn options\n */\nexport interface SpawnOptions {\n /** Custom agent ID */\n id?: string;\n\n /** Override default configuration */\n configOverrides?: Partial<AgentConfig>;\n\n /** Start immediately after spawn */\n autoStart?: boolean;\n}\n\n// ============================================================================\n// Agent Registry Class\n// ============================================================================\n\n/**\n * Agent Registry\n *\n * Central registry for managing agent types and instances.\n * Supports registration, spawning, lifecycle management, and health monitoring.\n *\n * @example\n * ```typescript\n * const registry = new AgentRegistry();\n *\n * // Register an agent type\n * registry.register(AgentType.RESEARCHER, researcherFactory, {\n * capabilities: [{ name: 'search', description: 'Search capabilities' }]\n * });\n *\n * // Spawn an agent\n * const agent = await registry.spawn(AgentType.RESEARCHER, {\n * name: 'Research Assistant',\n * });\n *\n * // Execute a task\n * const result = await agent.execute(task);\n * ```\n */\nexport class AgentRegistry {\n private registrations: Map<AgentType, AgentRegistration> = new Map();\n private instances: Map<string, AgentInstance> = new Map();\n private instancesByType: Map<AgentType, Set<string>> = new Map();\n private logger: Logger;\n private options: Required<RegistryOptions>;\n private healthCheckTimer?: NodeJS.Timeout;\n\n constructor(options: RegistryOptions = {}) {\n this.logger = options.logger ?? getLogger().child('agent-registry');\n this.options = {\n logger: this.logger,\n maxAgentsPerType: options.maxAgentsPerType ?? 10,\n defaultTimeout: options.defaultTimeout ?? 30000,\n enableHealthMonitoring: options.enableHealthMonitoring ?? false,\n healthCheckInterval: options.healthCheckInterval ?? 30000,\n };\n\n // Initialize type tracking\n for (const type of Object.values(AgentType)) {\n this.instancesByType.set(type, new Set());\n }\n\n // Start health monitoring if enabled\n if (this.options.enableHealthMonitoring) {\n this.startHealthMonitoring();\n }\n }\n\n // ============================================================================\n // Registration Methods\n // ============================================================================\n\n /**\n * Register an agent type with its factory function\n */\n register(\n type: AgentType,\n factory: AgentFactory,\n options?: {\n defaultConfig?: Partial<AgentConfig>;\n capabilities?: AgentCapability[];\n metadata?: Record<string, unknown>;\n }\n ): void {\n if (this.registrations.has(type)) {\n this.logger.warn(`Overwriting existing registration for agent type: ${type}`);\n }\n\n const registration: AgentRegistration = {\n type,\n factory,\n defaultConfig: options?.defaultConfig,\n capabilities: options?.capabilities ?? [],\n metadata: options?.metadata,\n registeredAt: new Date(),\n };\n\n this.registrations.set(type, registration);\n this.logger.info(`Registered agent type: ${type}`, {\n capabilities: registration.capabilities.map(c => c.name),\n });\n }\n\n /**\n * Unregister an agent type\n */\n unregister(type: AgentType): boolean {\n // Terminate all instances of this type first\n const instances = this.instancesByType.get(type);\n if (instances) {\n for (const id of instances) {\n void this.terminateAgent(id);\n }\n }\n\n const result = this.registrations.delete(type);\n if (result) {\n this.logger.info(`Unregistered agent type: ${type}`);\n }\n return result;\n }\n\n /**\n * Check if an agent type is registered\n */\n isRegistered(type: AgentType): boolean {\n return this.registrations.has(type);\n }\n\n /**\n * Get registration info for an agent type\n */\n getRegistration(type: AgentType): AgentRegistration | undefined {\n return this.registrations.get(type);\n }\n\n // ============================================================================\n // Agent Lifecycle Methods\n // ============================================================================\n\n /**\n * Spawn a new agent instance\n */\n async spawn(\n type: AgentType,\n config: Omit<AgentConfig, 'type'>,\n options?: SpawnOptions\n ): Promise<AgentInstance> {\n const registration = this.registrations.get(type);\n if (!registration) {\n throw new Error(`Agent type not registered: ${type}`);\n }\n\n // Check max agents limit\n const existingCount = this.instancesByType.get(type)?.size ?? 0;\n if (existingCount >= this.options.maxAgentsPerType) {\n throw new Error(\n `Maximum agents of type ${type} reached (${this.options.maxAgentsPerType})`\n );\n }\n\n // Merge configurations\n const fullConfig: AgentConfig = {\n ...registration.defaultConfig,\n ...config,\n type,\n id: options?.id ?? createAgentId(type),\n ...options?.configOverrides,\n };\n\n this.logger.debug(`Spawning agent: ${fullConfig.id}`, {\n type,\n name: fullConfig.name,\n });\n\n try {\n // Create agent using factory\n const agent = await registration.factory(fullConfig);\n\n // Track instance\n this.instances.set(fullConfig.id!, agent);\n this.instancesByType.get(type)?.add(fullConfig.id!);\n\n this.logger.info(`Agent spawned: ${fullConfig.id}`, {\n type,\n name: fullConfig.name,\n capabilities: fullConfig.capabilities,\n });\n\n return agent;\n } catch (error) {\n this.logger.error(\n `Failed to spawn agent: ${fullConfig.id}`,\n error instanceof Error ? error : new Error(String(error))\n );\n throw error;\n }\n }\n\n /**\n * Spawn multiple agents in parallel\n */\n async spawnMultiple(\n specs: Array<{\n type: AgentType;\n config: Omit<AgentConfig, 'type'>;\n options?: SpawnOptions;\n }>\n ): Promise<AgentInstance[]> {\n const results = await Promise.allSettled(\n specs.map(spec => this.spawn(spec.type, spec.config, spec.options))\n );\n\n const agents: AgentInstance[] = [];\n const errors: Error[] = [];\n\n for (const result of results) {\n if (result.status === 'fulfilled') {\n agents.push(result.value);\n } else {\n errors.push(result.reason);\n }\n }\n\n if (errors.length > 0) {\n this.logger.warn(`${errors.length} agents failed to spawn`, {\n totalRequested: specs.length,\n spawned: agents.length,\n failed: errors.length,\n });\n }\n\n return agents;\n }\n\n /**\n * Get an agent instance by ID\n */\n get(id: string): AgentInstance | undefined {\n return this.instances.get(id);\n }\n\n /**\n * Get all agent instances\n */\n getAll(): AgentInstance[] {\n return Array.from(this.instances.values());\n }\n\n /**\n * Get agents by type\n */\n getByType(type: AgentType): AgentInstance[] {\n const ids = this.instancesByType.get(type);\n if (!ids) return [];\n\n return Array.from(ids)\n .map(id => this.instances.get(id))\n .filter((agent): agent is AgentInstance => agent !== undefined);\n }\n\n /**\n * List all registered agent types\n */\n listTypes(): Array<{\n type: AgentType;\n capabilities: AgentCapability[];\n instanceCount: number;\n }> {\n return Array.from(this.registrations.entries()).map(([type, reg]) => ({\n type,\n capabilities: reg.capabilities,\n instanceCount: this.instancesByType.get(type)?.size ?? 0,\n }));\n }\n\n /**\n * List all active agent instances\n */\n listInstances(): Array<{\n id: string;\n type: AgentType;\n name: string;\n status: AgentStatus;\n }> {\n return Array.from(this.instances.entries()).map(([id, agent]) => ({\n id,\n type: agent.config.type,\n name: agent.config.name,\n status: agent.getStatus(),\n }));\n }\n\n /**\n * Terminate an agent instance\n */\n async terminateAgent(id: string): Promise<boolean> {\n const agent = this.instances.get(id);\n if (!agent) {\n return false;\n }\n\n try {\n await agent.terminate();\n this.instances.delete(id);\n this.instancesByType.get(agent.config.type)?.delete(id);\n\n this.logger.info(`Agent terminated: ${id}`);\n return true;\n } catch (error) {\n this.logger.error(\n `Failed to terminate agent: ${id}`,\n error instanceof Error ? error : new Error(String(error))\n );\n // Force remove from tracking even if termination failed\n this.instances.delete(id);\n this.instancesByType.get(agent.config.type)?.delete(id);\n return false;\n }\n }\n\n /**\n * Terminate all agents of a specific type\n */\n async terminateByType(type: AgentType): Promise<number> {\n const ids = this.instancesByType.get(type);\n if (!ids || ids.size === 0) return 0;\n\n const results = await Promise.allSettled(\n Array.from(ids).map(id => this.terminateAgent(id))\n );\n\n return results.filter(r => r.status === 'fulfilled' && r.value).length;\n }\n\n /**\n * Terminate all agents\n */\n async terminateAll(): Promise<number> {\n const ids = Array.from(this.instances.keys());\n const results = await Promise.allSettled(\n ids.map(id => this.terminateAgent(id))\n );\n\n return results.filter(r => r.status === 'fulfilled' && r.value).length;\n }\n\n // ============================================================================\n // Health Monitoring Methods\n // ============================================================================\n\n /**\n * Start health monitoring\n */\n private startHealthMonitoring(): void {\n if (this.healthCheckTimer) {\n clearInterval(this.healthCheckTimer);\n }\n\n this.healthCheckTimer = setInterval(async () => {\n await this.performHealthChecks();\n }, this.options.healthCheckInterval);\n\n this.logger.debug('Health monitoring started', {\n interval: this.options.healthCheckInterval,\n });\n }\n\n /**\n * Stop health monitoring\n */\n stopHealthMonitoring(): void {\n if (this.healthCheckTimer) {\n clearInterval(this.healthCheckTimer);\n this.healthCheckTimer = undefined;\n this.logger.debug('Health monitoring stopped');\n }\n }\n\n /**\n * Perform health checks on all agents\n */\n async performHealthChecks(): Promise<AgentHealthCheck[]> {\n const checks: AgentHealthCheck[] = [];\n\n for (const [id, agent] of this.instances) {\n const check: AgentHealthCheck = {\n agentId: id,\n healthy: true,\n status: agent.getStatus(),\n lastHeartbeat: new Date(),\n };\n\n // Check for stuck agents\n if (agent.state.status === AgentStatus.RUNNING) {\n const stuckThreshold = this.options.defaultTimeout * 2;\n const elapsed = Date.now() - agent.state.lastActivity.getTime();\n\n if (elapsed > stuckThreshold) {\n check.healthy = false;\n check.error = `Agent appears stuck (${elapsed}ms since last activity)`;\n }\n }\n\n // Check error count\n if (agent.state.errorCount > 5) {\n check.healthy = false;\n check.error = `High error count: ${agent.state.errorCount}`;\n }\n\n checks.push(check);\n\n if (!check.healthy) {\n this.logger.warn(`Unhealthy agent detected: ${id}`, {\n status: check.status,\n error: check.error,\n });\n }\n }\n\n return checks;\n }\n\n /**\n * Get health status for a specific agent\n */\n async getAgentHealth(id: string): Promise<AgentHealthCheck | null> {\n const agent = this.instances.get(id);\n if (!agent) return null;\n\n return {\n agentId: id,\n healthy: agent.state.errorCount < 5,\n status: agent.getStatus(),\n lastHeartbeat: agent.state.lastActivity,\n error: agent.state.errorCount >= 5\n ? `High error count: ${agent.state.errorCount}`\n : undefined,\n };\n }\n\n // ============================================================================\n // Utility Methods\n // ============================================================================\n\n /**\n * Get registry statistics\n */\n getStats(): {\n registeredTypes: number;\n totalInstances: number;\n instancesByType: Record<string, number>;\n instancesByStatus: Record<string, number>;\n } {\n const instancesByStatus: Record<string, number> = {};\n\n for (const agent of this.instances.values()) {\n const status = agent.getStatus();\n instancesByStatus[status] = (instancesByStatus[status] ?? 0) + 1;\n }\n\n return {\n registeredTypes: this.registrations.size,\n totalInstances: this.instances.size,\n instancesByType: Object.fromEntries(\n Array.from(this.instancesByType.entries()).map(([type, ids]) => [\n type,\n ids.size,\n ])\n ),\n instancesByStatus,\n };\n }\n\n /**\n * Clear all registrations and instances\n */\n async clear(): Promise<void> {\n await this.terminateAll();\n this.registrations.clear();\n this.stopHealthMonitoring();\n this.logger.info('Registry cleared');\n }\n\n /**\n * Dispose of the registry\n */\n async dispose(): Promise<void> {\n await this.clear();\n this.logger.info('Registry disposed');\n }\n}\n\n// ============================================================================\n// Default Registry Instance\n// ============================================================================\n\nlet defaultRegistry: AgentRegistry | null = null;\n\n/**\n * Get or create the default registry instance\n */\nexport function getRegistry(): AgentRegistry {\n if (!defaultRegistry) {\n defaultRegistry = new AgentRegistry();\n }\n return defaultRegistry;\n}\n\n/**\n * Create a new registry instance\n */\nexport function createRegistry(options?: RegistryOptions): AgentRegistry {\n return new AgentRegistry(options);\n}\n\n/**\n * Set the default registry instance\n */\nexport function setDefaultRegistry(registry: AgentRegistry): void {\n defaultRegistry = registry;\n}\n\n// ============================================================================\n// Built-in Agent Registration Helpers\n// ============================================================================\n\n/**\n * Register default agent types with a registry\n *\n * This registers placeholder factories that should be replaced\n * with actual implementations.\n */\nexport function registerDefaultAgents(\n registry: AgentRegistry,\n factories?: Partial<Record<AgentType, AgentFactory>>\n): void {\n const defaultCapabilities: Record<AgentType, AgentCapability[]> = {\n [AgentType.RESEARCHER]: [\n { name: 'search', description: 'Information search' },\n { name: 'analyze', description: 'Data analysis' },\n ],\n [AgentType.CODER]: [\n { name: 'code', description: 'Code generation' },\n { name: 'refactor', description: 'Code refactoring' },\n ],\n [AgentType.TESTER]: [\n { name: 'test', description: 'Test generation' },\n { name: 'coverage', description: 'Coverage analysis' },\n ],\n [AgentType.ANALYST]: [\n { name: 'analyze', description: 'Pattern analysis' },\n { name: 'report', description: 'Report generation' },\n ],\n [AgentType.ARCHITECT]: [\n { name: 'design', description: 'System design' },\n { name: 'document', description: 'Architecture documentation' },\n ],\n [AgentType.REVIEWER]: [\n { name: 'review', description: 'Code review' },\n { name: 'feedback', description: 'Feedback generation' },\n ],\n [AgentType.COORDINATOR]: [\n { name: 'orchestrate', description: 'Task orchestration' },\n { name: 'delegate', description: 'Task delegation' },\n ],\n [AgentType.OPTIMIZER]: [\n { name: 'optimize', description: 'Performance optimization' },\n { name: 'benchmark', description: 'Benchmarking' },\n ],\n [AgentType.DOCUMENTER]: [\n { name: 'document', description: 'Documentation generation' },\n { name: 'format', description: 'Documentation formatting' },\n ],\n [AgentType.CUSTOM]: [],\n };\n\n for (const type of Object.values(AgentType)) {\n const factory = factories?.[type];\n if (factory) {\n registry.register(type, factory, {\n capabilities: defaultCapabilities[type],\n });\n }\n }\n}\n"],"names":[],"mappings":"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"}