@dxos/assistant-toolkit 0.8.4-main.9735255 → 0.8.4-main.abd8ff62ef

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 (594) hide show
  1. package/dist/lib/neutral/add-artifact-BA5WQRDU.mjs +30 -0
  2. package/dist/lib/neutral/add-artifact-BA5WQRDU.mjs.map +7 -0
  3. package/dist/lib/neutral/agent-M2EW5M36.mjs +65 -0
  4. package/dist/lib/neutral/agent-M2EW5M36.mjs.map +7 -0
  5. package/dist/lib/neutral/chunk-CLHVRIYF.mjs +293 -0
  6. package/dist/lib/neutral/chunk-CLHVRIYF.mjs.map +7 -0
  7. package/dist/lib/neutral/chunk-CVUA23QI.mjs +332 -0
  8. package/dist/lib/neutral/chunk-CVUA23QI.mjs.map +7 -0
  9. package/dist/lib/neutral/chunk-D5MG5OKX.mjs +75 -0
  10. package/dist/lib/neutral/chunk-D5MG5OKX.mjs.map +7 -0
  11. package/dist/lib/neutral/chunk-E2XRNXWP.mjs +100 -0
  12. package/dist/lib/neutral/chunk-E2XRNXWP.mjs.map +7 -0
  13. package/dist/lib/neutral/chunk-EJAQUAKM.mjs +73 -0
  14. package/dist/lib/neutral/chunk-EJAQUAKM.mjs.map +7 -0
  15. package/dist/lib/neutral/chunk-J37DYY7A.mjs +51 -0
  16. package/dist/lib/neutral/chunk-J37DYY7A.mjs.map +7 -0
  17. package/dist/lib/neutral/chunk-JCYLFOFK.mjs +70 -0
  18. package/dist/lib/neutral/chunk-JCYLFOFK.mjs.map +7 -0
  19. package/dist/lib/neutral/chunk-KGU725LW.mjs +29 -0
  20. package/dist/lib/neutral/chunk-KGU725LW.mjs.map +7 -0
  21. package/dist/lib/neutral/chunk-KY2TIPJ5.mjs +108 -0
  22. package/dist/lib/neutral/chunk-KY2TIPJ5.mjs.map +7 -0
  23. package/dist/lib/neutral/chunk-MMTKJBB5.mjs +140 -0
  24. package/dist/lib/neutral/chunk-MMTKJBB5.mjs.map +7 -0
  25. package/dist/lib/neutral/chunk-NR3GTWRC.mjs +53 -0
  26. package/dist/lib/neutral/chunk-NR3GTWRC.mjs.map +7 -0
  27. package/dist/lib/neutral/chunk-TO5IX24K.mjs +67 -0
  28. package/dist/lib/neutral/chunk-TO5IX24K.mjs.map +7 -0
  29. package/dist/lib/neutral/chunk-WLR3BGO4.mjs +25 -0
  30. package/dist/lib/neutral/chunk-WLR3BGO4.mjs.map +7 -0
  31. package/dist/lib/neutral/chunk-ZFXLTBZG.mjs +73 -0
  32. package/dist/lib/neutral/chunk-ZFXLTBZG.mjs.map +7 -0
  33. package/dist/lib/neutral/context-add-IIDPRRVB.mjs +22 -0
  34. package/dist/lib/neutral/context-add-IIDPRRVB.mjs.map +7 -0
  35. package/dist/lib/neutral/context-remove-RDYV4PD4.mjs +22 -0
  36. package/dist/lib/neutral/context-remove-RDYV4PD4.mjs.map +7 -0
  37. package/dist/lib/neutral/create-project-GLDEAWTT.mjs +35 -0
  38. package/dist/lib/neutral/create-project-GLDEAWTT.mjs.map +7 -0
  39. package/dist/lib/neutral/delete-J3PMWP7Z.mjs +19 -0
  40. package/dist/lib/neutral/delete-J3PMWP7Z.mjs.map +7 -0
  41. package/dist/lib/neutral/enable-blueprints-LBDZH2CY.mjs +47 -0
  42. package/dist/lib/neutral/enable-blueprints-LBDZH2CY.mjs.map +7 -0
  43. package/dist/lib/neutral/fetch-KHMHV7JR.mjs +16 -0
  44. package/dist/lib/neutral/fetch-KHMHV7JR.mjs.map +7 -0
  45. package/dist/lib/neutral/fetch-messages-PWGUG5G3.mjs +139 -0
  46. package/dist/lib/neutral/fetch-messages-PWGUG5G3.mjs.map +7 -0
  47. package/dist/lib/neutral/get-context-B55SX5Y4.mjs +35 -0
  48. package/dist/lib/neutral/get-context-B55SX5Y4.mjs.map +7 -0
  49. package/dist/lib/neutral/index.mjs +904 -0
  50. package/dist/lib/neutral/index.mjs.map +7 -0
  51. package/dist/lib/neutral/load-LI7HHVD6.mjs +17 -0
  52. package/dist/lib/neutral/load-LI7HHVD6.mjs.map +7 -0
  53. package/dist/lib/neutral/meta.json +1 -0
  54. package/dist/lib/neutral/object-create-52Z7YKIA.mjs +35 -0
  55. package/dist/lib/neutral/object-create-52Z7YKIA.mjs.map +7 -0
  56. package/dist/lib/neutral/object-delete-I266YAXI.mjs +18 -0
  57. package/dist/lib/neutral/object-delete-I266YAXI.mjs.map +7 -0
  58. package/dist/lib/neutral/object-update-HY4GI7LA.mjs +28 -0
  59. package/dist/lib/neutral/object-update-HY4GI7LA.mjs.map +7 -0
  60. package/dist/lib/neutral/project-2YBPW5N7.mjs +23 -0
  61. package/dist/lib/neutral/project-rules-XUBEPDP6.mjs +78 -0
  62. package/dist/lib/neutral/project-rules-XUBEPDP6.mjs.map +7 -0
  63. package/dist/lib/neutral/prompt-2WZQERT4.mjs +167 -0
  64. package/dist/lib/neutral/prompt-2WZQERT4.mjs.map +7 -0
  65. package/dist/lib/neutral/qualifier-2AC2ICOB.mjs +88 -0
  66. package/dist/lib/neutral/qualifier-2AC2ICOB.mjs.map +7 -0
  67. package/dist/lib/neutral/query-B3NOYFCK.mjs +70 -0
  68. package/dist/lib/neutral/query-B3NOYFCK.mjs.map +7 -0
  69. package/dist/lib/neutral/query-U56GNEV6.mjs +32 -0
  70. package/dist/lib/neutral/query-U56GNEV6.mjs.map +7 -0
  71. package/dist/lib/neutral/query-blueprints-KXADGHSA.mjs +16 -0
  72. package/dist/lib/neutral/query-blueprints-KXADGHSA.mjs.map +7 -0
  73. package/dist/lib/neutral/relation-create-Z3NGW4VU.mjs +34 -0
  74. package/dist/lib/neutral/relation-create-Z3NGW4VU.mjs.map +7 -0
  75. package/dist/lib/neutral/relation-delete-LXY7W2YO.mjs +18 -0
  76. package/dist/lib/neutral/relation-delete-LXY7W2YO.mjs.map +7 -0
  77. package/dist/lib/neutral/save-GWAPLT3Z.mjs +23 -0
  78. package/dist/lib/neutral/save-GWAPLT3Z.mjs.map +7 -0
  79. package/dist/lib/neutral/schema-add-4TXJO2V7.mjs +24 -0
  80. package/dist/lib/neutral/schema-add-4TXJO2V7.mjs.map +7 -0
  81. package/dist/lib/neutral/schema-list-PJS5AFZ3.mjs +38 -0
  82. package/dist/lib/neutral/schema-list-PJS5AFZ3.mjs.map +7 -0
  83. package/dist/lib/neutral/sync-issues-LOLHZNFL.mjs +167 -0
  84. package/dist/lib/neutral/sync-issues-LOLHZNFL.mjs.map +7 -0
  85. package/dist/lib/neutral/sync-triggers-EYJM4QWR.mjs +136 -0
  86. package/dist/lib/neutral/sync-triggers-EYJM4QWR.mjs.map +7 -0
  87. package/dist/lib/neutral/tag-add-5NOHUTIE.mjs +19 -0
  88. package/dist/lib/neutral/tag-add-5NOHUTIE.mjs.map +7 -0
  89. package/dist/lib/neutral/tag-remove-QTKYDJAW.mjs +19 -0
  90. package/dist/lib/neutral/tag-remove-QTKYDJAW.mjs.map +7 -0
  91. package/dist/lib/neutral/testing/index.mjs +76 -0
  92. package/dist/lib/neutral/testing/index.mjs.map +7 -0
  93. package/dist/lib/neutral/update-blueprints-N2AK2VUR.mjs +16 -0
  94. package/dist/lib/neutral/update-blueprints-N2AK2VUR.mjs.map +7 -0
  95. package/dist/lib/neutral/update-tasks-ML2FCYU5.mjs +46 -0
  96. package/dist/lib/neutral/update-tasks-ML2FCYU5.mjs.map +7 -0
  97. package/dist/types/src/blueprints/automation/blueprint.d.ts +4 -0
  98. package/dist/types/src/blueprints/automation/blueprint.d.ts.map +1 -0
  99. package/dist/types/src/blueprints/automation/index.d.ts +2 -0
  100. package/dist/types/src/blueprints/automation/index.d.ts.map +1 -0
  101. package/dist/types/src/blueprints/blueprint-manager/blueprint.d.ts +4 -0
  102. package/dist/types/src/blueprints/blueprint-manager/blueprint.d.ts.map +1 -0
  103. package/dist/types/src/blueprints/blueprint-manager/blueprint.test.d.ts +2 -0
  104. package/dist/types/src/blueprints/blueprint-manager/blueprint.test.d.ts.map +1 -0
  105. package/dist/types/src/blueprints/blueprint-manager/functions/definitions.d.ts +59 -0
  106. package/dist/types/src/blueprints/blueprint-manager/functions/definitions.d.ts.map +1 -0
  107. package/dist/types/src/blueprints/blueprint-manager/functions/enable-blueprints.d.ts +35 -0
  108. package/dist/types/src/blueprints/blueprint-manager/functions/enable-blueprints.d.ts.map +1 -0
  109. package/dist/types/src/blueprints/blueprint-manager/functions/index.d.ts +4 -0
  110. package/dist/types/src/blueprints/blueprint-manager/functions/index.d.ts.map +1 -0
  111. package/dist/types/src/blueprints/blueprint-manager/functions/query-blueprints.d.ts +26 -0
  112. package/dist/types/src/blueprints/blueprint-manager/functions/query-blueprints.d.ts.map +1 -0
  113. package/dist/types/src/blueprints/blueprint-manager/functions/update-blueprints.d.ts +4 -0
  114. package/dist/types/src/blueprints/blueprint-manager/functions/update-blueprints.d.ts.map +1 -0
  115. package/dist/types/src/blueprints/blueprint-manager/index.d.ts +3 -0
  116. package/dist/types/src/blueprints/blueprint-manager/index.d.ts.map +1 -0
  117. package/dist/types/src/blueprints/browser/blueprint.d.ts +4 -0
  118. package/dist/types/src/blueprints/browser/blueprint.d.ts.map +1 -0
  119. package/dist/types/src/blueprints/browser/blueprint.test.d.ts +2 -0
  120. package/dist/types/src/blueprints/browser/blueprint.test.d.ts.map +1 -0
  121. package/dist/types/src/blueprints/browser/index.d.ts +2 -0
  122. package/dist/types/src/blueprints/browser/index.d.ts.map +1 -0
  123. package/dist/types/src/blueprints/database/blueprint.d.ts +4 -0
  124. package/dist/types/src/blueprints/database/blueprint.d.ts.map +1 -0
  125. package/dist/types/src/blueprints/database/blueprint.test.d.ts +2 -0
  126. package/dist/types/src/blueprints/database/blueprint.test.d.ts.map +1 -0
  127. package/dist/types/src/blueprints/database/functions/context-add.d.ts +7 -0
  128. package/dist/types/src/blueprints/database/functions/context-add.d.ts.map +1 -0
  129. package/dist/types/src/blueprints/database/functions/context-remove.d.ts +7 -0
  130. package/dist/types/src/blueprints/database/functions/context-remove.d.ts.map +1 -0
  131. package/dist/types/src/blueprints/database/functions/definitions.d.ts +59 -0
  132. package/dist/types/src/blueprints/database/functions/definitions.d.ts.map +1 -0
  133. package/dist/types/src/blueprints/database/functions/index.d.ts +4 -0
  134. package/dist/types/src/blueprints/database/functions/index.d.ts.map +1 -0
  135. package/dist/types/src/blueprints/database/functions/load.d.ts +7 -0
  136. package/dist/types/src/blueprints/database/functions/load.d.ts.map +1 -0
  137. package/dist/types/src/blueprints/database/functions/object-create.d.ts +8 -0
  138. package/dist/types/src/blueprints/database/functions/object-create.d.ts.map +1 -0
  139. package/dist/types/src/blueprints/database/functions/object-delete.d.ts +7 -0
  140. package/dist/types/src/blueprints/database/functions/object-delete.d.ts.map +1 -0
  141. package/dist/types/src/blueprints/database/functions/object-update.d.ts +10 -0
  142. package/dist/types/src/blueprints/database/functions/object-update.d.ts.map +1 -0
  143. package/dist/types/src/blueprints/database/functions/query.d.ts +13 -0
  144. package/dist/types/src/blueprints/database/functions/query.d.ts.map +1 -0
  145. package/dist/types/src/blueprints/database/functions/relation-create.d.ts +10 -0
  146. package/dist/types/src/blueprints/database/functions/relation-create.d.ts.map +1 -0
  147. package/dist/types/src/blueprints/database/functions/relation-delete.d.ts +7 -0
  148. package/dist/types/src/blueprints/database/functions/relation-delete.d.ts.map +1 -0
  149. package/dist/types/src/blueprints/database/functions/schema-add.d.ts +9 -0
  150. package/dist/types/src/blueprints/database/functions/schema-add.d.ts.map +1 -0
  151. package/dist/types/src/blueprints/database/functions/schema-list.d.ts +7 -0
  152. package/dist/types/src/blueprints/database/functions/schema-list.d.ts.map +1 -0
  153. package/dist/types/src/blueprints/database/functions/tag-add.d.ts +8 -0
  154. package/dist/types/src/blueprints/database/functions/tag-add.d.ts.map +1 -0
  155. package/dist/types/src/blueprints/database/functions/tag-remove.d.ts +8 -0
  156. package/dist/types/src/blueprints/database/functions/tag-remove.d.ts.map +1 -0
  157. package/dist/types/src/blueprints/database/index.d.ts +3 -0
  158. package/dist/types/src/blueprints/database/index.d.ts.map +1 -0
  159. package/dist/types/src/blueprints/discord/blueprint.d.ts +4 -0
  160. package/dist/types/src/blueprints/discord/blueprint.d.ts.map +1 -0
  161. package/dist/types/src/blueprints/discord/functions/definitions.d.ts +15 -0
  162. package/dist/types/src/blueprints/discord/functions/definitions.d.ts.map +1 -0
  163. package/dist/types/src/{functions/discord → blueprints/discord/functions}/fetch-messages.d.ts +3 -2
  164. package/dist/types/src/blueprints/discord/functions/fetch-messages.d.ts.map +1 -0
  165. package/dist/types/src/blueprints/discord/functions/fetch-messages.test.d.ts.map +1 -0
  166. package/dist/types/src/blueprints/discord/functions/index.d.ts +4 -0
  167. package/dist/types/src/blueprints/discord/functions/index.d.ts.map +1 -0
  168. package/dist/types/src/blueprints/discord/index.d.ts +2 -2
  169. package/dist/types/src/blueprints/discord/index.d.ts.map +1 -1
  170. package/dist/types/src/blueprints/github/functions/definitions.d.ts +7 -0
  171. package/dist/types/src/blueprints/github/functions/definitions.d.ts.map +1 -0
  172. package/dist/types/src/blueprints/github/functions/fetch-prs.d.ts +8 -0
  173. package/dist/types/src/blueprints/github/functions/fetch-prs.d.ts.map +1 -0
  174. package/dist/types/src/blueprints/github/functions/index.d.ts +4 -0
  175. package/dist/types/src/blueprints/github/functions/index.d.ts.map +1 -0
  176. package/dist/types/src/blueprints/github/index.d.ts +2 -0
  177. package/dist/types/src/blueprints/github/index.d.ts.map +1 -0
  178. package/dist/types/src/blueprints/index.d.ts +11 -6
  179. package/dist/types/src/blueprints/index.d.ts.map +1 -1
  180. package/dist/types/src/blueprints/linear/blueprint.d.ts +4 -0
  181. package/dist/types/src/blueprints/linear/blueprint.d.ts.map +1 -0
  182. package/dist/types/src/blueprints/linear/functions/definitions.d.ts +6 -0
  183. package/dist/types/src/blueprints/linear/functions/definitions.d.ts.map +1 -0
  184. package/dist/types/src/blueprints/linear/functions/index.d.ts +4 -0
  185. package/dist/types/src/blueprints/linear/functions/index.d.ts.map +1 -0
  186. package/dist/types/src/blueprints/linear/functions/linear.test.d.ts.map +1 -0
  187. package/dist/types/src/blueprints/linear/functions/sync-issues.d.ts +10 -0
  188. package/dist/types/src/blueprints/linear/functions/sync-issues.d.ts.map +1 -0
  189. package/dist/types/src/blueprints/linear/index.d.ts +2 -2
  190. package/dist/types/src/blueprints/linear/index.d.ts.map +1 -1
  191. package/dist/types/src/blueprints/memory/blueprint.d.ts +4 -0
  192. package/dist/types/src/blueprints/memory/blueprint.d.ts.map +1 -0
  193. package/dist/types/src/blueprints/memory/blueprint.test.d.ts +2 -0
  194. package/dist/types/src/blueprints/memory/blueprint.test.d.ts.map +1 -0
  195. package/dist/types/src/blueprints/memory/functions/definitions.d.ts +17 -0
  196. package/dist/types/src/blueprints/memory/functions/definitions.d.ts.map +1 -0
  197. package/dist/types/src/blueprints/memory/functions/delete.d.ts +10 -0
  198. package/dist/types/src/blueprints/memory/functions/delete.d.ts.map +1 -0
  199. package/dist/types/src/blueprints/memory/functions/index.d.ts +4 -0
  200. package/dist/types/src/blueprints/memory/functions/index.d.ts.map +1 -0
  201. package/dist/types/src/blueprints/memory/functions/query.d.ts +8 -0
  202. package/dist/types/src/blueprints/memory/functions/query.d.ts.map +1 -0
  203. package/dist/types/src/blueprints/memory/functions/save.d.ts +8 -0
  204. package/dist/types/src/blueprints/memory/functions/save.d.ts.map +1 -0
  205. package/dist/types/src/blueprints/memory/index.d.ts +3 -0
  206. package/dist/types/src/blueprints/memory/index.d.ts.map +1 -0
  207. package/dist/types/src/blueprints/planning/blueprint.d.ts +4 -0
  208. package/dist/types/src/blueprints/planning/blueprint.d.ts.map +1 -0
  209. package/dist/types/src/blueprints/planning/functions/definitions.d.ts +11 -0
  210. package/dist/types/src/blueprints/planning/functions/definitions.d.ts.map +1 -0
  211. package/dist/types/src/blueprints/planning/functions/index.d.ts +4 -0
  212. package/dist/types/src/blueprints/planning/functions/index.d.ts.map +1 -0
  213. package/dist/types/src/blueprints/planning/functions/update-tasks.d.ts +11 -0
  214. package/dist/types/src/blueprints/planning/functions/update-tasks.d.ts.map +1 -0
  215. package/dist/types/src/blueprints/planning/index.d.ts +2 -2
  216. package/dist/types/src/blueprints/planning/index.d.ts.map +1 -1
  217. package/dist/types/src/blueprints/project/blueprint.d.ts +4 -0
  218. package/dist/types/src/blueprints/project/blueprint.d.ts.map +1 -0
  219. package/dist/types/src/blueprints/project/blueprint.test.d.ts +2 -0
  220. package/dist/types/src/blueprints/project/blueprint.test.d.ts.map +1 -0
  221. package/dist/types/src/blueprints/project/functions/add-artifact.d.ts +8 -0
  222. package/dist/types/src/blueprints/project/functions/add-artifact.d.ts.map +1 -0
  223. package/dist/types/src/blueprints/project/functions/agent.d.ts +4 -0
  224. package/dist/types/src/blueprints/project/functions/agent.d.ts.map +1 -0
  225. package/dist/types/src/blueprints/project/functions/definitions.d.ts +158 -0
  226. package/dist/types/src/blueprints/project/functions/definitions.d.ts.map +1 -0
  227. package/dist/types/src/blueprints/project/functions/get-context.d.ts +15 -0
  228. package/dist/types/src/blueprints/project/functions/get-context.d.ts.map +1 -0
  229. package/dist/types/src/blueprints/project/functions/index.d.ts +4 -0
  230. package/dist/types/src/blueprints/project/functions/index.d.ts.map +1 -0
  231. package/dist/types/src/blueprints/project/functions/qualifier.d.ts +73 -0
  232. package/dist/types/src/blueprints/project/functions/qualifier.d.ts.map +1 -0
  233. package/dist/types/src/blueprints/project/index.d.ts +3 -0
  234. package/dist/types/src/blueprints/project/index.d.ts.map +1 -0
  235. package/dist/types/src/blueprints/project-wizard/blueprint.d.ts +4 -0
  236. package/dist/types/src/blueprints/project-wizard/blueprint.d.ts.map +1 -0
  237. package/dist/types/src/blueprints/project-wizard/functions/create-project.d.ts +51 -0
  238. package/dist/types/src/blueprints/project-wizard/functions/create-project.d.ts.map +1 -0
  239. package/dist/types/src/blueprints/project-wizard/functions/definitions.d.ts +96 -0
  240. package/dist/types/src/blueprints/project-wizard/functions/definitions.d.ts.map +1 -0
  241. package/dist/types/src/blueprints/project-wizard/functions/index.d.ts +4 -0
  242. package/dist/types/src/blueprints/project-wizard/functions/index.d.ts.map +1 -0
  243. package/dist/types/src/blueprints/project-wizard/functions/project-rules.d.ts +4 -0
  244. package/dist/types/src/blueprints/project-wizard/functions/project-rules.d.ts.map +1 -0
  245. package/dist/types/src/blueprints/project-wizard/functions/sync-triggers.d.ts +48 -0
  246. package/dist/types/src/blueprints/project-wizard/functions/sync-triggers.d.ts.map +1 -0
  247. package/dist/types/src/blueprints/project-wizard/index.d.ts +3 -0
  248. package/dist/types/src/blueprints/project-wizard/index.d.ts.map +1 -0
  249. package/dist/types/src/blueprints/testing.d.ts +9 -5
  250. package/dist/types/src/blueprints/testing.d.ts.map +1 -1
  251. package/dist/types/src/blueprints/websearch/blueprint.d.ts +4 -0
  252. package/dist/types/src/blueprints/websearch/blueprint.d.ts.map +1 -0
  253. package/dist/types/src/blueprints/websearch/blueprint.test.d.ts +2 -0
  254. package/dist/types/src/blueprints/websearch/blueprint.test.d.ts.map +1 -0
  255. package/dist/types/src/blueprints/websearch/functions/definitions.d.ts +5 -0
  256. package/dist/types/src/blueprints/websearch/functions/definitions.d.ts.map +1 -0
  257. package/dist/types/src/blueprints/websearch/functions/fetch.d.ts +6 -0
  258. package/dist/types/src/blueprints/websearch/functions/fetch.d.ts.map +1 -0
  259. package/dist/types/src/blueprints/websearch/functions/index.d.ts +4 -0
  260. package/dist/types/src/blueprints/websearch/functions/index.d.ts.map +1 -0
  261. package/dist/types/src/blueprints/websearch/index.d.ts +3 -3
  262. package/dist/types/src/blueprints/websearch/index.d.ts.map +1 -1
  263. package/dist/types/src/blueprints/websearch/{websearch-toolkit.d.ts → toolkit.d.ts} +3 -1
  264. package/dist/types/src/blueprints/websearch/toolkit.d.ts.map +1 -0
  265. package/dist/types/src/crud/graph.d.ts +7 -7
  266. package/dist/types/src/crud/graph.d.ts.map +1 -1
  267. package/dist/types/src/errors.d.ts +41 -0
  268. package/dist/types/src/errors.d.ts.map +1 -0
  269. package/dist/types/src/functions/agent/definitions.d.ts +60 -0
  270. package/dist/types/src/functions/agent/definitions.d.ts.map +1 -0
  271. package/dist/types/src/functions/agent/index.d.ts +3 -4
  272. package/dist/types/src/functions/agent/index.d.ts.map +1 -1
  273. package/dist/types/src/functions/agent/prompt.d.ts +2 -74
  274. package/dist/types/src/functions/agent/prompt.d.ts.map +1 -1
  275. package/dist/types/src/functions/agent/prompt.test.d.ts +2 -0
  276. package/dist/types/src/functions/agent/prompt.test.d.ts.map +1 -0
  277. package/dist/types/src/functions/index.d.ts +0 -6
  278. package/dist/types/src/functions/index.d.ts.map +1 -1
  279. package/dist/types/src/index.d.ts +2 -1
  280. package/dist/types/src/index.d.ts.map +1 -1
  281. package/dist/types/src/sync/sync.d.ts.map +1 -1
  282. package/dist/types/src/testing/index.d.ts +1 -0
  283. package/dist/types/src/testing/index.d.ts.map +1 -1
  284. package/dist/types/src/testing/plugins.d.ts.map +1 -1
  285. package/dist/types/src/toolkits/WebToolkit.d.ts +38 -0
  286. package/dist/types/src/toolkits/WebToolkit.d.ts.map +1 -0
  287. package/dist/types/src/toolkits/index.d.ts +1 -2
  288. package/dist/types/src/toolkits/index.d.ts.map +1 -1
  289. package/dist/types/src/types/Agent.d.ts +77 -0
  290. package/dist/types/src/types/Agent.d.ts.map +1 -0
  291. package/dist/types/src/types/Chat.d.ts +56 -0
  292. package/dist/types/src/types/Chat.d.ts.map +1 -0
  293. package/dist/types/src/types/McpServer.d.ts +18 -0
  294. package/dist/types/src/types/McpServer.d.ts.map +1 -0
  295. package/dist/types/src/types/Memory.d.ts +12 -0
  296. package/dist/types/src/types/Memory.d.ts.map +1 -0
  297. package/dist/types/src/types/Plan.d.ts +89 -0
  298. package/dist/types/src/types/Plan.d.ts.map +1 -0
  299. package/dist/types/src/types/index.d.ts +6 -0
  300. package/dist/types/src/types/index.d.ts.map +1 -0
  301. package/dist/types/src/util/graphql.d.ts.map +1 -1
  302. package/dist/types/tsconfig.tsbuildinfo +1 -1
  303. package/package.json +34 -43
  304. package/src/blueprints/automation/blueprint.ts +105 -0
  305. package/src/blueprints/automation/index.ts +5 -0
  306. package/src/blueprints/blueprint-manager/blueprint.conversations.json +1 -0
  307. package/src/blueprints/blueprint-manager/blueprint.test.ts +198 -0
  308. package/src/blueprints/blueprint-manager/blueprint.ts +49 -0
  309. package/src/blueprints/blueprint-manager/functions/definitions.ts +57 -0
  310. package/src/blueprints/blueprint-manager/functions/enable-blueprints.ts +43 -0
  311. package/src/blueprints/blueprint-manager/functions/index.ts +13 -0
  312. package/src/blueprints/blueprint-manager/functions/query-blueprints.ts +18 -0
  313. package/src/blueprints/blueprint-manager/functions/update-blueprints.ts +18 -0
  314. package/src/blueprints/blueprint-manager/index.ts +6 -0
  315. package/src/blueprints/browser/blueprint.test.ts +61 -0
  316. package/src/blueprints/browser/blueprint.ts +40 -0
  317. package/src/blueprints/browser/index.ts +5 -0
  318. package/src/blueprints/database/blueprint.conversations.json +1 -0
  319. package/src/blueprints/database/blueprint.test.ts +531 -0
  320. package/src/blueprints/database/blueprint.ts +66 -0
  321. package/src/blueprints/database/functions/context-add.ts +24 -0
  322. package/src/blueprints/database/functions/context-remove.ts +24 -0
  323. package/src/blueprints/database/functions/definitions.ts +318 -0
  324. package/src/blueprints/database/functions/index.ts +23 -0
  325. package/src/blueprints/database/functions/load.ts +19 -0
  326. package/src/blueprints/database/functions/object-create.ts +38 -0
  327. package/src/blueprints/database/functions/object-delete.ts +20 -0
  328. package/src/blueprints/database/functions/object-update.ts +30 -0
  329. package/src/blueprints/database/functions/query.ts +64 -0
  330. package/src/blueprints/database/functions/relation-create.ts +34 -0
  331. package/src/blueprints/database/functions/relation-delete.ts +21 -0
  332. package/src/blueprints/database/functions/schema-add.ts +28 -0
  333. package/src/blueprints/database/functions/schema-list.ts +33 -0
  334. package/src/blueprints/database/functions/tag-add.ts +21 -0
  335. package/src/blueprints/database/functions/tag-remove.ts +21 -0
  336. package/src/blueprints/database/index.ts +21 -0
  337. package/src/blueprints/discord/blueprint.ts +41 -0
  338. package/src/blueprints/discord/functions/definitions.ts +70 -0
  339. package/src/blueprints/discord/functions/fetch-messages.test.ts +45 -0
  340. package/src/blueprints/discord/functions/fetch-messages.ts +198 -0
  341. package/src/blueprints/discord/functions/index.ts +9 -0
  342. package/src/blueprints/discord/index.ts +2 -3
  343. package/src/blueprints/github/functions/definitions.ts +26 -0
  344. package/src/blueprints/github/functions/fetch-prs.ts +24 -0
  345. package/src/blueprints/github/functions/index.ts +9 -0
  346. package/src/blueprints/github/index.ts +5 -0
  347. package/src/blueprints/index.ts +11 -6
  348. package/src/blueprints/linear/blueprint.ts +42 -0
  349. package/src/blueprints/linear/functions/definitions.ts +23 -0
  350. package/src/blueprints/linear/functions/index.ts +9 -0
  351. package/src/blueprints/linear/functions/linear.test.ts +58 -0
  352. package/src/{functions/linear → blueprints/linear/functions}/sync-issues.ts +37 -45
  353. package/src/blueprints/linear/index.ts +2 -3
  354. package/src/blueprints/memory/blueprint.conversations.json +1 -0
  355. package/src/blueprints/memory/blueprint.test.ts +139 -0
  356. package/src/blueprints/memory/blueprint.ts +41 -0
  357. package/src/blueprints/memory/functions/definitions.ts +68 -0
  358. package/src/blueprints/memory/functions/delete.ts +20 -0
  359. package/src/blueprints/memory/functions/index.ts +13 -0
  360. package/src/blueprints/memory/functions/query.ts +32 -0
  361. package/src/blueprints/memory/functions/save.ts +20 -0
  362. package/src/blueprints/memory/index.ts +6 -0
  363. package/src/blueprints/planning/blueprint.ts +24 -0
  364. package/src/blueprints/planning/functions/definitions.ts +137 -0
  365. package/src/blueprints/planning/functions/index.ts +9 -0
  366. package/src/blueprints/planning/functions/update-tasks.ts +45 -0
  367. package/src/blueprints/planning/index.ts +3 -4
  368. package/src/blueprints/project/blueprint.conversations.json +1 -0
  369. package/src/{initiative/initiative.test.ts → blueprints/project/blueprint.test.ts} +279 -50
  370. package/src/blueprints/project/blueprint.ts +64 -0
  371. package/src/blueprints/project/functions/add-artifact.ts +30 -0
  372. package/src/blueprints/project/functions/agent.ts +69 -0
  373. package/src/blueprints/project/functions/definitions.ts +92 -0
  374. package/src/blueprints/project/functions/get-context.ts +46 -0
  375. package/src/blueprints/project/functions/index.ts +14 -0
  376. package/src/blueprints/project/functions/qualifier.ts +90 -0
  377. package/src/blueprints/project/index.ts +6 -0
  378. package/src/blueprints/project-wizard/blueprint.ts +52 -0
  379. package/src/blueprints/project-wizard/functions/create-project.ts +32 -0
  380. package/src/blueprints/project-wizard/functions/definitions.ts +63 -0
  381. package/src/blueprints/project-wizard/functions/index.ts +13 -0
  382. package/src/blueprints/project-wizard/functions/project-rules.ts +77 -0
  383. package/src/blueprints/project-wizard/functions/sync-triggers.ts +158 -0
  384. package/src/blueprints/project-wizard/index.ts +6 -0
  385. package/src/blueprints/testing.ts +23 -8
  386. package/src/blueprints/websearch/blueprint.conversations.json +1 -0
  387. package/src/blueprints/websearch/blueprint.test.ts +39 -0
  388. package/src/blueprints/websearch/blueprint.ts +30 -0
  389. package/src/blueprints/websearch/functions/definitions.ts +25 -0
  390. package/src/blueprints/websearch/functions/fetch.ts +18 -0
  391. package/src/blueprints/websearch/functions/index.ts +9 -0
  392. package/src/blueprints/websearch/index.ts +3 -5
  393. package/src/blueprints/websearch/{websearch-toolkit.ts → toolkit.ts} +6 -1
  394. package/src/crud/graph.test.ts +12 -14
  395. package/src/crud/graph.ts +11 -11
  396. package/src/errors.ts +25 -0
  397. package/src/functions/READ_THIS.md +5 -0
  398. package/src/functions/agent/definitions.ts +51 -0
  399. package/src/functions/agent/index.ts +3 -5
  400. package/src/functions/agent/prompt.conversations.json +1 -0
  401. package/src/functions/agent/prompt.test.ts +81 -0
  402. package/src/functions/agent/prompt.ts +209 -106
  403. package/src/functions/index.ts +0 -6
  404. package/src/index.ts +2 -1
  405. package/src/sync/sync.ts +25 -14
  406. package/src/testing/index.ts +1 -0
  407. package/src/testing/plugins.tsx +30 -19
  408. package/src/toolkits/WebToolkit.ts +33 -0
  409. package/src/toolkits/index.ts +1 -2
  410. package/src/types/Agent.ts +239 -0
  411. package/src/types/Chat.ts +63 -0
  412. package/src/types/McpServer.ts +37 -0
  413. package/src/types/Memory.ts +24 -0
  414. package/src/types/Plan.ts +110 -0
  415. package/src/types/index.ts +9 -0
  416. package/dist/lib/browser/index.mjs +0 -2880
  417. package/dist/lib/browser/index.mjs.map +0 -7
  418. package/dist/lib/browser/meta.json +0 -1
  419. package/dist/lib/browser/testing/index.mjs +0 -43
  420. package/dist/lib/browser/testing/index.mjs.map +0 -7
  421. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +0 -11
  422. package/dist/lib/node-esm/index.mjs +0 -2881
  423. package/dist/lib/node-esm/index.mjs.map +0 -7
  424. package/dist/lib/node-esm/meta.json +0 -1
  425. package/dist/lib/node-esm/testing/index.mjs +0 -44
  426. package/dist/lib/node-esm/testing/index.mjs.map +0 -7
  427. package/dist/types/src/blueprints/design/design-blueprint.d.ts +0 -18
  428. package/dist/types/src/blueprints/design/design-blueprint.d.ts.map +0 -1
  429. package/dist/types/src/blueprints/design/design-blueprint.test.d.ts +0 -2
  430. package/dist/types/src/blueprints/design/design-blueprint.test.d.ts.map +0 -1
  431. package/dist/types/src/blueprints/design/index.d.ts +0 -3
  432. package/dist/types/src/blueprints/design/index.d.ts.map +0 -1
  433. package/dist/types/src/blueprints/discord/discord-blueprint.d.ts +0 -18
  434. package/dist/types/src/blueprints/discord/discord-blueprint.d.ts.map +0 -1
  435. package/dist/types/src/blueprints/linear/linear-blueprint.d.ts +0 -18
  436. package/dist/types/src/blueprints/linear/linear-blueprint.d.ts.map +0 -1
  437. package/dist/types/src/blueprints/planning/planning-blueprint.d.ts +0 -18
  438. package/dist/types/src/blueprints/planning/planning-blueprint.d.ts.map +0 -1
  439. package/dist/types/src/blueprints/planning/planning-blueprint.test.d.ts +0 -2
  440. package/dist/types/src/blueprints/planning/planning-blueprint.test.d.ts.map +0 -1
  441. package/dist/types/src/blueprints/research/index.d.ts +0 -3
  442. package/dist/types/src/blueprints/research/index.d.ts.map +0 -1
  443. package/dist/types/src/blueprints/research/research-blueprint.d.ts +0 -18
  444. package/dist/types/src/blueprints/research/research-blueprint.d.ts.map +0 -1
  445. package/dist/types/src/blueprints/research/research-blueprint.test.d.ts +0 -2
  446. package/dist/types/src/blueprints/research/research-blueprint.test.d.ts.map +0 -1
  447. package/dist/types/src/blueprints/websearch/websearch-blueprint.d.ts +0 -18
  448. package/dist/types/src/blueprints/websearch/websearch-blueprint.d.ts.map +0 -1
  449. package/dist/types/src/blueprints/websearch/websearch-toolkit.d.ts.map +0 -1
  450. package/dist/types/src/experimental/feed.test.d.ts +0 -2
  451. package/dist/types/src/experimental/feed.test.d.ts.map +0 -1
  452. package/dist/types/src/functions/discord/fetch-messages.d.ts.map +0 -1
  453. package/dist/types/src/functions/discord/fetch-messages.test.d.ts.map +0 -1
  454. package/dist/types/src/functions/discord/index.d.ts +0 -12
  455. package/dist/types/src/functions/discord/index.d.ts.map +0 -1
  456. package/dist/types/src/functions/document/index.d.ts +0 -13
  457. package/dist/types/src/functions/document/index.d.ts.map +0 -1
  458. package/dist/types/src/functions/document/read.d.ts +0 -7
  459. package/dist/types/src/functions/document/read.d.ts.map +0 -1
  460. package/dist/types/src/functions/document/update.d.ts +0 -6
  461. package/dist/types/src/functions/document/update.d.ts.map +0 -1
  462. package/dist/types/src/functions/entity-extraction/entity-extraction.d.ts +0 -174
  463. package/dist/types/src/functions/entity-extraction/entity-extraction.d.ts.map +0 -1
  464. package/dist/types/src/functions/entity-extraction/entity-extraction.test.d.ts +0 -2
  465. package/dist/types/src/functions/entity-extraction/entity-extraction.test.d.ts.map +0 -1
  466. package/dist/types/src/functions/entity-extraction/index.d.ts +0 -175
  467. package/dist/types/src/functions/entity-extraction/index.d.ts.map +0 -1
  468. package/dist/types/src/functions/exa/data/exa-search-1748337321991.d.ts +0 -38
  469. package/dist/types/src/functions/exa/data/exa-search-1748337321991.d.ts.map +0 -1
  470. package/dist/types/src/functions/exa/data/exa-search-1748337331526.d.ts +0 -37
  471. package/dist/types/src/functions/exa/data/exa-search-1748337331526.d.ts.map +0 -1
  472. package/dist/types/src/functions/exa/data/exa-search-1748337344119.d.ts +0 -58
  473. package/dist/types/src/functions/exa/data/exa-search-1748337344119.d.ts.map +0 -1
  474. package/dist/types/src/functions/exa/data/index.d.ts +0 -3
  475. package/dist/types/src/functions/exa/data/index.d.ts.map +0 -1
  476. package/dist/types/src/functions/exa/exa.d.ts +0 -5
  477. package/dist/types/src/functions/exa/exa.d.ts.map +0 -1
  478. package/dist/types/src/functions/exa/index.d.ts +0 -3
  479. package/dist/types/src/functions/exa/index.d.ts.map +0 -1
  480. package/dist/types/src/functions/exa/mock.d.ts +0 -5
  481. package/dist/types/src/functions/exa/mock.d.ts.map +0 -1
  482. package/dist/types/src/functions/github/fetch-prs.d.ts +0 -6
  483. package/dist/types/src/functions/github/fetch-prs.d.ts.map +0 -1
  484. package/dist/types/src/functions/linear/index.d.ts +0 -9
  485. package/dist/types/src/functions/linear/index.d.ts.map +0 -1
  486. package/dist/types/src/functions/linear/linear.test.d.ts.map +0 -1
  487. package/dist/types/src/functions/linear/sync-issues.d.ts +0 -12
  488. package/dist/types/src/functions/linear/sync-issues.d.ts.map +0 -1
  489. package/dist/types/src/functions/research/document-create.d.ts +0 -9
  490. package/dist/types/src/functions/research/document-create.d.ts.map +0 -1
  491. package/dist/types/src/functions/research/index.d.ts +0 -21
  492. package/dist/types/src/functions/research/index.d.ts.map +0 -1
  493. package/dist/types/src/functions/research/research-graph.d.ts +0 -19
  494. package/dist/types/src/functions/research/research-graph.d.ts.map +0 -1
  495. package/dist/types/src/functions/research/research.d.ts +0 -14
  496. package/dist/types/src/functions/research/research.d.ts.map +0 -1
  497. package/dist/types/src/functions/research/research.test.d.ts +0 -2
  498. package/dist/types/src/functions/research/research.test.d.ts.map +0 -1
  499. package/dist/types/src/functions/research/types.d.ts +0 -6
  500. package/dist/types/src/functions/research/types.d.ts.map +0 -1
  501. package/dist/types/src/functions/tasks/index.d.ts +0 -15
  502. package/dist/types/src/functions/tasks/index.d.ts.map +0 -1
  503. package/dist/types/src/functions/tasks/read.d.ts +0 -7
  504. package/dist/types/src/functions/tasks/read.d.ts.map +0 -1
  505. package/dist/types/src/functions/tasks/task-list.d.ts +0 -74
  506. package/dist/types/src/functions/tasks/task-list.d.ts.map +0 -1
  507. package/dist/types/src/functions/tasks/task-list.test.d.ts +0 -2
  508. package/dist/types/src/functions/tasks/task-list.test.d.ts.map +0 -1
  509. package/dist/types/src/functions/tasks/update.d.ts +0 -9
  510. package/dist/types/src/functions/tasks/update.d.ts.map +0 -1
  511. package/dist/types/src/initiative/Initiative.d.ts +0 -84
  512. package/dist/types/src/initiative/Initiative.d.ts.map +0 -1
  513. package/dist/types/src/initiative/InitiativeSchema.d.ts +0 -19
  514. package/dist/types/src/initiative/InitiativeSchema.d.ts.map +0 -1
  515. package/dist/types/src/initiative/functions/agent.d.ts +0 -37
  516. package/dist/types/src/initiative/functions/agent.d.ts.map +0 -1
  517. package/dist/types/src/initiative/functions/getContext.d.ts +0 -17
  518. package/dist/types/src/initiative/functions/getContext.d.ts.map +0 -1
  519. package/dist/types/src/initiative/functions/index.d.ts +0 -4
  520. package/dist/types/src/initiative/functions/index.d.ts.map +0 -1
  521. package/dist/types/src/initiative/functions/update.d.ts +0 -7
  522. package/dist/types/src/initiative/functions/update.d.ts.map +0 -1
  523. package/dist/types/src/initiative/index.d.ts +0 -1
  524. package/dist/types/src/initiative/index.d.ts.map +0 -1
  525. package/dist/types/src/initiative/initiative.test.d.ts +0 -2
  526. package/dist/types/src/initiative/initiative.test.d.ts.map +0 -1
  527. package/dist/types/src/toolkits/AssistantToolkit.d.ts +0 -43
  528. package/dist/types/src/toolkits/AssistantToolkit.d.ts.map +0 -1
  529. package/dist/types/src/toolkits/AssistantToolkit.test.d.ts +0 -2
  530. package/dist/types/src/toolkits/AssistantToolkit.test.d.ts.map +0 -1
  531. package/dist/types/src/toolkits/SystemToolkit.d.ts +0 -99
  532. package/dist/types/src/toolkits/SystemToolkit.d.ts.map +0 -1
  533. package/src/blueprints/design/design-blueprint.test.ts +0 -105
  534. package/src/blueprints/design/design-blueprint.ts +0 -31
  535. package/src/blueprints/design/index.ts +0 -7
  536. package/src/blueprints/discord/discord-blueprint.ts +0 -32
  537. package/src/blueprints/linear/linear-blueprint.ts +0 -33
  538. package/src/blueprints/planning/planning-blueprint.test.ts +0 -126
  539. package/src/blueprints/planning/planning-blueprint.ts +0 -96
  540. package/src/blueprints/research/index.ts +0 -7
  541. package/src/blueprints/research/research-blueprint.test.ts +0 -7
  542. package/src/blueprints/research/research-blueprint.ts +0 -51
  543. package/src/blueprints/websearch/websearch-blueprint.ts +0 -18
  544. package/src/experimental/feed.test.ts +0 -111
  545. package/src/functions/discord/fetch-messages.test.ts +0 -58
  546. package/src/functions/discord/fetch-messages.ts +0 -252
  547. package/src/functions/discord/index.ts +0 -9
  548. package/src/functions/document/index.ts +0 -12
  549. package/src/functions/document/read.ts +0 -30
  550. package/src/functions/document/update.ts +0 -33
  551. package/src/functions/entity-extraction/entity-extraction.conversations.json +0 -6597
  552. package/src/functions/entity-extraction/entity-extraction.test.ts +0 -93
  553. package/src/functions/entity-extraction/entity-extraction.ts +0 -183
  554. package/src/functions/entity-extraction/index.ts +0 -9
  555. package/src/functions/exa/data/exa-search-1748337321991.ts +0 -131
  556. package/src/functions/exa/data/exa-search-1748337331526.ts +0 -144
  557. package/src/functions/exa/data/exa-search-1748337344119.ts +0 -133
  558. package/src/functions/exa/data/index.ts +0 -11
  559. package/src/functions/exa/exa.ts +0 -37
  560. package/src/functions/exa/index.ts +0 -6
  561. package/src/functions/exa/mock.ts +0 -71
  562. package/src/functions/github/fetch-prs.ts +0 -31
  563. package/src/functions/linear/index.ts +0 -9
  564. package/src/functions/linear/linear.test.ts +0 -84
  565. package/src/functions/research/document-create.ts +0 -76
  566. package/src/functions/research/index.ts +0 -14
  567. package/src/functions/research/research-graph.ts +0 -49
  568. package/src/functions/research/research-instructions.tpl +0 -106
  569. package/src/functions/research/research.conversations.json +0 -1
  570. package/src/functions/research/research.test.ts +0 -171
  571. package/src/functions/research/research.ts +0 -189
  572. package/src/functions/research/types.ts +0 -26
  573. package/src/functions/tasks/index.ts +0 -11
  574. package/src/functions/tasks/read.ts +0 -35
  575. package/src/functions/tasks/task-list.test.ts +0 -99
  576. package/src/functions/tasks/task-list.ts +0 -165
  577. package/src/functions/tasks/update.ts +0 -53
  578. package/src/initiative/Initiative.ts +0 -99
  579. package/src/initiative/InitiativeSchema.ts +0 -37
  580. package/src/initiative/functions/agent.ts +0 -57
  581. package/src/initiative/functions/getContext.ts +0 -74
  582. package/src/initiative/functions/index.ts +0 -7
  583. package/src/initiative/functions/update.ts +0 -63
  584. package/src/initiative/index.ts +0 -3
  585. package/src/initiative/initiative.conversations.json +0 -1
  586. package/src/toolkits/AssistantToolkit.conversations.json +0 -1
  587. package/src/toolkits/AssistantToolkit.test.ts +0 -94
  588. package/src/toolkits/AssistantToolkit.ts +0 -70
  589. package/src/toolkits/SystemToolkit.ts +0 -299
  590. /package/dist/lib/{browser → neutral}/chunk-J5LGTIGS.mjs +0 -0
  591. /package/dist/lib/{browser → neutral}/chunk-J5LGTIGS.mjs.map +0 -0
  592. /package/dist/lib/{node-esm/chunk-HSLMI22Q.mjs.map → neutral/project-2YBPW5N7.mjs.map} +0 -0
  593. /package/dist/types/src/{functions/discord → blueprints/discord/functions}/fetch-messages.test.d.ts +0 -0
  594. /package/dist/types/src/{functions/linear → blueprints/linear/functions}/linear.test.d.ts +0 -0
