@dxos/assistant-toolkit 0.9.1-main.c7dcc2e112 → 0.10.0

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 (687) hide show
  1. package/dist/lib/neutral/{add-artifact-QEQP6T7Z.mjs → add-artifact-5JNUYLCA.mjs} +6 -6
  2. package/dist/lib/neutral/{add-artifact-QEQP6T7Z.mjs.map → add-artifact-5JNUYLCA.mjs.map} +1 -1
  3. package/dist/lib/neutral/{agent-BU6PB7J6.mjs → agent-BFAYIBJI.mjs} +8 -8
  4. package/dist/lib/neutral/agent-BFAYIBJI.mjs.map +7 -0
  5. package/dist/lib/neutral/{agent-rules-L3AHRSR4.mjs → agent-rules-KWCBKJ5W.mjs} +14 -14
  6. package/dist/lib/neutral/agent-rules-KWCBKJ5W.mjs.map +7 -0
  7. package/dist/lib/neutral/{chunk-ABOAU3NN.mjs → chunk-3KA66YBF.mjs} +30 -44
  8. package/dist/lib/neutral/chunk-3KA66YBF.mjs.map +7 -0
  9. package/dist/lib/neutral/{chunk-ZQDWSV26.mjs → chunk-6SGNFL6I.mjs} +3 -3
  10. package/dist/lib/neutral/{chunk-ZQDWSV26.mjs.map → chunk-6SGNFL6I.mjs.map} +4 -4
  11. package/dist/lib/neutral/{chunk-CUT6GB2W.mjs → chunk-BDTGFPM7.mjs} +9 -11
  12. package/dist/lib/neutral/chunk-BDTGFPM7.mjs.map +7 -0
  13. package/dist/lib/neutral/{chunk-SYUTQPSB.mjs → chunk-EPQCDGIV.mjs} +5 -4
  14. package/dist/lib/neutral/chunk-EPQCDGIV.mjs.map +7 -0
  15. package/dist/lib/neutral/chunk-H4W22FFJ.mjs +232 -0
  16. package/dist/lib/neutral/chunk-H4W22FFJ.mjs.map +7 -0
  17. package/dist/lib/neutral/chunk-JBTXZQ5G.mjs +60 -0
  18. package/dist/lib/neutral/chunk-JBTXZQ5G.mjs.map +7 -0
  19. package/dist/lib/neutral/{chunk-ZA5WZL4H.mjs → chunk-JKOOA5OS.mjs} +8 -8
  20. package/dist/lib/neutral/chunk-JKOOA5OS.mjs.map +7 -0
  21. package/dist/lib/neutral/chunk-JTEBE7KA.mjs +66 -0
  22. package/dist/lib/neutral/chunk-JTEBE7KA.mjs.map +7 -0
  23. package/dist/lib/neutral/{chunk-FQNZX2SH.mjs → chunk-KLFXJ2Z3.mjs} +2 -2
  24. package/dist/lib/neutral/{chunk-FQNZX2SH.mjs.map → chunk-KLFXJ2Z3.mjs.map} +1 -1
  25. package/dist/lib/neutral/{chunk-DLVIJSH6.mjs → chunk-LBA5UOLF.mjs} +3 -3
  26. package/dist/lib/neutral/{chunk-DLVIJSH6.mjs.map → chunk-LBA5UOLF.mjs.map} +1 -1
  27. package/dist/lib/neutral/{chunk-24L572PJ.mjs → chunk-LL3MOQUZ.mjs} +2 -2
  28. package/dist/lib/neutral/{chunk-24L572PJ.mjs.map → chunk-LL3MOQUZ.mjs.map} +1 -1
  29. package/dist/lib/neutral/{chunk-OK3P6URP.mjs → chunk-MFVIGJBW.mjs} +16 -16
  30. package/dist/lib/neutral/chunk-MFVIGJBW.mjs.map +7 -0
  31. package/dist/lib/neutral/{chunk-KZDQGI3S.mjs → chunk-PBARVBNJ.mjs} +9 -10
  32. package/dist/lib/neutral/chunk-PBARVBNJ.mjs.map +7 -0
  33. package/dist/lib/neutral/{chunk-WTUY5UCA.mjs → chunk-VJ5QBYM5.mjs} +20 -21
  34. package/dist/lib/neutral/chunk-VJ5QBYM5.mjs.map +7 -0
  35. package/dist/lib/neutral/{chunk-4LFE5PQ3.mjs → chunk-YQSQRSXG.mjs} +5 -5
  36. package/dist/lib/neutral/chunk-YQSQRSXG.mjs.map +7 -0
  37. package/dist/lib/neutral/chunk-Z2HFOZXK.mjs +191 -0
  38. package/dist/lib/neutral/chunk-Z2HFOZXK.mjs.map +7 -0
  39. package/dist/lib/neutral/{context-add-KWEKPGMI.mjs → context-add-DZTPB3FK.mjs} +7 -7
  40. package/dist/lib/neutral/context-add-DZTPB3FK.mjs.map +7 -0
  41. package/dist/lib/neutral/{context-remove-HIQFSVHW.mjs → context-remove-XSBOM4VJ.mjs} +7 -7
  42. package/dist/lib/neutral/context-remove-XSBOM4VJ.mjs.map +7 -0
  43. package/dist/lib/neutral/create-agent-5WTOFIEK.mjs +35 -0
  44. package/dist/lib/neutral/create-agent-5WTOFIEK.mjs.map +7 -0
  45. package/dist/lib/neutral/definitions-VRR5OGXI.mjs +17 -0
  46. package/dist/lib/neutral/delegate-task-UX64NK4M.mjs +13 -0
  47. package/dist/lib/neutral/{delete-QHGM7N23.mjs → delete-IU7HPU3K.mjs} +4 -4
  48. package/dist/lib/neutral/{delete-QHGM7N23.mjs.map → delete-IU7HPU3K.mjs.map} +1 -1
  49. package/dist/lib/neutral/enable-skills-FHEJXQVB.mjs +47 -0
  50. package/dist/lib/neutral/enable-skills-FHEJXQVB.mjs.map +7 -0
  51. package/dist/lib/neutral/{fetch-O6G46HJH.mjs → fetch-5LY25EBR.mjs} +3 -3
  52. package/dist/lib/neutral/{fetch-O6G46HJH.mjs.map → fetch-5LY25EBR.mjs.map} +3 -3
  53. package/dist/lib/neutral/{fetch-messages-4EVGVEQK.mjs → fetch-messages-CQMDI36G.mjs} +5 -5
  54. package/dist/lib/neutral/{fetch-messages-4EVGVEQK.mjs.map → fetch-messages-CQMDI36G.mjs.map} +4 -4
  55. package/dist/lib/neutral/get-context-Q4YY6DRV.mjs +77 -0
  56. package/dist/lib/neutral/get-context-Q4YY6DRV.mjs.map +7 -0
  57. package/dist/lib/neutral/get-current-date-JR5F7ZS3.mjs +17 -0
  58. package/dist/lib/neutral/get-current-date-JR5F7ZS3.mjs.map +7 -0
  59. package/dist/lib/neutral/index.mjs +403 -638
  60. package/dist/lib/neutral/index.mjs.map +4 -4
  61. package/dist/lib/neutral/{load-C4OPO7RD.mjs → load-S6HC5TGX.mjs} +3 -3
  62. package/dist/lib/neutral/{load-C4OPO7RD.mjs.map → load-S6HC5TGX.mjs.map} +1 -1
  63. package/dist/lib/neutral/meta.json +1 -1
  64. package/dist/lib/neutral/{object-create-F7R7IRW5.mjs → object-create-PVDQ62CG.mjs} +4 -4
  65. package/dist/lib/neutral/{object-create-F7R7IRW5.mjs.map → object-create-PVDQ62CG.mjs.map} +1 -1
  66. package/dist/lib/neutral/{object-delete-3TJ3XMLN.mjs → object-delete-3CSL6XI6.mjs} +3 -3
  67. package/dist/lib/neutral/{object-delete-3TJ3XMLN.mjs.map → object-delete-3CSL6XI6.mjs.map} +1 -1
  68. package/dist/lib/neutral/{object-update-EBRM5AKN.mjs → object-update-NIGMZINM.mjs} +3 -3
  69. package/dist/lib/neutral/{object-update-EBRM5AKN.mjs.map → object-update-NIGMZINM.mjs.map} +1 -1
  70. package/dist/lib/neutral/plan-reminder-N4X6JPBI.mjs +88 -0
  71. package/dist/lib/neutral/plan-reminder-N4X6JPBI.mjs.map +7 -0
  72. package/dist/lib/neutral/{qualifier-DHPHY3YH.mjs → qualifier-5CIRZYX5.mjs} +13 -11
  73. package/dist/lib/neutral/qualifier-5CIRZYX5.mjs.map +7 -0
  74. package/dist/lib/neutral/{query-6XCQIIZC.mjs → query-K4R7UHLU.mjs} +4 -4
  75. package/dist/lib/neutral/{query-6XCQIIZC.mjs.map → query-K4R7UHLU.mjs.map} +1 -1
  76. package/dist/lib/neutral/{query-QGSHZMCD.mjs → query-NCTCRYTD.mjs} +4 -4
  77. package/dist/lib/neutral/{query-QGSHZMCD.mjs.map → query-NCTCRYTD.mjs.map} +4 -4
  78. package/dist/lib/neutral/query-skills-7GQFSU4V.mjs +17 -0
  79. package/dist/lib/neutral/query-skills-7GQFSU4V.mjs.map +7 -0
  80. package/dist/lib/neutral/{relation-create-WA2DM76W.mjs → relation-create-QKXHTL7G.mjs} +10 -7
  81. package/dist/lib/neutral/relation-create-QKXHTL7G.mjs.map +7 -0
  82. package/dist/lib/neutral/{relation-delete-66XP7KL7.mjs → relation-delete-PDIWT2JX.mjs} +3 -3
  83. package/dist/lib/neutral/{relation-delete-66XP7KL7.mjs.map → relation-delete-PDIWT2JX.mjs.map} +1 -1
  84. package/dist/lib/neutral/{prompt-37GJGKNM.mjs → run-instructions-72ASH5EZ.mjs} +38 -40
  85. package/dist/lib/neutral/run-instructions-72ASH5EZ.mjs.map +7 -0
  86. package/dist/lib/neutral/{save-HQY35ACW.mjs → save-UYVRA4RS.mjs} +4 -4
  87. package/dist/lib/neutral/{save-HQY35ACW.mjs.map → save-UYVRA4RS.mjs.map} +1 -1
  88. package/dist/lib/neutral/{schema-add-2AWYVGOC.mjs → schema-add-5NOK2RWE.mjs} +3 -3
  89. package/dist/lib/neutral/{schema-add-2AWYVGOC.mjs.map → schema-add-5NOK2RWE.mjs.map} +1 -1
  90. package/dist/lib/neutral/{schema-list-74CQW2N3.mjs → schema-list-BZUR5KMX.mjs} +6 -6
  91. package/dist/lib/neutral/schema-list-BZUR5KMX.mjs.map +7 -0
  92. package/dist/lib/neutral/set-alarm-BD3NEYSU.mjs +65 -0
  93. package/dist/lib/neutral/set-alarm-BD3NEYSU.mjs.map +7 -0
  94. package/dist/lib/neutral/{sync-issues-VUX4OWPO.mjs → sync-issues-O76MCMD3.mjs} +5 -5
  95. package/dist/lib/neutral/{sync-issues-VUX4OWPO.mjs.map → sync-issues-O76MCMD3.mjs.map} +1 -1
  96. package/dist/lib/neutral/{sync-triggers-CI6ECSZX.mjs → sync-triggers-YBTLPCUB.mjs} +11 -11
  97. package/dist/lib/neutral/{sync-triggers-CI6ECSZX.mjs.map → sync-triggers-YBTLPCUB.mjs.map} +4 -4
  98. package/dist/lib/neutral/{tag-add-6EGIY2CC.mjs → tag-add-L5WNOBYY.mjs} +3 -3
  99. package/dist/lib/neutral/{tag-add-6EGIY2CC.mjs.map → tag-add-L5WNOBYY.mjs.map} +1 -1
  100. package/dist/lib/neutral/{tag-remove-XVTYJRI7.mjs → tag-remove-WV5RPE5W.mjs} +3 -3
  101. package/dist/lib/neutral/{tag-remove-XVTYJRI7.mjs.map → tag-remove-WV5RPE5W.mjs.map} +1 -1
  102. package/dist/lib/neutral/testing/index.mjs +10 -8
  103. package/dist/lib/neutral/testing/index.mjs.map +4 -4
  104. package/dist/lib/neutral/update-tasks-HX4ILWOU.mjs +46 -0
  105. package/dist/lib/neutral/update-tasks-HX4ILWOU.mjs.map +7 -0
  106. package/dist/types/src/errors.d.ts +36 -0
  107. package/dist/types/src/errors.d.ts.map +1 -1
  108. package/dist/types/src/index.d.ts +2 -4
  109. package/dist/types/src/index.d.ts.map +1 -1
  110. package/dist/types/src/operations/definitions.d.ts +13 -0
  111. package/dist/types/src/operations/definitions.d.ts.map +1 -0
  112. package/dist/types/src/operations/index.d.ts.map +1 -0
  113. package/dist/types/src/{functions/agent/prompt.d.ts → operations/run-instructions.d.ts} +1 -1
  114. package/dist/types/src/operations/run-instructions.d.ts.map +1 -0
  115. package/dist/types/src/operations/run-instructions.test.d.ts +2 -0
  116. package/dist/types/src/operations/run-instructions.test.d.ts.map +1 -0
  117. package/dist/types/src/operations/skill-resolution.test.d.ts +2 -0
  118. package/dist/types/src/operations/skill-resolution.test.d.ts.map +1 -0
  119. package/dist/types/src/skills/agent/index.d.ts +3 -0
  120. package/dist/types/src/skills/agent/index.d.ts.map +1 -0
  121. package/dist/types/src/skills/agent/operations/add-artifact.d.ts.map +1 -0
  122. package/dist/types/src/skills/agent/operations/agent.d.ts.map +1 -0
  123. package/dist/types/src/skills/agent/operations/definitions.d.ts +76 -0
  124. package/dist/types/src/skills/agent/operations/definitions.d.ts.map +1 -0
  125. package/dist/types/src/skills/agent/operations/get-context.d.ts.map +1 -0
  126. package/dist/types/src/skills/agent/operations/index.d.ts +4 -0
  127. package/dist/types/src/skills/agent/operations/index.d.ts.map +1 -0
  128. package/dist/types/src/skills/agent/operations/qualifier.d.ts.map +1 -0
  129. package/dist/types/src/skills/agent/skill.d.ts +4 -0
  130. package/dist/types/src/skills/agent/skill.d.ts.map +1 -0
  131. package/dist/types/src/skills/agent/skill.test.d.ts +2 -0
  132. package/dist/types/src/skills/agent/skill.test.d.ts.map +1 -0
  133. package/dist/types/src/skills/agent-wizard/index.d.ts +3 -0
  134. package/dist/types/src/skills/agent-wizard/index.d.ts.map +1 -0
  135. package/dist/types/src/skills/agent-wizard/operations/agent-rules.d.ts.map +1 -0
  136. package/dist/types/src/skills/agent-wizard/operations/create-agent.d.ts +11 -0
  137. package/dist/types/src/skills/agent-wizard/operations/create-agent.d.ts.map +1 -0
  138. package/dist/types/src/skills/agent-wizard/operations/definitions.d.ts +14 -0
  139. package/dist/types/src/skills/agent-wizard/operations/definitions.d.ts.map +1 -0
  140. package/dist/types/src/skills/agent-wizard/operations/index.d.ts.map +1 -0
  141. package/dist/types/src/skills/agent-wizard/operations/sync-triggers.d.ts +8 -0
  142. package/dist/types/src/skills/agent-wizard/operations/sync-triggers.d.ts.map +1 -0
  143. package/dist/types/src/skills/agent-wizard/skill.d.ts +4 -0
  144. package/dist/types/src/skills/agent-wizard/skill.d.ts.map +1 -0
  145. package/dist/types/src/skills/alarm/index.d.ts +3 -0
  146. package/dist/types/src/skills/alarm/index.d.ts.map +1 -0
  147. package/dist/types/src/skills/alarm/operations/definitions.d.ts +9 -0
  148. package/dist/types/src/skills/alarm/operations/definitions.d.ts.map +1 -0
  149. package/dist/types/src/skills/alarm/operations/get-current-date.d.ts +8 -0
  150. package/dist/types/src/skills/alarm/operations/get-current-date.d.ts.map +1 -0
  151. package/dist/types/src/skills/alarm/operations/index.d.ts +4 -0
  152. package/dist/types/src/skills/alarm/operations/index.d.ts.map +1 -0
  153. package/dist/types/src/skills/alarm/operations/resolve-wake-at.d.ts +14 -0
  154. package/dist/types/src/skills/alarm/operations/resolve-wake-at.d.ts.map +1 -0
  155. package/dist/types/src/skills/alarm/operations/set-alarm.d.ts +13 -0
  156. package/dist/types/src/skills/alarm/operations/set-alarm.d.ts.map +1 -0
  157. package/dist/types/src/skills/alarm/skill.d.ts +4 -0
  158. package/dist/types/src/skills/alarm/skill.d.ts.map +1 -0
  159. package/dist/types/src/skills/alarm/skill.test.d.ts +2 -0
  160. package/dist/types/src/skills/alarm/skill.test.d.ts.map +1 -0
  161. package/dist/types/src/skills/automation/index.d.ts +2 -0
  162. package/dist/types/src/skills/automation/index.d.ts.map +1 -0
  163. package/dist/types/src/skills/automation/skill.d.ts +4 -0
  164. package/dist/types/src/skills/automation/skill.d.ts.map +1 -0
  165. package/dist/types/src/skills/browser/index.d.ts +2 -0
  166. package/dist/types/src/skills/browser/index.d.ts.map +1 -0
  167. package/dist/types/src/skills/browser/skill.d.ts +4 -0
  168. package/dist/types/src/skills/browser/skill.d.ts.map +1 -0
  169. package/dist/types/src/skills/browser/skill.test.d.ts +2 -0
  170. package/dist/types/src/skills/browser/skill.test.d.ts.map +1 -0
  171. package/dist/types/src/skills/connectors/index.d.ts +2 -0
  172. package/dist/types/src/skills/connectors/index.d.ts.map +1 -0
  173. package/dist/types/src/skills/connectors/skill.d.ts +4 -0
  174. package/dist/types/src/skills/connectors/skill.d.ts.map +1 -0
  175. package/dist/types/src/skills/database/index.d.ts +3 -0
  176. package/dist/types/src/skills/database/index.d.ts.map +1 -0
  177. package/dist/types/src/{blueprints → skills}/database/operations/context-add.d.ts +2 -2
  178. package/dist/types/src/skills/database/operations/context-add.d.ts.map +1 -0
  179. package/dist/types/src/{blueprints → skills}/database/operations/context-remove.d.ts +2 -2
  180. package/dist/types/src/skills/database/operations/context-remove.d.ts.map +1 -0
  181. package/dist/types/src/{blueprints → skills}/database/operations/definitions.d.ts +6 -12
  182. package/dist/types/src/skills/database/operations/definitions.d.ts.map +1 -0
  183. package/dist/types/src/skills/database/operations/index.d.ts.map +1 -0
  184. package/dist/types/src/skills/database/operations/load.d.ts.map +1 -0
  185. package/dist/types/src/skills/database/operations/object-create.d.ts.map +1 -0
  186. package/dist/types/src/skills/database/operations/object-delete.d.ts.map +1 -0
  187. package/dist/types/src/skills/database/operations/object-update.d.ts.map +1 -0
  188. package/dist/types/src/skills/database/operations/query.d.ts.map +1 -0
  189. package/dist/types/src/skills/database/operations/relation-create.d.ts.map +1 -0
  190. package/dist/types/src/skills/database/operations/relation-delete.d.ts.map +1 -0
  191. package/dist/types/src/skills/database/operations/schema-add.d.ts.map +1 -0
  192. package/dist/types/src/skills/database/operations/schema-list.d.ts.map +1 -0
  193. package/dist/types/src/{blueprints → skills}/database/operations/tag-add.d.ts +1 -4
  194. package/dist/types/src/skills/database/operations/tag-add.d.ts.map +1 -0
  195. package/dist/types/src/{blueprints → skills}/database/operations/tag-remove.d.ts +1 -4
  196. package/dist/types/src/skills/database/operations/tag-remove.d.ts.map +1 -0
  197. package/dist/types/src/skills/database/skill.d.ts +4 -0
  198. package/dist/types/src/skills/database/skill.d.ts.map +1 -0
  199. package/dist/types/src/skills/database/skill.test.d.ts +2 -0
  200. package/dist/types/src/skills/database/skill.test.d.ts.map +1 -0
  201. package/dist/types/src/skills/delegation/index.d.ts +3 -0
  202. package/dist/types/src/skills/delegation/index.d.ts.map +1 -0
  203. package/dist/types/src/{blueprints → skills}/delegation/operations/delegate-task.d.ts +4 -4
  204. package/dist/types/src/skills/delegation/operations/delegate-task.d.ts.map +1 -0
  205. package/dist/types/src/skills/delegation/operations/delegate-task.test.d.ts.map +1 -0
  206. package/dist/types/src/skills/delegation/operations/index.d.ts.map +1 -0
  207. package/dist/types/src/skills/delegation/skill.d.ts +4 -0
  208. package/dist/types/src/skills/delegation/skill.d.ts.map +1 -0
  209. package/dist/types/src/skills/discord/index.d.ts +3 -0
  210. package/dist/types/src/skills/discord/index.d.ts.map +1 -0
  211. package/dist/types/src/{blueprints → skills}/discord/operations/definitions.d.ts +1 -1
  212. package/dist/types/src/skills/discord/operations/definitions.d.ts.map +1 -0
  213. package/dist/types/src/{blueprints → skills}/discord/operations/fetch-messages.d.ts +1 -1
  214. package/dist/types/src/skills/discord/operations/fetch-messages.d.ts.map +1 -0
  215. package/dist/types/src/skills/discord/operations/fetch-messages.test.d.ts.map +1 -0
  216. package/dist/types/src/skills/discord/operations/index.d.ts.map +1 -0
  217. package/dist/types/src/skills/discord/skill.d.ts +4 -0
  218. package/dist/types/src/skills/discord/skill.d.ts.map +1 -0
  219. package/dist/types/src/skills/github/index.d.ts.map +1 -0
  220. package/dist/types/src/skills/github/operations/definitions.d.ts.map +1 -0
  221. package/dist/types/src/skills/github/operations/fetch-prs.d.ts.map +1 -0
  222. package/dist/types/src/skills/github/operations/index.d.ts.map +1 -0
  223. package/dist/types/src/{blueprints → skills}/index.d.ts +3 -1
  224. package/dist/types/src/skills/index.d.ts.map +1 -0
  225. package/dist/types/src/skills/linear/index.d.ts +3 -0
  226. package/dist/types/src/skills/linear/index.d.ts.map +1 -0
  227. package/dist/types/src/skills/linear/operations/definitions.d.ts.map +1 -0
  228. package/dist/types/src/skills/linear/operations/index.d.ts.map +1 -0
  229. package/dist/types/src/skills/linear/operations/linear.test.d.ts.map +1 -0
  230. package/dist/types/src/skills/linear/operations/sync-issues.d.ts.map +1 -0
  231. package/dist/types/src/skills/linear/skill.d.ts +4 -0
  232. package/dist/types/src/skills/linear/skill.d.ts.map +1 -0
  233. package/dist/types/src/skills/memory/index.d.ts +3 -0
  234. package/dist/types/src/skills/memory/index.d.ts.map +1 -0
  235. package/dist/types/src/{blueprints → skills}/memory/operations/definitions.d.ts +2 -4
  236. package/dist/types/src/skills/memory/operations/definitions.d.ts.map +1 -0
  237. package/dist/types/src/skills/memory/operations/delete.d.ts +7 -0
  238. package/dist/types/src/skills/memory/operations/delete.d.ts.map +1 -0
  239. package/dist/types/src/skills/memory/operations/index.d.ts.map +1 -0
  240. package/dist/types/src/skills/memory/operations/query.d.ts.map +1 -0
  241. package/dist/types/src/skills/memory/operations/save.d.ts.map +1 -0
  242. package/dist/types/src/skills/memory/skill.d.ts +4 -0
  243. package/dist/types/src/skills/memory/skill.d.ts.map +1 -0
  244. package/dist/types/src/skills/memory/skill.test.d.ts +2 -0
  245. package/dist/types/src/skills/memory/skill.test.d.ts.map +1 -0
  246. package/dist/types/src/skills/planning/index.d.ts +3 -0
  247. package/dist/types/src/skills/planning/index.d.ts.map +1 -0
  248. package/dist/types/src/skills/planning/operations/definitions.d.ts +14 -0
  249. package/dist/types/src/skills/planning/operations/definitions.d.ts.map +1 -0
  250. package/dist/types/src/{blueprints → skills}/planning/operations/index.d.ts +1 -1
  251. package/dist/types/src/skills/planning/operations/index.d.ts.map +1 -0
  252. package/dist/types/src/skills/planning/operations/plan-reminder.d.ts +15 -0
  253. package/dist/types/src/skills/planning/operations/plan-reminder.d.ts.map +1 -0
  254. package/dist/types/src/skills/planning/operations/update-tasks.d.ts +7 -0
  255. package/dist/types/src/skills/planning/operations/update-tasks.d.ts.map +1 -0
  256. package/dist/types/src/skills/planning/operations/update-tasks.test.d.ts.map +1 -0
  257. package/dist/types/src/skills/planning/skill.d.ts +4 -0
  258. package/dist/types/src/skills/planning/skill.d.ts.map +1 -0
  259. package/dist/types/src/skills/planning/skill.test.d.ts +2 -0
  260. package/dist/types/src/skills/planning/skill.test.d.ts.map +1 -0
  261. package/dist/types/src/skills/skill-manager/index.d.ts +3 -0
  262. package/dist/types/src/skills/skill-manager/index.d.ts.map +1 -0
  263. package/dist/types/src/skills/skill-manager/operations/definitions.d.ts +14 -0
  264. package/dist/types/src/skills/skill-manager/operations/definitions.d.ts.map +1 -0
  265. package/dist/types/src/skills/skill-manager/operations/enable-skills.d.ts +13 -0
  266. package/dist/types/src/skills/skill-manager/operations/enable-skills.d.ts.map +1 -0
  267. package/dist/types/src/skills/skill-manager/operations/index.d.ts +4 -0
  268. package/dist/types/src/skills/skill-manager/operations/index.d.ts.map +1 -0
  269. package/dist/types/src/skills/skill-manager/operations/query-skills.d.ts +5 -0
  270. package/dist/types/src/skills/skill-manager/operations/query-skills.d.ts.map +1 -0
  271. package/dist/types/src/skills/skill-manager/skill.d.ts +4 -0
  272. package/dist/types/src/skills/skill-manager/skill.d.ts.map +1 -0
  273. package/dist/types/src/skills/skill-manager/skill.test.d.ts +2 -0
  274. package/dist/types/src/skills/skill-manager/skill.test.d.ts.map +1 -0
  275. package/dist/types/src/{blueprints → skills}/testing.d.ts +4 -4
  276. package/dist/types/src/skills/testing.d.ts.map +1 -0
  277. package/dist/types/src/{blueprints → skills}/websearch/index.d.ts +1 -1
  278. package/dist/types/src/skills/websearch/index.d.ts.map +1 -0
  279. package/dist/types/src/skills/websearch/operations/definitions.d.ts.map +1 -0
  280. package/dist/types/src/skills/websearch/operations/fetch.d.ts.map +1 -0
  281. package/dist/types/src/skills/websearch/operations/index.d.ts.map +1 -0
  282. package/dist/types/src/skills/websearch/skill.d.ts +4 -0
  283. package/dist/types/src/skills/websearch/skill.d.ts.map +1 -0
  284. package/dist/types/src/skills/websearch/skill.test.d.ts +2 -0
  285. package/dist/types/src/skills/websearch/skill.test.d.ts.map +1 -0
  286. package/dist/types/src/{blueprints → skills}/websearch/toolkit.d.ts +6 -4
  287. package/dist/types/src/skills/websearch/toolkit.d.ts.map +1 -0
  288. package/dist/types/src/supervisor/delegation-strategy.d.ts +1 -1
  289. package/dist/types/src/supervisor/delegation-strategy.d.ts.map +1 -1
  290. package/dist/types/src/supervisor/index.d.ts +0 -1
  291. package/dist/types/src/supervisor/index.d.ts.map +1 -1
  292. package/dist/types/src/testing/index.d.ts +1 -1
  293. package/dist/types/src/testing/index.d.ts.map +1 -1
  294. package/dist/types/src/testing/plugins.d.ts +2 -3
  295. package/dist/types/src/testing/plugins.d.ts.map +1 -1
  296. package/dist/types/src/types/Agent.d.ts +24 -54
  297. package/dist/types/src/types/Agent.d.ts.map +1 -1
  298. package/dist/types/src/types/Chat.d.ts +34 -44
  299. package/dist/types/src/types/Chat.d.ts.map +1 -1
  300. package/dist/types/src/types/McpServer.d.ts +10 -9
  301. package/dist/types/src/types/McpServer.d.ts.map +1 -1
  302. package/dist/types/src/types/Memory.d.ts +7 -6
  303. package/dist/types/src/types/Memory.d.ts.map +1 -1
  304. package/dist/types/src/types/Plan.d.ts +15 -38
  305. package/dist/types/src/types/Plan.d.ts.map +1 -1
  306. package/dist/types/tsconfig.tsbuildinfo +1 -1
  307. package/package.json +34 -34
  308. package/src/errors.ts +12 -0
  309. package/src/index.ts +2 -4
  310. package/src/{functions/agent → operations}/definitions.ts +16 -18
  311. package/src/{functions/agent → operations}/index.ts +1 -1
  312. package/src/operations/run-instructions.conversations.json +1 -0
  313. package/src/operations/run-instructions.test.ts +118 -0
  314. package/src/{functions/agent/prompt.ts → operations/run-instructions.ts} +34 -24
  315. package/src/{functions/agent/blueprint-resolution.test.ts → operations/skill-resolution.test.ts} +39 -39
  316. package/src/skills/AGENTS.md +13 -0
  317. package/src/skills/agent/index.ts +6 -0
  318. package/src/{blueprints → skills}/agent/operations/agent.ts +3 -3
  319. package/src/{blueprints → skills}/agent/operations/definitions.ts +6 -7
  320. package/src/skills/agent/operations/get-context.ts +87 -0
  321. package/src/{blueprints → skills}/agent/operations/index.ts +2 -2
  322. package/src/{blueprints → skills}/agent/operations/qualifier.ts +10 -4
  323. package/src/skills/agent/skill.conversations.json +1 -0
  324. package/src/{blueprints/agent/blueprint.test.ts → skills/agent/skill.test.ts} +41 -32
  325. package/src/{blueprints/agent/blueprint.ts → skills/agent/skill.ts} +10 -10
  326. package/src/{blueprints → skills}/agent-wizard/index.ts +1 -1
  327. package/src/{blueprints → skills}/agent-wizard/operations/agent-rules.ts +8 -8
  328. package/src/{blueprints → skills}/agent-wizard/operations/create-agent.ts +5 -7
  329. package/src/{blueprints → skills}/agent-wizard/operations/definitions.ts +5 -5
  330. package/src/{blueprints → skills}/agent-wizard/operations/sync-triggers.ts +4 -4
  331. package/src/{blueprints/agent-wizard/blueprint.ts → skills/agent-wizard/skill.ts} +11 -11
  332. package/src/skills/alarm/index.ts +6 -0
  333. package/src/skills/alarm/operations/definitions.ts +54 -0
  334. package/src/skills/alarm/operations/get-current-date.ts +23 -0
  335. package/src/skills/alarm/operations/index.ts +12 -0
  336. package/src/skills/alarm/operations/resolve-wake-at.ts +46 -0
  337. package/src/skills/alarm/operations/set-alarm.ts +33 -0
  338. package/src/skills/alarm/skill.test.ts +128 -0
  339. package/src/skills/alarm/skill.ts +37 -0
  340. package/src/skills/automation/index.ts +5 -0
  341. package/src/{blueprints/automation/blueprint.ts → skills/automation/skill.ts} +8 -8
  342. package/src/skills/browser/index.ts +5 -0
  343. package/src/{blueprints/browser/blueprint.test.ts → skills/browser/skill.test.ts} +7 -7
  344. package/src/{blueprints/browser/blueprint.ts → skills/browser/skill.ts} +7 -7
  345. package/src/skills/connectors/index.ts +5 -0
  346. package/src/skills/connectors/skill.ts +47 -0
  347. package/src/{blueprints → skills}/database/index.ts +1 -1
  348. package/src/{blueprints → skills}/database/operations/context-add.ts +4 -4
  349. package/src/{blueprints → skills}/database/operations/context-remove.ts +5 -5
  350. package/src/{blueprints → skills}/database/operations/definitions.ts +3 -3
  351. package/src/{blueprints → skills}/database/operations/query.ts +1 -1
  352. package/src/{blueprints → skills}/database/operations/relation-create.ts +9 -1
  353. package/src/{blueprints → skills}/database/operations/schema-list.ts +2 -2
  354. package/src/skills/database/skill.conversations.json +1 -0
  355. package/src/{blueprints/database/blueprint.test.ts → skills/database/skill.test.ts} +22 -22
  356. package/src/{blueprints/database/blueprint.ts → skills/database/skill.ts} +14 -14
  357. package/src/{blueprints → skills}/delegation/index.ts +1 -1
  358. package/src/{blueprints → skills}/delegation/operations/delegate-task.test.ts +13 -10
  359. package/src/{blueprints → skills}/delegation/operations/delegate-task.ts +6 -6
  360. package/src/skills/delegation/skill.ts +24 -0
  361. package/src/{blueprints → skills}/discord/index.ts +1 -1
  362. package/src/{blueprints → skills}/discord/operations/definitions.ts +1 -1
  363. package/src/{blueprints → skills}/discord/operations/fetch-messages.ts +1 -1
  364. package/src/{blueprints/discord/blueprint.ts → skills/discord/skill.ts} +8 -8
  365. package/src/{blueprints → skills}/index.ts +3 -1
  366. package/src/{blueprints → skills}/linear/index.ts +1 -1
  367. package/src/{blueprints/linear/blueprint.ts → skills/linear/skill.ts} +8 -8
  368. package/src/{blueprints → skills}/memory/index.ts +1 -1
  369. package/src/skills/memory/skill.conversations.json +1 -0
  370. package/src/{blueprints/memory/blueprint.test.ts → skills/memory/skill.test.ts} +11 -11
  371. package/src/{blueprints/memory/blueprint.ts → skills/memory/skill.ts} +9 -9
  372. package/src/{blueprints → skills}/planning/index.ts +1 -1
  373. package/src/skills/planning/operations/definitions.ts +44 -0
  374. package/src/skills/planning/operations/index.ts +12 -0
  375. package/src/skills/planning/operations/plan-reminder.ts +98 -0
  376. package/src/skills/planning/operations/update-tasks.test.ts +79 -0
  377. package/src/skills/planning/operations/update-tasks.ts +51 -0
  378. package/src/skills/planning/skill.conversations.json +1 -0
  379. package/src/skills/planning/skill.test.ts +123 -0
  380. package/src/skills/planning/skill.ts +34 -0
  381. package/src/skills/skill-manager/index.ts +6 -0
  382. package/src/skills/skill-manager/operations/definitions.ts +48 -0
  383. package/src/skills/skill-manager/operations/enable-skills.ts +46 -0
  384. package/src/skills/skill-manager/operations/index.ts +12 -0
  385. package/src/skills/skill-manager/operations/query-skills.ts +19 -0
  386. package/src/skills/skill-manager/skill.test.ts +174 -0
  387. package/src/skills/skill-manager/skill.ts +49 -0
  388. package/src/{blueprints → skills}/testing.ts +12 -13
  389. package/src/{blueprints → skills}/websearch/index.ts +1 -1
  390. package/src/{blueprints → skills}/websearch/operations/fetch.ts +1 -0
  391. package/src/{blueprints/websearch/blueprint.test.ts → skills/websearch/skill.test.ts} +4 -4
  392. package/src/skills/websearch/skill.ts +31 -0
  393. package/src/{blueprints → skills}/websearch/toolkit.ts +2 -3
  394. package/src/supervisor/delegation-strategy.ts +47 -24
  395. package/src/supervisor/index.ts +0 -1
  396. package/src/testing/index.ts +1 -1
  397. package/src/testing/plugins.tsx +2 -1
  398. package/src/types/Agent.test.ts +3 -3
  399. package/src/types/Agent.ts +121 -113
  400. package/src/types/Chat.ts +79 -31
  401. package/src/types/McpServer.ts +10 -11
  402. package/src/types/Memory.ts +11 -12
  403. package/src/types/Plan.ts +15 -13
  404. package/dist/lib/neutral/agent-BU6PB7J6.mjs.map +0 -7
  405. package/dist/lib/neutral/agent-rules-L3AHRSR4.mjs.map +0 -7
  406. package/dist/lib/neutral/chunk-4LFE5PQ3.mjs.map +0 -7
  407. package/dist/lib/neutral/chunk-5HANNHZZ.mjs +0 -316
  408. package/dist/lib/neutral/chunk-5HANNHZZ.mjs.map +0 -7
  409. package/dist/lib/neutral/chunk-ABOAU3NN.mjs.map +0 -7
  410. package/dist/lib/neutral/chunk-CUT6GB2W.mjs.map +0 -7
  411. package/dist/lib/neutral/chunk-JZHXJBSM.mjs +0 -48
  412. package/dist/lib/neutral/chunk-JZHXJBSM.mjs.map +0 -7
  413. package/dist/lib/neutral/chunk-KZDQGI3S.mjs.map +0 -7
  414. package/dist/lib/neutral/chunk-NSAUN2IX.mjs +0 -66
  415. package/dist/lib/neutral/chunk-NSAUN2IX.mjs.map +0 -7
  416. package/dist/lib/neutral/chunk-OK3P6URP.mjs.map +0 -7
  417. package/dist/lib/neutral/chunk-SYUTQPSB.mjs.map +0 -7
  418. package/dist/lib/neutral/chunk-WTUY5UCA.mjs.map +0 -7
  419. package/dist/lib/neutral/chunk-ZA5WZL4H.mjs.map +0 -7
  420. package/dist/lib/neutral/context-add-KWEKPGMI.mjs.map +0 -7
  421. package/dist/lib/neutral/context-remove-HIQFSVHW.mjs.map +0 -7
  422. package/dist/lib/neutral/create-agent-7PBQFYHF.mjs +0 -35
  423. package/dist/lib/neutral/create-agent-7PBQFYHF.mjs.map +0 -7
  424. package/dist/lib/neutral/definitions-BHRGH45G.mjs +0 -17
  425. package/dist/lib/neutral/delegate-task-IQJSRLN3.mjs +0 -13
  426. package/dist/lib/neutral/enable-blueprints-OGYSQ7HD.mjs +0 -47
  427. package/dist/lib/neutral/enable-blueprints-OGYSQ7HD.mjs.map +0 -7
  428. package/dist/lib/neutral/get-context-6SZ7HOV4.mjs +0 -49
  429. package/dist/lib/neutral/get-context-6SZ7HOV4.mjs.map +0 -7
  430. package/dist/lib/neutral/prompt-37GJGKNM.mjs.map +0 -7
  431. package/dist/lib/neutral/qualifier-DHPHY3YH.mjs.map +0 -7
  432. package/dist/lib/neutral/query-blueprints-7NDHHM7U.mjs +0 -17
  433. package/dist/lib/neutral/query-blueprints-7NDHHM7U.mjs.map +0 -7
  434. package/dist/lib/neutral/relation-create-WA2DM76W.mjs.map +0 -7
  435. package/dist/lib/neutral/schema-list-74CQW2N3.mjs.map +0 -7
  436. package/dist/lib/neutral/update-tasks-R5YXESZ6.mjs +0 -13
  437. package/dist/lib/neutral/update-tasks-R5YXESZ6.mjs.map +0 -7
  438. package/dist/types/src/blueprints/agent/blueprint.d.ts +0 -4
  439. package/dist/types/src/blueprints/agent/blueprint.d.ts.map +0 -1
  440. package/dist/types/src/blueprints/agent/blueprint.test.d.ts +0 -2
  441. package/dist/types/src/blueprints/agent/blueprint.test.d.ts.map +0 -1
  442. package/dist/types/src/blueprints/agent/index.d.ts +0 -3
  443. package/dist/types/src/blueprints/agent/index.d.ts.map +0 -1
  444. package/dist/types/src/blueprints/agent/operations/add-artifact.d.ts.map +0 -1
  445. package/dist/types/src/blueprints/agent/operations/agent.d.ts.map +0 -1
  446. package/dist/types/src/blueprints/agent/operations/definitions.d.ts +0 -177
  447. package/dist/types/src/blueprints/agent/operations/definitions.d.ts.map +0 -1
  448. package/dist/types/src/blueprints/agent/operations/get-context.d.ts.map +0 -1
  449. package/dist/types/src/blueprints/agent/operations/index.d.ts +0 -4
  450. package/dist/types/src/blueprints/agent/operations/index.d.ts.map +0 -1
  451. package/dist/types/src/blueprints/agent/operations/qualifier.d.ts.map +0 -1
  452. package/dist/types/src/blueprints/agent-wizard/blueprint.d.ts +0 -4
  453. package/dist/types/src/blueprints/agent-wizard/blueprint.d.ts.map +0 -1
  454. package/dist/types/src/blueprints/agent-wizard/index.d.ts +0 -3
  455. package/dist/types/src/blueprints/agent-wizard/index.d.ts.map +0 -1
  456. package/dist/types/src/blueprints/agent-wizard/operations/agent-rules.d.ts.map +0 -1
  457. package/dist/types/src/blueprints/agent-wizard/operations/create-agent.d.ts +0 -57
  458. package/dist/types/src/blueprints/agent-wizard/operations/create-agent.d.ts.map +0 -1
  459. package/dist/types/src/blueprints/agent-wizard/operations/definitions.d.ts +0 -107
  460. package/dist/types/src/blueprints/agent-wizard/operations/definitions.d.ts.map +0 -1
  461. package/dist/types/src/blueprints/agent-wizard/operations/index.d.ts.map +0 -1
  462. package/dist/types/src/blueprints/agent-wizard/operations/sync-triggers.d.ts +0 -54
  463. package/dist/types/src/blueprints/agent-wizard/operations/sync-triggers.d.ts.map +0 -1
  464. package/dist/types/src/blueprints/automation/blueprint.d.ts +0 -4
  465. package/dist/types/src/blueprints/automation/blueprint.d.ts.map +0 -1
  466. package/dist/types/src/blueprints/automation/index.d.ts +0 -2
  467. package/dist/types/src/blueprints/automation/index.d.ts.map +0 -1
  468. package/dist/types/src/blueprints/blueprint-manager/blueprint.d.ts +0 -4
  469. package/dist/types/src/blueprints/blueprint-manager/blueprint.d.ts.map +0 -1
  470. package/dist/types/src/blueprints/blueprint-manager/blueprint.test.d.ts +0 -2
  471. package/dist/types/src/blueprints/blueprint-manager/blueprint.test.d.ts.map +0 -1
  472. package/dist/types/src/blueprints/blueprint-manager/index.d.ts +0 -3
  473. package/dist/types/src/blueprints/blueprint-manager/index.d.ts.map +0 -1
  474. package/dist/types/src/blueprints/blueprint-manager/operations/definitions.d.ts +0 -60
  475. package/dist/types/src/blueprints/blueprint-manager/operations/definitions.d.ts.map +0 -1
  476. package/dist/types/src/blueprints/blueprint-manager/operations/enable-blueprints.d.ts +0 -36
  477. package/dist/types/src/blueprints/blueprint-manager/operations/enable-blueprints.d.ts.map +0 -1
  478. package/dist/types/src/blueprints/blueprint-manager/operations/index.d.ts +0 -4
  479. package/dist/types/src/blueprints/blueprint-manager/operations/index.d.ts.map +0 -1
  480. package/dist/types/src/blueprints/blueprint-manager/operations/query-blueprints.d.ts +0 -28
  481. package/dist/types/src/blueprints/blueprint-manager/operations/query-blueprints.d.ts.map +0 -1
  482. package/dist/types/src/blueprints/browser/blueprint.d.ts +0 -4
  483. package/dist/types/src/blueprints/browser/blueprint.d.ts.map +0 -1
  484. package/dist/types/src/blueprints/browser/blueprint.test.d.ts +0 -2
  485. package/dist/types/src/blueprints/browser/blueprint.test.d.ts.map +0 -1
  486. package/dist/types/src/blueprints/browser/index.d.ts +0 -2
  487. package/dist/types/src/blueprints/browser/index.d.ts.map +0 -1
  488. package/dist/types/src/blueprints/database/blueprint.d.ts +0 -4
  489. package/dist/types/src/blueprints/database/blueprint.d.ts.map +0 -1
  490. package/dist/types/src/blueprints/database/blueprint.test.d.ts +0 -2
  491. package/dist/types/src/blueprints/database/blueprint.test.d.ts.map +0 -1
  492. package/dist/types/src/blueprints/database/index.d.ts +0 -3
  493. package/dist/types/src/blueprints/database/index.d.ts.map +0 -1
  494. package/dist/types/src/blueprints/database/operations/context-add.d.ts.map +0 -1
  495. package/dist/types/src/blueprints/database/operations/context-remove.d.ts.map +0 -1
  496. package/dist/types/src/blueprints/database/operations/definitions.d.ts.map +0 -1
  497. package/dist/types/src/blueprints/database/operations/index.d.ts.map +0 -1
  498. package/dist/types/src/blueprints/database/operations/load.d.ts.map +0 -1
  499. package/dist/types/src/blueprints/database/operations/object-create.d.ts.map +0 -1
  500. package/dist/types/src/blueprints/database/operations/object-delete.d.ts.map +0 -1
  501. package/dist/types/src/blueprints/database/operations/object-update.d.ts.map +0 -1
  502. package/dist/types/src/blueprints/database/operations/query.d.ts.map +0 -1
  503. package/dist/types/src/blueprints/database/operations/relation-create.d.ts.map +0 -1
  504. package/dist/types/src/blueprints/database/operations/relation-delete.d.ts.map +0 -1
  505. package/dist/types/src/blueprints/database/operations/schema-add.d.ts.map +0 -1
  506. package/dist/types/src/blueprints/database/operations/schema-list.d.ts.map +0 -1
  507. package/dist/types/src/blueprints/database/operations/tag-add.d.ts.map +0 -1
  508. package/dist/types/src/blueprints/database/operations/tag-remove.d.ts.map +0 -1
  509. package/dist/types/src/blueprints/delegation/blueprint.d.ts +0 -4
  510. package/dist/types/src/blueprints/delegation/blueprint.d.ts.map +0 -1
  511. package/dist/types/src/blueprints/delegation/index.d.ts +0 -3
  512. package/dist/types/src/blueprints/delegation/index.d.ts.map +0 -1
  513. package/dist/types/src/blueprints/delegation/operations/delegate-task.d.ts.map +0 -1
  514. package/dist/types/src/blueprints/delegation/operations/delegate-task.test.d.ts.map +0 -1
  515. package/dist/types/src/blueprints/delegation/operations/index.d.ts.map +0 -1
  516. package/dist/types/src/blueprints/discord/blueprint.d.ts +0 -4
  517. package/dist/types/src/blueprints/discord/blueprint.d.ts.map +0 -1
  518. package/dist/types/src/blueprints/discord/index.d.ts +0 -3
  519. package/dist/types/src/blueprints/discord/index.d.ts.map +0 -1
  520. package/dist/types/src/blueprints/discord/operations/definitions.d.ts.map +0 -1
  521. package/dist/types/src/blueprints/discord/operations/fetch-messages.d.ts.map +0 -1
  522. package/dist/types/src/blueprints/discord/operations/fetch-messages.test.d.ts.map +0 -1
  523. package/dist/types/src/blueprints/discord/operations/index.d.ts.map +0 -1
  524. package/dist/types/src/blueprints/github/index.d.ts.map +0 -1
  525. package/dist/types/src/blueprints/github/operations/definitions.d.ts.map +0 -1
  526. package/dist/types/src/blueprints/github/operations/fetch-prs.d.ts.map +0 -1
  527. package/dist/types/src/blueprints/github/operations/index.d.ts.map +0 -1
  528. package/dist/types/src/blueprints/index.d.ts.map +0 -1
  529. package/dist/types/src/blueprints/linear/blueprint.d.ts +0 -4
  530. package/dist/types/src/blueprints/linear/blueprint.d.ts.map +0 -1
  531. package/dist/types/src/blueprints/linear/index.d.ts +0 -3
  532. package/dist/types/src/blueprints/linear/index.d.ts.map +0 -1
  533. package/dist/types/src/blueprints/linear/operations/definitions.d.ts.map +0 -1
  534. package/dist/types/src/blueprints/linear/operations/index.d.ts.map +0 -1
  535. package/dist/types/src/blueprints/linear/operations/linear.test.d.ts.map +0 -1
  536. package/dist/types/src/blueprints/linear/operations/sync-issues.d.ts.map +0 -1
  537. package/dist/types/src/blueprints/memory/blueprint.d.ts +0 -4
  538. package/dist/types/src/blueprints/memory/blueprint.d.ts.map +0 -1
  539. package/dist/types/src/blueprints/memory/blueprint.test.d.ts +0 -2
  540. package/dist/types/src/blueprints/memory/blueprint.test.d.ts.map +0 -1
  541. package/dist/types/src/blueprints/memory/index.d.ts +0 -3
  542. package/dist/types/src/blueprints/memory/index.d.ts.map +0 -1
  543. package/dist/types/src/blueprints/memory/operations/definitions.d.ts.map +0 -1
  544. package/dist/types/src/blueprints/memory/operations/delete.d.ts +0 -10
  545. package/dist/types/src/blueprints/memory/operations/delete.d.ts.map +0 -1
  546. package/dist/types/src/blueprints/memory/operations/index.d.ts.map +0 -1
  547. package/dist/types/src/blueprints/memory/operations/query.d.ts.map +0 -1
  548. package/dist/types/src/blueprints/memory/operations/save.d.ts.map +0 -1
  549. package/dist/types/src/blueprints/planning/blueprint.d.ts +0 -4
  550. package/dist/types/src/blueprints/planning/blueprint.d.ts.map +0 -1
  551. package/dist/types/src/blueprints/planning/index.d.ts +0 -3
  552. package/dist/types/src/blueprints/planning/index.d.ts.map +0 -1
  553. package/dist/types/src/blueprints/planning/operations/index.d.ts.map +0 -1
  554. package/dist/types/src/blueprints/planning/operations/update-tasks.d.ts +0 -24
  555. package/dist/types/src/blueprints/planning/operations/update-tasks.d.ts.map +0 -1
  556. package/dist/types/src/blueprints/planning/operations/update-tasks.test.d.ts.map +0 -1
  557. package/dist/types/src/blueprints/testing.d.ts.map +0 -1
  558. package/dist/types/src/blueprints/websearch/blueprint.d.ts +0 -4
  559. package/dist/types/src/blueprints/websearch/blueprint.d.ts.map +0 -1
  560. package/dist/types/src/blueprints/websearch/blueprint.test.d.ts +0 -2
  561. package/dist/types/src/blueprints/websearch/blueprint.test.d.ts.map +0 -1
  562. package/dist/types/src/blueprints/websearch/index.d.ts.map +0 -1
  563. package/dist/types/src/blueprints/websearch/operations/definitions.d.ts.map +0 -1
  564. package/dist/types/src/blueprints/websearch/operations/fetch.d.ts.map +0 -1
  565. package/dist/types/src/blueprints/websearch/operations/index.d.ts.map +0 -1
  566. package/dist/types/src/blueprints/websearch/toolkit.d.ts.map +0 -1
  567. package/dist/types/src/crud/graph.d.ts +0 -64
  568. package/dist/types/src/crud/graph.d.ts.map +0 -1
  569. package/dist/types/src/crud/graph.test.d.ts +0 -2
  570. package/dist/types/src/crud/graph.test.d.ts.map +0 -1
  571. package/dist/types/src/crud/index.d.ts +0 -2
  572. package/dist/types/src/crud/index.d.ts.map +0 -1
  573. package/dist/types/src/functions/agent/blueprint-resolution.test.d.ts +0 -2
  574. package/dist/types/src/functions/agent/blueprint-resolution.test.d.ts.map +0 -1
  575. package/dist/types/src/functions/agent/definitions.d.ts +0 -53
  576. package/dist/types/src/functions/agent/definitions.d.ts.map +0 -1
  577. package/dist/types/src/functions/agent/index.d.ts.map +0 -1
  578. package/dist/types/src/functions/agent/prompt.d.ts.map +0 -1
  579. package/dist/types/src/functions/agent/prompt.test.d.ts +0 -2
  580. package/dist/types/src/functions/agent/prompt.test.d.ts.map +0 -1
  581. package/dist/types/src/functions/index.d.ts +0 -2
  582. package/dist/types/src/functions/index.d.ts.map +0 -1
  583. package/dist/types/src/supervisor/plan-completion-guard.d.ts +0 -6
  584. package/dist/types/src/supervisor/plan-completion-guard.d.ts.map +0 -1
  585. package/dist/types/src/toolkits/WebToolkit.d.ts +0 -38
  586. package/dist/types/src/toolkits/WebToolkit.d.ts.map +0 -1
  587. package/dist/types/src/toolkits/index.d.ts +0 -2
  588. package/dist/types/src/toolkits/index.d.ts.map +0 -1
  589. package/src/blueprints/AGENTS.md +0 -13
  590. package/src/blueprints/agent/blueprint.conversations.json +0 -1
  591. package/src/blueprints/agent/index.ts +0 -6
  592. package/src/blueprints/agent/operations/get-context.ts +0 -58
  593. package/src/blueprints/automation/index.ts +0 -5
  594. package/src/blueprints/blueprint-manager/blueprint.test.ts +0 -156
  595. package/src/blueprints/blueprint-manager/blueprint.ts +0 -49
  596. package/src/blueprints/blueprint-manager/index.ts +0 -6
  597. package/src/blueprints/blueprint-manager/operations/definitions.ts +0 -48
  598. package/src/blueprints/blueprint-manager/operations/enable-blueprints.ts +0 -46
  599. package/src/blueprints/blueprint-manager/operations/index.ts +0 -12
  600. package/src/blueprints/blueprint-manager/operations/query-blueprints.ts +0 -19
  601. package/src/blueprints/browser/index.ts +0 -5
  602. package/src/blueprints/database/blueprint.conversations.json +0 -1
  603. package/src/blueprints/delegation/blueprint.ts +0 -24
  604. package/src/blueprints/memory/blueprint.conversations.json +0 -1
  605. package/src/blueprints/planning/blueprint.ts +0 -24
  606. package/src/blueprints/planning/operations/index.ts +0 -9
  607. package/src/blueprints/planning/operations/update-tasks.test.ts +0 -55
  608. package/src/blueprints/planning/operations/update-tasks.ts +0 -72
  609. package/src/blueprints/websearch/blueprint.ts +0 -30
  610. package/src/crud/graph.test.ts +0 -44
  611. package/src/crud/graph.ts +0 -364
  612. package/src/crud/index.ts +0 -5
  613. package/src/functions/READ_THIS.md +0 -5
  614. package/src/functions/agent/prompt.conversations.json +0 -1
  615. package/src/functions/agent/prompt.test.ts +0 -78
  616. package/src/functions/index.ts +0 -5
  617. package/src/supervisor/plan-completion-guard.ts +0 -50
  618. package/src/toolkits/WebToolkit.ts +0 -44
  619. package/src/toolkits/index.ts +0 -5
  620. /package/dist/lib/neutral/{definitions-BHRGH45G.mjs.map → definitions-VRR5OGXI.mjs.map} +0 -0
  621. /package/dist/lib/neutral/{delegate-task-IQJSRLN3.mjs.map → delegate-task-UX64NK4M.mjs.map} +0 -0
  622. /package/dist/types/src/{functions/agent → operations}/index.d.ts +0 -0
  623. /package/dist/types/src/{blueprints → skills}/agent/operations/add-artifact.d.ts +0 -0
  624. /package/dist/types/src/{blueprints → skills}/agent/operations/agent.d.ts +0 -0
  625. /package/dist/types/src/{blueprints → skills}/agent/operations/get-context.d.ts +0 -0
  626. /package/dist/types/src/{blueprints → skills}/agent/operations/qualifier.d.ts +0 -0
  627. /package/dist/types/src/{blueprints → skills}/agent-wizard/operations/agent-rules.d.ts +0 -0
  628. /package/dist/types/src/{blueprints → skills}/agent-wizard/operations/index.d.ts +0 -0
  629. /package/dist/types/src/{blueprints → skills}/database/operations/index.d.ts +0 -0
  630. /package/dist/types/src/{blueprints → skills}/database/operations/load.d.ts +0 -0
  631. /package/dist/types/src/{blueprints → skills}/database/operations/object-create.d.ts +0 -0
  632. /package/dist/types/src/{blueprints → skills}/database/operations/object-delete.d.ts +0 -0
  633. /package/dist/types/src/{blueprints → skills}/database/operations/object-update.d.ts +0 -0
  634. /package/dist/types/src/{blueprints → skills}/database/operations/query.d.ts +0 -0
  635. /package/dist/types/src/{blueprints → skills}/database/operations/relation-create.d.ts +0 -0
  636. /package/dist/types/src/{blueprints → skills}/database/operations/relation-delete.d.ts +0 -0
  637. /package/dist/types/src/{blueprints → skills}/database/operations/schema-add.d.ts +0 -0
  638. /package/dist/types/src/{blueprints → skills}/database/operations/schema-list.d.ts +0 -0
  639. /package/dist/types/src/{blueprints → skills}/delegation/operations/delegate-task.test.d.ts +0 -0
  640. /package/dist/types/src/{blueprints → skills}/delegation/operations/index.d.ts +0 -0
  641. /package/dist/types/src/{blueprints → skills}/discord/operations/fetch-messages.test.d.ts +0 -0
  642. /package/dist/types/src/{blueprints → skills}/discord/operations/index.d.ts +0 -0
  643. /package/dist/types/src/{blueprints → skills}/github/index.d.ts +0 -0
  644. /package/dist/types/src/{blueprints → skills}/github/operations/definitions.d.ts +0 -0
  645. /package/dist/types/src/{blueprints → skills}/github/operations/fetch-prs.d.ts +0 -0
  646. /package/dist/types/src/{blueprints → skills}/github/operations/index.d.ts +0 -0
  647. /package/dist/types/src/{blueprints → skills}/linear/operations/definitions.d.ts +0 -0
  648. /package/dist/types/src/{blueprints → skills}/linear/operations/index.d.ts +0 -0
  649. /package/dist/types/src/{blueprints → skills}/linear/operations/linear.test.d.ts +0 -0
  650. /package/dist/types/src/{blueprints → skills}/linear/operations/sync-issues.d.ts +0 -0
  651. /package/dist/types/src/{blueprints → skills}/memory/operations/index.d.ts +0 -0
  652. /package/dist/types/src/{blueprints → skills}/memory/operations/query.d.ts +0 -0
  653. /package/dist/types/src/{blueprints → skills}/memory/operations/save.d.ts +0 -0
  654. /package/dist/types/src/{blueprints → skills}/planning/operations/update-tasks.test.d.ts +0 -0
  655. /package/dist/types/src/{blueprints → skills}/websearch/operations/definitions.d.ts +0 -0
  656. /package/dist/types/src/{blueprints → skills}/websearch/operations/fetch.d.ts +0 -0
  657. /package/dist/types/src/{blueprints → skills}/websearch/operations/index.d.ts +0 -0
  658. /package/src/{blueprints → skills}/agent/operations/add-artifact.ts +0 -0
  659. /package/src/{blueprints → skills}/agent-wizard/operations/index.ts +0 -0
  660. /package/src/{blueprints → skills}/database/operations/index.ts +0 -0
  661. /package/src/{blueprints → skills}/database/operations/load.ts +0 -0
  662. /package/src/{blueprints → skills}/database/operations/object-create.ts +0 -0
  663. /package/src/{blueprints → skills}/database/operations/object-delete.ts +0 -0
  664. /package/src/{blueprints → skills}/database/operations/object-update.ts +0 -0
  665. /package/src/{blueprints → skills}/database/operations/relation-delete.ts +0 -0
  666. /package/src/{blueprints → skills}/database/operations/schema-add.ts +0 -0
  667. /package/src/{blueprints → skills}/database/operations/tag-add.ts +0 -0
  668. /package/src/{blueprints → skills}/database/operations/tag-remove.ts +0 -0
  669. /package/src/{blueprints → skills}/delegation/operations/index.ts +0 -0
  670. /package/src/{blueprints → skills}/discord/operations/fetch-messages.test.ts +0 -0
  671. /package/src/{blueprints → skills}/discord/operations/index.ts +0 -0
  672. /package/src/{blueprints → skills}/github/index.ts +0 -0
  673. /package/src/{blueprints → skills}/github/operations/definitions.ts +0 -0
  674. /package/src/{blueprints → skills}/github/operations/fetch-prs.ts +0 -0
  675. /package/src/{blueprints → skills}/github/operations/index.ts +0 -0
  676. /package/src/{blueprints → skills}/linear/operations/definitions.ts +0 -0
  677. /package/src/{blueprints → skills}/linear/operations/index.ts +0 -0
  678. /package/src/{blueprints → skills}/linear/operations/linear.test.ts +0 -0
  679. /package/src/{blueprints → skills}/linear/operations/sync-issues.ts +0 -0
  680. /package/src/{blueprints → skills}/memory/operations/definitions.ts +0 -0
  681. /package/src/{blueprints → skills}/memory/operations/delete.ts +0 -0
  682. /package/src/{blueprints → skills}/memory/operations/index.ts +0 -0
  683. /package/src/{blueprints → skills}/memory/operations/query.ts +0 -0
  684. /package/src/{blueprints → skills}/memory/operations/save.ts +0 -0
  685. /package/src/{blueprints → skills}/planning/operations/update-tasks.md +0 -0
  686. /package/src/{blueprints → skills}/websearch/operations/definitions.ts +0 -0
  687. /package/src/{blueprints → skills}/websearch/operations/index.ts +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxos/assistant-toolkit",
