@dxos/assistant-toolkit 0.8.4-main.bc674ce → 0.8.4-main.bcb3aa67d6

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 (664) hide show
  1. package/dist/lib/neutral/add-artifact-OBP4D5RN.mjs +30 -0
  2. package/dist/lib/neutral/add-artifact-OBP4D5RN.mjs.map +7 -0
  3. package/dist/lib/neutral/agent-27Z7BESA.mjs +95 -0
  4. package/dist/lib/neutral/agent-27Z7BESA.mjs.map +7 -0
  5. package/dist/lib/neutral/chunk-2NKPVOXM.mjs +267 -0
  6. package/dist/lib/neutral/chunk-2NKPVOXM.mjs.map +7 -0
  7. package/dist/lib/neutral/chunk-3ZUJIEFV.mjs +184 -0
  8. package/dist/lib/neutral/chunk-3ZUJIEFV.mjs.map +7 -0
  9. package/dist/lib/neutral/chunk-4QGZEDWS.mjs +140 -0
  10. package/dist/lib/neutral/chunk-4QGZEDWS.mjs.map +7 -0
  11. package/dist/lib/neutral/chunk-6FL4C6KD.mjs +86 -0
  12. package/dist/lib/neutral/chunk-6FL4C6KD.mjs.map +7 -0
  13. package/dist/lib/neutral/chunk-6IAJ2JI5.mjs +54 -0
  14. package/dist/lib/neutral/chunk-6IAJ2JI5.mjs.map +7 -0
  15. package/dist/lib/neutral/chunk-AGG6OZNB.mjs +74 -0
  16. package/dist/lib/neutral/chunk-AGG6OZNB.mjs.map +7 -0
  17. package/dist/lib/neutral/chunk-AKMBURAD.mjs +320 -0
  18. package/dist/lib/neutral/chunk-AKMBURAD.mjs.map +7 -0
  19. package/dist/lib/neutral/chunk-BO4ZVH7M.mjs +73 -0
  20. package/dist/lib/neutral/chunk-BO4ZVH7M.mjs.map +7 -0
  21. package/dist/lib/neutral/chunk-CJUCONUJ.mjs +99 -0
  22. package/dist/lib/neutral/chunk-CJUCONUJ.mjs.map +7 -0
  23. package/dist/lib/neutral/chunk-GAJ6MKJX.mjs +363 -0
  24. package/dist/lib/neutral/chunk-GAJ6MKJX.mjs.map +7 -0
  25. package/dist/lib/neutral/chunk-HEFG73F2.mjs +53 -0
  26. package/dist/lib/neutral/chunk-HEFG73F2.mjs.map +7 -0
  27. package/dist/lib/neutral/chunk-HZM3HNAS.mjs +78 -0
  28. package/dist/lib/neutral/chunk-HZM3HNAS.mjs.map +7 -0
  29. package/dist/lib/neutral/chunk-ILZ2ODWC.mjs +95 -0
  30. package/dist/lib/neutral/chunk-ILZ2ODWC.mjs.map +7 -0
  31. package/dist/lib/neutral/chunk-IQNOIB23.mjs +58 -0
  32. package/dist/lib/neutral/chunk-IQNOIB23.mjs.map +7 -0
  33. package/dist/lib/neutral/chunk-KWZG4QBN.mjs +685 -0
  34. package/dist/lib/neutral/chunk-KWZG4QBN.mjs.map +7 -0
  35. package/dist/lib/neutral/chunk-LI6VMCJW.mjs +27 -0
  36. package/dist/lib/neutral/chunk-LI6VMCJW.mjs.map +7 -0
  37. package/dist/lib/neutral/chunk-MEZ4UFR6.mjs +25 -0
  38. package/dist/lib/neutral/chunk-MEZ4UFR6.mjs.map +7 -0
  39. package/dist/lib/neutral/chunk-VBSCQN37.mjs +52 -0
  40. package/dist/lib/neutral/chunk-VBSCQN37.mjs.map +7 -0
  41. package/dist/lib/neutral/chunk-VDEDVOS6.mjs +39 -0
  42. package/dist/lib/neutral/chunk-VDEDVOS6.mjs.map +7 -0
  43. package/dist/lib/neutral/chunk-YBTLIXQK.mjs +29 -0
  44. package/dist/lib/neutral/chunk-YBTLIXQK.mjs.map +7 -0
  45. package/dist/lib/neutral/context-add-U5LSEQLG.mjs +22 -0
  46. package/dist/lib/neutral/context-add-U5LSEQLG.mjs.map +7 -0
  47. package/dist/lib/neutral/context-remove-3YGXLVRA.mjs +22 -0
  48. package/dist/lib/neutral/context-remove-3YGXLVRA.mjs.map +7 -0
  49. package/dist/lib/neutral/create-P6I22VS5.mjs +23 -0
  50. package/dist/lib/neutral/create-P6I22VS5.mjs.map +7 -0
  51. package/dist/lib/neutral/create-project-YEDZU75J.mjs +34 -0
  52. package/dist/lib/neutral/create-project-YEDZU75J.mjs.map +7 -0
  53. package/dist/lib/neutral/delete-LHMZDJFA.mjs +19 -0
  54. package/dist/lib/neutral/delete-LHMZDJFA.mjs.map +7 -0
  55. package/dist/lib/neutral/document-create-53ZVNGFR.mjs +57 -0
  56. package/dist/lib/neutral/document-create-53ZVNGFR.mjs.map +7 -0
  57. package/dist/lib/neutral/enable-blueprints-Q5NXGX2G.mjs +48 -0
  58. package/dist/lib/neutral/enable-blueprints-Q5NXGX2G.mjs.map +7 -0
  59. package/dist/lib/neutral/entity-extraction-CFXRZWZK.mjs +196 -0
  60. package/dist/lib/neutral/entity-extraction-CFXRZWZK.mjs.map +7 -0
  61. package/dist/lib/neutral/exa-P4G3DCYB.mjs +28 -0
  62. package/dist/lib/neutral/exa-P4G3DCYB.mjs.map +7 -0
  63. package/dist/lib/neutral/fetch-TLKREIZA.mjs +16 -0
  64. package/dist/lib/neutral/fetch-TLKREIZA.mjs.map +7 -0
  65. package/dist/lib/neutral/fetch-messages-AFX7ZAVE.mjs +154 -0
  66. package/dist/lib/neutral/fetch-messages-AFX7ZAVE.mjs.map +7 -0
  67. package/dist/lib/neutral/get-context-MKM4CEGH.mjs +35 -0
  68. package/dist/lib/neutral/get-context-MKM4CEGH.mjs.map +7 -0
  69. package/dist/lib/neutral/index.mjs +248 -0
  70. package/dist/lib/neutral/index.mjs.map +7 -0
  71. package/dist/lib/neutral/load-KHLICMGJ.mjs +17 -0
  72. package/dist/lib/neutral/load-KHLICMGJ.mjs.map +7 -0
  73. package/dist/lib/neutral/meta.json +1 -0
  74. package/dist/lib/{browser/index.mjs → neutral/mock-JSY4GY77.mjs} +23 -2347
  75. package/dist/lib/neutral/mock-JSY4GY77.mjs.map +7 -0
  76. package/dist/lib/neutral/object-create-7J7D53FT.mjs +43 -0
  77. package/dist/lib/neutral/object-create-7J7D53FT.mjs.map +7 -0
  78. package/dist/lib/neutral/object-delete-QFXUHJ2D.mjs +18 -0
  79. package/dist/lib/neutral/object-delete-QFXUHJ2D.mjs.map +7 -0
  80. package/dist/lib/neutral/object-update-C73HRM5F.mjs +28 -0
  81. package/dist/lib/neutral/object-update-C73HRM5F.mjs.map +7 -0
  82. package/dist/lib/neutral/project-rules-ZVV4TFOQ.mjs +77 -0
  83. package/dist/lib/neutral/project-rules-ZVV4TFOQ.mjs.map +7 -0
  84. package/dist/lib/neutral/prompt-J2XSDAWH.mjs +138 -0
  85. package/dist/lib/neutral/prompt-J2XSDAWH.mjs.map +7 -0
  86. package/dist/lib/neutral/qualifier-WRYRVSET.mjs +104 -0
  87. package/dist/lib/neutral/qualifier-WRYRVSET.mjs.map +7 -0
  88. package/dist/lib/neutral/query-FUFKLAN2.mjs +66 -0
  89. package/dist/lib/neutral/query-FUFKLAN2.mjs.map +7 -0
  90. package/dist/lib/neutral/query-U4LWIBNG.mjs +32 -0
  91. package/dist/lib/neutral/query-U4LWIBNG.mjs.map +7 -0
  92. package/dist/lib/neutral/query-blueprints-Y5CXJLCT.mjs +17 -0
  93. package/dist/lib/neutral/query-blueprints-Y5CXJLCT.mjs.map +7 -0
  94. package/dist/lib/neutral/read-JJN7YXHI.mjs +19 -0
  95. package/dist/lib/neutral/read-JJN7YXHI.mjs.map +7 -0
  96. package/dist/lib/neutral/relation-create-YWV2TUKS.mjs +42 -0
  97. package/dist/lib/neutral/relation-create-YWV2TUKS.mjs.map +7 -0
  98. package/dist/lib/neutral/relation-delete-JGGA4CYQ.mjs +18 -0
  99. package/dist/lib/neutral/relation-delete-JGGA4CYQ.mjs.map +7 -0
  100. package/dist/lib/neutral/research-UBK6ZGX7.mjs +109 -0
  101. package/dist/lib/neutral/research-UBK6ZGX7.mjs.map +7 -0
  102. package/dist/lib/neutral/save-JZ73KUMA.mjs +23 -0
  103. package/dist/lib/neutral/save-JZ73KUMA.mjs.map +7 -0
  104. package/dist/lib/neutral/schema-add-7WKPPKW4.mjs +24 -0
  105. package/dist/lib/neutral/schema-add-7WKPPKW4.mjs.map +7 -0
  106. package/dist/lib/neutral/schema-list-MIAIKERK.mjs +30 -0
  107. package/dist/lib/neutral/schema-list-MIAIKERK.mjs.map +7 -0
  108. package/dist/lib/neutral/sync-issues-FIRE3XR6.mjs +179 -0
  109. package/dist/lib/neutral/sync-issues-FIRE3XR6.mjs.map +7 -0
  110. package/dist/lib/neutral/tag-add-IKD4ADDM.mjs +19 -0
  111. package/dist/lib/neutral/tag-add-IKD4ADDM.mjs.map +7 -0
  112. package/dist/lib/neutral/tag-remove-PCSKCFT2.mjs +19 -0
  113. package/dist/lib/neutral/tag-remove-PCSKCFT2.mjs.map +7 -0
  114. package/dist/lib/neutral/testing/index.mjs +81 -0
  115. package/dist/lib/neutral/testing/index.mjs.map +7 -0
  116. package/dist/lib/neutral/update-HZ7A3ZA5.mjs +20 -0
  117. package/dist/lib/neutral/update-HZ7A3ZA5.mjs.map +7 -0
  118. package/dist/lib/neutral/update-tasks-TZ65WZ44.mjs +46 -0
  119. package/dist/lib/neutral/update-tasks-TZ65WZ44.mjs.map +7 -0
  120. package/dist/types/src/blueprints/automation/blueprint.d.ts +4 -0
  121. package/dist/types/src/blueprints/automation/blueprint.d.ts.map +1 -0
  122. package/dist/types/src/blueprints/automation/index.d.ts +2 -0
  123. package/dist/types/src/blueprints/automation/index.d.ts.map +1 -0
  124. package/dist/types/src/blueprints/blueprint-manager/blueprint.d.ts +4 -0
  125. package/dist/types/src/blueprints/blueprint-manager/blueprint.d.ts.map +1 -0
  126. package/dist/types/src/blueprints/blueprint-manager/blueprint.test.d.ts +2 -0
  127. package/dist/types/src/blueprints/blueprint-manager/blueprint.test.d.ts.map +1 -0
  128. package/dist/types/src/blueprints/blueprint-manager/functions/definitions.d.ts +59 -0
  129. package/dist/types/src/blueprints/blueprint-manager/functions/definitions.d.ts.map +1 -0
  130. package/dist/types/src/blueprints/blueprint-manager/functions/enable-blueprints.d.ts +36 -0
  131. package/dist/types/src/blueprints/blueprint-manager/functions/enable-blueprints.d.ts.map +1 -0
  132. package/dist/types/src/blueprints/blueprint-manager/functions/index.d.ts +4 -0
  133. package/dist/types/src/blueprints/blueprint-manager/functions/index.d.ts.map +1 -0
  134. package/dist/types/src/blueprints/{design/design-blueprint.d.ts → blueprint-manager/functions/query-blueprints.d.ts} +13 -4
  135. package/dist/types/src/blueprints/blueprint-manager/functions/query-blueprints.d.ts.map +1 -0
  136. package/dist/types/src/blueprints/blueprint-manager/index.d.ts +3 -0
  137. package/dist/types/src/blueprints/blueprint-manager/index.d.ts.map +1 -0
  138. package/dist/types/src/blueprints/browser/blueprint.d.ts +4 -0
  139. package/dist/types/src/blueprints/browser/blueprint.d.ts.map +1 -0
  140. package/dist/types/src/blueprints/browser/blueprint.test.d.ts +2 -0
  141. package/dist/types/src/blueprints/browser/blueprint.test.d.ts.map +1 -0
  142. package/dist/types/src/blueprints/browser/index.d.ts +2 -0
  143. package/dist/types/src/blueprints/browser/index.d.ts.map +1 -0
  144. package/dist/types/src/blueprints/database/blueprint.d.ts +4 -0
  145. package/dist/types/src/blueprints/database/blueprint.d.ts.map +1 -0
  146. package/dist/types/src/blueprints/database/blueprint.test.d.ts +2 -0
  147. package/dist/types/src/blueprints/database/blueprint.test.d.ts.map +1 -0
  148. package/dist/types/src/blueprints/database/functions/context-add.d.ts +7 -0
  149. package/dist/types/src/blueprints/database/functions/context-add.d.ts.map +1 -0
  150. package/dist/types/src/blueprints/database/functions/context-remove.d.ts +7 -0
  151. package/dist/types/src/blueprints/database/functions/context-remove.d.ts.map +1 -0
  152. package/dist/types/src/blueprints/database/functions/definitions.d.ts +58 -0
  153. package/dist/types/src/blueprints/database/functions/definitions.d.ts.map +1 -0
  154. package/dist/types/src/blueprints/database/functions/index.d.ts +4 -0
  155. package/dist/types/src/blueprints/database/functions/index.d.ts.map +1 -0
  156. package/dist/types/src/blueprints/database/functions/load.d.ts +7 -0
  157. package/dist/types/src/blueprints/database/functions/load.d.ts.map +1 -0
  158. package/dist/types/src/blueprints/database/functions/object-create.d.ts +8 -0
  159. package/dist/types/src/blueprints/database/functions/object-create.d.ts.map +1 -0
  160. package/dist/types/src/blueprints/database/functions/object-delete.d.ts +7 -0
  161. package/dist/types/src/blueprints/database/functions/object-delete.d.ts.map +1 -0
  162. package/dist/types/src/blueprints/database/functions/object-update.d.ts +10 -0
  163. package/dist/types/src/blueprints/database/functions/object-update.d.ts.map +1 -0
  164. package/dist/types/src/blueprints/database/functions/query.d.ts +11 -0
  165. package/dist/types/src/blueprints/database/functions/query.d.ts.map +1 -0
  166. package/dist/types/src/blueprints/database/functions/relation-create.d.ts +10 -0
  167. package/dist/types/src/blueprints/database/functions/relation-create.d.ts.map +1 -0
  168. package/dist/types/src/blueprints/database/functions/relation-delete.d.ts +7 -0
  169. package/dist/types/src/blueprints/database/functions/relation-delete.d.ts.map +1 -0
  170. package/dist/types/src/blueprints/database/functions/schema-add.d.ts +9 -0
  171. package/dist/types/src/blueprints/database/functions/schema-add.d.ts.map +1 -0
  172. package/dist/types/src/blueprints/database/functions/schema-list.d.ts +7 -0
  173. package/dist/types/src/blueprints/database/functions/schema-list.d.ts.map +1 -0
  174. package/dist/types/src/blueprints/database/functions/tag-add.d.ts +8 -0
  175. package/dist/types/src/blueprints/database/functions/tag-add.d.ts.map +1 -0
  176. package/dist/types/src/blueprints/database/functions/tag-remove.d.ts +8 -0
  177. package/dist/types/src/blueprints/database/functions/tag-remove.d.ts.map +1 -0
  178. package/dist/types/src/blueprints/database/index.d.ts +3 -0
  179. package/dist/types/src/blueprints/database/index.d.ts.map +1 -0
  180. package/dist/types/src/blueprints/design/blueprint.d.ts +4 -0
  181. package/dist/types/src/blueprints/design/blueprint.d.ts.map +1 -0
  182. package/dist/types/src/blueprints/design/blueprint.test.d.ts +2 -0
  183. package/dist/types/src/blueprints/design/blueprint.test.d.ts.map +1 -0
  184. package/dist/types/src/blueprints/design/index.d.ts +1 -2
  185. package/dist/types/src/blueprints/design/index.d.ts.map +1 -1
  186. package/dist/types/src/blueprints/discord/blueprint.d.ts +4 -0
  187. package/dist/types/src/blueprints/discord/blueprint.d.ts.map +1 -0
  188. package/dist/types/src/blueprints/discord/functions/definitions.d.ts +16 -0
  189. package/dist/types/src/blueprints/discord/functions/definitions.d.ts.map +1 -0
  190. package/dist/types/src/{functions/discord → blueprints/discord/functions}/fetch-messages.d.ts +4 -2
  191. package/dist/types/src/blueprints/discord/functions/fetch-messages.d.ts.map +1 -0
  192. package/dist/types/src/blueprints/discord/functions/fetch-messages.test.d.ts.map +1 -0
  193. package/dist/types/src/blueprints/discord/functions/index.d.ts +4 -0
  194. package/dist/types/src/blueprints/discord/functions/index.d.ts.map +1 -0
  195. package/dist/types/src/blueprints/discord/index.d.ts +2 -2
  196. package/dist/types/src/blueprints/discord/index.d.ts.map +1 -1
  197. package/dist/types/src/blueprints/github/functions/definitions.d.ts +8 -0
  198. package/dist/types/src/blueprints/github/functions/definitions.d.ts.map +1 -0
  199. package/dist/types/src/blueprints/github/functions/fetch-prs.d.ts +9 -0
  200. package/dist/types/src/blueprints/github/functions/fetch-prs.d.ts.map +1 -0
  201. package/dist/types/src/blueprints/github/functions/index.d.ts +4 -0
  202. package/dist/types/src/blueprints/github/functions/index.d.ts.map +1 -0
  203. package/dist/types/src/blueprints/github/index.d.ts +2 -0
  204. package/dist/types/src/blueprints/github/index.d.ts.map +1 -0
  205. package/dist/types/src/blueprints/index.d.ts +14 -6
  206. package/dist/types/src/blueprints/index.d.ts.map +1 -1
  207. package/dist/types/src/blueprints/linear/blueprint.d.ts +4 -0
  208. package/dist/types/src/blueprints/linear/blueprint.d.ts.map +1 -0
  209. package/dist/types/src/blueprints/linear/functions/definitions.d.ts +7 -0
  210. package/dist/types/src/blueprints/linear/functions/definitions.d.ts.map +1 -0
  211. package/dist/types/src/blueprints/linear/functions/index.d.ts +4 -0
  212. package/dist/types/src/blueprints/linear/functions/index.d.ts.map +1 -0
  213. package/dist/types/src/blueprints/linear/functions/linear.test.d.ts.map +1 -0
  214. package/dist/types/src/blueprints/linear/functions/sync-issues.d.ts +11 -0
  215. package/dist/types/src/blueprints/linear/functions/sync-issues.d.ts.map +1 -0
  216. package/dist/types/src/blueprints/linear/index.d.ts +2 -2
  217. package/dist/types/src/blueprints/linear/index.d.ts.map +1 -1
  218. package/dist/types/src/blueprints/markdown/blueprint.d.ts +4 -0
  219. package/dist/types/src/blueprints/markdown/blueprint.d.ts.map +1 -0
  220. package/dist/types/src/blueprints/markdown/functions/create.d.ts +8 -0
  221. package/dist/types/src/blueprints/markdown/functions/create.d.ts.map +1 -0
  222. package/dist/types/src/blueprints/markdown/functions/definitions.d.ts +45 -0
  223. package/dist/types/src/blueprints/markdown/functions/definitions.d.ts.map +1 -0
  224. package/dist/types/src/blueprints/markdown/functions/index.d.ts +4 -0
  225. package/dist/types/src/blueprints/markdown/functions/index.d.ts.map +1 -0
  226. package/dist/types/src/blueprints/markdown/functions/read.d.ts +17 -0
  227. package/dist/types/src/blueprints/markdown/functions/read.d.ts.map +1 -0
  228. package/dist/types/src/blueprints/markdown/functions/update.d.ts +16 -0
  229. package/dist/types/src/blueprints/markdown/functions/update.d.ts.map +1 -0
  230. package/dist/types/src/blueprints/markdown/index.d.ts +3 -0
  231. package/dist/types/src/blueprints/markdown/index.d.ts.map +1 -0
  232. package/dist/types/src/blueprints/memory/blueprint.d.ts +4 -0
  233. package/dist/types/src/blueprints/memory/blueprint.d.ts.map +1 -0
  234. package/dist/types/src/blueprints/memory/blueprint.test.d.ts +2 -0
  235. package/dist/types/src/blueprints/memory/blueprint.test.d.ts.map +1 -0
  236. package/dist/types/src/blueprints/memory/functions/definitions.d.ts +17 -0
  237. package/dist/types/src/blueprints/memory/functions/definitions.d.ts.map +1 -0
  238. package/dist/types/src/blueprints/memory/functions/delete.d.ts +10 -0
  239. package/dist/types/src/blueprints/memory/functions/delete.d.ts.map +1 -0
  240. package/dist/types/src/blueprints/memory/functions/index.d.ts +4 -0
  241. package/dist/types/src/blueprints/memory/functions/index.d.ts.map +1 -0
  242. package/dist/types/src/blueprints/memory/functions/query.d.ts +8 -0
  243. package/dist/types/src/blueprints/memory/functions/query.d.ts.map +1 -0
  244. package/dist/types/src/blueprints/memory/functions/save.d.ts +8 -0
  245. package/dist/types/src/blueprints/memory/functions/save.d.ts.map +1 -0
  246. package/dist/types/src/blueprints/memory/index.d.ts +3 -0
  247. package/dist/types/src/blueprints/memory/index.d.ts.map +1 -0
  248. package/dist/types/src/blueprints/planning/blueprint.d.ts +4 -0
  249. package/dist/types/src/blueprints/planning/blueprint.d.ts.map +1 -0
  250. package/dist/types/src/blueprints/planning/functions/definitions.d.ts +11 -0
  251. package/dist/types/src/blueprints/planning/functions/definitions.d.ts.map +1 -0
  252. package/dist/types/src/blueprints/planning/functions/index.d.ts +4 -0
  253. package/dist/types/src/blueprints/planning/functions/index.d.ts.map +1 -0
  254. package/dist/types/src/blueprints/planning/functions/update-tasks.d.ts +11 -0
  255. package/dist/types/src/blueprints/planning/functions/update-tasks.d.ts.map +1 -0
  256. package/dist/types/src/blueprints/planning/index.d.ts +2 -2
  257. package/dist/types/src/blueprints/planning/index.d.ts.map +1 -1
  258. package/dist/types/src/blueprints/planning-old/blueprint.d.ts +4 -0
  259. package/dist/types/src/blueprints/planning-old/blueprint.d.ts.map +1 -0
  260. package/dist/types/src/blueprints/planning-old/blueprint.test.d.ts +2 -0
  261. package/dist/types/src/blueprints/planning-old/blueprint.test.d.ts.map +1 -0
  262. package/dist/types/src/blueprints/planning-old/functions/definitions.d.ts +31 -0
  263. package/dist/types/src/blueprints/planning-old/functions/definitions.d.ts.map +1 -0
  264. package/dist/types/src/blueprints/planning-old/functions/index.d.ts +4 -0
  265. package/dist/types/src/blueprints/planning-old/functions/index.d.ts.map +1 -0
  266. package/dist/types/src/blueprints/planning-old/functions/read.d.ts +17 -0
  267. package/dist/types/src/blueprints/planning-old/functions/read.d.ts.map +1 -0
  268. package/dist/types/src/blueprints/planning-old/functions/task-list.d.ts.map +1 -0
  269. package/dist/types/src/blueprints/planning-old/functions/task-list.test.d.ts.map +1 -0
  270. package/dist/types/src/blueprints/planning-old/functions/update.d.ts +19 -0
  271. package/dist/types/src/blueprints/planning-old/functions/update.d.ts.map +1 -0
  272. package/dist/types/src/blueprints/planning-old/index.d.ts +3 -0
  273. package/dist/types/src/blueprints/planning-old/index.d.ts.map +1 -0
  274. package/dist/types/src/blueprints/project/blueprint.d.ts +4 -0
  275. package/dist/types/src/blueprints/project/blueprint.d.ts.map +1 -0
  276. package/dist/types/src/blueprints/project/blueprint.test.d.ts +2 -0
  277. package/dist/types/src/blueprints/project/blueprint.test.d.ts.map +1 -0
  278. package/dist/types/src/blueprints/project/functions/add-artifact.d.ts +8 -0
  279. package/dist/types/src/blueprints/project/functions/add-artifact.d.ts.map +1 -0
  280. package/dist/types/src/blueprints/project/functions/agent.d.ts +4 -0
  281. package/dist/types/src/blueprints/project/functions/agent.d.ts.map +1 -0
  282. package/dist/types/src/blueprints/project/functions/definitions.d.ts +150 -0
  283. package/dist/types/src/blueprints/project/functions/definitions.d.ts.map +1 -0
  284. package/dist/types/src/blueprints/project/functions/get-context.d.ts +15 -0
  285. package/dist/types/src/blueprints/project/functions/get-context.d.ts.map +1 -0
  286. package/dist/types/src/blueprints/project/functions/index.d.ts +4 -0
  287. package/dist/types/src/blueprints/project/functions/index.d.ts.map +1 -0
  288. package/dist/types/src/blueprints/project/functions/qualifier.d.ts +69 -0
  289. package/dist/types/src/blueprints/project/functions/qualifier.d.ts.map +1 -0
  290. package/dist/types/src/blueprints/project/index.d.ts +4 -0
  291. package/dist/types/src/blueprints/project/index.d.ts.map +1 -0
  292. package/dist/types/src/blueprints/project/sync-triggers.d.ts +11 -0
  293. package/dist/types/src/blueprints/project/sync-triggers.d.ts.map +1 -0
  294. package/dist/types/src/blueprints/project-wizard/blueprint.d.ts +4 -0
  295. package/dist/types/src/blueprints/project-wizard/blueprint.d.ts.map +1 -0
  296. package/dist/types/src/blueprints/project-wizard/functions/create-project.d.ts +48 -0
  297. package/dist/types/src/blueprints/project-wizard/functions/create-project.d.ts.map +1 -0
  298. package/dist/types/src/blueprints/project-wizard/functions/definitions.d.ts +49 -0
  299. package/dist/types/src/blueprints/project-wizard/functions/definitions.d.ts.map +1 -0
  300. package/dist/types/src/blueprints/project-wizard/functions/index.d.ts +4 -0
  301. package/dist/types/src/blueprints/project-wizard/functions/index.d.ts.map +1 -0
  302. package/dist/types/src/blueprints/project-wizard/functions/project-rules.d.ts +4 -0
  303. package/dist/types/src/blueprints/project-wizard/functions/project-rules.d.ts.map +1 -0
  304. package/dist/types/src/blueprints/project-wizard/index.d.ts +3 -0
  305. package/dist/types/src/blueprints/project-wizard/index.d.ts.map +1 -0
  306. package/dist/types/src/blueprints/research/blueprint.d.ts +4 -0
  307. package/dist/types/src/blueprints/research/blueprint.d.ts.map +1 -0
  308. package/dist/types/src/blueprints/research/blueprint.test.d.ts +2 -0
  309. package/dist/types/src/blueprints/research/blueprint.test.d.ts.map +1 -0
  310. package/dist/types/src/blueprints/research/functions/definitions.d.ts +21 -0
  311. package/dist/types/src/blueprints/research/functions/definitions.d.ts.map +1 -0
  312. package/dist/types/src/blueprints/research/functions/document-create.d.ts +12 -0
  313. package/dist/types/src/blueprints/research/functions/document-create.d.ts.map +1 -0
  314. package/dist/types/src/blueprints/research/functions/index.d.ts +4 -0
  315. package/dist/types/src/blueprints/research/functions/index.d.ts.map +1 -0
  316. package/dist/types/src/blueprints/research/functions/research.d.ts +18 -0
  317. package/dist/types/src/blueprints/research/functions/research.d.ts.map +1 -0
  318. package/dist/types/src/blueprints/research/functions/research.test.d.ts.map +1 -0
  319. package/dist/types/src/blueprints/research/index.d.ts +3 -2
  320. package/dist/types/src/blueprints/research/index.d.ts.map +1 -1
  321. package/dist/types/src/blueprints/research/types/ResearchGraph.d.ts +24 -0
  322. package/dist/types/src/blueprints/research/types/ResearchGraph.d.ts.map +1 -0
  323. package/dist/types/src/blueprints/research/types/index.d.ts +7 -0
  324. package/dist/types/src/blueprints/research/types/index.d.ts.map +1 -0
  325. package/dist/types/src/blueprints/testing.d.ts +16 -4
  326. package/dist/types/src/blueprints/testing.d.ts.map +1 -1
  327. package/dist/types/src/blueprints/websearch/blueprint.d.ts +4 -0
  328. package/dist/types/src/blueprints/websearch/blueprint.d.ts.map +1 -0
  329. package/dist/types/src/blueprints/websearch/blueprint.test.d.ts +2 -0
  330. package/dist/types/src/blueprints/websearch/blueprint.test.d.ts.map +1 -0
  331. package/dist/types/src/blueprints/websearch/functions/definitions.d.ts +5 -0
  332. package/dist/types/src/blueprints/websearch/functions/definitions.d.ts.map +1 -0
  333. package/dist/types/src/blueprints/websearch/functions/fetch.d.ts +6 -0
  334. package/dist/types/src/blueprints/websearch/functions/fetch.d.ts.map +1 -0
  335. package/dist/types/src/blueprints/websearch/functions/index.d.ts +4 -0
  336. package/dist/types/src/blueprints/websearch/functions/index.d.ts.map +1 -0
  337. package/dist/types/src/blueprints/websearch/index.d.ts +3 -3
  338. package/dist/types/src/blueprints/websearch/index.d.ts.map +1 -1
  339. package/dist/types/src/blueprints/websearch/{websearch-toolkit.d.ts → toolkit.d.ts} +3 -1
  340. package/dist/types/src/blueprints/websearch/toolkit.d.ts.map +1 -0
  341. package/dist/types/src/crud/graph.d.ts +6 -6
  342. package/dist/types/src/crud/graph.d.ts.map +1 -1
  343. package/dist/types/src/functions/agent/definitions.d.ts +101 -0
  344. package/dist/types/src/functions/agent/definitions.d.ts.map +1 -0
  345. package/dist/types/src/functions/agent/index.d.ts +3 -4
  346. package/dist/types/src/functions/agent/index.d.ts.map +1 -1
  347. package/dist/types/src/functions/agent/prompt.d.ts +34 -8
  348. package/dist/types/src/functions/agent/prompt.d.ts.map +1 -1
  349. package/dist/types/src/functions/agent/prompt.test.d.ts +2 -0
  350. package/dist/types/src/functions/agent/prompt.test.d.ts.map +1 -0
  351. package/dist/types/src/functions/entity-extraction/definitions.d.ts +182 -0
  352. package/dist/types/src/functions/entity-extraction/definitions.d.ts.map +1 -0
  353. package/dist/types/src/functions/entity-extraction/entity-extraction.d.ts +2 -172
  354. package/dist/types/src/functions/entity-extraction/entity-extraction.d.ts.map +1 -1
  355. package/dist/types/src/functions/entity-extraction/index.d.ts +3 -174
  356. package/dist/types/src/functions/entity-extraction/index.d.ts.map +1 -1
  357. package/dist/types/src/functions/exa/definitions.d.ts +9 -0
  358. package/dist/types/src/functions/exa/definitions.d.ts.map +1 -0
  359. package/dist/types/src/functions/exa/exa.d.ts +4 -2
  360. package/dist/types/src/functions/exa/exa.d.ts.map +1 -1
  361. package/dist/types/src/functions/exa/index.d.ts +3 -2
  362. package/dist/types/src/functions/exa/index.d.ts.map +1 -1
  363. package/dist/types/src/functions/exa/mock.d.ts +3 -2
  364. package/dist/types/src/functions/exa/mock.d.ts.map +1 -1
  365. package/dist/types/src/functions/index.d.ts +1 -5
  366. package/dist/types/src/functions/index.d.ts.map +1 -1
  367. package/dist/types/src/index.d.ts +2 -1
  368. package/dist/types/src/index.d.ts.map +1 -1
  369. package/dist/types/src/testing/index.d.ts +1 -0
  370. package/dist/types/src/testing/index.d.ts.map +1 -1
  371. package/dist/types/src/testing/plugins.d.ts.map +1 -1
  372. package/dist/types/src/toolkits/WebToolkit.d.ts +38 -0
  373. package/dist/types/src/toolkits/WebToolkit.d.ts.map +1 -0
  374. package/dist/types/src/toolkits/index.d.ts +1 -2
  375. package/dist/types/src/toolkits/index.d.ts.map +1 -1
  376. package/dist/types/src/types/Chat.d.ts +52 -0
  377. package/dist/types/src/types/Chat.d.ts.map +1 -0
  378. package/dist/types/src/types/Memory.d.ts +12 -0
  379. package/dist/types/src/types/Memory.d.ts.map +1 -0
  380. package/dist/types/src/types/Plan.d.ts +86 -0
  381. package/dist/types/src/types/Plan.d.ts.map +1 -0
  382. package/dist/types/src/types/Project.d.ts +73 -0
  383. package/dist/types/src/types/Project.d.ts.map +1 -0
  384. package/dist/types/src/types/index.d.ts +5 -0
  385. package/dist/types/src/types/index.d.ts.map +1 -0
  386. package/dist/types/tsconfig.tsbuildinfo +1 -1
  387. package/package.json +39 -43
  388. package/src/blueprints/automation/blueprint.ts +109 -0
  389. package/src/blueprints/automation/index.ts +5 -0
  390. package/src/blueprints/blueprint-manager/blueprint.test.ts +130 -0
  391. package/src/blueprints/blueprint-manager/blueprint.ts +49 -0
  392. package/src/blueprints/blueprint-manager/functions/definitions.ts +46 -0
  393. package/src/blueprints/blueprint-manager/functions/enable-blueprints.ts +44 -0
  394. package/src/blueprints/blueprint-manager/functions/index.ts +12 -0
  395. package/src/blueprints/blueprint-manager/functions/query-blueprints.ts +19 -0
  396. package/src/blueprints/blueprint-manager/index.ts +6 -0
  397. package/src/blueprints/browser/blueprint.conversations.json +1 -0
  398. package/src/blueprints/browser/blueprint.test.ts +64 -0
  399. package/src/blueprints/browser/blueprint.ts +41 -0
  400. package/src/blueprints/browser/index.ts +5 -0
  401. package/src/blueprints/database/blueprint.conversations.json +1 -0
  402. package/src/blueprints/database/blueprint.test.ts +343 -0
  403. package/src/blueprints/database/blueprint.ts +67 -0
  404. package/src/blueprints/database/functions/context-add.ts +24 -0
  405. package/src/blueprints/database/functions/context-remove.ts +24 -0
  406. package/src/blueprints/database/functions/definitions.ts +301 -0
  407. package/src/blueprints/database/functions/index.ts +23 -0
  408. package/src/blueprints/database/functions/load.ts +19 -0
  409. package/src/blueprints/database/functions/object-create.ts +38 -0
  410. package/src/blueprints/database/functions/object-delete.ts +20 -0
  411. package/src/blueprints/database/functions/object-update.ts +30 -0
  412. package/src/blueprints/database/functions/query.ts +56 -0
  413. package/src/blueprints/database/functions/relation-create.ts +34 -0
  414. package/src/blueprints/database/functions/relation-delete.ts +21 -0
  415. package/src/blueprints/database/functions/schema-add.ts +28 -0
  416. package/src/blueprints/database/functions/schema-list.ts +27 -0
  417. package/src/blueprints/database/functions/tag-add.ts +21 -0
  418. package/src/blueprints/database/functions/tag-remove.ts +21 -0
  419. package/src/blueprints/database/index.ts +21 -0
  420. package/src/blueprints/design/{design-blueprint.test.ts → blueprint.test.ts} +14 -22
  421. package/src/blueprints/design/{design-blueprint.ts → blueprint.ts} +21 -11
  422. package/src/blueprints/design/index.ts +1 -3
  423. package/src/blueprints/discord/blueprint.ts +42 -0
  424. package/src/blueprints/discord/functions/definitions.ts +71 -0
  425. package/src/{functions/discord → blueprints/discord/functions}/fetch-messages.test.ts +6 -8
  426. package/src/blueprints/discord/functions/fetch-messages.ts +199 -0
  427. package/src/blueprints/discord/functions/index.ts +9 -0
  428. package/src/blueprints/discord/index.ts +2 -3
  429. package/src/blueprints/github/functions/definitions.ts +27 -0
  430. package/src/blueprints/github/functions/fetch-prs.ts +24 -0
  431. package/src/blueprints/github/functions/index.ts +9 -0
  432. package/src/blueprints/github/index.ts +5 -0
  433. package/src/blueprints/index.ts +14 -6
  434. package/src/blueprints/linear/blueprint.ts +43 -0
  435. package/src/blueprints/linear/functions/definitions.ts +24 -0
  436. package/src/blueprints/linear/functions/index.ts +9 -0
  437. package/src/blueprints/linear/functions/linear.test.ts +60 -0
  438. package/src/{functions/linear → blueprints/linear/functions}/sync-issues.ts +37 -45
  439. package/src/blueprints/linear/index.ts +2 -3
  440. package/src/blueprints/markdown/blueprint.ts +36 -0
  441. package/src/blueprints/markdown/functions/create.ts +20 -0
  442. package/src/blueprints/markdown/functions/definitions.ts +80 -0
  443. package/src/blueprints/markdown/functions/index.ts +13 -0
  444. package/src/blueprints/markdown/functions/read.ts +22 -0
  445. package/src/blueprints/markdown/functions/update.ts +22 -0
  446. package/src/blueprints/markdown/index.ts +11 -0
  447. package/src/blueprints/memory/blueprint.conversations.json +1 -0
  448. package/src/blueprints/memory/blueprint.test.ts +139 -0
  449. package/src/blueprints/memory/blueprint.ts +42 -0
  450. package/src/blueprints/memory/functions/definitions.ts +68 -0
  451. package/src/blueprints/memory/functions/delete.ts +20 -0
  452. package/src/blueprints/memory/functions/index.ts +13 -0
  453. package/src/blueprints/memory/functions/query.ts +32 -0
  454. package/src/blueprints/memory/functions/save.ts +20 -0
  455. package/src/blueprints/memory/index.ts +6 -0
  456. package/src/blueprints/planning/blueprint.ts +25 -0
  457. package/src/blueprints/planning/functions/definitions.ts +137 -0
  458. package/src/blueprints/planning/functions/index.ts +9 -0
  459. package/src/blueprints/planning/functions/update-tasks.ts +45 -0
  460. package/src/blueprints/planning/index.ts +3 -4
  461. package/src/blueprints/{planning/planning-blueprint.test.ts → planning-old/blueprint.test.ts} +14 -18
  462. package/src/blueprints/{planning/planning-blueprint.ts → planning-old/blueprint.ts} +21 -11
  463. package/src/blueprints/planning-old/functions/definitions.ts +53 -0
  464. package/src/blueprints/planning-old/functions/index.ts +12 -0
  465. package/src/blueprints/planning-old/functions/read.ts +24 -0
  466. package/src/blueprints/planning-old/functions/update.ts +31 -0
  467. package/src/blueprints/planning-old/index.ts +6 -0
  468. package/src/blueprints/project/blueprint.conversations.json +1 -0
  469. package/src/{initiative/initiative.test.ts → blueprints/project/blueprint.test.ts} +149 -47
  470. package/src/blueprints/project/blueprint.ts +65 -0
  471. package/src/blueprints/project/functions/add-artifact.ts +30 -0
  472. package/src/blueprints/project/functions/agent.ts +75 -0
  473. package/src/blueprints/project/functions/definitions.ts +91 -0
  474. package/src/blueprints/project/functions/get-context.ts +46 -0
  475. package/src/blueprints/project/functions/index.ts +14 -0
  476. package/src/blueprints/project/functions/qualifier.ts +90 -0
  477. package/src/blueprints/project/index.ts +7 -0
  478. package/src/blueprints/project/sync-triggers.ts +149 -0
  479. package/src/blueprints/project-wizard/blueprint.ts +43 -0
  480. package/src/blueprints/project-wizard/functions/create-project.ts +33 -0
  481. package/src/blueprints/project-wizard/functions/definitions.ts +48 -0
  482. package/src/blueprints/project-wizard/functions/index.ts +12 -0
  483. package/src/blueprints/project-wizard/functions/project-rules.ts +76 -0
  484. package/src/blueprints/project-wizard/index.ts +6 -0
  485. package/src/blueprints/research/{research-blueprint.ts → blueprint.ts} +22 -12
  486. package/src/blueprints/research/functions/definitions.ts +87 -0
  487. package/src/blueprints/research/functions/document-create.ts +50 -0
  488. package/src/blueprints/research/functions/index.ts +12 -0
  489. package/src/{functions/research → blueprints/research/functions}/research-instructions.tpl +5 -5
  490. package/src/blueprints/research/functions/research.conversations.json +1 -0
  491. package/src/blueprints/research/functions/research.test.ts +152 -0
  492. package/src/blueprints/research/functions/research.ts +138 -0
  493. package/src/blueprints/research/index.ts +3 -3
  494. package/src/blueprints/research/types/ResearchGraph.ts +62 -0
  495. package/src/{functions/research/types.ts → blueprints/research/types/index.ts} +12 -6
  496. package/src/blueprints/testing.ts +34 -5
  497. package/src/blueprints/websearch/blueprint.conversations.json +1 -0
  498. package/src/blueprints/websearch/blueprint.test.ts +39 -0
  499. package/src/blueprints/websearch/blueprint.ts +31 -0
  500. package/src/blueprints/websearch/functions/definitions.ts +25 -0
  501. package/src/blueprints/websearch/functions/fetch.ts +18 -0
  502. package/src/blueprints/websearch/functions/index.ts +9 -0
  503. package/src/blueprints/websearch/index.ts +3 -5
  504. package/src/blueprints/websearch/{websearch-toolkit.ts → toolkit.ts} +4 -0
  505. package/src/crud/graph.test.ts +2 -2
  506. package/src/crud/graph.ts +9 -9
  507. package/src/functions/READ_THIS.md +5 -0
  508. package/src/functions/agent/definitions.ts +53 -0
  509. package/src/functions/agent/index.ts +3 -5
  510. package/src/functions/agent/prompt.test.ts +144 -0
  511. package/src/functions/agent/prompt.ts +122 -104
  512. package/src/functions/entity-extraction/definitions.ts +44 -0
  513. package/src/functions/entity-extraction/entity-extraction.conversations.json +1 -6597
  514. package/src/functions/entity-extraction/entity-extraction.test.ts +13 -30
  515. package/src/functions/entity-extraction/entity-extraction.ts +68 -92
  516. package/src/functions/entity-extraction/index.ts +4 -4
  517. package/src/functions/exa/definitions.ts +37 -0
  518. package/src/functions/exa/exa.ts +22 -27
  519. package/src/functions/exa/index.ts +8 -2
  520. package/src/functions/exa/mock.ts +28 -37
  521. package/src/functions/index.ts +1 -5
  522. package/src/index.ts +2 -1
  523. package/src/sync/sync.ts +2 -2
  524. package/src/testing/index.ts +1 -0
  525. package/src/testing/plugins.tsx +28 -19
  526. package/src/toolkits/WebToolkit.ts +33 -0
  527. package/src/toolkits/index.ts +1 -2
  528. package/src/types/Chat.ts +62 -0
  529. package/src/types/Memory.ts +23 -0
  530. package/src/types/Plan.ts +110 -0
  531. package/src/types/Project.ts +208 -0
  532. package/src/types/index.ts +8 -0
  533. package/dist/lib/browser/index.mjs.map +0 -7
  534. package/dist/lib/browser/meta.json +0 -1
  535. package/dist/lib/browser/testing/index.mjs +0 -43
  536. package/dist/lib/browser/testing/index.mjs.map +0 -7
  537. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +0 -11
  538. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs.map +0 -7
  539. package/dist/lib/node-esm/index.mjs +0 -2881
  540. package/dist/lib/node-esm/index.mjs.map +0 -7
  541. package/dist/lib/node-esm/meta.json +0 -1
  542. package/dist/lib/node-esm/testing/index.mjs +0 -44
  543. package/dist/lib/node-esm/testing/index.mjs.map +0 -7
  544. package/dist/types/src/blueprints/design/design-blueprint.d.ts.map +0 -1
  545. package/dist/types/src/blueprints/design/design-blueprint.test.d.ts +0 -2
  546. package/dist/types/src/blueprints/design/design-blueprint.test.d.ts.map +0 -1
  547. package/dist/types/src/blueprints/discord/discord-blueprint.d.ts +0 -18
  548. package/dist/types/src/blueprints/discord/discord-blueprint.d.ts.map +0 -1
  549. package/dist/types/src/blueprints/linear/linear-blueprint.d.ts +0 -18
  550. package/dist/types/src/blueprints/linear/linear-blueprint.d.ts.map +0 -1
  551. package/dist/types/src/blueprints/planning/planning-blueprint.d.ts +0 -18
  552. package/dist/types/src/blueprints/planning/planning-blueprint.d.ts.map +0 -1
  553. package/dist/types/src/blueprints/planning/planning-blueprint.test.d.ts +0 -2
  554. package/dist/types/src/blueprints/planning/planning-blueprint.test.d.ts.map +0 -1
  555. package/dist/types/src/blueprints/research/research-blueprint.d.ts +0 -18
  556. package/dist/types/src/blueprints/research/research-blueprint.d.ts.map +0 -1
  557. package/dist/types/src/blueprints/research/research-blueprint.test.d.ts +0 -2
  558. package/dist/types/src/blueprints/research/research-blueprint.test.d.ts.map +0 -1
  559. package/dist/types/src/blueprints/websearch/websearch-blueprint.d.ts +0 -18
  560. package/dist/types/src/blueprints/websearch/websearch-blueprint.d.ts.map +0 -1
  561. package/dist/types/src/blueprints/websearch/websearch-toolkit.d.ts.map +0 -1
  562. package/dist/types/src/experimental/feed.test.d.ts +0 -2
  563. package/dist/types/src/experimental/feed.test.d.ts.map +0 -1
  564. package/dist/types/src/functions/discord/fetch-messages.d.ts.map +0 -1
  565. package/dist/types/src/functions/discord/fetch-messages.test.d.ts.map +0 -1
  566. package/dist/types/src/functions/discord/index.d.ts +0 -12
  567. package/dist/types/src/functions/discord/index.d.ts.map +0 -1
  568. package/dist/types/src/functions/document/index.d.ts +0 -13
  569. package/dist/types/src/functions/document/index.d.ts.map +0 -1
  570. package/dist/types/src/functions/document/read.d.ts +0 -7
  571. package/dist/types/src/functions/document/read.d.ts.map +0 -1
  572. package/dist/types/src/functions/document/update.d.ts +0 -6
  573. package/dist/types/src/functions/document/update.d.ts.map +0 -1
  574. package/dist/types/src/functions/github/fetch-prs.d.ts +0 -6
  575. package/dist/types/src/functions/github/fetch-prs.d.ts.map +0 -1
  576. package/dist/types/src/functions/linear/index.d.ts +0 -9
  577. package/dist/types/src/functions/linear/index.d.ts.map +0 -1
  578. package/dist/types/src/functions/linear/linear.test.d.ts.map +0 -1
  579. package/dist/types/src/functions/linear/sync-issues.d.ts +0 -12
  580. package/dist/types/src/functions/linear/sync-issues.d.ts.map +0 -1
  581. package/dist/types/src/functions/research/document-create.d.ts +0 -9
  582. package/dist/types/src/functions/research/document-create.d.ts.map +0 -1
  583. package/dist/types/src/functions/research/index.d.ts +0 -21
  584. package/dist/types/src/functions/research/index.d.ts.map +0 -1
  585. package/dist/types/src/functions/research/research-graph.d.ts +0 -19
  586. package/dist/types/src/functions/research/research-graph.d.ts.map +0 -1
  587. package/dist/types/src/functions/research/research.d.ts +0 -14
  588. package/dist/types/src/functions/research/research.d.ts.map +0 -1
  589. package/dist/types/src/functions/research/research.test.d.ts.map +0 -1
  590. package/dist/types/src/functions/research/types.d.ts +0 -6
  591. package/dist/types/src/functions/research/types.d.ts.map +0 -1
  592. package/dist/types/src/functions/tasks/index.d.ts +0 -15
  593. package/dist/types/src/functions/tasks/index.d.ts.map +0 -1
  594. package/dist/types/src/functions/tasks/read.d.ts +0 -7
  595. package/dist/types/src/functions/tasks/read.d.ts.map +0 -1
  596. package/dist/types/src/functions/tasks/task-list.d.ts.map +0 -1
  597. package/dist/types/src/functions/tasks/task-list.test.d.ts.map +0 -1
  598. package/dist/types/src/functions/tasks/update.d.ts +0 -9
  599. package/dist/types/src/functions/tasks/update.d.ts.map +0 -1
  600. package/dist/types/src/initiative/Initiative.d.ts +0 -84
  601. package/dist/types/src/initiative/Initiative.d.ts.map +0 -1
  602. package/dist/types/src/initiative/InitiativeSchema.d.ts +0 -19
  603. package/dist/types/src/initiative/InitiativeSchema.d.ts.map +0 -1
  604. package/dist/types/src/initiative/functions/agent.d.ts +0 -37
  605. package/dist/types/src/initiative/functions/agent.d.ts.map +0 -1
  606. package/dist/types/src/initiative/functions/getContext.d.ts +0 -17
  607. package/dist/types/src/initiative/functions/getContext.d.ts.map +0 -1
  608. package/dist/types/src/initiative/functions/index.d.ts +0 -4
  609. package/dist/types/src/initiative/functions/index.d.ts.map +0 -1
  610. package/dist/types/src/initiative/functions/update.d.ts +0 -7
  611. package/dist/types/src/initiative/functions/update.d.ts.map +0 -1
  612. package/dist/types/src/initiative/index.d.ts +0 -1
  613. package/dist/types/src/initiative/index.d.ts.map +0 -1
  614. package/dist/types/src/initiative/initiative.test.d.ts +0 -2
  615. package/dist/types/src/initiative/initiative.test.d.ts.map +0 -1
  616. package/dist/types/src/toolkits/AssistantToolkit.d.ts +0 -43
  617. package/dist/types/src/toolkits/AssistantToolkit.d.ts.map +0 -1
  618. package/dist/types/src/toolkits/AssistantToolkit.test.d.ts +0 -2
  619. package/dist/types/src/toolkits/AssistantToolkit.test.d.ts.map +0 -1
  620. package/dist/types/src/toolkits/SystemToolkit.d.ts +0 -99
  621. package/dist/types/src/toolkits/SystemToolkit.d.ts.map +0 -1
  622. package/src/blueprints/discord/discord-blueprint.ts +0 -32
  623. package/src/blueprints/linear/linear-blueprint.ts +0 -33
  624. package/src/blueprints/websearch/websearch-blueprint.ts +0 -18
  625. package/src/experimental/feed.test.ts +0 -111
  626. package/src/functions/discord/fetch-messages.ts +0 -252
  627. package/src/functions/discord/index.ts +0 -9
  628. package/src/functions/document/index.ts +0 -12
  629. package/src/functions/document/read.ts +0 -30
  630. package/src/functions/document/update.ts +0 -33
  631. package/src/functions/github/fetch-prs.ts +0 -31
  632. package/src/functions/linear/index.ts +0 -9
  633. package/src/functions/linear/linear.test.ts +0 -84
  634. package/src/functions/research/document-create.ts +0 -76
  635. package/src/functions/research/index.ts +0 -14
  636. package/src/functions/research/research-graph.ts +0 -49
  637. package/src/functions/research/research.conversations.json +0 -1
  638. package/src/functions/research/research.test.ts +0 -171
  639. package/src/functions/research/research.ts +0 -189
  640. package/src/functions/tasks/index.ts +0 -11
  641. package/src/functions/tasks/read.ts +0 -35
  642. package/src/functions/tasks/update.ts +0 -53
  643. package/src/initiative/Initiative.ts +0 -99
  644. package/src/initiative/InitiativeSchema.ts +0 -37
  645. package/src/initiative/functions/agent.ts +0 -57
  646. package/src/initiative/functions/getContext.ts +0 -74
  647. package/src/initiative/functions/index.ts +0 -7
  648. package/src/initiative/functions/update.ts +0 -63
  649. package/src/initiative/index.ts +0 -3
  650. package/src/initiative/initiative.conversations.json +0 -1
  651. package/src/toolkits/AssistantToolkit.conversations.json +0 -1
  652. package/src/toolkits/AssistantToolkit.test.ts +0 -94
  653. package/src/toolkits/AssistantToolkit.ts +0 -70
  654. package/src/toolkits/SystemToolkit.ts +0 -299
  655. /package/dist/lib/{browser → neutral}/chunk-J5LGTIGS.mjs +0 -0
  656. /package/dist/lib/{browser → neutral}/chunk-J5LGTIGS.mjs.map +0 -0
  657. /package/dist/types/src/{functions/discord → blueprints/discord/functions}/fetch-messages.test.d.ts +0 -0
  658. /package/dist/types/src/{functions/linear → blueprints/linear/functions}/linear.test.d.ts +0 -0
  659. /package/dist/types/src/{functions/tasks → blueprints/planning-old/functions}/task-list.d.ts +0 -0
  660. /package/dist/types/src/{functions/tasks → blueprints/planning-old/functions}/task-list.test.d.ts +0 -0
  661. /package/dist/types/src/{functions/research → blueprints/research/functions}/research.test.d.ts +0 -0
  662. /package/src/{functions/tasks → blueprints/planning-old/functions}/task-list.test.ts +0 -0
  663. /package/src/{functions/tasks → blueprints/planning-old/functions}/task-list.ts +0 -0
  664. /package/src/blueprints/research/{research-blueprint.test.ts → blueprint.test.ts} +0 -0
