@dxos/assistant-toolkit 0.8.4-main.c85a9c8dae → 0.8.4-main.dfabb4ec29

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 (506) hide show
  1. package/dist/lib/neutral/add-artifact-ZUJ5DMSY.mjs +30 -0
  2. package/dist/lib/neutral/add-artifact-ZUJ5DMSY.mjs.map +7 -0
  3. package/dist/lib/neutral/agent-5NIKAYUK.mjs +65 -0
  4. package/dist/lib/neutral/agent-5NIKAYUK.mjs.map +7 -0
  5. package/dist/lib/neutral/chunk-246ACKSH.mjs +100 -0
  6. package/dist/lib/neutral/chunk-246ACKSH.mjs.map +7 -0
  7. package/dist/lib/neutral/chunk-EJAQUAKM.mjs +73 -0
  8. package/dist/lib/neutral/chunk-EJAQUAKM.mjs.map +7 -0
  9. package/dist/lib/neutral/chunk-FIGO6CA6.mjs +140 -0
  10. package/dist/lib/neutral/chunk-FIGO6CA6.mjs.map +7 -0
  11. package/dist/lib/neutral/chunk-GV66MKAQ.mjs +60 -0
  12. package/dist/lib/neutral/chunk-GV66MKAQ.mjs.map +7 -0
  13. package/dist/lib/neutral/chunk-IKBIORQX.mjs +332 -0
  14. package/dist/lib/neutral/chunk-IKBIORQX.mjs.map +7 -0
  15. package/dist/lib/neutral/chunk-KGU725LW.mjs +29 -0
  16. package/dist/lib/neutral/chunk-KGU725LW.mjs.map +7 -0
  17. package/dist/lib/neutral/chunk-NR3GTWRC.mjs +53 -0
  18. package/dist/lib/neutral/chunk-NR3GTWRC.mjs.map +7 -0
  19. package/dist/lib/neutral/chunk-P4ZMYO4K.mjs +294 -0
  20. package/dist/lib/neutral/chunk-P4ZMYO4K.mjs.map +7 -0
  21. package/dist/lib/neutral/chunk-QO5SU37C.mjs +70 -0
  22. package/dist/lib/neutral/chunk-QO5SU37C.mjs.map +7 -0
  23. package/dist/lib/neutral/chunk-ROMZO4CB.mjs +108 -0
  24. package/dist/lib/neutral/chunk-ROMZO4CB.mjs.map +7 -0
  25. package/dist/lib/neutral/chunk-TO5IX24K.mjs +67 -0
  26. package/dist/lib/neutral/chunk-TO5IX24K.mjs.map +7 -0
  27. package/dist/lib/neutral/chunk-WLR3BGO4.mjs +25 -0
  28. package/dist/lib/neutral/chunk-WLR3BGO4.mjs.map +7 -0
  29. package/dist/lib/neutral/chunk-XUF53B6B.mjs +75 -0
  30. package/dist/lib/neutral/chunk-XUF53B6B.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-VB7AOY3G.mjs +22 -0
  34. package/dist/lib/neutral/context-add-VB7AOY3G.mjs.map +7 -0
  35. package/dist/lib/neutral/context-remove-VCM3VPSO.mjs +22 -0
  36. package/dist/lib/neutral/context-remove-VCM3VPSO.mjs.map +7 -0
  37. package/dist/lib/neutral/create-project-EIF4OJMY.mjs +35 -0
  38. package/dist/lib/neutral/create-project-EIF4OJMY.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-QOBBCTGC.mjs +139 -0
  46. package/dist/lib/neutral/fetch-messages-QOBBCTGC.mjs.map +7 -0
  47. package/dist/lib/neutral/get-context-TN7X7U2H.mjs +35 -0
  48. package/dist/lib/neutral/get-context-TN7X7U2H.mjs.map +7 -0
  49. package/dist/lib/neutral/index.mjs +581 -3293
  50. package/dist/lib/neutral/index.mjs.map +4 -4
  51. package/dist/lib/neutral/load-ALP3TK2E.mjs +17 -0
  52. package/dist/lib/neutral/load-ALP3TK2E.mjs.map +7 -0
  53. package/dist/lib/neutral/meta.json +1 -1
  54. package/dist/lib/neutral/object-create-Z57Y3X6Y.mjs +35 -0
  55. package/dist/lib/neutral/object-create-Z57Y3X6Y.mjs.map +7 -0
  56. package/dist/lib/neutral/object-delete-X53LS37B.mjs +18 -0
  57. package/dist/lib/neutral/object-delete-X53LS37B.mjs.map +7 -0
  58. package/dist/lib/neutral/object-update-GVKSBR7T.mjs +28 -0
  59. package/dist/lib/neutral/object-update-GVKSBR7T.mjs.map +7 -0
  60. package/dist/lib/neutral/project-HPHTZ2CI.mjs +23 -0
  61. package/dist/lib/neutral/project-HPHTZ2CI.mjs.map +7 -0
  62. package/dist/lib/neutral/project-rules-IVDHKSKI.mjs +78 -0
  63. package/dist/lib/neutral/project-rules-IVDHKSKI.mjs.map +7 -0
  64. package/dist/lib/neutral/prompt-Y7NN7M5D.mjs +170 -0
  65. package/dist/lib/neutral/prompt-Y7NN7M5D.mjs.map +7 -0
  66. package/dist/lib/neutral/qualifier-VDOY5CWU.mjs +88 -0
  67. package/dist/lib/neutral/qualifier-VDOY5CWU.mjs.map +7 -0
  68. package/dist/lib/neutral/query-PPJU5622.mjs +70 -0
  69. package/dist/lib/neutral/query-PPJU5622.mjs.map +7 -0
  70. package/dist/lib/neutral/query-U56GNEV6.mjs +32 -0
  71. package/dist/lib/neutral/query-U56GNEV6.mjs.map +7 -0
  72. package/dist/lib/neutral/query-blueprints-KXADGHSA.mjs +16 -0
  73. package/dist/lib/neutral/query-blueprints-KXADGHSA.mjs.map +7 -0
  74. package/dist/lib/neutral/relation-create-XJ2IX6X3.mjs +34 -0
  75. package/dist/lib/neutral/relation-create-XJ2IX6X3.mjs.map +7 -0
  76. package/dist/lib/neutral/relation-delete-EP4KXAFL.mjs +18 -0
  77. package/dist/lib/neutral/relation-delete-EP4KXAFL.mjs.map +7 -0
  78. package/dist/lib/neutral/save-GWAPLT3Z.mjs +23 -0
  79. package/dist/lib/neutral/save-GWAPLT3Z.mjs.map +7 -0
  80. package/dist/lib/neutral/schema-add-Z5CY6P24.mjs +24 -0
  81. package/dist/lib/neutral/schema-add-Z5CY6P24.mjs.map +7 -0
  82. package/dist/lib/neutral/schema-list-W326VPVX.mjs +38 -0
  83. package/dist/lib/neutral/schema-list-W326VPVX.mjs.map +7 -0
  84. package/dist/lib/neutral/sync-issues-4YE5XAK5.mjs +167 -0
  85. package/dist/lib/neutral/sync-issues-4YE5XAK5.mjs.map +7 -0
  86. package/dist/lib/neutral/sync-triggers-CDMJVW6E.mjs +136 -0
  87. package/dist/lib/neutral/sync-triggers-CDMJVW6E.mjs.map +7 -0
  88. package/dist/lib/neutral/tag-add-VNIIOVJA.mjs +19 -0
  89. package/dist/lib/neutral/tag-add-VNIIOVJA.mjs.map +7 -0
  90. package/dist/lib/neutral/tag-remove-6R2R27W3.mjs +19 -0
  91. package/dist/lib/neutral/tag-remove-6R2R27W3.mjs.map +7 -0
  92. package/dist/lib/neutral/testing/index.mjs +9 -14
  93. package/dist/lib/neutral/testing/index.mjs.map +3 -3
  94. package/dist/lib/neutral/update-blueprints-N2AK2VUR.mjs +16 -0
  95. package/dist/lib/neutral/update-blueprints-N2AK2VUR.mjs.map +7 -0
  96. package/dist/lib/neutral/update-tasks-H7SWIFQL.mjs +46 -0
  97. package/dist/lib/neutral/update-tasks-H7SWIFQL.mjs.map +7 -0
  98. package/dist/types/src/blueprints/automation/blueprint.d.ts +4 -0
  99. package/dist/types/src/blueprints/automation/blueprint.d.ts.map +1 -0
  100. package/dist/types/src/blueprints/automation/index.d.ts +2 -0
  101. package/dist/types/src/blueprints/automation/index.d.ts.map +1 -0
  102. package/dist/types/src/blueprints/blueprint-manager/blueprint.d.ts +4 -0
  103. package/dist/types/src/blueprints/blueprint-manager/blueprint.d.ts.map +1 -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 +63 -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 +37 -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 +28 -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 +2 -2
  118. package/dist/types/src/blueprints/browser/blueprint.d.ts.map +1 -1
  119. package/dist/types/src/blueprints/database/blueprint.d.ts +2 -2
  120. package/dist/types/src/blueprints/database/blueprint.d.ts.map +1 -1
  121. package/dist/types/src/blueprints/database/functions/context-add.d.ts +5 -4
  122. package/dist/types/src/blueprints/database/functions/context-add.d.ts.map +1 -1
  123. package/dist/types/src/blueprints/database/functions/context-remove.d.ts +5 -4
  124. package/dist/types/src/blueprints/database/functions/context-remove.d.ts.map +1 -1
  125. package/dist/types/src/blueprints/database/functions/definitions.d.ts +59 -0
  126. package/dist/types/src/blueprints/database/functions/definitions.d.ts.map +1 -0
  127. package/dist/types/src/blueprints/database/functions/index.d.ts +3 -56
  128. package/dist/types/src/blueprints/database/functions/index.d.ts.map +1 -1
  129. package/dist/types/src/blueprints/database/functions/load.d.ts +5 -4
  130. package/dist/types/src/blueprints/database/functions/load.d.ts.map +1 -1
  131. package/dist/types/src/blueprints/database/functions/object-create.d.ts +5 -3
  132. package/dist/types/src/blueprints/database/functions/object-create.d.ts.map +1 -1
  133. package/dist/types/src/blueprints/database/functions/object-delete.d.ts +5 -4
  134. package/dist/types/src/blueprints/database/functions/object-delete.d.ts.map +1 -1
  135. package/dist/types/src/blueprints/database/functions/object-update.d.ts +5 -4
  136. package/dist/types/src/blueprints/database/functions/object-update.d.ts.map +1 -1
  137. package/dist/types/src/blueprints/database/functions/query.d.ts +7 -3
  138. package/dist/types/src/blueprints/database/functions/query.d.ts.map +1 -1
  139. package/dist/types/src/blueprints/database/functions/relation-create.d.ts +6 -5
  140. package/dist/types/src/blueprints/database/functions/relation-create.d.ts.map +1 -1
  141. package/dist/types/src/blueprints/database/functions/relation-delete.d.ts +5 -4
  142. package/dist/types/src/blueprints/database/functions/relation-delete.d.ts.map +1 -1
  143. package/dist/types/src/blueprints/database/functions/schema-add.d.ts +4 -2
  144. package/dist/types/src/blueprints/database/functions/schema-add.d.ts.map +1 -1
  145. package/dist/types/src/blueprints/database/functions/schema-list.d.ts +4 -2
  146. package/dist/types/src/blueprints/database/functions/schema-list.d.ts.map +1 -1
  147. package/dist/types/src/blueprints/database/functions/tag-add.d.ts +4 -3
  148. package/dist/types/src/blueprints/database/functions/tag-add.d.ts.map +1 -1
  149. package/dist/types/src/blueprints/database/functions/tag-remove.d.ts +4 -3
  150. package/dist/types/src/blueprints/database/functions/tag-remove.d.ts.map +1 -1
  151. package/dist/types/src/blueprints/database/index.d.ts +1 -1
  152. package/dist/types/src/blueprints/database/index.d.ts.map +1 -1
  153. package/dist/types/src/blueprints/discord/blueprint.d.ts +2 -2
  154. package/dist/types/src/blueprints/discord/blueprint.d.ts.map +1 -1
  155. package/dist/types/src/blueprints/discord/functions/definitions.d.ts +15 -0
  156. package/dist/types/src/blueprints/discord/functions/definitions.d.ts.map +1 -0
  157. package/dist/types/src/blueprints/discord/functions/fetch-messages.d.ts +3 -2
  158. package/dist/types/src/blueprints/discord/functions/fetch-messages.d.ts.map +1 -1
  159. package/dist/types/src/blueprints/discord/functions/index.d.ts +3 -11
  160. package/dist/types/src/blueprints/discord/functions/index.d.ts.map +1 -1
  161. package/dist/types/src/blueprints/discord/index.d.ts +1 -0
  162. package/dist/types/src/blueprints/discord/index.d.ts.map +1 -1
  163. package/dist/types/src/blueprints/github/functions/definitions.d.ts +7 -0
  164. package/dist/types/src/blueprints/github/functions/definitions.d.ts.map +1 -0
  165. package/dist/types/src/blueprints/github/functions/fetch-prs.d.ts +4 -2
  166. package/dist/types/src/blueprints/github/functions/fetch-prs.d.ts.map +1 -1
  167. package/dist/types/src/blueprints/github/functions/index.d.ts +3 -6
  168. package/dist/types/src/blueprints/github/functions/index.d.ts.map +1 -1
  169. package/dist/types/src/blueprints/github/index.d.ts +1 -0
  170. package/dist/types/src/blueprints/github/index.d.ts.map +1 -1
  171. package/dist/types/src/blueprints/index.d.ts +4 -3
  172. package/dist/types/src/blueprints/index.d.ts.map +1 -1
  173. package/dist/types/src/blueprints/linear/blueprint.d.ts +2 -2
  174. package/dist/types/src/blueprints/linear/blueprint.d.ts.map +1 -1
  175. package/dist/types/src/blueprints/linear/functions/definitions.d.ts +6 -0
  176. package/dist/types/src/blueprints/linear/functions/definitions.d.ts.map +1 -0
  177. package/dist/types/src/blueprints/linear/functions/index.d.ts +3 -8
  178. package/dist/types/src/blueprints/linear/functions/index.d.ts.map +1 -1
  179. package/dist/types/src/blueprints/linear/functions/sync-issues.d.ts +4 -6
  180. package/dist/types/src/blueprints/linear/functions/sync-issues.d.ts.map +1 -1
  181. package/dist/types/src/blueprints/linear/index.d.ts +1 -0
  182. package/dist/types/src/blueprints/linear/index.d.ts.map +1 -1
  183. package/dist/types/src/blueprints/memory/blueprint.d.ts +4 -0
  184. package/dist/types/src/blueprints/memory/blueprint.d.ts.map +1 -0
  185. package/dist/types/src/blueprints/memory/blueprint.test.d.ts.map +1 -0
  186. package/dist/types/src/blueprints/memory/functions/definitions.d.ts +17 -0
  187. package/dist/types/src/blueprints/memory/functions/definitions.d.ts.map +1 -0
  188. package/dist/types/src/blueprints/memory/functions/delete.d.ts +10 -0
  189. package/dist/types/src/blueprints/memory/functions/delete.d.ts.map +1 -0
  190. package/dist/types/src/blueprints/memory/functions/index.d.ts +4 -0
  191. package/dist/types/src/blueprints/memory/functions/index.d.ts.map +1 -0
  192. package/dist/types/src/blueprints/memory/functions/query.d.ts +8 -0
  193. package/dist/types/src/blueprints/memory/functions/query.d.ts.map +1 -0
  194. package/dist/types/src/blueprints/memory/functions/save.d.ts +8 -0
  195. package/dist/types/src/blueprints/memory/functions/save.d.ts.map +1 -0
  196. package/dist/types/src/blueprints/memory/index.d.ts +3 -0
  197. package/dist/types/src/blueprints/memory/index.d.ts.map +1 -0
  198. package/dist/types/src/blueprints/planning/blueprint.d.ts +2 -2
  199. package/dist/types/src/blueprints/planning/blueprint.d.ts.map +1 -1
  200. package/dist/types/src/blueprints/planning/functions/definitions.d.ts +11 -0
  201. package/dist/types/src/blueprints/planning/functions/definitions.d.ts.map +1 -0
  202. package/dist/types/src/blueprints/planning/functions/index.d.ts +3 -9
  203. package/dist/types/src/blueprints/planning/functions/index.d.ts.map +1 -1
  204. package/dist/types/src/blueprints/planning/functions/update-tasks.d.ts +5 -3
  205. package/dist/types/src/blueprints/planning/functions/update-tasks.d.ts.map +1 -1
  206. package/dist/types/src/blueprints/planning/index.d.ts +1 -0
  207. package/dist/types/src/blueprints/planning/index.d.ts.map +1 -1
  208. package/dist/types/src/blueprints/project/blueprint.d.ts +2 -2
  209. package/dist/types/src/blueprints/project/blueprint.d.ts.map +1 -1
  210. package/dist/types/src/blueprints/project/functions/add-artifact.d.ts +4 -3
  211. package/dist/types/src/blueprints/project/functions/add-artifact.d.ts.map +1 -1
  212. package/dist/types/src/blueprints/project/functions/agent.d.ts +2 -60
  213. package/dist/types/src/blueprints/project/functions/agent.d.ts.map +1 -1
  214. package/dist/types/src/blueprints/project/functions/definitions.d.ts +158 -0
  215. package/dist/types/src/blueprints/project/functions/definitions.d.ts.map +1 -0
  216. package/dist/types/src/blueprints/project/functions/get-context.d.ts +6 -4
  217. package/dist/types/src/blueprints/project/functions/get-context.d.ts.map +1 -1
  218. package/dist/types/src/blueprints/project/functions/index.d.ts +3 -132
  219. package/dist/types/src/blueprints/project/functions/index.d.ts.map +1 -1
  220. package/dist/types/src/blueprints/project/functions/qualifier.d.ts +30 -17
  221. package/dist/types/src/blueprints/project/functions/qualifier.d.ts.map +1 -1
  222. package/dist/types/src/blueprints/project/index.d.ts +2 -2
  223. package/dist/types/src/blueprints/project/index.d.ts.map +1 -1
  224. package/dist/types/src/blueprints/project-wizard/blueprint.d.ts +4 -0
  225. package/dist/types/src/blueprints/project-wizard/blueprint.d.ts.map +1 -0
  226. package/dist/types/src/blueprints/project-wizard/functions/create-project.d.ts +51 -0
  227. package/dist/types/src/blueprints/project-wizard/functions/create-project.d.ts.map +1 -0
  228. package/dist/types/src/blueprints/project-wizard/functions/definitions.d.ts +96 -0
  229. package/dist/types/src/blueprints/project-wizard/functions/definitions.d.ts.map +1 -0
  230. package/dist/types/src/blueprints/project-wizard/functions/index.d.ts +4 -0
  231. package/dist/types/src/blueprints/project-wizard/functions/index.d.ts.map +1 -0
  232. package/dist/types/src/blueprints/project-wizard/functions/project-rules.d.ts +4 -0
  233. package/dist/types/src/blueprints/project-wizard/functions/project-rules.d.ts.map +1 -0
  234. package/dist/types/src/blueprints/project-wizard/functions/sync-triggers.d.ts +48 -0
  235. package/dist/types/src/blueprints/project-wizard/functions/sync-triggers.d.ts.map +1 -0
  236. package/dist/types/src/blueprints/project-wizard/index.d.ts +3 -0
  237. package/dist/types/src/blueprints/project-wizard/index.d.ts.map +1 -0
  238. package/dist/types/src/blueprints/testing.d.ts +5 -15
  239. package/dist/types/src/blueprints/testing.d.ts.map +1 -1
  240. package/dist/types/src/blueprints/websearch/blueprint.d.ts +2 -2
  241. package/dist/types/src/blueprints/websearch/blueprint.d.ts.map +1 -1
  242. package/dist/types/src/blueprints/websearch/blueprint.test.d.ts.map +1 -0
  243. package/dist/types/src/blueprints/websearch/functions/definitions.d.ts +5 -0
  244. package/dist/types/src/blueprints/websearch/functions/definitions.d.ts.map +1 -0
  245. package/dist/types/src/blueprints/websearch/functions/fetch.d.ts +6 -0
  246. package/dist/types/src/blueprints/websearch/functions/fetch.d.ts.map +1 -0
  247. package/dist/types/src/blueprints/websearch/functions/index.d.ts +4 -0
  248. package/dist/types/src/blueprints/websearch/functions/index.d.ts.map +1 -0
  249. package/dist/types/src/blueprints/websearch/index.d.ts +2 -1
  250. package/dist/types/src/blueprints/websearch/index.d.ts.map +1 -1
  251. package/dist/types/src/blueprints/websearch/toolkit.d.ts +2 -0
  252. package/dist/types/src/blueprints/websearch/toolkit.d.ts.map +1 -1
  253. package/dist/types/src/crud/graph.d.ts +1 -1
  254. package/dist/types/src/crud/graph.d.ts.map +1 -1
  255. package/dist/types/src/errors.d.ts +41 -0
  256. package/dist/types/src/errors.d.ts.map +1 -0
  257. package/dist/types/src/functions/agent/definitions.d.ts +62 -0
  258. package/dist/types/src/functions/agent/definitions.d.ts.map +1 -0
  259. package/dist/types/src/functions/agent/index.d.ts +3 -84
  260. package/dist/types/src/functions/agent/index.d.ts.map +1 -1
  261. package/dist/types/src/functions/agent/prompt.d.ts +2 -82
  262. package/dist/types/src/functions/agent/prompt.d.ts.map +1 -1
  263. package/dist/types/src/functions/agent/prompt.test.d.ts +2 -0
  264. package/dist/types/src/functions/agent/prompt.test.d.ts.map +1 -0
  265. package/dist/types/src/functions/index.d.ts +0 -2
  266. package/dist/types/src/functions/index.d.ts.map +1 -1
  267. package/dist/types/src/sync/sync.d.ts.map +1 -1
  268. package/dist/types/src/testing/plugins.d.ts.map +1 -1
  269. package/dist/types/src/toolkits/WebToolkit.d.ts.map +1 -1
  270. package/dist/types/src/types/Agent.d.ts +77 -0
  271. package/dist/types/src/types/Agent.d.ts.map +1 -0
  272. package/dist/types/src/types/Chat.d.ts +32 -7
  273. package/dist/types/src/types/Chat.d.ts.map +1 -1
  274. package/dist/types/src/types/McpServer.d.ts +21 -0
  275. package/dist/types/src/types/McpServer.d.ts.map +1 -0
  276. package/dist/types/src/types/Memory.d.ts +12 -0
  277. package/dist/types/src/types/Memory.d.ts.map +1 -0
  278. package/dist/types/src/types/Plan.d.ts +23 -11
  279. package/dist/types/src/types/Plan.d.ts.map +1 -1
  280. package/dist/types/src/types/index.d.ts +3 -1
  281. package/dist/types/src/types/index.d.ts.map +1 -1
  282. package/dist/types/src/util/graphql.d.ts.map +1 -1
  283. package/dist/types/tsconfig.tsbuildinfo +1 -1
  284. package/package.json +27 -31
  285. package/src/blueprints/automation/blueprint.ts +105 -0
  286. package/src/blueprints/automation/index.ts +5 -0
  287. package/src/blueprints/blueprint-manager/blueprint.conversations.json +1 -0
  288. package/src/blueprints/blueprint-manager/blueprint.test.ts +198 -0
  289. package/src/blueprints/blueprint-manager/blueprint.ts +49 -0
  290. package/src/blueprints/blueprint-manager/functions/definitions.ts +57 -0
  291. package/src/blueprints/blueprint-manager/functions/enable-blueprints.ts +43 -0
  292. package/src/blueprints/blueprint-manager/functions/index.ts +13 -0
  293. package/src/blueprints/blueprint-manager/functions/query-blueprints.ts +18 -0
  294. package/src/blueprints/blueprint-manager/functions/update-blueprints.ts +18 -0
  295. package/src/blueprints/blueprint-manager/index.ts +6 -0
  296. package/src/blueprints/browser/blueprint.test.ts +23 -32
  297. package/src/blueprints/browser/blueprint.ts +5 -6
  298. package/src/blueprints/database/blueprint.conversations.json +1 -1
  299. package/src/blueprints/database/blueprint.test.ts +308 -98
  300. package/src/blueprints/database/blueprint.ts +37 -10
  301. package/src/blueprints/database/functions/context-add.ts +15 -26
  302. package/src/blueprints/database/functions/context-remove.ts +16 -27
  303. package/src/blueprints/database/functions/definitions.ts +318 -0
  304. package/src/blueprints/database/functions/index.ts +18 -28
  305. package/src/blueprints/database/functions/load.ts +11 -23
  306. package/src/blueprints/database/functions/object-create.ts +28 -25
  307. package/src/blueprints/database/functions/object-delete.ts +13 -20
  308. package/src/blueprints/database/functions/object-update.ts +23 -25
  309. package/src/blueprints/database/functions/query.ts +48 -110
  310. package/src/blueprints/database/functions/relation-create.ts +25 -38
  311. package/src/blueprints/database/functions/relation-delete.ts +14 -21
  312. package/src/blueprints/database/functions/schema-add.ts +19 -31
  313. package/src/blueprints/database/functions/schema-list.ts +26 -27
  314. package/src/blueprints/database/functions/tag-add.ts +14 -24
  315. package/src/blueprints/database/functions/tag-remove.ts +14 -23
  316. package/src/blueprints/database/index.ts +16 -1
  317. package/src/blueprints/discord/blueprint.ts +6 -11
  318. package/src/blueprints/discord/functions/definitions.ts +70 -0
  319. package/src/blueprints/discord/functions/fetch-messages.test.ts +15 -25
  320. package/src/blueprints/discord/functions/fetch-messages.ts +98 -152
  321. package/src/blueprints/discord/functions/index.ts +4 -4
  322. package/src/blueprints/discord/index.ts +1 -0
  323. package/src/blueprints/github/functions/definitions.ts +26 -0
  324. package/src/blueprints/github/functions/fetch-prs.ts +15 -22
  325. package/src/blueprints/github/functions/index.ts +4 -4
  326. package/src/blueprints/github/index.ts +2 -0
  327. package/src/blueprints/index.ts +4 -3
  328. package/src/blueprints/linear/blueprint.ts +6 -11
  329. package/src/blueprints/linear/functions/definitions.ts +23 -0
  330. package/src/blueprints/linear/functions/index.ts +4 -4
  331. package/src/blueprints/linear/functions/linear.test.ts +7 -7
  332. package/src/blueprints/linear/functions/sync-issues.ts +31 -39
  333. package/src/blueprints/linear/index.ts +1 -0
  334. package/src/blueprints/memory/blueprint.conversations.json +1 -0
  335. package/src/blueprints/memory/blueprint.test.ts +139 -0
  336. package/src/blueprints/memory/blueprint.ts +41 -0
  337. package/src/blueprints/memory/functions/definitions.ts +68 -0
  338. package/src/blueprints/memory/functions/delete.ts +20 -0
  339. package/src/blueprints/memory/functions/index.ts +13 -0
  340. package/src/blueprints/memory/functions/query.ts +32 -0
  341. package/src/blueprints/memory/functions/save.ts +20 -0
  342. package/src/blueprints/memory/index.ts +6 -0
  343. package/src/blueprints/planning/blueprint.ts +5 -9
  344. package/src/blueprints/planning/functions/definitions.ts +137 -0
  345. package/src/blueprints/planning/functions/index.ts +4 -4
  346. package/src/blueprints/planning/functions/update-tasks.ts +35 -158
  347. package/src/blueprints/planning/index.ts +1 -0
  348. package/src/blueprints/project/blueprint.conversations.json +1 -0
  349. package/src/blueprints/project/blueprint.test.ts +246 -111
  350. package/src/blueprints/project/blueprint.ts +21 -25
  351. package/src/blueprints/project/functions/add-artifact.ts +19 -30
  352. package/src/blueprints/project/functions/agent.ts +43 -46
  353. package/src/blueprints/project/functions/definitions.ts +92 -0
  354. package/src/blueprints/project/functions/get-context.ts +36 -53
  355. package/src/blueprints/project/functions/index.ts +9 -10
  356. package/src/blueprints/project/functions/qualifier.ts +66 -72
  357. package/src/blueprints/project/index.ts +2 -2
  358. package/src/blueprints/project-wizard/blueprint.ts +52 -0
  359. package/src/blueprints/project-wizard/functions/create-project.ts +32 -0
  360. package/src/blueprints/project-wizard/functions/definitions.ts +63 -0
  361. package/src/blueprints/project-wizard/functions/index.ts +13 -0
  362. package/src/blueprints/project-wizard/functions/project-rules.ts +77 -0
  363. package/src/blueprints/project-wizard/functions/sync-triggers.ts +158 -0
  364. package/src/blueprints/project-wizard/index.ts +6 -0
  365. package/src/blueprints/testing.ts +7 -23
  366. package/src/blueprints/websearch/blueprint.conversations.json +1 -0
  367. package/src/blueprints/websearch/blueprint.test.ts +39 -0
  368. package/src/blueprints/websearch/blueprint.ts +6 -8
  369. package/src/blueprints/websearch/functions/definitions.ts +25 -0
  370. package/src/blueprints/websearch/functions/fetch.ts +18 -0
  371. package/src/blueprints/websearch/functions/index.ts +9 -0
  372. package/src/blueprints/websearch/index.ts +2 -1
  373. package/src/blueprints/websearch/toolkit.ts +6 -1
  374. package/src/crud/graph.test.ts +10 -12
  375. package/src/crud/graph.ts +2 -2
  376. package/src/errors.ts +25 -0
  377. package/src/functions/agent/definitions.ts +56 -0
  378. package/src/functions/agent/index.ts +4 -4
  379. package/src/functions/agent/prompt.conversations.json +1 -0
  380. package/src/functions/agent/prompt.test.ts +81 -0
  381. package/src/functions/agent/prompt.ts +212 -96
  382. package/src/functions/index.ts +0 -2
  383. package/src/sync/sync.ts +23 -12
  384. package/src/testing/plugins.tsx +10 -3
  385. package/src/toolkits/WebToolkit.ts +1 -1
  386. package/src/types/Agent.ts +240 -0
  387. package/src/types/Chat.ts +24 -10
  388. package/src/types/McpServer.ts +37 -0
  389. package/src/types/Memory.ts +24 -0
  390. package/src/types/Plan.ts +7 -4
  391. package/src/types/index.ts +3 -1
  392. package/dist/types/src/blueprints/design/blueprint.d.ts +0 -4
  393. package/dist/types/src/blueprints/design/blueprint.d.ts.map +0 -1
  394. package/dist/types/src/blueprints/design/blueprint.test.d.ts.map +0 -1
  395. package/dist/types/src/blueprints/design/index.d.ts +0 -2
  396. package/dist/types/src/blueprints/design/index.d.ts.map +0 -1
  397. package/dist/types/src/blueprints/markdown/blueprint.d.ts +0 -4
  398. package/dist/types/src/blueprints/markdown/blueprint.d.ts.map +0 -1
  399. package/dist/types/src/blueprints/markdown/functions/create.d.ts +0 -6
  400. package/dist/types/src/blueprints/markdown/functions/create.d.ts.map +0 -1
  401. package/dist/types/src/blueprints/markdown/functions/index.d.ts +0 -30
  402. package/dist/types/src/blueprints/markdown/functions/index.d.ts.map +0 -1
  403. package/dist/types/src/blueprints/markdown/functions/read.d.ts +0 -14
  404. package/dist/types/src/blueprints/markdown/functions/read.d.ts.map +0 -1
  405. package/dist/types/src/blueprints/markdown/functions/update.d.ts +0 -13
  406. package/dist/types/src/blueprints/markdown/functions/update.d.ts.map +0 -1
  407. package/dist/types/src/blueprints/markdown/index.d.ts +0 -3
  408. package/dist/types/src/blueprints/markdown/index.d.ts.map +0 -1
  409. package/dist/types/src/blueprints/planning-old/blueprint.d.ts +0 -4
  410. package/dist/types/src/blueprints/planning-old/blueprint.d.ts.map +0 -1
  411. package/dist/types/src/blueprints/planning-old/blueprint.test.d.ts.map +0 -1
  412. package/dist/types/src/blueprints/planning-old/functions/index.d.ts +0 -29
  413. package/dist/types/src/blueprints/planning-old/functions/index.d.ts.map +0 -1
  414. package/dist/types/src/blueprints/planning-old/functions/read.d.ts +0 -14
  415. package/dist/types/src/blueprints/planning-old/functions/read.d.ts.map +0 -1
  416. package/dist/types/src/blueprints/planning-old/functions/task-list.d.ts +0 -74
  417. package/dist/types/src/blueprints/planning-old/functions/task-list.d.ts.map +0 -1
  418. package/dist/types/src/blueprints/planning-old/functions/task-list.test.d.ts +0 -2
  419. package/dist/types/src/blueprints/planning-old/functions/task-list.test.d.ts.map +0 -1
  420. package/dist/types/src/blueprints/planning-old/functions/update.d.ts +0 -16
  421. package/dist/types/src/blueprints/planning-old/functions/update.d.ts.map +0 -1
  422. package/dist/types/src/blueprints/planning-old/index.d.ts +0 -2
  423. package/dist/types/src/blueprints/planning-old/index.d.ts.map +0 -1
  424. package/dist/types/src/blueprints/research/blueprint.d.ts +0 -4
  425. package/dist/types/src/blueprints/research/blueprint.d.ts.map +0 -1
  426. package/dist/types/src/blueprints/research/blueprint.test.d.ts.map +0 -1
  427. package/dist/types/src/blueprints/research/functions/document-create.d.ts +0 -10
  428. package/dist/types/src/blueprints/research/functions/document-create.d.ts.map +0 -1
  429. package/dist/types/src/blueprints/research/functions/index.d.ts +0 -19
  430. package/dist/types/src/blueprints/research/functions/index.d.ts.map +0 -1
  431. package/dist/types/src/blueprints/research/functions/research.d.ts +0 -14
  432. package/dist/types/src/blueprints/research/functions/research.d.ts.map +0 -1
  433. package/dist/types/src/blueprints/research/functions/research.test.d.ts +0 -2
  434. package/dist/types/src/blueprints/research/functions/research.test.d.ts.map +0 -1
  435. package/dist/types/src/blueprints/research/index.d.ts +0 -3
  436. package/dist/types/src/blueprints/research/index.d.ts.map +0 -1
  437. package/dist/types/src/blueprints/research/types/ResearchGraph.d.ts +0 -18
  438. package/dist/types/src/blueprints/research/types/ResearchGraph.d.ts.map +0 -1
  439. package/dist/types/src/blueprints/research/types/index.d.ts +0 -7
  440. package/dist/types/src/blueprints/research/types/index.d.ts.map +0 -1
  441. package/dist/types/src/functions/entity-extraction/entity-extraction.d.ts +0 -179
  442. package/dist/types/src/functions/entity-extraction/entity-extraction.d.ts.map +0 -1
  443. package/dist/types/src/functions/entity-extraction/entity-extraction.test.d.ts +0 -2
  444. package/dist/types/src/functions/entity-extraction/entity-extraction.test.d.ts.map +0 -1
  445. package/dist/types/src/functions/entity-extraction/index.d.ts +0 -179
  446. package/dist/types/src/functions/entity-extraction/index.d.ts.map +0 -1
  447. package/dist/types/src/functions/exa/data/exa-search-1748337321991.d.ts +0 -38
  448. package/dist/types/src/functions/exa/data/exa-search-1748337321991.d.ts.map +0 -1
  449. package/dist/types/src/functions/exa/data/exa-search-1748337331526.d.ts +0 -37
  450. package/dist/types/src/functions/exa/data/exa-search-1748337331526.d.ts.map +0 -1
  451. package/dist/types/src/functions/exa/data/exa-search-1748337344119.d.ts +0 -58
  452. package/dist/types/src/functions/exa/data/exa-search-1748337344119.d.ts.map +0 -1
  453. package/dist/types/src/functions/exa/data/index.d.ts +0 -3
  454. package/dist/types/src/functions/exa/data/index.d.ts.map +0 -1
  455. package/dist/types/src/functions/exa/exa.d.ts +0 -5
  456. package/dist/types/src/functions/exa/exa.d.ts.map +0 -1
  457. package/dist/types/src/functions/exa/index.d.ts +0 -9
  458. package/dist/types/src/functions/exa/index.d.ts.map +0 -1
  459. package/dist/types/src/functions/exa/mock.d.ts +0 -5
  460. package/dist/types/src/functions/exa/mock.d.ts.map +0 -1
  461. package/dist/types/src/types/Project.d.ts +0 -67
  462. package/dist/types/src/types/Project.d.ts.map +0 -1
  463. package/src/blueprints/browser/blueprint.conversations.json +0 -1
  464. package/src/blueprints/design/blueprint.test.ts +0 -96
  465. package/src/blueprints/design/blueprint.ts +0 -46
  466. package/src/blueprints/design/index.ts +0 -5
  467. package/src/blueprints/markdown/blueprint.ts +0 -38
  468. package/src/blueprints/markdown/functions/create.ts +0 -29
  469. package/src/blueprints/markdown/functions/index.ts +0 -13
  470. package/src/blueprints/markdown/functions/read.ts +0 -32
  471. package/src/blueprints/markdown/functions/update.ts +0 -32
  472. package/src/blueprints/markdown/index.ts +0 -6
  473. package/src/blueprints/planning-old/blueprint.test.ts +0 -122
  474. package/src/blueprints/planning-old/blueprint.ts +0 -110
  475. package/src/blueprints/planning-old/functions/index.ts +0 -11
  476. package/src/blueprints/planning-old/functions/read.ts +0 -34
  477. package/src/blueprints/planning-old/functions/task-list.test.ts +0 -99
  478. package/src/blueprints/planning-old/functions/task-list.ts +0 -165
  479. package/src/blueprints/planning-old/functions/update.ts +0 -52
  480. package/src/blueprints/planning-old/index.ts +0 -5
  481. package/src/blueprints/research/blueprint.test.ts +0 -7
  482. package/src/blueprints/research/blueprint.ts +0 -65
  483. package/src/blueprints/research/functions/document-create.ts +0 -73
  484. package/src/blueprints/research/functions/index.ts +0 -11
  485. package/src/blueprints/research/functions/research-instructions.tpl +0 -106
  486. package/src/blueprints/research/functions/research.conversations.json +0 -1
  487. package/src/blueprints/research/functions/research.test.ts +0 -149
  488. package/src/blueprints/research/functions/research.ts +0 -175
  489. package/src/blueprints/research/index.ts +0 -6
  490. package/src/blueprints/research/types/ResearchGraph.ts +0 -49
  491. package/src/blueprints/research/types/index.ts +0 -32
  492. package/src/functions/entity-extraction/entity-extraction.conversations.json +0 -1
  493. package/src/functions/entity-extraction/entity-extraction.test.ts +0 -74
  494. package/src/functions/entity-extraction/entity-extraction.ts +0 -181
  495. package/src/functions/entity-extraction/index.ts +0 -9
  496. package/src/functions/exa/data/exa-search-1748337321991.ts +0 -131
  497. package/src/functions/exa/data/exa-search-1748337331526.ts +0 -144
  498. package/src/functions/exa/data/exa-search-1748337344119.ts +0 -133
  499. package/src/functions/exa/data/index.ts +0 -11
  500. package/src/functions/exa/exa.ts +0 -37
  501. package/src/functions/exa/index.ts +0 -11
  502. package/src/functions/exa/mock.ts +0 -71
  503. package/src/types/Project.ts +0 -196
  504. /package/dist/types/src/blueprints/{design → blueprint-manager}/blueprint.test.d.ts +0 -0
  505. /package/dist/types/src/blueprints/{planning-old → memory}/blueprint.test.d.ts +0 -0
  506. /package/dist/types/src/blueprints/{research → websearch}/blueprint.test.d.ts +0 -0