3
- "version": "0.9.1-main.c7dcc2e112",
3
+ "version": "0.10.0",
4
4
  "description": "Assistant toolkit, definitions, and utilities.",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
@@ -30,45 +30,45 @@
30
30
  "dependencies": {
31
31
  "@effect/ai": "0.36.0",
32
32
  "@effect/ai-anthropic": "0.26.0",
33
- "@effect/platform": "0.96.1",
33
+ "@effect/platform": "0.96.2",
34
34
  "dfx": "^0.127.0",
35
35
  "exa-js": "^1.5.12",
36
- "@dxos/ai": "0.9.1-main.c7dcc2e112",
37
- "@dxos/app-framework": "0.9.1-main.c7dcc2e112",
38
- "@dxos/assistant": "0.9.1-main.c7dcc2e112",
39
- "@dxos/app-toolkit": "0.9.1-main.c7dcc2e112",
40
- "@dxos/client-protocol": "0.9.1-main.c7dcc2e112",
41
- "@dxos/compute": "0.9.1-main.c7dcc2e112",
42
- "@dxos/compute-runtime": "0.9.1-main.c7dcc2e112",
43
- "@dxos/echo": "0.9.1-main.c7dcc2e112",
44
- "@dxos/echo-protocol": "0.9.1-main.c7dcc2e112",
45
- "@dxos/edge-client": "0.9.1-main.c7dcc2e112",
46
- "@dxos/effect": "0.9.1-main.c7dcc2e112",
47
- "@dxos/functions": "0.9.1-main.c7dcc2e112",
48
- "@dxos/errors": "0.9.1-main.c7dcc2e112",
49
- "@dxos/invariant": "0.9.1-main.c7dcc2e112",
50
- "@dxos/functions-runtime": "0.9.1-main.c7dcc2e112",
51
- "@dxos/keys": "0.9.1-main.c7dcc2e112",
52
- "@dxos/log": "0.9.1-main.c7dcc2e112",
53
- "@dxos/react-ui": "0.9.1-main.c7dcc2e112",
54
- "@dxos/react-ui-syntax-highlighter": "0.9.1-main.c7dcc2e112",
55
- "@dxos/schema": "0.9.1-main.c7dcc2e112",
56
- "@dxos/util": "0.9.1-main.c7dcc2e112",
57
- "@dxos/types": "0.9.1-main.c7dcc2e112"
36
+ "@dxos/ai": "0.10.0",
37
+ "@dxos/app-framework": "0.10.0",
38
+ "@dxos/assistant": "0.10.0",
39
+ "@dxos/client-protocol": "0.10.0",
40
+ "@dxos/echo": "0.10.0",
41
+ "@dxos/app-toolkit": "0.10.0",
42
+ "@dxos/compute": "0.10.0",
43
+ "@dxos/compute-runtime": "0.10.0",
44
+ "@dxos/edge-client": "0.10.0",
45
+ "@dxos/errors": "0.10.0",
46
+ "@dxos/echo-protocol": "0.10.0",
47
+ "@dxos/functions": "0.10.0",
48
+ "@dxos/effect": "0.10.0",
49
+ "@dxos/invariant": "0.10.0",
50
+ "@dxos/functions-runtime": "0.10.0",
51
+ "@dxos/react-ui": "0.10.0",
52
+ "@dxos/keys": "0.10.0",
53
+ "@dxos/react-ui-syntax-highlighter": "0.10.0",
54
+ "@dxos/schema": "0.10.0",
55
+ "@dxos/types": "0.10.0",
56
+ "@dxos/util": "0.10.0",
57
+ "@dxos/log": "0.10.0"
58
58
  },
