agent-orcha 0.0.5 → 0.0.8

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 (404) hide show
  1. package/README.md +250 -1275
  2. package/dist/lib/agents/agent-executor.d.ts +4 -2
  3. package/dist/lib/agents/agent-executor.d.ts.map +1 -1
  4. package/dist/lib/agents/agent-executor.js +85 -53
  5. package/dist/lib/agents/agent-executor.js.map +1 -1
  6. package/dist/lib/agents/agent-loader.d.ts +3 -0
  7. package/dist/lib/agents/agent-loader.d.ts.map +1 -1
  8. package/dist/lib/agents/agent-loader.js +10 -1
  9. package/dist/lib/agents/agent-loader.js.map +1 -1
  10. package/dist/lib/agents/react-loop.d.ts.map +1 -1
  11. package/dist/lib/agents/react-loop.js +207 -142
  12. package/dist/lib/agents/react-loop.js.map +1 -1
  13. package/dist/lib/agents/types.d.ts +181 -18
  14. package/dist/lib/agents/types.d.ts.map +1 -1
  15. package/dist/lib/agents/types.js +18 -2
  16. package/dist/lib/agents/types.js.map +1 -1
  17. package/dist/lib/functions/function-loader.d.ts +2 -0
  18. package/dist/lib/functions/function-loader.d.ts.map +1 -1
  19. package/dist/lib/functions/function-loader.js +10 -0
  20. package/dist/lib/functions/function-loader.js.map +1 -1
  21. package/dist/lib/functions/simple-function-wrapper.js +3 -3
  22. package/dist/lib/functions/simple-function-wrapper.js.map +1 -1
  23. package/dist/lib/integrations/email.d.ts +38 -0
  24. package/dist/lib/integrations/email.d.ts.map +1 -0
  25. package/dist/lib/integrations/email.js +249 -0
  26. package/dist/lib/integrations/email.js.map +1 -0
  27. package/dist/lib/integrations/integration-manager.d.ts +5 -0
  28. package/dist/lib/integrations/integration-manager.d.ts.map +1 -1
  29. package/dist/lib/integrations/integration-manager.js +53 -3
  30. package/dist/lib/integrations/integration-manager.js.map +1 -1
  31. package/dist/lib/integrations/types.d.ts +187 -4
  32. package/dist/lib/integrations/types.d.ts.map +1 -1
  33. package/dist/lib/integrations/types.js +24 -1
  34. package/dist/lib/integrations/types.js.map +1 -1
  35. package/dist/lib/knowledge/knowledge-store.d.ts +7 -1
  36. package/dist/lib/knowledge/knowledge-store.d.ts.map +1 -1
  37. package/dist/lib/knowledge/knowledge-store.js +96 -8
  38. package/dist/lib/knowledge/knowledge-store.js.map +1 -1
  39. package/dist/lib/knowledge/loaders/file-loaders.d.ts +8 -3
  40. package/dist/lib/knowledge/loaders/file-loaders.d.ts.map +1 -1
  41. package/dist/lib/knowledge/loaders/file-loaders.js +96 -75
  42. package/dist/lib/knowledge/loaders/file-loaders.js.map +1 -1
  43. package/dist/lib/knowledge/loaders/web-loader.d.ts +12 -3
  44. package/dist/lib/knowledge/loaders/web-loader.d.ts.map +1 -1
  45. package/dist/lib/knowledge/loaders/web-loader.js +56 -22
  46. package/dist/lib/knowledge/loaders/web-loader.js.map +1 -1
  47. package/dist/lib/knowledge/sqlite-store.d.ts.map +1 -1
  48. package/dist/lib/knowledge/sqlite-store.js +19 -10
  49. package/dist/lib/knowledge/sqlite-store.js.map +1 -1
  50. package/dist/lib/knowledge/types.d.ts +69 -33
  51. package/dist/lib/knowledge/types.d.ts.map +1 -1
  52. package/dist/lib/knowledge/types.js +18 -3
  53. package/dist/lib/knowledge/types.js.map +1 -1
  54. package/dist/lib/llm/index.d.ts +1 -1
  55. package/dist/lib/llm/index.d.ts.map +1 -1
  56. package/dist/lib/llm/index.js +1 -1
  57. package/dist/lib/llm/index.js.map +1 -1
  58. package/dist/lib/llm/llm-call-logger.d.ts +3 -1
  59. package/dist/lib/llm/llm-call-logger.d.ts.map +1 -1
  60. package/dist/lib/llm/llm-call-logger.js +31 -26
  61. package/dist/lib/llm/llm-call-logger.js.map +1 -1
  62. package/dist/lib/llm/llm-config.d.ts +59 -8
  63. package/dist/lib/llm/llm-config.d.ts.map +1 -1
  64. package/dist/lib/llm/llm-config.js +163 -17
  65. package/dist/lib/llm/llm-config.js.map +1 -1
  66. package/dist/lib/llm/llm-factory.d.ts +1 -2
  67. package/dist/lib/llm/llm-factory.d.ts.map +1 -1
  68. package/dist/lib/llm/llm-factory.js +44 -8
  69. package/dist/lib/llm/llm-factory.js.map +1 -1
  70. package/dist/lib/llm/providers/anthropic-chat-model.d.ts +5 -1
  71. package/dist/lib/llm/providers/anthropic-chat-model.d.ts.map +1 -1
  72. package/dist/lib/llm/providers/anthropic-chat-model.js +118 -42
  73. package/dist/lib/llm/providers/anthropic-chat-model.js.map +1 -1
  74. package/dist/lib/llm/providers/gemini-chat-model.d.ts +3 -2
  75. package/dist/lib/llm/providers/gemini-chat-model.d.ts.map +1 -1
  76. package/dist/lib/llm/providers/gemini-chat-model.js +83 -24
  77. package/dist/lib/llm/providers/gemini-chat-model.js.map +1 -1
  78. package/dist/lib/llm/providers/openai-chat-model.d.ts +20 -1
  79. package/dist/lib/llm/providers/openai-chat-model.d.ts.map +1 -1
  80. package/dist/lib/llm/providers/openai-chat-model.js +265 -32
  81. package/dist/lib/llm/providers/openai-chat-model.js.map +1 -1
  82. package/dist/lib/llm/providers/openai-embeddings.d.ts.map +1 -1
  83. package/dist/lib/llm/providers/openai-embeddings.js +41 -10
  84. package/dist/lib/llm/providers/openai-embeddings.js.map +1 -1
  85. package/dist/lib/local-llm/binary-manager.d.ts +66 -0
  86. package/dist/lib/local-llm/binary-manager.d.ts.map +1 -0
  87. package/dist/lib/local-llm/binary-manager.js +441 -0
  88. package/dist/lib/local-llm/binary-manager.js.map +1 -0
  89. package/dist/lib/local-llm/engine-interface.d.ts +47 -0
  90. package/dist/lib/local-llm/engine-interface.d.ts.map +1 -0
  91. package/dist/lib/local-llm/engine-interface.js +2 -0
  92. package/dist/lib/local-llm/engine-interface.js.map +1 -0
  93. package/dist/lib/local-llm/engine-registry.d.ts +20 -0
  94. package/dist/lib/local-llm/engine-registry.d.ts.map +1 -0
  95. package/dist/lib/local-llm/engine-registry.js +56 -0
  96. package/dist/lib/local-llm/engine-registry.js.map +1 -0
  97. package/dist/lib/local-llm/engines/llama-cpp-engine.d.ts +31 -0
  98. package/dist/lib/local-llm/engines/llama-cpp-engine.d.ts.map +1 -0
  99. package/dist/lib/local-llm/engines/llama-cpp-engine.js +164 -0
  100. package/dist/lib/local-llm/engines/llama-cpp-engine.js.map +1 -0
  101. package/dist/lib/local-llm/engines/mlx-serve-engine.d.ts +31 -0
  102. package/dist/lib/local-llm/engines/mlx-serve-engine.d.ts.map +1 -0
  103. package/dist/lib/local-llm/engines/mlx-serve-engine.js +161 -0
  104. package/dist/lib/local-llm/engines/mlx-serve-engine.js.map +1 -0
  105. package/dist/lib/local-llm/gguf-reader.d.ts +20 -0
  106. package/dist/lib/local-llm/gguf-reader.d.ts.map +1 -0
  107. package/dist/lib/local-llm/gguf-reader.js +190 -0
  108. package/dist/lib/local-llm/gguf-reader.js.map +1 -0
  109. package/dist/lib/local-llm/index.d.ts +9 -0
  110. package/dist/lib/local-llm/index.d.ts.map +1 -0
  111. package/dist/lib/local-llm/index.js +6 -0
  112. package/dist/lib/local-llm/index.js.map +1 -0
  113. package/dist/lib/local-llm/llama-server-process.d.ts +42 -0
  114. package/dist/lib/local-llm/llama-server-process.d.ts.map +1 -0
  115. package/dist/lib/local-llm/llama-server-process.js +237 -0
  116. package/dist/lib/local-llm/llama-server-process.js.map +1 -0
  117. package/dist/lib/local-llm/mlx-binary-manager.d.ts +33 -0
  118. package/dist/lib/local-llm/mlx-binary-manager.d.ts.map +1 -0
  119. package/dist/lib/local-llm/mlx-binary-manager.js +211 -0
  120. package/dist/lib/local-llm/mlx-binary-manager.js.map +1 -0
  121. package/dist/lib/local-llm/mlx-server-process.d.ts +26 -0
  122. package/dist/lib/local-llm/mlx-server-process.d.ts.map +1 -0
  123. package/dist/lib/local-llm/mlx-server-process.js +210 -0
  124. package/dist/lib/local-llm/mlx-server-process.js.map +1 -0
  125. package/dist/lib/local-llm/model-manager.d.ts +33 -0
  126. package/dist/lib/local-llm/model-manager.d.ts.map +1 -0
  127. package/dist/lib/local-llm/model-manager.js +591 -0
  128. package/dist/lib/local-llm/model-manager.js.map +1 -0
  129. package/dist/lib/local-llm/types.d.ts +51 -0
  130. package/dist/lib/local-llm/types.d.ts.map +1 -0
  131. package/dist/lib/local-llm/types.js +2 -0
  132. package/dist/lib/local-llm/types.js.map +1 -0
  133. package/dist/lib/logger.d.ts +2 -0
  134. package/dist/lib/logger.d.ts.map +1 -1
  135. package/dist/lib/logger.js +68 -6
  136. package/dist/lib/logger.js.map +1 -1
  137. package/dist/lib/mcp/mcp-client.d.ts.map +1 -1
  138. package/dist/lib/mcp/mcp-client.js +5 -3
  139. package/dist/lib/mcp/mcp-client.js.map +1 -1
  140. package/dist/lib/mcp/types.d.ts +0 -9
  141. package/dist/lib/mcp/types.d.ts.map +1 -1
  142. package/dist/lib/mcp/types.js +1 -2
  143. package/dist/lib/mcp/types.js.map +1 -1
  144. package/dist/lib/memory/memory-manager.d.ts +1 -0
  145. package/dist/lib/memory/memory-manager.d.ts.map +1 -1
  146. package/dist/lib/memory/memory-manager.js +9 -0
  147. package/dist/lib/memory/memory-manager.js.map +1 -1
  148. package/dist/lib/orchestrator.d.ts +11 -8
  149. package/dist/lib/orchestrator.d.ts.map +1 -1
  150. package/dist/lib/orchestrator.js +246 -5
  151. package/dist/lib/orchestrator.js.map +1 -1
  152. package/dist/lib/sandbox/cdp-client.d.ts +15 -0
  153. package/dist/lib/sandbox/cdp-client.d.ts.map +1 -0
  154. package/dist/lib/sandbox/cdp-client.js +139 -0
  155. package/dist/lib/sandbox/cdp-client.js.map +1 -0
  156. package/dist/lib/sandbox/html-to-markdown.d.ts +9 -1
  157. package/dist/lib/sandbox/html-to-markdown.d.ts.map +1 -1
  158. package/dist/lib/sandbox/html-to-markdown.js +67 -10
  159. package/dist/lib/sandbox/html-to-markdown.js.map +1 -1
  160. package/dist/lib/sandbox/index.d.ts +6 -0
  161. package/dist/lib/sandbox/index.d.ts.map +1 -1
  162. package/dist/lib/sandbox/index.js +5 -0
  163. package/dist/lib/sandbox/index.js.map +1 -1
  164. package/dist/lib/sandbox/page-readiness.d.ts +37 -0
  165. package/dist/lib/sandbox/page-readiness.d.ts.map +1 -0
  166. package/dist/lib/sandbox/page-readiness.js +268 -0
  167. package/dist/lib/sandbox/page-readiness.js.map +1 -0
  168. package/dist/lib/sandbox/sandbox-browser.d.ts +4 -0
  169. package/dist/lib/sandbox/sandbox-browser.d.ts.map +1 -0
  170. package/dist/lib/sandbox/sandbox-browser.js +316 -0
  171. package/dist/lib/sandbox/sandbox-browser.js.map +1 -0
  172. package/dist/lib/sandbox/sandbox-container.d.ts +39 -0
  173. package/dist/lib/sandbox/sandbox-container.d.ts.map +1 -0
  174. package/dist/lib/sandbox/sandbox-container.js +176 -0
  175. package/dist/lib/sandbox/sandbox-container.js.map +1 -0
  176. package/dist/lib/sandbox/sandbox-file.d.ts +4 -0
  177. package/dist/lib/sandbox/sandbox-file.d.ts.map +1 -0
  178. package/dist/lib/sandbox/sandbox-file.js +169 -0
  179. package/dist/lib/sandbox/sandbox-file.js.map +1 -0
  180. package/dist/lib/sandbox/sandbox-shell.d.ts +5 -0
  181. package/dist/lib/sandbox/sandbox-shell.d.ts.map +1 -0
  182. package/dist/lib/sandbox/sandbox-shell.js +111 -0
  183. package/dist/lib/sandbox/sandbox-shell.js.map +1 -0
  184. package/dist/lib/sandbox/sandbox-web.d.ts.map +1 -1
  185. package/dist/lib/sandbox/sandbox-web.js +64 -24
  186. package/dist/lib/sandbox/sandbox-web.js.map +1 -1
  187. package/dist/lib/sandbox/types.d.ts +9 -0
  188. package/dist/lib/sandbox/types.d.ts.map +1 -1
  189. package/dist/lib/sandbox/types.js +1 -0
  190. package/dist/lib/sandbox/types.js.map +1 -1
  191. package/dist/lib/sandbox/vision-browser.d.ts +4 -0
  192. package/dist/lib/sandbox/vision-browser.d.ts.map +1 -0
  193. package/dist/lib/sandbox/vision-browser.js +298 -0
  194. package/dist/lib/sandbox/vision-browser.js.map +1 -0
  195. package/dist/lib/sea/app-window.d.ts +7 -0
  196. package/dist/lib/sea/app-window.d.ts.map +1 -0
  197. package/dist/lib/sea/app-window.js +95 -0
  198. package/dist/lib/sea/app-window.js.map +1 -0
  199. package/dist/lib/sea/bootstrap.d.ts +18 -0
  200. package/dist/lib/sea/bootstrap.d.ts.map +1 -0
  201. package/dist/lib/sea/bootstrap.js +103 -0
  202. package/dist/lib/sea/bootstrap.js.map +1 -0
  203. package/dist/lib/sea/sqlite-vec-shim.d.ts +3 -0
  204. package/dist/lib/sea/sqlite-vec-shim.d.ts.map +1 -0
  205. package/dist/lib/sea/sqlite-vec-shim.js +10 -0
  206. package/dist/lib/sea/sqlite-vec-shim.js.map +1 -0
  207. package/dist/lib/skills/skill-loader.d.ts +2 -0
  208. package/dist/lib/skills/skill-loader.d.ts.map +1 -1
  209. package/dist/lib/skills/skill-loader.js +12 -1
  210. package/dist/lib/skills/skill-loader.js.map +1 -1
  211. package/dist/lib/tasks/task-manager.d.ts +3 -1
  212. package/dist/lib/tasks/task-manager.d.ts.map +1 -1
  213. package/dist/lib/tasks/task-manager.js +11 -0
  214. package/dist/lib/tasks/task-manager.js.map +1 -1
  215. package/dist/lib/tasks/task-store.d.ts +1 -1
  216. package/dist/lib/tasks/task-store.d.ts.map +1 -1
  217. package/dist/lib/tasks/task-store.js.map +1 -1
  218. package/dist/lib/tasks/types.d.ts +18 -0
  219. package/dist/lib/tasks/types.d.ts.map +1 -1
  220. package/dist/lib/tools/built-in/integration-tools.d.ts +4 -0
  221. package/dist/lib/tools/built-in/integration-tools.d.ts.map +1 -0
  222. package/dist/lib/tools/built-in/integration-tools.js +47 -0
  223. package/dist/lib/tools/built-in/integration-tools.js.map +1 -0
  224. package/dist/lib/tools/built-in/knowledge-entity-lookup.tool.d.ts +1 -2
  225. package/dist/lib/tools/built-in/knowledge-entity-lookup.tool.d.ts.map +1 -1
  226. package/dist/lib/tools/built-in/knowledge-entity-lookup.tool.js +17 -17
  227. package/dist/lib/tools/built-in/knowledge-entity-lookup.tool.js.map +1 -1
  228. package/dist/lib/tools/built-in/knowledge-graph-schema.tool.d.ts.map +1 -1
  229. package/dist/lib/tools/built-in/knowledge-graph-schema.tool.js +2 -4
  230. package/dist/lib/tools/built-in/knowledge-graph-schema.tool.js.map +1 -1
  231. package/dist/lib/tools/built-in/knowledge-search.tool.js +4 -4
  232. package/dist/lib/tools/built-in/knowledge-search.tool.js.map +1 -1
  233. package/dist/lib/tools/built-in/knowledge-sql.tool.d.ts.map +1 -1
  234. package/dist/lib/tools/built-in/knowledge-sql.tool.js +74 -40
  235. package/dist/lib/tools/built-in/knowledge-sql.tool.js.map +1 -1
  236. package/dist/lib/tools/built-in/knowledge-tools-factory.js +2 -2
  237. package/dist/lib/tools/built-in/knowledge-tools-factory.js.map +1 -1
  238. package/dist/lib/tools/built-in/knowledge-traverse.tool.d.ts +1 -2
  239. package/dist/lib/tools/built-in/knowledge-traverse.tool.d.ts.map +1 -1
  240. package/dist/lib/tools/built-in/knowledge-traverse.tool.js +5 -11
  241. package/dist/lib/tools/built-in/knowledge-traverse.tool.js.map +1 -1
  242. package/dist/lib/tools/built-in/query-validators.d.ts.map +1 -1
  243. package/dist/lib/tools/built-in/query-validators.js +4 -0
  244. package/dist/lib/tools/built-in/query-validators.js.map +1 -1
  245. package/dist/lib/tools/workspace/workspace-tools.d.ts +1 -0
  246. package/dist/lib/tools/workspace/workspace-tools.d.ts.map +1 -1
  247. package/dist/lib/tools/workspace/workspace-tools.js +44 -4
  248. package/dist/lib/tools/workspace/workspace-tools.js.map +1 -1
  249. package/dist/lib/triggers/cron-trigger.d.ts +1 -1
  250. package/dist/lib/triggers/cron-trigger.d.ts.map +1 -1
  251. package/dist/lib/triggers/cron-trigger.js.map +1 -1
  252. package/dist/lib/triggers/trigger-manager.d.ts +1 -0
  253. package/dist/lib/triggers/trigger-manager.d.ts.map +1 -1
  254. package/dist/lib/triggers/trigger-manager.js +26 -0
  255. package/dist/lib/triggers/trigger-manager.js.map +1 -1
  256. package/dist/lib/triggers/webhook-trigger.d.ts +1 -1
  257. package/dist/lib/triggers/webhook-trigger.d.ts.map +1 -1
  258. package/dist/lib/triggers/webhook-trigger.js.map +1 -1
  259. package/dist/lib/types/llm-types.d.ts +22 -4
  260. package/dist/lib/types/llm-types.d.ts.map +1 -1
  261. package/dist/lib/types/llm-types.js +50 -0
  262. package/dist/lib/types/llm-types.js.map +1 -1
  263. package/dist/lib/types/tool-factory.d.ts +2 -2
  264. package/dist/lib/types/tool-factory.d.ts.map +1 -1
  265. package/dist/lib/types/tool-factory.js +9 -2
  266. package/dist/lib/types/tool-factory.js.map +1 -1
  267. package/dist/lib/utils/document-extract.d.ts +10 -0
  268. package/dist/lib/utils/document-extract.d.ts.map +1 -0
  269. package/dist/lib/utils/document-extract.js +149 -0
  270. package/dist/lib/utils/document-extract.js.map +1 -0
  271. package/dist/lib/utils/env-substitution.d.ts +6 -0
  272. package/dist/lib/utils/env-substitution.d.ts.map +1 -0
  273. package/dist/lib/utils/env-substitution.js +15 -0
  274. package/dist/lib/utils/env-substitution.js.map +1 -0
  275. package/dist/lib/workflows/react-workflow-executor.d.ts.map +1 -1
  276. package/dist/lib/workflows/react-workflow-executor.js +23 -17
  277. package/dist/lib/workflows/react-workflow-executor.js.map +1 -1
  278. package/dist/lib/workflows/types.d.ts +81 -55
  279. package/dist/lib/workflows/types.d.ts.map +1 -1
  280. package/dist/lib/workflows/types.js +10 -0
  281. package/dist/lib/workflows/types.js.map +1 -1
  282. package/dist/lib/workflows/workflow-loader.d.ts +3 -0
  283. package/dist/lib/workflows/workflow-loader.d.ts.map +1 -1
  284. package/dist/lib/workflows/workflow-loader.js +10 -1
  285. package/dist/lib/workflows/workflow-loader.js.map +1 -1
  286. package/dist/public/assets/logo.png +0 -0
  287. package/dist/public/chat.html +39 -0
  288. package/dist/public/index.html +6 -176
  289. package/dist/public/src/components/AgentComposer.js +807 -0
  290. package/dist/public/src/components/AgentsView.js +1812 -508
  291. package/dist/public/src/components/AppRoot.js +125 -38
  292. package/dist/public/src/components/GraphView.js +382 -300
  293. package/dist/public/src/components/IdeView.js +277 -86
  294. package/dist/public/src/components/KnowledgeView.js +94 -130
  295. package/dist/public/src/components/LlmView.js +15 -19
  296. package/dist/public/src/components/LocalLlmView.js +2440 -0
  297. package/dist/public/src/components/LogViewer.js +155 -0
  298. package/dist/public/src/components/McpView.js +41 -49
  299. package/dist/public/src/components/MonitorView.js +174 -83
  300. package/dist/public/src/components/NavBar.js +16 -26
  301. package/dist/public/src/components/StandaloneChat.js +875 -0
  302. package/dist/public/src/services/ApiService.js +203 -4
  303. package/dist/public/src/services/SessionStore.js +86 -0
  304. package/dist/public/src/services/StreamManager.js +183 -0
  305. package/dist/public/src/store.js +1 -3
  306. package/dist/public/src/utils/card.js +21 -0
  307. package/dist/public/src/utils/markdown.js +7 -0
  308. package/dist/public/styles.css +2777 -0
  309. package/dist/src/cli/commands/init.d.ts.map +1 -1
  310. package/dist/src/cli/commands/init.js +7 -1
  311. package/dist/src/cli/commands/init.js.map +1 -1
  312. package/dist/src/cli/commands/start.d.ts.map +1 -1
  313. package/dist/src/cli/commands/start.js +28 -5
  314. package/dist/src/cli/commands/start.js.map +1 -1
  315. package/dist/src/cli/index.js +19 -5
  316. package/dist/src/cli/index.js.map +1 -1
  317. package/dist/src/index.js +7 -1
  318. package/dist/src/index.js.map +1 -1
  319. package/dist/src/middleware/auth.d.ts.map +1 -1
  320. package/dist/src/middleware/auth.js +28 -6
  321. package/dist/src/middleware/auth.js.map +1 -1
  322. package/dist/src/middleware/rate-limit.d.ts +8 -0
  323. package/dist/src/middleware/rate-limit.d.ts.map +1 -0
  324. package/dist/src/middleware/rate-limit.js +21 -0
  325. package/dist/src/middleware/rate-limit.js.map +1 -0
  326. package/dist/src/routes/agents.route.d.ts.map +1 -1
  327. package/dist/src/routes/agents.route.js +138 -10
  328. package/dist/src/routes/agents.route.js.map +1 -1
  329. package/dist/src/routes/chat.route.d.ts +3 -0
  330. package/dist/src/routes/chat.route.d.ts.map +1 -0
  331. package/dist/src/routes/chat.route.js +156 -0
  332. package/dist/src/routes/chat.route.js.map +1 -0
  333. package/dist/src/routes/files.route.d.ts.map +1 -1
  334. package/dist/src/routes/files.route.js +37 -2
  335. package/dist/src/routes/files.route.js.map +1 -1
  336. package/dist/src/routes/llm.route.d.ts.map +1 -1
  337. package/dist/src/routes/llm.route.js +263 -8
  338. package/dist/src/routes/llm.route.js.map +1 -1
  339. package/dist/src/routes/local-llm.route.d.ts +3 -0
  340. package/dist/src/routes/local-llm.route.d.ts.map +1 -0
  341. package/dist/src/routes/local-llm.route.js +688 -0
  342. package/dist/src/routes/local-llm.route.js.map +1 -0
  343. package/dist/src/routes/logs.route.d.ts +3 -0
  344. package/dist/src/routes/logs.route.d.ts.map +1 -0
  345. package/dist/src/routes/logs.route.js +24 -0
  346. package/dist/src/routes/logs.route.js.map +1 -0
  347. package/dist/src/routes/tasks.route.d.ts.map +1 -1
  348. package/dist/src/routes/tasks.route.js +15 -1
  349. package/dist/src/routes/tasks.route.js.map +1 -1
  350. package/dist/src/routes/vnc.route.d.ts +12 -0
  351. package/dist/src/routes/vnc.route.d.ts.map +1 -0
  352. package/dist/src/routes/vnc.route.js +74 -0
  353. package/dist/src/routes/vnc.route.js.map +1 -0
  354. package/dist/src/routes/workflows.route.d.ts.map +1 -1
  355. package/dist/src/routes/workflows.route.js +24 -0
  356. package/dist/src/routes/workflows.route.js.map +1 -1
  357. package/dist/src/server.d.ts.map +1 -1
  358. package/dist/src/server.js +29 -3
  359. package/dist/src/server.js.map +1 -1
  360. package/dist/templates/Demo.md +152 -0
  361. package/dist/templates/README.md +12 -3
  362. package/dist/templates/agents/actor.agent.yaml +34 -0
  363. package/dist/templates/agents/architect.agent.yaml +20 -13
  364. package/dist/templates/agents/chatbot.agent.yaml +23 -27
  365. package/dist/templates/agents/corporate.agent.yaml +64 -0
  366. package/dist/templates/agents/functions.agent.yaml +29 -0
  367. package/dist/templates/agents/investment-analyst.agent.yaml +79 -0
  368. package/dist/templates/agents/music-librarian.agent.yaml +46 -0
  369. package/dist/templates/agents/network-security.agent.yaml +81 -0
  370. package/dist/templates/agents/transport-security.agent.yaml +69 -0
  371. package/dist/templates/agents/web-engineer.agent.yaml +98 -0
  372. package/dist/templates/agents/web-pilot.agent.yaml +57 -0
  373. package/dist/templates/knowledge/music-store/LICENSE.md +11 -0
  374. package/dist/templates/knowledge/music-store/musicstore.sqlite +0 -0
  375. package/dist/templates/knowledge/music-store/tables.png +0 -0
  376. package/dist/templates/knowledge/music-store.knowledge.yaml +138 -0
  377. package/dist/templates/knowledge/org-chart/personnel.csv +21 -21
  378. package/dist/templates/knowledge/org-chart.knowledge.yaml +4 -0
  379. package/dist/templates/knowledge/patient-records.knowledge.yaml +20 -0
  380. package/dist/templates/knowledge/pdf-patients/PDF_Deid_Deidentification_0.pdf +0 -0
  381. package/dist/templates/knowledge/pdf-patients/PDF_Deid_Deidentification_1.pdf +0 -0
  382. package/dist/templates/knowledge/pdf-patients/PDF_Deid_Deidentification_10.pdf +0 -0
  383. package/dist/templates/knowledge/pdf-patients/PDF_Deid_Deidentification_11.pdf +0 -0
  384. package/dist/templates/knowledge/pet-store.knowledge.yaml +3 -0
  385. package/dist/templates/knowledge/security-incidents/incidents.json +55935 -0
  386. package/dist/templates/knowledge/security-incidents.knowledge.yaml +46 -0
  387. package/dist/templates/knowledge/{example.knowledge.yaml → transcripts.knowledge.yaml} +9 -5
  388. package/dist/templates/knowledge/transport-ot/systems.csv +117 -0
  389. package/dist/templates/knowledge/transport-ot.knowledge.yaml +55 -0
  390. package/dist/templates/knowledge/web-docs.knowledge.yaml +1 -1
  391. package/dist/templates/llm.json +62 -22
  392. package/dist/templates/mcp.json +7 -4
  393. package/dist/templates/skills/orcha-builder/SKILL.md +148 -215
  394. package/dist/templates/skills/pii-guard/SKILL.md +22 -0
  395. package/dist/templates/skills/sandbox/SKILL.md +25 -48
  396. package/dist/templates/skills/web-pilot/SKILL.md +51 -0
  397. package/dist/templates/workflows/example.workflow.yaml +27 -35
  398. package/dist/templates/workflows/react-example.workflow.yaml +14 -19
  399. package/dist/templates/workflows/team-chat.workflow.yaml +47 -0
  400. package/package.json +17 -4
  401. package/dist/public/src/components/SkillsView.js +0 -137
  402. package/dist/public/src/components/WorkflowsView.js +0 -416
  403. package/dist/templates/agents/knowledge-broker.agent.yaml +0 -39
  404. package/dist/templates/agents/sandbox.agent.yaml +0 -56
