overai 1.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 (442) hide show
  1. package/README.md +248 -0
  2. package/dist/agent/context.d.ts +74 -0
  3. package/dist/agent/context.js +140 -0
  4. package/dist/agent/enhanced.d.ts +98 -0
  5. package/dist/agent/enhanced.js +293 -0
  6. package/dist/agent/handoff.d.ts +82 -0
  7. package/dist/agent/handoff.js +124 -0
  8. package/dist/agent/image.d.ts +57 -0
  9. package/dist/agent/image.js +116 -0
  10. package/dist/agent/index.d.ts +19 -0
  11. package/dist/agent/index.js +38 -0
  12. package/dist/agent/prompt-expander.d.ts +43 -0
  13. package/dist/agent/prompt-expander.js +99 -0
  14. package/dist/agent/proxy.d.ts +26 -0
  15. package/dist/agent/proxy.js +173 -0
  16. package/dist/agent/query-rewriter.d.ts +41 -0
  17. package/dist/agent/query-rewriter.js +94 -0
  18. package/dist/agent/research.d.ts +55 -0
  19. package/dist/agent/research.js +134 -0
  20. package/dist/agent/router.d.ts +141 -0
  21. package/dist/agent/router.js +209 -0
  22. package/dist/agent/simple.d.ts +289 -0
  23. package/dist/agent/simple.js +696 -0
  24. package/dist/agent/types.d.ts +56 -0
  25. package/dist/agent/types.js +165 -0
  26. package/dist/ai/agent-loop.d.ts +177 -0
  27. package/dist/ai/agent-loop.js +313 -0
  28. package/dist/ai/devtools.d.ts +74 -0
  29. package/dist/ai/devtools.js +216 -0
  30. package/dist/ai/embed.d.ts +71 -0
  31. package/dist/ai/embed.js +154 -0
  32. package/dist/ai/generate-image.d.ts +66 -0
  33. package/dist/ai/generate-image.js +138 -0
  34. package/dist/ai/generate-object.d.ts +132 -0
  35. package/dist/ai/generate-object.js +206 -0
  36. package/dist/ai/generate-text.d.ts +201 -0
  37. package/dist/ai/generate-text.js +253 -0
  38. package/dist/ai/index.d.ts +27 -0
  39. package/dist/ai/index.js +140 -0
  40. package/dist/ai/mcp.d.ts +181 -0
  41. package/dist/ai/mcp.js +234 -0
  42. package/dist/ai/middleware.d.ts +110 -0
  43. package/dist/ai/middleware.js +186 -0
  44. package/dist/ai/models.d.ts +67 -0
  45. package/dist/ai/models.js +249 -0
  46. package/dist/ai/multimodal.d.ts +125 -0
  47. package/dist/ai/multimodal.js +270 -0
  48. package/dist/ai/nextjs.d.ts +122 -0
  49. package/dist/ai/nextjs.js +218 -0
  50. package/dist/ai/server.d.ts +126 -0
  51. package/dist/ai/server.js +336 -0
  52. package/dist/ai/speech.d.ts +135 -0
  53. package/dist/ai/speech.js +296 -0
  54. package/dist/ai/telemetry.d.ts +162 -0
  55. package/dist/ai/telemetry.js +311 -0
  56. package/dist/ai/tool-approval.d.ts +225 -0
  57. package/dist/ai/tool-approval.js +407 -0
  58. package/dist/ai/tools.d.ts +93 -0
  59. package/dist/ai/tools.js +89 -0
  60. package/dist/ai/types.d.ts +47 -0
  61. package/dist/ai/types.js +5 -0
  62. package/dist/ai/ui-message.d.ts +218 -0
  63. package/dist/ai/ui-message.js +291 -0
  64. package/dist/auto/index.d.ts +62 -0
  65. package/dist/auto/index.js +163 -0
  66. package/dist/cache/index.d.ts +78 -0
  67. package/dist/cache/index.js +235 -0
  68. package/dist/cli/commands/agent.d.ts +30 -0
  69. package/dist/cli/commands/agent.js +151 -0
  70. package/dist/cli/commands/agents.d.ts +24 -0
  71. package/dist/cli/commands/agents.js +166 -0
  72. package/dist/cli/commands/approval.d.ts +10 -0
  73. package/dist/cli/commands/approval.js +253 -0
  74. package/dist/cli/commands/auto.d.ts +12 -0
  75. package/dist/cli/commands/auto.js +109 -0
  76. package/dist/cli/commands/autonomy.d.ts +5 -0
  77. package/dist/cli/commands/autonomy.js +152 -0
  78. package/dist/cli/commands/benchmark.d.ts +19 -0
  79. package/dist/cli/commands/benchmark.js +484 -0
  80. package/dist/cli/commands/cache.d.ts +9 -0
  81. package/dist/cli/commands/cache.js +143 -0
  82. package/dist/cli/commands/chat.d.ts +14 -0
  83. package/dist/cli/commands/chat.js +127 -0
  84. package/dist/cli/commands/checkpoints.d.ts +5 -0
  85. package/dist/cli/commands/checkpoints.js +236 -0
  86. package/dist/cli/commands/context.d.ts +11 -0
  87. package/dist/cli/commands/context.js +182 -0
  88. package/dist/cli/commands/cost.d.ts +5 -0
  89. package/dist/cli/commands/cost.js +146 -0
  90. package/dist/cli/commands/db.d.ts +9 -0
  91. package/dist/cli/commands/db.js +149 -0
  92. package/dist/cli/commands/embed.d.ts +20 -0
  93. package/dist/cli/commands/embed.js +375 -0
  94. package/dist/cli/commands/eval.d.ts +17 -0
  95. package/dist/cli/commands/eval.js +247 -0
  96. package/dist/cli/commands/external-agents.d.ts +5 -0
  97. package/dist/cli/commands/external-agents.js +170 -0
  98. package/dist/cli/commands/fast-context.d.ts +5 -0
  99. package/dist/cli/commands/fast-context.js +126 -0
  100. package/dist/cli/commands/flow.d.ts +5 -0
  101. package/dist/cli/commands/flow.js +141 -0
  102. package/dist/cli/commands/git.d.ts +5 -0
  103. package/dist/cli/commands/git.js +178 -0
  104. package/dist/cli/commands/graph-rag.d.ts +9 -0
  105. package/dist/cli/commands/graph-rag.js +131 -0
  106. package/dist/cli/commands/guardrail.d.ts +11 -0
  107. package/dist/cli/commands/guardrail.js +156 -0
  108. package/dist/cli/commands/handoff.d.ts +9 -0
  109. package/dist/cli/commands/handoff.js +133 -0
  110. package/dist/cli/commands/help.d.ts +8 -0
  111. package/dist/cli/commands/help.js +139 -0
  112. package/dist/cli/commands/image.d.ts +13 -0
  113. package/dist/cli/commands/image.js +192 -0
  114. package/dist/cli/commands/interactive.d.ts +6 -0
  115. package/dist/cli/commands/interactive.js +79 -0
  116. package/dist/cli/commands/jobs.d.ts +5 -0
  117. package/dist/cli/commands/jobs.js +282 -0
  118. package/dist/cli/commands/knowledge.d.ts +9 -0
  119. package/dist/cli/commands/knowledge.js +226 -0
  120. package/dist/cli/commands/llm.d.ts +21 -0
  121. package/dist/cli/commands/llm.js +748 -0
  122. package/dist/cli/commands/mcp.d.ts +9 -0
  123. package/dist/cli/commands/mcp.js +243 -0
  124. package/dist/cli/commands/memory.d.ts +10 -0
  125. package/dist/cli/commands/memory.js +198 -0
  126. package/dist/cli/commands/n8n.d.ts +5 -0
  127. package/dist/cli/commands/n8n.js +137 -0
  128. package/dist/cli/commands/observability.d.ts +16 -0
  129. package/dist/cli/commands/observability.js +335 -0
  130. package/dist/cli/commands/planning.d.ts +9 -0
  131. package/dist/cli/commands/planning.js +167 -0
  132. package/dist/cli/commands/prompt-expand.d.ts +11 -0
  133. package/dist/cli/commands/prompt-expand.js +100 -0
  134. package/dist/cli/commands/providers.d.ts +17 -0
  135. package/dist/cli/commands/providers.js +386 -0
  136. package/dist/cli/commands/query-rewrite.d.ts +12 -0
  137. package/dist/cli/commands/query-rewrite.js +102 -0
  138. package/dist/cli/commands/repo-map.d.ts +5 -0
  139. package/dist/cli/commands/repo-map.js +151 -0
  140. package/dist/cli/commands/reranker.d.ts +10 -0
  141. package/dist/cli/commands/reranker.js +144 -0
  142. package/dist/cli/commands/research.d.ts +12 -0
  143. package/dist/cli/commands/research.js +108 -0
  144. package/dist/cli/commands/router.d.ts +11 -0
  145. package/dist/cli/commands/router.js +142 -0
  146. package/dist/cli/commands/run.d.ts +14 -0
  147. package/dist/cli/commands/run.js +111 -0
  148. package/dist/cli/commands/sandbox.d.ts +5 -0
  149. package/dist/cli/commands/sandbox.js +135 -0
  150. package/dist/cli/commands/scheduler.d.ts +5 -0
  151. package/dist/cli/commands/scheduler.js +260 -0
  152. package/dist/cli/commands/session.d.ts +9 -0
  153. package/dist/cli/commands/session.js +238 -0
  154. package/dist/cli/commands/skills.d.ts +9 -0
  155. package/dist/cli/commands/skills.js +256 -0
  156. package/dist/cli/commands/telemetry.d.ts +9 -0
  157. package/dist/cli/commands/telemetry.js +146 -0
  158. package/dist/cli/commands/tools.d.ts +19 -0
  159. package/dist/cli/commands/tools.js +576 -0
  160. package/dist/cli/commands/vector.d.ts +10 -0
  161. package/dist/cli/commands/vector.js +171 -0
  162. package/dist/cli/commands/version.d.ts +8 -0
  163. package/dist/cli/commands/version.js +40 -0
  164. package/dist/cli/commands/voice.d.ts +10 -0
  165. package/dist/cli/commands/voice.js +162 -0
  166. package/dist/cli/commands/workflow.d.ts +13 -0
  167. package/dist/cli/commands/workflow.js +184 -0
  168. package/dist/cli/config/index.d.ts +6 -0
  169. package/dist/cli/config/index.js +22 -0
  170. package/dist/cli/config/load.d.ts +20 -0
  171. package/dist/cli/config/load.js +229 -0
  172. package/dist/cli/config/resolve.d.ts +28 -0
  173. package/dist/cli/config/resolve.js +70 -0
  174. package/dist/cli/config/schema.d.ts +15 -0
  175. package/dist/cli/config/schema.js +65 -0
  176. package/dist/cli/features/autonomy-mode.d.ts +98 -0
  177. package/dist/cli/features/autonomy-mode.js +266 -0
  178. package/dist/cli/features/background-jobs.d.ts +155 -0
  179. package/dist/cli/features/background-jobs.js +416 -0
  180. package/dist/cli/features/checkpoints.d.ts +126 -0
  181. package/dist/cli/features/checkpoints.js +288 -0
  182. package/dist/cli/features/cost-tracker.d.ts +101 -0
  183. package/dist/cli/features/cost-tracker.js +212 -0
  184. package/dist/cli/features/external-agents.d.ts +117 -0
  185. package/dist/cli/features/external-agents.js +296 -0
  186. package/dist/cli/features/fast-context.d.ts +126 -0
  187. package/dist/cli/features/fast-context.js +310 -0
  188. package/dist/cli/features/flow-display.d.ts +100 -0
  189. package/dist/cli/features/flow-display.js +254 -0
  190. package/dist/cli/features/git-integration.d.ts +138 -0
  191. package/dist/cli/features/git-integration.js +374 -0
  192. package/dist/cli/features/index.d.ts +17 -0
  193. package/dist/cli/features/index.js +102 -0
  194. package/dist/cli/features/interactive-tui.d.ts +114 -0
  195. package/dist/cli/features/interactive-tui.js +326 -0
  196. package/dist/cli/features/n8n-integration.d.ts +111 -0
  197. package/dist/cli/features/n8n-integration.js +299 -0
  198. package/dist/cli/features/repo-map.d.ts +101 -0
  199. package/dist/cli/features/repo-map.js +350 -0
  200. package/dist/cli/features/sandbox-executor.d.ts +89 -0
  201. package/dist/cli/features/sandbox-executor.js +314 -0
  202. package/dist/cli/features/scheduler.d.ts +111 -0
  203. package/dist/cli/features/scheduler.js +298 -0
  204. package/dist/cli/features/slash-commands.d.ts +77 -0
  205. package/dist/cli/features/slash-commands.js +316 -0
  206. package/dist/cli/index.d.ts +24 -0
  207. package/dist/cli/index.js +214 -0
  208. package/dist/cli/output/errors.d.ts +23 -0
  209. package/dist/cli/output/errors.js +36 -0
  210. package/dist/cli/output/json.d.ts +27 -0
  211. package/dist/cli/output/json.js +31 -0
  212. package/dist/cli/output/pretty.d.ts +13 -0
  213. package/dist/cli/output/pretty.js +31 -0
  214. package/dist/cli/runtime/env.d.ts +12 -0
  215. package/dist/cli/runtime/env.js +55 -0
  216. package/dist/cli/runtime/exit.d.ts +11 -0
  217. package/dist/cli/runtime/exit.js +49 -0
  218. package/dist/cli/runtime/index.d.ts +6 -0
  219. package/dist/cli/runtime/index.js +22 -0
  220. package/dist/cli/runtime/lazy.d.ts +18 -0
  221. package/dist/cli/runtime/lazy.js +85 -0
  222. package/dist/cli/spec/cli-spec.d.ts +87 -0
  223. package/dist/cli/spec/cli-spec.js +551 -0
  224. package/dist/cli/spec/index.d.ts +4 -0
  225. package/dist/cli/spec/index.js +20 -0
  226. package/dist/db/index.d.ts +6 -0
  227. package/dist/db/index.js +75 -0
  228. package/dist/db/types.d.ts +42 -0
  229. package/dist/db/types.js +2 -0
  230. package/dist/eval/index.d.ts +61 -0
  231. package/dist/eval/index.js +157 -0
  232. package/dist/events/index.d.ts +84 -0
  233. package/dist/events/index.js +153 -0
  234. package/dist/guardrails/index.d.ts +82 -0
  235. package/dist/guardrails/index.js +202 -0
  236. package/dist/guardrails/llm-guardrail.d.ts +46 -0
  237. package/dist/guardrails/llm-guardrail.js +112 -0
  238. package/dist/index.d.ts +92 -0
  239. package/dist/index.js +608 -0
  240. package/dist/integrations/computer-use.d.ts +182 -0
  241. package/dist/integrations/computer-use.js +356 -0
  242. package/dist/integrations/index.d.ts +7 -0
  243. package/dist/integrations/index.js +26 -0
  244. package/dist/integrations/observability/base.d.ts +123 -0
  245. package/dist/integrations/observability/base.js +183 -0
  246. package/dist/integrations/observability/index.d.ts +8 -0
  247. package/dist/integrations/observability/index.js +29 -0
  248. package/dist/integrations/observability/langfuse.d.ts +32 -0
  249. package/dist/integrations/observability/langfuse.js +174 -0
  250. package/dist/integrations/postgres.d.ts +162 -0
  251. package/dist/integrations/postgres.js +396 -0
  252. package/dist/integrations/slack.d.ts +145 -0
  253. package/dist/integrations/slack.js +270 -0
  254. package/dist/integrations/vector/base.d.ts +110 -0
  255. package/dist/integrations/vector/base.js +158 -0
  256. package/dist/integrations/vector/chroma.d.ts +25 -0
  257. package/dist/integrations/vector/chroma.js +143 -0
  258. package/dist/integrations/vector/index.d.ts +14 -0
  259. package/dist/integrations/vector/index.js +37 -0
  260. package/dist/integrations/vector/pinecone.d.ts +28 -0
  261. package/dist/integrations/vector/pinecone.js +172 -0
  262. package/dist/integrations/vector/qdrant.d.ts +25 -0
  263. package/dist/integrations/vector/qdrant.js +146 -0
  264. package/dist/integrations/vector/weaviate.d.ts +30 -0
  265. package/dist/integrations/vector/weaviate.js +206 -0
  266. package/dist/integrations/voice/base.d.ts +76 -0
  267. package/dist/integrations/voice/base.js +168 -0
  268. package/dist/integrations/voice/index.d.ts +6 -0
  269. package/dist/integrations/voice/index.js +26 -0
  270. package/dist/knowledge/chunking.d.ts +55 -0
  271. package/dist/knowledge/chunking.js +158 -0
  272. package/dist/knowledge/graph-rag.d.ts +125 -0
  273. package/dist/knowledge/graph-rag.js +289 -0
  274. package/dist/knowledge/index.d.ts +24 -0
  275. package/dist/knowledge/index.js +47 -0
  276. package/dist/knowledge/knowledge.d.ts +0 -0
  277. package/dist/knowledge/knowledge.js +1 -0
  278. package/dist/knowledge/rag.d.ts +80 -0
  279. package/dist/knowledge/rag.js +147 -0
  280. package/dist/knowledge/reranker.d.ts +86 -0
  281. package/dist/knowledge/reranker.js +196 -0
  282. package/dist/llm/backend-resolver.d.ts +77 -0
  283. package/dist/llm/backend-resolver.js +242 -0
  284. package/dist/llm/embeddings.d.ts +66 -0
  285. package/dist/llm/embeddings.js +294 -0
  286. package/dist/llm/index.d.ts +29 -0
  287. package/dist/llm/index.js +33 -0
  288. package/dist/llm/llm.d.ts +0 -0
  289. package/dist/llm/llm.js +1 -0
  290. package/dist/llm/openai.d.ts +39 -0
  291. package/dist/llm/openai.js +302 -0
  292. package/dist/llm/providers/ai-sdk/adapter.d.ts +121 -0
  293. package/dist/llm/providers/ai-sdk/adapter.js +399 -0
  294. package/dist/llm/providers/ai-sdk/backend.d.ts +49 -0
  295. package/dist/llm/providers/ai-sdk/backend.js +421 -0
  296. package/dist/llm/providers/ai-sdk/index.d.ts +69 -0
  297. package/dist/llm/providers/ai-sdk/index.js +200 -0
  298. package/dist/llm/providers/ai-sdk/middleware.d.ts +60 -0
  299. package/dist/llm/providers/ai-sdk/middleware.js +262 -0
  300. package/dist/llm/providers/ai-sdk/provider-map.d.ts +75 -0
  301. package/dist/llm/providers/ai-sdk/provider-map.js +258 -0
  302. package/dist/llm/providers/ai-sdk/types.d.ts +217 -0
  303. package/dist/llm/providers/ai-sdk/types.js +222 -0
  304. package/dist/llm/providers/anthropic.d.ts +33 -0
  305. package/dist/llm/providers/anthropic.js +291 -0
  306. package/dist/llm/providers/base.d.ts +25 -0
  307. package/dist/llm/providers/base.js +43 -0
  308. package/dist/llm/providers/google.d.ts +27 -0
  309. package/dist/llm/providers/google.js +275 -0
  310. package/dist/llm/providers/index.d.ts +107 -0
  311. package/dist/llm/providers/index.js +216 -0
  312. package/dist/llm/providers/openai.d.ts +18 -0
  313. package/dist/llm/providers/openai.js +203 -0
  314. package/dist/llm/providers/registry.d.ts +159 -0
  315. package/dist/llm/providers/registry.js +279 -0
  316. package/dist/llm/providers/types.d.ts +94 -0
  317. package/dist/llm/providers/types.js +5 -0
  318. package/dist/main.d.ts +0 -0
  319. package/dist/main.js +1 -0
  320. package/dist/memory/auto-memory.d.ts +136 -0
  321. package/dist/memory/auto-memory.js +301 -0
  322. package/dist/memory/file-memory.d.ts +88 -0
  323. package/dist/memory/file-memory.js +287 -0
  324. package/dist/memory/index.d.ts +26 -0
  325. package/dist/memory/index.js +41 -0
  326. package/dist/memory/memory.d.ts +92 -0
  327. package/dist/memory/memory.js +170 -0
  328. package/dist/observability/adapters/console.d.ts +33 -0
  329. package/dist/observability/adapters/console.js +71 -0
  330. package/dist/observability/adapters/external/arize.d.ts +20 -0
  331. package/dist/observability/adapters/external/arize.js +22 -0
  332. package/dist/observability/adapters/external/axiom.d.ts +20 -0
  333. package/dist/observability/adapters/external/axiom.js +22 -0
  334. package/dist/observability/adapters/external/braintrust.d.ts +20 -0
  335. package/dist/observability/adapters/external/braintrust.js +22 -0
  336. package/dist/observability/adapters/external/helicone.d.ts +20 -0
  337. package/dist/observability/adapters/external/helicone.js +22 -0
  338. package/dist/observability/adapters/external/laminar.d.ts +20 -0
  339. package/dist/observability/adapters/external/laminar.js +22 -0
  340. package/dist/observability/adapters/external/langfuse.d.ts +28 -0
  341. package/dist/observability/adapters/external/langfuse.js +186 -0
  342. package/dist/observability/adapters/external/langsmith.d.ts +21 -0
  343. package/dist/observability/adapters/external/langsmith.js +83 -0
  344. package/dist/observability/adapters/external/langwatch.d.ts +20 -0
  345. package/dist/observability/adapters/external/langwatch.js +22 -0
  346. package/dist/observability/adapters/external/maxim.d.ts +20 -0
  347. package/dist/observability/adapters/external/maxim.js +22 -0
  348. package/dist/observability/adapters/external/patronus.d.ts +20 -0
  349. package/dist/observability/adapters/external/patronus.js +22 -0
  350. package/dist/observability/adapters/external/scorecard.d.ts +20 -0
  351. package/dist/observability/adapters/external/scorecard.js +22 -0
  352. package/dist/observability/adapters/external/signoz.d.ts +20 -0
  353. package/dist/observability/adapters/external/signoz.js +22 -0
  354. package/dist/observability/adapters/external/traceloop.d.ts +20 -0
  355. package/dist/observability/adapters/external/traceloop.js +22 -0
  356. package/dist/observability/adapters/external/weave.d.ts +20 -0
  357. package/dist/observability/adapters/external/weave.js +22 -0
  358. package/dist/observability/adapters/index.d.ts +19 -0
  359. package/dist/observability/adapters/index.js +289 -0
  360. package/dist/observability/adapters/memory.d.ts +41 -0
  361. package/dist/observability/adapters/memory.js +190 -0
  362. package/dist/observability/adapters/noop.d.ts +25 -0
  363. package/dist/observability/adapters/noop.js +64 -0
  364. package/dist/observability/index.d.ts +47 -0
  365. package/dist/observability/index.js +115 -0
  366. package/dist/observability/types.d.ts +165 -0
  367. package/dist/observability/types.js +165 -0
  368. package/dist/planning/index.d.ts +253 -0
  369. package/dist/planning/index.js +475 -0
  370. package/dist/process/index.d.ts +25 -0
  371. package/dist/process/index.js +37 -0
  372. package/dist/process/process.d.ts +0 -0
  373. package/dist/process/process.js +1 -0
  374. package/dist/session/index.d.ts +111 -0
  375. package/dist/session/index.js +250 -0
  376. package/dist/skills/index.d.ts +70 -0
  377. package/dist/skills/index.js +233 -0
  378. package/dist/task/index.d.ts +25 -0
  379. package/dist/task/index.js +32 -0
  380. package/dist/task/task.d.ts +0 -0
  381. package/dist/task/task.js +1 -0
  382. package/dist/telemetry/index.d.ts +175 -0
  383. package/dist/telemetry/index.js +287 -0
  384. package/dist/tools/arxivTools.d.ts +32 -0
  385. package/dist/tools/arxivTools.js +81 -0
  386. package/dist/tools/base.d.ts +97 -0
  387. package/dist/tools/base.js +147 -0
  388. package/dist/tools/builtins/airweave.d.ts +32 -0
  389. package/dist/tools/builtins/airweave.js +119 -0
  390. package/dist/tools/builtins/bedrock-agentcore.d.ts +62 -0
  391. package/dist/tools/builtins/bedrock-agentcore.js +233 -0
  392. package/dist/tools/builtins/code-execution.d.ts +36 -0
  393. package/dist/tools/builtins/code-execution.js +136 -0
  394. package/dist/tools/builtins/code-mode.d.ts +54 -0
  395. package/dist/tools/builtins/code-mode.js +167 -0
  396. package/dist/tools/builtins/custom.d.ts +42 -0
  397. package/dist/tools/builtins/custom.js +195 -0
  398. package/dist/tools/builtins/exa.d.ts +53 -0
  399. package/dist/tools/builtins/exa.js +112 -0
  400. package/dist/tools/builtins/firecrawl.d.ts +56 -0
  401. package/dist/tools/builtins/firecrawl.js +158 -0
  402. package/dist/tools/builtins/index.d.ts +45 -0
  403. package/dist/tools/builtins/index.js +180 -0
  404. package/dist/tools/builtins/parallel.d.ts +30 -0
  405. package/dist/tools/builtins/parallel.js +113 -0
  406. package/dist/tools/builtins/perplexity.d.ts +32 -0
  407. package/dist/tools/builtins/perplexity.js +113 -0
  408. package/dist/tools/builtins/superagent.d.ts +66 -0
  409. package/dist/tools/builtins/superagent.js +187 -0
  410. package/dist/tools/builtins/tavily.d.ts +99 -0
  411. package/dist/tools/builtins/tavily.js +285 -0
  412. package/dist/tools/builtins/valyu.d.ts +65 -0
  413. package/dist/tools/builtins/valyu.js +193 -0
  414. package/dist/tools/decorator.d.ts +91 -0
  415. package/dist/tools/decorator.js +165 -0
  416. package/dist/tools/index.d.ts +8 -0
  417. package/dist/tools/index.js +36 -0
  418. package/dist/tools/mcpSse.d.ts +43 -0
  419. package/dist/tools/mcpSse.js +110 -0
  420. package/dist/tools/registry/index.d.ts +9 -0
  421. package/dist/tools/registry/index.js +28 -0
  422. package/dist/tools/registry/middleware.d.ts +43 -0
  423. package/dist/tools/registry/middleware.js +220 -0
  424. package/dist/tools/registry/registry.d.ts +92 -0
  425. package/dist/tools/registry/registry.js +280 -0
  426. package/dist/tools/registry/types.d.ts +217 -0
  427. package/dist/tools/registry/types.js +49 -0
  428. package/dist/tools/test.d.ts +0 -0
  429. package/dist/tools/test.js +1 -0
  430. package/dist/tools/tools.d.ts +74 -0
  431. package/dist/tools/tools.js +133 -0
  432. package/dist/utils/logger.d.ts +25 -0
  433. package/dist/utils/logger.js +149 -0
  434. package/dist/utils/pretty-logger.d.ts +21 -0
  435. package/dist/utils/pretty-logger.js +248 -0
  436. package/dist/workflows/index.d.ts +118 -0
  437. package/dist/workflows/index.js +247 -0
  438. package/dist/workflows/loop.d.ts +0 -0
  439. package/dist/workflows/loop.js +1 -0
  440. package/dist/workflows/yaml-parser.d.ts +48 -0
  441. package/dist/workflows/yaml-parser.js +304 -0
  442. package/package.json +119 -0
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ /**
3
+ * Agent Module - Core agent classes for PraisonAI
4
+ *
5
+ * The primary exports are:
6
+ * - Agent: Single agent with instructions, tools, and optional persistence
7
+ * - Agents: Multi-agent orchestration (alias for PraisonAIAgents)
8
+ * - Router: Simplified keyword/pattern-based routing
9
+ * - Workflow: Step-based workflow execution (from workflows module)
10
+ */
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.Task = exports.routeConditions = exports.createRouter = exports.RouterAgent = exports.Router = exports.Agents = exports.PraisonAIAgents = exports.Agent = void 0;
13
+ exports.setTaskMode = setTaskMode;
14
+ // Core exports - the main API surface
15
+ var simple_1 = require("./simple");
16
+ Object.defineProperty(exports, "Agent", { enumerable: true, get: function () { return simple_1.Agent; } });
17
+ Object.defineProperty(exports, "PraisonAIAgents", { enumerable: true, get: function () { return simple_1.PraisonAIAgents; } });
18
+ Object.defineProperty(exports, "Agents", { enumerable: true, get: function () { return simple_1.Agents; } });
19
+ // Router exports
20
+ var router_1 = require("./router");
21
+ Object.defineProperty(exports, "Router", { enumerable: true, get: function () { return router_1.Router; } });
22
+ Object.defineProperty(exports, "RouterAgent", { enumerable: true, get: function () { return router_1.RouterAgent; } });
23
+ Object.defineProperty(exports, "createRouter", { enumerable: true, get: function () { return router_1.createRouter; } });
24
+ Object.defineProperty(exports, "routeConditions", { enumerable: true, get: function () { return router_1.routeConditions; } });
25
+ // Task support (for advanced use cases)
26
+ var types_1 = require("./types");
27
+ Object.defineProperty(exports, "Task", { enumerable: true, get: function () { return types_1.Task; } });
28
+ // Legacy compatibility - setTaskMode is deprecated but kept for backward compat
29
+ let useTaskMode = false;
30
+ /**
31
+ * @deprecated Task mode is no longer needed. Use Agent with role/goal/backstory instead.
32
+ */
33
+ function setTaskMode(enabled) {
34
+ if (enabled) {
35
+ console.warn('setTaskMode() is deprecated. Use Agent({ role, goal, backstory }) instead of task mode.');
36
+ }
37
+ useTaskMode = enabled;
38
+ }
@@ -0,0 +1,43 @@
1
+ /**
2
+ * PromptExpanderAgent - Expand and enhance prompts
3
+ */
4
+ export type ExpandStrategy = 'detail' | 'context' | 'examples' | 'constraints' | 'auto';
5
+ export interface ExpandResult {
6
+ original: string;
7
+ expanded: string;
8
+ strategy: ExpandStrategy;
9
+ additions: string[];
10
+ }
11
+ export interface PromptExpanderConfig {
12
+ name?: string;
13
+ llm?: string;
14
+ defaultStrategy?: ExpandStrategy;
15
+ verbose?: boolean;
16
+ }
17
+ /**
18
+ * PromptExpanderAgent - Expand prompts with more detail and context
19
+ */
20
+ export declare class PromptExpanderAgent {
21
+ readonly name: string;
22
+ private provider;
23
+ private providerPromise;
24
+ private llmModel;
25
+ private defaultStrategy;
26
+ private verbose;
27
+ constructor(config?: PromptExpanderConfig);
28
+ private getProvider;
29
+ /**
30
+ * Expand a prompt
31
+ */
32
+ expand(prompt: string, strategy?: ExpandStrategy): Promise<ExpandResult>;
33
+ /**
34
+ * Detect the best expansion strategy
35
+ */
36
+ detectStrategy(prompt: string): ExpandStrategy;
37
+ private getSystemPrompt;
38
+ private extractAdditions;
39
+ }
40
+ /**
41
+ * Create a PromptExpanderAgent
42
+ */
43
+ export declare function createPromptExpanderAgent(config?: PromptExpanderConfig): PromptExpanderAgent;
@@ -0,0 +1,99 @@
1
+ "use strict";
2
+ /**
3
+ * PromptExpanderAgent - Expand and enhance prompts
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.PromptExpanderAgent = void 0;
7
+ exports.createPromptExpanderAgent = createPromptExpanderAgent;
8
+ const backend_resolver_1 = require("../llm/backend-resolver");
9
+ /**
10
+ * PromptExpanderAgent - Expand prompts with more detail and context
11
+ */
12
+ class PromptExpanderAgent {
13
+ constructor(config = {}) {
14
+ this.provider = null;
15
+ this.providerPromise = null;
16
+ this.name = config.name || `PromptExpander_${Math.random().toString(36).substr(2, 9)}`;
17
+ this.llmModel = config.llm || 'openai/gpt-4o-mini';
18
+ this.defaultStrategy = config.defaultStrategy || 'auto';
19
+ this.verbose = config.verbose ?? false;
20
+ }
21
+ async getProvider() {
22
+ if (this.provider)
23
+ return this.provider;
24
+ if (!this.providerPromise) {
25
+ this.providerPromise = (async () => {
26
+ const result = await (0, backend_resolver_1.resolveBackend)(this.llmModel, { attribution: { agentId: this.name } });
27
+ this.provider = result.provider;
28
+ return result.provider;
29
+ })();
30
+ }
31
+ return this.providerPromise;
32
+ }
33
+ /**
34
+ * Expand a prompt
35
+ */
36
+ async expand(prompt, strategy) {
37
+ const useStrategy = strategy || this.defaultStrategy;
38
+ const actualStrategy = useStrategy === 'auto' ? this.detectStrategy(prompt) : useStrategy;
39
+ const systemPrompt = this.getSystemPrompt(actualStrategy);
40
+ const provider = await this.getProvider();
41
+ const result = await provider.generateText({
42
+ messages: [
43
+ { role: 'system', content: systemPrompt },
44
+ { role: 'user', content: `Expand this prompt: ${prompt}` }
45
+ ]
46
+ });
47
+ const expanded = result.text;
48
+ const additions = this.extractAdditions(prompt, expanded);
49
+ if (this.verbose) {
50
+ console.log(`[PromptExpander] Strategy: ${actualStrategy}, Added ${additions.length} elements`);
51
+ }
52
+ return {
53
+ original: prompt,
54
+ expanded,
55
+ strategy: actualStrategy,
56
+ additions
57
+ };
58
+ }
59
+ /**
60
+ * Detect the best expansion strategy
61
+ */
62
+ detectStrategy(prompt) {
63
+ const words = prompt.split(/\s+/).length;
64
+ const lower = prompt.toLowerCase();
65
+ if (words < 5)
66
+ return 'detail';
67
+ if (lower.includes('why') || lower.includes('explain') || lower.includes('context'))
68
+ return 'context';
69
+ if (lower.includes('example') || lower.includes('show') || lower.includes('demonstrate'))
70
+ return 'examples';
71
+ if (lower.includes('must') || lower.includes('should') || lower.includes('require'))
72
+ return 'constraints';
73
+ return 'detail';
74
+ }
75
+ getSystemPrompt(strategy) {
76
+ const prompts = {
77
+ detail: 'Expand this prompt by adding specific details, requirements, and clarifications. Make it more precise and actionable.',
78
+ context: 'Expand this prompt by adding relevant background context, explaining the purpose, and providing necessary information.',
79
+ examples: 'Expand this prompt by adding concrete examples, sample inputs/outputs, and demonstrations of expected behavior.',
80
+ constraints: 'Expand this prompt by adding explicit constraints, requirements, limitations, and success criteria.',
81
+ auto: 'Expand this prompt to make it clearer, more specific, and more actionable. Add relevant details and context.'
82
+ };
83
+ return prompts[strategy];
84
+ }
85
+ extractAdditions(original, expanded) {
86
+ const originalWords = new Set(original.toLowerCase().split(/\s+/));
87
+ const expandedWords = expanded.toLowerCase().split(/\s+/);
88
+ const newWords = expandedWords.filter(w => !originalWords.has(w) && w.length > 3);
89
+ const uniqueNew = [...new Set(newWords)];
90
+ return uniqueNew.slice(0, 10);
91
+ }
92
+ }
93
+ exports.PromptExpanderAgent = PromptExpanderAgent;
94
+ /**
95
+ * Create a PromptExpanderAgent
96
+ */
97
+ function createPromptExpanderAgent(config) {
98
+ return new PromptExpanderAgent(config);
99
+ }
@@ -0,0 +1,26 @@
1
+ import { SimpleAgentConfig } from './simple';
2
+ import { TaskAgentConfig } from './types';
3
+ import { Task } from './types';
4
+ export interface ProxyAgentConfig extends Partial<SimpleAgentConfig>, Partial<TaskAgentConfig> {
5
+ task?: Task;
6
+ tools?: any[];
7
+ toolFunctions?: Record<string, Function>;
8
+ }
9
+ export declare class Agent {
10
+ private simpleAgent;
11
+ private taskAgent;
12
+ private instructions;
13
+ constructor(config: ProxyAgentConfig);
14
+ getInstructions(): string;
15
+ execute(input: Task | string): Promise<any>;
16
+ start(prompt: string, previousResult?: string): Promise<string>;
17
+ chat(prompt: string, previousResult?: string): Promise<string>;
18
+ }
19
+ export declare class PraisonAIAgents {
20
+ private simpleImpl;
21
+ private taskImpl;
22
+ constructor(config: any);
23
+ start(): Promise<string[]>;
24
+ chat(): Promise<string[]>;
25
+ }
26
+ export { Task } from './types';
@@ -0,0 +1,173 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Task = exports.PraisonAIAgents = exports.Agent = void 0;
4
+ const simple_1 = require("./simple");
5
+ const types_1 = require("./types");
6
+ const types_2 = require("./types");
7
+ class Agent {
8
+ constructor(config) {
9
+ this.simpleAgent = null;
10
+ this.taskAgent = null;
11
+ this.instructions = config.instructions || '';
12
+ // Auto-detect mode based on task presence
13
+ if (config.task) {
14
+ const taskConfig = {
15
+ name: config.name || 'TaskAgent',
16
+ role: config.role || 'Assistant',
17
+ goal: config.goal || 'Help complete the task',
18
+ backstory: config.backstory || 'You are an AI assistant',
19
+ verbose: config.verbose,
20
+ llm: config.llm,
21
+ markdown: config.markdown
22
+ };
23
+ this.taskAgent = new types_1.Agent(taskConfig);
24
+ }
25
+ else {
26
+ const simpleConfig = {
27
+ instructions: this.instructions,
28
+ name: config.name,
29
+ verbose: config.verbose,
30
+ llm: config.llm,
31
+ markdown: config.markdown,
32
+ tools: config.tools,
33
+ toolFunctions: config.toolFunctions
34
+ };
35
+ this.simpleAgent = new simple_1.Agent(simpleConfig);
36
+ }
37
+ // Register tool functions if provided
38
+ if (config.tools && this.simpleAgent) {
39
+ // Look for tool functions in the global scope
40
+ for (const tool of config.tools) {
41
+ if (tool.type === 'function' && tool.function && tool.function.name) {
42
+ const funcName = tool.function.name;
43
+ // Check if function exists in global scope using a safer approach
44
+ const globalAny = global;
45
+ if (typeof globalAny[funcName] === 'function') {
46
+ this.simpleAgent.registerToolFunction(funcName, globalAny[funcName]);
47
+ }
48
+ else if (typeof globalAny['get_' + funcName] === 'function') {
49
+ // Try with 'get_' prefix (common convention)
50
+ this.simpleAgent.registerToolFunction(funcName, globalAny['get_' + funcName]);
51
+ }
52
+ else {
53
+ // Try to find the function in the global scope by iterating through all properties
54
+ for (const key in globalAny) {
55
+ if (key.toLowerCase() === funcName.toLowerCase() ||
56
+ key.toLowerCase() === 'get_' + funcName.toLowerCase()) {
57
+ if (typeof globalAny[key] === 'function') {
58
+ this.simpleAgent.registerToolFunction(funcName, globalAny[key]);
59
+ break;
60
+ }
61
+ }
62
+ }
63
+ }
64
+ }
65
+ }
66
+ }
67
+ }
68
+ getInstructions() {
69
+ return this.instructions;
70
+ }
71
+ async execute(input) {
72
+ if (this.taskAgent) {
73
+ const task = input;
74
+ const depResults = task.dependencies.map(dep => dep.result);
75
+ return this.taskAgent.execute(task, depResults);
76
+ }
77
+ else if (this.simpleAgent) {
78
+ return this.simpleAgent.execute(input);
79
+ }
80
+ throw new Error('No agent implementation available');
81
+ }
82
+ async start(prompt, previousResult) {
83
+ if (this.simpleAgent) {
84
+ return this.simpleAgent.start(prompt, previousResult);
85
+ }
86
+ else if (this.taskAgent) {
87
+ // For task agents, we'll use execute but wrap the prompt in a simple task
88
+ const task = new types_2.Task({
89
+ name: 'Start Task',
90
+ description: prompt,
91
+ expected_output: 'A response to the prompt',
92
+ dependencies: []
93
+ });
94
+ return this.taskAgent.execute(task, [previousResult]);
95
+ }
96
+ throw new Error('No agent implementation available');
97
+ }
98
+ async chat(prompt, previousResult) {
99
+ if (this.simpleAgent) {
100
+ return this.simpleAgent.chat(prompt, previousResult);
101
+ }
102
+ else if (this.taskAgent) {
103
+ // For task agents, we'll use execute but wrap the prompt in a simple task
104
+ const task = new types_2.Task({
105
+ name: 'Chat Task',
106
+ description: prompt,
107
+ expected_output: 'A response to the chat prompt',
108
+ dependencies: []
109
+ });
110
+ return this.taskAgent.execute(task, [previousResult]);
111
+ }
112
+ throw new Error('No agent implementation available');
113
+ }
114
+ }
115
+ exports.Agent = Agent;
116
+ class PraisonAIAgents {
117
+ constructor(config) {
118
+ this.simpleImpl = null;
119
+ this.taskImpl = null;
120
+ // Auto-detect mode based on tasks type
121
+ if (Array.isArray(config.tasks)) {
122
+ // If tasks are provided and are strings, use simple mode
123
+ if (config.tasks.length > 0 && typeof config.tasks[0] === 'string') {
124
+ this.simpleImpl = new simple_1.PraisonAIAgents({
125
+ agents: config.agents,
126
+ tasks: config.tasks,
127
+ verbose: config.verbose,
128
+ process: config.process
129
+ });
130
+ }
131
+ else if (config.tasks.length > 0) {
132
+ // If tasks are provided but not strings, use task mode
133
+ this.taskImpl = new types_1.PraisonAIAgents({
134
+ agents: config.agents,
135
+ tasks: config.tasks,
136
+ verbose: config.verbose,
137
+ process: config.process,
138
+ manager_llm: config.manager_llm
139
+ });
140
+ }
141
+ }
142
+ // If no tasks provided, create simple implementation with auto-generated tasks
143
+ if (!this.simpleImpl && !this.taskImpl) {
144
+ this.simpleImpl = new simple_1.PraisonAIAgents({
145
+ agents: config.agents,
146
+ verbose: config.verbose,
147
+ process: config.process
148
+ });
149
+ }
150
+ }
151
+ async start() {
152
+ if (this.simpleImpl) {
153
+ return this.simpleImpl.start();
154
+ }
155
+ else if (this.taskImpl) {
156
+ return this.taskImpl.start();
157
+ }
158
+ throw new Error('No implementation available');
159
+ }
160
+ async chat() {
161
+ if (this.simpleImpl) {
162
+ return this.simpleImpl.chat();
163
+ }
164
+ else if (this.taskImpl) {
165
+ // For task-based implementation, start() is equivalent to chat()
166
+ return this.taskImpl.start();
167
+ }
168
+ throw new Error('No implementation available');
169
+ }
170
+ }
171
+ exports.PraisonAIAgents = PraisonAIAgents;
172
+ var types_3 = require("./types");
173
+ Object.defineProperty(exports, "Task", { enumerable: true, get: function () { return types_3.Task; } });
@@ -0,0 +1,41 @@
1
+ /**
2
+ * QueryRewriterAgent - Rewrite and optimize queries
3
+ */
4
+ export type RewriteStrategy = 'expand' | 'simplify' | 'decompose' | 'rephrase' | 'auto';
5
+ export interface RewriteResult {
6
+ original: string;
7
+ rewritten: string[];
8
+ strategy: RewriteStrategy;
9
+ confidence: number;
10
+ }
11
+ export interface QueryRewriterConfig {
12
+ name?: string;
13
+ llm?: string;
14
+ defaultStrategy?: RewriteStrategy;
15
+ verbose?: boolean;
16
+ }
17
+ /**
18
+ * QueryRewriterAgent - Optimize and rewrite queries
19
+ */
20
+ export declare class QueryRewriterAgent {
21
+ readonly name: string;
22
+ private provider;
23
+ private providerPromise;
24
+ private llmModel;
25
+ private defaultStrategy;
26
+ private verbose;
27
+ constructor(config?: QueryRewriterConfig);
28
+ private getProvider;
29
+ /**
30
+ * Rewrite a query
31
+ */
32
+ rewrite(query: string, strategy?: RewriteStrategy): Promise<RewriteResult>;
33
+ private detectStrategy;
34
+ private getSystemPrompt;
35
+ private buildPrompt;
36
+ private parseRewrittenQueries;
37
+ }
38
+ /**
39
+ * Create a QueryRewriterAgent
40
+ */
41
+ export declare function createQueryRewriterAgent(config?: QueryRewriterConfig): QueryRewriterAgent;
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ /**
3
+ * QueryRewriterAgent - Rewrite and optimize queries
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.QueryRewriterAgent = void 0;
7
+ exports.createQueryRewriterAgent = createQueryRewriterAgent;
8
+ const backend_resolver_1 = require("../llm/backend-resolver");
9
+ /**
10
+ * QueryRewriterAgent - Optimize and rewrite queries
11
+ */
12
+ class QueryRewriterAgent {
13
+ constructor(config = {}) {
14
+ this.provider = null;
15
+ this.providerPromise = null;
16
+ this.name = config.name || `QueryRewriter_${Math.random().toString(36).substr(2, 9)}`;
17
+ this.llmModel = config.llm || 'openai/gpt-4o-mini';
18
+ this.defaultStrategy = config.defaultStrategy || 'auto';
19
+ this.verbose = config.verbose ?? false;
20
+ }
21
+ async getProvider() {
22
+ if (this.provider)
23
+ return this.provider;
24
+ if (!this.providerPromise) {
25
+ this.providerPromise = (async () => {
26
+ const result = await (0, backend_resolver_1.resolveBackend)(this.llmModel, { attribution: { agentId: this.name } });
27
+ this.provider = result.provider;
28
+ return result.provider;
29
+ })();
30
+ }
31
+ return this.providerPromise;
32
+ }
33
+ /**
34
+ * Rewrite a query
35
+ */
36
+ async rewrite(query, strategy) {
37
+ const useStrategy = strategy || this.defaultStrategy;
38
+ const actualStrategy = useStrategy === 'auto' ? this.detectStrategy(query) : useStrategy;
39
+ const prompt = this.buildPrompt(query, actualStrategy);
40
+ const provider = await this.getProvider();
41
+ const result = await provider.generateText({
42
+ messages: [
43
+ { role: 'system', content: this.getSystemPrompt(actualStrategy) },
44
+ { role: 'user', content: prompt }
45
+ ]
46
+ });
47
+ const rewritten = this.parseRewrittenQueries(result.text);
48
+ if (this.verbose) {
49
+ console.log(`[QueryRewriter] Strategy: ${actualStrategy}, Rewrites: ${rewritten.length}`);
50
+ }
51
+ return {
52
+ original: query,
53
+ rewritten,
54
+ strategy: actualStrategy,
55
+ confidence: rewritten.length > 0 ? 0.85 : 0.5
56
+ };
57
+ }
58
+ detectStrategy(query) {
59
+ const words = query.split(/\s+/).length;
60
+ if (words < 3)
61
+ return 'expand';
62
+ if (words > 20)
63
+ return 'simplify';
64
+ if (query.includes(' and ') || query.includes(' or '))
65
+ return 'decompose';
66
+ return 'rephrase';
67
+ }
68
+ getSystemPrompt(strategy) {
69
+ const prompts = {
70
+ expand: 'Expand this query with more context and detail. Generate 3 expanded versions.',
71
+ simplify: 'Simplify this query to its core intent. Generate 3 simpler versions.',
72
+ decompose: 'Break this query into smaller, focused sub-queries. Generate 3-5 sub-queries.',
73
+ rephrase: 'Rephrase this query in different ways while keeping the same meaning. Generate 3 versions.',
74
+ auto: 'Optimize this query for better search results. Generate 3 improved versions.'
75
+ };
76
+ return prompts[strategy] + ' Output one query per line.';
77
+ }
78
+ buildPrompt(query, strategy) {
79
+ return `Query: ${query}\n\nRewrite using ${strategy} strategy:`;
80
+ }
81
+ parseRewrittenQueries(response) {
82
+ return response
83
+ .split('\n')
84
+ .map(line => line.replace(/^\d+[\.\)]\s*/, '').trim())
85
+ .filter(line => line.length > 0 && line.length < 500);
86
+ }
87
+ }
88
+ exports.QueryRewriterAgent = QueryRewriterAgent;
89
+ /**
90
+ * Create a QueryRewriterAgent
91
+ */
92
+ function createQueryRewriterAgent(config) {
93
+ return new QueryRewriterAgent(config);
94
+ }
@@ -0,0 +1,55 @@
1
+ /**
2
+ * DeepResearchAgent - Agent for comprehensive research tasks
3
+ */
4
+ export interface Citation {
5
+ title: string;
6
+ url: string;
7
+ snippet?: string;
8
+ }
9
+ export interface ReasoningStep {
10
+ step: number;
11
+ thought: string;
12
+ action?: string;
13
+ result?: string;
14
+ }
15
+ export interface ResearchResponse {
16
+ answer: string;
17
+ citations: Citation[];
18
+ reasoning: ReasoningStep[];
19
+ confidence: number;
20
+ }
21
+ export interface DeepResearchConfig {
22
+ name?: string;
23
+ llm?: string;
24
+ maxIterations?: number;
25
+ searchTool?: (query: string) => Promise<Citation[]>;
26
+ verbose?: boolean;
27
+ }
28
+ /**
29
+ * DeepResearchAgent - Comprehensive research with citations
30
+ */
31
+ export declare class DeepResearchAgent {
32
+ readonly name: string;
33
+ private provider;
34
+ private providerPromise;
35
+ private llmModel;
36
+ private maxIterations;
37
+ private searchTool?;
38
+ private verbose;
39
+ constructor(config?: DeepResearchConfig);
40
+ private getProvider;
41
+ /**
42
+ * Conduct deep research on a topic
43
+ */
44
+ research(query: string): Promise<ResearchResponse>;
45
+ private generateSearchQueries;
46
+ private synthesizeAnswer;
47
+ /**
48
+ * Set search tool
49
+ */
50
+ setSearchTool(tool: (query: string) => Promise<Citation[]>): void;
51
+ }
52
+ /**
53
+ * Create a DeepResearchAgent
54
+ */
55
+ export declare function createDeepResearchAgent(config?: DeepResearchConfig): DeepResearchAgent;