@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,244 @@
1
+ /**
2
+ * Fiber Node Management
3
+ *
4
+ * Handles fiber creation, cloning, and tree manipulation.
5
+ */
6
+ import { FiberFlags } from "./types";
7
+ // ============================================================================
8
+ // Fiber Creation
9
+ // ============================================================================
10
+ let _fiberIdCounter = 0;
11
+ /**
12
+ * Create a new fiber node.
13
+ */
14
+ export function createFiber(type, props, key = null) {
15
+ const fiber = {
16
+ // Identity
17
+ type,
18
+ key,
19
+ // Props
20
+ props,
21
+ pendingProps: null,
22
+ // State
23
+ stateNode: null,
24
+ memoizedState: null,
25
+ // Tree
26
+ parent: null,
27
+ child: null,
28
+ sibling: null,
29
+ index: 0,
30
+ // Refs
31
+ ref: typeof props.ref === "string" ? props.ref : null,
32
+ // Work tracking
33
+ flags: FiberFlags.NoFlags,
34
+ subtreeFlags: FiberFlags.NoFlags,
35
+ deletions: null,
36
+ // Double buffering
37
+ alternate: null,
38
+ // Rendering
39
+ renderer: null,
40
+ // Debug
41
+ debugName: getDebugName(type),
42
+ };
43
+ return fiber;
44
+ }
45
+ /**
46
+ * Create a work-in-progress fiber from an existing fiber.
47
+ * This enables double-buffering for safe updates.
48
+ */
49
+ export function createWorkInProgress(current, pendingProps) {
50
+ let workInProgress = current.alternate;
51
+ if (workInProgress === null) {
52
+ // First update - create new WIP fiber
53
+ workInProgress = createFiber(current.type, pendingProps, current.key);
54
+ workInProgress.stateNode = current.stateNode;
55
+ workInProgress.alternate = current;
56
+ current.alternate = workInProgress;
57
+ }
58
+ else {
59
+ // Subsequent update - reuse WIP fiber
60
+ workInProgress.props = pendingProps;
61
+ workInProgress.pendingProps = null;
62
+ workInProgress.type = current.type;
63
+ // Reset flags
64
+ workInProgress.flags = FiberFlags.NoFlags;
65
+ workInProgress.subtreeFlags = FiberFlags.NoFlags;
66
+ workInProgress.deletions = null;
67
+ }
68
+ // Copy memoized state (hooks linked list)
69
+ workInProgress.memoizedState = current.memoizedState;
70
+ // Copy tree pointers (will be updated during reconciliation)
71
+ workInProgress.child = current.child;
72
+ workInProgress.index = current.index;
73
+ // Copy other properties
74
+ workInProgress.ref = current.ref;
75
+ workInProgress.renderer = current.renderer;
76
+ return workInProgress;
77
+ }
78
+ /**
79
+ * Clone a fiber for use in a different location.
80
+ */
81
+ export function cloneFiber(fiber, overrides = {}) {
82
+ return {
83
+ ...fiber,
84
+ // Reset tree pointers
85
+ parent: null,
86
+ child: null,
87
+ sibling: null,
88
+ // Reset work flags
89
+ flags: FiberFlags.NoFlags,
90
+ subtreeFlags: FiberFlags.NoFlags,
91
+ deletions: null,
92
+ // No alternate for clones
93
+ alternate: null,
94
+ // Apply overrides
95
+ ...overrides,
96
+ };
97
+ }
98
+ // ============================================================================
99
+ // Tree Traversal
100
+ // ============================================================================
101
+ /**
102
+ * Get all child fibers as an array.
103
+ */
104
+ export function getChildFibers(fiber) {
105
+ const children = [];
106
+ let child = fiber?.child ?? null;
107
+ while (child !== null) {
108
+ children.push(child);
109
+ child = child.sibling;
110
+ }
111
+ return children;
112
+ }
113
+ /**
114
+ * Find a fiber by key among siblings.
115
+ */
116
+ export function findFiberByKey(firstChild, key) {
117
+ let fiber = firstChild;
118
+ while (fiber !== null) {
119
+ if (fiber.key === key) {
120
+ return fiber;
121
+ }
122
+ fiber = fiber.sibling;
123
+ }
124
+ return null;
125
+ }
126
+ /**
127
+ * Traverse fiber tree depth-first, calling callback on each fiber.
128
+ */
129
+ export async function traverseFiber(fiber, callback) {
130
+ if (fiber === null)
131
+ return;
132
+ await callback(fiber);
133
+ let child = fiber.child;
134
+ while (child !== null) {
135
+ await traverseFiber(child, callback);
136
+ child = child.sibling;
137
+ }
138
+ }
139
+ /**
140
+ * Traverse fiber tree bottom-up (children first, then parent).
141
+ */
142
+ export async function traverseFiberBottomUp(fiber, callback) {
143
+ if (fiber === null)
144
+ return;
145
+ // Process children first
146
+ let child = fiber.child;
147
+ while (child !== null) {
148
+ await traverseFiberBottomUp(child, callback);
149
+ child = child.sibling;
150
+ }
151
+ // Then this fiber
152
+ await callback(fiber);
153
+ }
154
+ // ============================================================================
155
+ // Hook State Helpers
156
+ // ============================================================================
157
+ /**
158
+ * Get the number of hooks on a fiber.
159
+ */
160
+ export function getHookCount(fiber) {
161
+ let count = 0;
162
+ let hook = fiber.memoizedState;
163
+ while (hook !== null) {
164
+ count++;
165
+ hook = hook.next;
166
+ }
167
+ return count;
168
+ }
169
+ /**
170
+ * Get hook at a specific index.
171
+ */
172
+ export function getHookAtIndex(fiber, index) {
173
+ let hook = fiber.memoizedState;
174
+ let i = 0;
175
+ while (hook !== null && i < index) {
176
+ hook = hook.next;
177
+ i++;
178
+ }
179
+ return hook;
180
+ }
181
+ // ============================================================================
182
+ // Debugging
183
+ // ============================================================================
184
+ /**
185
+ * Get a debug name for a component type.
186
+ */
187
+ function getDebugName(type) {
188
+ if (typeof type === "function") {
189
+ return type.name || "Anonymous";
190
+ }
191
+ if (typeof type === "string") {
192
+ return type;
193
+ }
194
+ if (typeof type === "symbol") {
195
+ return type.description || "Symbol";
196
+ }
197
+ return "Unknown";
198
+ }
199
+ /**
200
+ * Create a debug string representation of a fiber.
201
+ */
202
+ export function fiberToDebugString(fiber) {
203
+ const key = fiber.key !== null ? ` key="${fiber.key}"` : "";
204
+ const flags = fiber.flags !== 0 ? ` flags=${fiber.flags}` : "";
205
+ return `<${fiber.debugName}${key}${flags}>`;
206
+ }
207
+ /**
208
+ * Create a debug tree representation.
209
+ */
210
+ export function fiberTreeToDebugString(fiber, indent = 0) {
211
+ if (fiber === null)
212
+ return "";
213
+ const prefix = " ".repeat(indent);
214
+ let result = prefix + fiberToDebugString(fiber) + "\n";
215
+ let child = fiber.child;
216
+ while (child !== null) {
217
+ result += fiberTreeToDebugString(child, indent + 1);
218
+ child = child.sibling;
219
+ }
220
+ return result;
221
+ }
222
+ // ============================================================================
223
+ // Renderer Context
224
+ // ============================================================================
225
+ /**
226
+ * Find the nearest renderer in the fiber tree.
227
+ */
228
+ export function findNearestRenderer(fiber) {
229
+ let current = fiber;
230
+ while (current !== null) {
231
+ if (current.renderer !== null) {
232
+ return current.renderer;
233
+ }
234
+ current = current.parent;
235
+ }
236
+ return null;
237
+ }
238
+ /**
239
+ * Set renderer on fiber and mark for propagation.
240
+ */
241
+ export function setFiberRenderer(fiber, renderer) {
242
+ fiber.renderer = renderer;
243
+ }
244
+ //# sourceMappingURL=fiber.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fiber.js","sourceRoot":"","sources":["../../src/compiler/fiber.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Compiler
3
+ *
4
+ * The v2 fiber compiler using react-reconciler.
5
+ *
6
+ * @module agentick/compiler
7
+ */
8
+ export { FiberCompiler, createFiberCompiler, type FiberCompilerConfig, type ReconcileOptions, type SerializedFiberNode, type SerializedHookState, type HookType, type FiberSummary, } from "./fiber-compiler";
9
+ export { collect } from "./collector";
10
+ export { StructureRenderer } from "./structure-renderer";
11
+ export { ReconciliationScheduler, type ReconcileEvent, type ReconciliationSchedulerOptions, type SchedulerState, } from "./scheduler";
12
+ export type { CompiledStructure, CompiledSection, CompiledTimelineEntry, CompiledTool, CompiledEphemeral, CompileResult, } from "./types";
13
+ export { createEmptyCompiledStructure } from "./types";
14
+ export { useCom, useTickState, AgentickProvider } from "../hooks";
15
+ export { useOnMount, useOnUnmount, useOnTickStart, useOnTickEnd, useAfterCompile, useContinuation, } from "../hooks";
16
+ export { useData, useInvalidateData } from "../hooks";
17
+ export { useSignal, useComputed, createSignal, signal, computed, effect, batch, untracked, runWithSignalContext, runWithSignalContextAsync, } from "../hooks";
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/compiler/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,QAAQ,EACb,KAAK,YAAY,GAClB,MAAM,kBAAkB,CAAC;AAM1B,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAMtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAMzD,OAAO,EACL,uBAAuB,EACvB,KAAK,cAAc,EACnB,KAAK,8BAA8B,EACnC,KAAK,cAAc,GACpB,MAAM,aAAa,CAAC;AAMrB,YAAY,EACV,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACrB,YAAY,EACZ,iBAAiB,EACjB,aAAa,GACd,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,4BAA4B,EAAE,MAAM,SAAS,CAAC;AAOvD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAGlE,OAAO,EACL,UAAU,EACV,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,eAAe,EACf,eAAe,GAChB,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAGtD,OAAO,EACL,SAAS,EACT,WAAW,EACX,YAAY,EACZ,MAAM,EACN,QAAQ,EACR,MAAM,EACN,KAAK,EACL,SAAS,EACT,oBAAoB,EACpB,yBAAyB,GAC1B,MAAM,UAAU,CAAC"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Compiler
3
+ *
4
+ * The v2 fiber compiler using react-reconciler.
5
+ *
6
+ * @module agentick/compiler
7
+ */
8
+ // ============================================================================
9
+ // Compiler
10
+ // ============================================================================
11
+ export { FiberCompiler, createFiberCompiler, } from "./fiber-compiler";
12
+ // ============================================================================
13
+ // Collector
14
+ // ============================================================================
15
+ export { collect } from "./collector";
16
+ // ============================================================================
17
+ // Structure Renderer
18
+ // ============================================================================
19
+ export { StructureRenderer } from "./structure-renderer";
20
+ // ============================================================================
21
+ // Scheduler
22
+ // ============================================================================
23
+ export { ReconciliationScheduler, } from "./scheduler";
24
+ export { createEmptyCompiledStructure } from "./types";
25
+ // ============================================================================
26
+ // Hooks (re-exported from hooks directory)
27
+ // ============================================================================
28
+ // Context hooks
29
+ export { useCom, useTickState, AgentickProvider } from "../hooks";
30
+ // Lifecycle hooks
31
+ export { useOnMount, useOnUnmount, useOnTickStart, useOnTickEnd, useAfterCompile, useContinuation, } from "../hooks";
32
+ // Data hook
33
+ export { useData, useInvalidateData } from "../hooks";
34
+ // Signal hooks and utilities
35
+ export { useSignal, useComputed, createSignal, signal, computed, effect, batch, untracked, runWithSignalContext, runWithSignalContextAsync, } from "../hooks";
36
+ // Standard React hooks are used directly from React
37
+ // import { useState, useEffect, useMemo, useCallback, useRef, useReducer } from 'react';
38
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/compiler/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,+EAA+E;AAC/E,WAAW;AACX,+EAA+E;AAE/E,OAAO,EACL,aAAa,EACb,mBAAmB,GAOpB,MAAM,kBAAkB,CAAC;AAE1B,+EAA+E;AAC/E,YAAY;AACZ,+EAA+E;AAE/E,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,+EAA+E;AAC/E,qBAAqB;AACrB,+EAA+E;AAE/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,+EAA+E;AAC/E,YAAY;AACZ,+EAA+E;AAE/E,OAAO,EACL,uBAAuB,GAIxB,MAAM,aAAa,CAAC;AAerB,OAAO,EAAE,4BAA4B,EAAE,MAAM,SAAS,CAAC;AAEvD,+EAA+E;AAC/E,2CAA2C;AAC3C,+EAA+E;AAE/E,gBAAgB;AAChB,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAElE,kBAAkB;AAClB,OAAO,EACL,UAAU,EACV,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,eAAe,EACf,eAAe,GAChB,MAAM,UAAU,CAAC;AAElB,YAAY;AACZ,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAEtD,6BAA6B;AAC7B,OAAO,EACL,SAAS,EACT,WAAW,EACX,YAAY,EACZ,MAAM,EACN,QAAQ,EACR,MAAM,EACN,KAAK,EACL,SAAS,EACT,oBAAoB,EACpB,yBAAyB,GAC1B,MAAM,UAAU,CAAC;AAElB,oDAAoD;AACpD,yFAAyF"}
@@ -0,0 +1,95 @@
1
+ /**
2
+ * V2 Reconciliation Scheduler
3
+ *
4
+ * Manages reconciliation timing and batching for the v2 fiber compiler.
5
+ *
6
+ * In v2 with react-reconciler:
7
+ * - The React tree stays mounted (persistent fiber root)
8
+ * - State changes trigger React's own reconciliation
9
+ * - This scheduler coordinates when to notify listeners about reconciliation
10
+ * - Batches multiple schedule() calls in the same microtask
11
+ */
12
+ import type { FiberCompiler } from "./fiber-compiler";
13
+ export interface ReconcileEvent {
14
+ /** Reason for reconciliation */
15
+ reason: string;
16
+ /** Timestamp of reconciliation */
17
+ timestamp: number;
18
+ /** Whether this was during a tick (deferred) or idle */
19
+ deferred: boolean;
20
+ }
21
+ /**
22
+ * Current state of the reconciliation scheduler.
23
+ * Used for DevTools and debugging.
24
+ */
25
+ export interface SchedulerState {
26
+ /** Whether the scheduler is currently executing a tick */
27
+ isExecutingTick: boolean;
28
+ /** Whether a reconciliation is scheduled */
29
+ isScheduled: boolean;
30
+ /** Pending reconciliation reasons */
31
+ pendingReasons: string[];
32
+ /** Deferred reconciliation reasons (during tick) */
33
+ deferredReasons: string[];
34
+ }
35
+ export interface ReconciliationSchedulerOptions {
36
+ /** Callback when reconciliation completes */
37
+ onReconcile?: (event: ReconcileEvent) => void;
38
+ /** Delay before executing reconciliation (for debouncing) */
39
+ debounceMs?: number;
40
+ }
41
+ /**
42
+ * Coordinates reconciliation timing for the fiber compiler.
43
+ *
44
+ * Features:
45
+ * - Batches multiple schedule() calls in the same microtask
46
+ * - Defers reconciliation during tick execution
47
+ * - Emits events when reconciliation completes
48
+ */
49
+ export declare class ReconciliationScheduler {
50
+ private compiler;
51
+ private options;
52
+ private pendingReasons;
53
+ private isScheduled;
54
+ private isExecutingTick;
55
+ private deferredReasons;
56
+ constructor(compiler: FiberCompiler, options?: ReconciliationSchedulerOptions);
57
+ /**
58
+ * Schedule a reconciliation.
59
+ *
60
+ * Multiple calls in the same microtask are batched.
61
+ * Calls during tick execution are deferred until the tick completes.
62
+ */
63
+ schedule(reason: string): void;
64
+ /**
65
+ * Mark that a tick is starting.
66
+ * Reconciliation requests during a tick will be deferred.
67
+ */
68
+ enterTick(): void;
69
+ /**
70
+ * Mark that a tick has completed.
71
+ * Flushes any deferred reconciliation requests.
72
+ */
73
+ exitTick(): void;
74
+ /**
75
+ * Flush pending reconciliation requests.
76
+ */
77
+ private flush;
78
+ /**
79
+ * Check if there are pending reconciliation requests.
80
+ */
81
+ hasPending(): boolean;
82
+ /**
83
+ * Clear all pending reconciliation requests.
84
+ */
85
+ clear(): void;
86
+ /**
87
+ * Dispose of the scheduler.
88
+ */
89
+ dispose(): void;
90
+ /**
91
+ * Get the current scheduler state.
92
+ */
93
+ getState(): SchedulerState;
94
+ }
95
+ //# sourceMappingURL=scheduler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../../src/compiler/scheduler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAMtD,MAAM,WAAW,cAAc;IAC7B,gCAAgC;IAChC,MAAM,EAAE,MAAM,CAAC;IAEf,kCAAkC;IAClC,SAAS,EAAE,MAAM,CAAC;IAElB,wDAAwD;IACxD,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,0DAA0D;IAC1D,eAAe,EAAE,OAAO,CAAC;IAEzB,4CAA4C;IAC5C,WAAW,EAAE,OAAO,CAAC;IAErB,qCAAqC;IACrC,cAAc,EAAE,MAAM,EAAE,CAAC;IAEzB,oDAAoD;IACpD,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,8BAA8B;IAC7C,6CAA6C;IAC7C,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;IAE9C,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAMD;;;;;;;GAOG;AACH,qBAAa,uBAAuB;IAClC,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,OAAO,CAAiC;IAGhD,OAAO,CAAC,cAAc,CAAgB;IACtC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,eAAe,CAAgB;gBAE3B,QAAQ,EAAE,aAAa,EAAE,OAAO,GAAE,8BAAmC;IAKjF;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAgB9B;;;OAGG;IACH,SAAS,IAAI,IAAI;IAIjB;;;OAGG;IACH,QAAQ,IAAI,IAAI;IAchB;;OAEG;IACH,OAAO,CAAC,KAAK;IAgCb;;OAEG;IACH,UAAU,IAAI,OAAO;IAIrB;;OAEG;IACH,KAAK,IAAI,IAAI;IAMb;;OAEG;IACH,OAAO,IAAI,IAAI;IAIf;;OAEG;IACH,QAAQ,IAAI,cAAc;CAQ3B"}
@@ -0,0 +1,138 @@
1
+ /**
2
+ * V2 Reconciliation Scheduler
3
+ *
4
+ * Manages reconciliation timing and batching for the v2 fiber compiler.
5
+ *
6
+ * In v2 with react-reconciler:
7
+ * - The React tree stays mounted (persistent fiber root)
8
+ * - State changes trigger React's own reconciliation
9
+ * - This scheduler coordinates when to notify listeners about reconciliation
10
+ * - Batches multiple schedule() calls in the same microtask
11
+ */
12
+ // ============================================================================
13
+ // ReconciliationScheduler
14
+ // ============================================================================
15
+ /**
16
+ * Coordinates reconciliation timing for the fiber compiler.
17
+ *
18
+ * Features:
19
+ * - Batches multiple schedule() calls in the same microtask
20
+ * - Defers reconciliation during tick execution
21
+ * - Emits events when reconciliation completes
22
+ */
23
+ export class ReconciliationScheduler {
24
+ compiler;
25
+ options;
26
+ // Pending reconciliation state
27
+ pendingReasons = [];
28
+ isScheduled = false;
29
+ isExecutingTick = false;
30
+ deferredReasons = [];
31
+ constructor(compiler, options = {}) {
32
+ this.compiler = compiler;
33
+ this.options = options;
34
+ }
35
+ /**
36
+ * Schedule a reconciliation.
37
+ *
38
+ * Multiple calls in the same microtask are batched.
39
+ * Calls during tick execution are deferred until the tick completes.
40
+ */
41
+ schedule(reason) {
42
+ // If we're in the middle of a tick, defer until after
43
+ if (this.isExecutingTick) {
44
+ this.deferredReasons.push(reason);
45
+ return;
46
+ }
47
+ this.pendingReasons.push(reason);
48
+ // Batch multiple calls in the same microtask
49
+ if (!this.isScheduled) {
50
+ this.isScheduled = true;
51
+ queueMicrotask(() => this.flush());
52
+ }
53
+ }
54
+ /**
55
+ * Mark that a tick is starting.
56
+ * Reconciliation requests during a tick will be deferred.
57
+ */
58
+ enterTick() {
59
+ this.isExecutingTick = true;
60
+ }
61
+ /**
62
+ * Mark that a tick has completed.
63
+ * Flushes any deferred reconciliation requests.
64
+ */
65
+ exitTick() {
66
+ this.isExecutingTick = false;
67
+ // Flush any deferred reconciliation requests
68
+ if (this.deferredReasons.length > 0) {
69
+ const reasons = this.deferredReasons;
70
+ this.deferredReasons = [];
71
+ for (const reason of reasons) {
72
+ this.schedule(reason);
73
+ }
74
+ }
75
+ }
76
+ /**
77
+ * Flush pending reconciliation requests.
78
+ */
79
+ flush() {
80
+ this.isScheduled = false;
81
+ if (this.pendingReasons.length === 0) {
82
+ return;
83
+ }
84
+ const reasons = this.pendingReasons;
85
+ this.pendingReasons = [];
86
+ // Combine reasons for the event
87
+ const combinedReason = reasons.join("; ");
88
+ // Trigger reconciliation on the compiler
89
+ // In v2, the compiler will update the React tree
90
+ try {
91
+ // The compiler's reconcile method will be called by the session
92
+ // when the next tick starts. We just emit the event to notify listeners.
93
+ // Emit reconcile event
94
+ if (this.options.onReconcile) {
95
+ this.options.onReconcile({
96
+ reason: combinedReason,
97
+ timestamp: Date.now(),
98
+ deferred: false,
99
+ });
100
+ }
101
+ }
102
+ catch (error) {
103
+ console.error("[ReconciliationScheduler] Error during reconciliation:", error);
104
+ }
105
+ }
106
+ /**
107
+ * Check if there are pending reconciliation requests.
108
+ */
109
+ hasPending() {
110
+ return this.pendingReasons.length > 0 || this.deferredReasons.length > 0;
111
+ }
112
+ /**
113
+ * Clear all pending reconciliation requests.
114
+ */
115
+ clear() {
116
+ this.pendingReasons = [];
117
+ this.deferredReasons = [];
118
+ this.isScheduled = false;
119
+ }
120
+ /**
121
+ * Dispose of the scheduler.
122
+ */
123
+ dispose() {
124
+ this.clear();
125
+ }
126
+ /**
127
+ * Get the current scheduler state.
128
+ */
129
+ getState() {
130
+ return {
131
+ isExecutingTick: this.isExecutingTick,
132
+ isScheduled: this.isScheduled,
133
+ pendingReasons: [...this.pendingReasons],
134
+ deferredReasons: [...this.deferredReasons],
135
+ };
136
+ }
137
+ }
138
+ //# sourceMappingURL=scheduler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../../src/compiler/scheduler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ import type { COM } from "../com/object-model";
2
+ import type { COMInput } from "../com/types";
3
+ import type { ContentRenderer } from "../renderers";
4
+ import type { CompiledStructure } from "./types";
5
+ /**
6
+ * StructureRenderer: Applies CompiledStructure to COM and formats content.
7
+ *
8
+ * Responsibilities:
9
+ * - Application (CompiledStructure → COM)
10
+ * - Formatting (SemanticContentBlocks → ContentBlocks)
11
+ */
12
+ export declare class StructureRenderer {
13
+ private ctx;
14
+ private defaultRenderer;
15
+ private _lastCompiled;
16
+ constructor(ctx: COM);
17
+ setDefaultRenderer(renderer: ContentRenderer): void;
18
+ /**
19
+ * Applies compiled structure to COM and formats content.
20
+ */
21
+ apply(compiled: CompiledStructure): Promise<void>;
22
+ /**
23
+ * Applies a section to COM.
24
+ */
25
+ private applySection;
26
+ /**
27
+ * Applies an ephemeral entry to COM.
28
+ */
29
+ private applyEphemeral;
30
+ /**
31
+ * Format semantic content blocks to content blocks.
32
+ */
33
+ private formatSemanticBlocks;
34
+ /**
35
+ * Formats COMInput for model input.
36
+ *
37
+ * The compiled structure IS the complete projection of what the model sees.
38
+ * Components render history via `<Message>`, which becomes compiled.timelineEntries.
39
+ */
40
+ formatInput(comInput: COMInput): Promise<COMInput>;
41
+ }
42
+ //# sourceMappingURL=structure-renderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"structure-renderer.d.ts","sourceRoot":"","sources":["../../src/compiler/structure-renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAgC,MAAM,cAAc,CAAC;AAE3E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAGpD,OAAO,KAAK,EAAE,iBAAiB,EAAsC,MAAM,SAAS,CAAC;AAgCrF;;;;;;GAMG;AACH,qBAAa,iBAAiB;IAIhB,OAAO,CAAC,GAAG;IAHvB,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,aAAa,CAAkC;gBAEnC,GAAG,EAAE,GAAG;IAI5B,kBAAkB,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI;IAInD;;OAEG;IACG,KAAK,CAAC,QAAQ,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAiCvD;;OAEG;IACH,OAAO,CAAC,YAAY;IAoBpB;;OAEG;IACH,OAAO,CAAC,cAAc;IAYtB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAI5B;;;;;OAKG;IACG,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;CA8EzD"}