@@ -1,154 +1,219 @@
1
- import { aiMessage, toolMessage } from "../types/llm-types.js";
1
+ import { aiMessage, toolMessage, stripOldImages } from "../types/llm-types.js";
2
+ import { logger } from "../logger.js";
3
+ function countImages(messages) {
4
+ let count = 0;
5
+ for (const msg of messages) {
6
+ if (Array.isArray(msg.content)) {
7
+ for (const part of msg.content) {
8
+ if (part.type === 'image')
9
+ count++;
10
+ }
11
+ }
12
+ }
13
+ return count;
14
+ }
15
+ function estimateContextChars(messages) {
16
+ let chars = 0;
17
+ for (const msg of messages) {
18
+ if (typeof msg.content === 'string') {
19
+ chars += msg.content.length;
20
+ }
21
+ else if (Array.isArray(msg.content)) {
22
+ for (const part of msg.content) {
23
+ if (part.type === 'text')
24
+ chars += part.text.length;
25
+ else if (part.type === 'image')
26
+ chars += part.data.length;
27
+ }
28
+ }
29
+ }
30
+ return chars;
31
+ }
32
+ const MAX_NO_TOOL_RETRIES = 3;
33
+ const MAX_SAME_TOOL_REPEATS = 3;
34
+ /**
35
+ * Single source of truth for the ReAct loop.
36
+ * Both invoke() and streamEvents() delegate here.
37
+ */
38
+ async function* runLoop(allMessages, modelWithTools, toolMap, options) {
39
+ const maxIterations = options?.recursionLimit ?? 200;
40
+ let noToolStreak = 0;
41
+ let totalInputTokens = 0;
42
+ let totalOutputTokens = 0;
43
+ const toolCallCounts = new Map(); // "toolName:argsHash" → count
44
+ for (let i = 0; i < maxIterations; i++) {
45
+ if (options?.signal?.aborted) {
46
+ throw new DOMException('Aborted', 'AbortError');
47
+ }
48
+ const prepared = stripOldImages(allMessages);
49
+ const contextChars = estimateContextChars(prepared);
50
+ const contextKB = (contextChars / 1024).toFixed(1);
51
+ const images = countImages(prepared);
52
+ logger.info(`[ReactLoop] iteration ${i + 1} | messages: ${allMessages.length} | images: ${images} | context: ${contextKB} KB (~${Math.round(contextChars / 4).toLocaleString()} tokens)`);
53
+ yield {
54
+ event: 'on_react_iteration',
55
+ data: { iteration: i + 1, messageCount: allMessages.length, imageCount: images, contextChars, inputTokens: totalInputTokens, outputTokens: totalOutputTokens },
56
+ };
57
+ // Stream LLM response
58
+ const llmStart = Date.now();
59
+ let accumulatedContent = '';
60
+ let accumulatedReasoning = '';
61
+ let accumulatedToolCalls = [];
62
+ let usageMetadata;
63
+ for await (const chunk of modelWithTools.stream(prepared, { signal: options?.signal })) {
64
+ if (chunk.content) {
65
+ accumulatedContent += chunk.content;
66
+ yield { event: 'on_chat_model_stream', data: { chunk: { content: chunk.content } } };
67
+ }
68
+ if (chunk.reasoning) {
69
+ accumulatedReasoning += chunk.reasoning;
70
+ yield { event: 'on_chat_model_stream', data: { chunk: { reasoning: chunk.reasoning } } };
71
+ }
72
+ if (chunk.tool_calls?.length) {
73
+ accumulatedToolCalls = chunk.tool_calls;
74
+ }
75
+ if (chunk.usage_metadata) {
76
+ usageMetadata = chunk.usage_metadata;
77
+ }
78
+ }
79
+ if (usageMetadata) {
80
+ totalInputTokens += usageMetadata.input_tokens;
81
+ totalOutputTokens += usageMetadata.output_tokens;
82
+ }
83
+ const llmTime = Date.now() - llmStart;
84
+ if (accumulatedReasoning) {
85
+ logger.debug(`[ReactLoop] iteration ${i + 1} — reasoning/thinking: ${accumulatedReasoning.length} chars`);
86
+ }
87
+ yield {
88
+ event: 'on_chat_model_end',
89
+ data: {
90
+ output: { content: accumulatedContent, tool_calls: accumulatedToolCalls, usage_metadata: usageMetadata },
91
+ },
92
+ };
93
+ // Store reasoning in AI message content so the model retains memory of
94
+ // what it observed/thought across iterations.
95
+ const messageContent = [accumulatedReasoning, accumulatedContent].filter(Boolean).join('\n\n');
96
+ const hasContent = messageContent.trim().length > 0;
97
+ const hasToolCalls = accumulatedToolCalls.length > 0;
98
+ // Only push AI message if it has content or tool calls — empty messages
99
+ // confuse small LLMs (they see piling content:null and keep returning null)
100
+ if (hasContent || hasToolCalls) {
101
+ allMessages.push(aiMessage(messageContent, hasToolCalls ? accumulatedToolCalls : undefined));
102
+ }
103
+ // No tool calls — accept substantial text as final answer, nudge otherwise
104
+ if (!hasToolCalls) {
105
+ logger.info(`[ReactLoop] iteration ${i + 1} timing — LLM: ${(llmTime / 1000).toFixed(1)}s | no tools`);
106
+ if (accumulatedContent.trim().length > 50 || (accumulatedReasoning && accumulatedContent.trim())) {
107
+ logger.info(`[ReactLoop] iteration ${i + 1} — text response (${accumulatedContent.trim().length} chars), accepting as final answer`);
108
+ break;
109
+ }
110
+ noToolStreak++;
111
+ if (noToolStreak >= MAX_NO_TOOL_RETRIES) {
112
+ logger.warn(`[ReactLoop] iteration ${i + 1} — no tool calls after ${noToolStreak} attempts, accepting as final answer`);
113
+ break;
114
+ }
115
+ // Nudge the model based on context — small/local LLMs sometimes return
116
+ // empty responses after tool results and need explicit guidance
117
+ const lastMsg = allMessages[allMessages.length - 1];
118
+ const nudge = lastMsg?.role === 'tool'
119
+ ? 'The tool above returned results. Please respond to the user based on that data.'
120
+ : 'Please continue. Either call a tool or provide your response.';
121
+ logger.warn(`[ReactLoop] iteration ${i + 1} — empty response (attempt ${noToolStreak}/${MAX_NO_TOOL_RETRIES}), nudging model`);
122
+ allMessages.push({ role: 'human', content: nudge });
123
+ continue;
124
+ }
125
+ // Detect repeated identical tool calls (same tool + same args)
126
+ let loopDetected = false;
127
+ for (const tc of accumulatedToolCalls) {
128
+ const key = `${tc.name}:${JSON.stringify(tc.args)}`;
129
+ const count = (toolCallCounts.get(key) ?? 0) + 1;
130
+ toolCallCounts.set(key, count);
131
+ if (count >= MAX_SAME_TOOL_REPEATS) {
132
+ logger.warn(`[ReactLoop] iteration ${i + 1} — tool "${tc.name}" called ${count} times with same args, breaking loop`);
133
+ loopDetected = true;
134
+ }
135
+ }
136
+ if (loopDetected) {
137
+ allMessages.push(toolMessage('You have already called this tool multiple times with the same arguments. Use the results you already have to answer the user.', accumulatedToolCalls[0].id, accumulatedToolCalls[0].name));
138
+ noToolStreak++;
139
+ if (noToolStreak >= MAX_NO_TOOL_RETRIES) {
140
+ logger.warn(`[ReactLoop] iteration ${i + 1} — repeated loop detections (${noToolStreak}), stopping`);
141
+ yield {
142
+ event: 'on_loop_stopped',
143
+ data: { reason: 'The model kept repeating the same tool calls and was stopped. Consider using a more capable model for this task.' },
144
+ };
145
+ break;
146
+ }
147
+ continue;
148
+ }
149
+ // Only reset streak when making genuine progress (non-repeated tool calls)
150
+ noToolStreak = 0;
151
+ // Execute tool calls in parallel
152
+ if (options?.signal?.aborted) {
153
+ throw new DOMException('Aborted', 'AbortError');
154
+ }
155
+ const toolStart = Date.now();
156
+ const toolEntries = accumulatedToolCalls.map((tc) => ({
157
+ tc,
158
+ runId: `run_${Math.random().toString(36).substring(7)}`,
159
+ tool: toolMap.get(tc.name),
160
+ }));
161
+ // Emit all on_tool_start events before execution
162
+ const pendingEvents = [];
163
+ for (const { tc, runId, tool } of toolEntries) {
164
+ if (!tool) {
165
+ pendingEvents.push({ event: 'on_tool_start', name: tc.name, run_id: runId, data: { input: tc.args } });
166
+ pendingEvents.push({ event: 'on_tool_end', name: tc.name, run_id: runId, data: { output: `Tool "${tc.name}" not found` } });
167
+ }
168
+ else {
169
+ pendingEvents.push({ event: 'on_tool_start', name: tc.name, run_id: runId, data: { input: tc.args } });
170
+ }
171
+ }
172
+ for (const evt of pendingEvents)
173
+ yield evt;
174
+ // Run all tool calls concurrently
175
+ const results = await Promise.all(toolEntries.map(async ({ tc, runId, tool }) => {
176
+ if (!tool) {
177
+ return { tc, runId, output: `Tool "${tc.name}" not found`, error: false };
178
+ }
179
+ try {
180
+ const result = await tool.invoke(tc.args);
181
+ return { tc, runId, output: result, error: false };
182
+ }
183
+ catch (error) {
184
+ if (error instanceof Error && error.name === 'NodeInterrupt')
185
+ throw error;
186
+ const errMsg = error instanceof Error ? error.message : String(error);
187
+ return { tc, runId, output: `Error: ${errMsg}`, error: true };
188
+ }
189
+ }));
190
+ // Push messages and emit on_tool_end events in original order
191
+ for (const { tc, runId, output, error } of results) {
192
+ const tool = toolMap.get(tc.name);
193
+ if (!tool) {
194
+ allMessages.push(toolMessage(output, tc.id, tc.name));
195
+ continue; // on_tool_end already emitted above
196
+ }
197
+ allMessages.push(toolMessage(error ? output : output, tc.id, tc.name));
198
+ yield { event: 'on_tool_end', name: tc.name, run_id: runId, data: { output } };
199
+ }
200
+ const toolTime = Date.now() - toolStart;
201
+ logger.info(`[ReactLoop] iteration ${i + 1} timing — LLM: ${(llmTime / 1000).toFixed(1)}s | Tools: ${(toolTime / 1000).toFixed(1)}s (${accumulatedToolCalls.length} calls)`);
202
+ }
203
+ }
2
204
  export function createReActAgent(config) {
3
205
  const { model, tools, systemPrompt } = config;
4
206
  const toolMap = new Map(tools.map((t) => [t.name, t]));
5
207
  const modelWithTools = tools.length > 0 ? model.bindTools(tools) : model;
6
208
  return {
7
209
  async invoke(input, options) {
8
- const maxIterations = options?.recursionLimit ?? 200;
9
- const allMessages = [
10
- { role: 'system', content: systemPrompt },
11
- ...input.messages,
12
- ];
13
- for (let i = 0; i < maxIterations; i++) {
14
- if (options?.signal?.aborted) {
15
- throw new DOMException('Aborted', 'AbortError');
16
- }
17
- const response = await modelWithTools.invoke(allMessages);
18
- allMessages.push(aiMessage(response.content, response.tool_calls));
19
- // No tool calls = final answer
20
- if (!response.tool_calls || response.tool_calls.length === 0) {
21
- break;
22
- }
23
- // Execute each tool call
24
- for (const tc of response.tool_calls) {
25
- if (options?.signal?.aborted) {
26
- throw new DOMException('Aborted', 'AbortError');
27
- }
28
- const tool = toolMap.get(tc.name);
29
- if (!tool) {
30
- allMessages.push(toolMessage(`Tool "${tc.name}" not found`, tc.id, tc.name));
31
- continue;
32
- }
33
- try {
34
- const result = await tool.invoke(tc.args);
35
- allMessages.push(toolMessage(result, tc.id, tc.name));
36
- }
37
- catch (error) {
38
- // Re-throw NodeInterrupt for HITL support
39
- if (error instanceof Error && error.name === 'NodeInterrupt') {
40
- throw error;
41
- }
42
- const errMsg = error instanceof Error ? error.message : String(error);
43
- allMessages.push(toolMessage(`Error: ${errMsg}`, tc.id, tc.name));
44
- }
45
- }
46
- }
210
+ const allMessages = [{ role: 'system', content: systemPrompt }, ...input.messages];
211
+ for await (const _ of runLoop(allMessages, modelWithTools, toolMap, options)) { /* consume events */ }
47
212
  return { messages: allMessages };
48
213
  },
49
214
  async *streamEvents(input, options) {
50
- const maxIterations = options?.recursionLimit ?? 200;
51
- const allMessages = [
52
- { role: 'system', content: systemPrompt },
53
- ...input.messages,
54
- ];
55
- for (let i = 0; i < maxIterations; i++) {
56
- if (options?.signal?.aborted) {
57
- throw new DOMException('Aborted', 'AbortError');
58
- }
59
- // Stream the LLM response
60
- let accumulatedContent = '';
61
- let accumulatedToolCalls = [];
62
- let usageMetadata;
63
- for await (const chunk of modelWithTools.stream(allMessages, {
64
- signal: options?.signal,
65
- })) {
66
- if (chunk.content) {
67
- accumulatedContent += chunk.content;
68
- yield {
69
- event: 'on_chat_model_stream',
70
- data: { chunk: { content: chunk.content } },
71
- };
72
- }
73
- if (chunk.tool_calls?.length) {
74
- accumulatedToolCalls = chunk.tool_calls;
75
- }
76
- if (chunk.usage_metadata) {
77
- usageMetadata = chunk.usage_metadata;
78
- }
79
- }
80
- // Emit model end event with usage
81
- yield {
82
- event: 'on_chat_model_end',
83
- data: {
84
- output: {
85
- content: accumulatedContent,
86
- tool_calls: accumulatedToolCalls,
87
- usage_metadata: usageMetadata,
88
- },
89
- },
90
- };
91
- allMessages.push(aiMessage(accumulatedContent, accumulatedToolCalls.length > 0 ? accumulatedToolCalls : undefined));
92
- // No tool calls = final answer
93
- if (accumulatedToolCalls.length === 0) {
94
- break;
95
- }
96
- // Execute each tool call
97
- for (const tc of accumulatedToolCalls) {
98
- if (options?.signal?.aborted) {
99
- throw new DOMException('Aborted', 'AbortError');
100
- }
101
- const runId = `run_${Math.random().toString(36).substring(7)}`;
102
- const tool = toolMap.get(tc.name);
103
- if (!tool) {
104
- const errorResult = `Tool "${tc.name}" not found`;
105
- allMessages.push(toolMessage(errorResult, tc.id, tc.name));
106
- yield {
107
- event: 'on_tool_start',
108
- name: tc.name,
109
- run_id: runId,
110
- data: { input: tc.args },
111
- };
112
- yield {
113
- event: 'on_tool_end',
114
- name: tc.name,
115
- run_id: runId,
116
- data: { output: errorResult },
117
- };
118
- continue;
119
- }
120
- yield {
121
- event: 'on_tool_start',
122
- name: tc.name,
123
- run_id: runId,
124
- data: { input: tc.args },
125
- };
126
- try {
127
- const result = await tool.invoke(tc.args);
128
- allMessages.push(toolMessage(result, tc.id, tc.name));
129
- yield {
130
- event: 'on_tool_end',
131
- name: tc.name,
132
- run_id: runId,
133
- data: { output: result },
134
- };
135
- }
136
- catch (error) {
137
- // Re-throw NodeInterrupt for HITL support
138
- if (error instanceof Error && error.name === 'NodeInterrupt') {
139
- throw error;
140
- }
141
- const errMsg = error instanceof Error ? error.message : String(error);
142
- allMessages.push(toolMessage(`Error: ${errMsg}`, tc.id, tc.name));
143
- yield {
144
- event: 'on_tool_end',
145
- name: tc.name,
146
- run_id: runId,
147
- data: { output: `Error: ${errMsg}` },
148
- };
149
- }
150
- }
151
- }
215
+ const allMessages = [{ role: 'system', content: systemPrompt }, ...input.messages];
216
+ yield* runLoop(allMessages, modelWithTools, toolMap, options);
152
217
  },
153
218
  };
154
219
  }
@@ -1 +1 @@
1
- {"version":3,"file":"react-loop.js","sourceRoot":"","sources":["../../../lib/agents/react-loop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"react-loop.js","sourceRoot":"","sources":["../../../lib/agents/react-loop.ts"],"names":[],"mappings":"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"}