59
59
  "devDependencies": {
60
- "effect": "3.21.3",
61
- "react": "~19.2.3",
62
- "react-dom": "~19.2.3",
63
- "@dxos/client-protocol": "0.9.1-main.c7dcc2e112",
64
- "@dxos/plugin-markdown": "0.9.1-main.c7dcc2e112",
65
- "@dxos/ui-theme": "0.9.1-main.c7dcc2e112"
60
+ "effect": "3.21.4",
61
+ "react": "~19.2.7",
62
+ "react-dom": "~19.2.7",
63
+ "@dxos/client-protocol": "0.10.0",
64
+ "@dxos/plugin-markdown": "0.10.0",
65
+ "@dxos/ui-theme": "0.10.0"
66
66
  },
67
67
  "peerDependencies": {
68
- "effect": "3.21.3",
69
- "react": "~19.2.3",
70
- "react-dom": "~19.2.3",
71
- "@dxos/ui-theme": "0.9.1-main.c7dcc2e112"
68
+ "effect": "3.21.4",
69
+ "react": "~19.2.7",
70
+ "react-dom": "~19.2.7",
71
+ "@dxos/ui-theme": "0.10.0"
72
72
  },
73
73
  "publishConfig": {
74
74
  "access": "public"
package/src/errors.ts CHANGED
@@ -23,3 +23,15 @@ export class PromptError extends BaseError.extend('PromptError') {
23
23
  });