@@ -3,33 +3,22 @@
3
3
  //
4
4
 
5
5
  import * as Effect from 'effect/Effect';
6
- import * as Schema from 'effect/Schema';
7
6
 
8
7
  import { AiContextService } from '@dxos/assistant';
9
- import { Obj, Ref } from '@dxos/echo';
10
- import { defineFunction } from '@dxos/functions';
11
- import { trim } from '@dxos/util';
8
+ import { Operation } from '@dxos/compute';
12
9
 
13
- export default defineFunction({
14
- key: 'dxos.org/function/database/context-add',
15
- name: 'Add to context',
16
- description: trim`
17
- Adds the object to the chat context.
18
- Use this it for objects that are useful long-term for the conversation.
19
- `,
20
- inputSchema: Schema.Struct({
21
- obj: Ref.Ref(Obj.Unknown).annotations({
22
- description: 'Object to add to the chat context.',
10
+ import { ContextAdd } from './definitions';
11
+
12
+ export default ContextAdd.pipe(
13
+ Operation.withHandler(
14
+ Effect.fn(function* ({ obj }) {
15
+ const { binder } = yield* AiContextService;
16
+ yield* Effect.promise(() =>
17
+ binder.bind({
18
+ blueprints: [],
19
+ objects: [obj],
20
+ }),
21
+ );
23
22
  }),
24
- }),
25
- outputSchema: Schema.Void,
26
- handler: Effect.fn(function* ({ data: { obj } }) {
27
- const { binder } = yield* AiContextService;
28
- yield* Effect.promise(() =>
29
- binder.bind({
30
- blueprints: [],
31
- objects: [obj],
32
- }),
33
- );
34
- }, AiContextService.fixFunctionHandlerType),
35
- });
23
+ ),
24
+ );
@@ -3,33 +3,22 @@
3
3
  //
4
4
 
5
5
  import * as Effect from 'effect/Effect';
6
- import * as Schema from 'effect/Schema';
7
6
 
8
7
  import { AiContextService } from '@dxos/assistant';
9
- import { Obj, Ref } from '@dxos/echo';
10
- import { defineFunction } from '@dxos/functions';
11
- import { trim } from '@dxos/util';
8
+ import { Operation } from '@dxos/compute';
12
9
 
13
- export default defineFunction({
14
- key: 'dxos.org/function/database/context-remove',
15
- name: 'Remove from context',
16
- description: trim`
17
- Removes the object from the chat context.
18
- Use this it for objects that are no longer useful for the conversation.
19
- `,
20
- inputSchema: Schema.Struct({
21
- obj: Ref.Ref(Obj.Unknown).annotations({
22
- description: 'Object to remove from the chat context.',
23
- }),
24
- }),
25
- outputSchema: Schema.Void,
26
- handler: Effect.fn(function* ({ data: { obj } }) {
27
- const { binder } = yield* AiContextService;
28
- yield* Effect.promise(() =>
29
- binder.unbind({
30
- blueprints: [],
31
- objects: [obj],
32
- }),
33
- );
34
- }, AiContextService.fixFunctionHandlerType),
35
- });
10
+ import { ContextRemove } from './definitions';
11
+
12
+ export default ContextRemove.pipe(
13
+ Operation.withHandler(
14
+ Effect.fn(function* ({ obj }) {
15
+ const { binder } = yield* AiContextService;
16
+ yield* Effect.promise(() =>
17
+ binder.unbind({
18
+ blueprints: [],
19
+ objects: [obj],
20
+ }),
21
+ );
22
+ }) as any,
23
+ ),
24
+ );
@@ -0,0 +1,318 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import * as Schema from 'effect/Schema';
6
+
7
+ import { AiContextService } from '@dxos/assistant';
8
+ import { Operation } from '@dxos/compute';
9
+ import { Database, Obj, Ref, Relation, Tag } from '@dxos/echo';
10
+ import { trim } from '@dxos/util';
11
+
12
+ export const Query = Operation.make({
13
+ meta: {
14
+ key: 'org.dxos.function.database.query',
15
+ name: 'Query',
16
+ description: trim`
17
+ Query for objects in ECHO.
18
+ Use this tool when searching for information in the space (both automerge and queues).
19
+ Currently, two types of queries are supported:
20
+ - Full-text search - terms may appear anywhere in the object.
21
+ - Type-based search - objects of a specific type.
22
+ You can use them together, for example, to search for objects of a specific type that match a full-text query.
23
+ Important: Whem querying by typename, make sure to list the schema first, to get the exact typename.
24
+
25
+ Omit both typename and text to search for all objects.
26
+
27
+ <output_format>
28
+ You can choose to either return the full object data, or just the DXN, type and label.
29
+ When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.
30
+
31
+ You can choose to get the content right away, if you don't expect a lot of results.
32
+ To load content right away, run with includeContent=true.
33
+ When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.
34
+ </output_format>
35
+
36
+ <example description="All tasks related to Cyberdyne and Bob">
37
+ {
38
+ "typename": "org.dxos.type.task",
39
+ "text": "cyberdyne bob",
40
+ }
41
+ </example>
42
+
43
+ <example description="Financial report Q1 2026">
44
+ {
45
+ "typename": "org.dxos.type.document",
46
+ "text": "financial report Q1 2026",
47
+ "includeContent": true
48
+ "limit": 3
49
+ }
50
+ </example>
51
+
52
+ <example description="Emails from specific mailboxes">
53
+ {
54
+ "in": [{"/" : "dxn:echo:@:YYYYYY"}, {"/" : "dxn:echo:@:XXXXXXX"}],
55
+ "typename": "org.dxos.type.email",
56
+ "includeContent": true,
57
+ "limit": 20
58
+ }
59
+ </example>
60
+ `,
61
+ },
62
+ input: Schema.Struct({
63
+ in: Schema.optional(
64
+ Schema.Array(Ref.Ref(Obj.Unknown)).annotations({
65
+ description:
66
+ 'Scope the query to children of specific objects (transitively). ' +
67
+ 'Use this to query items within containers such as feeds or folders. ' +
68
+ 'For example, to find emails use `in: [mailbox1.feed, mailbox2.feed]`.',
69
+ }),
70
+ ),
71
+ typename: Schema.optional(
72
+ Schema.String.annotations({
73
+ description: 'The typename of the objects to list.',
74
+ example: 'org.dxos.type.task',
75
+ }),
76
+ ),
77
+ text: Schema.optional(
78
+ Schema.String.annotations({
79
+ description: 'Full text search query.',
80
+ example: 'email cyberdyne bob',
81
+ }),
82
+ ),
83
+ includeContent: Schema.optional(
84
+ Schema.Boolean.annotations({
85
+ description: 'Include the full object data in the response.',
86
+ default: false,
87
+ }),
88
+ ),
89
+ limit: Schema.optional(
90
+ Schema.Number.annotations({
91
+ description: 'The maximum number of results to return.',
92
+ default: 10,
93
+ }),
94
+ ),
95
+ includeQueues: Schema.optional(
96
+ Schema.Boolean.annotations({
97
+ description: 'Search in queues as well as spaces. Only use this if searching for emails.',
98
+ default: false,
99
+ }),
100
+ ),
101
+ }),
102
+ output: Schema.Array(Schema.Unknown),
103
+ services: [Database.Service],
104
+ }).pipe(Operation.intrinsic);
105
+
106
+ export const Load = Operation.make({
107
+ meta: {
108
+ key: 'org.dxos.function.database.load',
109
+ name: 'Load object',
110
+ description: trim`
111
+ Loads the object or relation content.
112
+ Can load multiple objects at at time.
113
+ Use the to read the data when you have a DXN.
114
+ Call this tool with an array of one or more DXNs or object IDs.
115
+ When use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.
116
+ Note that returned data is only a snapshot in time, and might have changed since the object was last loaded.
117
+ `,
118
+ },
119
+ input: Schema.Struct({
120
+ refs: Schema.Array(Ref.Ref(Obj.Unknown)),
121
+ }),
122
+ output: Schema.Unknown,
123
+ services: [Database.Service],
124
+ }).pipe(Operation.intrinsic);
125
+
126
+ export const ObjectCreate = Operation.make({
127
+ meta: {
128
+ key: 'org.dxos.function.database.object-create',
129
+ name: 'Create object',
130
+ description: trim`
131
+ Creates a new object and adds it to the current space.
132
+ Get the schema from the schema-list tool and ensure that the data matches the corresponding schema.
133
+ References are provided in the following format: { "/": "dxn:..." }.
134
+ Reference examples: { "/": "dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4" }, { "/": "dxn:queue:data:01KG7R1ZXWFMWQ4DA1Q6TN1DG4:01KG7R1ZXWFMWQ4DA1Q6TN1DG4" }
135
+ `,
136
+ },
137
+ input: Schema.Struct({
138
+ typename: Schema.String,
139
+ data: Schema.Any,
140
+ }),
141
+ output: Schema.Unknown,
142
+ services: [Database.Service],
143
+ }).pipe(Operation.intrinsic);
144
+
145
+ export const ObjectUpdate = Operation.make({
146
+ meta: {
147
+ key: 'org.dxos.function.database.object-update',
148
+ name: 'Update object',
149
+ description: trim`
150
+ Updates the object properties.
151
+ References are provided in the following format: { "/": "dxn:..." }.
152
+ Reference examples: { "/": "dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4" }, { "/": "dxn:queue:data:01KG7R1ZXWFMWQ4DA1Q6TN1DG4:01KG7R1ZXWFMWQ4DA1Q6TN1DG4" }
153
+ `,
154
+ },
155
+ input: Schema.Struct({
156
+ obj: Ref.Ref(Obj.Unknown),
157
+ properties: Schema.Record({ key: Schema.String, value: Schema.Any }),
158
+ }),
159
+ output: Schema.Unknown,
160
+ services: [Database.Service],
161
+ }).pipe(Operation.intrinsic);
162
+
163
+ export const ObjectDelete = Operation.make({
164
+ meta: {
165
+ key: 'org.dxos.function.database.object-delete',
166
+ name: 'Delete object',
167
+ description: trim`
168
+ Deletes the object.
169
+ `,
170
+ },
171
+ input: Schema.Struct({
172
+ obj: Ref.Ref(Obj.Unknown),
173
+ }),
174
+ output: Schema.Void,
175
+ services: [Database.Service],
176
+ }).pipe(Operation.intrinsic);
177
+
178
+ export const SchemaAdd = Operation.make({
179
+ meta: {
180
+ key: 'org.dxos.function.database.schema-add',
181
+ name: 'Add schema',
182
+ description: trim`
183
+ Adds a schema to the space.
184
+ The name will be used when displayed to the user.
185
+ `,
186
+ },
187
+ input: Schema.Struct({
188
+ name: Schema.String,
189
+ typename: Schema.String.annotations({
190
+ description: 'The typename of the schema in the format of "com.example.type.type".',
191
+ }),
192
+ jsonSchema: Schema.Any,
193
+ }),
194
+ output: Schema.Void,
195
+ services: [Database.Service],
196
+ }).pipe(Operation.intrinsic);
197
+
198
+ export const SchemaList = Operation.make({
199
+ meta: {
200
+ key: 'org.dxos.function.database.schema-list',
201
+ name: 'List schemas',
202
+ description: trim`
203
+ Lists schemas definitions.
204
+ `,
205
+ },
206
+ input: Schema.Struct({
207
+ limit: Schema.optional(Schema.Number),
208
+ }),
209
+ output: Schema.Array(Schema.Unknown),
210
+ services: [Database.Service],
211
+ }).pipe(Operation.intrinsic);
212
+
213
+ export const ContextAdd = Operation.make({
214
+ meta: {
215
+ key: 'org.dxos.function.database.context-add',
216
+ name: 'Add to context',
217
+ description: trim`
218
+ Adds the object to the chat context.
219
+ Use this it for objects that are useful long-term for the conversation.
220
+ `,
221
+ },
222
+ input: Schema.Struct({
223
+ obj: Ref.Ref(Obj.Unknown).annotations({
224
+ description: 'Object to add to the chat context.',
225
+ }),
226
+ }),
227
+ output: Schema.Void,
228
+ services: [AiContextService],
229
+ }).pipe(Operation.intrinsic);
230
+
231
+ export const ContextRemove = Operation.make({
232
+ meta: {
233
+ key: 'org.dxos.function.database.context-remove',
234
+ name: 'Remove from context',
235
+ description: trim`
236
+ Removes the object from the chat context.
237
+ Use this it for objects that are no longer useful for the conversation.
238
+ `,
239
+ },
240
+ input: Schema.Struct({
241
+ obj: Ref.Ref(Obj.Unknown).annotations({
242
+ description: 'Object to remove from the chat context.',
243
+ }),
244
+ }),
245
+ output: Schema.Void,
246
+ services: [AiContextService],
247
+ }).pipe(Operation.intrinsic);
248
+
249
+ export const RelationCreate = Operation.make({
250
+ meta: {
251
+ key: 'org.dxos.function.database.relation-create',
252
+ name: 'Create relation',
253
+ description: trim`
254
+ Creates a new relation and adds it to the current space.
255
+ Get the schema from the schema-list tool and ensure that the data matches the corresponding schema.
256
+ `,
257
+ },
258
+ input: Schema.Struct({
259
+ typename: Schema.String,
260
+ source: Ref.Ref(Obj.Unknown),
261
+ target: Ref.Ref(Obj.Unknown),
262
+ properties: Schema.Any.annotations({
263
+ description: 'The data to be stored in the relation.',
264
+ }),
265
+ }),
266
+ output: Schema.Unknown,
267
+ services: [Database.Service],
268
+ }).pipe(Operation.intrinsic);
269
+
270
+ export const RelationDelete = Operation.make({
271
+ meta: {
272
+ key: 'org.dxos.function.database.relation-delete',
273
+ name: 'Delete relation',
274
+ description: trim`
275
+ Deletes the relation.
276
+ `,
277
+ },
278
+ input: Schema.Struct({
279
+ rel: Ref.Ref(Relation.Unknown),
280
+ }),
281
+ output: Schema.Void,
282
+ services: [Database.Service],
283
+ }).pipe(Operation.intrinsic);
284
+
285
+ export const TagAdd = Operation.make({
286
+ meta: {
287
+ key: 'org.dxos.function.database.tag-add',
288
+ name: 'Add tag',
289
+ description: trim`
290
+ Adds a tag to an object.
291
+ Tags are objects of type ${Tag.Tag.typename}.
292
+ You must search database for available tags, or create a new one.
293
+ `,
294
+ },
295
+ input: Schema.Struct({
296
+ tag: Ref.Ref(Obj.Unknown),
297
+ obj: Ref.Ref(Obj.Unknown),
298
+ }),
299
+ output: Schema.Unknown,
300
+ services: [Database.Service],
301
+ }).pipe(Operation.intrinsic);
302
+
303
+ export const TagRemove = Operation.make({
304
+ meta: {
305
+ key: 'org.dxos.function.database.tag-remove',
306
+ name: 'Remove tag',
307
+ description: trim`
308
+ Removes a tag from an object.
309
+ Tags are objects of type ${Tag.Tag.typename}.
310
+ `,
311
+ },
312
+ input: Schema.Struct({
313
+ tag: Ref.Ref(Obj.Unknown),
314
+ obj: Ref.Ref(Obj.Unknown),
315
+ }),
316
+ output: Schema.Unknown,
317
+ services: [Database.Service],
318
+ }).pipe(Operation.intrinsic);
@@ -2,32 +2,22 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- import { default as ContextAdd } from './context-add';
6
- import { default as ContextRemove } from './context-remove';
7
- import { default as Load } from './load';
8
- import { default as ObjectCreate } from './object-create';
9
- import { default as ObjectDelete } from './object-delete';
10
- import { default as ObjectUpdate } from './object-update';
11
- import { default as Query } from './query';
12
- import { default as RelationCreate } from './relation-create';
13
- import { default as RelationDelete } from './relation-delete';
14
- import { default as SchemaAdd } from './schema-add';
15
- import { default as SchemaList } from './schema-list';
16
- import { default as TagAdd } from './tag-add';
17
- import { default as TagRemove } from './tag-remove';
5
+ import { OperationHandlerSet } from '@dxos/compute';
18
6
 
19
- export const DatabaseFunctions = {
20
- ContextAdd,
21
- ContextRemove,
22
- Load,
23
- ObjectCreate,
24
- ObjectDelete,
25
- ObjectUpdate,
26
- Query,
27
- RelationCreate,
28
- RelationDelete,
29
- SchemaAdd,
30
- SchemaList,
31
- TagAdd,
32
- TagRemove,
33
- };
7
+ export * from './definitions';
8
+
9
+ export const DatabaseHandlers = OperationHandlerSet.lazy(
10
+ () => import('./context-add'),
11
+ () => import('./context-remove'),
12
+ () => import('./load'),
13
+ () => import('./object-create'),
14
+ () => import('./object-delete'),
15
+ () => import('./object-update'),
16
+ () => import('./query'),
17
+ () => import('./relation-create'),
18
+ () => import('./relation-delete'),
19
+ () => import('./schema-add'),
20
+ () => import('./schema-list'),
21
+ () => import('./tag-add'),
22
+ () => import('./tag-remove'),
23
+ );
@@ -4,28 +4,16 @@
4
4
 
5
5
  import * as Array from 'effect/Array';
6
6
  import * as Effect from 'effect/Effect';
7
- import * as Schema from 'effect/Schema';
8
7
 
9
- import { Database, Entity, Obj, Ref } from '@dxos/echo';
10
- import { defineFunction } from '@dxos/functions';
11
- import { trim } from '@dxos/util';
8
+ import { Operation } from '@dxos/compute';
9
+ import { Database, Entity } from '@dxos/echo';
12
10
 
13
- export default defineFunction({
14
- key: 'dxos.org/function/database/load',
15
- name: 'Load object',
16
- description: trim`
17
- Loads the object or relation content.
18
- Can load multiple objects at at time.
19
- Use the to read the data when you have a DXN.
20
- Call this tool with an array of one or more DXNs or object IDs.
21
- When use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.
22
- Note that returned data is only a snapshot in time, and might have changed since the object was last loaded.
23
- `,
24
- inputSchema: Schema.Struct({
25
- refs: Schema.Array(Ref.Ref(Obj.Unknown)),
26
- }),
27
- outputSchema: Schema.Unknown,
28
- handler: Effect.fn(function* ({ data: { refs } }) {
29
- return yield* Effect.forEach(refs, Database.load).pipe(Effect.map(Array.map(Entity.toJSON)));
30
- }),
31
- });
11
+ import { Load } from './definitions';
12
+
13
+ export default Load.pipe(
14
+ Operation.withHandler(
15
+ Effect.fn(function* ({ refs }) {
16
+ return yield* Effect.forEach(refs, Database.load).pipe(Effect.map(Array.map(Entity.toJSON)));
17
+ }),
18
+ ),
19
+ );
@@ -3,33 +3,36 @@
3
3
  //
4
4
 
5
5
  import * as Effect from 'effect/Effect';
6
- import * as Schema from 'effect/Schema';
7
6
 
7
+ import { Operation } from '@dxos/compute';
8
8
  import { Database, Entity, Obj, Type } from '@dxos/echo';
9
- import { defineFunction } from '@dxos/functions';
9
+ import { EncodedReference } from '@dxos/echo-protocol';
10
10
  import { invariant } from '@dxos/invariant';
11
- import { trim } from '@dxos/util';
11
+ import { deepMapValues } from '@dxos/util';
12
12
 
13
- export default defineFunction({
14
- key: 'dxos.org/function/database/object-create',
15
- name: 'Create object',
16
- description: trim`
17
- Creates a new object and adds it to the current space.
18
- Get the schema from the schema-list tool and ensure that the data matches the corresponding schema.
19
- `,
20
- inputSchema: Schema.Struct({
21
- typename: Schema.String,
22
- data: Schema.Any,
23
- }),
24
- outputSchema: Schema.Unknown,
25
- handler: Effect.fn(function* ({ data: { typename, data } }) {
26
- const { db } = yield* Database.Service;
27
- const schema = yield* Effect.promise(() =>
28
- db.schemaRegistry.query({ typename, location: ['database', 'runtime'] }).first(),
29
- );
30
- invariant(Type.isObjectSchema(schema), 'Schema is not an object schema');
13
+ import { ObjectCreate } from './definitions';
31
14
 
32
- const object = db.add(Obj.make(schema, data));
33
- return Entity.toJSON(object);
34
- }),
35
- });
15
+ export default ObjectCreate.pipe(
16
+ Operation.withHandler(
17
+ Effect.fn(function* ({ typename, data }) {
18
+ const { db } = yield* Database.Service;
19
+ const schema = yield* Effect.promise(() =>
20
+ db.schemaRegistry.query({ typename, location: ['database', 'runtime'] }).first(),
21
+ );
22
+ invariant(Type.isObjectSchema(schema), 'Schema is not an object schema');
23
+
24
+ const object = db.add(
25
+ Obj.make(
26
+ schema,
27
+ deepMapValues(data, (value, recurse) => {
28
+ if (EncodedReference.isEncodedReference(value)) {
29
+ return db.makeRef(EncodedReference.toDXN(value));
30
+ }
31
+ return recurse(value);
32
+ }),
33
+ ),
34
+ );
35
+ return Entity.toJSON(object);
36
+ }),
37
+ ),
38
+ );
@@ -3,25 +3,18 @@
3
3
  //
4
4
 
5
5
  import * as Effect from 'effect/Effect';
6
- import * as Schema from 'effect/Schema';
7
6
 
8
- import { Database, Obj, Ref } from '@dxos/echo';
9
- import { defineFunction } from '@dxos/functions';
10
- import { trim } from '@dxos/util';
7
+ import { Operation } from '@dxos/compute';
8
+ import { Database } from '@dxos/echo';
11
9
 
12
- export default defineFunction({
13
- key: 'dxos.org/function/database/object-delete',
14
- name: 'Delete object',
15
- description: trim`
16
- Deletes the object.
17
- `,
18
- inputSchema: Schema.Struct({
19
- obj: Ref.Ref(Obj.Unknown),
20
- }),
21
- outputSchema: Schema.Void,
22
- handler: Effect.fn(function* ({ data: { obj } }) {
23
- const { db } = yield* Database.Service;
24
- const object = yield* Database.load(obj);
25
- db.remove(object);
26
- }),
27
- });
10
+ import { ObjectDelete } from './definitions';
11
+
12
+ export default ObjectDelete.pipe(
13
+ Operation.withHandler(
14
+ Effect.fn(function* ({ obj }) {
15
+ const { db } = yield* Database.Service;
16
+ const object = yield* Database.load(obj);
17
+ db.remove(object);
18
+ }),
19
+ ),
20
+ );
@@ -3,30 +3,28 @@
3
3
  //
4
4
 
5
5
  import * as Effect from 'effect/Effect';
6
- import * as Schema from 'effect/Schema';
7
6
 
8
- import { Database, Entity, Obj, Ref } from '@dxos/echo';
9
- import { defineFunction } from '@dxos/functions';
10
- import { trim } from '@dxos/util';
7
+ import { Operation } from '@dxos/compute';
8
+ import { Database, Entity } from '@dxos/echo';
9
+ import { EncodedReference } from '@dxos/echo-protocol';
11
10
 
12
- export default defineFunction({
13
- key: 'dxos.org/function/database/object-update',
14
- name: 'Update object',
15
- description: trim`
16
- Updates the object properties.
17
- `,
18
- inputSchema: Schema.Struct({
19
- obj: Ref.Ref(Obj.Unknown),
20
- properties: Schema.Record({ key: Schema.String, value: Schema.Any }),
21
- }),
22
- outputSchema: Schema.Unknown,
23
- handler: Effect.fn(function* ({ data: { obj, properties } }) {
24
- const object = yield* Database.load(obj);
25
- Entity.change(object as Entity.Any, (obj) => {
26
- for (const [key, value] of Object.entries(properties)) {
27
- obj[key] = value;
28
- }
29
- });
30
- return Entity.toJSON(object);
31
- }),
32
- });
11
+ import { ObjectUpdate } from './definitions';
12
+
13
+ export default ObjectUpdate.pipe(
14
+ Operation.withHandler(
15
+ Effect.fn(function* ({ obj, properties }) {
16
+ const { db } = yield* Database.Service;
17
+ const object = yield* Database.load(obj);
18
+ Entity.update(object as Entity.Any, (obj) => {
19
+ for (const [key, value] of Object.entries(properties)) {
20
+ if (EncodedReference.isEncodedReference(value)) {
21
+ obj[key] = db.makeRef(EncodedReference.toDXN(value));
22
+ } else {
23
+ obj[key] = value;
24
+ }
25
+ }
26
+ });
27
+ return Entity.toJSON(object);
28
+ }),
29
+ ),
30
+ );