@@ -0,0 +1,46 @@
1
+ //
2
+ // Copyright 2026 DXOS.org
3
+ //
4
+
5
+ import * as Effect from 'effect/Effect';
6
+
7
+ import { Operation } from '@dxos/compute';
8
+ import { Database, Obj } from '@dxos/echo';
9
+
10
+ import { Plan, Agent } from '../../../types';
11
+ import { GetContext } from './definitions';
12
+
13
+ export default GetContext.pipe(
14
+ Operation.withHandler(
15
+ Effect.fnUntraced(function* () {
16
+ const agent = yield* Agent.getFromChatContext;
17
+
18
+ return {
19
+ id: agent.id,
20
+ name: agent.name,
21
+ instructions: yield* agent.instructions.pipe(Database.load).pipe(
22
+ Effect.map((_) => _.content),
23
+ Effect.catchTag('ObjectNotFoundError', () => Effect.succeed('No instructions found.')),
24
+ ),
25
+ plan: yield* (
26
+ agent.plan?.pipe(Database.load).pipe(
27
+ Effect.map(Plan.formatPlan),
28
+ Effect.catchTag('ObjectNotFoundError', () => Effect.succeed('No plan found.')),
29
+ ) ?? Effect.succeed('No plan found.')
30
+ ),
31
+ artifacts: yield* Effect.forEach(agent.artifacts, (artifact) =>
32
+ Effect.gen(function* () {
33
+ return {
34
+ name: artifact.name,
35
+ type: yield* Database.load(artifact.data).pipe(
36
+ Effect.map(Obj.getTypename),
37
+ Effect.catchTag('ObjectNotFoundError', () => Effect.succeed('Artifact not found.')),
38
+ ),
39
+ dxn: artifact.data.dxn.toString(),
40
+ };
41
+ }),
42
+ ),
43
+ };
44
+ }) as any,
45
+ ),
46
+ );
@@ -0,0 +1,14 @@
1
+ //
2
+ // Copyright 2026 DXOS.org
3
+ //
4
+
5
+ import { OperationHandlerSet } from '@dxos/compute';
6
+
7
+ export * from './definitions';
8
+
9
+ export const AgentBlueprintHandlers = OperationHandlerSet.lazy(
10
+ () => import('./add-artifact'),
11
+ () => import('./agent'),
12
+ () => import('./get-context'),
13
+ () => import('./qualifier'),
14
+ );
@@ -0,0 +1,90 @@
1
+ //
2
+ // Copyright 2026 DXOS.org
3
+ //
4
+
5
+ import * as LanguageModel from '@effect/ai/LanguageModel';
6
+ import * as Prompt from '@effect/ai/Prompt';
7
+ import * as Effect from 'effect/Effect';
8
+ import * as Schema from 'effect/Schema';
9
+
10
+ import { AiService } from '@dxos/ai';
11
+ import { Operation } from '@dxos/compute';
12
+ import { Database, Obj, Ref } from '@dxos/echo';
13
+ import { invariant } from '@dxos/invariant';
14
+ import { trim } from '@dxos/util';
15
+
16
+ import { Plan, Agent } from '../../../types';
17
+ import { Qualifier } from './definitions';
18
+
19
+ export default Qualifier.pipe(
20
+ Operation.withHandler(
21
+ Effect.fnUntraced(
22
+ function* ({ agent: agentRef, event }) {
23
+ const agent = yield* Database.load(agentRef);
24
+ invariant(Obj.instanceOf(Agent.Agent, agent));
25
+ invariant(agent.chat, 'Agent has no chat.');
26
+
27
+ const { id, name, queue } = agent;
28
+ if (!queue) {
29
+ throw new Error('Agent has no queue.');
30
+ }
31
+
32
+ const plan = yield* Database.load(agent.plan);
33
+ const instructions = yield* Database.load(agent.instructions);
34
+
35
+ const { value } = yield* Effect.scoped(
36
+ LanguageModel.generateObject({
37
+ schema: Schema.Struct({
38
+ isRelevant: Schema.Boolean,
39
+ }),
40
+ prompt: Prompt.fromMessages([
41
+ Prompt.systemMessage({
42
+ content: trim`
43
+ You are a qualifying agent that determines if the event is relevant to the agent.
44
+ Respond with true if the event is relevant to the agent, false otherwise.
45
+ If you are not sure, return true.
46
+ The qualified events will be forwarded to the larger agent that will process them.
47
+ <agent id="${id}" name="${name}">
48
+ <instructions>
49
+ ${instructions.content}
50
+ </instructions>
51
+ <plan>
52
+ ${Plan.formatPlan(plan)}
53
+ </plan>
54
+ </agent>
55
+ `,
56
+ }),
57
+ Prompt.userMessage({
58
+ content: [
59
+ Prompt.makePart('text', {
60
+ text: trim`
61
+ <event>
62
+ ${JSON.stringify(event, null, 2)}
63
+ </event>
64
+ `,
65
+ }),
66
+ ],
67
+ }),
68
+ ]),
69
+ }),
70
+ );
71
+
72
+ const { isRelevant } = value as { isRelevant: boolean };
73
+
74
+ if (isRelevant) {
75
+ const queueTarget = yield* Database.load(queue);
76
+ if ('queue' in event && event.item) {
77
+ const obj = event.item;
78
+ yield* Effect.promise(() => queueTarget.append([obj]));
79
+ } else if ('subject' in event && Ref.isRef(event.subject)) {
80
+ const obj = yield* Database.load(event.subject);
81
+ yield* Effect.promise(() => queueTarget.append([obj]));
82
+ } else {
83
+ throw new Error('Invalid event.');
84
+ }
85
+ }
86
+ },
87
+ Effect.provide(AiService.model('@anthropic/claude-sonnet-4-5')),
88
+ ),
89
+ ),
90
+ );
@@ -0,0 +1,6 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ export { default as AgentBlueprint } from './blueprint';
6
+ export { AgentWorker, Qualifier, GetContext, AddArtifact, AgentBlueprintHandlers } from './functions';
@@ -0,0 +1,52 @@
1
+ //
2
+ // Copyright 2026 DXOS.org
3
+ //
4
+
5
+ import { Blueprint, Template } from '@dxos/compute';
6
+ import { trim } from '@dxos/util';
7
+
8
+ import { AgentRules, CreateAgent, SyncTriggers } from './functions';
9
+
10
+ const BLUEPRINT_KEY = 'org.dxos.blueprint.agent-wizard';
11
+
12
+ /**
13
+ * Creates the Agent Wizard blueprint. This is a function to avoid circular dependency issues.
14
+ */
15
+ // TODO(dmaretskyi): Combine with Agent Blueprint.
16
+ const make = () =>
17
+ Blueprint.make({
18
+ key: BLUEPRINT_KEY,
19
+ name: 'Agent Wizard',
20
+ description: 'Help the user create a new agent (subscriptions, optional cron timer, sync-triggers after edits).',
21
+ agentCanEnable: true,
22
+ instructions: Template.make({
23
+ source: trim`
24
+ You are a wizard that helps the user create a new agent.
25
+
26
+ Agents are goal oriented and autonomously driven.
27
+ Each agent has instructions - the goal of the agent.
28
+ The instructions also typically describe what actions to perform in reaction to events (emails).
29
+ The agent has a number of associated artifacts to work with.
30
+ Agents can subscribe to emails.
31
+
32
+ Agents have a \`cron\` field: when set, the agent runs on a timer on that schedule (standard cron syntax).
33
+ Use \`cron\` when the user wants the agent to run periodically (e.g. "every morning", "once a day", "every 5 minutes").
34
+ Examples: \`0 9 * * *\` for daily at 09:00, or \`*/5 * * * *\` for every 5 minutes.
35
+ Timer triggers bypass the qualifier and invoke the agent worker directly on the schedule.
36
+
37
+ The agent itself is an ECHO object and can be edited like any other object using the database blueprint.
38
+ You can edit the agent's instructions, name, and other properties directly.
39
+ If you edit the agent's \`enabled\` field, \`filterEvents\` field, subscriptions array, or \`cron\` field, you MUST call the sync-triggers function afterward to synchronize the triggers (\`enabled\` is applied to all triggers).
40
+
41
+ IMPORTANT: Before attempting to create an agent call the [agent-rules] tool to get the rules for creating an agent.
42
+ `,
43
+ }),
44
+ tools: Blueprint.toolDefinitions({ operations: [AgentRules, CreateAgent, SyncTriggers] }),
45
+ });
46
+
47
+ const blueprint: Blueprint.Definition = {
48
+ key: BLUEPRINT_KEY,
49
+ make,
50
+ };
51
+
52
+ export default blueprint;
@@ -0,0 +1,32 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import * as Effect from 'effect/Effect';
6
+
7
+ import { Blueprint, Operation } from '@dxos/compute';
8
+ import { Obj, Ref } from '@dxos/echo';
9
+
10
+ import { Agent } from '../../../types';
11
+ import { AgentBlueprint } from '../../project';
12
+ import { CreateAgent, SyncTriggers } from './definitions';
13
+
14
+ export default CreateAgent.pipe(
15
+ Operation.withHandler(
16
+ Effect.fnUntraced(function* ({ name, instructions, blueprints, subscriptions }) {
17
+ const agent = yield* Agent.makeInitialized(
18
+ {
19
+ name,
20
+ instructions,
21
+ blueprints: yield* Effect.forEach(blueprints, (key) =>
22
+ Blueprint.upsert(key).pipe(Effect.map(Ref.make), Effect.orDie),
23
+ ),
24
+ subscriptions,
25
+ },
26
+ Obj.clone(AgentBlueprint.make()),
27
+ );
28
+ yield* Operation.invoke(SyncTriggers, { agent: Ref.make(agent) });
29
+ return agent;
30
+ }),
31
+ ),
32
+ );
@@ -0,0 +1,63 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import * as Schema from 'effect/Schema';
6
+
7
+ import { Blueprint, Operation } from '@dxos/compute';
8
+ import { Database, Feed, Obj, Ref } from '@dxos/echo';
9
+ import { QueueService } from '@dxos/functions';
10
+
11
+ import { Agent } from '../../../types';
12
+
13
+ export const AgentRules = Operation.make({
14
+ meta: {
15
+ key: 'org.dxos.function.agent-wizard.agent-rules',
16
+ name: 'Agent rules',
17
+ description: 'Gets the rules for creating an agent.',
18
+ },
19
+ input: Schema.Struct({}),
20
+ output: Schema.String,
21
+ });
22
+
23
+ export const CreateAgent = Operation.make({
24
+ meta: {
25
+ key: 'org.dxos.function.agent-wizard.create-agent',
26
+ name: 'Create agent',
27
+ description: 'Creates a new agent.',
28
+ },
29
+ input: Schema.Struct({
30
+ name: Schema.String.annotations({
31
+ description: 'The name of the agent to create.',
32
+ }),
33
+ instructions: Schema.String.annotations({
34
+ description:
35
+ 'The goal of the agent. Be specific but not too verbose. The agent will use this as a core objective and set of rules to follow.',
36
+ }),
37
+ blueprints: Schema.Array(Schema.String).annotations({
38
+ description: 'The blueprint keys to use for the agent.',
39
+ examples: [['org.dxos.blueprint.markdown', 'org.dxos.blueprint.database']],
40
+ }),
41
+ subscriptions: Schema.Array(Ref.Ref(Obj.Unknown)).annotations({
42
+ description: 'The objects to subscribe to for the agent. Can be references to mailboxes.',
43
+ }),
44
+ }),
45
+ output: Agent.Agent,
46
+ services: [Blueprint.RegistryService, Database.Service, QueueService, Feed.FeedService],
47
+ });
48
+
49
+ export const SyncTriggers = Operation.make({
50
+ meta: {
51
+ key: 'org.dxos.function.agent.sync-triggers',
52
+ name: 'Sync triggers',
53
+ description:
54
+ 'Synchronizes triggers with the agent: subscriptions, cron, filter-events, and enabled (copied to every trigger). Call after editing those fields.',
55
+ },
56
+ input: Schema.Struct({
57
+ agent: Ref.Ref(Agent.Agent).annotations({
58
+ description: 'The agent whose triggers should be synced.',
59
+ }),
60
+ }),
61
+ output: Schema.Void,
62
+ services: [Database.Service],
63
+ });
@@ -0,0 +1,13 @@
1
+ //
2
+ // Copyright 2026 DXOS.org
3
+ //
4
+
5
+ import { OperationHandlerSet } from '@dxos/compute';
6
+
7
+ export * from './definitions';
8
+
9
+ export const AgentWizardHandlers = OperationHandlerSet.lazy(
10
+ () => import('./create-project'),
11
+ () => import('./project-rules'),
12
+ () => import('./sync-triggers'),
13
+ );
@@ -0,0 +1,77 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import * as Effect from 'effect/Effect';
6
+
7
+ import { Operation } from '@dxos/compute';
8
+ import { trim } from '@dxos/util';
9
+
10
+ import { AgentRules } from './definitions';
11
+
12
+ export default AgentRules.pipe(
13
+ Operation.withHandler(
14
+ Effect.fnUntraced(function* () {
15
+ return trim`
16
+ You can ask the user for qualifying questions about the agents.
17
+ If agents should actively read incoming emails, query for mailboxes and add a subscription to them.
18
+ If the user wants the agent to run on a schedule (e.g. "every morning", "every 5 minutes"), set the agent's \`cron\` field to a standard cron expression (e.g. \`0 9 * * *\` for daily at 09:00, \`*/5 * * * *\` for every 5 minutes). Timer triggers bypass the qualifier and invoke the agent worker directly on the schedule.
19
+ Use [query-blueprints] from the Blueprint Manager to query for available blueprints and their keys.
20
+ Use [create-agent] function to create a new agent.
21
+
22
+ Notable blueprints (query to get their keys):
23
+
24
+ - Blueprint Manger - allows agent to self-enable blueprints (always include this one).
25
+ - Database -- CRUD on objects in the ECHO database.
26
+ - Markdown -- Create and edit markdown documents.
27
+ - Websearch -- Search the web for information.
28
+ - Browser -- Virtual browser via playwright when simple WebSearch is not enough.
29
+ - Memory -- Memory to store and retrieve information.
30
+
31
+ Experimental blueprints that are discouraged:
32
+
33
+ - Research
34
+ - Design
35
+ - Agent (not wizard) -- those are agent internals, they are auto-added to every new agent.
36
+
37
+ <example_agent>
38
+ ## CRM from your inbox
39
+
40
+ Blueprints: database, websearch, browser
41
+
42
+ Subscribe to your inboxes.
43
+ Spec says that on every email we should extract People and Organizations and save them to the database, but first query the database for existing people and organizations to avoid duplicates.
44
+ Also run a quick research on the web to find more information about the person or organization and save it to the database.
45
+ </example_agent>
46
+
47
+ <example_agent>
48
+ ## Parcel tracking
49
+
50
+ Blueprints: database
51
+
52
+ Based on emails from vendors (amazon, fedex, etc.) track the status of the parcels ordered online and keep a table of orders.
53
+
54
+ Before creating an agent, use the Database blueprint to create an Order schema:
55
+ - seller
56
+ - name
57
+ - price
58
+ - status (enum of: pending, shipped, waiting for pickup, delivered, cancelled, returned)
59
+ - tracking numbers/notes
60
+ - date of delivery
61
+ - shipping address
62
+ </example_agent>
63
+
64
+ <example_agent>
65
+ ## Comms assistant
66
+
67
+ Blueprints: database, markdown, inbox
68
+
69
+ Helps user maintain comms with external parites via email.
70
+ Ask user specifically who they want to communicate with and on what topic.
71
+ Agent should keep a markdown document in artifacts outlining the current state of the comms.
72
+ Agent should propose drafts to follow up on the comms. Only propose sensible drafts, do not propose drafts that are not relevant or actionable.
73
+ </example_agent>
74
+ `;
75
+ }),
76
+ ),
77
+ );
@@ -0,0 +1,158 @@
1
+ //
2
+ // Copyright 2026 DXOS.org
3
+ //
4
+
5
+ import * as Effect from 'effect/Effect';
6
+ import * as Option from 'effect/Option';
7
+
8
+ import { Trigger, Operation } from '@dxos/compute';
9
+ import { Database, Feed, Filter, Obj, Ref } from '@dxos/echo';
10
+ import { FeedAnnotation } from '@dxos/schema';
11
+
12
+ import { Agent } from '../../../types';
13
+ import { SyncTriggers } from './definitions';
14
+
15
+ export default SyncTriggers.pipe(
16
+ Operation.withHandler(
17
+ Effect.fn(function* ({ agent: agentRef }) {
18
+ const agent = yield* Database.load(agentRef);
19
+ yield* syncAgentTriggers(agent);
20
+ }),
21
+ ),
22
+ );
23
+
24
+ /**
25
+ * Foreign key {@link AGENT_TRIGGER_EXTENSION_KEY} => <agent id : ObjectId>.
26
+ */
27
+ const AGENT_TRIGGER_EXTENSION_KEY = 'org.dxos.extension.AgentTrigger';
28
+
29
+ /**
30
+ * Foreign key {@link AGENT_TRIGGER_TARGET_EXTENSION_KEY} => <dxn string of subscription target>.
31
+ */
32
+ const AGENT_TRIGGER_TARGET_EXTENSION_KEY = 'org.dxos.extension.AgentTriggerTarget';
33
+
34
+ /** Checks if an object's schema has the FeedAnnotation. */
35
+ const hasFeedAnnotation = (obj: Obj.Unknown): boolean => {
36
+ const schema = Obj.getSchema(obj);
37
+ if (!schema) {
38
+ return false;
39
+ }
40
+ const annotation = FeedAnnotation.get(schema);
41
+ return Option.isSome(annotation) && annotation.value === true;
42
+ };
43
+
44
+ /**
45
+ * Syncs triggers in the database with the agent subscriptions.
46
+ */
47
+ const syncAgentTriggers = (agent: Agent.Agent): Effect.Effect<void, never, Database.Service> =>
48
+ Effect.gen(function* () {
49
+ const triggers = yield* Database.runQuery(
50
+ Filter.foreignKeys(Trigger.Trigger, [{ source: AGENT_TRIGGER_EXTENSION_KEY, id: agent.id }]),
51
+ );
52
+
53
+ // Remove all existing triggers — they will be recreated with the current config.
54
+ // This ensures operation, concurrency, and enabled stay in sync when agent fields change.
55
+ for (const trigger of triggers) {
56
+ yield* Database.remove(trigger);
57
+ }
58
+
59
+ const triggersEnabled = agent.enabled ?? true;
60
+
61
+ // Lazy import to avoid circular dependency issues.
62
+ const { Qualifier, AgentWorker } = yield* Effect.promise(() => import('../../project'));
63
+
64
+ for (const subscription of agent.subscriptions) {
65
+ const targetOption = yield* Database.loadOption(subscription);
66
+ if (Option.isNone(targetOption)) {
67
+ continue;
68
+ }
69
+ const target = targetOption.value;
70
+
71
+ let feedObj: Feed.Feed | undefined;
72
+ if (Obj.instanceOf(Feed.Feed, target)) {
73
+ feedObj = target;
74
+ } else if (hasFeedAnnotation(target)) {
75
+ const feedRef = (target as Obj.Unknown & { feed?: Ref.Ref<Feed.Feed> }).feed;
76
+ feedObj = feedRef ? Option.getOrUndefined(yield* Database.loadOption(feedRef)) : undefined;
77
+ }
78
+
79
+ const queueDxn = Option.fromNullable(feedObj).pipe(
80
+ Option.filter(Obj.instanceOf(Feed.Feed)),
81
+ Option.map(Feed.getQueueDxn),
82
+ Option.getOrUndefined,
83
+ );
84
+ if (!queueDxn) {
85
+ continue;
86
+ }
87
+
88
+ const filterEvents = agent.filterEvents ?? true;
89
+
90
+ yield* Database.add(
91
+ Trigger.make({
92
+ [Obj.Parent]: agent,
93
+ [Obj.Meta]: {
94
+ keys: [
95
+ { source: AGENT_TRIGGER_EXTENSION_KEY, id: agent.id },
96
+ { source: AGENT_TRIGGER_TARGET_EXTENSION_KEY, id: subscription.dxn.toString() },
97
+ ],
98
+ },
99
+ enabled: triggersEnabled,
100
+ spec: Trigger.specQueue(queueDxn.toString()),
101
+ function: Ref.make(Operation.serialize(filterEvents ? Qualifier : AgentWorker)),
102
+ input: {
103
+ agent: Ref.make(agent),
104
+ event: '{{event}}',
105
+ },
106
+ concurrency: filterEvents ? 5 : undefined,
107
+ }),
108
+ );
109
+ }
110
+
111
+ if ((agent.filterEvents ?? true) && agent.queue) {
112
+ yield* Database.add(
113
+ Trigger.make({
114
+ [Obj.Parent]: agent,
115
+ [Obj.Meta]: {
116
+ keys: [
117
+ { source: AGENT_TRIGGER_EXTENSION_KEY, id: agent.id },
118
+ {
119
+ source: AGENT_TRIGGER_TARGET_EXTENSION_KEY,
120
+ id: Obj.getDXN(agent)?.toString() ?? '',
121
+ },
122
+ ],
123
+ },
124
+ function: Ref.make(Operation.serialize(AgentWorker)),
125
+ enabled: triggersEnabled,
126
+ spec: Trigger.specQueue(agent.queue.dxn.toString()),
127
+ input: {
128
+ agent: Ref.make(agent),
129
+ event: '{{event}}',
130
+ },
131
+ }),
132
+ );
133
+ }
134
+
135
+ // Timer trigger bypasses the qualifier and invokes the agent worker directly on a schedule.
136
+ if (agent.cron) {
137
+ yield* Database.add(
138
+ Trigger.make({
139
+ [Obj.Parent]: agent,
140
+ [Obj.Meta]: {
141
+ keys: [
142
+ { source: AGENT_TRIGGER_EXTENSION_KEY, id: agent.id },
143
+ { source: AGENT_TRIGGER_TARGET_EXTENSION_KEY, id: `timer:${agent.cron}` },
144
+ ],
145
+ },
146
+ enabled: triggersEnabled,
147
+ spec: Trigger.specTimer(agent.cron),
148
+ function: Ref.make(Operation.serialize(AgentWorker)),
149
+ input: {
150
+ agent: Ref.make(agent),
151
+ event: '{{event}}',
152
+ },
153
+ }),
154
+ );
155
+ }
156
+
157
+ yield* Database.flush();
158
+ });
@@ -0,0 +1,6 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ export { default as AgentWizardBlueprint } from './blueprint';
6
+ export { AgentRules, CreateAgent, SyncTriggers, AgentWizardHandlers } from './functions';
@@ -2,27 +2,30 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- import * as Toolkit from '@effect/ai/Toolkit';
5
+ import * as Arr from 'effect/Array';
6
6
  import * as Effect from 'effect/Effect';