24
24
  }
25
25
  }
26
+
27
+ /**
28
+ * Exactly-one invariant violated for an object bound to the harness conversation context.
29
+ */
30
+ export class HarnessContextError extends BaseError.extend('HarnessContextError', 'Harness context invariant violated') {
31
+ constructor(context: { type: string; count: number }) {
32
+ super({
33
+ message: `There should be exactly one ${context.type} in context. Got: ${context.count}.`,
34
+ context,
35
+ });
36
+ }
37
+ }
package/src/index.ts CHANGED
@@ -2,10 +2,8 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- export * from './blueprints';
6
- export * from './crud';
7
- export * from './functions';
5
+ export * from './skills';
6
+ export * from './operations';
8
7
  export * from './supervisor';
9
8
  export * from './sync';
10
- export * from './toolkits';
11
9
  export * from './types';
@@ -4,40 +4,39 @@
4
4
 
5
5
  import * as Schema from 'effect/Schema';
6
6
 
7
- import { AiService, OpaqueToolkit, ModelName } from '@dxos/ai';
8
- import { Routine, Trace, Operation } from '@dxos/compute';
7
+ import { AiService, OpaqueToolkit } from '@dxos/ai';
8
+ import { Instructions, Operation, Trace } from '@dxos/compute';
9
9
  import { Database, Feed, Ref, Registry } from '@dxos/echo';
