agent-orcha 0.0.2 → 0.0.3

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 (273) hide show
  1. package/README.md +777 -100
  2. package/dist/lib/agents/agent-executor.d.ts +6 -1
  3. package/dist/lib/agents/agent-executor.d.ts.map +1 -1
  4. package/dist/lib/agents/agent-executor.js +241 -45
  5. package/dist/lib/agents/agent-executor.js.map +1 -1
  6. package/dist/lib/agents/agent-loader.d.ts.map +1 -1
  7. package/dist/lib/agents/agent-loader.js +3 -1
  8. package/dist/lib/agents/agent-loader.js.map +1 -1
  9. package/dist/lib/agents/index.d.ts +2 -1
  10. package/dist/lib/agents/index.d.ts.map +1 -1
  11. package/dist/lib/agents/index.js +1 -0
  12. package/dist/lib/agents/index.js.map +1 -1
  13. package/dist/lib/agents/structured-output-wrapper.d.ts +19 -0
  14. package/dist/lib/agents/structured-output-wrapper.d.ts.map +1 -0
  15. package/dist/lib/agents/structured-output-wrapper.js +104 -0
  16. package/dist/lib/agents/structured-output-wrapper.js.map +1 -0
  17. package/dist/lib/agents/types.d.ts +17 -10
  18. package/dist/lib/agents/types.d.ts.map +1 -1
  19. package/dist/lib/agents/types.js +1 -1
  20. package/dist/lib/agents/types.js.map +1 -1
  21. package/dist/lib/index.d.ts +9 -7
  22. package/dist/lib/index.d.ts.map +1 -1
  23. package/dist/lib/index.js +7 -5
  24. package/dist/lib/index.js.map +1 -1
  25. package/dist/lib/knowledge/graph-rag/community-detector.d.ts +16 -0
  26. package/dist/lib/knowledge/graph-rag/community-detector.d.ts.map +1 -0
  27. package/dist/lib/knowledge/graph-rag/community-detector.js +81 -0
  28. package/dist/lib/knowledge/graph-rag/community-detector.js.map +1 -0
  29. package/dist/lib/knowledge/graph-rag/community-summarizer.d.ts +17 -0
  30. package/dist/lib/knowledge/graph-rag/community-summarizer.d.ts.map +1 -0
  31. package/dist/lib/knowledge/graph-rag/community-summarizer.js +87 -0
  32. package/dist/lib/knowledge/graph-rag/community-summarizer.js.map +1 -0
  33. package/dist/lib/knowledge/graph-rag/entity-extractor.d.ts +36 -0
  34. package/dist/lib/knowledge/graph-rag/entity-extractor.d.ts.map +1 -0
  35. package/dist/lib/knowledge/graph-rag/entity-extractor.js +192 -0
  36. package/dist/lib/knowledge/graph-rag/entity-extractor.js.map +1 -0
  37. package/dist/lib/knowledge/graph-rag/extraction-cache.d.ts +30 -0
  38. package/dist/lib/knowledge/graph-rag/extraction-cache.d.ts.map +1 -0
  39. package/dist/lib/knowledge/graph-rag/extraction-cache.js +88 -0
  40. package/dist/lib/knowledge/graph-rag/extraction-cache.js.map +1 -0
  41. package/dist/lib/knowledge/graph-rag/global-search.d.ts +19 -0
  42. package/dist/lib/knowledge/graph-rag/global-search.d.ts.map +1 -0
  43. package/dist/lib/knowledge/graph-rag/global-search.js +96 -0
  44. package/dist/lib/knowledge/graph-rag/global-search.js.map +1 -0
  45. package/dist/lib/knowledge/graph-rag/graph-rag-factory.d.ts +24 -0
  46. package/dist/lib/knowledge/graph-rag/graph-rag-factory.d.ts.map +1 -0
  47. package/dist/lib/knowledge/graph-rag/graph-rag-factory.js +239 -0
  48. package/dist/lib/knowledge/graph-rag/graph-rag-factory.js.map +1 -0
  49. package/dist/lib/knowledge/graph-rag/index.d.ts +14 -0
  50. package/dist/lib/knowledge/graph-rag/index.d.ts.map +1 -0
  51. package/dist/lib/knowledge/graph-rag/index.js +12 -0
  52. package/dist/lib/knowledge/graph-rag/index.js.map +1 -0
  53. package/dist/lib/knowledge/graph-rag/local-search.d.ts +20 -0
  54. package/dist/lib/knowledge/graph-rag/local-search.d.ts.map +1 -0
  55. package/dist/lib/knowledge/graph-rag/local-search.js +110 -0
  56. package/dist/lib/knowledge/graph-rag/local-search.js.map +1 -0
  57. package/dist/lib/knowledge/graph-rag/memory-graph-store.d.ts +31 -0
  58. package/dist/lib/knowledge/graph-rag/memory-graph-store.d.ts.map +1 -0
  59. package/dist/lib/knowledge/graph-rag/memory-graph-store.js +165 -0
  60. package/dist/lib/knowledge/graph-rag/memory-graph-store.js.map +1 -0
  61. package/dist/lib/knowledge/graph-rag/neo4j-graph-store.d.ts +38 -0
  62. package/dist/lib/knowledge/graph-rag/neo4j-graph-store.d.ts.map +1 -0
  63. package/dist/lib/knowledge/graph-rag/neo4j-graph-store.js +190 -0
  64. package/dist/lib/knowledge/graph-rag/neo4j-graph-store.js.map +1 -0
  65. package/dist/lib/knowledge/graph-rag/search-mode-detector.d.ts +11 -0
  66. package/dist/lib/knowledge/graph-rag/search-mode-detector.d.ts.map +1 -0
  67. package/dist/lib/knowledge/graph-rag/search-mode-detector.js +50 -0
  68. package/dist/lib/knowledge/graph-rag/search-mode-detector.js.map +1 -0
  69. package/dist/lib/knowledge/graph-rag/types.d.ts +368 -0
  70. package/dist/lib/knowledge/graph-rag/types.d.ts.map +1 -0
  71. package/dist/lib/knowledge/graph-rag/types.js +48 -0
  72. package/dist/lib/knowledge/graph-rag/types.js.map +1 -0
  73. package/dist/lib/knowledge/index.d.ts +9 -0
  74. package/dist/lib/knowledge/index.d.ts.map +1 -0
  75. package/dist/lib/knowledge/index.js +8 -0
  76. package/dist/lib/knowledge/index.js.map +1 -0
  77. package/dist/lib/knowledge/knowledge-store-factory.d.ts +16 -0
  78. package/dist/lib/knowledge/knowledge-store-factory.d.ts.map +1 -0
  79. package/dist/lib/{vectors/vector-store-factory.js → knowledge/knowledge-store-factory.js} +36 -10
  80. package/dist/lib/knowledge/knowledge-store-factory.js.map +1 -0
  81. package/dist/lib/knowledge/knowledge-store-manager.d.ts +18 -0
  82. package/dist/lib/knowledge/knowledge-store-manager.d.ts.map +1 -0
  83. package/dist/lib/knowledge/knowledge-store-manager.js +98 -0
  84. package/dist/lib/knowledge/knowledge-store-manager.js.map +1 -0
  85. package/dist/lib/knowledge/loaders/database-loader.d.ts +18 -0
  86. package/dist/lib/knowledge/loaders/database-loader.d.ts.map +1 -0
  87. package/dist/lib/knowledge/loaders/database-loader.js +115 -0
  88. package/dist/lib/knowledge/loaders/database-loader.js.map +1 -0
  89. package/dist/lib/knowledge/loaders/index.d.ts +4 -0
  90. package/dist/lib/knowledge/loaders/index.d.ts.map +1 -0
  91. package/dist/lib/knowledge/loaders/index.js +4 -0
  92. package/dist/lib/knowledge/loaders/index.js.map +1 -0
  93. package/dist/lib/knowledge/loaders/s3-loader.d.ts +17 -0
  94. package/dist/lib/knowledge/loaders/s3-loader.d.ts.map +1 -0
  95. package/dist/lib/knowledge/loaders/s3-loader.js +185 -0
  96. package/dist/lib/knowledge/loaders/s3-loader.js.map +1 -0
  97. package/dist/lib/knowledge/loaders/web-loader.d.ts +12 -0
  98. package/dist/lib/knowledge/loaders/web-loader.d.ts.map +1 -0
  99. package/dist/lib/knowledge/loaders/web-loader.js +56 -0
  100. package/dist/lib/knowledge/loaders/web-loader.js.map +1 -0
  101. package/dist/lib/knowledge/types.d.ts +1839 -0
  102. package/dist/lib/knowledge/types.d.ts.map +1 -0
  103. package/dist/lib/knowledge/types.js +111 -0
  104. package/dist/lib/knowledge/types.js.map +1 -0
  105. package/dist/lib/knowledge/utils/connection-pool.d.ts +18 -0
  106. package/dist/lib/knowledge/utils/connection-pool.d.ts.map +1 -0
  107. package/dist/lib/knowledge/utils/connection-pool.js +77 -0
  108. package/dist/lib/knowledge/utils/connection-pool.js.map +1 -0
  109. package/dist/lib/knowledge/utils/file-type-detector.d.ts +10 -0
  110. package/dist/lib/knowledge/utils/file-type-detector.d.ts.map +1 -0
  111. package/dist/lib/knowledge/utils/file-type-detector.js +32 -0
  112. package/dist/lib/knowledge/utils/file-type-detector.js.map +1 -0
  113. package/dist/lib/knowledge/utils/index.d.ts +3 -0
  114. package/dist/lib/knowledge/utils/index.d.ts.map +1 -0
  115. package/dist/lib/knowledge/utils/index.js +3 -0
  116. package/dist/lib/knowledge/utils/index.js.map +1 -0
  117. package/dist/lib/mcp/mcp-client.d.ts +9 -1
  118. package/dist/lib/mcp/mcp-client.d.ts.map +1 -1
  119. package/dist/lib/mcp/mcp-client.js +33 -0
  120. package/dist/lib/mcp/mcp-client.js.map +1 -1
  121. package/dist/lib/memory/conversation-store.d.ts +43 -0
  122. package/dist/lib/memory/conversation-store.d.ts.map +1 -0
  123. package/dist/lib/memory/conversation-store.js +109 -0
  124. package/dist/lib/memory/conversation-store.js.map +1 -0
  125. package/dist/lib/memory/index.d.ts +3 -0
  126. package/dist/lib/memory/index.d.ts.map +1 -0
  127. package/dist/lib/memory/index.js +3 -0
  128. package/dist/lib/memory/index.js.map +1 -0
  129. package/dist/lib/memory/types.d.ts +19 -0
  130. package/dist/lib/memory/types.d.ts.map +1 -0
  131. package/dist/lib/memory/types.js +6 -0
  132. package/dist/lib/memory/types.js.map +1 -0
  133. package/dist/lib/orchestrator.d.ts +56 -14
  134. package/dist/lib/orchestrator.d.ts.map +1 -1
  135. package/dist/lib/orchestrator.js +182 -25
  136. package/dist/lib/orchestrator.js.map +1 -1
  137. package/dist/lib/tools/agent-tool-wrapper.d.ts +22 -0
  138. package/dist/lib/tools/agent-tool-wrapper.d.ts.map +1 -0
  139. package/dist/lib/tools/agent-tool-wrapper.js +56 -0
  140. package/dist/lib/tools/agent-tool-wrapper.js.map +1 -0
  141. package/dist/lib/tools/built-in/ask-user.tool.d.ts +7 -0
  142. package/dist/lib/tools/built-in/ask-user.tool.d.ts.map +1 -0
  143. package/dist/lib/tools/built-in/ask-user.tool.js +23 -0
  144. package/dist/lib/tools/built-in/ask-user.tool.js.map +1 -0
  145. package/dist/lib/tools/built-in/index.d.ts +2 -1
  146. package/dist/lib/tools/built-in/index.d.ts.map +1 -1
  147. package/dist/lib/tools/built-in/index.js +2 -1
  148. package/dist/lib/tools/built-in/index.js.map +1 -1
  149. package/dist/lib/tools/built-in/knowledge-search.tool.d.ts +4 -0
  150. package/dist/lib/tools/built-in/knowledge-search.tool.d.ts.map +1 -0
  151. package/dist/lib/tools/built-in/{vector-search.tool.js → knowledge-search.tool.js} +4 -4
  152. package/dist/lib/tools/built-in/knowledge-search.tool.js.map +1 -0
  153. package/dist/lib/tools/index.d.ts +3 -1
  154. package/dist/lib/tools/index.d.ts.map +1 -1
  155. package/dist/lib/tools/index.js +3 -1
  156. package/dist/lib/tools/index.js.map +1 -1
  157. package/dist/lib/tools/tool-discovery.d.ts +50 -0
  158. package/dist/lib/tools/tool-discovery.d.ts.map +1 -0
  159. package/dist/lib/tools/tool-discovery.js +178 -0
  160. package/dist/lib/tools/tool-discovery.js.map +1 -0
  161. package/dist/lib/tools/tool-registry.d.ts +19 -3
  162. package/dist/lib/tools/tool-registry.d.ts.map +1 -1
  163. package/dist/lib/tools/tool-registry.js +63 -10
  164. package/dist/lib/tools/tool-registry.js.map +1 -1
  165. package/dist/lib/workflows/index.d.ts +4 -2
  166. package/dist/lib/workflows/index.d.ts.map +1 -1
  167. package/dist/lib/workflows/index.js +3 -1
  168. package/dist/lib/workflows/index.js.map +1 -1
  169. package/dist/lib/workflows/interrupt-manager.d.ts +42 -0
  170. package/dist/lib/workflows/interrupt-manager.d.ts.map +1 -0
  171. package/dist/lib/workflows/interrupt-manager.js +102 -0
  172. package/dist/lib/workflows/interrupt-manager.js.map +1 -0
  173. package/dist/lib/workflows/langgraph-executor.d.ts +51 -0
  174. package/dist/lib/workflows/langgraph-executor.d.ts.map +1 -0
  175. package/dist/lib/workflows/langgraph-executor.js +297 -0
  176. package/dist/lib/workflows/langgraph-executor.js.map +1 -0
  177. package/dist/lib/workflows/types.d.ts +911 -34
  178. package/dist/lib/workflows/types.d.ts.map +1 -1
  179. package/dist/lib/workflows/types.js +51 -2
  180. package/dist/lib/workflows/types.js.map +1 -1
  181. package/dist/lib/workflows/workflow-executor.d.ts.map +1 -1
  182. package/dist/lib/workflows/workflow-executor.js +4 -0
  183. package/dist/lib/workflows/workflow-executor.js.map +1 -1
  184. package/dist/lib/workflows/workflow-loader.d.ts.map +1 -1
  185. package/dist/lib/workflows/workflow-loader.js +3 -1
  186. package/dist/lib/workflows/workflow-loader.js.map +1 -1
  187. package/dist/public/index.html +133 -700
  188. package/dist/public/src/components/AgentsView.js +763 -0
  189. package/dist/public/src/components/AppRoot.js +76 -0
  190. package/dist/public/src/components/IdeView.js +330 -0
  191. package/dist/public/src/components/KnowledgeView.js +133 -0
  192. package/dist/public/src/components/LlmView.js +127 -0
  193. package/dist/public/src/components/McpView.js +387 -0
  194. package/dist/public/src/components/NavBar.js +71 -0
  195. package/dist/public/src/components/WorkflowsView.js +243 -0
  196. package/dist/public/src/main.js +9 -0
  197. package/dist/public/src/services/ApiService.js +142 -0
  198. package/dist/public/src/store.js +41 -0
  199. package/dist/public/src/utils/Component.js +23 -0
  200. package/dist/public/src/utils/markdown.js +82 -0
  201. package/dist/src/cli/commands/start.d.ts.map +1 -1
  202. package/dist/src/cli/commands/start.js +3 -2
  203. package/dist/src/cli/commands/start.js.map +1 -1
  204. package/dist/src/index.js +46 -12
  205. package/dist/src/index.js.map +1 -1
  206. package/dist/src/routes/agents.route.d.ts.map +1 -1
  207. package/dist/src/routes/agents.route.js +38 -5
  208. package/dist/src/routes/agents.route.js.map +1 -1
  209. package/dist/src/routes/files.route.d.ts +3 -0
  210. package/dist/src/routes/files.route.d.ts.map +1 -0
  211. package/dist/src/routes/files.route.js +160 -0
  212. package/dist/src/routes/files.route.js.map +1 -0
  213. package/dist/src/routes/functions.route.d.ts +3 -0
  214. package/dist/src/routes/functions.route.d.ts.map +1 -0
  215. package/dist/src/routes/functions.route.js +83 -0
  216. package/dist/src/routes/functions.route.js.map +1 -0
  217. package/dist/src/routes/knowledge.route.d.ts +3 -0
  218. package/dist/src/routes/knowledge.route.d.ts.map +1 -0
  219. package/dist/src/routes/knowledge.route.js +153 -0
  220. package/dist/src/routes/knowledge.route.js.map +1 -0
  221. package/dist/src/routes/mcp.route.d.ts +3 -0
  222. package/dist/src/routes/mcp.route.d.ts.map +1 -0
  223. package/dist/src/routes/mcp.route.js +79 -0
  224. package/dist/src/routes/mcp.route.js.map +1 -0
  225. package/dist/src/routes/workflows.route.d.ts.map +1 -1
  226. package/dist/src/routes/workflows.route.js +2 -1
  227. package/dist/src/routes/workflows.route.js.map +1 -1
  228. package/dist/src/server.d.ts.map +1 -1
  229. package/dist/src/server.js +8 -2
  230. package/dist/src/server.js.map +1 -1
  231. package/dist/templates/.env.example +21 -0
  232. package/dist/templates/README.md +43 -152
  233. package/dist/templates/agents/call-center-analyst-simple.agent.yaml +36 -0
  234. package/dist/templates/agents/math.agent.yaml +4 -14
  235. package/dist/templates/agents/sentiment-structured.agent.yaml +42 -0
  236. package/dist/templates/functions/calculator.function.js +69 -0
  237. package/dist/templates/functions/text-formatter.function.js +66 -0
  238. package/dist/templates/{vectors/example.vector.yaml → knowledge/example.knowledge.yaml} +1 -1
  239. package/dist/templates/knowledge/transcripts/call-001.txt +40 -0
  240. package/dist/templates/knowledge/transcripts/call-002.txt +36 -0
  241. package/dist/templates/knowledge/transcripts/call-003.txt +42 -0
  242. package/dist/templates/llm.md +1195 -0
  243. package/dist/templates/workflows/example.workflow.yaml +8 -19
  244. package/dist/templates/workflows/langgraph-example.workflow.yaml +84 -0
  245. package/package.json +19 -10
  246. package/dist/lib/tools/built-in/vector-search.tool.d.ts +0 -4
  247. package/dist/lib/tools/built-in/vector-search.tool.d.ts.map +0 -1
  248. package/dist/lib/tools/built-in/vector-search.tool.js.map +0 -1
  249. package/dist/lib/vectors/index.d.ts +0 -5
  250. package/dist/lib/vectors/index.d.ts.map +0 -1
  251. package/dist/lib/vectors/index.js +0 -4
  252. package/dist/lib/vectors/index.js.map +0 -1
  253. package/dist/lib/vectors/types.d.ts +0 -212
  254. package/dist/lib/vectors/types.d.ts.map +0 -1
  255. package/dist/lib/vectors/types.js +0 -39
  256. package/dist/lib/vectors/types.js.map +0 -1
  257. package/dist/lib/vectors/vector-store-factory.d.ts +0 -14
  258. package/dist/lib/vectors/vector-store-factory.d.ts.map +0 -1
  259. package/dist/lib/vectors/vector-store-factory.js.map +0 -1
  260. package/dist/lib/vectors/vector-store-manager.d.ts +0 -18
  261. package/dist/lib/vectors/vector-store-manager.d.ts.map +0 -1
  262. package/dist/lib/vectors/vector-store-manager.js +0 -79
  263. package/dist/lib/vectors/vector-store-manager.js.map +0 -1
  264. package/dist/src/routes/vectors.route.d.ts +0 -3
  265. package/dist/src/routes/vectors.route.d.ts.map +0 -1
  266. package/dist/src/routes/vectors.route.js +0 -74
  267. package/dist/src/routes/vectors.route.js.map +0 -1
  268. package/dist/templates/agents/example.agent.yaml +0 -32
  269. package/dist/templates/agents/knowledge.agent.yaml +0 -36
  270. package/dist/templates/agents/time.agent.yaml +0 -42
  271. package/dist/templates/functions/README.md +0 -195
  272. package/dist/templates/functions/fibonacci.function.js +0 -55
  273. package/dist/templates/vectors/sample-data/example-document.txt +0 -15