7
+ import { pipe } from 'effect/Function';
7
8
 
8
9
  import { ConsolePrinter } from '@dxos/ai';
9
- import { type AiConversation, type AiConversationRunProps, GenerationObserver } from '@dxos/assistant';
10
+ import { AiContextService, type AiSession, type AiSessionRunProps, GenerationObserver } from '@dxos/assistant';
11
+ import type { Blueprint } from '@dxos/compute';
12
+ import { Database, Ref } from '@dxos/echo';
10
13
  import { log } from '@dxos/log';
11
14
 
12
- export type TestStep = Pick<AiConversationRunProps, 'prompt' | 'system'> & {
15
+ export type TestStep = Pick<AiSessionRunProps, 'prompt' | 'system'> & {
13
16
  test?: () => Promise<void>;
14
17
  };
15
18
 
16
19
  /**
17
20
  * Runs the prompt steps, calling the test function after each step.
18
21
  */
19
- export const runSteps = Effect.fn(function* (conversation: AiConversation, steps: TestStep[]) {
22
+ export const runSteps = Effect.fn(function* (session: AiSession, steps: TestStep[]) {
20
23
  for (const { test, ...props } of steps) {
21
- yield* conversation.createRequest({
24
+ yield* session.createRequest({
22
25
  ...props,
23
26
  observer: GenerationObserver.fromPrinter(new ConsolePrinter({ mode: 'json' })),
24
27
  });
25
- const messages = yield* Effect.promise(() => conversation.getHistory());
28
+ const messages = yield* Effect.promise(() => session.getHistory());
26
29
  log.info('conversation', { messages });
27
30
  if (test) {
28
31
  yield* Effect.promise(() => test());
@@ -30,5 +33,17 @@ export const runSteps = Effect.fn(function* (conversation: AiConversation, steps
30
33
  }
31
34
  });
32
35
 
33
- // TODO(wittjosiah): Don't cast.
34
- export const testToolkit = Toolkit.empty as Toolkit.Toolkit<any>;
36
+ /**
37
+ * Binds blueprints from the blueprint definitions.
38
+ */
39
+ // TODO(dmaretskyi): Potentially the agent will auto-bind the blueprints.
40
+ export const addBlueprints = Effect.fnUntraced(function* (blueprints: Blueprint.Definition[]) {
41
+ yield* AiContextService.bindContext({
42
+ blueprints: yield* pipe(
43
+ blueprints,
44
+ Arr.map((blueprint) => blueprint.make()),
45
+ Effect.forEach(Database.add),
46
+ Effect.map(Arr.map(Ref.make)),
47
+ ),
48
+ });
49
+ });