@dxos/assistant-toolkit 0.8.4-main.abd8ff62ef → 0.8.4-main.bc2380dfbc
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.
- package/LICENSE +102 -5
- package/dist/lib/neutral/{add-artifact-BA5WQRDU.mjs → add-artifact-4IVGW6CI.mjs} +4 -4
- package/dist/lib/neutral/{add-artifact-BA5WQRDU.mjs.map → add-artifact-4IVGW6CI.mjs.map} +3 -3
- package/dist/lib/neutral/{agent-M2EW5M36.mjs → agent-F4L7UXME.mjs} +5 -5
- package/dist/lib/neutral/{agent-M2EW5M36.mjs.map → agent-F4L7UXME.mjs.map} +2 -2
- package/dist/lib/neutral/{chunk-CLHVRIYF.mjs → chunk-5GPL2WXU.mjs} +35 -36
- package/dist/lib/neutral/chunk-5GPL2WXU.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-CVUA23QI.mjs → chunk-7UCYAP3T.mjs} +17 -17
- package/dist/lib/neutral/chunk-7UCYAP3T.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-TO5IX24K.mjs → chunk-ANSF2BHN.mjs} +3 -3
- package/dist/lib/neutral/chunk-ANSF2BHN.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-D5MG5OKX.mjs → chunk-BCT55UTL.mjs} +2 -2
- package/dist/lib/neutral/{chunk-J37DYY7A.mjs → chunk-COL54UJ3.mjs} +12 -3
- package/dist/lib/neutral/chunk-COL54UJ3.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-E2XRNXWP.mjs → chunk-KS3IA6FQ.mjs} +11 -10
- package/dist/lib/neutral/chunk-KS3IA6FQ.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-KY2TIPJ5.mjs → chunk-MMQ7HFL4.mjs} +4 -5
- package/dist/lib/neutral/chunk-MMQ7HFL4.mjs.map +7 -0
- package/dist/lib/neutral/chunk-PLGEBNTO.mjs +65 -0
- package/dist/lib/neutral/chunk-PLGEBNTO.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-JCYLFOFK.mjs → chunk-W2722TC5.mjs} +5 -5
- package/dist/lib/neutral/{chunk-JCYLFOFK.mjs.map → chunk-W2722TC5.mjs.map} +3 -3
- package/dist/lib/neutral/{context-add-IIDPRRVB.mjs → context-add-S5MBW2NA.mjs} +4 -4
- package/dist/lib/neutral/context-add-S5MBW2NA.mjs.map +7 -0
- package/dist/lib/neutral/{context-remove-RDYV4PD4.mjs → context-remove-35O5T5N5.mjs} +4 -4
- package/dist/lib/neutral/context-remove-35O5T5N5.mjs.map +7 -0
- package/dist/lib/neutral/{create-project-GLDEAWTT.mjs → create-project-3AGXJ4TD.mjs} +5 -5
- package/dist/lib/neutral/{enable-blueprints-LBDZH2CY.mjs → enable-blueprints-IVKST3WH.mjs} +4 -4
- package/dist/lib/neutral/enable-blueprints-IVKST3WH.mjs.map +7 -0
- package/dist/lib/neutral/{fetch-messages-PWGUG5G3.mjs → fetch-messages-QOBBCTGC.mjs} +2 -2
- package/dist/lib/neutral/{get-context-B55SX5Y4.mjs → get-context-FBYWIP72.mjs} +4 -4
- package/dist/lib/neutral/{get-context-B55SX5Y4.mjs.map → get-context-FBYWIP72.mjs.map} +3 -3
- package/dist/lib/neutral/index.mjs +67 -57
- package/dist/lib/neutral/index.mjs.map +3 -3
- package/dist/lib/neutral/{load-LI7HHVD6.mjs → load-GAT3T2AD.mjs} +2 -2
- package/dist/lib/neutral/meta.json +1 -1
- package/dist/lib/neutral/{object-create-52Z7YKIA.mjs → object-create-PL3WRP74.mjs} +3 -3
- package/dist/lib/neutral/{object-delete-I266YAXI.mjs → object-delete-PZJQN5KW.mjs} +2 -2
- package/dist/lib/neutral/{object-update-HY4GI7LA.mjs → object-update-R43N3VJX.mjs} +2 -2
- package/dist/lib/neutral/{project-2YBPW5N7.mjs → project-VVXXUMAI.mjs} +4 -4
- package/dist/lib/neutral/{project-rules-XUBEPDP6.mjs → project-rules-KSVSOZJV.mjs} +3 -3
- package/dist/lib/neutral/{prompt-2WZQERT4.mjs → prompt-INL55Q2B.mjs} +10 -7
- package/dist/lib/neutral/{prompt-2WZQERT4.mjs.map → prompt-INL55Q2B.mjs.map} +3 -3
- package/dist/lib/neutral/{qualifier-2AC2ICOB.mjs → qualifier-DAF4H7V3.mjs} +11 -11
- package/dist/lib/neutral/qualifier-DAF4H7V3.mjs.map +7 -0
- package/dist/lib/neutral/{query-B3NOYFCK.mjs → query-MP5NSQKO.mjs} +3 -4
- package/dist/lib/neutral/query-MP5NSQKO.mjs.map +7 -0
- package/dist/lib/neutral/{query-blueprints-KXADGHSA.mjs → query-blueprints-PLWYVOI3.mjs} +2 -2
- package/dist/lib/neutral/{relation-create-Z3NGW4VU.mjs → relation-create-YAAAFTR2.mjs} +3 -3
- package/dist/lib/neutral/{relation-delete-LXY7W2YO.mjs → relation-delete-IEPKERFR.mjs} +2 -2
- package/dist/lib/neutral/{schema-add-4TXJO2V7.mjs → schema-add-5BNIINRS.mjs} +2 -2
- package/dist/lib/neutral/{schema-list-PJS5AFZ3.mjs → schema-list-54UK7S4R.mjs} +2 -2
- package/dist/lib/neutral/{sync-issues-LOLHZNFL.mjs → sync-issues-DWY76B3M.mjs} +6 -7
- package/dist/lib/neutral/sync-issues-DWY76B3M.mjs.map +7 -0
- package/dist/lib/neutral/{sync-triggers-EYJM4QWR.mjs → sync-triggers-NOIQLELD.mjs} +8 -9
- package/dist/lib/neutral/{sync-triggers-EYJM4QWR.mjs.map → sync-triggers-NOIQLELD.mjs.map} +3 -3
- package/dist/lib/neutral/{tag-add-5NOHUTIE.mjs → tag-add-NLVRGTC6.mjs} +2 -2
- package/dist/lib/neutral/{tag-remove-QTKYDJAW.mjs → tag-remove-N4HFBIA2.mjs} +2 -2
- package/dist/lib/neutral/testing/index.mjs +3 -3
- package/dist/lib/neutral/testing/index.mjs.map +3 -3
- package/dist/lib/neutral/{update-blueprints-N2AK2VUR.mjs → update-blueprints-2SNK6HLG.mjs} +2 -2
- package/dist/lib/neutral/update-tasks-QQUR53RN.mjs +13 -0
- package/dist/lib/neutral/update-tasks-QQUR53RN.mjs.map +7 -0
- package/dist/types/src/blueprints/blueprint-manager/functions/definitions.d.ts +10 -8
- package/dist/types/src/blueprints/blueprint-manager/functions/definitions.d.ts.map +1 -1
- package/dist/types/src/blueprints/blueprint-manager/functions/enable-blueprints.d.ts +6 -5
- package/dist/types/src/blueprints/blueprint-manager/functions/enable-blueprints.d.ts.map +1 -1
- package/dist/types/src/blueprints/blueprint-manager/functions/query-blueprints.d.ts +4 -3
- package/dist/types/src/blueprints/database/functions/context-add.d.ts +2 -2
- package/dist/types/src/blueprints/database/functions/context-add.d.ts.map +1 -1
- package/dist/types/src/blueprints/database/functions/context-remove.d.ts +2 -2
- package/dist/types/src/blueprints/database/functions/context-remove.d.ts.map +1 -1
- package/dist/types/src/blueprints/database/functions/definitions.d.ts +3 -3
- package/dist/types/src/blueprints/database/functions/definitions.d.ts.map +1 -1
- package/dist/types/src/blueprints/database/functions/query.d.ts +1 -2
- package/dist/types/src/blueprints/database/functions/query.d.ts.map +1 -1
- package/dist/types/src/blueprints/linear/functions/sync-issues.d.ts.map +1 -1
- package/dist/types/src/blueprints/planning/functions/index.d.ts +1 -1
- package/dist/types/src/blueprints/planning/functions/index.d.ts.map +1 -1
- package/dist/types/src/blueprints/planning/functions/update-tasks.d.ts +14 -1
- package/dist/types/src/blueprints/planning/functions/update-tasks.d.ts.map +1 -1
- package/dist/types/src/blueprints/planning/functions/update-tasks.test.d.ts +2 -0
- package/dist/types/src/blueprints/planning/functions/update-tasks.test.d.ts.map +1 -0
- package/dist/types/src/blueprints/project/functions/add-artifact.d.ts +1 -5
- package/dist/types/src/blueprints/project/functions/add-artifact.d.ts.map +1 -1
- package/dist/types/src/blueprints/project/functions/definitions.d.ts +16 -8
- package/dist/types/src/blueprints/project/functions/definitions.d.ts.map +1 -1
- package/dist/types/src/blueprints/project/functions/get-context.d.ts +1 -12
- package/dist/types/src/blueprints/project/functions/get-context.d.ts.map +1 -1
- package/dist/types/src/blueprints/project/functions/qualifier.d.ts +8 -4
- package/dist/types/src/blueprints/project/functions/qualifier.d.ts.map +1 -1
- package/dist/types/src/blueprints/project-wizard/functions/create-project.d.ts +6 -2
- package/dist/types/src/blueprints/project-wizard/functions/definitions.d.ts +12 -4
- package/dist/types/src/blueprints/project-wizard/functions/definitions.d.ts.map +1 -1
- package/dist/types/src/blueprints/project-wizard/functions/sync-triggers.d.ts +6 -2
- package/dist/types/src/blueprints/testing.d.ts +4 -4
- package/dist/types/src/blueprints/testing.d.ts.map +1 -1
- package/dist/types/src/crud/graph.d.ts +5 -7
- package/dist/types/src/crud/graph.d.ts.map +1 -1
- package/dist/types/src/functions/agent/definitions.d.ts +6 -5
- package/dist/types/src/functions/agent/definitions.d.ts.map +1 -1
- package/dist/types/src/sync/sync.d.ts +1 -2
- package/dist/types/src/sync/sync.d.ts.map +1 -1
- package/dist/types/src/types/Agent.d.ts +9 -7
- package/dist/types/src/types/Agent.d.ts.map +1 -1
- package/dist/types/src/types/McpServer.d.ts +4 -1
- package/dist/types/src/types/McpServer.d.ts.map +1 -1
- package/dist/types/src/types/Plan.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +26 -26
- package/src/blueprints/automation/blueprint.ts +1 -1
- package/src/blueprints/blueprint-manager/blueprint.conversations.json +1 -1
- package/src/blueprints/blueprint-manager/blueprint.test.ts +21 -17
- package/src/blueprints/blueprint-manager/blueprint.ts +2 -2
- package/src/blueprints/blueprint-manager/functions/definitions.ts +2 -2
- package/src/blueprints/blueprint-manager/functions/enable-blueprints.ts +2 -2
- package/src/blueprints/browser/blueprint.test.ts +3 -3
- package/src/blueprints/browser/blueprint.ts +1 -1
- package/src/blueprints/database/blueprint.conversations.json +1 -1
- package/src/blueprints/database/blueprint.test.ts +6 -6
- package/src/blueprints/database/blueprint.ts +1 -1
- package/src/blueprints/database/functions/context-add.ts +2 -2
- package/src/blueprints/database/functions/context-remove.ts +2 -2
- package/src/blueprints/database/functions/definitions.ts +16 -16
- package/src/blueprints/database/functions/query.ts +2 -3
- package/src/blueprints/discord/blueprint.ts +1 -1
- package/src/blueprints/discord/functions/fetch-messages.test.ts +7 -2
- package/src/blueprints/linear/blueprint.ts +1 -1
- package/src/blueprints/linear/functions/linear.test.ts +1 -2
- package/src/blueprints/linear/functions/sync-issues.ts +1 -2
- package/src/blueprints/memory/blueprint.conversations.json +1 -1
- package/src/blueprints/memory/blueprint.ts +1 -1
- package/src/blueprints/planning/blueprint.ts +1 -1
- package/src/blueprints/planning/functions/index.ts +1 -1
- package/src/blueprints/planning/functions/{definitions.ts → update-tasks.md} +29 -50
- package/src/blueprints/planning/functions/update-tasks.test.ts +55 -0
- package/src/blueprints/planning/functions/update-tasks.ts +25 -3
- package/src/blueprints/project/blueprint.conversations.json +1 -1
- package/src/blueprints/project/blueprint.test.ts +15 -17
- package/src/blueprints/project/blueprint.ts +2 -2
- package/src/blueprints/project/functions/add-artifact.ts +1 -0
- package/src/blueprints/project/functions/agent.ts +1 -1
- package/src/blueprints/project/functions/definitions.ts +8 -8
- package/src/blueprints/project/functions/get-context.ts +1 -0
- package/src/blueprints/project/functions/qualifier.ts +5 -5
- package/src/blueprints/project-wizard/functions/sync-triggers.ts +4 -9
- package/src/blueprints/testing.ts +10 -4
- package/src/blueprints/websearch/blueprint.conversations.json +1 -1
- package/src/crud/graph.test.ts +1 -1
- package/src/crud/graph.ts +125 -127
- package/src/functions/agent/definitions.ts +8 -3
- package/src/functions/agent/prompt.conversations.json +1 -1
- package/src/functions/agent/prompt.test.ts +8 -11
- package/src/functions/agent/prompt.ts +5 -2
- package/src/sync/sync.ts +1 -2
- package/src/types/Agent.ts +28 -29
- package/src/types/McpServer.ts +5 -5
- package/src/types/Plan.ts +1 -0
- package/dist/lib/neutral/chunk-CLHVRIYF.mjs.map +0 -7
- package/dist/lib/neutral/chunk-CVUA23QI.mjs.map +0 -7
- package/dist/lib/neutral/chunk-E2XRNXWP.mjs.map +0 -7
- package/dist/lib/neutral/chunk-J37DYY7A.mjs.map +0 -7
- package/dist/lib/neutral/chunk-KY2TIPJ5.mjs.map +0 -7
- package/dist/lib/neutral/chunk-MMTKJBB5.mjs +0 -140
- package/dist/lib/neutral/chunk-MMTKJBB5.mjs.map +0 -7
- package/dist/lib/neutral/chunk-TO5IX24K.mjs.map +0 -7
- package/dist/lib/neutral/context-add-IIDPRRVB.mjs.map +0 -7
- package/dist/lib/neutral/context-remove-RDYV4PD4.mjs.map +0 -7
- package/dist/lib/neutral/enable-blueprints-LBDZH2CY.mjs.map +0 -7
- package/dist/lib/neutral/qualifier-2AC2ICOB.mjs.map +0 -7
- package/dist/lib/neutral/query-B3NOYFCK.mjs.map +0 -7
- package/dist/lib/neutral/sync-issues-LOLHZNFL.mjs.map +0 -7
- package/dist/lib/neutral/update-tasks-ML2FCYU5.mjs +0 -46
- package/dist/lib/neutral/update-tasks-ML2FCYU5.mjs.map +0 -7
- package/dist/types/src/blueprints/planning/functions/definitions.d.ts +0 -11
- package/dist/types/src/blueprints/planning/functions/definitions.d.ts.map +0 -1
- /package/dist/lib/neutral/{chunk-D5MG5OKX.mjs.map → chunk-BCT55UTL.mjs.map} +0 -0
- /package/dist/lib/neutral/{create-project-GLDEAWTT.mjs.map → create-project-3AGXJ4TD.mjs.map} +0 -0
- /package/dist/lib/neutral/{fetch-messages-PWGUG5G3.mjs.map → fetch-messages-QOBBCTGC.mjs.map} +0 -0
- /package/dist/lib/neutral/{load-LI7HHVD6.mjs.map → load-GAT3T2AD.mjs.map} +0 -0
- /package/dist/lib/neutral/{object-create-52Z7YKIA.mjs.map → object-create-PL3WRP74.mjs.map} +0 -0
- /package/dist/lib/neutral/{object-delete-I266YAXI.mjs.map → object-delete-PZJQN5KW.mjs.map} +0 -0
- /package/dist/lib/neutral/{object-update-HY4GI7LA.mjs.map → object-update-R43N3VJX.mjs.map} +0 -0
- /package/dist/lib/neutral/{project-2YBPW5N7.mjs.map → project-VVXXUMAI.mjs.map} +0 -0
- /package/dist/lib/neutral/{project-rules-XUBEPDP6.mjs.map → project-rules-KSVSOZJV.mjs.map} +0 -0
- /package/dist/lib/neutral/{query-blueprints-KXADGHSA.mjs.map → query-blueprints-PLWYVOI3.mjs.map} +0 -0
- /package/dist/lib/neutral/{relation-create-Z3NGW4VU.mjs.map → relation-create-YAAAFTR2.mjs.map} +0 -0
- /package/dist/lib/neutral/{relation-delete-LXY7W2YO.mjs.map → relation-delete-IEPKERFR.mjs.map} +0 -0
- /package/dist/lib/neutral/{schema-add-4TXJO2V7.mjs.map → schema-add-5BNIINRS.mjs.map} +0 -0
- /package/dist/lib/neutral/{schema-list-PJS5AFZ3.mjs.map → schema-list-54UK7S4R.mjs.map} +0 -0
- /package/dist/lib/neutral/{tag-add-5NOHUTIE.mjs.map → tag-add-NLVRGTC6.mjs.map} +0 -0
- /package/dist/lib/neutral/{tag-remove-QTKYDJAW.mjs.map → tag-remove-N4HFBIA2.mjs.map} +0 -0
- /package/dist/lib/neutral/{update-blueprints-N2AK2VUR.mjs.map → update-blueprints-2SNK6HLG.mjs.map} +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dxos/assistant-toolkit",
|
|
3
|
-
"version": "0.8.4-main.
|
|
3
|
+
"version": "0.8.4-main.bc2380dfbc",
|
|
4
4
|
"description": "Assistant toolkit, definitions, and utilities.",
|
|
5
5
|
"homepage": "https://dxos.org",
|
|
6
6
|
"bugs": "https://github.com/dxos/dxos/issues",
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"type": "git",
|
|
9
9
|
"url": "https://github.com/dxos/dxos"
|
|
10
10
|
},
|
|
11
|
-
"license": "
|
|
11
|
+
"license": "FSL-1.1-Apache-2.0",
|
|
12
12
|
"author": "DXOS.org",
|
|
13
13
|
"type": "module",
|
|
14
14
|
"exports": {
|
|
@@ -33,40 +33,40 @@
|
|
|
33
33
|
"@effect/platform": "0.94.4",
|
|
34
34
|
"dfx": "^0.127.0",
|
|
35
35
|
"exa-js": "^1.5.12",
|
|
36
|
-
"@dxos/
|
|
37
|
-
"@dxos/
|
|
38
|
-
"@dxos/
|
|
39
|
-
"@dxos/
|
|
40
|
-
"@dxos/
|
|
41
|
-
"@dxos/echo": "0.8.4-main.
|
|
42
|
-
"@dxos/
|
|
43
|
-
"@dxos/echo-protocol": "0.8.4-main.
|
|
44
|
-
"@dxos/
|
|
45
|
-
"@dxos/
|
|
46
|
-
"@dxos/
|
|
47
|
-
"@dxos/
|
|
48
|
-
"@dxos/keys": "0.8.4-main.
|
|
49
|
-
"@dxos/
|
|
50
|
-
"@dxos/
|
|
51
|
-
"@dxos/react-ui": "0.8.4-main.
|
|
52
|
-
"@dxos/
|
|
53
|
-
"@dxos/
|
|
54
|
-
"@dxos/types": "0.8.4-main.
|
|
55
|
-
"@dxos/util": "0.8.4-main.
|
|
36
|
+
"@dxos/app-framework": "0.8.4-main.bc2380dfbc",
|
|
37
|
+
"@dxos/assistant": "0.8.4-main.bc2380dfbc",
|
|
38
|
+
"@dxos/ai": "0.8.4-main.bc2380dfbc",
|
|
39
|
+
"@dxos/compute": "0.8.4-main.bc2380dfbc",
|
|
40
|
+
"@dxos/client-protocol": "0.8.4-main.bc2380dfbc",
|
|
41
|
+
"@dxos/echo": "0.8.4-main.bc2380dfbc",
|
|
42
|
+
"@dxos/effect": "0.8.4-main.bc2380dfbc",
|
|
43
|
+
"@dxos/echo-protocol": "0.8.4-main.bc2380dfbc",
|
|
44
|
+
"@dxos/errors": "0.8.4-main.bc2380dfbc",
|
|
45
|
+
"@dxos/functions": "0.8.4-main.bc2380dfbc",
|
|
46
|
+
"@dxos/echo-db": "0.8.4-main.bc2380dfbc",
|
|
47
|
+
"@dxos/functions-runtime": "0.8.4-main.bc2380dfbc",
|
|
48
|
+
"@dxos/keys": "0.8.4-main.bc2380dfbc",
|
|
49
|
+
"@dxos/invariant": "0.8.4-main.bc2380dfbc",
|
|
50
|
+
"@dxos/react-ui-syntax-highlighter": "0.8.4-main.bc2380dfbc",
|
|
51
|
+
"@dxos/react-ui": "0.8.4-main.bc2380dfbc",
|
|
52
|
+
"@dxos/log": "0.8.4-main.bc2380dfbc",
|
|
53
|
+
"@dxos/schema": "0.8.4-main.bc2380dfbc",
|
|
54
|
+
"@dxos/types": "0.8.4-main.bc2380dfbc",
|
|
55
|
+
"@dxos/util": "0.8.4-main.bc2380dfbc"
|
|
56
56
|
},
|
|
57
57
|
"devDependencies": {
|
|
58
58
|
"effect": "3.20.0",
|
|
59
59
|
"react": "~19.2.3",
|
|
60
60
|
"react-dom": "~19.2.3",
|
|
61
|
-
"@dxos/client-protocol": "0.8.4-main.
|
|
62
|
-
"@dxos/
|
|
63
|
-
"@dxos/
|
|
61
|
+
"@dxos/client-protocol": "0.8.4-main.bc2380dfbc",
|
|
62
|
+
"@dxos/plugin-markdown": "0.8.4-main.bc2380dfbc",
|
|
63
|
+
"@dxos/ui-theme": "0.8.4-main.bc2380dfbc"
|
|
64
64
|
},
|
|
65
65
|
"peerDependencies": {
|
|
66
66
|
"effect": "3.20.0",
|
|
67
67
|
"react": "~19.2.3",
|
|
68
68
|
"react-dom": "~19.2.3",
|
|
69
|
-
"@dxos/ui-theme": "0.8.4-main.
|
|
69
|
+
"@dxos/ui-theme": "0.8.4-main.bc2380dfbc"
|
|
70
70
|
},
|
|
71
71
|
"publishConfig": {
|
|
72
72
|
"access": "public"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"conversations":[{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"query-blueprints","description":"Queries available blueprints.","inputSchema":{"type":"object","properties":{},"required":[],"additionalProperties":false}},{"name":"enable-blueprints","description":"Enables blueprints in the current conversation by their keys. Only blueprints with agentCanEnable=true can be enabled. Always call [query-blueprints] first to discover available blueprint keys.","inputSchema":{"type":"object","required":["keys"],"properties":{"keys":{"type":"array","items":{"type":"string"},"description":"The keys of the blueprints to enable.","examples":[["org.dxos.blueprint.memory","org.dxos.blueprint.database"]]}},"additionalProperties":false}},{"name":"refresh-blueprints","description":"Updates the blueprints saved to the database with the latest version from the registry. Sometimes blueprints in the database can become outdated. Use this function to pull in the latest versions.","inputSchema":{"type":"object","properties":{},"required":[],"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"You can call blueprint manager tools. When asked to refresh or sync blueprints from the registry,\ncall the refresh blueprints tool once and then stop.\n\n## Blueprints Definitions\n\n<blueprint>\n You can query available blueprints and enable them in the current conversation.\n Use [query-blueprints] to refresh the list of available blueprints.\n Use [refresh-blueprints] to update blueprint objects stored in the database from the built-in registry when they have drifted.\n Use [enable-blueprints] to enable blueprints by their keys. Always call [query-blueprints] first.\n Only blueprints with agentCanEnable=true can be enabled by the agent.\n \n <available_blueprints>\n -
|
|
1
|
+
{"conversations":[{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"query-blueprints","description":"Queries available blueprints.","inputSchema":{"type":"object","properties":{},"required":[],"additionalProperties":false}},{"name":"enable-blueprints","description":"Enables blueprints in the current conversation by their keys. Only blueprints with agentCanEnable=true can be enabled. Always call [query-blueprints] first to discover available blueprint keys.","inputSchema":{"type":"object","required":["keys"],"properties":{"keys":{"type":"array","items":{"type":"string"},"description":"The keys of the blueprints to enable.","examples":[["org.dxos.blueprint.memory","org.dxos.blueprint.database"]]}},"additionalProperties":false}},{"name":"refresh-blueprints","description":"Updates the blueprints saved to the database with the latest version from the registry. Sometimes blueprints in the database can become outdated. Use this function to pull in the latest versions.","inputSchema":{"type":"object","properties":{},"required":[],"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"You can call blueprint manager tools. When asked to refresh or sync blueprints from the registry,\ncall the refresh blueprints tool once and then stop.\n\n## Blueprints Definitions\n\n<blueprint>\n You can query available blueprints and enable them in the current conversation.\n Use [query-blueprints] to refresh the list of available blueprints.\n Use [refresh-blueprints] to update blueprint objects stored in the database from the built-in registry when they have drifted.\n Use [enable-blueprints] to enable blueprints by their keys. Always call [query-blueprints] first.\n Only blueprints with agentCanEnable=true can be enabled by the agent.\n \n <available_blueprints>\n - \"Database\" -- Query and manipulate objects in the ECHO database. [agent-can-enable]\n - \"Discord\" -- Discord integration.\n - \"Memory\" -- Persistent memory storage and retrieval. [agent-can-enable]\n </available_blueprints>\n \n NOTE: You must enable the blueprint to use it, only then the tools from that blueprint will appear.\n</blueprint>","options":{}},{"role":"user","content":"Refresh blueprints from the registry so database copies match the built-in definitions.","options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01TbpyF4R2M2msQ3MmACemz3","modelId":"claude-opus-4-6","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"reasoning-start","id":"0","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"The","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" user wants to refresh blueprints from the registry.","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{"anthropic":{"type":"thinking","signature":"EvIBClkIDRgCKkB80YOcko364VSaulfRzM8X76fyNXMnETkUUFoQcYpg3o7JCxnTb9ja4DC5rFEIzSicbmTYjXBq1JLzZZkSAcy9Mg9jbGF1ZGUtb3B1cy00LTY4ABIMzFmOkZyFq9wU7oUiGgyLEwTJ3+UjRD1VVdciMKcfb3Ya8LeMUyxEk3+yvWu67XchBVoYZT/RJm8r+e0issp2Mymv+acCtCPPgT/IPSpHqfQAVA6R6fxk9ZErdJy/cgwGwwlvj2LUipfSg/Hrj7R1WCQpjDrx4KmLzRv38LFIu+MZ8Sk6QYprjrGL7CEXOJnvmsfNDicYAQ=="}}},{"type":"reasoning-end","id":"0","metadata":{}},{"type":"text-start","id":"1","metadata":{}},{"type":"text-delta","id":"1","delta":"I'll refresh the blueprints now to sync the database copies","metadata":{}},{"type":"text-delta","id":"1","delta":" with the latest built-in registry definitions.","metadata":{}},{"type":"text-end","id":"1","metadata":{}},{"type":"tool-params-start","id":"toolu_01DgR2qAHmoFriPhAB9BfnVP","name":"refresh-blueprints","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01DgR2qAHmoFriPhAB9BfnVP","delta":"","metadata":{}},{"type":"tool-params-end","id":"toolu_01DgR2qAHmoFriPhAB9BfnVP","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":1086,"outputTokens":89,"totalTokens":1175},"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":1086,"output_tokens":9,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"query-blueprints","description":"Queries available blueprints.","inputSchema":{"type":"object","properties":{},"required":[],"additionalProperties":false}},{"name":"enable-blueprints","description":"Enables blueprints in the current conversation by their keys. Only blueprints with agentCanEnable=true can be enabled. Always call [query-blueprints] first to discover available blueprint keys.","inputSchema":{"type":"object","required":["keys"],"properties":{"keys":{"type":"array","items":{"type":"string"},"description":"The keys of the blueprints to enable.","examples":[["org.dxos.blueprint.memory","org.dxos.blueprint.database"]]}},"additionalProperties":false}},{"name":"refresh-blueprints","description":"Updates the blueprints saved to the database with the latest version from the registry. Sometimes blueprints in the database can become outdated. Use this function to pull in the latest versions.","inputSchema":{"type":"object","properties":{},"required":[],"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"You can call blueprint manager tools. When asked to refresh or sync blueprints from the registry,\ncall the refresh blueprints tool once and then stop.\n\n## Blueprints Definitions\n\n<blueprint>\n You can query available blueprints and enable them in the current conversation.\n Use [query-blueprints] to refresh the list of available blueprints.\n Use [refresh-blueprints] to update blueprint objects stored in the database from the built-in registry when they have drifted.\n Use [enable-blueprints] to enable blueprints by their keys. Always call [query-blueprints] first.\n Only blueprints with agentCanEnable=true can be enabled by the agent.\n \n <available_blueprints>\n - \"Database\" -- Query and manipulate objects in the ECHO database. [agent-can-enable]\n - \"Discord\" -- Discord integration.\n - \"Memory\" -- Persistent memory storage and retrieval. [agent-can-enable]\n </available_blueprints>\n \n NOTE: You must enable the blueprint to use it, only then the tools from that blueprint will appear.\n</blueprint>","options":{}},{"role":"user","content":"Refresh blueprints from the registry so database copies match the built-in definitions.","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to refresh blueprints from the registry.","options":{}},{"type":"text","text":"I'll refresh the blueprints now to sync the database copies with the latest built-in registry definitions.","options":{}},{"type":"tool-call","id":"toolu_01DgR2qAHmoFriPhAB9BfnVP","name":"refresh-blueprints","params":{},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01DgR2qAHmoFriPhAB9BfnVP","name":"refresh-blueprints","isFailure":false,"result":{},"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_0164Sg9xGSkkBE9uwWN2KzLy","modelId":"claude-opus-4-6","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"The","metadata":{}},{"type":"text-delta","id":"0","delta":" blueprints in the database have been updated to match the latest versions from the built-in registry. Everything should now be in","metadata":{}},{"type":"text-delta","id":"0","delta":" sync!","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"finish","reason":"stop","usage":{"inputTokens":1159,"outputTokens":32,"totalTokens":1191},"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":1159,"output_tokens":1,"server_tool_use":null,"service_tier":"standard"}}}}]}]}
|
|
@@ -7,7 +7,7 @@ import * as Effect from 'effect/Effect';
|
|
|
7
7
|
import * as Layer from 'effect/Layer';
|
|
8
8
|
|
|
9
9
|
import { MemoizedAiService } from '@dxos/ai/testing';
|
|
10
|
-
import {
|
|
10
|
+
import { AiContext, AiSession } from '@dxos/assistant';
|
|
11
11
|
import { Blueprint, Operation } from '@dxos/compute';
|
|
12
12
|
import { Database, DXN, Obj, Ref } from '@dxos/echo';
|
|
13
13
|
import { TestHelpers } from '@dxos/effect/testing';
|
|
@@ -29,13 +29,13 @@ const TestLayer = AssistantTestLayer({
|
|
|
29
29
|
tracing: 'pretty',
|
|
30
30
|
});
|
|
31
31
|
|
|
32
|
-
const provideTestLayers = Effect.provide(
|
|
32
|
+
const provideTestLayers = Effect.provide(AiSession.Service.layerNewFeed().pipe(Layer.provideMerge(TestLayer)));
|
|
33
33
|
|
|
34
34
|
/**
|
|
35
35
|
* Gets the conversation DXN for passing to Operation.invoke options.
|
|
36
36
|
*/
|
|
37
|
-
const
|
|
38
|
-
const session = yield*
|
|
37
|
+
const getConversationDXN = Effect.gen(function* () {
|
|
38
|
+
const session = yield* AiSession.Service;
|
|
39
39
|
return Obj.getDXN(session.feed).toString() as DXN.String;
|
|
40
40
|
});
|
|
41
41
|
|
|
@@ -44,10 +44,10 @@ describe('Blueprint Manager', () => {
|
|
|
44
44
|
'query-blueprints: returns all registered blueprints',
|
|
45
45
|
Effect.fnUntraced(
|
|
46
46
|
function* (_) {
|
|
47
|
-
const conversation = yield*
|
|
47
|
+
const conversation = yield* getConversationDXN;
|
|
48
48
|
const result = yield* Operation.invoke(QueryBlueprints, {}, { conversation });
|
|
49
49
|
expect(result).toHaveLength(3);
|
|
50
|
-
const keys = result.map((blueprint: Blueprint.Blueprint) => blueprint.key);
|
|
50
|
+
const keys = result.map((blueprint: Blueprint.Blueprint) => Obj.getMeta(blueprint).key);
|
|
51
51
|
expect(keys).toContain('org.dxos.blueprint.database');
|
|
52
52
|
expect(keys).toContain('org.dxos.blueprint.memory');
|
|
53
53
|
expect(keys).toContain('org.dxos.blueprint.discord');
|
|
@@ -62,19 +62,21 @@ describe('Blueprint Manager', () => {
|
|
|
62
62
|
'enable-blueprints: enables blueprints with agentCanEnable=true',
|
|
63
63
|
Effect.fnUntraced(
|
|
64
64
|
function* (_) {
|
|
65
|
-
const conversation = yield*
|
|
65
|
+
const conversation = yield* getConversationDXN;
|
|
66
66
|
const { enabled, rejected } = yield* Operation.invoke(
|
|
67
67
|
EnableBlueprints,
|
|
68
68
|
{ keys: ['org.dxos.blueprint.database'] },
|
|
69
69
|
{ conversation },
|
|
70
70
|
);
|
|
71
71
|
expect(enabled).toHaveLength(1);
|
|
72
|
-
expect(enabled[0].key).toBe('org.dxos.blueprint.database');
|
|
72
|
+
expect(Obj.getMeta(enabled[0]).key).toBe('org.dxos.blueprint.database');
|
|
73
73
|
expect(rejected).toHaveLength(0);
|
|
74
74
|
|
|
75
|
-
const { binder } = yield*
|
|
75
|
+
const { binder } = yield* AiContext.Service;
|
|
76
76
|
const bound = binder.getBlueprints();
|
|
77
|
-
expect(bound.some((bp: Blueprint.Blueprint) => bp.key === 'org.dxos.blueprint.database')).toBe(
|
|
77
|
+
expect(bound.some((bp: Blueprint.Blueprint) => Obj.getMeta(bp).key === 'org.dxos.blueprint.database')).toBe(
|
|
78
|
+
true,
|
|
79
|
+
);
|
|
78
80
|
},
|
|
79
81
|
provideTestLayers,
|
|
80
82
|
TestHelpers.provideTestContext,
|
|
@@ -86,7 +88,7 @@ describe('Blueprint Manager', () => {
|
|
|
86
88
|
'enable-blueprints: rejects blueprints without agentCanEnable',
|
|
87
89
|
Effect.fnUntraced(
|
|
88
90
|
function* (_) {
|
|
89
|
-
const conversation = yield*
|
|
91
|
+
const conversation = yield* getConversationDXN;
|
|
90
92
|
const { enabled, rejected } = yield* Operation.invoke(
|
|
91
93
|
EnableBlueprints,
|
|
92
94
|
{ keys: ['org.dxos.blueprint.discord'] },
|
|
@@ -96,9 +98,11 @@ describe('Blueprint Manager', () => {
|
|
|
96
98
|
expect(rejected).toHaveLength(1);
|
|
97
99
|
expect(rejected[0].key).toBe('org.dxos.blueprint.discord');
|
|
98
100
|
|
|
99
|
-
const { binder } = yield*
|
|
101
|
+
const { binder } = yield* AiContext.Service;
|
|
100
102
|
const bound = binder.getBlueprints();
|
|
101
|
-
expect(bound.some((bp: Blueprint.Blueprint) => bp.key === 'org.dxos.blueprint.discord')).toBe(
|
|
103
|
+
expect(bound.some((bp: Blueprint.Blueprint) => Obj.getMeta(bp).key === 'org.dxos.blueprint.discord')).toBe(
|
|
104
|
+
false,
|
|
105
|
+
);
|
|
102
106
|
},
|
|
103
107
|
provideTestLayers,
|
|
104
108
|
TestHelpers.provideTestContext,
|
|
@@ -110,7 +114,7 @@ describe('Blueprint Manager', () => {
|
|
|
110
114
|
'enable-blueprints: mixed keys enables only allowed ones',
|
|
111
115
|
Effect.fnUntraced(
|
|
112
116
|
function* (_) {
|
|
113
|
-
const conversation = yield*
|
|
117
|
+
const conversation = yield* getConversationDXN;
|
|
114
118
|
const { enabled, rejected } = yield* Operation.invoke(
|
|
115
119
|
EnableBlueprints,
|
|
116
120
|
{
|
|
@@ -119,7 +123,7 @@ describe('Blueprint Manager', () => {
|
|
|
119
123
|
{ conversation },
|
|
120
124
|
);
|
|
121
125
|
expect(enabled).toHaveLength(2);
|
|
122
|
-
const enabledKeys = enabled.map((bp: Blueprint.Blueprint) => bp.key);
|
|
126
|
+
const enabledKeys = enabled.map((bp: Blueprint.Blueprint) => Obj.getMeta(bp).key);
|
|
123
127
|
expect(enabledKeys).toContain('org.dxos.blueprint.database');
|
|
124
128
|
expect(enabledKeys).toContain('org.dxos.blueprint.memory');
|
|
125
129
|
expect(rejected).toHaveLength(1);
|
|
@@ -135,7 +139,7 @@ describe('Blueprint Manager', () => {
|
|
|
135
139
|
'enable-blueprints: unknown keys are rejected with reason',
|
|
136
140
|
Effect.fnUntraced(
|
|
137
141
|
function* (_) {
|
|
138
|
-
const conversation = yield*
|
|
142
|
+
const conversation = yield* getConversationDXN;
|
|
139
143
|
const { enabled, rejected } = yield* Operation.invoke(
|
|
140
144
|
EnableBlueprints,
|
|
141
145
|
{ keys: ['org.dxos.blueprint.nonexistent'] },
|
|
@@ -168,7 +172,7 @@ describe('Blueprint Manager', () => {
|
|
|
168
172
|
yield* Database.flush();
|
|
169
173
|
expect(stored.name).toBe('___TEST_MUTATED_BLUEPRINT_NAME___');
|
|
170
174
|
|
|
171
|
-
const session = yield*
|
|
175
|
+
const session = yield* AiSession.Service;
|
|
172
176
|
yield* Effect.promise(() => session.context.open());
|
|
173
177
|
yield* Effect.promise(() =>
|
|
174
178
|
session.context.bind({
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
import * as Schema from 'effect/Schema';
|
|
6
6
|
|
|
7
|
-
import {
|
|
7
|
+
import { AiContext } from '@dxos/assistant';
|
|
8
8
|
import { Blueprint, Operation } from '@dxos/compute';
|
|
9
9
|
import { Database } from '@dxos/echo';
|
|
10
10
|
|
|
@@ -41,7 +41,7 @@ export const EnableBlueprints = Operation.make({
|
|
|
41
41
|
}),
|
|
42
42
|
),
|
|
43
43
|
}),
|
|
44
|
-
services: [Blueprint.RegistryService, Database.Service,
|
|
44
|
+
services: [Blueprint.RegistryService, Database.Service, AiContext.Service],
|
|
45
45
|
});
|
|
46
46
|
|
|
47
47
|
export const UpdateBlueprints = Operation.make({
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
import * as Effect from 'effect/Effect';
|
|
6
6
|
|
|
7
|
-
import {
|
|
7
|
+
import { AiContext } from '@dxos/assistant';
|
|
8
8
|
import { Blueprint, Operation } from '@dxos/compute';
|
|
9
9
|
import { Ref } from '@dxos/echo';
|
|
10
10
|
|
|
@@ -32,7 +32,7 @@ export default EnableBlueprints.pipe(
|
|
|
32
32
|
}
|
|
33
33
|
|
|
34
34
|
if (enabled.length > 0) {
|
|
35
|
-
yield*
|
|
35
|
+
yield* AiContext.Service.bindContext({
|
|
36
36
|
blueprints: enabled.map(Ref.make),
|
|
37
37
|
});
|
|
38
38
|
}
|
|
@@ -14,10 +14,10 @@ import { AgentService } from '@dxos/functions-runtime';
|
|
|
14
14
|
import { AssistantTestLayerWithTriggers } from '@dxos/functions-runtime/testing';
|
|
15
15
|
import { ObjectId } from '@dxos/keys';
|
|
16
16
|
import { log } from '@dxos/log';
|
|
17
|
-
import { MarkdownBlueprint } from '@dxos/plugin-markdown
|
|
18
|
-
import {
|
|
17
|
+
import { MarkdownBlueprint } from '@dxos/plugin-markdown';
|
|
18
|
+
import { Markdown } from '@dxos/plugin-markdown';
|
|
19
|
+
import { MarkdownOperationHandlerSet } from '@dxos/plugin-markdown/plugin';
|
|
19
20
|
import { WithProperties } from '@dxos/plugin-markdown/testing';
|
|
20
|
-
import { Markdown } from '@dxos/plugin-markdown/types';
|
|
21
21
|
import { Person } from '@dxos/types';
|
|
22
22
|
|
|
23
23
|
import { DatabaseBlueprint, DatabaseHandlers } from '../database';
|