@easynet/agent-tool 1.0.0 → 1.0.2

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 (309) hide show
  1. package/README.md +90 -73
  2. package/dist/api/adapters/LangChainToolsHub.d.ts +34 -0
  3. package/dist/api/adapters/LangChainToolsHub.d.ts.map +1 -0
  4. package/dist/api/createAgentTools.d.ts +24 -0
  5. package/dist/api/createAgentTools.d.ts.map +1 -0
  6. package/dist/api/expose/index.d.ts +16 -0
  7. package/dist/api/expose/index.d.ts.map +1 -0
  8. package/dist/api/expose/mcp-build/build.d.ts.map +1 -0
  9. package/dist/{codegen → api/expose/mcp-build}/generator.d.ts +3 -3
  10. package/dist/api/expose/mcp-build/generator.d.ts.map +1 -0
  11. package/dist/api/expose/mcp-build/index.d.ts +8 -0
  12. package/dist/api/expose/mcp-build/index.d.ts.map +1 -0
  13. package/dist/api/expose/mcp-build/init.d.ts.map +1 -0
  14. package/dist/api/expose/mcp-build/run.d.ts.map +1 -0
  15. package/dist/api/expose/mcp-build/types.d.ts +25 -0
  16. package/dist/api/expose/mcp-build/types.d.ts.map +1 -0
  17. package/dist/api/expose/mcpServer.d.ts +75 -0
  18. package/dist/api/expose/mcpServer.d.ts.map +1 -0
  19. package/dist/api/expose/openapi.d.ts +23 -0
  20. package/dist/api/expose/openapi.d.ts.map +1 -0
  21. package/dist/api/expose/openapiHttp.d.ts +67 -0
  22. package/dist/api/expose/openapiHttp.d.ts.map +1 -0
  23. package/dist/api/main.cjs +56 -0
  24. package/dist/api/main.cjs.map +1 -0
  25. package/dist/api/main.d.ts +23 -0
  26. package/dist/api/main.d.ts.map +1 -0
  27. package/dist/api/main.js +7 -0
  28. package/dist/api/main.js.map +1 -0
  29. package/dist/api/runtimeFromConfig.d.ts +34 -0
  30. package/dist/api/runtimeFromConfig.d.ts.map +1 -0
  31. package/dist/canonicalCoreSchemas-CTW6CCFY.cjs +20 -0
  32. package/dist/canonicalCoreSchemas-CTW6CCFY.cjs.map +1 -0
  33. package/dist/canonicalCoreSchemas-YLHVHYJZ.js +3 -0
  34. package/dist/canonicalCoreSchemas-YLHVHYJZ.js.map +1 -0
  35. package/dist/{chunk-AXUNV4MK.js → chunk-5SWSNVMI.js} +3 -3
  36. package/dist/chunk-5SWSNVMI.js.map +1 -0
  37. package/dist/chunk-6F5JHLZ7.cjs +243 -0
  38. package/dist/chunk-6F5JHLZ7.cjs.map +1 -0
  39. package/dist/chunk-AE6FSNGY.js +201 -0
  40. package/dist/chunk-AE6FSNGY.js.map +1 -0
  41. package/dist/chunk-BZOKPJMP.cjs +120 -0
  42. package/dist/chunk-BZOKPJMP.cjs.map +1 -0
  43. package/dist/chunk-FA2ZEICE.cjs +1620 -0
  44. package/dist/chunk-FA2ZEICE.cjs.map +1 -0
  45. package/dist/chunk-FR2CXERF.js +239 -0
  46. package/dist/chunk-FR2CXERF.js.map +1 -0
  47. package/dist/chunk-MGEQPAHV.cjs +475 -0
  48. package/dist/chunk-MGEQPAHV.cjs.map +1 -0
  49. package/dist/{chunk-BM4EVYI5.js → chunk-PJ4RUBZL.js} +836 -122
  50. package/dist/chunk-PJ4RUBZL.js.map +1 -0
  51. package/dist/chunk-Q7KPGWC6.js +1584 -0
  52. package/dist/chunk-Q7KPGWC6.js.map +1 -0
  53. package/dist/chunk-QVH6IQKQ.js +469 -0
  54. package/dist/chunk-QVH6IQKQ.js.map +1 -0
  55. package/dist/{chunk-3YLVPZRJ.cjs → chunk-SOFUWEZ6.cjs} +3 -3
  56. package/dist/chunk-SOFUWEZ6.cjs.map +1 -0
  57. package/dist/chunk-TBMWJWQ2.js +116 -0
  58. package/dist/chunk-TBMWJWQ2.js.map +1 -0
  59. package/dist/{chunk-Z7TGIG77.cjs → chunk-ZBNRHRGM.cjs} +843 -127
  60. package/dist/chunk-ZBNRHRGM.cjs.map +1 -0
  61. package/dist/chunk-ZNJBRLKN.cjs +210 -0
  62. package/dist/chunk-ZNJBRLKN.cjs.map +1 -0
  63. package/dist/core/index.cjs +20 -0
  64. package/dist/core/index.cjs.map +1 -0
  65. package/dist/{core.d.ts → core/index.d.ts} +2 -3
  66. package/dist/core/index.d.ts.map +1 -0
  67. package/dist/core/index.js +3 -0
  68. package/dist/core/index.js.map +1 -0
  69. package/dist/core/registry/ToolRegistry.d.ts.map +1 -0
  70. package/dist/core/runtime/Budget.d.ts.map +1 -0
  71. package/dist/core/runtime/Evidence.d.ts.map +1 -0
  72. package/dist/{runtime → core/runtime}/PTCRuntime.d.ts +4 -4
  73. package/dist/core/runtime/PTCRuntime.d.ts.map +1 -0
  74. package/dist/{runtime → core/runtime}/PTCRuntimeObservability.d.ts +4 -4
  75. package/dist/core/runtime/PTCRuntimeObservability.d.ts.map +1 -0
  76. package/dist/{runtime → core/runtime}/PTCRuntimePipeline.d.ts +4 -4
  77. package/dist/core/runtime/PTCRuntimePipeline.d.ts.map +1 -0
  78. package/dist/core/runtime/PolicyEngine.d.ts.map +1 -0
  79. package/dist/core/runtime/Retry.d.ts.map +1 -0
  80. package/dist/core/runtime/SchemaValidator.d.ts.map +1 -0
  81. package/dist/core/runtime.cjs +24 -0
  82. package/dist/core/runtime.cjs.map +1 -0
  83. package/dist/core/runtime.d.ts +12 -0
  84. package/dist/core/runtime.d.ts.map +1 -0
  85. package/dist/core/runtime.js +3 -0
  86. package/dist/core/runtime.js.map +1 -0
  87. package/dist/core/types/Events.d.ts.map +1 -0
  88. package/dist/core/types/ToolIntent.d.ts.map +1 -0
  89. package/dist/{types → core/types}/ToolResult.d.ts +6 -1
  90. package/dist/core/types/ToolResult.d.ts.map +1 -0
  91. package/dist/{types → core/types}/ToolSpec.d.ts +15 -5
  92. package/dist/core/types/ToolSpec.d.ts.map +1 -0
  93. package/dist/core/types/ToolTypeHandler.d.ts +88 -0
  94. package/dist/core/types/ToolTypeHandler.d.ts.map +1 -0
  95. package/dist/{types → core/types}/index.d.ts +2 -1
  96. package/dist/core/types/index.d.ts.map +1 -0
  97. package/dist/index.cjs +249 -2749
  98. package/dist/index.cjs.map +1 -1
  99. package/dist/index.d.ts +61 -55
  100. package/dist/index.d.ts.map +1 -1
  101. package/dist/index.js +126 -2688
  102. package/dist/index.js.map +1 -1
  103. package/dist/observability/EventLog.d.ts +1 -1
  104. package/dist/observability/EventLog.d.ts.map +1 -1
  105. package/dist/tools/discoveryFactory.d.ts +117 -0
  106. package/dist/tools/discoveryFactory.d.ts.map +1 -0
  107. package/dist/tools/function/index.d.ts +10 -0
  108. package/dist/tools/function/index.d.ts.map +1 -0
  109. package/dist/{codegen/scan → tools/function}/scanner.d.ts +5 -2
  110. package/dist/{codegen/scan → tools/function}/scanner.d.ts.map +1 -1
  111. package/dist/{codegen/scan → tools/function}/schemaFromTs.d.ts +1 -1
  112. package/dist/tools/function/schemaFromTs.d.ts.map +1 -0
  113. package/dist/tools/function/types.d.ts +20 -0
  114. package/dist/tools/function/types.d.ts.map +1 -0
  115. package/dist/tools/index.d.ts +13 -0
  116. package/dist/tools/index.d.ts.map +1 -0
  117. package/dist/{discovery/load → tools/langchain}/LangChainLoader.d.ts +1 -1
  118. package/dist/tools/langchain/LangChainLoader.d.ts.map +1 -0
  119. package/dist/tools/langchain/directoryApply.d.ts +5 -0
  120. package/dist/tools/langchain/directoryApply.d.ts.map +1 -0
  121. package/dist/tools/langchain/directoryLoad.d.ts +13 -0
  122. package/dist/tools/langchain/directoryLoad.d.ts.map +1 -0
  123. package/dist/tools/langchain/index.d.ts +3 -0
  124. package/dist/tools/langchain/index.d.ts.map +1 -0
  125. package/dist/tools/langchain/scanner.d.ts +8 -0
  126. package/dist/tools/langchain/scanner.d.ts.map +1 -0
  127. package/dist/tools/langchain/types.d.ts +5 -0
  128. package/dist/tools/langchain/types.d.ts.map +1 -0
  129. package/dist/{mcp → tools/mcp}/MCPClientAdapter.d.ts +3 -3
  130. package/dist/tools/mcp/MCPClientAdapter.d.ts.map +1 -0
  131. package/dist/{discovery/load → tools/mcp}/MCPLoader.d.ts +1 -1
  132. package/dist/tools/mcp/MCPLoader.d.ts.map +1 -0
  133. package/dist/tools/mcp/MCPProcessManager.d.ts +29 -0
  134. package/dist/tools/mcp/MCPProcessManager.d.ts.map +1 -0
  135. package/dist/{mcp → tools/mcp}/connectMCP.d.ts +3 -3
  136. package/dist/tools/mcp/connectMCP.d.ts.map +1 -0
  137. package/dist/tools/mcp/directoryApply.d.ts +10 -0
  138. package/dist/tools/mcp/directoryApply.d.ts.map +1 -0
  139. package/dist/{mcp → tools/mcp}/index.d.ts +6 -1
  140. package/dist/tools/mcp/index.d.ts.map +1 -0
  141. package/dist/tools/mcp/mcpSpecToToolSpec.d.ts +8 -0
  142. package/dist/tools/mcp/mcpSpecToToolSpec.d.ts.map +1 -0
  143. package/dist/{mcp → tools/mcp}/registerMCPTools.d.ts +2 -2
  144. package/dist/tools/mcp/registerMCPTools.d.ts.map +1 -0
  145. package/dist/tools/mcp/scanner.d.ts +8 -0
  146. package/dist/tools/mcp/scanner.d.ts.map +1 -0
  147. package/dist/tools/mcp/types.d.ts +3 -0
  148. package/dist/tools/mcp/types.d.ts.map +1 -0
  149. package/dist/{discovery/load → tools/n8n}/N8nLoader.d.ts +3 -3
  150. package/dist/tools/n8n/N8nLoader.d.ts.map +1 -0
  151. package/dist/tools/n8n/directoryApply.d.ts +10 -0
  152. package/dist/tools/n8n/directoryApply.d.ts.map +1 -0
  153. package/dist/tools/n8n/index.d.ts +6 -0
  154. package/dist/tools/n8n/index.d.ts.map +1 -0
  155. package/dist/tools/n8n/scanN8n.d.ts +20 -0
  156. package/dist/tools/n8n/scanN8n.d.ts.map +1 -0
  157. package/dist/tools/n8n/types.d.ts +18 -0
  158. package/dist/tools/n8n/types.d.ts.map +1 -0
  159. package/dist/tools/scanPackage.d.ts +42 -0
  160. package/dist/tools/scanPackage.d.ts.map +1 -0
  161. package/dist/{discovery/load → tools/skill}/SkillLoader.d.ts +1 -1
  162. package/dist/tools/skill/SkillLoader.d.ts.map +1 -0
  163. package/dist/tools/skill/SkillManifest.d.ts.map +1 -0
  164. package/dist/tools/skill/SkillMdParser.d.ts.map +1 -0
  165. package/dist/tools/skill/directoryApply.d.ts +10 -0
  166. package/dist/tools/skill/directoryApply.d.ts.map +1 -0
  167. package/dist/tools/skill/index.d.ts +8 -0
  168. package/dist/tools/skill/index.d.ts.map +1 -0
  169. package/dist/tools/skill/scanSkill.d.ts +20 -0
  170. package/dist/tools/skill/scanSkill.d.ts.map +1 -0
  171. package/dist/tools/skill/types.d.ts +19 -0
  172. package/dist/tools/skill/types.d.ts.map +1 -0
  173. package/dist/tools/util/canonicalCoreSchemas.d.ts +19 -0
  174. package/dist/tools/util/canonicalCoreSchemas.d.ts.map +1 -0
  175. package/dist/tools/util/index.d.ts +13 -0
  176. package/dist/tools/util/index.d.ts.map +1 -0
  177. package/dist/tools/util/resolveEntry.d.ts +6 -0
  178. package/dist/tools/util/resolveEntry.d.ts.map +1 -0
  179. package/dist/tools/util/scanUtil.d.ts +9 -0
  180. package/dist/tools/util/scanUtil.d.ts.map +1 -0
  181. package/dist/tools/util/toolConfig.d.ts +32 -0
  182. package/dist/tools/util/toolConfig.d.ts.map +1 -0
  183. package/dist/tools/util/toolDescriptor.d.ts +92 -0
  184. package/dist/tools/util/toolDescriptor.d.ts.map +1 -0
  185. package/dist/utils/cli/index.cjs +419 -0
  186. package/dist/utils/cli/index.cjs.map +1 -0
  187. package/dist/utils/cli/index.d.ts +9 -0
  188. package/dist/utils/cli/index.d.ts.map +1 -0
  189. package/dist/utils/cli/index.js +412 -0
  190. package/dist/utils/cli/index.js.map +1 -0
  191. package/dist/utils/cli/toolRuntime.d.ts +19 -0
  192. package/dist/utils/cli/toolRuntime.d.ts.map +1 -0
  193. package/dist/utils/npmCache.d.ts +28 -0
  194. package/dist/utils/npmCache.d.ts.map +1 -0
  195. package/package.json +20 -11
  196. package/dist/chunk-3YLVPZRJ.cjs.map +0 -1
  197. package/dist/chunk-AXUNV4MK.js.map +0 -1
  198. package/dist/chunk-BM4EVYI5.js.map +0 -1
  199. package/dist/chunk-P3UEAZHK.cjs +0 -171
  200. package/dist/chunk-P3UEAZHK.cjs.map +0 -1
  201. package/dist/chunk-RPAMQCFH.js +0 -167
  202. package/dist/chunk-RPAMQCFH.js.map +0 -1
  203. package/dist/chunk-Z7TGIG77.cjs.map +0 -1
  204. package/dist/cli.cjs +0 -154
  205. package/dist/cli.cjs.map +0 -1
  206. package/dist/cli.d.ts +0 -10
  207. package/dist/cli.d.ts.map +0 -1
  208. package/dist/cli.js +0 -147
  209. package/dist/cli.js.map +0 -1
  210. package/dist/codegen/build.d.ts.map +0 -1
  211. package/dist/codegen/generator.d.ts.map +0 -1
  212. package/dist/codegen/index.d.ts +0 -21
  213. package/dist/codegen/index.d.ts.map +0 -1
  214. package/dist/codegen/init.d.ts.map +0 -1
  215. package/dist/codegen/run.d.ts.map +0 -1
  216. package/dist/codegen/scan/scanN8n.d.ts +0 -17
  217. package/dist/codegen/scan/scanN8n.d.ts.map +0 -1
  218. package/dist/codegen/scan/scanSkill.d.ts +0 -17
  219. package/dist/codegen/scan/scanSkill.d.ts.map +0 -1
  220. package/dist/codegen/scan/scanTools.d.ts +0 -31
  221. package/dist/codegen/scan/scanTools.d.ts.map +0 -1
  222. package/dist/codegen/scan/schemaFromTs.d.ts.map +0 -1
  223. package/dist/codegen/types.d.ts +0 -81
  224. package/dist/codegen/types.d.ts.map +0 -1
  225. package/dist/core.cjs +0 -20
  226. package/dist/core.cjs.map +0 -1
  227. package/dist/core.d.ts.map +0 -1
  228. package/dist/core.js +0 -3
  229. package/dist/core.js.map +0 -1
  230. package/dist/discovery/MCPProcessManager.d.ts +0 -57
  231. package/dist/discovery/MCPProcessManager.d.ts.map +0 -1
  232. package/dist/discovery/errors.d.ts +0 -13
  233. package/dist/discovery/errors.d.ts.map +0 -1
  234. package/dist/discovery/load/LangChainLoader.d.ts.map +0 -1
  235. package/dist/discovery/load/MCPLoader.d.ts.map +0 -1
  236. package/dist/discovery/load/N8nLoader.d.ts.map +0 -1
  237. package/dist/discovery/load/SkillLoader.d.ts.map +0 -1
  238. package/dist/discovery/load/SkillManifest.d.ts.map +0 -1
  239. package/dist/discovery/load/SkillMdParser.d.ts.map +0 -1
  240. package/dist/discovery/load/index.d.ts +0 -6
  241. package/dist/discovery/load/index.d.ts.map +0 -1
  242. package/dist/discovery/load/resolveEntry.d.ts +0 -7
  243. package/dist/discovery/load/resolveEntry.d.ts.map +0 -1
  244. package/dist/discovery/scan/DirectoryScanner.d.ts +0 -37
  245. package/dist/discovery/scan/DirectoryScanner.d.ts.map +0 -1
  246. package/dist/discovery/scan/scanUtil.d.ts +0 -16
  247. package/dist/discovery/scan/scanUtil.d.ts.map +0 -1
  248. package/dist/discovery/types.d.ts +0 -99
  249. package/dist/discovery/types.d.ts.map +0 -1
  250. package/dist/llm/AgentLLMAdapter.d.ts +0 -27
  251. package/dist/llm/AgentLLMAdapter.d.ts.map +0 -1
  252. package/dist/llm/LangChainToolsHub.d.ts +0 -31
  253. package/dist/llm/LangChainToolsHub.d.ts.map +0 -1
  254. package/dist/llm/OpenAICompatibleClient.d.ts +0 -64
  255. package/dist/llm/OpenAICompatibleClient.d.ts.map +0 -1
  256. package/dist/llm/ReActAgent.d.ts +0 -35
  257. package/dist/llm/ReActAgent.d.ts.map +0 -1
  258. package/dist/llm-export.cjs +0 -20
  259. package/dist/llm-export.cjs.map +0 -1
  260. package/dist/llm-export.d.ts +0 -9
  261. package/dist/llm-export.d.ts.map +0 -1
  262. package/dist/llm-export.js +0 -3
  263. package/dist/llm-export.js.map +0 -1
  264. package/dist/mcp/MCPClientAdapter.d.ts.map +0 -1
  265. package/dist/mcp/connectMCP.d.ts.map +0 -1
  266. package/dist/mcp/index.d.ts.map +0 -1
  267. package/dist/mcp/registerMCPTools.d.ts.map +0 -1
  268. package/dist/registry/ToolRegistry.d.ts.map +0 -1
  269. package/dist/report/AgentReportGenerator.d.ts +0 -53
  270. package/dist/report/AgentReportGenerator.d.ts.map +0 -1
  271. package/dist/report/agent-report-template.html +0 -362
  272. package/dist/report/index.d.ts +0 -3
  273. package/dist/report/index.d.ts.map +0 -1
  274. package/dist/report/types.d.ts +0 -101
  275. package/dist/report/types.d.ts.map +0 -1
  276. package/dist/runAgent.d.ts +0 -37
  277. package/dist/runAgent.d.ts.map +0 -1
  278. package/dist/runtime/Budget.d.ts.map +0 -1
  279. package/dist/runtime/Evidence.d.ts.map +0 -1
  280. package/dist/runtime/PTCRuntime.d.ts.map +0 -1
  281. package/dist/runtime/PTCRuntimeObservability.d.ts.map +0 -1
  282. package/dist/runtime/PTCRuntimePipeline.d.ts.map +0 -1
  283. package/dist/runtime/PolicyEngine.d.ts.map +0 -1
  284. package/dist/runtime/Retry.d.ts.map +0 -1
  285. package/dist/runtime/SchemaValidator.d.ts.map +0 -1
  286. package/dist/toolDescriptor.d.ts +0 -38
  287. package/dist/toolDescriptor.d.ts.map +0 -1
  288. package/dist/types/Events.d.ts.map +0 -1
  289. package/dist/types/ToolIntent.d.ts.map +0 -1
  290. package/dist/types/ToolResult.d.ts.map +0 -1
  291. package/dist/types/ToolSpec.d.ts.map +0 -1
  292. package/dist/types/index.d.ts.map +0 -1
  293. package/extensions/examples/README.md +0 -40
  294. package/extensions/examples/scripts/agent-tool-react-stock.mjs +0 -30
  295. package/extensions/examples/tools/instruction-only/skill/SKILL.md +0 -26
  296. package/extensions/examples/tools/web-search/mcp/mcp.json +0 -8
  297. /package/dist/{codegen → api/expose/mcp-build}/build.d.ts +0 -0
  298. /package/dist/{codegen → api/expose/mcp-build}/init.d.ts +0 -0
  299. /package/dist/{codegen → api/expose/mcp-build}/run.d.ts +0 -0
  300. /package/dist/{registry → core/registry}/ToolRegistry.d.ts +0 -0
  301. /package/dist/{runtime → core/runtime}/Budget.d.ts +0 -0
  302. /package/dist/{runtime → core/runtime}/Evidence.d.ts +0 -0
  303. /package/dist/{runtime → core/runtime}/PolicyEngine.d.ts +0 -0
  304. /package/dist/{runtime → core/runtime}/Retry.d.ts +0 -0
  305. /package/dist/{runtime → core/runtime}/SchemaValidator.d.ts +0 -0
  306. /package/dist/{types → core/types}/Events.d.ts +0 -0
  307. /package/dist/{types → core/types}/ToolIntent.d.ts +0 -0
  308. /package/dist/{discovery/load → tools/skill}/SkillManifest.d.ts +0 -0
  309. /package/dist/{discovery/load → tools/skill}/SkillMdParser.d.ts +0 -0