@@ -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 { Database, Obj, Ref } from '@dxos/echo';
12
+ import { invariant } from '@dxos/invariant';
13
+ import { Operation } from '@dxos/operation';
14
+ import { trim } from '@dxos/util';
15
+
16
+ import { Qualifier } from './definitions';
17
+ import { Plan, Project } from '../../../types';
18
+
19
+ export default Qualifier.pipe(
20
+ Operation.withHandler(
21
+ Effect.fnUntraced(
22
+ function* ({ project: projectRef, event }) {
23
+ const project = yield* Database.load(projectRef);
24
+ invariant(Obj.instanceOf(Project.Project, project));
25
+ invariant(project.chat, 'Project has no chat.');
26
+
27
+ const { id, name, queue } = project;
28
+ if (!queue) {
29
+ throw new Error('Project has no queue.');
30
+ }
31
+
32
+ const plan = yield* Database.load(project.plan);
33
+ const spec = yield* Database.load(project.spec);
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 project.
44
+ Respond with true if the event is relevant to the project, 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
+ <project id="${id}" name="${name}">
48
+ <spec>
49
+ ${spec.content}
50
+ </spec>
51
+ <plan>
52
+ ${Plan.formatPlan(plan)}
53
+ </plan>
54
+ </project>
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,7 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ export { default as ProjectBlueprint } from './blueprint';
6
+ export { Agent, Qualifier, GetContext, AddArtifact, ProjectHandlers } from './functions';
7
+ export { syncProjectTriggers } from './sync-triggers';
@@ -0,0 +1,149 @@
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 { Database, Feed, Filter, Obj, Ref } from '@dxos/echo';
9
+ import { Trigger } from '@dxos/functions';
10
+ import { Operation } from '@dxos/operation';
11
+ import { FeedAnnotation } from '@dxos/schema';
12
+
13
+ import { Agent, Qualifier } from './functions/definitions';
14
+ import { Project } from '../../types';
15
+
16
+ /**
17
+ * Foreign key {@link PROJECT_TRIGGER_EXTENSION_KEY} => <project id : ObjectId>.
18
+ */
19
+ const PROJECT_TRIGGER_EXTENSION_KEY = 'org.dxos.extension.ProjectTrigger';
20
+
21
+ /**
22
+ * Foreign key {@link PROJECT_TRIGGER_TARGET_EXTENSION_KEY} => <dxn string of subscription target>.
23
+ */
24
+ const PROJECT_TRIGGER_TARGET_EXTENSION_KEY = 'org.dxos.extension.ProjectTriggerTarget';
25
+
26
+ /** Checks if an object's schema has the FeedAnnotation. */
27
+ const hasFeedAnnotation = (obj: Obj.Unknown): boolean => {
28
+ const schema = Obj.getSchema(obj);
29
+ if (!schema) {
30
+ return false;
31
+ }
32
+ const annotation = FeedAnnotation.get(schema);
33
+ return Option.isSome(annotation) && annotation.value === true;
34
+ };
35
+
36
+ /**
37
+ * Syncs triggers in the database with the project subscriptions.
38
+ *
39
+ * @param project - The project whose triggers should be synced.
40
+ * @returns An Effect that syncs triggers.
41
+ */
42
+ export const syncProjectTriggers = (project: Project.Project): Effect.Effect<void, never, Database.Service> =>
43
+ Effect.gen(function* () {
44
+ const triggers = yield* Database.runQuery(
45
+ Filter.foreignKeys(Trigger.Trigger, [{ source: PROJECT_TRIGGER_EXTENSION_KEY, id: project.id }]),
46
+ );
47
+
48
+ for (const trigger of triggers) {
49
+ const target = Obj.getKeys(trigger, PROJECT_TRIGGER_TARGET_EXTENSION_KEY).at(0)?.id;
50
+
51
+ const exists = project.subscriptions.find((subscription) => subscription.dxn.toString() === target);
52
+ if (!exists && !(project.useQualifyingAgent && target === Obj.getDXN(project)?.toString())) {
53
+ yield* Database.remove(trigger);
54
+ }
55
+ }
56
+
57
+ for (const subscription of project.subscriptions) {
58
+ const relevantTrigger = triggers.find((trigger) =>
59
+ Obj.getKeys(trigger, PROJECT_TRIGGER_TARGET_EXTENSION_KEY).some(
60
+ (key) => key.id === subscription.dxn.toString(),
61
+ ),
62
+ );
63
+ if (relevantTrigger) {
64
+ continue;
65
+ }
66
+
67
+ const targetOption = yield* Database.loadOption(subscription);
68
+ if (Option.isNone(targetOption)) {
69
+ continue;
70
+ }
71
+ const target = targetOption.value;
72
+
73
+ let feedObj: Feed.Feed | undefined;
74
+ if (Obj.instanceOf(Feed.Feed, target)) {
75
+ feedObj = target;
76
+ } else if (hasFeedAnnotation(target)) {
77
+ const feedRef = (target as Obj.Unknown & { feed?: Ref.Ref<Feed.Feed> }).feed;
78
+ feedObj = feedRef ? Option.getOrUndefined(yield* Database.loadOption(feedRef)) : undefined;
79
+ }
80
+
81
+ const queueDxn = Option.fromNullable(feedObj).pipe(
82
+ Option.filter(Obj.instanceOf(Feed.Feed)),
83
+ Option.map(Feed.getQueueDxn),
84
+ Option.getOrUndefined,
85
+ );
86
+ if (!queueDxn) {
87
+ continue;
88
+ }
89
+
90
+ yield* Database.add(
91
+ Trigger.make({
92
+ [Obj.Parent]: project,
93
+ [Obj.Meta]: {
94
+ keys: [
95
+ { source: PROJECT_TRIGGER_EXTENSION_KEY, id: project.id },
96
+ { source: PROJECT_TRIGGER_TARGET_EXTENSION_KEY, id: subscription.dxn.toString() },
97
+ ],
98
+ },
99
+ enabled: true,
100
+ spec: {
101
+ kind: 'queue',
102
+ queue: queueDxn.toString(),
103
+ },
104
+ function: Ref.make(Operation.serialize(project.useQualifyingAgent ? Qualifier : Agent)),
105
+ input: {
106
+ project: Ref.make(project),
107
+ event: '{{event}}',
108
+ },
109
+ concurrency: project.useQualifyingAgent ? 5 : undefined,
110
+ }),
111
+ );
112
+ }
113
+
114
+ if (project.useQualifyingAgent) {
115
+ const qualifierTrigger = triggers.find((trigger) =>
116
+ Obj.getKeys(trigger, PROJECT_TRIGGER_TARGET_EXTENSION_KEY).some(
117
+ (key) => key.id === Obj.getDXN(project)?.toString(),
118
+ ),
119
+ );
120
+ if (!qualifierTrigger && project.queue) {
121
+ yield* Database.add(
122
+ Trigger.make({
123
+ [Obj.Parent]: project,
124
+ [Obj.Meta]: {
125
+ keys: [
126
+ { source: PROJECT_TRIGGER_EXTENSION_KEY, id: project.id },
127
+ {
128
+ source: PROJECT_TRIGGER_TARGET_EXTENSION_KEY,
129
+ id: Obj.getDXN(project)?.toString() ?? '',
130
+ },
131
+ ],
132
+ },
133
+ function: Ref.make(Operation.serialize(Agent)),
134
+ enabled: true,
135
+ spec: {
136
+ kind: 'queue',
137
+ queue: project.queue.dxn.toString(),
138
+ },
139
+ input: {
140
+ project: Ref.make(project),
141
+ event: '{{event}}',
142
+ },
143
+ }),
144
+ );
145
+ }
146
+ }
147
+
148
+ yield* Database.flush();
149
+ });
@@ -0,0 +1,43 @@
1
+ //
2
+ // Copyright 2026 DXOS.org
3
+ //
4
+
5
+ import { type AppCapabilities } from '@dxos/app-toolkit';
6
+ import { Blueprint, Template } from '@dxos/blueprints';
7
+ import { trim } from '@dxos/util';
8
+
9
+ import { ProjectRules, CreateProject } from './functions';
10
+
11
+ const BLUEPRINT_KEY = 'org.dxos.blueprint.project-wizard';
12
+
13
+ /**
14
+ * Creates the Project blueprint. This is a function to avoid circular dependency issues.
15
+ */
16
+ const make = () =>
17
+ Blueprint.make({
18
+ key: BLUEPRINT_KEY,
19
+ name: 'Project Wizard',
20
+ description: 'Help the user create a new project.',
21
+ agentCanEnable: true,
22
+ instructions: Template.make({
23
+ source: trim`
24
+ You are a wizard that helps the user create a new project.
25
+
26
+ Projects are goal oriented and autonomously driven by the agent.
27
+ Each project has a spec - the goal of the project.
28
+ The spec also typically describes what actions to perform in reaction to events (emails).
29
+ The project has a number of associated artifacts to work with.
30
+ Projects can subscribe to emails.
31
+
32
+ IMPORTANT: Before attempting to create a project call the [project-rules] tool to get the rules for creating a project.
33
+ `,
34
+ }),
35
+ tools: Blueprint.toolDefinitions({ operations: [ProjectRules, CreateProject] }),
36
+ });
37
+
38
+ const blueprint: AppCapabilities.BlueprintDefinition = {
39
+ key: BLUEPRINT_KEY,
40
+ make,
41
+ };
42
+
43
+ export default blueprint;
@@ -0,0 +1,33 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import * as Effect from 'effect/Effect';
6
+
7
+ import { Blueprint } from '@dxos/blueprints';
8
+ import { Obj, Ref } from '@dxos/echo';
9
+ import { Operation } from '@dxos/operation';
10
+
11
+ import { CreateProject } from './definitions';
12
+ import { Project } from '../../../types';
13
+ import { ProjectBlueprint, syncProjectTriggers } from '../../project';
14
+
15
+ export default CreateProject.pipe(
16
+ Operation.withHandler(
17
+ Effect.fnUntraced(function* ({ name, spec, blueprints, subscriptions }) {
18
+ const project = yield* Project.makeInitialized(
19
+ {
20
+ name,
21
+ spec,
22
+ blueprints: yield* Effect.forEach(blueprints, (key) =>
23
+ Blueprint.upsert(key).pipe(Effect.map(Ref.make), Effect.orDie),
24
+ ),
25
+ subscriptions,
26
+ },
27
+ Obj.clone(ProjectBlueprint.make()),
28
+ );
29
+ yield* syncProjectTriggers(project);
30
+ return project;
31
+ }),
32
+ ),
33
+ );
@@ -0,0 +1,48 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import * as Schema from 'effect/Schema';
6
+
7
+ import { Blueprint } from '@dxos/blueprints';
8
+ import { Database, Obj, Ref } from '@dxos/echo';
9
+ import { QueueService } from '@dxos/functions';
10
+ import { Operation } from '@dxos/operation';
11
+
12
+ import { Project } from '../../../types';
13
+
14
+ export const ProjectRules = Operation.make({
15
+ meta: {
16
+ key: 'org.dxos.function.project-wizard.project-rules',
17
+ name: 'Project rules',
18
+ description: 'Gets the rules for creating a project.',
19
+ },
20
+ input: Schema.Struct({}),
21
+ output: Schema.String,
22
+ });
23
+
24
+ export const CreateProject = Operation.make({
25
+ meta: {
26
+ key: 'org.dxos.function.project-wizard.create-project',
27
+ name: 'Create project',
28
+ description: 'Creates a new project.',
29
+ },
30
+ input: Schema.Struct({
31
+ name: Schema.String.annotations({
32
+ description: 'The name of the project to create.',
33
+ }),
34
+ spec: Schema.String.annotations({
35
+ description:
36
+ 'The goal of the project. Be specic but not to verbose. The agent will use this as a core objective and set of rules to follow.',
37
+ }),
38
+ blueprints: Schema.Array(Schema.String).annotations({
39
+ description: 'The keys blueprints to use for the project.',
40
+ examples: [['org.dxos.blueprint.markdown', 'org.dxos.blueprint.database']],
41
+ }),
42
+ subscriptions: Schema.Array(Ref.Ref(Obj.Unknown)).annotations({
43
+ description: 'The objects to subscribe to for the project. Can be references to mailboxes.',
44
+ }),
45
+ }),
46
+ output: Project.Project,
47
+ services: [Blueprint.RegistryService, Database.Service, QueueService],
48
+ });
@@ -0,0 +1,12 @@
1
+ //
2
+ // Copyright 2026 DXOS.org
3
+ //
4
+
5
+ import { OperationHandlerSet } from '@dxos/operation';
6
+
7
+ export * from './definitions';
8
+
9
+ export const ProjectWizardHandlers = OperationHandlerSet.lazy(
10
+ () => import('./create-project'),
11
+ () => import('./project-rules'),
12
+ );
@@ -0,0 +1,76 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import * as Effect from 'effect/Effect';
6
+
7
+ import { Operation } from '@dxos/operation';
8
+ import { trim } from '@dxos/util';
9
+
10
+ import { ProjectRules } from './definitions';
11
+
12
+ export default ProjectRules.pipe(
13
+ Operation.withHandler(
14
+ Effect.fnUntraced(function* () {
15
+ return trim`
16
+ You can ask the user for qualifying questions about the projects.
17
+ If projects should actively read incoming emails, query for mailboxes and add a subscription to them.
18
+ Use [query-blueprints] from the Blueprint Manager to query for available blueprints and their keys.
19
+ Use [create-project] function to create a new project.
20
+ After creating a project, explicitly remind the user to enable local triggers so the project can be driven autonomously.
21
+
22
+ Notable blueprints (query to get their keys):
23
+
24
+ - Database -- CRUD on objects in the ECHO database.
25
+ - Markdown -- Create and edit markdown documents.
26
+ - Websearch -- Search the web for information.
27
+ - Browser -- Virtual browser via playwright when simple WebSearch is not enough.
28
+ - Memory -- Memory to store and retrieve information.
29
+
30
+ Experimental blueprints that are discoraged:
31
+
32
+ - Research
33
+ - Design
34
+ - Project (not wizard) -- those are project internals, they are auto-added to every new project.
35
+
36
+ <example_project>
37
+ ## CRM from your inbox
38
+
39
+ Blueprints: database, websearch, browser
40
+
41
+ Subscribe to your inboxes.
42
+ 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.
43
+ Also run a quick research on the web to find more information about the person or organization and save it to the database.
44
+ </example_project>
45
+
46
+ <example_project>
47
+ ## Parcel tracking
48
+
49
+ Blueprints: database
50
+
51
+ Based on emails from vendors (amazon, fedex, etc.) track the status of the parcels ordered online and keep a table of orders.
52
+
53
+ Before creating a project, use the Database blueprint to create an Order schema:
54
+ - seller
55
+ - name
56
+ - price
57
+ - status (enum of: pending, shipped, waiting for pickup, delivered, cancelled, returned)
58
+ - tracking numbers/notes
59
+ - date of delivery
60
+ - shipping address
61
+ </example_project>
62
+
63
+ <example_project>
64
+ ## Comms assistant
65
+
66
+ Blueprints: database, markdown, inbox
67
+
68
+ Helps user maintain comms with external parites via email.
69
+ Ask user specifically who they want to communicate with and on what topic.
70
+ Project should keep a markdown document in artifacts outlining the current state of the comms.
71
+ Project should propose drafts to follow up on the comms. Only propose sensible drafts, do not propose drafts that are not relevant or actionable.
72
+ </example_project>
73
+ `;
74
+ }),
75
+ ),
76
+ );
@@ -0,0 +1,6 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ export { default as ProjectWizardBlueprint } from './blueprint';
6
+ export { ProjectRules, CreateProject, ProjectWizardHandlers } from './functions';
@@ -2,13 +2,15 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- import { ToolId } from '@dxos/ai';
5
+ import { type AppCapabilities } from '@dxos/app-toolkit';
6
6
  import { Blueprint } from '@dxos/blueprints';
7
7
  import { Ref } from '@dxos/echo';
8
8
  import { Text } from '@dxos/schema';
9
9
  import { trim } from '@dxos/util';
10
10
 
11
- import { Research } from '../../functions';
11
+ import { Research, DocumentCreate } from './functions';
12
+
13
+ const BLUEPRINT_KEY = 'org.dxos.blueprint.research';
12
14
 
13
15
  /**
14
16
  * Agent prompt instructions for managing hierarchical task lists.
@@ -20,7 +22,7 @@ const instructions = trim`
20
22
  Structured data extraction is an experimental feature -- only enable it if the user explicitly requests it in the prompt.
21
23
  Prefer updating existing notes instead of creating new ones.
22
24
 
23
- <strcutured_mode>
25
+ <structured_mode>
24
26
  When you are done, reply with the created objects.
25
27
  Do not print the data, instead reply with inline references to the created objects.
26
28
  Those will be later substituted with the pills representing the created objects.
@@ -40,12 +42,20 @@ const instructions = trim`
40
42
  </unstructured_mode>
41
43
  `;
42
44
 
43
- export const blueprint = Blueprint.make({
44
- key: 'dxos.org/blueprint/research',
45
- name: 'Research',
46
- description: 'Researches the web and creates structured data.',
47
- instructions: {
48
- source: Ref.make(Text.make(instructions)),
49
- },
50
- tools: [Research.create, Research.research].map((fn) => ToolId.make(fn.key)),
51
- });
45
+ const make = () =>
46
+ Blueprint.make({
47
+ key: BLUEPRINT_KEY,
48
+ name: 'Research',
49
+ description: 'Researches the web and creates structured data.',
50
+ instructions: {
51
+ source: Ref.make(Text.make(instructions)),
52
+ },
53
+ tools: Blueprint.toolDefinitions({ operations: [DocumentCreate, Research] }),
54
+ });
55
+
56
+ const blueprint: AppCapabilities.BlueprintDefinition = {
57
+ key: BLUEPRINT_KEY,
58
+ make,
59
+ };
60
+
61
+ export default blueprint;
@@ -0,0 +1,87 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import * as Schema from 'effect/Schema';
6
+
7
+ import { AiService } from '@dxos/ai';
8
+ import { Database, Obj, Ref } from '@dxos/echo';
9
+ import { FunctionInvocationService, TracingService } from '@dxos/functions';
10
+ import { Operation } from '@dxos/operation';
11
+ import { trim } from '@dxos/util';
12
+
13
+ export const Research = Operation.make({
14
+ meta: {
15
+ key: 'org.dxos.function.research',
16
+ name: 'Research',
17
+ description: trim`
18
+ Search the web to research information about the given subject.
19
+ Inserts structured data into the research graph.
20
+ Creates a research summary and returns the objects created.
21
+ `,
22
+ },
23
+ input: Schema.Struct({
24
+ query: Schema.String.annotations({
25
+ description: trim`
26
+ The search query.
27
+ If doing research on an object then load it first and pass it as JSON.
28
+ `,
29
+ }),
30
+ instructions: Schema.optional(Schema.String).annotations({
31
+ description: trim`
32
+ The instructions for the research agent.
33
+ `,
34
+ }),
35
+ // TOOD(burdon): Move to context.
36
+ mockSearch: Schema.optional(Schema.Boolean).annotations({
37
+ description: 'Whether to use the mock search tool.',
38
+ default: false,
39
+ }),
40
+ entityExtraction: Schema.optional(Schema.Boolean).annotations({
41
+ description: trim`
42
+ Whether to extract structured entities from the research.
43
+ Experimental feature only enable if user explicitly requests it.
44
+ `,
45
+ default: false,
46
+ }),
47
+ }),
48
+ output: Schema.Struct({
49
+ document: Schema.optional(Schema.String).annotations({
50
+ description: 'The generated research document.',
51
+ }),
52
+ objects: Schema.Array(Schema.Unknown).annotations({
53
+ description: 'Structured objects created during the research process.',
54
+ }),
55
+ }),
56
+ services: [AiService.AiService, Database.Service, TracingService, FunctionInvocationService],
57
+ });
58
+
59
+ export const DocumentCreate = Operation.make({
60
+ meta: {
61
+ key: 'org.dxos.function.research.document-create',
62
+ name: 'Create research document',
63
+ description: 'Creates a note summarizing the research.',
64
+ },
65
+ input: Schema.Struct({
66
+ subject: Ref.Ref(Obj.Unknown).annotations({
67
+ description: trim`
68
+ ID of the object (organization, contact, etc.) for which the research was performed.
69
+ `,
70
+ }),
71
+ name: Schema.String.annotations({
72
+ description: 'Name of the document.',
73
+ }),
74
+ content: Schema.String.annotations({
75
+ description: trim`
76
+ Content of the note.
77
+ Supports (and are prefered) references to research objects using @ syntax and <object> tags (refer to research blueprint instructions).
78
+ `,
79
+ }),
80
+ }),
81
+ output: Schema.Struct({
82
+ document: Schema.String.annotations({
83
+ description: 'DXN of the created document.',
84
+ }),
85
+ }),
86
+ services: [Database.Service, TracingService],
87
+ });
@@ -0,0 +1,50 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import * as Effect from 'effect/Effect';
6
+
7
+ import { Database, Obj, Relation } from '@dxos/echo';
8
+ import { TracingService } from '@dxos/functions';
9
+ import { log } from '@dxos/log';
10
+ import { Operation } from '@dxos/operation';
11
+ import { Markdown } from '@dxos/plugin-markdown/types';
12
+ import { HasSubject } from '@dxos/types';
13
+
14
+ import { DocumentCreate } from './definitions';
15
+
16
+ export default DocumentCreate.pipe(
17
+ Operation.withHandler(
18
+ Effect.fnUntraced(function* ({ subject, name, content }) {
19
+ log.info('Creating research document', { subject, name, content });
20
+
21
+ // TODO(burdon): Auto flush before and after calling function?
22
+ yield* Database.flush();
23
+ yield* TracingService.emitStatus({ message: 'Creating research document...' });
24
+
25
+ const target = yield* Database.load(subject);
26
+
27
+ const object = yield* Database.add(
28
+ Markdown.make({
29
+ name,
30
+ content,
31
+ }),
32
+ );
33
+
34
+ yield* Database.add(
35
+ Relation.make(HasSubject.HasSubject, {
36
+ [Relation.Source]: object,
37
+ [Relation.Target]: target,
38
+ completedAt: new Date().toISOString(),
39
+ }),
40
+ );
41
+
42
+ yield* Database.flush();
43
+ log.info('Created research document', { subject, object });
44
+
45
+ return {
46
+ document: Obj.getDXN(object).toString(),
47
+ };
48
+ }),
49
+ ),
50
+ );
@@ -0,0 +1,12 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import { OperationHandlerSet } from '@dxos/operation';
6
+
7
+ export * from './definitions';
8
+
9
+ export const ResearchHandlers = OperationHandlerSet.lazy(
10
+ () => import('./document-create'),
11
+ () => import('./research'),
12
+ );