@@ -1,6 +1,6 @@
1
1
  import { tool } from '@langchain/core/tools';
2
2
  import { z } from 'zod';
3
- export function createVectorSearchTool(name, store) {
3
+ export function createKnowledgeSearchTool(name, store) {
4
4
  return tool(async ({ query, k }) => {
5
5
  const results = await store.search(query, k);
6
6
  if (results.length === 0) {
@@ -15,12 +15,12 @@ export function createVectorSearchTool(name, store) {
15
15
  })
16
16
  .join('\n\n---\n\n');
17
17
  }, {
18
- name: `vector_search_${name}`,
19
- description: `Search the "${name}" vector store for relevant documents. ${store.config.description ?? ''} IMPORTANT: Use descriptive, complete queries (at least 10-15 words) for best results. Examples: "list of items with details and specifications", "how to resolve common problems", "information about specific topics or concepts".`,
18
+ name: `knowledge_search_${name}`,
19
+ description: `Search the "${name}" knowledge store for relevant documents. ${store.config.description ?? ''} IMPORTANT: Use descriptive, complete queries (at least 10-15 words) for best results. Examples: "list of items with details and specifications", "how to resolve common problems", "information about specific topics or concepts".`,
20
20
  schema: z.object({
21
21
  query: z.string().describe('A descriptive search query (use at least 10-15 words for best results). Examples: "list of items with details", "how to perform a task", "information about a topic"'),
22
22
  k: z.number().optional().describe('Number of results to return (default: 4)'),
23
23
  }),
24
24
  });
25
25
  }
26
- //# sourceMappingURL=vector-search.tool.js.map
26
+ //# sourceMappingURL=knowledge-search.tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"knowledge-search.tool.js","sourceRoot":"","sources":["../../../../lib/tools/built-in/knowledge-search.tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,MAAM,UAAU,yBAAyB,CAAC,IAAY,EAAE,KAA6B;IACnF,OAAO,IAAI,CACT,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE;QACrB,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAE7C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,8BAA8B,CAAC;QACxC,CAAC;QAED,OAAO,OAAO;aACX,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YACrB,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;iBAC7C,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,KAAK,EAAE,CAAC;iBACzC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEd,OAAO,IAAI,KAAK,GAAG,CAAC,aAAa,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,OAAO,EAAE,CAAC;QACpH,CAAC,CAAC;aACD,IAAI,CAAC,aAAa,CAAC,CAAC;IACzB,CAAC,EACD;QACE,IAAI,EAAE,oBAAoB,IAAI,EAAE;QAChC,WAAW,EAAE,eAAe,IAAI,6CAA6C,KAAK,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,sOAAsO;QACjV,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;YACf,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sKAAsK,CAAC;YAClM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;SAC9E,CAAC;KACH,CACF,CAAC;AACJ,CAAC"}
@@ -1,3 +1,5 @@
1
1
  export { ToolRegistry } from './tool-registry.js';
2
- export { createVectorSearchTool } from './built-in/index.js';
2
+ export { ToolDiscovery } from './tool-discovery.js';
3
+ export { AgentToolWrapper } from './agent-tool-wrapper.js';
4
+ export { createKnowledgeSearchTool, createAskUserTool } from './built-in/index.js';
3
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"}
@@ -1,3 +1,5 @@
1
1
  export { ToolRegistry } from './tool-registry.js';
2
- export { createVectorSearchTool } from './built-in/index.js';
2
+ export { ToolDiscovery } from './tool-discovery.js';
3
+ export { AgentToolWrapper } from './agent-tool-wrapper.js';
4
+ export { createKnowledgeSearchTool, createAskUserTool } from './built-in/index.js';
3
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,50 @@
1
+ import type { StructuredTool } from '@langchain/core/tools';
2
+ import type { ToolRegistry } from './tool-registry.js';
3
+ import type { MCPClientManager } from '../mcp/mcp-client.js';
4
+ import type { KnowledgeStoreManager } from '../knowledge/knowledge-store-manager.js';
5
+ import type { FunctionLoader } from '../functions/function-loader.js';
6
+ import type { GraphToolConfig, GraphAgentConfig } from '../workflows/types.js';
7
+ import type { AgentLoader } from '../agents/agent-loader.js';
8
+ import type { AgentExecutor } from '../agents/agent-executor.js';
9
+ /**
10
+ * Centralized tool discovery for LangGraph workflows.
11
+ * Discovers tools from all configured sources and applies filtering.
12
+ */
13
+ export declare class ToolDiscovery {
14
+ private mcpClient;
15
+ private knowledgeStoreManager;
16
+ private functionLoader;
17
+ private agentLoader;
18
+ private agentExecutor;
19
+ constructor(_toolRegistry: ToolRegistry, // Unused but kept for future use
20
+ mcpClient: MCPClientManager, knowledgeStoreManager: KnowledgeStoreManager, functionLoader: FunctionLoader, agentLoader: AgentLoader, agentExecutor: AgentExecutor);
21
+ /**
22
+ * Discovers all tools based on configuration.
23
+ */
24
+ discoverAll(config: GraphToolConfig): Promise<StructuredTool[]>;
25
+ /**
26
+ * Discovers agent tools based on configuration.
27
+ */
28
+ discoverAgents(config: GraphAgentConfig): Promise<StructuredTool[]>;
29
+ /**
30
+ * Filters tools based on mode and include/exclude lists.
31
+ */
32
+ private filterTools;
33
+ /**
34
+ * Discovers MCP tools from all servers.
35
+ */
36
+ private discoverMCP;
37
+ /**
38
+ * Discovers knowledge search tools for all knowledge stores.
39
+ */
40
+ private discoverKnowledge;
41
+ /**
42
+ * Discovers custom function tools.
43
+ */
44
+ private discoverFunction;
45
+ /**
46
+ * Discovers built-in tools (ask_user is always included).
47
+ */
48
+ private discoverBuiltin;
49
+ }
50
+ //# sourceMappingURL=tool-discovery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-discovery.d.ts","sourceRoot":"","sources":["../../../lib/tools/tool-discovery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AACrF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAMjE;;;GAGG;AACH,qBAAa,aAAa;IAGtB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,qBAAqB;IAC7B,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,aAAa;gBALrB,aAAa,EAAE,YAAY,EAAE,iCAAiC;IACtD,SAAS,EAAE,gBAAgB,EAC3B,qBAAqB,EAAE,qBAAqB,EAC5C,cAAc,EAAE,cAAc,EAC9B,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,aAAa;IAGtC;;OAEG;IACG,WAAW,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAwBrE;;OAEG;IACG,cAAc,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IA2BzE;;OAEG;IACH,OAAO,CAAC,WAAW;IA2BnB;;OAEG;YACW,WAAW;IAsBzB;;OAEG;YACW,iBAAiB;IA6B/B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAYxB;;OAEG;IACH,OAAO,CAAC,eAAe;CASxB"}
@@ -0,0 +1,178 @@
1
+ import { AgentToolWrapper } from './agent-tool-wrapper.js';
2
+ import { createKnowledgeSearchTool } from './built-in/knowledge-search.tool.js';
3
+ import { createAskUserTool } from './built-in/ask-user.tool.js';
4
+ import { logger } from '../logger.js';
5
+ /**
6
+ * Centralized tool discovery for LangGraph workflows.
7
+ * Discovers tools from all configured sources and applies filtering.
8
+ */
9
+ export class ToolDiscovery {
10
+ mcpClient;
11
+ knowledgeStoreManager;
12
+ functionLoader;
13
+ agentLoader;
14
+ agentExecutor;
15
+ constructor(_toolRegistry, // Unused but kept for future use
16
+ mcpClient, knowledgeStoreManager, functionLoader, agentLoader, agentExecutor) {
17
+ this.mcpClient = mcpClient;
18
+ this.knowledgeStoreManager = knowledgeStoreManager;
19
+ this.functionLoader = functionLoader;
20
+ this.agentLoader = agentLoader;
21
+ this.agentExecutor = agentExecutor;
22
+ }
23
+ /**
24
+ * Discovers all tools based on configuration.
25
+ */
26
+ async discoverAll(config) {
27
+ const tools = [];
28
+ // Discover from each source
29
+ for (const source of config.sources) {
30
+ switch (source) {
31
+ case 'mcp':
32
+ tools.push(...(await this.discoverMCP()));
33
+ break;
34
+ case 'knowledge':
35
+ tools.push(...(await this.discoverKnowledge()));
36
+ break;
37
+ case 'function':
38
+ tools.push(...this.discoverFunction());
39
+ break;
40
+ case 'builtin':
41
+ tools.push(...this.discoverBuiltin());
42
+ break;
43
+ }
44
+ }
45
+ return this.filterTools(tools, config);
46
+ }
47
+ /**
48
+ * Discovers agent tools based on configuration.
49
+ */
50
+ async discoverAgents(config) {
51
+ if (config.mode === 'none') {
52
+ return [];
53
+ }
54
+ const allAgentNames = this.agentLoader.names();
55
+ let agentNames = [];
56
+ if (config.mode === 'all') {
57
+ agentNames = allAgentNames;
58
+ // Apply exclusions
59
+ if (config.exclude) {
60
+ agentNames = agentNames.filter((name) => !config.exclude.includes(name));
61
+ }
62
+ }
63
+ else if (config.mode === 'include' && config.include) {
64
+ agentNames = config.include.filter((name) => allAgentNames.includes(name));
65
+ }
66
+ else if (config.mode === 'exclude') {
67
+ agentNames = allAgentNames;
68
+ if (config.exclude) {
69
+ agentNames = agentNames.filter((name) => !config.exclude.includes(name));
70
+ }
71
+ }
72
+ logger.info(`Discovered ${agentNames.length} agents as tools: ${agentNames.join(', ')}`);
73
+ return AgentToolWrapper.createTools(agentNames, this.agentLoader, this.agentExecutor);
74
+ }
75
+ /**
76
+ * Filters tools based on mode and include/exclude lists.
77
+ */
78
+ filterTools(tools, config) {
79
+ if (config.mode === 'none') {
80
+ return [];
81
+ }
82
+ if (config.mode === 'all') {
83
+ // Apply exclusions
84
+ if (config.exclude) {
85
+ return tools.filter((t) => !config.exclude.includes(t.name));
86
+ }
87
+ return tools;
88
+ }
89
+ if (config.mode === 'include' && config.include) {
90
+ return tools.filter((t) => config.include.includes(t.name));
91
+ }
92
+ if (config.mode === 'exclude') {
93
+ if (config.exclude) {
94
+ return tools.filter((t) => !config.exclude.includes(t.name));
95
+ }
96
+ return tools;
97
+ }
98
+ return tools;
99
+ }
100
+ /**
101
+ * Discovers MCP tools from all servers.
102
+ */
103
+ async discoverMCP() {
104
+ const allTools = [];
105
+ try {
106
+ const serverNames = this.mcpClient.getServerNames();
107
+ for (const serverName of serverNames) {
108
+ try {
109
+ const tools = await this.mcpClient.getToolsByServer(serverName);
110
+ allTools.push(...tools);
111
+ logger.info(`Discovered ${tools.length} MCP tools from server "${serverName}"`);
112
+ }
113
+ catch (error) {
114
+ logger.warn(`Failed to discover MCP tools from server "${serverName}":`, error);
115
+ }
116
+ }
117
+ }
118
+ catch (error) {
119
+ logger.warn('Failed to discover MCP tools:', error);
120
+ }
121
+ return allTools;
122
+ }
123
+ /**
124
+ * Discovers knowledge search tools for all knowledge stores.
125
+ */
126
+ async discoverKnowledge() {
127
+ const tools = [];
128
+ try {
129
+ const configs = this.knowledgeStoreManager.listConfigs();
130
+ for (const config of configs) {
131
+ try {
132
+ // Initialize store if needed
133
+ let store = this.knowledgeStoreManager.get(config.name);
134
+ if (!store) {
135
+ store = await this.knowledgeStoreManager.initialize(config.name);
136
+ }
137
+ // Create knowledge search tool
138
+ const tool = createKnowledgeSearchTool(config.name, store);
139
+ tools.push(tool);
140
+ logger.info(`Discovered knowledge search tool for "${config.name}"`);
141
+ }
142
+ catch (error) {
143
+ logger.warn(`Failed to create knowledge search tool for "${config.name}":`, error);
144
+ }
145
+ }
146
+ }
147
+ catch (error) {
148
+ logger.warn('Failed to discover knowledge tools:', error);
149
+ }
150
+ return tools;
151
+ }
152
+ /**
153
+ * Discovers custom function tools.
154
+ */
155
+ discoverFunction() {
156
+ try {
157
+ const functions = this.functionLoader.list();
158
+ const tools = functions.map((f) => f.tool);
159
+ logger.info(`Discovered ${tools.length} function tools`);
160
+ return tools;
161
+ }
162
+ catch (error) {
163
+ logger.warn('Failed to discover function tools:', error);
164
+ return [];
165
+ }
166
+ }
167
+ /**
168
+ * Discovers built-in tools (ask_user is always included).
169
+ */
170
+ discoverBuiltin() {
171
+ const tools = [];
172
+ // ask_user tool is always included for HITL
173
+ tools.push(createAskUserTool());
174
+ logger.info(`Discovered ${tools.length} built-in tools`);
175
+ return tools;
176
+ }
177
+ }
178
+ //# sourceMappingURL=tool-discovery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-discovery.js","sourceRoot":"","sources":["../../../lib/tools/tool-discovery.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,14 @@
1
1
  import type { StructuredTool } from '@langchain/core/tools';
2
2
  import type { MCPClientManager } from '../mcp/mcp-client.js';
3
- import type { VectorStoreManager } from '../vectors/vector-store-manager.js';
3
+ import type { KnowledgeStoreManager } from '../knowledge/knowledge-store-manager.js';
4
4
  import type { FunctionLoader } from '../functions/function-loader.js';
5
5
  import type { ToolReference } from '../agents/types.js';
6
6
  export declare class ToolRegistry {
7
7
  private mcpClient;
8
- private vectorStores;
8
+ private knowledgeStores;
9
9
  private functionLoader;
10
10
  private builtInTools;
11
- constructor(mcpClient: MCPClientManager, vectorStores: VectorStoreManager, functionLoader: FunctionLoader);
11
+ constructor(mcpClient: MCPClientManager, knowledgeStores: KnowledgeStoreManager, functionLoader: FunctionLoader);
12
12
  resolveTools(toolRefs: ToolReference[]): Promise<StructuredTool[]>;
13
13
  private resolveTool;
14
14
  private resolveStringRef;
@@ -16,5 +16,21 @@ export declare class ToolRegistry {
16
16
  registerBuiltIn(name: string, tool: StructuredTool): void;
17
17
  unregisterBuiltIn(name: string): boolean;
18
18
  listBuiltIn(): string[];
19
+ /**
20
+ * Gets all MCP tools from all servers.
21
+ */
22
+ getAllMCPTools(): Promise<StructuredTool[]>;
23
+ /**
24
+ * Gets all knowledge search tools for all configured knowledge stores.
25
+ */
26
+ getAllKnowledgeTools(): Promise<StructuredTool[]>;
27
+ /**
28
+ * Gets all custom function tools.
29
+ */
30
+ getAllFunctionTools(): StructuredTool[];
31
+ /**
32
+ * Gets all built-in tools.
33
+ */
34
+ getAllBuiltInTools(): StructuredTool[];
19
35
  }
20
36
  //# sourceMappingURL=tool-registry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tool-registry.d.ts","sourceRoot":"","sources":["../../../lib/tools/tool-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAIxD,qBAAa,YAAY;IACvB,OAAO,CAAC,SAAS,CAAmB;IACpC,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,YAAY,CAA0C;gBAElD,SAAS,EAAE,gBAAgB,EAAE,YAAY,EAAE,kBAAkB,EAAE,cAAc,EAAE,cAAc;IAMnG,YAAY,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;YAW1D,WAAW;YAQX,gBAAgB;YA2ChB,gBAAgB;IAI9B,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAG,IAAI;IAIzD,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIxC,WAAW,IAAI,MAAM,EAAE;CAGxB"}
1
+ {"version":3,"file":"tool-registry.d.ts","sourceRoot":"","sources":["../../../lib/tools/tool-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AACrF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAIxD,qBAAa,YAAY;IACvB,OAAO,CAAC,SAAS,CAAmB;IACpC,OAAO,CAAC,eAAe,CAAwB;IAC/C,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,YAAY,CAA0C;gBAG5D,SAAS,EAAE,gBAAgB,EAC3B,eAAe,EAAE,qBAAqB,EACtC,cAAc,EAAE,cAAc;IAO1B,YAAY,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;YAW1D,WAAW;YAQX,gBAAgB;YA2ChB,gBAAgB;IAI9B,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAG,IAAI;IAIzD,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIxC,WAAW,IAAI,MAAM,EAAE;IAMvB;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IAgBjD;;OAEG;IACG,oBAAoB,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IAuBvD;;OAEG;IACH,mBAAmB,IAAI,cAAc,EAAE;IAIvC;;OAEG;IACH,kBAAkB,IAAI,cAAc,EAAE;CAGvC"}
@@ -1,13 +1,13 @@
1
- import { createVectorSearchTool } from './built-in/vector-search.tool.js';
1
+ import { createKnowledgeSearchTool } from './built-in/knowledge-search.tool.js';
2
2
  import { logger } from '../logger.js';
3
3
  export class ToolRegistry {
4
4
  mcpClient;
5
- vectorStores;
5
+ knowledgeStores;
6
6
  functionLoader;
7
7
  builtInTools = new Map();
8
- constructor(mcpClient, vectorStores, functionLoader) {
8
+ constructor(mcpClient, knowledgeStores, functionLoader) {
9
9
  this.mcpClient = mcpClient;
10
- this.vectorStores = vectorStores;
10
+ this.knowledgeStores = knowledgeStores;
11
11
  this.functionLoader = functionLoader;
12
12
  }
13
13
  async resolveTools(toolRefs) {
@@ -35,17 +35,17 @@ export class ToolRegistry {
35
35
  switch (source) {
36
36
  case 'mcp':
37
37
  return this.mcpClient.getToolsByServer(name);
38
- case 'vector': {
39
- const store = this.vectorStores.get(name);
38
+ case 'knowledge': {
39
+ const store = this.knowledgeStores.get(name);
40
40
  if (!store) {
41
- await this.vectorStores.initialize(name);
42
- const initializedStore = this.vectorStores.get(name);
41
+ await this.knowledgeStores.initialize(name);
42
+ const initializedStore = this.knowledgeStores.get(name);
43
43
  if (initializedStore) {
44
- return [createVectorSearchTool(name, initializedStore)];
44
+ return [createKnowledgeSearchTool(name, initializedStore)];
45
45
  }
46
46
  return [];
47
47
  }
48
- return [createVectorSearchTool(name, store)];
48
+ return [createKnowledgeSearchTool(name, store)];
49
49
  }
50
50
  case 'function': {
51
51
  const func = this.functionLoader.getTool(name);
@@ -72,5 +72,58 @@ export class ToolRegistry {
72
72
  listBuiltIn() {
73
73
  return Array.from(this.builtInTools.keys());
74
74
  }
75
+ // Methods for bulk tool discovery (used by LangGraph workflows)
76
+ /**
77
+ * Gets all MCP tools from all servers.
78
+ */
79
+ async getAllMCPTools() {
80
+ const serverNames = this.mcpClient.getServerNames();
81
+ const allTools = [];
82
+ for (const serverName of serverNames) {
83
+ try {
84
+ const tools = await this.mcpClient.getToolsByServer(serverName);
85
+ allTools.push(...tools);
86
+ }
87
+ catch (error) {
88
+ logger.warn(`Failed to get tools from MCP server "${serverName}":`, error);
89
+ }
90
+ }
91
+ return allTools;
92
+ }
93
+ /**
94
+ * Gets all knowledge search tools for all configured knowledge stores.
95
+ */
96
+ async getAllKnowledgeTools() {
97
+ const configs = this.knowledgeStores.listConfigs();
98
+ const tools = [];
99
+ for (const config of configs) {
100
+ try {
101
+ // Initialize store if needed
102
+ let store = this.knowledgeStores.get(config.name);
103
+ if (!store) {
104
+ store = await this.knowledgeStores.initialize(config.name);
105
+ }
106
+ // Create knowledge search tool
107
+ const tool = createKnowledgeSearchTool(config.name, store);
108
+ tools.push(tool);
109
+ }
110
+ catch (error) {
111
+ logger.warn(`Failed to create knowledge search tool for "${config.name}":`, error);
112
+ }
113
+ }
114
+ return tools;
115
+ }
116
+ /**
117
+ * Gets all custom function tools.
118
+ */
119
+ getAllFunctionTools() {
120
+ return this.functionLoader.list().map((f) => f.tool);
121
+ }
122
+ /**
123
+ * Gets all built-in tools.
124
+ */
125
+ getAllBuiltInTools() {
126
+ return Array.from(this.builtInTools.values());
127
+ }
75
128
  }
76
129
  //# sourceMappingURL=tool-registry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tool-registry.js","sourceRoot":"","sources":["../../../lib/tools/tool-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-registry.js","sourceRoot":"","sources":["../../../lib/tools/tool-registry.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  export { WorkflowLoader } from './workflow-loader.js';
2
2
  export { WorkflowExecutor } from './workflow-executor.js';
3
- export { WorkflowDefinitionSchema, WorkflowStepSchema, InputMappingSchema, RetryConfigSchema, StepOutputSchema, ParallelStepsSchema, InputFieldSchema, WorkflowConfigSchema, } from './types.js';
4
- export type { WorkflowDefinition, WorkflowStep, InputMapping, RetryConfig, StepOutput, ParallelSteps, InputField, WorkflowConfig, WorkflowContext, WorkflowResult, StepResult, } from './types.js';
3
+ export { LangGraphExecutor } from './langgraph-executor.js';
4
+ export { InterruptManager } from './interrupt-manager.js';
5
+ export { WorkflowDefinitionSchema, WorkflowStepSchema, InputMappingSchema, RetryConfigSchema, StepOutputSchema, ParallelStepsSchema, InputFieldSchema, WorkflowConfigSchema, LangGraphWorkflowSchema, GraphToolConfigSchema, GraphAgentConfigSchema, GraphConfigSchema, } from './types.js';
6
+ export type { WorkflowDefinition, WorkflowStep, InputMapping, RetryConfig, StepOutput, ParallelSteps, InputField, WorkflowConfig, WorkflowContext, WorkflowResult, StepResult, LangGraphWorkflowDefinition, StepBasedWorkflowDefinition, GraphToolConfig, GraphAgentConfig, GraphConfig, WorkflowInterrupt, InterruptState, WorkflowStatus, } from './types.js';
5
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/workflows/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,kBAAkB,EAClB,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,UAAU,EACV,aAAa,EACb,UAAU,EACV,cAAc,EACd,eAAe,EACf,cAAc,EACd,UAAU,GACX,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/workflows/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,kBAAkB,EAClB,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,UAAU,EACV,aAAa,EACb,UAAU,EACV,cAAc,EACd,eAAe,EACf,cAAc,EACd,UAAU,EACV,2BAA2B,EAC3B,2BAA2B,EAC3B,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,iBAAiB,EACjB,cAAc,EACd,cAAc,GACf,MAAM,YAAY,CAAC"}
@@ -1,4 +1,6 @@
1
1
  export { WorkflowLoader } from './workflow-loader.js';
2
2
  export { WorkflowExecutor } from './workflow-executor.js';
3
- export { WorkflowDefinitionSchema, WorkflowStepSchema, InputMappingSchema, RetryConfigSchema, StepOutputSchema, ParallelStepsSchema, InputFieldSchema, WorkflowConfigSchema, } from './types.js';
3
+ export { LangGraphExecutor } from './langgraph-executor.js';
4
+ export { InterruptManager } from './interrupt-manager.js';
5
+ export { WorkflowDefinitionSchema, WorkflowStepSchema, InputMappingSchema, RetryConfigSchema, StepOutputSchema, ParallelStepsSchema, InputFieldSchema, WorkflowConfigSchema, LangGraphWorkflowSchema, GraphToolConfigSchema, GraphAgentConfigSchema, GraphConfigSchema, } from './types.js';
4
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/workflows/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/workflows/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,YAAY,CAAC"}
@@ -0,0 +1,42 @@
1
+ import type { InterruptState } from './types.js';
2
+ /**
3
+ * Manages workflow interrupts for human-in-the-loop interactions.
4
+ * Interrupts are stored in-memory and expire after 1 hour.
5
+ */
6
+ export declare class InterruptManager {
7
+ private interrupts;
8
+ private readonly INTERRUPT_TTL;
9
+ /**
10
+ * Adds a new interrupt.
11
+ */
12
+ addInterrupt(interrupt: InterruptState): void;
13
+ /**
14
+ * Gets an interrupt by thread ID.
15
+ */
16
+ getInterrupt(threadId: string): InterruptState | undefined;
17
+ /**
18
+ * Gets all interrupts for a workflow.
19
+ */
20
+ getInterruptsByWorkflow(workflowName: string): InterruptState[];
21
+ /**
22
+ * Resolves an interrupt with the user's answer.
23
+ */
24
+ resolveInterrupt(threadId: string, answer: string): boolean;
25
+ /**
26
+ * Removes an interrupt.
27
+ */
28
+ removeInterrupt(threadId: string): boolean;
29
+ /**
30
+ * Cleans up expired interrupts.
31
+ */
32
+ private cleanupExpired;
33
+ /**
34
+ * Gets the total number of active interrupts.
35
+ */
36
+ getInterruptCount(): number;
37
+ /**
38
+ * Clears all interrupts (useful for testing).
39
+ */
40
+ clear(): void;
41
+ }
42
+ //# sourceMappingURL=interrupt-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interrupt-manager.d.ts","sourceRoot":"","sources":["../../../lib/workflows/interrupt-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAGjD;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,UAAU,CAA0C;IAC5D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAW;IAEzC;;OAEG;IACH,YAAY,CAAC,SAAS,EAAE,cAAc,GAAG,IAAI;IAQ7C;;OAEG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IAa1D;;OAEG;IACH,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,cAAc,EAAE;IAe/D;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO;IAgB3D;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAQ1C;;OAEG;IACH,OAAO,CAAC,cAAc;IAgBtB;;OAEG;IACH,iBAAiB,IAAI,MAAM;IAK3B;;OAEG;IACH,KAAK,IAAI,IAAI;CAId"}