@@ -1,31 +0,0 @@
1
- /**
2
- * Exposes all tools from a ToolRegistry + PTCRuntime as LangChain tools
3
- * for local agent use (e.g. with createReactAgent, AgentExecutor).
4
- *
5
- * Use: new LangChainToolsHub(runtime, ctxFactory).getLangChainTools()
6
- */
7
- import { DynamicTool } from "@langchain/core/tools";
8
- import type { PTCRuntime } from "../runtime/PTCRuntime.js";
9
- import type { ExecContext } from "../types/ToolIntent.js";
10
- export type ExecContextFactory = () => ExecContext;
11
- /**
12
- * Hub that wraps PTCRuntime and exposes every registered tool as a LangChain
13
- * DynamicTool, so local agents (LangChain AgentExecutor, createReactAgent, etc.)
14
- * can use the same tools as MCP and the ReAct agent.
15
- */
16
- export declare class LangChainToolsHub {
17
- private readonly runtime;
18
- private readonly ctxFactory;
19
- constructor(runtime: PTCRuntime, ctxFactory?: ExecContextFactory);
20
- /**
21
- * Returns all registered tools as LangChain tools (DynamicTool[]).
22
- * Each tool invokes the runtime through the full pipeline (policy, HITL, etc.).
23
- */
24
- getLangChainTools(): DynamicTool[];
25
- /**
26
- * Returns LangChain tools for a subset of tools (by name or query).
27
- */
28
- getLangChainToolsForNames(toolNames: string[]): DynamicTool[];
29
- private specToLangChainTool;
30
- }
31
- //# sourceMappingURL=LangChainToolsHub.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LangChainToolsHub.d.ts","sourceRoot":"","sources":["../../src/llm/LangChainToolsHub.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE3D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAG1D,MAAM,MAAM,kBAAkB,GAAG,MAAM,WAAW,CAAC;AAiBnD;;;;GAIG;AACH,qBAAa,iBAAiB;IAE1B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU;gBADV,OAAO,EAAE,UAAU,EACnB,UAAU,GAAE,kBAAwC;IAGvE;;;OAGG;IACH,iBAAiB,IAAI,WAAW,EAAE;IAOlC;;OAEG;IACH,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,WAAW,EAAE;IAO7D,OAAO,CAAC,mBAAmB;CAgC5B"}
@@ -1,64 +0,0 @@
1
- /**
2
- * Minimal client for OpenAI-compatible chat completions API.
3
- * Use createOpenAICompatibleClient(baseUrl, model, apiKey?) and then .chat(messages) or .chatWithTools(messages, tools).
4
- */
5
- export interface ChatMessage {
6
- role: "system" | "user" | "assistant";
7
- content: string;
8
- }
9
- export interface ChatOptions {
10
- /** Request timeout in milliseconds. Default 60000. */
11
- timeoutMs?: number;
12
- }
13
- export interface ChatResult {
14
- content: string;
15
- raw: unknown;
16
- }
17
- export interface OpenAIToolDefinition {
18
- type: "function";
19
- function: {
20
- name: string;
21
- description?: string;
22
- parameters?: object;
23
- };
24
- }
25
- export interface AssistantMessageWithToolCalls {
26
- role: "assistant";
27
- content?: string | null;
28
- tool_calls?: Array<{
29
- id: string;
30
- type: "function";
31
- function: {
32
- name: string;
33
- arguments: string;
34
- };
35
- }>;
36
- }
37
- export interface ChatWithToolsResult {
38
- message: AssistantMessageWithToolCalls;
39
- raw: unknown;
40
- }
41
- export interface OpenAICompatibleClientConfig {
42
- baseUrl: string;
43
- model: string;
44
- apiKey?: string;
45
- }
46
- export declare function createOpenAICompatibleClient(baseUrl: string, model: string, apiKey?: string): OpenAICompatibleClient;
47
- export declare class OpenAICompatibleClient {
48
- private readonly baseUrl;
49
- private readonly model;
50
- private readonly apiKey?;
51
- constructor(config: OpenAICompatibleClientConfig);
52
- chat(messages: ChatMessage[], options?: ChatOptions): Promise<ChatResult>;
53
- chatWithTools(messages: Array<ChatMessage | {
54
- role: "tool";
55
- content: string;
56
- tool_call_id: string;
57
- } | (Omit<AssistantMessageWithToolCalls, "role"> & {
58
- role: "assistant";
59
- })>, tools: OpenAIToolDefinition[], options?: ChatOptions): Promise<ChatWithToolsResult>;
60
- private buildHeaders;
61
- private serializeMessage;
62
- private request;
63
- }
64
- //# sourceMappingURL=OpenAICompatibleClient.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"OpenAICompatibleClient.d.ts","sourceRoot":"","sources":["../../src/llm/OpenAICompatibleClient.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,OAAO,CAAC;CACd;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;CACH;AAED,MAAM,WAAW,6BAA6B;IAC5C,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,CAAC,EAAE,KAAK,CAAC;QACjB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,UAAU,CAAC;QACjB,QAAQ,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,CAAC;KAC/C,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,6BAA6B,CAAC;IACvC,GAAG,EAAE,OAAO,CAAC;CACd;AAED,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAID,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,MAAM,GACd,sBAAsB,CAExB;AAED,qBAAa,sBAAsB;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAS;gBAErB,MAAM,EAAE,4BAA4B;IAM1C,IAAI,CACR,QAAQ,EAAE,WAAW,EAAE,EACvB,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,UAAU,CAAC;IAiBhB,aAAa,CACjB,QAAQ,EAAE,KAAK,CACX,WAAW,GACX;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,GACvD,CAAC,IAAI,CAAC,6BAA6B,EAAE,MAAM,CAAC,GAAG;QAAE,IAAI,EAAE,WAAW,CAAA;KAAE,CAAC,CACxE,EACD,KAAK,EAAE,oBAAoB,EAAE,EAC7B,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,mBAAmB,CAAC;IA6B/B,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,gBAAgB;YAaV,OAAO;CA+BtB"}
@@ -1,35 +0,0 @@
1
- /**
2
- * ReAct agent: LLM + tool hub, Thought–Action–Observation loop.
3
- * Use: new ReActAgent(llm, toolHub).run(instruction).
4
- */
5
- import type { ToolRegistry } from "../registry/ToolRegistry.js";
6
- import type { ToolResult } from "../types/ToolResult.js";
7
- import type { OpenAICompatibleClient } from "./OpenAICompatibleClient.js";
8
- export interface ReActAgentToolHub {
9
- getRegistry(): ToolRegistry;
10
- invokeTool(toolName: string, args: unknown): Promise<ToolResult>;
11
- }
12
- export interface ReActAgentRunOptions {
13
- systemPrompt?: string;
14
- maxSteps?: number;
15
- timeoutMs?: number;
16
- /** When set, only these tool names are exposed to the LLM (e.g. from agent.yaml tools list). */
17
- toolNames?: string[];
18
- }
19
- export interface ReActAgentRunResult {
20
- content: string;
21
- steps: number;
22
- }
23
- export declare class ReActAgent {
24
- private readonly llm;
25
- private readonly toolHub;
26
- constructor(llm: OpenAICompatibleClient, toolHub: ReActAgentToolHub);
27
- run(instruction: string, options?: ReActAgentRunOptions): Promise<ReActAgentRunResult>;
28
- private getTools;
29
- /**
30
- * Parse tool-call arguments. Handles models that send text + JSON
31
- * (e.g. "Let's fetch.{\"symbol\":\"GOOGL\"}") by extracting the last {...} and parsing.
32
- */
33
- private parseArgs;
34
- }
35
- //# sourceMappingURL=ReActAgent.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ReActAgent.d.ts","sourceRoot":"","sources":["../../src/llm/ReActAgent.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EACV,sBAAsB,EAIvB,MAAM,6BAA6B,CAAC;AAErC,MAAM,WAAW,iBAAiB;IAChC,WAAW,IAAI,YAAY,CAAC;IAC5B,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CAClE;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gGAAgG;IAChG,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf;AAUD,qBAAa,UAAU;IAEnB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBADP,GAAG,EAAE,sBAAsB,EAC3B,OAAO,EAAE,iBAAiB;IAGvC,GAAG,CACP,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,mBAAmB,CAAC;IAkC/B,OAAO,CAAC,QAAQ;IAYhB;;;OAGG;IACH,OAAO,CAAC,SAAS;CAqBlB"}
@@ -1,20 +0,0 @@
1
- 'use strict';
2
-
3
- var chunkP3UEAZHK_cjs = require('./chunk-P3UEAZHK.cjs');
4
-
5
-
6
-
7
- Object.defineProperty(exports, "OpenAICompatibleClient", {
8
- enumerable: true,
9
- get: function () { return chunkP3UEAZHK_cjs.OpenAICompatibleClient; }
10
- });
11
- Object.defineProperty(exports, "ReActAgent", {
12
- enumerable: true,
13
- get: function () { return chunkP3UEAZHK_cjs.ReActAgent; }
14
- });
15
- Object.defineProperty(exports, "createOpenAICompatibleClient", {
16
- enumerable: true,
17
- get: function () { return chunkP3UEAZHK_cjs.createOpenAICompatibleClient; }
18
- });
19
- //# sourceMappingURL=llm-export.cjs.map
20
- //# sourceMappingURL=llm-export.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","file":"llm-export.cjs"}
@@ -1,9 +0,0 @@
1
- /**
2
- * Slim entry: LLM client + ReActAgent only (no ToolHub/n8n/MCP).
3
- * Use for examples or apps that only need OpenAICompatibleClient and ReActAgent.
4
- */
5
- export { createOpenAICompatibleClient, OpenAICompatibleClient, } from "./llm/OpenAICompatibleClient.js";
6
- export type { ChatMessage, ChatOptions, ChatResult, OpenAICompatibleClientConfig, OpenAIToolDefinition, AssistantMessageWithToolCalls, ChatWithToolsResult, } from "./llm/OpenAICompatibleClient.js";
7
- export { ReActAgent } from "./llm/ReActAgent.js";
8
- export type { ReActAgentToolHub, ReActAgentRunOptions, ReActAgentRunResult, } from "./llm/ReActAgent.js";
9
- //# sourceMappingURL=llm-export.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"llm-export.d.ts","sourceRoot":"","sources":["../src/llm-export.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,4BAA4B,EAC5B,sBAAsB,GACvB,MAAM,iCAAiC,CAAC;AACzC,YAAY,EACV,WAAW,EACX,WAAW,EACX,UAAU,EACV,4BAA4B,EAC5B,oBAAoB,EACpB,6BAA6B,EAC7B,mBAAmB,GACpB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,YAAY,EACV,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC"}
@@ -1,3 +0,0 @@
1
- export { OpenAICompatibleClient, ReActAgent, createOpenAICompatibleClient } from './chunk-RPAMQCFH.js';
2
- //# sourceMappingURL=llm-export.js.map
3
- //# sourceMappingURL=llm-export.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","file":"llm-export.js"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"MCPClientAdapter.d.ts","sourceRoot":"","sources":["../../src/mcp/MCPClientAdapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE1D,sGAAsG;AACtG,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CACjG;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACjD,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAaD;;;GAGG;AACH,qBAAa,gBAAiB,YAAW,WAAW;IAGtC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAFnC,QAAQ,CAAC,IAAI,EAAG,KAAK,CAAU;gBAEF,MAAM,EAAE,aAAa;IAE5C,MAAM,CACV,IAAI,EAAE,QAAQ,EACd,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,WAAW,GAChB,OAAO,CAAC;QAAE,MAAM,EAAE,OAAO,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;CAc/C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"connectMCP.d.ts","sourceRoot":"","sources":["../../src/mcp/connectMCP.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAGrD,MAAM,WAAW,gBAAgB;IAC/B,kDAAkD;IAClD,MAAM,EAAE,aAAa,CAAC;IACtB,yCAAyC;IACzC,SAAS,EAAE,gBAAgB,CAAC;CAC7B;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,SAAS,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,SAAS,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,UAAU,EAAE,CAAA;KAAE,CAAC,CAAC;IAC9D,QAAQ,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CACjG;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACjD,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAsB,UAAU,CAAC,cAAc,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAyB7F;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,QAAQ,EAAE,CAU/D"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,YAAY,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC9D,YAAY,EACV,gBAAgB,EAChB,UAAU,EACV,cAAc,IAAI,iBAAiB,GACpC,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AACnE,YAAY,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"registerMCPTools.d.ts","sourceRoot":"","sources":["../../src/mcp/registerMCPTools.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAMhE,MAAM,WAAW,uBAAuB;IACtC,0GAA0G;IAC1G,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uDAAuD;IACvD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,sBAAsB;IACrC,+DAA+D;IAC/D,SAAS,EAAE;QAAE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;KAAE,CAAC;CACvC;AAED;;;GAGG;AACH,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,UAAU,EACnB,QAAQ,EAAE,YAAY,EACtB,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,sBAAsB,CAAC,CAoBjC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ToolRegistry.d.ts","sourceRoot":"","sources":["../../src/registry/ToolRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAE3E;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0BAA0B;IAC1B,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,sCAAsC;IACtC,YAAY,CAAC,EAAE,UAAU,EAAE,CAAC;IAC5B,qBAAqB;IACrB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;;GAGG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA+B;IACrD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAkC;IAC3D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoC;IAE9D;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAM9B;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAI;IAMrC;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAQjC;;OAEG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS;IAIvC;;OAEG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI1B;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,eAAe,GAAG,QAAQ,EAAE;IA0C1C;;OAEG;IACH,IAAI,IAAI,MAAM,EAAE;IAIhB;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;OAEG;IACH,QAAQ,IAAI,QAAQ,EAAE;IAItB;;OAEG;IACH,KAAK,IAAI,IAAI;IAMb,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,SAAS;IAsBjB,OAAO,CAAC,WAAW;CAQpB"}
@@ -1,53 +0,0 @@
1
- import type { AgentReportData, AgentReportStep, CollectStreamStepsOptions, CollectStreamStepsResult, RunAgentWithReportOptions, RunAgentWithReportResult, StreamableAgent, WriteReportFromStreamOptions } from "./types.js";
2
- /** Path to the default HTML template (dist/report/ when built, src/report/ in dev). */
3
- export declare const DEFAULT_REPORT_TEMPLATE_PATH: string;
4
- /**
5
- * Generate an HTML report from template and data.
6
- * Uses the built-in HTML template file when templatePath is not provided.
7
- *
8
- * @param data - Report data (prompts, markdown, steps)
9
- * @param options.outputPath - Path to write the HTML file (required)
10
- * @param options.templatePath - Path to a custom HTML template (optional; uses built-in file if not set)
11
- * @returns Path to the written file
12
- */
13
- export declare function generateAgentReport(data: AgentReportData, options: {
14
- outputPath: string;
15
- templatePath?: string;
16
- }): string;
17
- /**
18
- * Serialize a stream chunk value for the report (messages and metadata to plain JSON).
19
- */
20
- export declare function serializeStepOutput(value: unknown): unknown;
21
- /**
22
- * Format a step for console progress (e.g. "[1] agent | tools → foo | tokens: in=10 out=5").
23
- */
24
- export declare function formatStepProgress(step: AgentReportStep): string;
25
- /**
26
- * Consume an agent stream and collect steps. Optionally call onStep for each step (e.g. progress logging).
27
- * Also captures the last AI message content for use as report body when no reportPath is provided.
28
- *
29
- * @param stream - AsyncIterable from agent.stream()
30
- * @param options.onStep - Called for each step
31
- * @returns Collected steps and last AI content
32
- */
33
- export declare function collectStreamSteps(stream: AsyncIterable<Record<string, unknown>>, options?: CollectStreamStepsOptions): Promise<CollectStreamStepsResult>;
34
- /**
35
- * Run an agent stream, collect steps, optionally read report file and write HTML report.
36
- * Use this to support progress callbacks and HTML report generation at the framework level.
37
- *
38
- * @param agent - Agent with .stream(input, config) (e.g. LangChain createAgent())
39
- * @param input - Input to agent.stream()
40
- * @param options - systemPrompt, userPrompt, reportPath, htmlReportPath, templatePath, streamConfig, onStep
41
- * @returns { steps, reportMarkdown, htmlPath? }
42
- */
43
- export declare function runAgentWithReport(agent: StreamableAgent, input: unknown, options: RunAgentWithReportOptions): Promise<RunAgentWithReportResult>;
44
- /**
45
- * Consume an agent stream and optionally write the HTML report.
46
- * Use this with regular LangChain usage: get the stream from agent.stream(), then pass it here.
47
- *
48
- * @param stream - Stream from agent.stream(input, config)
49
- * @param options - systemPrompt, userPrompt, reportPath?, htmlReportPath?, templatePath?, onStep?
50
- * @returns { steps, reportMarkdown, htmlPath? }
51
- */
52
- export declare function writeReportFromStream(stream: AsyncIterable<Record<string, unknown>>, options: WriteReportFromStreamOptions): Promise<RunAgentWithReportResult>;
53
- //# sourceMappingURL=AgentReportGenerator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AgentReportGenerator.d.ts","sourceRoot":"","sources":["../../src/report/AgentReportGenerator.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EACf,yBAAyB,EACzB,wBAAwB,EACxB,yBAAyB,EACzB,wBAAwB,EACxB,eAAe,EACf,4BAA4B,EAC7B,MAAM,YAAY,CAAC;AASpB,uFAAuF;AACvF,eAAO,MAAM,4BAA4B,QAKrC,CAAC;AAEL;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,GACrD,MAAM,CASR;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAsB3D;AAeD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,CAiBhE;AA0DD;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAC9C,OAAO,CAAC,EAAE,yBAAyB,GAClC,OAAO,CAAC,wBAAwB,CAAC,CA0CnC;AAED;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,wBAAwB,CAAC,CA6BnC;AAED;;;;;;;GAOG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAC9C,OAAO,EAAE,4BAA4B,GACpC,OAAO,CAAC,wBAAwB,CAAC,CA4BnC"}
@@ -1,362 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="UTF-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1">
6
- <title>Agent Run Report</title>
7
- <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css" rel="stylesheet">
8
- <link href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.1/font/bootstrap-icons.css" rel="stylesheet">
9
- <style>
10
- :root {
11
- --report-bg: #f0f4f8;
12
- --report-surface: #ffffff;
13
- --report-border: #e2e6ea;
14
- --report-border-light: #eef0f2;
15
- --report-text: #2c3e50;
16
- --report-text-muted: #5c6b7a;
17
- --report-accent: #2563eb;
18
- --report-accent-hover: #1d4ed8;
19
- --report-accent-bg: #eff6ff;
20
- --report-secondary: #059669;
21
- --report-secondary-bg: #ecfdf5;
22
- --report-code-bg: #f1f5f9;
23
- --report-prompt-bg: #f8fafc;
24
- --report-heading: #1e40af;
25
- --report-heading-alt: #047857;
26
- --report-tint: #e0e7ff;
27
- --report-table-head: #dbeafe;
28
- --report-table-head-text: #1e3a8a;
29
- }
30
- body {
31
- font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
32
- background: var(--report-bg);
33
- color: var(--report-text);
34
- font-size: 15px;
35
- line-height: 1.55;
36
- }
37
- .report-header {
38
- background: linear-gradient(135deg, #ffffff 0%, #f0f9ff 100%);
39
- border-bottom: 3px solid var(--report-accent);
40
- box-shadow: 0 1px 3px rgba(37, 99, 235, 0.08);
41
- }
42
- .report-title {
43
- font-weight: 600;
44
- color: var(--report-accent);
45
- font-size: 1.1rem;
46
- letter-spacing: -0.01em;
47
- }
48
- .report-header .form-label {
49
- color: var(--report-secondary);
50
- font-weight: 600;
51
- letter-spacing: 0.02em;
52
- }
53
- .prompt-block {
54
- background: var(--report-prompt-bg);
55
- border: 1px solid var(--report-tint);
56
- border-left: 4px solid var(--report-accent);
57
- border-radius: 6px;
58
- font-size: 0.9rem;
59
- word-break: break-word;
60
- color: var(--report-text);
61
- }
62
- .prompt-block.markdown-body { white-space: normal; padding: 1rem 1.25rem; }
63
- .nav-tabs {
64
- border-bottom: 2px solid var(--report-border);
65
- }
66
- .nav-tabs .nav-link {
67
- color: var(--report-text-muted);
68
- font-weight: 500;
69
- border: none;
70
- padding: 0.5rem 1rem 0.6rem;
71
- margin-bottom: -2px;
72
- }
73
- .nav-tabs .nav-link:hover { color: var(--report-accent); }
74
- .nav-tabs .nav-link.active {
75
- color: var(--report-accent);
76
- border-bottom: 2px solid var(--report-accent);
77
- background: var(--report-accent-bg);
78
- }
79
- .card {
80
- background: var(--report-surface);
81
- border: 1px solid var(--report-border-light);
82
- border-radius: 8px;
83
- box-shadow: 0 1px 3px rgba(0,0,0,0.06);
84
- }
85
- .card-header {
86
- background: var(--report-surface);
87
- border-bottom: 1px solid var(--report-tint);
88
- color: var(--report-heading);
89
- font-weight: 600;
90
- }
91
- .step-tree { list-style: none; padding-left: 0; }
92
- .step-tree .step-item {
93
- padding: 0.5rem 0.75rem;
94
- border-radius: 4px;
95
- cursor: pointer;
96
- border-left: 3px solid transparent;
97
- color: var(--report-text);
98
- }
99
- .step-tree .step-item:hover { background: var(--report-accent-bg); }
100
- .step-tree .step-item.active {
101
- background: var(--report-accent-bg);
102
- border-left-color: var(--report-accent);
103
- }
104
- .step-tree .step-item .step-node { font-weight: 500; }
105
- .step-tree .step-item .step-meta { font-size: 0.8rem; color: var(--report-text-muted); }
106
- .detail-panel {
107
- background: var(--report-surface);
108
- border-radius: 6px;
109
- border: 1px solid var(--report-border-light);
110
- min-height: 200px;
111
- }
112
- .detail-section { margin-bottom: 1rem; }
113
- .detail-section h6 {
114
- color: var(--report-secondary);
115
- font-weight: 600;
116
- margin-bottom: 0.5rem;
117
- font-size: 0.8rem;
118
- text-transform: uppercase;
119
- letter-spacing: 0.03em;
120
- }
121
- .detail-pre {
122
- background: var(--report-code-bg);
123
- border: 1px solid var(--report-tint);
124
- padding: 1rem 1.25rem;
125
- border-radius: 4px;
126
- font-size: 0.8rem;
127
- overflow-x: auto;
128
- max-height: 400px;
129
- overflow-y: auto;
130
- color: var(--report-text);
131
- }
132
- .markdown-body {
133
- padding: 1.5rem 1.75rem;
134
- color: var(--report-text);
135
- font-size: 1rem;
136
- line-height: 1.6;
137
- }
138
- .markdown-body h1 {
139
- font-size: 1.375rem;
140
- font-weight: 600;
141
- color: var(--report-heading);
142
- margin: 0 0 0.25rem 0;
143
- line-height: 1.3;
144
- }
145
- .markdown-body h1 + p {
146
- font-size: 0.9375rem;
147
- color: var(--report-text-muted);
148
- margin-top: 0;
149
- margin-bottom: 1.25rem;
150
- }
151
- .markdown-body h2 {
152
- font-size: 1.125rem;
153
- font-weight: 600;
154
- color: var(--report-heading);
155
- margin: 1.5rem 0 0.5rem 0;
156
- padding-bottom: 0.25rem;
157
- border-bottom: 2px solid var(--report-tint);
158
- }
159
- .markdown-body h3 {
160
- font-size: 1.0625rem;
161
- font-weight: 600;
162
- color: var(--report-heading-alt);
163
- margin: 1.25rem 0 0.4rem 0;
164
- }
165
- .markdown-body h4 { font-size: 1rem; font-weight: 600; margin: 1rem 0 0.35rem 0; color: var(--report-heading-alt); }
166
- .markdown-body p {
167
- margin: 0 0 0.75rem 0;
168
- font-size: 1rem;
169
- }
170
- .markdown-body ul, .markdown-body ol { margin: 0 0 0.75rem 0; padding-left: 1.5rem; }
171
- .markdown-body li { margin-bottom: 0.25rem; }
172
- .markdown-body table {
173
- font-size: 0.9375rem;
174
- margin: 0.75rem 0;
175
- border-collapse: collapse;
176
- width: 100%;
177
- }
178
- .markdown-body th, .markdown-body td {
179
- padding: 0.5rem 0.75rem;
180
- border: 1px solid var(--report-tint);
181
- text-align: left;
182
- }
183
- .markdown-body th {
184
- font-weight: 600;
185
- background: var(--report-table-head);
186
- color: var(--report-table-head-text);
187
- border-color: var(--report-accent);
188
- }
189
- .markdown-body tbody tr:nth-child(even) { background: var(--report-secondary-bg); }
190
- .markdown-body pre, .markdown-body code {
191
- background: var(--report-code-bg);
192
- border: 1px solid var(--report-tint);
193
- border-radius: 4px;
194
- color: var(--report-text);
195
- font-size: 0.875rem;
196
- }
197
- .markdown-body pre { padding: 1rem 1.25rem; overflow-x: auto; }
198
- .empty-state { color: var(--report-text-muted); text-align: center; padding: 2rem; }
199
- </style>
200
- </head>
201
- <body>
202
- <div class="report-header py-3 px-4">
203
- <h5 class="report-title mb-3">Agent Run Report</h5>
204
- <div class="row g-3">
205
- <div class="col-12">
206
- <label class="form-label small text-muted text-uppercase">System Prompt</label>
207
- <div class="prompt-block markdown-body" id="system-prompt"></div>
208
- </div>
209
- <div class="col-12">
210
- <label class="form-label small text-muted text-uppercase">User Prompt</label>
211
- <div class="prompt-block markdown-body" id="user-prompt"></div>
212
- </div>
213
- </div>
214
- </div>
215
-
216
- <div class="container-fluid py-3">
217
- <ul class="nav nav-tabs mb-3" role="tablist">
218
- <li class="nav-item">
219
- <a class="nav-link active" data-bs-toggle="tab" href="#tab-report">Report</a>
220
- </li>
221
- <li class="nav-item">
222
- <a class="nav-link" data-bs-toggle="tab" href="#tab-debug">Debug</a>
223
- </li>
224
- </ul>
225
-
226
- <div class="tab-content">
227
- <div class="tab-pane fade show active" id="tab-report">
228
- <div class="card border-0 shadow-sm">
229
- <div class="card-body markdown-body" id="report-markdown"></div>
230
- </div>
231
- </div>
232
- <div class="tab-pane fade" id="tab-debug">
233
- <div class="row g-3">
234
- <div class="col-md-4">
235
- <div class="card border-0 shadow-sm h-100">
236
- <div class="card-header bg-white border-bottom py-2">
237
- <span class="fw-semibold">Steps</span>
238
- </div>
239
- <div class="card-body p-0 overflow-auto" style="max-height: 70vh;">
240
- <ul class="step-tree list-unstyled mb-0 p-2" id="step-tree"></ul>
241
- </div>
242
- </div>
243
- </div>
244
- <div class="col-md-8">
245
- <div class="card border-0 shadow-sm h-100">
246
- <div class="card-header bg-white border-bottom py-2">
247
- <span class="fw-semibold">Step Detail</span>
248
- <span class="text-muted small ms-2" id="step-detail-title"></span>
249
- </div>
250
- <div class="card-body detail-panel">
251
- <div id="step-detail-empty" class="empty-state">Select a step</div>
252
- <div id="step-detail-content" class="d-none">
253
- <div class="detail-section">
254
- <h6>Input</h6>
255
- <pre class="detail-pre mb-0" id="step-input"></pre>
256
- </div>
257
- <div class="detail-section">
258
- <h6>Output</h6>
259
- <pre class="detail-pre mb-0" id="step-output"></pre>
260
- </div>
261
- </div>
262
- </div>
263
- </div>
264
- </div>
265
- </div>
266
- </div>
267
- </div>
268
- </div>
269
-
270
- <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/js/bootstrap.bundle.min.js"></script>
271
- <script src="https://cdn.jsdelivr.net/npm/marked/marked.min.js"></script>
272
- <script type="application/json" id="agent-report-data">__REPORT_DATA__</script>
273
- <script>
274
- (function() {
275
- const el = document.getElementById('agent-report-data');
276
- const raw = el && el.textContent ? el.textContent.trim() : '{}';
277
- let data = {};
278
- try {
279
- data = raw === '' ? {} : JSON.parse(raw);
280
- } catch (e) {
281
- console.error('Invalid report data', e);
282
- }
283
-
284
- const systemPrompt = data.systemPrompt || '';
285
- const userPrompt = data.userPrompt || '';
286
- const reportMarkdown = data.reportMarkdown || '';
287
- const steps = Array.isArray(data.steps) ? data.steps : [];
288
-
289
- const markdownOpts = { gfm: true, breaks: true };
290
- function renderMarkdown(elId, text, fallback) {
291
- const el = document.getElementById(elId);
292
- if (!el) return;
293
- const content = (text || '').trim();
294
- if (!content) {
295
- el.innerHTML = fallback ? '<p class="text-muted">' + fallback + '</p>' : '';
296
- return;
297
- }
298
- if (typeof marked !== 'undefined') {
299
- el.innerHTML = marked.parse(content, markdownOpts);
300
- } else {
301
- el.textContent = content;
302
- }
303
- }
304
- renderMarkdown('system-prompt', systemPrompt, '(none)');
305
- renderMarkdown('user-prompt', userPrompt, '(none)');
306
-
307
- if (reportMarkdown) {
308
- if (typeof marked !== 'undefined') {
309
- document.getElementById('report-markdown').innerHTML = marked.parse(reportMarkdown, markdownOpts);
310
- } else {
311
- document.getElementById('report-markdown').textContent = reportMarkdown;
312
- }
313
- } else {
314
- document.getElementById('report-markdown').innerHTML = '<p class="text-muted">No report content.</p>';
315
- }
316
-
317
- const treeEl = document.getElementById('step-tree');
318
- const detailTitle = document.getElementById('step-detail-title');
319
- const detailEmpty = document.getElementById('step-detail-empty');
320
- const detailContent = document.getElementById('step-detail-content');
321
- const inputPre = document.getElementById('step-input');
322
- const outputPre = document.getElementById('step-output');
323
-
324
- steps.forEach(function(s, i) {
325
- const li = document.createElement('li');
326
- li.className = 'step-item';
327
- li.dataset.index = String(i);
328
- const node = s.node || '?';
329
- const meta = [];
330
- if (s.toolCalls && s.toolCalls.length) meta.push(s.toolCalls.map(function(t) { return t.name; }).join(', '));
331
- if (s.usage) meta.push('tokens: ' + (s.usage.total_tokens || (s.usage.input_tokens + s.usage.output_tokens) || '-'));
332
- li.innerHTML = '<span class="step-node">[' + (i + 1) + '] ' + escapeHtml(node) + '</span>' +
333
- (meta.length ? '<div class="step-meta mt-1">' + escapeHtml(meta.join(' | ')) + '</div>' : '');
334
- li.addEventListener('click', function() {
335
- document.querySelectorAll('.step-tree .step-item.active').forEach(function(x) { x.classList.remove('active'); });
336
- li.classList.add('active');
337
- detailEmpty.classList.add('d-none');
338
- detailContent.classList.remove('d-none');
339
- detailTitle.textContent = 'Step ' + (i + 1) + ' — ' + node;
340
- inputPre.textContent = formatJson(s.input);
341
- outputPre.textContent = formatJson(s.output);
342
- });
343
- treeEl.appendChild(li);
344
- });
345
-
346
- function escapeHtml(str) {
347
- const div = document.createElement('div');
348
- div.textContent = str;
349
- return div.innerHTML;
350
- }
351
- function formatJson(obj) {
352
- if (obj === undefined || obj === null) return '(none)';
353
- try {
354
- return JSON.stringify(obj, null, 2);
355
- } catch (e) {
356
- return String(obj);
357
- }
358
- }
359
- })();
360
- </script>
361
- </body>
362
- </html>
@@ -1,3 +0,0 @@
1
- export { generateAgentReport, serializeStepOutput, formatStepProgress, collectStreamSteps, runAgentWithReport, writeReportFromStream, } from "./AgentReportGenerator.js";
2
- export type { AgentReportData, AgentReportStep, StreamableAgent, CollectStreamStepsOptions, CollectStreamStepsResult, RunAgentWithReportOptions, RunAgentWithReportResult, WriteReportFromStreamOptions, } from "./types.js";
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/report/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,2BAA2B,CAAC;AACnC,YAAY,EACV,eAAe,EACf,eAAe,EACf,eAAe,EACf,yBAAyB,EACzB,wBAAwB,EACxB,yBAAyB,EACzB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,YAAY,CAAC"}