@roj-ai/sdk 0.1.3 → 0.1.4

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 (493) hide show
  1. package/dist/bootstrap.js +191 -0
  2. package/dist/bootstrap.js.map +1 -0
  3. package/dist/builtin-events.js +8 -0
  4. package/dist/builtin-events.js.map +1 -0
  5. package/dist/bun-platform/fs.js +39 -0
  6. package/dist/bun-platform/fs.js.map +1 -0
  7. package/dist/bun-platform/index.js +18 -0
  8. package/dist/bun-platform/index.js.map +1 -0
  9. package/dist/bun-platform/process.js +21 -0
  10. package/dist/bun-platform/process.js.map +1 -0
  11. package/dist/config.js +54 -0
  12. package/dist/config.js.map +1 -0
  13. package/dist/config.test.js +155 -0
  14. package/dist/config.test.js.map +1 -0
  15. package/dist/core/agent-loop.integration.test.js +414 -0
  16. package/dist/core/agent-loop.integration.test.js.map +1 -0
  17. package/dist/core/agents/agent-config.test.js +194 -0
  18. package/dist/core/agents/agent-config.test.js.map +1 -0
  19. package/dist/core/agents/agent-roles.js +25 -0
  20. package/dist/core/agents/agent-roles.js.map +1 -0
  21. package/dist/core/agents/agent-shutdown.test.js +180 -0
  22. package/dist/core/agents/agent-shutdown.test.js.map +1 -0
  23. package/dist/core/agents/agent.js +1205 -0
  24. package/dist/core/agents/agent.js.map +1 -0
  25. package/dist/core/agents/agent.test.js +313 -0
  26. package/dist/core/agents/agent.test.js.map +1 -0
  27. package/dist/core/agents/communicator.js +13 -0
  28. package/dist/core/agents/communicator.js.map +1 -0
  29. package/dist/core/agents/config.js +5 -0
  30. package/dist/core/agents/config.js.map +1 -0
  31. package/dist/core/agents/context.js +2 -0
  32. package/dist/core/agents/context.js.map +1 -0
  33. package/dist/core/agents/debounce.js +74 -0
  34. package/dist/core/agents/debounce.js.map +1 -0
  35. package/dist/core/agents/handler-events.test.js +115 -0
  36. package/dist/core/agents/handler-events.test.js.map +1 -0
  37. package/dist/core/agents/index.js +2 -0
  38. package/dist/core/agents/index.js.map +1 -0
  39. package/dist/core/agents/response-sanitizer.js +46 -0
  40. package/dist/core/agents/response-sanitizer.js.map +1 -0
  41. package/dist/core/agents/response-sanitizer.test.js +101 -0
  42. package/dist/core/agents/response-sanitizer.test.js.map +1 -0
  43. package/dist/core/agents/retry.js +105 -0
  44. package/dist/core/agents/retry.js.map +1 -0
  45. package/dist/core/agents/schema.js +39 -0
  46. package/dist/core/agents/schema.js.map +1 -0
  47. package/dist/core/agents/state.js +90 -0
  48. package/dist/core/agents/state.js.map +1 -0
  49. package/dist/core/context/state.js +23 -0
  50. package/dist/core/context/state.js.map +1 -0
  51. package/dist/core/errors.js +38 -0
  52. package/dist/core/errors.js.map +1 -0
  53. package/dist/core/event-sourcing.integration.test.js +154 -0
  54. package/dist/core/event-sourcing.integration.test.js.map +1 -0
  55. package/dist/core/events/base-event-store.js +201 -0
  56. package/dist/core/events/base-event-store.js.map +1 -0
  57. package/dist/core/events/event-store.js +26 -0
  58. package/dist/core/events/event-store.js.map +1 -0
  59. package/dist/core/events/file.js +320 -0
  60. package/dist/core/events/file.js.map +1 -0
  61. package/dist/core/events/file.test.js +284 -0
  62. package/dist/core/events/file.test.js.map +1 -0
  63. package/dist/core/events/index.js +3 -0
  64. package/dist/core/events/index.js.map +1 -0
  65. package/dist/core/events/memory.js +101 -0
  66. package/dist/core/events/memory.js.map +1 -0
  67. package/dist/core/events/memory.test.js +502 -0
  68. package/dist/core/events/memory.test.js.map +1 -0
  69. package/dist/core/events/metadata-utils.js +107 -0
  70. package/dist/core/events/metadata-utils.js.map +1 -0
  71. package/dist/core/events/test-helpers.js +15 -0
  72. package/dist/core/events/test-helpers.js.map +1 -0
  73. package/dist/core/events/types.js +21 -0
  74. package/dist/core/events/types.js.map +1 -0
  75. package/dist/core/file-store/file-store.js +250 -0
  76. package/dist/core/file-store/file-store.js.map +1 -0
  77. package/dist/core/file-store/types.js +7 -0
  78. package/dist/core/file-store/types.js.map +1 -0
  79. package/dist/core/image/image-processor.js +106 -0
  80. package/dist/core/image/image-processor.js.map +1 -0
  81. package/dist/core/image/image-processor.test.js +171 -0
  82. package/dist/core/image/image-processor.test.js.map +1 -0
  83. package/dist/core/image/index.js +4 -0
  84. package/dist/core/image/index.js.map +1 -0
  85. package/dist/core/image/noop-resizer.js +6 -0
  86. package/dist/core/image/noop-resizer.js.map +1 -0
  87. package/dist/core/image/types.js +2 -0
  88. package/dist/core/image/types.js.map +1 -0
  89. package/dist/core/image/vips-resizer.js +100 -0
  90. package/dist/core/image/vips-resizer.js.map +1 -0
  91. package/dist/core/image/vips-resizer.test.js +324 -0
  92. package/dist/core/image/vips-resizer.test.js.map +1 -0
  93. package/dist/core/llm/anthropic.js +396 -0
  94. package/dist/core/llm/anthropic.js.map +1 -0
  95. package/dist/core/llm/anthropic.test.js +434 -0
  96. package/dist/core/llm/anthropic.test.js.map +1 -0
  97. package/dist/core/llm/cache-breakpoints.js +37 -0
  98. package/dist/core/llm/cache-breakpoints.js.map +1 -0
  99. package/dist/core/llm/cache-live.test.js +137 -0
  100. package/dist/core/llm/cache-live.test.js.map +1 -0
  101. package/dist/core/llm/index.js +9 -0
  102. package/dist/core/llm/index.js.map +1 -0
  103. package/dist/core/llm/llm-log-types.js +12 -0
  104. package/dist/core/llm/llm-log-types.js.map +1 -0
  105. package/dist/core/llm/logger.js +241 -0
  106. package/dist/core/llm/logger.js.map +1 -0
  107. package/dist/core/llm/logger.test.js +228 -0
  108. package/dist/core/llm/logger.test.js.map +1 -0
  109. package/dist/core/llm/logging-provider.js +49 -0
  110. package/dist/core/llm/logging-provider.js.map +1 -0
  111. package/dist/core/llm/middleware.js +114 -0
  112. package/dist/core/llm/middleware.js.map +1 -0
  113. package/dist/core/llm/mock.js +186 -0
  114. package/dist/core/llm/mock.js.map +1 -0
  115. package/dist/core/llm/mock.test.js +318 -0
  116. package/dist/core/llm/mock.test.js.map +1 -0
  117. package/dist/core/llm/openrouter-mapping.test.js +125 -0
  118. package/dist/core/llm/openrouter-mapping.test.js.map +1 -0
  119. package/dist/core/llm/openrouter.js +298 -0
  120. package/dist/core/llm/openrouter.js.map +1 -0
  121. package/dist/core/llm/openrouter.test.js +377 -0
  122. package/dist/core/llm/openrouter.test.js.map +1 -0
  123. package/dist/core/llm/provider-integration.test.js +350 -0
  124. package/dist/core/llm/provider-integration.test.js.map +1 -0
  125. package/dist/core/llm/provider.js +18 -0
  126. package/dist/core/llm/provider.js.map +1 -0
  127. package/dist/core/llm/routing-provider.js +52 -0
  128. package/dist/core/llm/routing-provider.js.map +1 -0
  129. package/dist/core/llm/routing-provider.test.js +94 -0
  130. package/dist/core/llm/routing-provider.test.js.map +1 -0
  131. package/dist/core/llm/schema.js +31 -0
  132. package/dist/core/llm/schema.js.map +1 -0
  133. package/dist/core/llm/snapshot-fetch.js +122 -0
  134. package/dist/core/llm/snapshot-fetch.js.map +1 -0
  135. package/dist/core/llm/snapshot-middleware.js +142 -0
  136. package/dist/core/llm/snapshot-middleware.js.map +1 -0
  137. package/dist/core/llm/snapshot-middleware.test.js +144 -0
  138. package/dist/core/llm/snapshot-middleware.test.js.map +1 -0
  139. package/dist/core/llm/state.js +48 -0
  140. package/dist/core/llm/state.js.map +1 -0
  141. package/dist/core/llm/tokens.js +40 -0
  142. package/dist/core/llm/tokens.js.map +1 -0
  143. package/dist/core/multi-agent.integration.test.js +298 -0
  144. package/dist/core/multi-agent.integration.test.js.map +1 -0
  145. package/dist/core/plugin-hooks.integration.test.js +344 -0
  146. package/dist/core/plugin-hooks.integration.test.js.map +1 -0
  147. package/dist/core/plugins/hook-types.js +5 -0
  148. package/dist/core/plugins/hook-types.js.map +1 -0
  149. package/dist/core/plugins/index.js +5 -0
  150. package/dist/core/plugins/index.js.map +1 -0
  151. package/dist/core/plugins/plugin-builder.js +321 -0
  152. package/dist/core/plugins/plugin-builder.js.map +1 -0
  153. package/dist/core/preset/config.js +54 -0
  154. package/dist/core/preset/config.js.map +1 -0
  155. package/dist/core/preset/index.js +6 -0
  156. package/dist/core/preset/index.js.map +1 -0
  157. package/dist/core/preset/preset-builder.js +63 -0
  158. package/dist/core/preset/preset-builder.js.map +1 -0
  159. package/dist/core/session-lifecycle.integration.test.js +159 -0
  160. package/dist/core/session-lifecycle.integration.test.js.map +1 -0
  161. package/dist/core/sessions/apply-event.js +41 -0
  162. package/dist/core/sessions/apply-event.js.map +1 -0
  163. package/dist/core/sessions/context.js +2 -0
  164. package/dist/core/sessions/context.js.map +1 -0
  165. package/dist/core/sessions/fork-utils.js +42 -0
  166. package/dist/core/sessions/fork-utils.js.map +1 -0
  167. package/dist/core/sessions/fork-utils.test.js +129 -0
  168. package/dist/core/sessions/fork-utils.test.js.map +1 -0
  169. package/dist/core/sessions/reducer.js +55 -0
  170. package/dist/core/sessions/reducer.js.map +1 -0
  171. package/dist/core/sessions/schema.js +66 -0
  172. package/dist/core/sessions/schema.js.map +1 -0
  173. package/dist/core/sessions/session-environment.js +2 -0
  174. package/dist/core/sessions/session-environment.js.map +1 -0
  175. package/dist/core/sessions/session-manager.js +650 -0
  176. package/dist/core/sessions/session-manager.js.map +1 -0
  177. package/dist/core/sessions/session-store.js +118 -0
  178. package/dist/core/sessions/session-store.js.map +1 -0
  179. package/dist/core/sessions/session.js +675 -0
  180. package/dist/core/sessions/session.js.map +1 -0
  181. package/dist/core/sessions/session.test.js +1095 -0
  182. package/dist/core/sessions/session.test.js.map +1 -0
  183. package/dist/core/sessions/state.js +377 -0
  184. package/dist/core/sessions/state.js.map +1 -0
  185. package/dist/core/system.js +66 -0
  186. package/dist/core/system.js.map +1 -0
  187. package/dist/core/tools/context.js +2 -0
  188. package/dist/core/tools/context.js.map +1 -0
  189. package/dist/core/tools/definition.js +4 -0
  190. package/dist/core/tools/definition.js.map +1 -0
  191. package/dist/core/tools/executor.js +82 -0
  192. package/dist/core/tools/executor.js.map +1 -0
  193. package/dist/core/tools/executor.test.js +143 -0
  194. package/dist/core/tools/executor.test.js.map +1 -0
  195. package/dist/core/tools/index.js +4 -0
  196. package/dist/core/tools/index.js.map +1 -0
  197. package/dist/core/tools/schema.js +20 -0
  198. package/dist/core/tools/schema.js.map +1 -0
  199. package/dist/core/tools/state.js +29 -0
  200. package/dist/core/tools/state.js.map +1 -0
  201. package/dist/index.js +70 -0
  202. package/dist/index.js.map +1 -0
  203. package/dist/lib/json/index.js +5 -0
  204. package/dist/lib/json/index.js.map +1 -0
  205. package/dist/lib/logger/console.js +147 -0
  206. package/dist/lib/logger/console.js.map +1 -0
  207. package/dist/lib/logger/console.test.js +258 -0
  208. package/dist/lib/logger/console.test.js.map +1 -0
  209. package/dist/lib/logger/file.js +54 -0
  210. package/dist/lib/logger/file.js.map +1 -0
  211. package/dist/lib/logger/index.js +4 -0
  212. package/dist/lib/logger/index.js.map +1 -0
  213. package/dist/lib/logger/logger.js +28 -0
  214. package/dist/lib/logger/logger.js.map +1 -0
  215. package/dist/lib/logger/ring-buffer.js +61 -0
  216. package/dist/lib/logger/ring-buffer.js.map +1 -0
  217. package/dist/lib/logger/tee.js +43 -0
  218. package/dist/lib/logger/tee.js.map +1 -0
  219. package/dist/lib/mime.js +22 -0
  220. package/dist/lib/mime.js.map +1 -0
  221. package/dist/lib/never.js +4 -0
  222. package/dist/lib/never.js.map +1 -0
  223. package/dist/lib/utils/hash.js +35 -0
  224. package/dist/lib/utils/hash.js.map +1 -0
  225. package/dist/lib/utils/result.js +21 -0
  226. package/dist/lib/utils/result.js.map +1 -0
  227. package/dist/platform/fs.js +8 -0
  228. package/dist/platform/fs.js.map +1 -0
  229. package/dist/platform/index.js +9 -0
  230. package/dist/platform/index.js.map +1 -0
  231. package/dist/platform/process.js +8 -0
  232. package/dist/platform/process.js.map +1 -0
  233. package/dist/plugins/agent-status/plugin.js +77 -0
  234. package/dist/plugins/agent-status/plugin.js.map +1 -0
  235. package/dist/plugins/agents/agents.integration.test.js +683 -0
  236. package/dist/plugins/agents/agents.integration.test.js.map +1 -0
  237. package/dist/plugins/agents/index.js +2 -0
  238. package/dist/plugins/agents/index.js.map +1 -0
  239. package/dist/plugins/agents/plugin.js +199 -0
  240. package/dist/plugins/agents/plugin.js.map +1 -0
  241. package/dist/plugins/context-compact/context-compact.integration.test.js +174 -0
  242. package/dist/plugins/context-compact/context-compact.integration.test.js.map +1 -0
  243. package/dist/plugins/context-compact/context-compactor.js +238 -0
  244. package/dist/plugins/context-compact/context-compactor.js.map +1 -0
  245. package/dist/plugins/context-compact/context-compactor.test.js +763 -0
  246. package/dist/plugins/context-compact/context-compactor.test.js.map +1 -0
  247. package/dist/plugins/context-compact/history-offloader.js +42 -0
  248. package/dist/plugins/context-compact/history-offloader.js.map +1 -0
  249. package/dist/plugins/context-compact/history-offloader.test.js +77 -0
  250. package/dist/plugins/context-compact/history-offloader.test.js.map +1 -0
  251. package/dist/plugins/context-compact/index.js +4 -0
  252. package/dist/plugins/context-compact/index.js.map +1 -0
  253. package/dist/plugins/context-compact/plugin.js +37 -0
  254. package/dist/plugins/context-compact/plugin.js.map +1 -0
  255. package/dist/plugins/filesystem/filesystem.integration.test.js +411 -0
  256. package/dist/plugins/filesystem/filesystem.integration.test.js.map +1 -0
  257. package/dist/plugins/filesystem/helpers.js +170 -0
  258. package/dist/plugins/filesystem/helpers.js.map +1 -0
  259. package/dist/plugins/filesystem/index.js +3 -0
  260. package/dist/plugins/filesystem/index.js.map +1 -0
  261. package/dist/plugins/filesystem/listing.js +247 -0
  262. package/dist/plugins/filesystem/listing.js.map +1 -0
  263. package/dist/plugins/filesystem/plugin.js +364 -0
  264. package/dist/plugins/filesystem/plugin.js.map +1 -0
  265. package/dist/plugins/filesystem/schema.js +2 -0
  266. package/dist/plugins/filesystem/schema.js.map +1 -0
  267. package/dist/plugins/git-status/index.js +2 -0
  268. package/dist/plugins/git-status/index.js.map +1 -0
  269. package/dist/plugins/git-status/plugin.js +144 -0
  270. package/dist/plugins/git-status/plugin.js.map +1 -0
  271. package/dist/plugins/limits-guard/config.js +5 -0
  272. package/dist/plugins/limits-guard/config.js.map +1 -0
  273. package/dist/plugins/limits-guard/index.js +3 -0
  274. package/dist/plugins/limits-guard/index.js.map +1 -0
  275. package/dist/plugins/limits-guard/limit-guard.js +125 -0
  276. package/dist/plugins/limits-guard/limit-guard.js.map +1 -0
  277. package/dist/plugins/limits-guard/limit-guard.test.js +121 -0
  278. package/dist/plugins/limits-guard/limit-guard.test.js.map +1 -0
  279. package/dist/plugins/limits-guard/limits-guard.integration.test.js +378 -0
  280. package/dist/plugins/limits-guard/limits-guard.integration.test.js.map +1 -0
  281. package/dist/plugins/limits-guard/plugin.js +240 -0
  282. package/dist/plugins/limits-guard/plugin.js.map +1 -0
  283. package/dist/plugins/llm-debug/index.js +2 -0
  284. package/dist/plugins/llm-debug/index.js.map +1 -0
  285. package/dist/plugins/llm-debug/llm-debug.integration.test.js +157 -0
  286. package/dist/plugins/llm-debug/llm-debug.integration.test.js.map +1 -0
  287. package/dist/plugins/llm-debug/plugin.js +148 -0
  288. package/dist/plugins/llm-debug/plugin.js.map +1 -0
  289. package/dist/plugins/logs/index.js +2 -0
  290. package/dist/plugins/logs/index.js.map +1 -0
  291. package/dist/plugins/logs/plugin.js +38 -0
  292. package/dist/plugins/logs/plugin.js.map +1 -0
  293. package/dist/plugins/mailbox/helpers.js +66 -0
  294. package/dist/plugins/mailbox/helpers.js.map +1 -0
  295. package/dist/plugins/mailbox/index.js +9 -0
  296. package/dist/plugins/mailbox/index.js.map +1 -0
  297. package/dist/plugins/mailbox/mailbox.integration.test.js +605 -0
  298. package/dist/plugins/mailbox/mailbox.integration.test.js.map +1 -0
  299. package/dist/plugins/mailbox/plugin.js +204 -0
  300. package/dist/plugins/mailbox/plugin.js.map +1 -0
  301. package/dist/plugins/mailbox/prompts.js +93 -0
  302. package/dist/plugins/mailbox/prompts.js.map +1 -0
  303. package/dist/plugins/mailbox/query.js +38 -0
  304. package/dist/plugins/mailbox/query.js.map +1 -0
  305. package/dist/plugins/mailbox/schema.js +32 -0
  306. package/dist/plugins/mailbox/schema.js.map +1 -0
  307. package/dist/plugins/mailbox/state.js +41 -0
  308. package/dist/plugins/mailbox/state.js.map +1 -0
  309. package/dist/plugins/resources/index.js +4 -0
  310. package/dist/plugins/resources/index.js.map +1 -0
  311. package/dist/plugins/resources/manifest.js +20 -0
  312. package/dist/plugins/resources/manifest.js.map +1 -0
  313. package/dist/plugins/resources/plugin.js +171 -0
  314. package/dist/plugins/resources/plugin.js.map +1 -0
  315. package/dist/plugins/resources/post-inject.js +32 -0
  316. package/dist/plugins/resources/post-inject.js.map +1 -0
  317. package/dist/plugins/resources/state.js +16 -0
  318. package/dist/plugins/resources/state.js.map +1 -0
  319. package/dist/plugins/result-eviction/index.js +2 -0
  320. package/dist/plugins/result-eviction/index.js.map +1 -0
  321. package/dist/plugins/result-eviction/plugin.js +43 -0
  322. package/dist/plugins/result-eviction/plugin.js.map +1 -0
  323. package/dist/plugins/result-eviction/result-eviction.integration.test.js +217 -0
  324. package/dist/plugins/result-eviction/result-eviction.integration.test.js.map +1 -0
  325. package/dist/plugins/services/plugin.js +453 -0
  326. package/dist/plugins/services/plugin.js.map +1 -0
  327. package/dist/plugins/services/port-pool.js +70 -0
  328. package/dist/plugins/services/port-pool.js.map +1 -0
  329. package/dist/plugins/services/prompt.js +40 -0
  330. package/dist/plugins/services/prompt.js.map +1 -0
  331. package/dist/plugins/services/schema.js +9 -0
  332. package/dist/plugins/services/schema.js.map +1 -0
  333. package/dist/plugins/services/service.js +470 -0
  334. package/dist/plugins/services/service.js.map +1 -0
  335. package/dist/plugins/services/services.integration.test.js +485 -0
  336. package/dist/plugins/services/services.integration.test.js.map +1 -0
  337. package/dist/plugins/session-lifecycle/index.js +2 -0
  338. package/dist/plugins/session-lifecycle/index.js.map +1 -0
  339. package/dist/plugins/session-lifecycle/plugin.js +273 -0
  340. package/dist/plugins/session-lifecycle/plugin.js.map +1 -0
  341. package/dist/plugins/session-lifecycle/session-lifecycle.integration.test.js +498 -0
  342. package/dist/plugins/session-lifecycle/session-lifecycle.integration.test.js.map +1 -0
  343. package/dist/plugins/session-state/plugin.js +159 -0
  344. package/dist/plugins/session-state/plugin.js.map +1 -0
  345. package/dist/plugins/session-stats/index.js +3 -0
  346. package/dist/plugins/session-stats/index.js.map +1 -0
  347. package/dist/plugins/session-stats/plugin.js +81 -0
  348. package/dist/plugins/session-stats/plugin.js.map +1 -0
  349. package/dist/plugins/shell/executor.js +339 -0
  350. package/dist/plugins/shell/executor.js.map +1 -0
  351. package/dist/plugins/shell/index.js +6 -0
  352. package/dist/plugins/shell/index.js.map +1 -0
  353. package/dist/plugins/shell/plugin.js +66 -0
  354. package/dist/plugins/shell/plugin.js.map +1 -0
  355. package/dist/plugins/shell/shell.integration.test.js +234 -0
  356. package/dist/plugins/shell/shell.integration.test.js.map +1 -0
  357. package/dist/plugins/shell/shell.test.js +236 -0
  358. package/dist/plugins/shell/shell.test.js.map +1 -0
  359. package/dist/plugins/skills/discovery.js +205 -0
  360. package/dist/plugins/skills/discovery.js.map +1 -0
  361. package/dist/plugins/skills/discovery.test.js +312 -0
  362. package/dist/plugins/skills/discovery.test.js.map +1 -0
  363. package/dist/plugins/skills/index.js +12 -0
  364. package/dist/plugins/skills/index.js.map +1 -0
  365. package/dist/plugins/skills/plugin.js +293 -0
  366. package/dist/plugins/skills/plugin.js.map +1 -0
  367. package/dist/plugins/skills/prompts.js +70 -0
  368. package/dist/plugins/skills/prompts.js.map +1 -0
  369. package/dist/plugins/skills/schema.js +18 -0
  370. package/dist/plugins/skills/schema.js.map +1 -0
  371. package/dist/plugins/skills/skills.integration.test.js +475 -0
  372. package/dist/plugins/skills/skills.integration.test.js.map +1 -0
  373. package/dist/plugins/snapshotting/index.js +3 -0
  374. package/dist/plugins/snapshotting/index.js.map +1 -0
  375. package/dist/plugins/snapshotting/jj-snapshotter.js +106 -0
  376. package/dist/plugins/snapshotting/jj-snapshotter.js.map +1 -0
  377. package/dist/plugins/snapshotting/plugin.js +28 -0
  378. package/dist/plugins/snapshotting/plugin.js.map +1 -0
  379. package/dist/plugins/snapshotting/snapshotter.js +2 -0
  380. package/dist/plugins/snapshotting/snapshotter.js.map +1 -0
  381. package/dist/plugins/todo/index.js +7 -0
  382. package/dist/plugins/todo/index.js.map +1 -0
  383. package/dist/plugins/todo/plugin.js +319 -0
  384. package/dist/plugins/todo/plugin.js.map +1 -0
  385. package/dist/plugins/todo/prompts.js +54 -0
  386. package/dist/plugins/todo/prompts.js.map +1 -0
  387. package/dist/plugins/todo/schema.js +18 -0
  388. package/dist/plugins/todo/schema.js.map +1 -0
  389. package/dist/plugins/todo/todo.integration.test.js +605 -0
  390. package/dist/plugins/todo/todo.integration.test.js.map +1 -0
  391. package/dist/plugins/uploads/index.js +8 -0
  392. package/dist/plugins/uploads/index.js.map +1 -0
  393. package/dist/plugins/uploads/plugin.js +346 -0
  394. package/dist/plugins/uploads/plugin.js.map +1 -0
  395. package/dist/plugins/uploads/preprocessor.js +44 -0
  396. package/dist/plugins/uploads/preprocessor.js.map +1 -0
  397. package/dist/plugins/uploads/preprocessors/image-classifier.js +127 -0
  398. package/dist/plugins/uploads/preprocessors/image-classifier.js.map +1 -0
  399. package/dist/plugins/uploads/preprocessors/index.js +7 -0
  400. package/dist/plugins/uploads/preprocessors/index.js.map +1 -0
  401. package/dist/plugins/uploads/preprocessors/markitdown-preprocessor.js +204 -0
  402. package/dist/plugins/uploads/preprocessors/markitdown-preprocessor.js.map +1 -0
  403. package/dist/plugins/uploads/preprocessors/zip-preprocessor.js +172 -0
  404. package/dist/plugins/uploads/preprocessors/zip-preprocessor.js.map +1 -0
  405. package/dist/plugins/uploads/schema.js +20 -0
  406. package/dist/plugins/uploads/schema.js.map +1 -0
  407. package/dist/plugins/uploads/state.js +22 -0
  408. package/dist/plugins/uploads/state.js.map +1 -0
  409. package/dist/plugins/uploads/uploads.integration.test.js +496 -0
  410. package/dist/plugins/uploads/uploads.integration.test.js.map +1 -0
  411. package/dist/plugins/user-chat/index.js +5 -0
  412. package/dist/plugins/user-chat/index.js.map +1 -0
  413. package/dist/plugins/user-chat/plugin.js +544 -0
  414. package/dist/plugins/user-chat/plugin.js.map +1 -0
  415. package/dist/plugins/user-chat/prompts.js +29 -0
  416. package/dist/plugins/user-chat/prompts.js.map +1 -0
  417. package/dist/plugins/user-chat/schema.js +46 -0
  418. package/dist/plugins/user-chat/schema.js.map +1 -0
  419. package/dist/plugins/user-chat/user-chat.integration.test.js +668 -0
  420. package/dist/plugins/user-chat/user-chat.integration.test.js.map +1 -0
  421. package/dist/plugins/workers/context.js +143 -0
  422. package/dist/plugins/workers/context.js.map +1 -0
  423. package/dist/plugins/workers/definition.js +30 -0
  424. package/dist/plugins/workers/definition.js.map +1 -0
  425. package/dist/plugins/workers/index.js +7 -0
  426. package/dist/plugins/workers/index.js.map +1 -0
  427. package/dist/plugins/workers/plugin.js +578 -0
  428. package/dist/plugins/workers/plugin.js.map +1 -0
  429. package/dist/plugins/workers/worker.js +18 -0
  430. package/dist/plugins/workers/worker.js.map +1 -0
  431. package/dist/plugins/workers/workers.integration.test.js +629 -0
  432. package/dist/plugins/workers/workers.integration.test.js.map +1 -0
  433. package/dist/prompts/base.js +239 -0
  434. package/dist/prompts/base.js.map +1 -0
  435. package/dist/prompts/builder.js +131 -0
  436. package/dist/prompts/builder.js.map +1 -0
  437. package/dist/prompts/index.js +20 -0
  438. package/dist/prompts/index.js.map +1 -0
  439. package/dist/prompts/macros.js +26 -0
  440. package/dist/prompts/macros.js.map +1 -0
  441. package/dist/prompts/macros.test.js +80 -0
  442. package/dist/prompts/macros.test.js.map +1 -0
  443. package/dist/testing/bootstrap-for-testing.js +28 -0
  444. package/dist/testing/bootstrap-for-testing.js.map +1 -0
  445. package/dist/testing/index.js +7 -0
  446. package/dist/testing/index.js.map +1 -0
  447. package/dist/testing/node-platform.js +65 -0
  448. package/dist/testing/node-platform.js.map +1 -0
  449. package/dist/testing/notification-collector.js +82 -0
  450. package/dist/testing/notification-collector.js.map +1 -0
  451. package/dist/testing/preset-helpers.js +37 -0
  452. package/dist/testing/preset-helpers.js.map +1 -0
  453. package/dist/testing/test-harness.js +226 -0
  454. package/dist/testing/test-harness.js.map +1 -0
  455. package/dist/testing/test-harness.test.js +51 -0
  456. package/dist/testing/test-harness.test.js.map +1 -0
  457. package/dist/testing/wait-helpers.js +64 -0
  458. package/dist/testing/wait-helpers.js.map +1 -0
  459. package/dist/transport/adapter/client-adapter.js +64 -0
  460. package/dist/transport/adapter/client-adapter.js.map +1 -0
  461. package/dist/transport/adapter/index.js +24 -0
  462. package/dist/transport/adapter/index.js.map +1 -0
  463. package/dist/transport/adapter/server-adapter.js +73 -0
  464. package/dist/transport/adapter/server-adapter.js.map +1 -0
  465. package/dist/transport/adapter/types.js +8 -0
  466. package/dist/transport/adapter/types.js.map +1 -0
  467. package/dist/transport/http/app.js +86 -0
  468. package/dist/transport/http/app.js.map +1 -0
  469. package/dist/transport/http/index.js +6 -0
  470. package/dist/transport/http/index.js.map +1 -0
  471. package/dist/transport/http/middleware/bearer-auth.js +33 -0
  472. package/dist/transport/http/middleware/bearer-auth.js.map +1 -0
  473. package/dist/transport/http/middleware/error-handler.js +56 -0
  474. package/dist/transport/http/middleware/error-handler.js.map +1 -0
  475. package/dist/transport/http/routes/files.js +237 -0
  476. package/dist/transport/http/routes/files.js.map +1 -0
  477. package/dist/transport/http/routes/resources.js +77 -0
  478. package/dist/transport/http/routes/resources.js.map +1 -0
  479. package/dist/transport/http/routes/rpc.integration.test.js +189 -0
  480. package/dist/transport/http/routes/rpc.integration.test.js.map +1 -0
  481. package/dist/transport/http/routes/rpc.js +110 -0
  482. package/dist/transport/http/routes/rpc.js.map +1 -0
  483. package/dist/transport/http/routes/rpc.test.js +316 -0
  484. package/dist/transport/http/routes/rpc.test.js.map +1 -0
  485. package/dist/transport/http/routes/upload.js +205 -0
  486. package/dist/transport/http/routes/upload.js.map +1 -0
  487. package/dist/transport/rpc/index.js +7 -0
  488. package/dist/transport/rpc/index.js.map +1 -0
  489. package/dist/transport/rpc/methods.js +8 -0
  490. package/dist/transport/rpc/methods.js.map +1 -0
  491. package/dist/user-config.js +14 -0
  492. package/dist/user-config.js.map +1 -0
  493. package/package.json +47 -57
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.test.js","sourceRoot":"","sources":["../../../src/core/sessions/session.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,377 @@
1
+ import z4 from 'zod/v4';
2
+ import { COMMUNICATOR_ROLE, ORCHESTRATOR_ROLE } from '../../core/agents/agent-roles.js';
3
+ import { agentIdSchema } from '../../core/agents/schema.js';
4
+ import { agentEvents } from '../../core/agents/state.js';
5
+ import { contextEvents } from '../../core/context/state.js';
6
+ import { createEventsFactory } from '../../core/events/types';
7
+ import { llmEvents } from '../../core/llm/state.js';
8
+ import { sessionIdSchema } from '../../core/sessions/schema.js';
9
+ import { toolEvents } from '../../core/tools/state.js';
10
+ import { createTypedReducer } from './reducer.js';
11
+ export const sessionEvents = createEventsFactory({
12
+ events: {
13
+ session_created: z4.object({
14
+ presetId: z4.string(),
15
+ workspaceDir: z4.string().optional(),
16
+ forkedFrom: z4.object({
17
+ sessionId: sessionIdSchema,
18
+ eventIndex: z4.number(),
19
+ }).optional(),
20
+ }),
21
+ session_closed: z4.looseObject({}),
22
+ session_reopened: z4.looseObject({}),
23
+ session_restarted: z4.object({
24
+ resetAgentIds: z4.array(agentIdSchema),
25
+ clearedToolAgentIds: z4.array(agentIdSchema),
26
+ }),
27
+ session_metadata_set: z4.object({
28
+ key: z4.string(),
29
+ value: z4.unknown(),
30
+ }),
31
+ session_handler_started: z4.object({
32
+ handlerName: z4.enum(['onSessionReady', 'onSessionClose']),
33
+ pluginName: z4.string(),
34
+ }),
35
+ session_handler_completed: z4.object({
36
+ handlerName: z4.enum(['onSessionReady', 'onSessionClose']),
37
+ pluginName: z4.string(),
38
+ durationMs: z4.number(),
39
+ error: z4.string().optional(),
40
+ }),
41
+ },
42
+ });
43
+ // ============================================================================
44
+ // Create empty session state (used internally)
45
+ // ============================================================================
46
+ export const createSessionState = (id, presetId, timestamp) => ({
47
+ id,
48
+ presetId,
49
+ status: 'active',
50
+ agents: new Map(),
51
+ createdAt: timestamp,
52
+ agentCounters: new Map(),
53
+ metadata: new Map(),
54
+ });
55
+ export const fromLLMToolCall = (tc) => ({
56
+ id: tc.id,
57
+ name: tc.name,
58
+ input: tc.input,
59
+ });
60
+ export const fromLLMToolCalls = (llmToolCalls) => llmToolCalls.map(fromLLMToolCall);
61
+ // ============================================================================
62
+ // Core reducer - handles agent state, messages, session lifecycle
63
+ // ============================================================================
64
+ export const coreReducer = createTypedReducer([sessionEvents, agentEvents, toolEvents, llmEvents, contextEvents], (state, event) => {
65
+ switch (event.type) {
66
+ case 'session_closed':
67
+ return {
68
+ ...state,
69
+ status: 'closed',
70
+ closedAt: event.timestamp,
71
+ };
72
+ case 'session_reopened':
73
+ return {
74
+ ...state,
75
+ status: 'active',
76
+ closedAt: undefined,
77
+ };
78
+ case 'agent_spawned': {
79
+ // Increment agent counter for this definition name
80
+ const newAgentCounters = new Map(state.agentCounters);
81
+ const currentCount = newAgentCounters.get(event.definitionName) ?? 0;
82
+ newAgentCounters.set(event.definitionName, currentCount + 1);
83
+ const newState = addAgent({ ...state, agentCounters: newAgentCounters }, {
84
+ id: event.agentId,
85
+ definitionName: event.definitionName,
86
+ parentId: event.parentId,
87
+ status: 'pending',
88
+ conversationHistory: [],
89
+ preamble: [],
90
+ pendingToolCalls: [],
91
+ pendingToolResults: [],
92
+ pendingMessages: [],
93
+ typedInput: event.typedInput,
94
+ });
95
+ return newState;
96
+ }
97
+ case 'agent_state_changed':
98
+ return updateAgent(state, event.agentId, (agent) => ({
99
+ ...agent,
100
+ status: event.toState,
101
+ }));
102
+ case 'inference_started':
103
+ return updateAgent(state, event.agentId, (agent) => ({
104
+ ...agent,
105
+ status: 'inferring',
106
+ pendingMessages: [...agent.pendingMessages, ...event.messages],
107
+ }));
108
+ case 'inference_completed': {
109
+ const toolCalls = fromLLMToolCalls(event.response.toolCalls);
110
+ const assistantMessage = {
111
+ role: 'assistant',
112
+ content: event.response.content ?? '',
113
+ toolCalls: toolCalls.length > 0 ? toolCalls : undefined,
114
+ };
115
+ return updateAgent(state, event.agentId, (agent) => {
116
+ const hasToolCalls = toolCalls.length > 0;
117
+ return {
118
+ ...agent,
119
+ status: hasToolCalls ? 'tool_exec' : 'pending',
120
+ conversationHistory: [...agent.conversationHistory, ...agent.pendingMessages, assistantMessage],
121
+ pendingToolCalls: toolCalls,
122
+ pendingMessages: [],
123
+ pendingToolResults: [],
124
+ };
125
+ });
126
+ }
127
+ case 'inference_failed':
128
+ return updateAgent(state, event.agentId, (agent) => ({
129
+ ...agent,
130
+ status: 'errored',
131
+ conversationHistory: [...agent.conversationHistory, ...agent.pendingMessages],
132
+ pendingMessages: [],
133
+ }));
134
+ case 'tool_completed': {
135
+ return updateAgent(state, event.agentId, (agent) => {
136
+ const remaining = agent.pendingToolCalls.filter((tc) => tc.id !== event.toolCallId);
137
+ const toolName = agent.executingToolCall?.toolName
138
+ ?? agent.pendingToolCalls.find((tc) => tc.id === event.toolCallId)?.name
139
+ ?? 'unknown';
140
+ const pendingToolResult = {
141
+ toolCallId: event.toolCallId,
142
+ toolName,
143
+ timestamp: event.timestamp,
144
+ isError: false,
145
+ content: event.result,
146
+ };
147
+ return {
148
+ ...agent,
149
+ pendingToolCalls: remaining,
150
+ pendingToolResults: [...agent.pendingToolResults, pendingToolResult],
151
+ status: remaining.length === 0 ? 'pending' : 'tool_exec',
152
+ executingToolCall: undefined,
153
+ };
154
+ });
155
+ }
156
+ case 'tool_failed': {
157
+ return updateAgent(state, event.agentId, (agent) => {
158
+ const remaining = agent.pendingToolCalls.filter((tc) => tc.id !== event.toolCallId);
159
+ const toolName = agent.executingToolCall?.toolName
160
+ ?? agent.pendingToolCalls.find((tc) => tc.id === event.toolCallId)?.name
161
+ ?? 'unknown';
162
+ const pendingToolResult = {
163
+ toolCallId: event.toolCallId,
164
+ toolName,
165
+ timestamp: event.timestamp,
166
+ isError: true,
167
+ content: event.error,
168
+ };
169
+ return {
170
+ ...agent,
171
+ pendingToolCalls: remaining,
172
+ pendingToolResults: [...agent.pendingToolResults, pendingToolResult],
173
+ status: remaining.length === 0 ? 'pending' : 'tool_exec',
174
+ executingToolCall: undefined,
175
+ };
176
+ });
177
+ }
178
+ case 'context_compacted':
179
+ return updateAgent(state, event.agentId, (agent) => ({
180
+ ...agent,
181
+ conversationHistory: event.newConversationHistory.map((m) => {
182
+ switch (m.role) {
183
+ case 'user':
184
+ return {
185
+ role: 'user',
186
+ content: m.content,
187
+ sourceMessageIds: [],
188
+ };
189
+ case 'assistant':
190
+ return {
191
+ role: 'assistant',
192
+ content: m.content,
193
+ };
194
+ case 'system':
195
+ return {
196
+ role: 'system',
197
+ content: m.content,
198
+ };
199
+ }
200
+ }),
201
+ }));
202
+ case 'tool_started':
203
+ return updateAgent(state, event.agentId, (agent) => ({
204
+ ...agent,
205
+ executingToolCall: {
206
+ toolCallId: event.toolCallId,
207
+ toolName: event.toolName,
208
+ startedAt: event.timestamp,
209
+ },
210
+ }));
211
+ case 'session_restarted': {
212
+ const newAgents = new Map(state.agents);
213
+ for (const [agentId, agent] of state.agents) {
214
+ let updated = agent;
215
+ let changed = false;
216
+ if (agent.status === 'inferring' || agent.status === 'errored') {
217
+ updated = {
218
+ ...updated,
219
+ status: 'pending',
220
+ pendingMessages: [],
221
+ };
222
+ changed = true;
223
+ }
224
+ if (agent.executingToolCall !== undefined) {
225
+ updated = { ...updated, executingToolCall: undefined };
226
+ changed = true;
227
+ }
228
+ if (changed) {
229
+ newAgents.set(agentId, updated);
230
+ }
231
+ }
232
+ return { ...state, agents: newAgents };
233
+ }
234
+ case 'agent_conversation_spliced':
235
+ return updateAgent(state, event.agentId, (agent) => {
236
+ const newHistory = [...agent.conversationHistory];
237
+ newHistory.splice(event.start, event.deleteCount, ...(event.insert ?? []));
238
+ return {
239
+ ...agent,
240
+ conversationHistory: newHistory,
241
+ pendingToolCalls: [],
242
+ pendingToolResults: [],
243
+ pendingMessages: [],
244
+ executingToolCall: undefined,
245
+ status: 'pending',
246
+ };
247
+ });
248
+ case 'session_created': {
249
+ let updated = state;
250
+ if (event.workspaceDir) {
251
+ updated = { ...updated, workspaceDir: event.workspaceDir };
252
+ }
253
+ if (event.forkedFrom) {
254
+ updated = { ...updated, forkedFrom: event.forkedFrom };
255
+ }
256
+ return updated;
257
+ }
258
+ case 'handler_started':
259
+ return state;
260
+ case 'handler_completed': {
261
+ if (event.handlerName === 'onStart') {
262
+ return updateAgent(state, event.agentId, (agent) => ({
263
+ ...agent,
264
+ onStartCalled: true,
265
+ }));
266
+ }
267
+ return state;
268
+ }
269
+ case 'preamble_added':
270
+ return updateAgent(state, event.agentId, (agent) => ({
271
+ ...agent,
272
+ preamble: [...agent.preamble, ...event.messages],
273
+ }));
274
+ case 'session_handler_started':
275
+ case 'session_handler_completed':
276
+ return state;
277
+ case 'session_metadata_set': {
278
+ const newMetadata = new Map(state.metadata);
279
+ newMetadata.set(event.key, event.value);
280
+ return { ...state, metadata: newMetadata };
281
+ }
282
+ case 'agent_paused':
283
+ return updateAgent(state, event.agentId, (agent) => ({
284
+ ...agent,
285
+ status: 'paused',
286
+ pauseReason: event.reason,
287
+ pauseMessage: event.message,
288
+ }));
289
+ case 'agent_resumed':
290
+ return updateAgent(state, event.agentId, (agent) => ({
291
+ ...agent,
292
+ status: 'pending',
293
+ pauseReason: undefined,
294
+ pauseMessage: undefined,
295
+ }));
296
+ default:
297
+ // Plugin events are handled by their own state slices (composed in apply-event.ts)
298
+ return state;
299
+ }
300
+ });
301
+ // ============================================================================
302
+ // Reconstruct session state from events
303
+ // ============================================================================
304
+ export const isSessionCreatedEvent = (event) => event.type === 'session_created';
305
+ export const reconstructSessionState = (events, reducer) => {
306
+ if (events.length === 0)
307
+ return null;
308
+ const firstEvent = events[0];
309
+ if (!isSessionCreatedEvent(firstEvent)) {
310
+ throw new Error('First event must be session_created');
311
+ }
312
+ const initial = createSessionState(firstEvent.sessionId, firstEvent.presetId, firstEvent.timestamp);
313
+ return events.reduce(reducer, initial);
314
+ };
315
+ // ============================================================================
316
+ // Recovery helpers
317
+ // ============================================================================
318
+ export const checkRecoveryNeeded = (state) => {
319
+ const resetAgentIds = [];
320
+ const clearedToolAgentIds = [];
321
+ for (const [agentId, agent] of state.agents) {
322
+ if (agent.status === 'inferring' || agent.status === 'errored') {
323
+ resetAgentIds.push(agentId);
324
+ }
325
+ if (agent.executingToolCall !== undefined) {
326
+ clearedToolAgentIds.push(agentId);
327
+ }
328
+ }
329
+ if (resetAgentIds.length === 0 && clearedToolAgentIds.length === 0) {
330
+ return null;
331
+ }
332
+ return { resetAgentIds, clearedToolAgentIds };
333
+ };
334
+ // ============================================================================
335
+ // Helpers
336
+ // ============================================================================
337
+ const addAgent = (state, agent) => {
338
+ const newAgents = new Map(state.agents);
339
+ newAgents.set(agent.id, agent);
340
+ return { ...state, agents: newAgents };
341
+ };
342
+ const updateAgent = (state, agentId, updater) => {
343
+ const agent = state.agents.get(agentId);
344
+ if (!agent) {
345
+ throw new Error(`Agent not found: ${agentId}`);
346
+ }
347
+ const newAgents = new Map(state.agents);
348
+ newAgents.set(agentId, updater(agent));
349
+ return { ...state, agents: newAgents };
350
+ };
351
+ // ============================================================================
352
+ // Query helpers
353
+ // ============================================================================
354
+ export const getOrchestratorId = (state) => {
355
+ for (const agent of state.agents.values()) {
356
+ if (agent.definitionName === ORCHESTRATOR_ROLE)
357
+ return agent.id;
358
+ }
359
+ return null;
360
+ };
361
+ export const getCommunicatorId = (state) => {
362
+ for (const agent of state.agents.values()) {
363
+ if (agent.definitionName === COMMUNICATOR_ROLE)
364
+ return agent.id;
365
+ }
366
+ return null;
367
+ };
368
+ export const getEntryAgentId = (state) => {
369
+ return getCommunicatorId(state) ?? getOrchestratorId(state);
370
+ };
371
+ export const getAgentState = (state, agentId) => {
372
+ return state.agents.get(agentId) ?? null;
373
+ };
374
+ export const getNextAgentSeq = (state, definitionName) => {
375
+ return (state.agentCounters.get(definitionName) ?? 0) + 1;
376
+ };
377
+ //# sourceMappingURL=state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../src/core/sessions/state.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * System — Composition Root
3
+ *
4
+ * createSystem() is the main entry point that:
5
+ * - Accepts all plugin definitions and infrastructure dependencies
6
+ * - Composes plugins, creates SessionManager internally
7
+ * - Exposes typed method registry for RPC type inference
8
+ */
9
+ import { SessionManager } from './sessions/session-manager.js';
10
+ // ============================================================================
11
+ // createSystem
12
+ // ============================================================================
13
+ export function createSystem(options) {
14
+ const { plugins, eventStore, llmProvider, llmProviders, toolExecutor, presets, logger, basePath, dataFileStore, onUserOutput, preprocessorRegistry, llmLogger, portPool, platform, } = options;
15
+ // Build plugins accessor — typed record keyed by plugin name
16
+ const pluginsAccessor = {};
17
+ for (const plugin of plugins) {
18
+ pluginsAccessor[plugin.name] = plugin;
19
+ }
20
+ const sessionManager = new SessionManager({
21
+ eventStore,
22
+ llmProvider,
23
+ llmProviders,
24
+ toolExecutor,
25
+ presets,
26
+ logger,
27
+ basePath,
28
+ dataFileStore,
29
+ onUserOutput,
30
+ preprocessorRegistry,
31
+ llmLogger,
32
+ portPool,
33
+ platform,
34
+ systemPlugins: [...plugins],
35
+ });
36
+ // Collect method schemas from all plugins (no .create() needed)
37
+ const methodSchemas = {};
38
+ for (const plugin of plugins) {
39
+ // Manager methods
40
+ for (const [methodName, methodDef] of Object.entries(plugin.managerMethods)) {
41
+ methodSchemas[`${plugin.name}.${methodName}`] = {
42
+ input: methodDef.input,
43
+ output: methodDef.output,
44
+ };
45
+ }
46
+ // Session methods (available statically on PluginDefinition)
47
+ for (const [methodName, methodDef] of Object.entries(plugin.sessionMethods)) {
48
+ methodSchemas[`${plugin.name}.${methodName}`] = {
49
+ input: methodDef.input,
50
+ output: methodDef.output,
51
+ };
52
+ }
53
+ }
54
+ return {
55
+ sessionManager,
56
+ methodSchemas: methodSchemas,
57
+ plugins: pluginsAccessor,
58
+ async shutdown() {
59
+ await sessionManager.shutdown();
60
+ },
61
+ async loadAllSessions() {
62
+ await sessionManager.loadAllSessions();
63
+ },
64
+ };
65
+ }
66
+ //# sourceMappingURL=system.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system.js","sourceRoot":"","sources":["../../src/core/system.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAaH,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AA0G9D,+EAA+E;AAC/E,eAAe;AACf,+EAA+E;AAE/E,MAAM,UAAU,YAAY,CAC3B,OAAsC;IAEtC,MAAM,EACL,OAAO,EACP,UAAU,EACV,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,OAAO,EACP,MAAM,EACN,QAAQ,EACR,aAAa,EACb,YAAY,EACZ,oBAAoB,EACpB,SAAS,EACT,QAAQ,EACR,QAAQ,GACR,GAAG,OAAO,CAAA;IAEX,6DAA6D;IAC7D,MAAM,eAAe,GAAqC,EAAE,CAAA;IAC5D,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC9B,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAA;IACtC,CAAC;IAED,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC;QACzC,UAAU;QACV,WAAW;QACX,YAAY;QACZ,YAAY;QACZ,OAAO;QACP,MAAM;QACN,QAAQ;QACR,aAAa;QACb,YAAY;QACZ,oBAAoB;QACpB,SAAS;QACT,QAAQ;QACR,QAAQ;QACR,aAAa,EAAE,CAAC,GAAG,OAAO,CAAC;KAC3B,CAAC,CAAA;IAEF,gEAAgE;IAChE,MAAM,aAAa,GAAiC,EAAE,CAAA;IAEtD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC9B,kBAAkB;QAClB,KAAK,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC;YAC7E,aAAa,CAAC,GAAG,MAAM,CAAC,IAAI,IAAI,UAAU,EAAE,CAAC,GAAG;gBAC/C,KAAK,EAAE,SAAS,CAAC,KAAK;gBACtB,MAAM,EAAE,SAAS,CAAC,MAAM;aACxB,CAAA;QACF,CAAC;QAED,6DAA6D;QAC7D,KAAK,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC;YAC7E,aAAa,CAAC,GAAG,MAAM,CAAC,IAAI,IAAI,UAAU,EAAE,CAAC,GAAG;gBAC/C,KAAK,EAAE,SAAS,CAAC,KAAK;gBACtB,MAAM,EAAE,SAAS,CAAC,MAAM;aACxB,CAAA;QACF,CAAC;IACF,CAAC;IAED,OAAO;QACN,cAAc;QACd,aAAa,EAAE,aAA2C;QAC1D,OAAO,EAAE,eAA4C;QACrD,KAAK,CAAC,QAAQ;YACb,MAAM,cAAc,CAAC,QAAQ,EAAE,CAAA;QAChC,CAAC;QACD,KAAK,CAAC,eAAe;YACpB,MAAM,cAAc,CAAC,eAAe,EAAE,CAAA;QACvC,CAAC;KACD,CAAA;AACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/core/tools/context.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ export function createTool(args) {
2
+ return args;
3
+ }
4
+ //# sourceMappingURL=definition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"definition.js","sourceRoot":"","sources":["../../../src/core/tools/definition.ts"],"names":[],"mappings":"AAUA,MAAM,UAAU,UAAU,CACzB,IAA4B;IAE5B,OAAO,IAAI,CAAA;AACZ,CAAC"}