10
10
  import { DXN } from '@dxos/keys';
11
11
  import { Text } from '@dxos/schema';
12
12
 
13
- import * as Chat from '../../types/Chat';
13
+ import * as Chat from '../types/Chat';
14
14
 
15
- // TODO(dmaretskyi): Rename to RunRoutine.
16
- export const AgentPrompt = Operation.make({
15
+ export const RunInstructions = Operation.make({
17
16
  meta: {
18
- key: DXN.make('org.dxos.function.prompt'),
19
- name: 'Run Routine',
20
- description: 'Agentic worker that executes a provided prompt using blueprints and tools.',
17
+ key: DXN.make('org.dxos.function.runInstructions'),
18
+ name: 'Run Instructions',
19
+ description: 'Agentic worker that executes a provided prompt using skills and tools.',
21
20
  icon: 'ph--brain--regular',
22
21
  },
23
22
  input: Schema.Struct({
24
- prompt: Ref.Ref(Routine.Routine),
23
+ instructions: Ref.Ref(Instructions.Instructions),
25
24
 
26
25
  /**
27
- * When set, runs in this chat (history, queue, and bound context). Routine blueprints and context objects are merged into the conversation for this request.
26
+ * Input object or data.
27
+ * References get auto-resolved.
28
28
  */
29
- chat: Schema.optional(Ref.Ref(Chat.Chat)),
29
+ input: Schema.Any.pipe(Schema.annotations({ title: 'Input' })),
30
30
 
31
31
  /**
32
- * @default ai.claude.model.claude-opus-4-8
32
+ * When set, runs in this chat (history, queue, and bound context). Routine skills and context objects are merged into the conversation for this request.
33
33
  */
34
- model: Schema.optional(ModelName),
34
+ chat: Schema.optional(Ref.Ref(Chat.Chat)),
35
35
 
36
36
  /**
37
- * Input object or data.
38
- * References get auto-resolved.
37
+ * @default dxn:com.anthropic.model.claude-opus-4-8.default
39
38
  */
40
- input: Schema.Any.pipe(Schema.annotations({ title: 'Input' })),
39
+ model: Schema.optional(DXN.Schema),
41
40
 
42
41
  systemInstructions: Schema.optional(Schema.String).annotations({
43
42
  description: 'Additional system instructions to add to the system prompt.',
@@ -46,11 +45,10 @@ export const AgentPrompt = Operation.make({
46
45
  output: Schema.Any,
47
46
  // ECHO types that the handler loads via Database.load(). Declaring them here ensures the
48
47
  // runtime registers their schema before remote invocation (e.g. via the EDGE function service).
49
- types: [Routine.Routine, Text.Text, Feed.Feed, Chat.Chat],
48
+ types: [Instructions.Instructions, Text.Text, Feed.Feed, Chat.Chat],
50
49
  services: [
51
50
  AiService.AiService,
52
51
  Database.Service,
53
- Feed.FeedService,
54
52
  OpaqueToolkit.OpaqueToolkitProvider,
55
53
  Registry.Service,
56
54
  Trace.TraceService,
@@ -6,4 +6,4 @@ import { OperationHandlerSet } from '@dxos/compute';
6
6
 
7
7
  export * from './definitions';
8
8
 
9
- export const AgentHandlers = OperationHandlerSet.lazy(() => import('./prompt'));
9
+ export const AgentHandlers = OperationHandlerSet.lazy(() => import('./run-instructions'));
@@ -0,0 +1 @@
1
+ {"conversations":[{"parameters":{"model":"dxn:com.anthropic.model.claudeOpus48","stream":true,"tools":[{"name":"completeJob","inputSchema":{"type":"object","required":[],"properties":{"success":{"type":"string"},"failure":{"type":"object","required":["message"],"properties":{"message":{"type":"string","description":"Short message describing the error."},"description":{"type":"string","description":"Optional longer message describing in detail what went wrong"}},"additionalProperties":false}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"You are an agent running in the non-interactive mode.\nThe user is unable to see what you are doing, and cannot answer any questions.\nDo not ask questions.\nComplete the task before you, and at the end call [completeJob] with the output.\nIf you are unable to complete the task, call [completeJob] with the failure reason.\nIf no output is required, call [completeJob] with an empty object: {}\nDo not stop until you call [completeJob].","options":{}},{"role":"user","content":"Reply with a single word: ack.\n<input>{}</input>","options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_0153cr8reaEp7UUPQ6mDsw33","modelId":"claude-opus-4-8","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"ack","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"tool-params-start","id":"toolu_01G8D91FCK1Ufxt927zs8Pke","name":"completeJob","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01G8D91FCK1Ufxt927zs8Pke","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01G8D91FCK1Ufxt927zs8Pke","delta":"{\"success\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01G8D91FCK1Ufxt927zs8Pke","delta":": \"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01G8D91FCK1Ufxt927zs8Pke","delta":"ack\"}","metadata":{}},{"type":"tool-params-end","id":"toolu_01G8D91FCK1Ufxt927zs8Pke","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":612,"outputTokens":52,"totalTokens":664},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":0},"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"input_tokens":612,"output_tokens":4,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"dxn:com.anthropic.model.claudeOpus48","stream":true,"tools":[{"name":"completeJob","inputSchema":{"type":"object","required":[],"properties":{"success":{"type":"string"},"failure":{"type":"object","required":["message"],"properties":{"message":{"type":"string","description":"Short message describing the error."},"description":{"type":"string","description":"Optional longer message describing in detail what went wrong"}},"additionalProperties":false}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"You are an agent running in the non-interactive mode.\nThe user is unable to see what you are doing, and cannot answer any questions.\nDo not ask questions.\nComplete the task before you, and at the end call [completeJob] with the output.\nIf you are unable to complete the task, call [completeJob] with the failure reason.\nIf no output is required, call [completeJob] with an empty object: {}\nDo not stop until you call [completeJob].","options":{}},{"role":"user","content":"Reply with a single word: ack.\n<input>{}</input>","options":{}},{"role":"assistant","content":[{"type":"text","text":"ack","options":{}},{"type":"tool-call","id":"toolu_01G8D91FCK1Ufxt927zs8Pke","name":"completeJob","params":{"success":"ack"},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01G8D91FCK1Ufxt927zs8Pke","name":"completeJob","isFailure":false,"result":{},"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01JwZWDHP9f91j9mtuBcweEi","modelId":"claude-opus-4-8","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"ack","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"finish","reason":"stop","usage":{"inputTokens":671,"outputTokens":4,"totalTokens":675},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":0},"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"input_tokens":671,"output_tokens":4,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"dxn:com.anthropic.model.claudeOpus48","stream":true,"tools":[{"name":"completeJob","inputSchema":{"type":"object","required":[],"properties":{"success":{"type":"object","required":["name","age"],"properties":{"name":{"type":"string"},"age":{"type":"number"}},"additionalProperties":false},"failure":{"type":"object","required":["message"],"properties":{"message":{"type":"string","description":"Short message describing the error."},"description":{"type":"string","description":"Optional longer message describing in detail what went wrong"}},"additionalProperties":false}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"You are an agent running in the non-interactive mode.\nThe user is unable to see what you are doing, and cannot answer any questions.\nDo not ask questions.\nComplete the task before you, and at the end call [completeJob] with the output.\nIf you are unable to complete the task, call [completeJob] with the failure reason.\nIf no output is required, call [completeJob] with an empty object: {}\nDo not stop until you call [completeJob].","options":{}},{"role":"user","content":"Invent a fictional person and call completeJob with the success object describing them (name and age).\n<input>{}</input>","options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_019BDNVW5UBKUGq1fPmQQg5x","modelId":"claude-opus-4-8","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"reasoning-start","id":"0","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{"anthropic":{"type":"thinking","signature":"EtEBCmMIDxgCKkBVw1KTUvy7ptjvU5KhOrJzn6FiU+sGl7uyv3E5tQNCLoTMrYyNrZ9cIwIzQisu+ee9oMZ6wWLLF2btcTWRVWCAMg9jbGF1ZGUtb3B1cy00LTg4AEIIdGhpbmtpbmcSDPHq6lstKXSz5+gs3BoMLWs6Npza0CHs3w3+IjAYs9sYyXBEVkXu1uxuY34gp1OEbqzEhTc++dBNqDAa8BiDdAudN6Hh+bsTaFaobq8qHGgvSqiOqVGXMGe0HdDr8nRlh4FgmWYHsvGNLX0YAQ=="}}},{"type":"reasoning-end","id":"0","metadata":{}},{"type":"tool-params-start","id":"toolu_01CfLMgATBzNGar8mig31jpu","name":"completeJob","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01CfLMgATBzNGar8mig31jpu","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01CfLMgATBzNGar8mig31jpu","delta":"{\"succes","metadata":{}},{"type":"tool-params-delta","id":"toolu_01CfLMgATBzNGar8mig31jpu","delta":"s\": {\"name\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01CfLMgATBzNGar8mig31jpu","delta":":\"Elean","metadata":{}},{"type":"tool-params-delta","id":"toolu_01CfLMgATBzNGar8mig31jpu","delta":"or","metadata":{}},{"type":"tool-params-delta","id":"toolu_01CfLMgATBzNGar8mig31jpu","delta":" Vance","metadata":{}},{"type":"tool-params-delta","id":"toolu_01CfLMgATBzNGar8mig31jpu","delta":"\",\"age","metadata":{}},{"type":"tool-params-delta","id":"toolu_01CfLMgATBzNGar8mig31jpu","delta":"\":3","metadata":{}},{"type":"tool-params-delta","id":"toolu_01CfLMgATBzNGar8mig31jpu","delta":"4}}","metadata":{}},{"type":"tool-params-end","id":"toolu_01CfLMgATBzNGar8mig31jpu","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":678,"outputTokens":75,"totalTokens":753},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":0},"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"input_tokens":678,"output_tokens":57,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"dxn:com.anthropic.model.claudeOpus48","stream":true,"tools":[{"name":"completeJob","inputSchema":{"type":"object","required":[],"properties":{"success":{"type":"object","required":["name","age"],"properties":{"name":{"type":"string"},"age":{"type":"number"}},"additionalProperties":false},"failure":{"type":"object","required":["message"],"properties":{"message":{"type":"string","description":"Short message describing the error."},"description":{"type":"string","description":"Optional longer message describing in detail what went wrong"}},"additionalProperties":false}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"You are an agent running in the non-interactive mode.\nThe user is unable to see what you are doing, and cannot answer any questions.\nDo not ask questions.\nComplete the task before you, and at the end call [completeJob] with the output.\nIf you are unable to complete the task, call [completeJob] with the failure reason.\nIf no output is required, call [completeJob] with an empty object: {}\nDo not stop until you call [completeJob].","options":{}},{"role":"user","content":"Invent a fictional person and call completeJob with the success object describing them (name and age).\n<input>{}</input>","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"","options":{}},{"type":"tool-call","id":"toolu_01CfLMgATBzNGar8mig31jpu","name":"completeJob","params":{"success":{"name":"Eleanor Vance","age":34}},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01CfLMgATBzNGar8mig31jpu","name":"completeJob","isFailure":false,"result":{},"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01NU5aMLn4XFj5QY5mrVHJuZ","modelId":"claude-opus-4-8","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"I","metadata":{}},{"type":"text-delta","id":"0","delta":"'ve created a fictional person named Eleanor Vance, age 34, and submitted them via completeJob.","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"finish","reason":"stop","usage":{"inputTokens":752,"outputTokens":35,"totalTokens":787},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":0},"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"input_tokens":752,"output_tokens":1,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"dxn:com.anthropic.model.claudeOpus48","stream":true,"tools":[{"name":"completeJob","inputSchema":{"type":"object","required":[],"properties":{"success":{"type":"string"},"failure":{"type":"object","required":["message"],"properties":{"message":{"type":"string","description":"Short message describing the error."},"description":{"type":"string","description":"Optional longer message describing in detail what went wrong"}},"additionalProperties":false}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"You are an agent running in the non-interactive mode.\nThe user is unable to see what you are doing, and cannot answer any questions.\nDo not ask questions.\nComplete the task before you, and at the end call [completeJob] with the output.\nIf you are unable to complete the task, call [completeJob] with the failure reason.\nIf no output is required, call [completeJob] with an empty object: {}\nDo not stop until you call [completeJob].\n\n## Context Objects\n\n<object>\n <dxn>echo://BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U/01JGFJJZ00G0WKQSJGMAKCNT8A</dxn>\n <typename>org.dxos.type.assistant.chat</typename>\n</object>","options":{}},{"role":"user","content":"Reply with a single word: ack.\n<input>{}</input>","options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01CVS6itosiKTLqoqYECoGWg","modelId":"claude-opus-4-8","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"ack","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"tool-params-start","id":"toolu_01XzJ1hGLDmTa8BaqDexfDbZ","name":"completeJob","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01XzJ1hGLDmTa8BaqDexfDbZ","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01XzJ1hGLDmTa8BaqDexfDbZ","delta":"{\"s","metadata":{}},{"type":"tool-params-delta","id":"toolu_01XzJ1hGLDmTa8BaqDexfDbZ","delta":"ucce","metadata":{}},{"type":"tool-params-delta","id":"toolu_01XzJ1hGLDmTa8BaqDexfDbZ","delta":"ss\": \"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01XzJ1hGLDmTa8BaqDexfDbZ","delta":"ack\"}","metadata":{}},{"type":"tool-params-end","id":"toolu_01XzJ1hGLDmTa8BaqDexfDbZ","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":724,"outputTokens":52,"totalTokens":776},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":0},"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"input_tokens":724,"output_tokens":4,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"dxn:com.anthropic.model.claudeOpus48","stream":true,"tools":[{"name":"completeJob","inputSchema":{"type":"object","required":[],"properties":{"success":{"type":"string"},"failure":{"type":"object","required":["message"],"properties":{"message":{"type":"string","description":"Short message describing the error."},"description":{"type":"string","description":"Optional longer message describing in detail what went wrong"}},"additionalProperties":false}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"You are an agent running in the non-interactive mode.\nThe user is unable to see what you are doing, and cannot answer any questions.\nDo not ask questions.\nComplete the task before you, and at the end call [completeJob] with the output.\nIf you are unable to complete the task, call [completeJob] with the failure reason.\nIf no output is required, call [completeJob] with an empty object: {}\nDo not stop until you call [completeJob].\n\n## Context Objects\n\n<object>\n <dxn>echo://BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U/01JGFJJZ00G0WKQSJGMAKCNT8A</dxn>\n <typename>org.dxos.type.assistant.chat</typename>\n</object>","options":{}},{"role":"user","content":"Reply with a single word: ack.\n<input>{}</input>","options":{}},{"role":"assistant","content":[{"type":"text","text":"ack","options":{}},{"type":"tool-call","id":"toolu_01XzJ1hGLDmTa8BaqDexfDbZ","name":"completeJob","params":{"success":"ack"},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01XzJ1hGLDmTa8BaqDexfDbZ","name":"completeJob","isFailure":false,"result":{},"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01V4JNNLgtHrbJxKxQDVyXzb","modelId":"claude-opus-4-8","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"ack","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"finish","reason":"stop","usage":{"inputTokens":783,"outputTokens":4,"totalTokens":787},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":0},"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"input_tokens":783,"output_tokens":4,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"dxn:com.anthropic.model.claude-opus-4-8.default","stream":true,"tools":[{"name":"completeJob","inputSchema":{"type":"object","required":[],"properties":{"success":{"type":"string"},"failure":{"type":"object","required":["message"],"properties":{"message":{"type":"string","description":"Short message describing the error."},"description":{"type":"string","description":"Optional longer message describing in detail what went wrong"}},"additionalProperties":false}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"You are an agent running in the non-interactive mode.\nThe user is unable to see what you are doing, and cannot answer any questions.\nDo not ask questions.\nComplete the task before you, and at the end call [completeJob] with the output.\nIf you are unable to complete the task, call [completeJob] with the failure reason.\nIf no output is required, call [completeJob] with an empty object: {}\nDo not stop until you call [completeJob].\n\n## Context Objects\n\n<object>\n <dxn>echo://BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U/01JGFJJZ00G0WKQSJGMAKCNT8A</dxn>\n <typename>org.dxos.type.assistant.chat</typename>\n</object>","options":{}},{"role":"user","content":"Reply with a single word: ack.\n<input>{}</input>","options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_018VHmVQ6iNHU4FHiXgJMUwY","modelId":"claude-opus-4-8","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"ack","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"tool-params-start","id":"toolu_01SRavvLjWk6zhv1TyrFsdp5","name":"completeJob","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01SRavvLjWk6zhv1TyrFsdp5","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01SRavvLjWk6zhv1TyrFsdp5","delta":"{\"s","metadata":{}},{"type":"tool-params-delta","id":"toolu_01SRavvLjWk6zhv1TyrFsdp5","delta":"ucce","metadata":{}},{"type":"tool-params-delta","id":"toolu_01SRavvLjWk6zhv1TyrFsdp5","delta":"ss\": \"ack\"}","metadata":{}},{"type":"tool-params-end","id":"toolu_01SRavvLjWk6zhv1TyrFsdp5","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":724,"outputTokens":52,"totalTokens":776},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":0},"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"input_tokens":724,"output_tokens":4,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"dxn:com.anthropic.model.claude-opus-4-8.default","stream":true,"tools":[{"name":"completeJob","inputSchema":{"type":"object","required":[],"properties":{"success":{"type":"string"},"failure":{"type":"object","required":["message"],"properties":{"message":{"type":"string","description":"Short message describing the error."},"description":{"type":"string","description":"Optional longer message describing in detail what went wrong"}},"additionalProperties":false}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"You are an agent running in the non-interactive mode.\nThe user is unable to see what you are doing, and cannot answer any questions.\nDo not ask questions.\nComplete the task before you, and at the end call [completeJob] with the output.\nIf you are unable to complete the task, call [completeJob] with the failure reason.\nIf no output is required, call [completeJob] with an empty object: {}\nDo not stop until you call [completeJob].\n\n## Context Objects\n\n<object>\n <dxn>echo://BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U/01JGFJJZ00G0WKQSJGMAKCNT8A</dxn>\n <typename>org.dxos.type.assistant.chat</typename>\n</object>","options":{}},{"role":"user","content":"Reply with a single word: ack.\n<input>{}</input>","options":{}},{"role":"assistant","content":[{"type":"text","text":"ack","options":{}},{"type":"tool-call","id":"toolu_01SRavvLjWk6zhv1TyrFsdp5","name":"completeJob","params":{"success":"ack"},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01SRavvLjWk6zhv1TyrFsdp5","name":"completeJob","isFailure":false,"result":{},"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01QSoFHABffojvPky1tdoXxM","modelId":"claude-opus-4-8","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"ack","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"finish","reason":"stop","usage":{"inputTokens":783,"outputTokens":4,"totalTokens":787},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":0},"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"input_tokens":783,"output_tokens":4,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"dxn:com.anthropic.model.claude-opus-4-8.default","stream":true,"tools":[{"name":"completeJob","inputSchema":{"type":"object","required":[],"properties":{"success":{"type":"object","required":["name","age"],"properties":{"name":{"type":"string"},"age":{"type":"number"}},"additionalProperties":false},"failure":{"type":"object","required":["message"],"properties":{"message":{"type":"string","description":"Short message describing the error."},"description":{"type":"string","description":"Optional longer message describing in detail what went wrong"}},"additionalProperties":false}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"You are an agent running in the non-interactive mode.\nThe user is unable to see what you are doing, and cannot answer any questions.\nDo not ask questions.\nComplete the task before you, and at the end call [completeJob] with the output.\nIf you are unable to complete the task, call [completeJob] with the failure reason.\nIf no output is required, call [completeJob] with an empty object: {}\nDo not stop until you call [completeJob].","options":{}},{"role":"user","content":"Invent a fictional person and call completeJob with the success object describing them (name and age).\n<input>{}</input>","options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01KLYHj1mTcocgfP8YsUF5KB","modelId":"claude-opus-4-8","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"reasoning-start","id":"0","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{"anthropic":{"type":"thinking","signature":"EogCCmMIDxgCKkByv/2cBEVkb9zPO7UA+QRheh+uTjBIakYniEgOcHYZcu9kDrZBMw6El578ODBYiqybw/5r8oBoOTtmz1W9xkKYMg9jbGF1ZGUtb3B1cy00LTg4AEIIdGhpbmtpbmcSDJVApLPVOiKe74P3ARoM4SiyyjXCAFNVbbmlIjCtRTgJtgB8dANbeZZ72gxXuFudL3oSAoYqzh+AmJC3lbExS9Tv3rVQfG/azsYA/2IqUyreggU847XEMSBvY367PwMJcuv5uPMxW5H9UVHAMKa8MjQKN/+BIAXn1NmcUXuOxJebuwrXI8FqH2ItXT5JHIVz9NxDJnbPDoA3DMHgwYFlW3hnGAE="}}},{"type":"reasoning-end","id":"0","metadata":{}},{"type":"tool-params-start","id":"toolu_01JaaTR43JU1qqDCcx3iSL12","name":"completeJob","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01JaaTR43JU1qqDCcx3iSL12","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01JaaTR43JU1qqDCcx3iSL12","delta":"{\"success\": ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01JaaTR43JU1qqDCcx3iSL12","delta":"{\"name\":\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01JaaTR43JU1qqDCcx3iSL12","delta":"Eleanor Vanc","metadata":{}},{"type":"tool-params-delta","id":"toolu_01JaaTR43JU1qqDCcx3iSL12","delta":"e\",\"ag","metadata":{}},{"type":"tool-params-delta","id":"toolu_01JaaTR43JU1qqDCcx3iSL12","delta":"e\":34","metadata":{}},{"type":"tool-params-delta","id":"toolu_01JaaTR43JU1qqDCcx3iSL12","delta":"}}","metadata":{}},{"type":"tool-params-end","id":"toolu_01JaaTR43JU1qqDCcx3iSL12","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":678,"outputTokens":88,"totalTokens":766},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":0},"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"input_tokens":678,"output_tokens":6,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"dxn:com.anthropic.model.claude-opus-4-8.default","stream":true,"tools":[{"name":"completeJob","inputSchema":{"type":"object","required":[],"properties":{"success":{"type":"object","required":["name","age"],"properties":{"name":{"type":"string"},"age":{"type":"number"}},"additionalProperties":false},"failure":{"type":"object","required":["message"],"properties":{"message":{"type":"string","description":"Short message describing the error."},"description":{"type":"string","description":"Optional longer message describing in detail what went wrong"}},"additionalProperties":false}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"You are an agent running in the non-interactive mode.\nThe user is unable to see what you are doing, and cannot answer any questions.\nDo not ask questions.\nComplete the task before you, and at the end call [completeJob] with the output.\nIf you are unable to complete the task, call [completeJob] with the failure reason.\nIf no output is required, call [completeJob] with an empty object: {}\nDo not stop until you call [completeJob].","options":{}},{"role":"user","content":"Invent a fictional person and call completeJob with the success object describing them (name and age).\n<input>{}</input>","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"","options":{}},{"type":"tool-call","id":"toolu_01JaaTR43JU1qqDCcx3iSL12","name":"completeJob","params":{"success":{"name":"Eleanor Vance","age":34}},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01JaaTR43JU1qqDCcx3iSL12","name":"completeJob","isFailure":false,"result":{},"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_0163UXRftCZBAUuB7RiRMm6e","modelId":"claude-opus-4-8","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"I","metadata":{}},{"type":"text-delta","id":"0","delta":"'ve invented a fictional person named Eleanor Vance, age 34, and submitted the success object via completeJob.","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"finish","reason":"stop","usage":{"inputTokens":752,"outputTokens":38,"totalTokens":790},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":0},"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"input_tokens":752,"output_tokens":1,"server_tool_use":null,"service_tier":"standard"}}}}]}]}
@@ -0,0 +1,118 @@
1
+ //
2
+ // Copyright 2026 DXOS.org
3
+ //
4
+
5
+ import { describe, expect, it } from '@effect/vitest';
6
+ import * as Effect from 'effect/Effect';
7
+ import * as Schema from 'effect/Schema';
8
+
9
+ import { AiContext } from '@dxos/assistant';
10
+ import { Instructions, Operation, OperationHandlerSet } from '@dxos/compute';
11
+ import { Database, Feed, Filter, JsonSchema, Obj, Ref } from '@dxos/echo';
12
+ import { TestHelpers } from '@dxos/effect/testing';
13
+ import { AssistantTestLayer } from '@dxos/functions-runtime/testing';
14
+ import { EntityId } from '@dxos/keys';
15
+ import { Text } from '@dxos/schema';
16
+ import { Message } from '@dxos/types';
17
+
18
+ import * as Chat from '../types/Chat';
19
+ import * as Plan from '../types/Plan';
20
+ import { RunInstructions } from './definitions';
21
+ import defaultAgentPrompt from './run-instructions';
22
+
23
+ EntityId.dangerouslyDisableRandomness();
24
+
25
+ const operationHandlerSet = OperationHandlerSet.make(defaultAgentPrompt);
26
+
27
+ const TestLayer = AssistantTestLayer({
28
+ operationHandlers: operationHandlerSet,
29
+ types: [Chat.Chat, Message.Message, AiContext.Binding, Text.Text, Plan.Plan],
30
+ aiServicePreset: 'edge-remote',
31
+ });
32
+
33
+ describe('Agent prompt', () => {
34
+ it.effect(
35
+ 'chat mode appends assistant messages to the chat queue',
36
+ Effect.fnUntraced(
37
+ function* (_) {
38
+ const feed = yield* Database.add(Feed.make());
39
+ const messageCountBefore = yield* countFeedMessages(feed);
40
+
41
+ const chat = yield* Database.add(
42
+ Chat.make({
43
+ feed: Ref.make(feed),
44
+ }),
45
+ );
46
+
47
+ const instructions = yield* Database.add(
48
+ Instructions.make({
49
+ name: 'chat-mode-test',
50
+ text: 'Reply with a single word: ack.',
51
+ skills: [],
52
+ output: Schema.String,
53
+ }),
54
+ );
55
+
56
+ yield* Database.flush();
57
+
58
+ const result = yield* Operation.invoke(RunInstructions, {
59
+ instructions: Ref.make(instructions),
60
+ input: {},
61
+ chat: Ref.make(chat),
62
+ });
63
+
64
+ const messageCountAfter = yield* countFeedMessages(feed);
65
+
66
+ expect(messageCountAfter).toBeGreaterThan(messageCountBefore);
67
+ expect(result).toBe('ack');
68
+ },
69
+ Effect.provide(TestLayer),
70
+ TestHelpers.provideTestContext,
71
+ ),
72
+ { timeout: 60_000 },
73
+ );
74
+
75
+ it.effect(
76
+ 'generates an object conforming to the instructions output schema',
77
+ Effect.fnUntraced(
78
+ function* (_) {
79
+ const Person = Schema.Struct({
80
+ name: Schema.String,
81
+ age: Schema.Number,
82
+ });
83
+
84
+ const instructions = yield* Database.add(
85
+ Instructions.make({
86
+ name: 'output-schema-test',
87
+ text: 'Invent a fictional person and call completeJob with the success object describing them (name and age).',
88
+ output: Person,
89
+ skills: [],
90
+ }),
91
+ );
92
+
93
+ yield* Database.flush();
94
+
95
+ const result = yield* Operation.invoke(RunInstructions, {
96
+ instructions: Ref.make(instructions),
97
+ input: {},
98
+ });
99
+
100
+ // The instructions persists its declared output as a JSON schema; decode it back and assert the
101
+ // agent-produced object satisfies that schema.
102
+ const outputSchema = JsonSchema.toEffectSchema(instructions.output);
103
+ const decoded = Schema.decodeUnknownSync(outputSchema)(result);
104
+ expect(typeof decoded.name).toBe('string');
105
+ expect(typeof decoded.age).toBe('number');
106
+ },
107
+ Effect.provide(TestLayer),
108
+ TestHelpers.provideTestContext,
109
+ ),
110
+ { timeout: 60_000 },
111
+ );
112
+ });
113
+
114
+ const countFeedMessages = (feed: Feed.Feed) =>
115
+ Effect.gen(function* () {
116
+ const items = yield* Feed.query(feed, Filter.everything()).run;
117
+ return items.filter(Obj.instanceOf(Message.Message)).length;
118
+ });
@@ -10,27 +10,36 @@ import * as Layer from 'effect/Layer';
10
10
  import * as Option from 'effect/Option';
11
11
  import * as Schema from 'effect/Schema';
12
12
 
13
- import { AiService, OpaqueToolkit, ModelName } from '@dxos/ai';
13
+ import { AiService, OpaqueToolkit } from '@dxos/ai';
14
14
  import {
15
15
  AiSession,
16
16
  getOperationFromTool,
17
17
  makeToolExecutionService,
18
18
  makeToolResolverFromOperations,
19
19
  } from '@dxos/assistant';
20
- import { Template, Trace, Operation } from '@dxos/compute';
21
- import { Database, Feed, Obj, Ref } from '@dxos/echo';
20
+ import { Operation, Template, Trace } from '@dxos/compute';
21
+ import { Database, Feed, JsonSchema, Obj, Ref } from '@dxos/echo';
22
22
  import { EffectEx } from '@dxos/effect';
23
23
  import { invariant } from '@dxos/invariant';
24
+ import { DXN } from '@dxos/keys';
24
25
  import { log } from '@dxos/log';
25
26
  import { trim } from '@dxos/util';
26
27
 
27
- import { PromptError } from '../../errors';
28
- import * as Chat from '../../types/Chat';
29
- import { AgentPrompt } from './definitions';
28
+ import { PromptError } from '../errors';
29
+ import * as Chat from '../types/Chat';
30
+ import { RunInstructions } from './definitions';
30
31
 
31
- const DEFAULT_MODEL: ModelName = 'ai.claude.model.claude-opus-4-8';
32
+ const DEFAULT_MODEL: DXN.DXN = DXN.make('com.anthropic.model.claude-opus-4-8.default');
32
33
 
33
- export default AgentPrompt.pipe(
34
+ const routineOutputSchema = (output: JsonSchema.JsonSchema): Schema.Schema.All => {
35
+ // Routines default to Void output; completeJob still needs to accept arbitrary success payloads.
36
+ if ('$id' in output && output.$id === '/schemas/unknown') {
37
+ return Schema.Any;
38
+ }
39
+ return JsonSchema.toEffectSchema(output);
40
+ };
41
+
42
+ export default RunInstructions.pipe(
34
43
  Operation.withHandler(
35
44
  Effect.fnUntraced(
36
45
  function* (data) {
@@ -41,31 +50,32 @@ export default AgentPrompt.pipe(
41
50
  : Effect.succeed(data.input);
42
51
 
43
52
  yield* Database.flush();
44
- const prompt = yield* Database.load(data.prompt);
45
- yield* Trace.emitStatus(`Running ${prompt.id}`);
53
+ const instructions = yield* Database.load(data.instructions);
54
+ yield* Trace.emitStatus(`Running ${instructions.id}`);
46
55
 
47
- log.info('starting agent', { prompt: prompt.id, input });
56
+ log.info('starting agent', { instructions: instructions.id, input });
48
57
 
49
- // Bind the routine's own refs, dropping any that no longer resolve. The refs must be
58
+ // Bind the instructions' own refs, dropping any that no longer resolve. The refs must be
50
59
  // bound as-is (not re-wrapped via `Ref.make`) to preserve their registry DXN: bindings
51
- // are persisted to the conversation feed, and registry-only blueprints have no space-DB
60
+ // are persisted to the conversation feed, and registry-only skills have no space-DB
52
61
  // identity, so an EID ref would not resolve when the binding is re-read.
53
- const blueprintRefs = yield* Effect.filter(prompt.blueprints, (ref) =>
62
+ const skillRefs = yield* Effect.filter(instructions.skills, (ref) =>
54
63
  Database.load(ref).pipe(
55
64
  Effect.as(true),
56
65
  Effect.catchTag('EntityNotFoundError', () => Effect.succeed(false)),
57
66
  ),
58
67
  );
59
68
 
60
- const objectRefs = yield* Effect.filter(prompt.context, (ref) =>
69
+ // Bind the instructions' context objects (sibling of skills), dropping any that no longer resolve.
70
+ const objectRefs = yield* Effect.filter(instructions.objects ?? [], (ref) =>
61
71
  Database.load(ref).pipe(
62
72
  Effect.as(true),
63
73
  Effect.catchTag('EntityNotFoundError', () => Effect.succeed(false)),
64
74
  ),
65
75
  );
66
76
 
67
- const promptInstructions = yield* Database.load(prompt.instructions);
68
- let promptText = Template.process(promptInstructions.content, input);
77
+ const textDoc = yield* Database.load(instructions.text);
78
+ let promptText = Template.process(textDoc.content, input);
69
79
 
70
80
  if (input !== undefined) {
71
81
  promptText += `\n<input>${JSON.stringify(input)}</input>`;
@@ -84,7 +94,7 @@ export default AgentPrompt.pipe(
84
94
  systemText += `\n${data.systemInstructions}`;
85
95
  }
86
96
 
87
- const modelLayer = AiService.model(data.model ?? DEFAULT_MODEL);
97
+ const modelLayer = AiService.model(DXN.getName(data.model ?? DEFAULT_MODEL));
88
98
 
89
99
  let feed: Feed.Feed;
90
100
  if (data.chat) {
@@ -97,17 +107,17 @@ export default AgentPrompt.pipe(
97
107
 
98
108
  const resultSink = yield* Deferred.make<unknown, PromptError>();
99
109
  const promptToolkit = makePromptAgentToolkit({
100
- output: Schema.Any, // TODO(dmaretskyi): Use prompt's output schema.
110
+ output: routineOutputSchema(instructions.output),
101
111
  resultSink,
102
112
  });
103
113
 
104
- const runtime = yield* Effect.runtime<Feed.FeedService>();
114
+ const runtime = yield* Effect.runtime<Database.Service>();
105
115
  const session = yield* EffectEx.acquireReleaseResource(() => new AiSession.Session({ feed, runtime }));
106
116
 
107
117
  yield* Effect.promise(() =>
108
118
  session.context.bind({
109
- blueprints: blueprintRefs,
110
- objects: objectRefs,
119
+ skills: skillRefs,
120
+ objects: data.chat ? [...objectRefs, data.chat] : objectRefs,
111
121
  }),
112
122
  );
113
123
 
@@ -162,13 +172,13 @@ export default AgentPrompt.pipe(
162
172
  );
163
173
 
164
174
  const makePromptAgentToolkit = (options: {
165
- output: Schema.Schema.Any;
175
+ output: Schema.Schema.All;
166
176
  resultSink: Deferred.Deferred<unknown, PromptError>;
167
177
  }) => {
168
178
  class PromptAgentToolkit extends Toolkit.make(
169
179
  Tool.make('completeJob', {
170
180
  parameters: {
171
- success: Schema.optional(Schema.Any), // TODO(dmaretskyi): Pipe output schema here.
181
+ success: Schema.optional(options.output),
172
182
  failure: Schema.optional(
173
183
  Schema.Struct({
174
184
  message: Schema.String.annotations({