@agentick/core 0.0.1

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 (626) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +875 -0
  3. package/dist/.tsbuildinfo +1 -0
  4. package/dist/.tsbuildinfo.build +1 -0
  5. package/dist/agent.d.ts +32 -0
  6. package/dist/agent.d.ts.map +1 -0
  7. package/dist/agent.js +26 -0
  8. package/dist/agent.js.map +1 -0
  9. package/dist/agentick-instance.d.ts +285 -0
  10. package/dist/agentick-instance.d.ts.map +1 -0
  11. package/dist/agentick-instance.js +700 -0
  12. package/dist/agentick-instance.js.map +1 -0
  13. package/dist/aidk-instance.d.ts +294 -0
  14. package/dist/aidk-instance.d.ts.map +1 -0
  15. package/dist/aidk-instance.js +340 -0
  16. package/dist/aidk-instance.js.map +1 -0
  17. package/dist/app/session-store.d.ts +57 -0
  18. package/dist/app/session-store.d.ts.map +1 -0
  19. package/dist/app/session-store.js +87 -0
  20. package/dist/app/session-store.js.map +1 -0
  21. package/dist/app/session.d.ts +209 -0
  22. package/dist/app/session.d.ts.map +1 -0
  23. package/dist/app/session.js +2131 -0
  24. package/dist/app/session.js.map +1 -0
  25. package/dist/app/sqlite-session-store.d.ts +60 -0
  26. package/dist/app/sqlite-session-store.d.ts.map +1 -0
  27. package/dist/app/sqlite-session-store.js +234 -0
  28. package/dist/app/sqlite-session-store.js.map +1 -0
  29. package/dist/app/types.d.ts +1461 -0
  30. package/dist/app/types.d.ts.map +1 -0
  31. package/dist/app/types.js +14 -0
  32. package/dist/app/types.js.map +1 -0
  33. package/dist/app.d.ts +79 -0
  34. package/dist/app.d.ts.map +1 -0
  35. package/dist/app.js +83 -0
  36. package/dist/app.js.map +1 -0
  37. package/dist/channels/adapters/index.d.ts +2 -0
  38. package/dist/channels/adapters/index.d.ts.map +1 -0
  39. package/dist/channels/adapters/index.js +2 -0
  40. package/dist/channels/adapters/index.js.map +1 -0
  41. package/dist/channels/adapters/redis.d.ts +77 -0
  42. package/dist/channels/adapters/redis.d.ts.map +1 -0
  43. package/dist/channels/adapters/redis.js +259 -0
  44. package/dist/channels/adapters/redis.js.map +1 -0
  45. package/dist/channels/index.d.ts +38 -0
  46. package/dist/channels/index.d.ts.map +1 -0
  47. package/dist/channels/index.js +38 -0
  48. package/dist/channels/index.js.map +1 -0
  49. package/dist/channels/service.d.ts +684 -0
  50. package/dist/channels/service.d.ts.map +1 -0
  51. package/dist/channels/service.js +870 -0
  52. package/dist/channels/service.js.map +1 -0
  53. package/dist/channels/transports/index.d.ts +4 -0
  54. package/dist/channels/transports/index.d.ts.map +1 -0
  55. package/dist/channels/transports/index.js +4 -0
  56. package/dist/channels/transports/index.js.map +1 -0
  57. package/dist/channels/transports/socketio.d.ts +98 -0
  58. package/dist/channels/transports/socketio.d.ts.map +1 -0
  59. package/dist/channels/transports/socketio.js +246 -0
  60. package/dist/channels/transports/socketio.js.map +1 -0
  61. package/dist/channels/transports/streamable-http.d.ts +107 -0
  62. package/dist/channels/transports/streamable-http.d.ts.map +1 -0
  63. package/dist/channels/transports/streamable-http.js +353 -0
  64. package/dist/channels/transports/streamable-http.js.map +1 -0
  65. package/dist/channels/transports/websocket.d.ts +117 -0
  66. package/dist/channels/transports/websocket.d.ts.map +1 -0
  67. package/dist/channels/transports/websocket.js +416 -0
  68. package/dist/channels/transports/websocket.js.map +1 -0
  69. package/dist/com/index.d.ts +29 -0
  70. package/dist/com/index.d.ts.map +1 -0
  71. package/dist/com/index.js +29 -0
  72. package/dist/com/index.js.map +1 -0
  73. package/dist/com/object-model.d.ts +634 -0
  74. package/dist/com/object-model.d.ts.map +1 -0
  75. package/dist/com/object-model.js +963 -0
  76. package/dist/com/object-model.js.map +1 -0
  77. package/dist/com/types.d.ts +192 -0
  78. package/dist/com/types.d.ts.map +1 -0
  79. package/dist/com/types.js +1 -0
  80. package/dist/com/types.js.map +1 -0
  81. package/dist/compiler/collector.d.ts +16 -0
  82. package/dist/compiler/collector.d.ts.map +1 -0
  83. package/dist/compiler/collector.js +388 -0
  84. package/dist/compiler/collector.js.map +1 -0
  85. package/dist/compiler/content-block-registry.d.ts +11 -0
  86. package/dist/compiler/content-block-registry.d.ts.map +1 -0
  87. package/dist/compiler/content-block-registry.js +312 -0
  88. package/dist/compiler/content-block-registry.js.map +1 -0
  89. package/dist/compiler/extractors.d.ts +68 -0
  90. package/dist/compiler/extractors.d.ts.map +1 -0
  91. package/dist/compiler/extractors.js +547 -0
  92. package/dist/compiler/extractors.js.map +1 -0
  93. package/dist/compiler/fiber-compiler.d.ts +203 -0
  94. package/dist/compiler/fiber-compiler.d.ts.map +1 -0
  95. package/dist/compiler/fiber-compiler.js +498 -0
  96. package/dist/compiler/fiber-compiler.js.map +1 -0
  97. package/dist/compiler/fiber.d.ts +61 -0
  98. package/dist/compiler/fiber.d.ts.map +1 -0
  99. package/dist/compiler/fiber.js +244 -0
  100. package/dist/compiler/fiber.js.map +1 -0
  101. package/dist/compiler/index.d.ts +18 -0
  102. package/dist/compiler/index.d.ts.map +1 -0
  103. package/dist/compiler/index.js +38 -0
  104. package/dist/compiler/index.js.map +1 -0
  105. package/dist/compiler/scheduler.d.ts +95 -0
  106. package/dist/compiler/scheduler.d.ts.map +1 -0
  107. package/dist/compiler/scheduler.js +138 -0
  108. package/dist/compiler/scheduler.js.map +1 -0
  109. package/dist/compiler/structure-renderer.d.ts +42 -0
  110. package/dist/compiler/structure-renderer.d.ts.map +1 -0
  111. package/dist/compiler/structure-renderer.js +189 -0
  112. package/dist/compiler/structure-renderer.js.map +1 -0
  113. package/dist/compiler/types.d.ts +96 -0
  114. package/dist/compiler/types.d.ts.map +1 -0
  115. package/dist/compiler/types.js +19 -0
  116. package/dist/compiler/types.js.map +1 -0
  117. package/dist/component/component-hooks.d.ts +68 -0
  118. package/dist/component/component-hooks.d.ts.map +1 -0
  119. package/dist/component/component-hooks.js +112 -0
  120. package/dist/component/component-hooks.js.map +1 -0
  121. package/dist/component/component.d.ts +314 -0
  122. package/dist/component/component.d.ts.map +1 -0
  123. package/dist/component/component.js +64 -0
  124. package/dist/component/component.js.map +1 -0
  125. package/dist/component/index.d.ts +47 -0
  126. package/dist/component/index.d.ts.map +1 -0
  127. package/dist/component/index.js +47 -0
  128. package/dist/component/index.js.map +1 -0
  129. package/dist/component/tentickle-component.d.ts +185 -0
  130. package/dist/component/tentickle-component.d.ts.map +1 -0
  131. package/dist/component/tentickle-component.js +182 -0
  132. package/dist/component/tentickle-component.js.map +1 -0
  133. package/dist/content/index.d.ts +12 -0
  134. package/dist/content/index.d.ts.map +1 -0
  135. package/dist/content/index.js +17 -0
  136. package/dist/content/index.js.map +1 -0
  137. package/dist/context/index.d.ts +51 -0
  138. package/dist/context/index.d.ts.map +1 -0
  139. package/dist/context/index.js +69 -0
  140. package/dist/context/index.js.map +1 -0
  141. package/dist/core/channel-helpers.d.ts +31 -0
  142. package/dist/core/channel-helpers.d.ts.map +1 -0
  143. package/dist/core/channel-helpers.js +62 -0
  144. package/dist/core/channel-helpers.js.map +1 -0
  145. package/dist/core/channel.d.ts +164 -0
  146. package/dist/core/channel.d.ts.map +1 -0
  147. package/dist/core/channel.js +199 -0
  148. package/dist/core/channel.js.map +1 -0
  149. package/dist/core/context.d.ts +412 -0
  150. package/dist/core/context.d.ts.map +1 -0
  151. package/dist/core/context.js +290 -0
  152. package/dist/core/context.js.map +1 -0
  153. package/dist/core/event-buffer.d.ts +212 -0
  154. package/dist/core/event-buffer.d.ts.map +1 -0
  155. package/dist/core/event-buffer.js +346 -0
  156. package/dist/core/event-buffer.js.map +1 -0
  157. package/dist/core/execution-helpers.d.ts +179 -0
  158. package/dist/core/execution-helpers.d.ts.map +1 -0
  159. package/dist/core/execution-helpers.js +212 -0
  160. package/dist/core/execution-helpers.js.map +1 -0
  161. package/dist/core/execution-tracker.d.ts +53 -0
  162. package/dist/core/execution-tracker.d.ts.map +1 -0
  163. package/dist/core/execution-tracker.js +309 -0
  164. package/dist/core/execution-tracker.js.map +1 -0
  165. package/dist/core/index.d.ts +58 -0
  166. package/dist/core/index.d.ts.map +1 -0
  167. package/dist/core/index.js +58 -0
  168. package/dist/core/index.js.map +1 -0
  169. package/dist/core/logger.d.ts +341 -0
  170. package/dist/core/logger.d.ts.map +1 -0
  171. package/dist/core/logger.js +346 -0
  172. package/dist/core/logger.js.map +1 -0
  173. package/dist/core/metrics-helpers.d.ts +40 -0
  174. package/dist/core/metrics-helpers.d.ts.map +1 -0
  175. package/dist/core/metrics-helpers.js +72 -0
  176. package/dist/core/metrics-helpers.js.map +1 -0
  177. package/dist/core/otel-provider.d.ts +54 -0
  178. package/dist/core/otel-provider.d.ts.map +1 -0
  179. package/dist/core/otel-provider.js +107 -0
  180. package/dist/core/otel-provider.js.map +1 -0
  181. package/dist/core/procedure-graph.d.ts +136 -0
  182. package/dist/core/procedure-graph.d.ts.map +1 -0
  183. package/dist/core/procedure-graph.js +272 -0
  184. package/dist/core/procedure-graph.js.map +1 -0
  185. package/dist/core/procedure.d.ts +755 -0
  186. package/dist/core/procedure.d.ts.map +1 -0
  187. package/dist/core/procedure.js +899 -0
  188. package/dist/core/procedure.js.map +1 -0
  189. package/dist/core/stream.d.ts +106 -0
  190. package/dist/core/stream.d.ts.map +1 -0
  191. package/dist/core/stream.js +186 -0
  192. package/dist/core/stream.js.map +1 -0
  193. package/dist/core/telemetry.d.ts +182 -0
  194. package/dist/core/telemetry.d.ts.map +1 -0
  195. package/dist/core/telemetry.js +124 -0
  196. package/dist/core/telemetry.js.map +1 -0
  197. package/dist/engine/client-tool-coordinator.d.ts +50 -0
  198. package/dist/engine/client-tool-coordinator.d.ts.map +1 -0
  199. package/dist/engine/client-tool-coordinator.js +121 -0
  200. package/dist/engine/client-tool-coordinator.js.map +1 -0
  201. package/dist/engine/engine-events.d.ts +117 -0
  202. package/dist/engine/engine-events.d.ts.map +1 -0
  203. package/dist/engine/engine-events.js +178 -0
  204. package/dist/engine/engine-events.js.map +1 -0
  205. package/dist/engine/engine-response.d.ts +48 -0
  206. package/dist/engine/engine-response.d.ts.map +1 -0
  207. package/dist/engine/engine-response.js +2 -0
  208. package/dist/engine/engine-response.js.map +1 -0
  209. package/dist/engine/execution-graph.d.ts +104 -0
  210. package/dist/engine/execution-graph.d.ts.map +1 -0
  211. package/dist/engine/execution-graph.js +257 -0
  212. package/dist/engine/execution-graph.js.map +1 -0
  213. package/dist/engine/execution-handle.d.ts +212 -0
  214. package/dist/engine/execution-handle.d.ts.map +1 -0
  215. package/dist/engine/execution-handle.js +602 -0
  216. package/dist/engine/execution-handle.js.map +1 -0
  217. package/dist/engine/execution-types.d.ts +248 -0
  218. package/dist/engine/execution-types.d.ts.map +1 -0
  219. package/dist/engine/execution-types.js +23 -0
  220. package/dist/engine/execution-types.js.map +1 -0
  221. package/dist/engine/index.d.ts +21 -0
  222. package/dist/engine/index.d.ts.map +1 -0
  223. package/dist/engine/index.js +23 -0
  224. package/dist/engine/index.js.map +1 -0
  225. package/dist/engine/tool-confirmation-coordinator.d.ts +74 -0
  226. package/dist/engine/tool-confirmation-coordinator.d.ts.map +1 -0
  227. package/dist/engine/tool-confirmation-coordinator.js +137 -0
  228. package/dist/engine/tool-confirmation-coordinator.js.map +1 -0
  229. package/dist/engine/tool-executor.d.ts +127 -0
  230. package/dist/engine/tool-executor.d.ts.map +1 -0
  231. package/dist/engine/tool-executor.js +363 -0
  232. package/dist/engine/tool-executor.js.map +1 -0
  233. package/dist/hibernation/index.d.ts +126 -0
  234. package/dist/hibernation/index.d.ts.map +1 -0
  235. package/dist/hibernation/index.js +127 -0
  236. package/dist/hibernation/index.js.map +1 -0
  237. package/dist/hooks/base-hook-registry.d.ts +41 -0
  238. package/dist/hooks/base-hook-registry.d.ts.map +1 -0
  239. package/dist/hooks/base-hook-registry.js +76 -0
  240. package/dist/hooks/base-hook-registry.js.map +1 -0
  241. package/dist/hooks/com-state.d.ts +40 -0
  242. package/dist/hooks/com-state.d.ts.map +1 -0
  243. package/dist/hooks/com-state.js +90 -0
  244. package/dist/hooks/com-state.js.map +1 -0
  245. package/dist/hooks/context-info.d.ts +139 -0
  246. package/dist/hooks/context-info.d.ts.map +1 -0
  247. package/dist/hooks/context-info.js +115 -0
  248. package/dist/hooks/context-info.js.map +1 -0
  249. package/dist/hooks/context-internal.d.ts +21 -0
  250. package/dist/hooks/context-internal.d.ts.map +1 -0
  251. package/dist/hooks/context-internal.js +20 -0
  252. package/dist/hooks/context-internal.js.map +1 -0
  253. package/dist/hooks/context.d.ts +64 -0
  254. package/dist/hooks/context.d.ts.map +1 -0
  255. package/dist/hooks/context.js +83 -0
  256. package/dist/hooks/context.js.map +1 -0
  257. package/dist/hooks/data.d.ts +33 -0
  258. package/dist/hooks/data.d.ts.map +1 -0
  259. package/dist/hooks/data.js +84 -0
  260. package/dist/hooks/data.js.map +1 -0
  261. package/dist/hooks/formatter-context.d.ts +34 -0
  262. package/dist/hooks/formatter-context.d.ts.map +1 -0
  263. package/dist/hooks/formatter-context.js +34 -0
  264. package/dist/hooks/formatter-context.js.map +1 -0
  265. package/dist/hooks/hook-registry.d.ts +45 -0
  266. package/dist/hooks/hook-registry.d.ts.map +1 -0
  267. package/dist/hooks/hook-registry.js +109 -0
  268. package/dist/hooks/hook-registry.js.map +1 -0
  269. package/dist/hooks/index.d.ts +20 -0
  270. package/dist/hooks/index.d.ts.map +1 -0
  271. package/dist/hooks/index.js +47 -0
  272. package/dist/hooks/index.js.map +1 -0
  273. package/dist/hooks/knob.d.ts +87 -0
  274. package/dist/hooks/knob.d.ts.map +1 -0
  275. package/dist/hooks/knob.js +129 -0
  276. package/dist/hooks/knob.js.map +1 -0
  277. package/dist/hooks/knobs-component.d.ts +70 -0
  278. package/dist/hooks/knobs-component.d.ts.map +1 -0
  279. package/dist/hooks/knobs-component.js +300 -0
  280. package/dist/hooks/knobs-component.js.map +1 -0
  281. package/dist/hooks/lifecycle.d.ts +158 -0
  282. package/dist/hooks/lifecycle.d.ts.map +1 -0
  283. package/dist/hooks/lifecycle.js +217 -0
  284. package/dist/hooks/lifecycle.js.map +1 -0
  285. package/dist/hooks/message-context.d.ts +101 -0
  286. package/dist/hooks/message-context.d.ts.map +1 -0
  287. package/dist/hooks/message-context.js +145 -0
  288. package/dist/hooks/message-context.js.map +1 -0
  289. package/dist/hooks/policy-context.d.ts.map +1 -0
  290. package/dist/hooks/runtime-context.d.ts +122 -0
  291. package/dist/hooks/runtime-context.d.ts.map +1 -0
  292. package/dist/hooks/runtime-context.js +149 -0
  293. package/dist/hooks/runtime-context.js.map +1 -0
  294. package/dist/hooks/signal.d.ts +267 -0
  295. package/dist/hooks/signal.d.ts.map +1 -0
  296. package/dist/hooks/signal.js +825 -0
  297. package/dist/hooks/signal.js.map +1 -0
  298. package/dist/hooks/types.d.ts +179 -0
  299. package/dist/hooks/types.d.ts.map +1 -0
  300. package/dist/hooks/types.js +5 -0
  301. package/dist/hooks/types.js.map +1 -0
  302. package/dist/index.d.ts +20 -0
  303. package/dist/index.d.ts.map +1 -0
  304. package/dist/index.js +50 -0
  305. package/dist/index.js.map +1 -0
  306. package/dist/jsx/components/agent.d.ts +64 -0
  307. package/dist/jsx/components/agent.d.ts.map +1 -0
  308. package/dist/jsx/components/agent.js +80 -0
  309. package/dist/jsx/components/agent.js.map +1 -0
  310. package/dist/jsx/components/complete.d.ts +65 -0
  311. package/dist/jsx/components/complete.d.ts.map +1 -0
  312. package/dist/jsx/components/complete.js +64 -0
  313. package/dist/jsx/components/complete.js.map +1 -0
  314. package/dist/jsx/components/content.d.ts +98 -0
  315. package/dist/jsx/components/content.d.ts.map +1 -0
  316. package/dist/jsx/components/content.js +51 -0
  317. package/dist/jsx/components/content.js.map +1 -0
  318. package/dist/jsx/components/harness.d.ts +118 -0
  319. package/dist/jsx/components/harness.d.ts.map +1 -0
  320. package/dist/jsx/components/harness.js +117 -0
  321. package/dist/jsx/components/harness.js.map +1 -0
  322. package/dist/jsx/components/index.d.ts +11 -0
  323. package/dist/jsx/components/index.d.ts.map +1 -0
  324. package/dist/jsx/components/index.js +11 -0
  325. package/dist/jsx/components/index.js.map +1 -0
  326. package/dist/jsx/components/markdown.d.ts +31 -0
  327. package/dist/jsx/components/markdown.d.ts.map +1 -0
  328. package/dist/jsx/components/markdown.js +17 -0
  329. package/dist/jsx/components/markdown.js.map +1 -0
  330. package/dist/jsx/components/messages.d.ts +283 -0
  331. package/dist/jsx/components/messages.d.ts.map +1 -0
  332. package/dist/jsx/components/messages.js +257 -0
  333. package/dist/jsx/components/messages.js.map +1 -0
  334. package/dist/jsx/components/model.d.ts +94 -0
  335. package/dist/jsx/components/model.d.ts.map +1 -0
  336. package/dist/jsx/components/model.js +96 -0
  337. package/dist/jsx/components/model.js.map +1 -0
  338. package/dist/jsx/components/primitives.d.ts +117 -0
  339. package/dist/jsx/components/primitives.d.ts.map +1 -0
  340. package/dist/jsx/components/primitives.js +83 -0
  341. package/dist/jsx/components/primitives.js.map +1 -0
  342. package/dist/jsx/components/renderer.d.ts +24 -0
  343. package/dist/jsx/components/renderer.d.ts.map +1 -0
  344. package/dist/jsx/components/renderer.js +11 -0
  345. package/dist/jsx/components/renderer.js.map +1 -0
  346. package/dist/jsx/components/semantic.d.ts +155 -0
  347. package/dist/jsx/components/semantic.d.ts.map +1 -0
  348. package/dist/jsx/components/semantic.js +39 -0
  349. package/dist/jsx/components/semantic.js.map +1 -0
  350. package/dist/jsx/components/timeline.d.ts +157 -0
  351. package/dist/jsx/components/timeline.d.ts.map +1 -0
  352. package/dist/jsx/components/timeline.js +357 -0
  353. package/dist/jsx/components/timeline.js.map +1 -0
  354. package/dist/jsx/components/token-budget.d.ts +70 -0
  355. package/dist/jsx/components/token-budget.d.ts.map +1 -0
  356. package/dist/jsx/components/token-budget.js +135 -0
  357. package/dist/jsx/components/token-budget.js.map +1 -0
  358. package/dist/jsx/components/xml.d.ts +27 -0
  359. package/dist/jsx/components/xml.d.ts.map +1 -0
  360. package/dist/jsx/components/xml.js +17 -0
  361. package/dist/jsx/components/xml.js.map +1 -0
  362. package/dist/jsx/index.d.ts +58 -0
  363. package/dist/jsx/index.d.ts.map +1 -0
  364. package/dist/jsx/index.js +59 -0
  365. package/dist/jsx/index.js.map +1 -0
  366. package/dist/jsx/jsx-runtime.d.ts +370 -0
  367. package/dist/jsx/jsx-runtime.d.ts.map +1 -0
  368. package/dist/jsx/jsx-runtime.js +79 -0
  369. package/dist/jsx/jsx-runtime.js.map +1 -0
  370. package/dist/jsx/jsx-types.d.ts +23 -0
  371. package/dist/jsx/jsx-types.d.ts.map +1 -0
  372. package/dist/jsx/jsx-types.js +1 -0
  373. package/dist/jsx/jsx-types.js.map +1 -0
  374. package/dist/mcp/client.d.ts +46 -0
  375. package/dist/mcp/client.d.ts.map +1 -0
  376. package/dist/mcp/client.js +138 -0
  377. package/dist/mcp/client.js.map +1 -0
  378. package/dist/mcp/component.d.ts +95 -0
  379. package/dist/mcp/component.d.ts.map +1 -0
  380. package/dist/mcp/component.js +185 -0
  381. package/dist/mcp/component.js.map +1 -0
  382. package/dist/mcp/create-mcp-tool.d.ts +191 -0
  383. package/dist/mcp/create-mcp-tool.d.ts.map +1 -0
  384. package/dist/mcp/create-mcp-tool.js +228 -0
  385. package/dist/mcp/create-mcp-tool.js.map +1 -0
  386. package/dist/mcp/index.d.ts +49 -0
  387. package/dist/mcp/index.d.ts.map +1 -0
  388. package/dist/mcp/index.js +48 -0
  389. package/dist/mcp/index.js.map +1 -0
  390. package/dist/mcp/service.d.ts +39 -0
  391. package/dist/mcp/service.d.ts.map +1 -0
  392. package/dist/mcp/service.js +77 -0
  393. package/dist/mcp/service.js.map +1 -0
  394. package/dist/mcp/tool.d.ts +55 -0
  395. package/dist/mcp/tool.d.ts.map +1 -0
  396. package/dist/mcp/tool.js +119 -0
  397. package/dist/mcp/tool.js.map +1 -0
  398. package/dist/mcp/types.d.ts +72 -0
  399. package/dist/mcp/types.d.ts.map +1 -0
  400. package/dist/mcp/types.js +6 -0
  401. package/dist/mcp/types.js.map +1 -0
  402. package/dist/middleware/defaults.d.ts +9 -0
  403. package/dist/middleware/defaults.d.ts.map +1 -0
  404. package/dist/middleware/defaults.js +47 -0
  405. package/dist/middleware/defaults.js.map +1 -0
  406. package/dist/model/adapter-helpers.d.ts +161 -0
  407. package/dist/model/adapter-helpers.d.ts.map +1 -0
  408. package/dist/model/adapter-helpers.js +351 -0
  409. package/dist/model/adapter-helpers.js.map +1 -0
  410. package/dist/model/adapter.d.ts +399 -0
  411. package/dist/model/adapter.d.ts.map +1 -0
  412. package/dist/model/adapter.js +497 -0
  413. package/dist/model/adapter.js.map +1 -0
  414. package/dist/model/index.d.ts +54 -0
  415. package/dist/model/index.d.ts.map +1 -0
  416. package/dist/model/index.js +55 -0
  417. package/dist/model/index.js.map +1 -0
  418. package/dist/model/model-hooks.d.ts +45 -0
  419. package/dist/model/model-hooks.d.ts.map +1 -0
  420. package/dist/model/model-hooks.js +24 -0
  421. package/dist/model/model-hooks.js.map +1 -0
  422. package/dist/model/model.d.ts +302 -0
  423. package/dist/model/model.d.ts.map +1 -0
  424. package/dist/model/model.js +20 -0
  425. package/dist/model/model.js.map +1 -0
  426. package/dist/model/simple-adapter.d.ts +176 -0
  427. package/dist/model/simple-adapter.d.ts.map +1 -0
  428. package/dist/model/simple-adapter.js +264 -0
  429. package/dist/model/simple-adapter.js.map +1 -0
  430. package/dist/model/stream-accumulator.d.ts +284 -0
  431. package/dist/model/stream-accumulator.d.ts.map +1 -0
  432. package/dist/model/stream-accumulator.js +532 -0
  433. package/dist/model/stream-accumulator.js.map +1 -0
  434. package/dist/model/utils/index.d.ts +2 -0
  435. package/dist/model/utils/index.d.ts.map +1 -0
  436. package/dist/model/utils/index.js +2 -0
  437. package/dist/model/utils/index.js.map +1 -0
  438. package/dist/model/utils/language-model.d.ts +26 -0
  439. package/dist/model/utils/language-model.d.ts.map +1 -0
  440. package/dist/model/utils/language-model.js +706 -0
  441. package/dist/model/utils/language-model.js.map +1 -0
  442. package/dist/procedure/index.d.ts +20 -0
  443. package/dist/procedure/index.d.ts.map +1 -0
  444. package/dist/procedure/index.js +19 -0
  445. package/dist/procedure/index.js.map +1 -0
  446. package/dist/reconciler/devtools-bridge.d.ts +40 -0
  447. package/dist/reconciler/devtools-bridge.d.ts.map +1 -0
  448. package/dist/reconciler/devtools-bridge.js +79 -0
  449. package/dist/reconciler/devtools-bridge.js.map +1 -0
  450. package/dist/reconciler/host-config.d.ts +39 -0
  451. package/dist/reconciler/host-config.d.ts.map +1 -0
  452. package/dist/reconciler/host-config.js +195 -0
  453. package/dist/reconciler/host-config.js.map +1 -0
  454. package/dist/reconciler/index.d.ts +7 -0
  455. package/dist/reconciler/index.d.ts.map +1 -0
  456. package/dist/reconciler/index.js +7 -0
  457. package/dist/reconciler/index.js.map +1 -0
  458. package/dist/reconciler/reconciler.d.ts +47 -0
  459. package/dist/reconciler/reconciler.d.ts.map +1 -0
  460. package/dist/reconciler/reconciler.js +89 -0
  461. package/dist/reconciler/reconciler.js.map +1 -0
  462. package/dist/reconciler/types.d.ts +86 -0
  463. package/dist/reconciler/types.d.ts.map +1 -0
  464. package/dist/reconciler/types.js +37 -0
  465. package/dist/reconciler/types.js.map +1 -0
  466. package/dist/renderers/base.d.ts +98 -0
  467. package/dist/renderers/base.d.ts.map +1 -0
  468. package/dist/renderers/base.js +82 -0
  469. package/dist/renderers/base.js.map +1 -0
  470. package/dist/renderers/index.d.ts +31 -0
  471. package/dist/renderers/index.d.ts.map +1 -0
  472. package/dist/renderers/index.js +31 -0
  473. package/dist/renderers/index.js.map +1 -0
  474. package/dist/renderers/markdown.d.ts +48 -0
  475. package/dist/renderers/markdown.d.ts.map +1 -0
  476. package/dist/renderers/markdown.js +432 -0
  477. package/dist/renderers/markdown.js.map +1 -0
  478. package/dist/renderers/types.d.ts +7 -0
  479. package/dist/renderers/types.d.ts.map +1 -0
  480. package/dist/renderers/types.js +7 -0
  481. package/dist/renderers/types.js.map +1 -0
  482. package/dist/renderers/xml.d.ts +49 -0
  483. package/dist/renderers/xml.d.ts.map +1 -0
  484. package/dist/renderers/xml.js +444 -0
  485. package/dist/renderers/xml.js.map +1 -0
  486. package/dist/state/boundary.d.ts +347 -0
  487. package/dist/state/boundary.d.ts.map +1 -0
  488. package/dist/state/boundary.js +341 -0
  489. package/dist/state/boundary.js.map +1 -0
  490. package/dist/state/context.d.ts +138 -0
  491. package/dist/state/context.d.ts.map +1 -0
  492. package/dist/state/context.js +139 -0
  493. package/dist/state/context.js.map +1 -0
  494. package/dist/state/hooks.d.ts +798 -0
  495. package/dist/state/hooks.d.ts.map +1 -0
  496. package/dist/state/hooks.js +1437 -0
  497. package/dist/state/hooks.js.map +1 -0
  498. package/dist/state/index.d.ts +72 -0
  499. package/dist/state/index.d.ts.map +1 -0
  500. package/dist/state/index.js +73 -0
  501. package/dist/state/index.js.map +1 -0
  502. package/dist/state/signal.d.ts +223 -0
  503. package/dist/state/signal.d.ts.map +1 -0
  504. package/dist/state/signal.js +699 -0
  505. package/dist/state/signal.js.map +1 -0
  506. package/dist/state/use-state.d.ts +210 -0
  507. package/dist/state/use-state.d.ts.map +1 -0
  508. package/dist/state/use-state.js +327 -0
  509. package/dist/state/use-state.js.map +1 -0
  510. package/dist/tentickle-instance.d.ts +285 -0
  511. package/dist/tentickle-instance.d.ts.map +1 -0
  512. package/dist/tentickle-instance.js +700 -0
  513. package/dist/tentickle-instance.js.map +1 -0
  514. package/dist/testing/act.d.ts +59 -0
  515. package/dist/testing/act.d.ts.map +1 -0
  516. package/dist/testing/act.js +92 -0
  517. package/dist/testing/act.js.map +1 -0
  518. package/dist/testing/async-helpers.d.ts +99 -0
  519. package/dist/testing/async-helpers.d.ts.map +1 -0
  520. package/dist/testing/async-helpers.js +193 -0
  521. package/dist/testing/async-helpers.js.map +1 -0
  522. package/dist/testing/compile-agent.d.ts +101 -0
  523. package/dist/testing/compile-agent.d.ts.map +1 -0
  524. package/dist/testing/compile-agent.js +136 -0
  525. package/dist/testing/compile-agent.js.map +1 -0
  526. package/dist/testing/index.d.ts +57 -0
  527. package/dist/testing/index.d.ts.map +1 -0
  528. package/dist/testing/index.js +59 -0
  529. package/dist/testing/index.js.map +1 -0
  530. package/dist/testing/mock-app.d.ts +163 -0
  531. package/dist/testing/mock-app.d.ts.map +1 -0
  532. package/dist/testing/mock-app.js +393 -0
  533. package/dist/testing/mock-app.js.map +1 -0
  534. package/dist/testing/mocks.d.ts +142 -0
  535. package/dist/testing/mocks.d.ts.map +1 -0
  536. package/dist/testing/mocks.js +191 -0
  537. package/dist/testing/mocks.js.map +1 -0
  538. package/dist/testing/render-agent.d.ts +146 -0
  539. package/dist/testing/render-agent.d.ts.map +1 -0
  540. package/dist/testing/render-agent.js +200 -0
  541. package/dist/testing/render-agent.js.map +1 -0
  542. package/dist/testing/test-adapter.d.ts +157 -0
  543. package/dist/testing/test-adapter.d.ts.map +1 -0
  544. package/dist/testing/test-adapter.js +297 -0
  545. package/dist/testing/test-adapter.js.map +1 -0
  546. package/dist/testing/test-model.d.ts +132 -0
  547. package/dist/testing/test-model.d.ts.map +1 -0
  548. package/dist/testing/test-model.js +260 -0
  549. package/dist/testing/test-model.js.map +1 -0
  550. package/dist/tool/index.d.ts +61 -0
  551. package/dist/tool/index.d.ts.map +1 -0
  552. package/dist/tool/index.js +63 -0
  553. package/dist/tool/index.js.map +1 -0
  554. package/dist/tool/tool-hooks.d.ts +45 -0
  555. package/dist/tool/tool-hooks.d.ts.map +1 -0
  556. package/dist/tool/tool-hooks.js +35 -0
  557. package/dist/tool/tool-hooks.js.map +1 -0
  558. package/dist/tool/tool.d.ts +403 -0
  559. package/dist/tool/tool.d.ts.map +1 -0
  560. package/dist/tool/tool.js +176 -0
  561. package/dist/tool/tool.js.map +1 -0
  562. package/dist/types.d.ts +442 -0
  563. package/dist/types.d.ts.map +1 -0
  564. package/dist/types.js +97 -0
  565. package/dist/types.js.map +1 -0
  566. package/dist/utils/abort-utils.d.ts +5 -0
  567. package/dist/utils/abort-utils.d.ts.map +1 -0
  568. package/dist/utils/abort-utils.js +50 -0
  569. package/dist/utils/abort-utils.js.map +1 -0
  570. package/dist/utils/classify-error.d.ts +19 -0
  571. package/dist/utils/classify-error.d.ts.map +1 -0
  572. package/dist/utils/classify-error.js +77 -0
  573. package/dist/utils/classify-error.js.map +1 -0
  574. package/dist/utils/index.d.ts +21 -0
  575. package/dist/utils/index.d.ts.map +1 -0
  576. package/dist/utils/index.js +21 -0
  577. package/dist/utils/index.js.map +1 -0
  578. package/dist/utils/normalization.d.ts +6 -0
  579. package/dist/utils/normalization.d.ts.map +1 -0
  580. package/dist/utils/normalization.js +103 -0
  581. package/dist/utils/normalization.js.map +1 -0
  582. package/dist/utils/registry.d.ts +15 -0
  583. package/dist/utils/registry.d.ts.map +1 -0
  584. package/dist/utils/registry.js +28 -0
  585. package/dist/utils/registry.js.map +1 -0
  586. package/dist/utils/schema.d.ts +7 -0
  587. package/dist/utils/schema.d.ts.map +1 -0
  588. package/dist/utils/schema.js +13 -0
  589. package/dist/utils/schema.js.map +1 -0
  590. package/dist/utils/token-estimate.d.ts +87 -0
  591. package/dist/utils/token-estimate.d.ts.map +1 -0
  592. package/dist/utils/token-estimate.js +199 -0
  593. package/dist/utils/token-estimate.js.map +1 -0
  594. package/dist/v2/reconciler/host-config.d.ts +31 -0
  595. package/dist/v2/reconciler/host-config.d.ts.map +1 -0
  596. package/dist/v2/reconciler/host-config.js +197 -0
  597. package/dist/v2/reconciler/host-config.js.map +1 -0
  598. package/dist/v2/reconciler/index.d.ts +7 -0
  599. package/dist/v2/reconciler/index.d.ts.map +1 -0
  600. package/dist/v2/reconciler/index.js +7 -0
  601. package/dist/v2/reconciler/index.js.map +1 -0
  602. package/dist/v2/reconciler/reconciler.d.ts +39 -0
  603. package/dist/v2/reconciler/reconciler.d.ts.map +1 -0
  604. package/dist/v2/reconciler/reconciler.js +54 -0
  605. package/dist/v2/reconciler/reconciler.js.map +1 -0
  606. package/dist/v2/reconciler/types.d.ts +64 -0
  607. package/dist/v2/reconciler/types.d.ts.map +1 -0
  608. package/dist/v2/reconciler/types.js +20 -0
  609. package/dist/v2/reconciler/types.js.map +1 -0
  610. package/dist/v2/renderers/index.d.ts +7 -0
  611. package/dist/v2/renderers/index.d.ts.map +1 -0
  612. package/dist/v2/renderers/index.js +7 -0
  613. package/dist/v2/renderers/index.js.map +1 -0
  614. package/dist/v2/renderers/markdown.d.ts +16 -0
  615. package/dist/v2/renderers/markdown.d.ts.map +1 -0
  616. package/dist/v2/renderers/markdown.js +65 -0
  617. package/dist/v2/renderers/markdown.js.map +1 -0
  618. package/dist/v2/renderers/types.d.ts +26 -0
  619. package/dist/v2/renderers/types.d.ts.map +1 -0
  620. package/dist/v2/renderers/types.js +6 -0
  621. package/dist/v2/renderers/types.js.map +1 -0
  622. package/dist/v2/renderers/xml.d.ts +17 -0
  623. package/dist/v2/renderers/xml.d.ts.map +1 -0
  624. package/dist/v2/renderers/xml.js +73 -0
  625. package/dist/v2/renderers/xml.js.map +1 -0
  626. package/package.json +49 -0
@@ -0,0 +1,24 @@
1
+ import { BaseHookRegistry } from "../hooks/base-hook-registry";
2
+ /**
3
+ * Model-specific hook registry.
4
+ * Uses BaseHookRegistry to reduce code duplication.
5
+ *
6
+ * Note: Global hooks via configureEngine() have been deprecated.
7
+ * Use Agentick.use() for middleware registration instead.
8
+ */
9
+ export class ModelHookRegistry extends BaseHookRegistry {
10
+ getAllHookNames() {
11
+ return ["fromEngineState", "generate", "stream", "toEngineState"];
12
+ }
13
+ /**
14
+ * Get all middleware for a model hook.
15
+ * Returns instance-specific hooks only.
16
+ *
17
+ * Note: Global hooks via configureEngine() have been deprecated.
18
+ * Use Agentick.use() for middleware registration instead.
19
+ */
20
+ getMiddleware(hookName) {
21
+ return this.registry.getMiddleware(hookName, () => []);
22
+ }
23
+ }
24
+ //# sourceMappingURL=model-hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model-hooks.js","sourceRoot":"","sources":["../../src/model/model-hooks.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AA6C/D;;;;;;GAMG;AACH,MAAM,OAAO,iBAAkB,SAAQ,gBAItC;IACW,eAAe;QACvB,OAAO,CAAC,iBAAiB,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,CAAU,CAAC;IAC7E,CAAC;IAED;;;;;;OAMG;IACH,aAAa,CAA0B,QAAW;QAChD,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,CAChC,QAAQ,EACR,GAAG,EAAE,CAAC,EAAE,CACT,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,302 @@
1
+ /**
2
+ * Model System
3
+ *
4
+ * EngineModel is the primary interface for models in the engine.
5
+ * Use createAdapter() from ./adapter.ts to create model adapters.
6
+ */
7
+ import type { Procedure } from "@agentick/kernel";
8
+ import type { ModelInput as BaseModelInput, ModelOutput as BaseModelOutput, ModelConfig as BaseModelConfig, ModelToolReference as BaseModelToolReference } from "@agentick/shared/models";
9
+ import type { StreamEvent } from "@agentick/shared/streaming";
10
+ import type { Message } from "@agentick/shared/messages";
11
+ import type { COMInput, TokenEstimator } from "../com/types";
12
+ import type { EngineResponse } from "../engine/engine-response";
13
+ import type { EventBlock, TextBlock, ContentBlock } from "@agentick/shared";
14
+ import type { LibraryGenerationOptions, ProviderGenerationOptions, DelimiterConfig, EventBlockDelimiters } from "../types";
15
+ import type { ExecutableTool, ToolDefinition, ToolMetadata } from "../tool/tool";
16
+ export type { BaseModelToolReference, BaseModelConfig, BaseModelInput, BaseModelOutput };
17
+ /**
18
+ * EngineModel is the primary interface for models.
19
+ * All models (created via createAdapter) conform to this interface.
20
+ *
21
+ * @example
22
+ * ```typescript
23
+ * import { createAdapter } from '@agentick/core/model';
24
+ *
25
+ * const model = createAdapter({
26
+ * metadata: { id: 'my-model', provider: 'my-provider', capabilities: [] },
27
+ * prepareInput: (input) => ({ ... }),
28
+ * mapChunk: (chunk) => ({ type: 'text', delta: chunk.text }),
29
+ * execute: (input) => provider.generate(input),
30
+ * executeStream: (input) => provider.stream(input),
31
+ * });
32
+ * ```
33
+ */
34
+ export interface EngineModel<TModelInput = ModelInput, TModelOutput = ModelOutput> {
35
+ /** Model metadata (id, description, capabilities, etc.) */
36
+ metadata: ModelMetadata;
37
+ /** Generate a response (non-streaming) */
38
+ generate: Procedure<(input: TModelInput) => Promise<TModelOutput>>;
39
+ /** Generate a streaming response */
40
+ stream?: Procedure<(input: TModelInput) => AsyncIterable<StreamEvent>>;
41
+ /** Convert engine state (COMInput) to model input */
42
+ fromEngineState?: (input: COMInput) => Promise<TModelInput>;
43
+ /** Convert model output to engine response */
44
+ toEngineState?: (output: TModelOutput) => Promise<EngineResponse>;
45
+ /** Aggregate stream events into final output */
46
+ processStream?: (events: StreamEvent[]) => Promise<TModelOutput>;
47
+ /** Transform model input to provider-specific format (for DevTools visibility) */
48
+ getProviderInput?: (input: TModelInput) => Promise<unknown>;
49
+ }
50
+ /**
51
+ * Type guard: checks if value is an EngineModel.
52
+ */
53
+ export declare function isEngineModel(value: any): value is EngineModel;
54
+ /**
55
+ * Unified message transformation configuration.
56
+ * Handles both event and ephemeral content transformation.
57
+ */
58
+ export interface MessageTransformationConfig {
59
+ /**
60
+ * Preferred renderer for content formatting.
61
+ * Can be:
62
+ * - String: Static renderer type ('markdown' | 'xml')
63
+ * - Function: Dynamic renderer selection based on model ID
64
+ *
65
+ * @example
66
+ * preferredRenderer: 'markdown'
67
+ *
68
+ * @example
69
+ * preferredRenderer: (modelId: string) => {
70
+ * if (modelId.includes('claude')) return 'markdown';
71
+ * if (modelId.includes('gpt-4')) return 'markdown';
72
+ * return 'markdown'; // default
73
+ * }
74
+ */
75
+ preferredRenderer?: "markdown" | "xml" | ((modelId: string, provider?: string) => "markdown" | "xml");
76
+ /**
77
+ * Role mapping for transformed messages.
78
+ * Controls how event/ephemeral messages are converted to model-understandable roles.
79
+ */
80
+ roleMapping?: {
81
+ /**
82
+ * Role to use for event messages.
83
+ * - 'user': Most compatible, treat as user context
84
+ * - 'developer': Use developer role (Claude, newer OpenAI)
85
+ * - 'event': Keep as event (adapter handles model-specific mapping)
86
+ * - 'system': Treat as system context
87
+ */
88
+ event?: "user" | "developer" | "event" | "system";
89
+ /**
90
+ * Role to use for ephemeral messages.
91
+ * - 'user': Most compatible
92
+ * - 'developer': Use developer role (Claude, newer OpenAI)
93
+ * - 'system': Treat as system context
94
+ */
95
+ ephemeral?: "user" | "developer" | "system";
96
+ };
97
+ /**
98
+ * Delimiter configuration for transformed content.
99
+ * When useDelimiters is true, content is wrapped with delimiters.
100
+ */
101
+ delimiters?: {
102
+ /** Delimiter for event content */
103
+ event?: DelimiterConfig | EventBlockDelimiters;
104
+ /** Delimiter for ephemeral content */
105
+ ephemeral?: DelimiterConfig;
106
+ /** Global toggle for delimiter usage */
107
+ useDelimiters?: boolean;
108
+ };
109
+ /**
110
+ * Custom formatter for full control over event block transformation.
111
+ * When provided, overrides delimiter-based formatting.
112
+ */
113
+ formatBlock?: (block: EventBlock | TextBlock) => ContentBlock[];
114
+ /**
115
+ * Position for ephemeral content in the message list (CSS-inspired).
116
+ * - 'flow': Keep in declaration order (default)
117
+ * - 'start': Move to beginning (after system)
118
+ * - 'end': Move to end
119
+ * - 'before-user': Move to just before last user message
120
+ * - 'after-system': Move to just after system messages
121
+ */
122
+ ephemeralPosition?: "flow" | "start" | "end" | "before-user" | "after-system";
123
+ }
124
+ export interface ModelCapabilities {
125
+ stream?: boolean;
126
+ toolCalls?: boolean;
127
+ provider?: string;
128
+ /**
129
+ * Message transformation configuration.
130
+ * Can be:
131
+ * - Static config object
132
+ * - Function that returns config based on model ID
133
+ *
134
+ * @example
135
+ * messageTransformation: {
136
+ * preferredRenderer: 'markdown',
137
+ * roleMapping: { event: 'user', ephemeral: 'user' }
138
+ * }
139
+ *
140
+ * @example
141
+ * messageTransformation: (modelId: string, provider?: string) => ({
142
+ * preferredRenderer: modelId.includes('claude') ? 'markdown' : 'markdown',
143
+ * roleMapping: {
144
+ * event: provider === 'anthropic' ? 'developer' : 'user',
145
+ * ephemeral: provider === 'anthropic' ? 'developer' : 'user'
146
+ * }
147
+ * })
148
+ */
149
+ messageTransformation?: MessageTransformationConfig | ((modelId: string, provider?: string) => MessageTransformationConfig);
150
+ }
151
+ /**
152
+ * Model operations supported by adapters.
153
+ *
154
+ * Used by the Model component's `operation` prop to specify which
155
+ * model method to invoke during execution.
156
+ *
157
+ * Core operations (available on all language models):
158
+ * - 'generate': Non-streaming text generation (default)
159
+ * - 'stream': Streaming text generation
160
+ *
161
+ * Extended operations (adapter-specific, may require specific model types):
162
+ * - 'generateObject': Structured output generation
163
+ * - 'streamObject': Streaming structured output
164
+ * - 'generateImage': Image generation
165
+ * - 'editImage': Image editing
166
+ * - 'embed': Generate embeddings
167
+ * - 'countTokens': Token counting
168
+ * - 'transcribe': Audio to text
169
+ * - 'speak': Text to audio
170
+ */
171
+ export type ModelOperation = "generate" | "stream" | "generateObject" | "streamObject" | "generateImage" | "editImage" | "embed" | "countTokens" | "transcribe" | "speak" | (string & {});
172
+ export interface ModelMetadata {
173
+ id: string;
174
+ model?: string;
175
+ description?: string;
176
+ version?: string;
177
+ provider?: string;
178
+ type?: "language" | "image" | "embedding" | "vision";
179
+ capabilities: ModelCapabilities[];
180
+ /** Context window size in tokens (adapter-provided takes precedence over catalog) */
181
+ contextWindow?: number;
182
+ /** Maximum output tokens per response */
183
+ maxOutputTokens?: number;
184
+ /** Whether the model supports vision/image input */
185
+ supportsVision?: boolean;
186
+ /** Whether the model supports tool/function calling */
187
+ supportsToolUse?: boolean;
188
+ /** Whether this is a reasoning model (extended thinking) */
189
+ isReasoningModel?: boolean;
190
+ /** Token estimator function (e.g., tiktoken). If provided, used instead of default char/4 heuristic. */
191
+ tokenEstimator?: TokenEstimator;
192
+ }
193
+ /**
194
+ * Model input (normalized across all providers)
195
+ *
196
+ * Extends the base ModelInput from @agentick/shared with backend-specific fields.
197
+ */
198
+ export interface ModelInput extends BaseModelInput {
199
+ /**
200
+ * Provider-specific generation options.
201
+ * Used for model generation/streaming calls and other operations.
202
+ * Each adapter can extend this type using module augmentation.
203
+ */
204
+ providerOptions?: ProviderGenerationOptions;
205
+ /**
206
+ * Adapter-specific options (keyed by library: ai-sdk, langchain, llamaindex, etc.).
207
+ * Used to pass library-specific configuration that isn't provider-specific.
208
+ * Each adapter package extends LibraryGenerationOptions via module augmentation.
209
+ *
210
+ * Note: If an adapter has its own providerOptions concept, provide them here
211
+ * under the adapter key. The adapter will merge them with ModelInput.providerOptions.
212
+ */
213
+ libraryOptions?: LibraryGenerationOptions;
214
+ /**
215
+ * Message transformation configuration.
216
+ * Controls how event and ephemeral messages are transformed for the model.
217
+ * Can be set per-request to override model-level defaults.
218
+ *
219
+ * @see MessageTransformationConfig
220
+ */
221
+ messageTransformation?: Partial<MessageTransformationConfig>;
222
+ /**
223
+ * Engine-level metadata
224
+ */
225
+ engineMetadata?: Record<string, unknown>;
226
+ /**
227
+ * Engine-level sections
228
+ */
229
+ engineSections?: Array<{
230
+ id: string;
231
+ title?: string;
232
+ content?: any;
233
+ visibility?: string;
234
+ audience?: "model" | "human" | "system";
235
+ ttlMs?: number;
236
+ ttlTicks?: number;
237
+ }>;
238
+ /**
239
+ * Cached content reference
240
+ */
241
+ cacheId?: string;
242
+ }
243
+ /**
244
+ * Model output (normalized across all providers)
245
+ *
246
+ * Extends the base ModelOutput from @agentick/shared with backend-specific fields.
247
+ */
248
+ export interface ModelOutput extends BaseModelOutput {
249
+ /**
250
+ * Cache ID if content was cached
251
+ */
252
+ cacheId?: string;
253
+ /**
254
+ * Raw provider response
255
+ */
256
+ raw: any;
257
+ }
258
+ export type ModelToolReference = BaseModelToolReference | ToolDefinition | ToolMetadata | ExecutableTool;
259
+ export interface NormalizedModelTool {
260
+ id: string;
261
+ metadata: ToolMetadata;
262
+ }
263
+ /**
264
+ * Normalized model input (after message normalization)
265
+ */
266
+ export interface NormalizedModelInput extends Omit<ModelInput, "messages" | "tools"> {
267
+ messages: Message[];
268
+ model: string;
269
+ tools: NormalizedModelTool[];
270
+ }
271
+ /**
272
+ * Model operations interface
273
+ */
274
+ export interface ModelOperations {
275
+ /**
276
+ * Generate completion (non-streaming)
277
+ */
278
+ generate: Procedure<(input: ModelInput) => ModelOutput>;
279
+ /**
280
+ * Generate completion (streaming)
281
+ */
282
+ stream: Procedure<(input: ModelInput) => AsyncIterable<StreamEvent>>;
283
+ }
284
+ /**
285
+ * Model configuration
286
+ *
287
+ * Extends the base ModelConfig from @agentick/shared with backend-specific fields.
288
+ */
289
+ export interface ModelConfig extends BaseModelConfig {
290
+ /**
291
+ * Provider-specific generation options.
292
+ * Used for model generation/streaming calls and other operations.
293
+ */
294
+ providerOptions?: Record<string, any>;
295
+ /**
296
+ * Message transformation configuration.
297
+ * Controls how event and ephemeral messages are transformed for the model.
298
+ * @see MessageTransformationConfig
299
+ */
300
+ messageTransformation?: Partial<MessageTransformationConfig>;
301
+ }
302
+ //# sourceMappingURL=model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/model/model.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Model System
3
+ *
4
+ * EngineModel is the primary interface for models in the engine.
5
+ * Use createAdapter() from ./adapter.ts to create model adapters.
6
+ */
7
+ // ============================================================================
8
+ // Utilities
9
+ // ============================================================================
10
+ /**
11
+ * Type guard: checks if value is an EngineModel.
12
+ */
13
+ export function isEngineModel(value) {
14
+ return (value &&
15
+ typeof value === "object" &&
16
+ "metadata" in value &&
17
+ "generate" in value &&
18
+ typeof value.generate === "function");
19
+ }
20
+ //# sourceMappingURL=model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../src/model/model.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAoEH,+EAA+E;AAC/E,YAAY;AACZ,+EAA+E;AAE/E;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,KAAU;IACtC,OAAO,CACL,KAAK;QACL,OAAO,KAAK,KAAK,QAAQ;QACzB,UAAU,IAAI,KAAK;QACnB,UAAU,IAAI,KAAK;QACnB,OAAO,KAAK,CAAC,QAAQ,KAAK,UAAU,CACrC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,176 @@
1
+ /**
2
+ * Simple Adapter - Minimal API for creating model adapters
3
+ *
4
+ * This provides the simplest possible API for creating adapters.
5
+ * Adapters only need to implement:
6
+ * 1. prepareInput - convert engine input to provider format
7
+ * 2. mapChunk - convert provider chunk to AdapterDelta
8
+ * 3. execute/executeStream - call the provider
9
+ *
10
+ * The framework handles everything else (accumulation, events, etc.).
11
+ *
12
+ * @module tentickle/model/simple-adapter
13
+ */
14
+ import type { COMInput } from "../com/types";
15
+ import type { EngineResponse } from "../engine/engine-response";
16
+ import type { EngineModel, ModelInput, ModelOutput, ModelMetadata } from "./model";
17
+ import { type AdapterDelta, type ChunkMapping } from "./stream-accumulator";
18
+ /**
19
+ * Options for createSimpleAdapter.
20
+ *
21
+ * This is the minimal interface for creating an adapter. Compare to the
22
+ * full createModel API which requires implementing transformers.processChunk,
23
+ * transformers.processOutput, transformers.processStream, etc.
24
+ *
25
+ * @example
26
+ * ```typescript
27
+ * const model = createSimpleAdapter({
28
+ * metadata: { id: 'openai:gpt-4', provider: 'openai', capabilities: [{ stream: true, toolCalls: true }] },
29
+ *
30
+ * prepareInput: (input) => ({
31
+ * model: 'gpt-4',
32
+ * messages: input.messages.map(toOpenAIMessage),
33
+ * tools: input.tools?.map(toOpenAITool),
34
+ * }),
35
+ *
36
+ * mapChunk: (chunk) => {
37
+ * if (chunk.choices?.[0]?.delta?.content) {
38
+ * return { type: 'text', delta: chunk.choices[0].delta.content };
39
+ * }
40
+ * return null;
41
+ * },
42
+ *
43
+ * execute: async (input) => openai.chat.completions.create(input),
44
+ * executeStream: (input) => openai.chat.completions.create({ ...input, stream: true }),
45
+ * });
46
+ * ```
47
+ */
48
+ export interface SimpleAdapterOptions<TProviderInput, TProviderOutput, TChunk> {
49
+ /** Model metadata */
50
+ metadata: ModelMetadata;
51
+ /**
52
+ * Convert engine ModelInput to provider-specific input format.
53
+ * This is the only complex transformation you need to implement.
54
+ */
55
+ prepareInput: (input: ModelInput) => TProviderInput | Promise<TProviderInput>;
56
+ /**
57
+ * Map a provider stream chunk to an AdapterDelta.
58
+ * Return null to skip/ignore the chunk.
59
+ *
60
+ * This replaces the 200+ line switch statement in typical adapters.
61
+ *
62
+ * @example
63
+ * ```typescript
64
+ * mapChunk: (chunk) => {
65
+ * if (chunk.type === 'text-delta') return { type: 'text', delta: chunk.text };
66
+ * if (chunk.type === 'tool-call') return { type: 'tool_call', id: chunk.id, name: chunk.name, input: chunk.args };
67
+ * if (chunk.type === 'finish') return { type: 'message_end', stopReason: StopReason.STOP };
68
+ * return null;
69
+ * }
70
+ * ```
71
+ */
72
+ mapChunk: (chunk: TChunk) => AdapterDelta | null;
73
+ /**
74
+ * Execute non-streaming generation.
75
+ */
76
+ execute: (input: TProviderInput) => Promise<TProviderOutput>;
77
+ /**
78
+ * Execute streaming generation.
79
+ * Returns an async iterable of provider chunks.
80
+ */
81
+ executeStream?: (input: TProviderInput) => AsyncIterable<TChunk>;
82
+ /**
83
+ * Convert non-streaming provider output to ModelOutput.
84
+ * Optional - if not provided, streaming will be used and accumulated.
85
+ */
86
+ processOutput?: (output: TProviderOutput) => ModelOutput | Promise<ModelOutput>;
87
+ /**
88
+ * Custom fromEngineState (optional).
89
+ * Converts COMInput to ModelInput before prepareInput.
90
+ * Most adapters don't need this - the default handles standard transformations.
91
+ */
92
+ fromEngineState?: (input: COMInput) => ModelInput | Promise<ModelInput>;
93
+ /**
94
+ * Custom toEngineState (optional).
95
+ * Converts ModelOutput to EngineResponse.
96
+ * Most adapters don't need this - the default handles standard transformations.
97
+ */
98
+ toEngineState?: (output: ModelOutput) => EngineResponse | Promise<EngineResponse>;
99
+ }
100
+ /**
101
+ * Declarative options using ChunkMapping instead of mapChunk function.
102
+ */
103
+ export interface DeclarativeAdapterOptions<TProviderInput, TProviderOutput, TChunk> extends Omit<SimpleAdapterOptions<TProviderInput, TProviderOutput, TChunk>, "mapChunk"> {
104
+ /**
105
+ * Declarative chunk mapping.
106
+ * Alternative to mapChunk for simple cases.
107
+ */
108
+ chunkMapping: ChunkMapping<TChunk>;
109
+ }
110
+ /**
111
+ * Create an adapter with the simplest possible API.
112
+ *
113
+ * This wraps createLanguageModel with sensible defaults:
114
+ * - Uses StreamAccumulator for stream handling (no manual accumulation)
115
+ * - Uses default fromEngineState/toEngineState (standard transformations)
116
+ * - Automatically generates StreamEvents from AdapterDeltas
117
+ *
118
+ * @example
119
+ * ```typescript
120
+ * import { createSimpleAdapter, StopReason } from '@tentickle/core/model';
121
+ * import { openai } from '@ai-sdk/openai';
122
+ *
123
+ * const model = createSimpleAdapter({
124
+ * metadata: {
125
+ * id: 'ai-sdk:gpt-4',
126
+ * provider: 'ai-sdk',
127
+ * capabilities: [{ stream: true, toolCalls: true }],
128
+ * },
129
+ *
130
+ * prepareInput: (input) => ({
131
+ * model: openai('gpt-4'),
132
+ * messages: toAiSdkMessages(input.messages),
133
+ * tools: convertToolsToToolSet(input.tools),
134
+ * }),
135
+ *
136
+ * mapChunk: (chunk) => {
137
+ * switch (chunk.type) {
138
+ * case 'text-delta': return { type: 'text', delta: chunk.text };
139
+ * case 'reasoning-delta': return { type: 'reasoning', delta: chunk.text };
140
+ * case 'tool-call': return { type: 'tool_call', id: chunk.toolCallId, name: chunk.toolName, input: chunk.args };
141
+ * case 'finish': return { type: 'message_end', stopReason: StopReason.STOP, usage: chunk.totalUsage };
142
+ * default: return null;
143
+ * }
144
+ * },
145
+ *
146
+ * execute: (input) => generateText(input),
147
+ * executeStream: (input) => streamText(input).fullStream,
148
+ * });
149
+ * ```
150
+ */
151
+ export declare function createSimpleAdapter<TProviderInput, TProviderOutput, TChunk>(options: SimpleAdapterOptions<TProviderInput, TProviderOutput, TChunk>): EngineModel<ModelInput, ModelOutput>;
152
+ /**
153
+ * Create an adapter using declarative chunk mapping.
154
+ *
155
+ * This is even simpler than createSimpleAdapter for cases where
156
+ * chunk mapping can be expressed declaratively.
157
+ *
158
+ * @example
159
+ * ```typescript
160
+ * const model = createDeclarativeAdapter({
161
+ * metadata: { id: 'my-model', ... },
162
+ * prepareInput: (input) => ({ ... }),
163
+ * execute: (input) => provider.call(input),
164
+ * executeStream: (input) => provider.stream(input),
165
+ * chunkMapping: {
166
+ * text: { type: 'text-delta', extract: (c) => c.text },
167
+ * toolCall: { type: 'tool-call', extract: (c) => ({ id: c.id, name: c.name, input: c.args }) },
168
+ * messageEnd: { type: 'finish', extract: (c) => ({ stopReason: StopReason.STOP }) },
169
+ * },
170
+ * });
171
+ * ```
172
+ */
173
+ export declare function createDeclarativeAdapter<TProviderInput, TProviderOutput, TChunk extends {
174
+ type: string;
175
+ }>(options: DeclarativeAdapterOptions<TProviderInput, TProviderOutput, TChunk>): EngineModel<ModelInput, ModelOutput>;
176
+ //# sourceMappingURL=simple-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simple-adapter.d.ts","sourceRoot":"","sources":["../../src/model/simple-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAEnF,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,YAAY,EAElB,MAAM,sBAAsB,CAAC;AAQ9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,WAAW,oBAAoB,CAAC,cAAc,EAAE,eAAe,EAAE,MAAM;IAC3E,qBAAqB;IACrB,QAAQ,EAAE,aAAa,CAAC;IAExB;;;OAGG;IACH,YAAY,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAE9E;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,YAAY,GAAG,IAAI,CAAC;IAEjD;;OAEG;IACH,OAAO,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;IAE7D;;;OAGG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,aAAa,CAAC,MAAM,CAAC,CAAC;IAEjE;;;OAGG;IACH,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAEhF;;;;OAIG;IACH,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAExE;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CACnF;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB,CAAC,cAAc,EAAE,eAAe,EAAE,MAAM,CAAE,SAAQ,IAAI,CAC9F,oBAAoB,CAAC,cAAc,EAAE,eAAe,EAAE,MAAM,CAAC,EAC7D,UAAU,CACX;IACC;;;OAGG;IACH,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;CACpC;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,eAAe,EAAE,MAAM,EACzE,OAAO,EAAE,oBAAoB,CAAC,cAAc,EAAE,eAAe,EAAE,MAAM,CAAC,GACrE,WAAW,CAAC,UAAU,EAAE,WAAW,CAAC,CAwGtC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,wBAAwB,CACtC,cAAc,EACd,eAAe,EACf,MAAM,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAE/B,OAAO,EAAE,yBAAyB,CAAC,cAAc,EAAE,eAAe,EAAE,MAAM,CAAC,GAC1E,WAAW,CAAC,UAAU,EAAE,WAAW,CAAC,CAQtC"}