@dxos/plugin-assistant 0.8.2-main.5885341 → 0.8.2-main.600d381
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/dist/lib/browser/{AssistantDialog-I47GUXWR.mjs → AssistantDialog-BUHPFIHN.mjs} +3 -3
- package/dist/lib/browser/{ChatContainer-GAYN3FEF.mjs → ChatContainer-X7JBCLFK.mjs} +3 -3
- package/dist/lib/browser/{app-graph-builder-ZXKGE3H5.mjs → app-graph-builder-JJCBQZGC.mjs} +4 -4
- package/dist/lib/browser/{app-graph-builder-ZXKGE3H5.mjs.map → app-graph-builder-JJCBQZGC.mjs.map} +1 -1
- package/dist/lib/browser/chunk-5P7U35RJ.mjs +192 -0
- package/dist/lib/browser/chunk-5P7U35RJ.mjs.map +7 -0
- package/dist/lib/browser/{chunk-BGMQ2YYP.mjs → chunk-PFIXSSN2.mjs} +4 -4
- package/dist/lib/browser/{chunk-BGMQ2YYP.mjs.map → chunk-PFIXSSN2.mjs.map} +2 -2
- package/dist/lib/browser/{chunk-7CAHKTZQ.mjs → chunk-QGZETTI3.mjs} +61 -82
- package/dist/lib/browser/chunk-QGZETTI3.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +3 -3
- package/dist/lib/browser/{intent-resolver-W6XREK5F.mjs → intent-resolver-54SA6LXM.mjs} +4 -4
- package/dist/lib/browser/intent-resolver-54SA6LXM.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-surface-QMI5KG4H.mjs → react-surface-JSHNKGXY.mjs} +9 -9
- package/dist/lib/browser/react-surface-JSHNKGXY.mjs.map +7 -0
- package/dist/lib/browser/{settings-LAJZQI4H.mjs → settings-OZX7J65A.mjs} +2 -2
- package/dist/lib/browser/types/index.mjs +1 -1
- package/dist/lib/node/{AssistantDialog-SDS2TE5L.cjs → AssistantDialog-XIAFCAGB.cjs} +7 -7
- package/dist/lib/node/{ChatContainer-U6AVMAHY.cjs → ChatContainer-MAGI5QD6.cjs} +7 -7
- package/dist/lib/node/{app-graph-builder-TXHPXIIC.cjs → app-graph-builder-7EJJHBRH.cjs} +13 -13
- package/dist/lib/node/{app-graph-builder-TXHPXIIC.cjs.map → app-graph-builder-7EJJHBRH.cjs.map} +1 -1
- package/dist/lib/node/{chunk-CWHFK36A.cjs → chunk-EWY6HDMS.cjs} +69 -84
- package/dist/lib/node/chunk-EWY6HDMS.cjs.map +7 -0
- package/dist/lib/node/{chunk-XBJO453B.cjs → chunk-V4WPZXN2.cjs} +9 -9
- package/dist/lib/node/{chunk-XBJO453B.cjs.map → chunk-V4WPZXN2.cjs.map} +2 -2
- package/dist/lib/node/{chunk-5UELRDHQ.cjs → chunk-VG2UQY4S.cjs} +74 -72
- package/dist/lib/node/chunk-VG2UQY4S.cjs.map +7 -0
- package/dist/lib/node/index.cjs +39 -39
- package/dist/lib/node/{intent-resolver-MUJMV7II.cjs → intent-resolver-UP5FPVWP.cjs} +11 -11
- package/dist/lib/node/intent-resolver-UP5FPVWP.cjs.map +7 -0
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/{react-surface-SAJF4XBB.cjs → react-surface-M3OXAXKR.cjs} +22 -22
- package/dist/lib/node/react-surface-M3OXAXKR.cjs.map +7 -0
- package/dist/lib/node/{settings-NPXTE6ND.cjs → settings-WLTC7XO5.cjs} +6 -6
- package/dist/lib/node/types/index.cjs +13 -13
- package/dist/lib/node/types/index.cjs.map +1 -1
- package/dist/lib/node-esm/{AssistantDialog-KGA5HBFO.mjs → AssistantDialog-SDGQK5TF.mjs} +3 -3
- package/dist/lib/node-esm/{ChatContainer-XPNXNPSW.mjs → ChatContainer-AM4BDTXU.mjs} +3 -3
- package/dist/lib/node-esm/{app-graph-builder-SV4WC2E2.mjs → app-graph-builder-ZDI7EVEN.mjs} +4 -4
- package/dist/lib/node-esm/{app-graph-builder-SV4WC2E2.mjs.map → app-graph-builder-ZDI7EVEN.mjs.map} +1 -1
- package/dist/lib/node-esm/{chunk-XFUXN5QU.mjs → chunk-RDU7QEFL.mjs} +61 -82
- package/dist/lib/node-esm/chunk-RDU7QEFL.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-R7Q3OHWG.mjs → chunk-RN3I3BVC.mjs} +4 -4
- package/dist/lib/node-esm/{chunk-R7Q3OHWG.mjs.map → chunk-RN3I3BVC.mjs.map} +2 -2
- package/dist/lib/node-esm/chunk-UZWYXNR5.mjs +193 -0
- package/dist/lib/node-esm/chunk-UZWYXNR5.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +3 -3
- package/dist/lib/node-esm/{intent-resolver-DZY2O2DG.mjs → intent-resolver-JKWFZYLN.mjs} +4 -4
- package/dist/lib/node-esm/intent-resolver-JKWFZYLN.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-surface-R43NHNMC.mjs → react-surface-RZBDBP42.mjs} +9 -9
- package/dist/lib/node-esm/react-surface-RZBDBP42.mjs.map +7 -0
- package/dist/lib/node-esm/{settings-K3JDH2I5.mjs → settings-CLE57WEP.mjs} +2 -2
- package/dist/lib/node-esm/types/index.mjs +1 -1
- package/dist/types/src/capabilities/ai-client.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/components/AmbientDialog/AmbientDialog.d.ts.map +1 -1
- package/dist/types/src/components/AssistantSettings/AssistantSettings.d.ts.map +1 -1
- package/dist/types/src/components/Prompt/PromptBar.d.ts.map +1 -1
- package/dist/types/src/components/Prompt/autocomplete.d.ts.map +1 -1
- package/dist/types/src/components/Prompt/references.d.ts.map +1 -1
- package/dist/types/src/components/PromptSettings.d.ts.map +1 -1
- package/dist/types/src/components/TemplateContainer.d.ts.map +1 -1
- package/dist/types/src/components/TemplateEditor/TemplateEditor.d.ts.map +1 -1
- package/dist/types/src/components/TemplateEditor/TemplateEditor.stories.d.ts.map +1 -1
- package/dist/types/src/components/TemplateEditor/TemplateForm.d.ts +2 -2
- package/dist/types/src/components/TemplateEditor/TemplateForm.d.ts.map +1 -1
- package/dist/types/src/components/Thread/Thread.d.ts.map +1 -1
- package/dist/types/src/components/Thread/Thread.stories.d.ts.map +1 -1
- package/dist/types/src/components/Thread/ThreadContainer.stories.d.ts +2 -2
- package/dist/types/src/components/Thread/ThreadContainer.stories.d.ts.map +1 -1
- package/dist/types/src/components/Thread/ToolInvocations.d.ts.map +1 -1
- package/dist/types/src/components/Toolbox/Toolbox.d.ts +1 -1
- package/dist/types/src/components/Toolbox/Toolbox.d.ts.map +1 -1
- package/dist/types/src/hooks/index.d.ts +0 -1
- package/dist/types/src/hooks/index.d.ts.map +1 -1
- package/dist/types/src/hooks/useChatProcessor.d.ts.map +1 -1
- package/dist/types/src/hooks/useContextProvider.d.ts +1 -1
- package/dist/types/src/hooks/useContextProvider.d.ts.map +1 -1
- package/dist/types/src/hooks/useMessageQueue.d.ts.map +1 -1
- package/dist/types/src/hooks/useServices.d.ts.map +1 -1
- package/dist/types/src/hooks/useTextInputEvents.d.ts.map +1 -1
- package/dist/types/src/testing/test-functions.d.ts.map +1 -1
- package/dist/types/src/tools/function.d.ts +2 -2
- package/dist/types/src/tools/function.d.ts.map +1 -1
- package/dist/types/src/tools/openapi.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +6 -60
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/service.d.ts +96 -95
- package/dist/types/src/types/service.d.ts.map +1 -1
- package/dist/types/src/types/template.d.ts +52 -52
- package/dist/types/src/types/template.d.ts.map +1 -1
- package/dist/types/src/types/types.d.ts +19 -19
- package/dist/types/src/types/types.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +60 -57
- package/src/capabilities/app-graph-builder.ts +2 -2
- package/src/capabilities/intent-resolver.ts +2 -2
- package/src/capabilities/react-surface.tsx +5 -5
- package/src/components/AmbientDialog/AmbientDialog.stories.tsx +1 -1
- package/src/components/Prompt/Prompt.stories.tsx +1 -1
- package/src/components/Prompt/PromptBar.tsx +4 -12
- package/src/components/PromptSettings.tsx +2 -2
- package/src/components/TemplateEditor/TemplateForm.tsx +2 -2
- package/src/components/Thread/Thread.stories.tsx +12 -15
- package/src/components/Thread/ThreadContainer.stories.tsx +6 -6
- package/src/components/Thread/ThreadMessage.tsx +1 -1
- package/src/components/Toolbox/Toolbox.stories.tsx +1 -1
- package/src/components/Toolbox/Toolbox.tsx +1 -1
- package/src/hooks/index.ts +0 -1
- package/src/hooks/useChatProcessor.tsx +3 -3
- package/src/hooks/useContextProvider.ts +9 -9
- package/src/tools/function.ts +4 -6
- package/src/tools/openapi.ts +4 -3
- package/src/types/service.ts +39 -37
- package/src/types/template.ts +27 -25
- package/src/types/types.ts +18 -18
- package/dist/lib/browser/chunk-7CAHKTZQ.mjs.map +0 -7
- package/dist/lib/browser/chunk-E7BN4QKP.mjs +0 -190
- package/dist/lib/browser/chunk-E7BN4QKP.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-W6XREK5F.mjs.map +0 -7
- package/dist/lib/browser/react-surface-QMI5KG4H.mjs.map +0 -7
- package/dist/lib/node/chunk-5UELRDHQ.cjs.map +0 -7
- package/dist/lib/node/chunk-CWHFK36A.cjs.map +0 -7
- package/dist/lib/node/intent-resolver-MUJMV7II.cjs.map +0 -7
- package/dist/lib/node/react-surface-SAJF4XBB.cjs.map +0 -7
- package/dist/lib/node-esm/chunk-ECYNZYEG.mjs +0 -191
- package/dist/lib/node-esm/chunk-ECYNZYEG.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-XFUXN5QU.mjs.map +0 -7
- package/dist/lib/node-esm/intent-resolver-DZY2O2DG.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-R43NHNMC.mjs.map +0 -7
- package/dist/types/src/hooks/invocation-handler.d.ts +0 -5
- package/dist/types/src/hooks/invocation-handler.d.ts.map +0 -1
- package/dist/types/src/hooks/useLocalTriggerManager.d.ts +0 -3
- package/dist/types/src/hooks/useLocalTriggerManager.d.ts.map +0 -1
- package/src/hooks/invocation-handler.ts +0 -107
- package/src/hooks/useLocalTriggerManager.ts +0 -82
- /package/dist/lib/browser/{AssistantDialog-I47GUXWR.mjs.map → AssistantDialog-BUHPFIHN.mjs.map} +0 -0
- /package/dist/lib/browser/{ChatContainer-GAYN3FEF.mjs.map → ChatContainer-X7JBCLFK.mjs.map} +0 -0
- /package/dist/lib/browser/{settings-LAJZQI4H.mjs.map → settings-OZX7J65A.mjs.map} +0 -0
- /package/dist/lib/node/{AssistantDialog-SDS2TE5L.cjs.map → AssistantDialog-XIAFCAGB.cjs.map} +0 -0
- /package/dist/lib/node/{ChatContainer-U6AVMAHY.cjs.map → ChatContainer-MAGI5QD6.cjs.map} +0 -0
- /package/dist/lib/node/{settings-NPXTE6ND.cjs.map → settings-WLTC7XO5.cjs.map} +0 -0
- /package/dist/lib/node-esm/{AssistantDialog-KGA5HBFO.mjs.map → AssistantDialog-SDGQK5TF.mjs.map} +0 -0
- /package/dist/lib/node-esm/{ChatContainer-XPNXNPSW.mjs.map → ChatContainer-AM4BDTXU.mjs.map} +0 -0
- /package/dist/lib/node-esm/{settings-K3JDH2I5.mjs.map → settings-CLE57WEP.mjs.map} +0 -0
|
@@ -18,21 +18,21 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
19
|
var types_exports = {};
|
|
20
20
|
__export(types_exports, {
|
|
21
|
-
AIChatType: () =>
|
|
22
|
-
ApiAuthorization: () =>
|
|
23
|
-
AssistantAction: () =>
|
|
24
|
-
AssistantSettingsSchema: () =>
|
|
25
|
-
LLM_PROVIDERS: () =>
|
|
26
|
-
ServiceType: () =>
|
|
27
|
-
TemplateInputSchema: () =>
|
|
28
|
-
TemplateInputType: () =>
|
|
29
|
-
TemplateKindSchema: () =>
|
|
30
|
-
TemplateKinds: () =>
|
|
31
|
-
TemplateType: () =>
|
|
32
|
-
categoryIcons: () =>
|
|
21
|
+
AIChatType: () => import_chunk_VG2UQY4S.AIChatType,
|
|
22
|
+
ApiAuthorization: () => import_chunk_VG2UQY4S.ApiAuthorization,
|
|
23
|
+
AssistantAction: () => import_chunk_VG2UQY4S.AssistantAction,
|
|
24
|
+
AssistantSettingsSchema: () => import_chunk_VG2UQY4S.AssistantSettingsSchema,
|
|
25
|
+
LLM_PROVIDERS: () => import_chunk_VG2UQY4S.LLM_PROVIDERS,
|
|
26
|
+
ServiceType: () => import_chunk_VG2UQY4S.ServiceType,
|
|
27
|
+
TemplateInputSchema: () => import_chunk_VG2UQY4S.TemplateInputSchema,
|
|
28
|
+
TemplateInputType: () => import_chunk_VG2UQY4S.TemplateInputType,
|
|
29
|
+
TemplateKindSchema: () => import_chunk_VG2UQY4S.TemplateKindSchema,
|
|
30
|
+
TemplateKinds: () => import_chunk_VG2UQY4S.TemplateKinds,
|
|
31
|
+
TemplateType: () => import_chunk_VG2UQY4S.TemplateType,
|
|
32
|
+
categoryIcons: () => import_chunk_VG2UQY4S.categoryIcons
|
|
33
33
|
});
|
|
34
34
|
module.exports = __toCommonJS(types_exports);
|
|
35
|
-
var
|
|
35
|
+
var import_chunk_VG2UQY4S = require("../chunk-VG2UQY4S.cjs");
|
|
36
36
|
var import_chunk_Q5XWEMHB = require("../chunk-Q5XWEMHB.cjs");
|
|
37
37
|
// Annotate the CommonJS export names for ESM import in node:
|
|
38
38
|
0 && (module.exports = {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["index.cjs"],
|
|
4
|
-
"sourcesContent": ["import {\n AIChatType,\n ApiAuthorization,\n AssistantAction,\n AssistantSettingsSchema,\n LLM_PROVIDERS,\n ServiceType,\n TemplateInputSchema,\n TemplateInputType,\n TemplateKindSchema,\n TemplateKinds,\n TemplateType,\n categoryIcons\n} from \"../chunk-
|
|
4
|
+
"sourcesContent": ["import {\n AIChatType,\n ApiAuthorization,\n AssistantAction,\n AssistantSettingsSchema,\n LLM_PROVIDERS,\n ServiceType,\n TemplateInputSchema,\n TemplateInputType,\n TemplateKindSchema,\n TemplateKinds,\n TemplateType,\n categoryIcons\n} from \"../chunk-VG2UQY4S.cjs\";\nimport \"../chunk-Q5XWEMHB.cjs\";\nexport {\n AIChatType,\n ApiAuthorization,\n AssistantAction,\n AssistantSettingsSchema,\n LLM_PROVIDERS,\n ServiceType,\n TemplateInputSchema,\n TemplateInputType,\n TemplateKindSchema,\n TemplateKinds,\n TemplateType,\n categoryIcons\n};\n//# sourceMappingURL=index.cjs.map\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAaO;AACP,4BAAO;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
ThreadContainer
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-RDU7QEFL.mjs";
|
|
5
5
|
import "./chunk-6JK5HEUQ.mjs";
|
|
6
|
-
import "./chunk-
|
|
6
|
+
import "./chunk-UZWYXNR5.mjs";
|
|
7
7
|
import {
|
|
8
8
|
ASSISTANT_PLUGIN
|
|
9
9
|
} from "./chunk-ECRK6TUQ.mjs";
|
|
@@ -115,4 +115,4 @@ export {
|
|
|
115
115
|
AssistantDialog,
|
|
116
116
|
AssistantDialog_default as default
|
|
117
117
|
};
|
|
118
|
-
//# sourceMappingURL=AssistantDialog-
|
|
118
|
+
//# sourceMappingURL=AssistantDialog-SDGQK5TF.mjs.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
ThreadContainer
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-RDU7QEFL.mjs";
|
|
5
5
|
import "./chunk-6JK5HEUQ.mjs";
|
|
6
|
-
import "./chunk-
|
|
6
|
+
import "./chunk-UZWYXNR5.mjs";
|
|
7
7
|
import {
|
|
8
8
|
ASSISTANT_PLUGIN
|
|
9
9
|
} from "./chunk-ECRK6TUQ.mjs";
|
|
@@ -31,4 +31,4 @@ export {
|
|
|
31
31
|
ChatContainer,
|
|
32
32
|
ChatContainer_default as default
|
|
33
33
|
};
|
|
34
|
-
//# sourceMappingURL=ChatContainer-
|
|
34
|
+
//# sourceMappingURL=ChatContainer-AM4BDTXU.mjs.map
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
AIChatType,
|
|
4
4
|
AssistantAction,
|
|
5
5
|
TemplateType
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-UZWYXNR5.mjs";
|
|
7
7
|
import {
|
|
8
8
|
ASSISTANT_DIALOG,
|
|
9
9
|
ASSISTANT_PLUGIN
|
|
@@ -66,7 +66,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
|
|
|
66
66
|
ns: ASSISTANT_PLUGIN
|
|
67
67
|
}
|
|
68
68
|
],
|
|
69
|
-
icon: "ph--
|
|
69
|
+
icon: "ph--sparkle--regular",
|
|
70
70
|
disposition: "pin-end",
|
|
71
71
|
position: "hoist",
|
|
72
72
|
keyBinding: {
|
|
@@ -95,7 +95,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
|
|
|
95
95
|
ns: ASSISTANT_PLUGIN
|
|
96
96
|
}
|
|
97
97
|
],
|
|
98
|
-
icon: "ph--
|
|
98
|
+
icon: "ph--sparkle--regular",
|
|
99
99
|
position: "hoist"
|
|
100
100
|
}
|
|
101
101
|
}
|
|
@@ -177,4 +177,4 @@ var getOrCreateChat = async (dispatch, space) => {
|
|
|
177
177
|
export {
|
|
178
178
|
app_graph_builder_default as default
|
|
179
179
|
};
|
|
180
|
-
//# sourceMappingURL=app-graph-builder-
|
|
180
|
+
//# sourceMappingURL=app-graph-builder-ZDI7EVEN.mjs.map
|
package/dist/lib/node-esm/{app-graph-builder-SV4WC2E2.mjs.map → app-graph-builder-ZDI7EVEN.mjs.map}
RENAMED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/capabilities/app-graph-builder.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport {\n Capabilities,\n contributes,\n createIntent,\n LayoutAction,\n type PromiseIntentDispatcher,\n type PluginsContext,\n} from '@dxos/app-framework';\nimport { invariant } from '@dxos/invariant';\nimport { ClientCapabilities } from '@dxos/plugin-client';\nimport { PLANK_COMPANION_TYPE, ATTENDABLE_PATH_SEPARATOR } from '@dxos/plugin-deck/types';\nimport { createExtension, type Node, ROOT_ID } from '@dxos/plugin-graph';\nimport { memoizeQuery } from '@dxos/plugin-space';\nimport { SPACE_TYPE, SpaceAction } from '@dxos/plugin-space/types';\nimport { type Space, Filter, fullyQualifiedId, getSpace, isLiveObject } from '@dxos/react-client/echo';\n\nimport { ASSISTANT_DIALOG, ASSISTANT_PLUGIN } from '../meta';\nimport { AIChatType, AssistantAction, TemplateType } from '../types';\n\nexport default (context: PluginsContext) =>\n contributes(Capabilities.AppGraphBuilder, [\n createExtension({\n id: `${ASSISTANT_PLUGIN}/assistant`,\n filter: (node): node is Node<null> => node.id === ROOT_ID,\n actions: () => [\n {\n id: `${LayoutAction.UpdateDialog._tag}/assistant/open`,\n data: async () => {\n const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);\n const client = context.requestCapability(ClientCapabilities.Client);\n const layout = context.requestCapability(Capabilities.Layout);\n const { graph } = context.requestCapability(Capabilities.AppGraph);\n\n // TODO(burdon): Get space from workspace.\n // TODO(burdon): If need to create chat, then add to dispatch stack below.\n let chat: AIChatType | undefined;\n if (layout.active.length > 0) {\n const node = graph.findNode(layout.active[0]);\n if (node) {\n const space = getSpace(node.data);\n if (space) {\n chat = await getOrCreateChat(dispatch, space);\n }\n }\n } else {\n const space = client.spaces.default;\n chat = await getOrCreateChat(dispatch, space);\n }\n\n if (!chat) {\n return;\n }\n\n await dispatch(\n createIntent(LayoutAction.UpdateDialog, {\n part: 'dialog',\n subject: ASSISTANT_DIALOG,\n options: {\n state: true,\n blockAlign: 'end',\n props: {\n chat,\n },\n },\n }),\n );\n },\n properties: {\n label: ['open assistant label', { ns: ASSISTANT_PLUGIN }],\n icon: 'ph--
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport {\n Capabilities,\n contributes,\n createIntent,\n LayoutAction,\n type PromiseIntentDispatcher,\n type PluginsContext,\n} from '@dxos/app-framework';\nimport { invariant } from '@dxos/invariant';\nimport { ClientCapabilities } from '@dxos/plugin-client';\nimport { PLANK_COMPANION_TYPE, ATTENDABLE_PATH_SEPARATOR } from '@dxos/plugin-deck/types';\nimport { createExtension, type Node, ROOT_ID } from '@dxos/plugin-graph';\nimport { memoizeQuery } from '@dxos/plugin-space';\nimport { SPACE_TYPE, SpaceAction } from '@dxos/plugin-space/types';\nimport { type Space, Filter, fullyQualifiedId, getSpace, isLiveObject } from '@dxos/react-client/echo';\n\nimport { ASSISTANT_DIALOG, ASSISTANT_PLUGIN } from '../meta';\nimport { AIChatType, AssistantAction, TemplateType } from '../types';\n\nexport default (context: PluginsContext) =>\n contributes(Capabilities.AppGraphBuilder, [\n createExtension({\n id: `${ASSISTANT_PLUGIN}/assistant`,\n filter: (node): node is Node<null> => node.id === ROOT_ID,\n actions: () => [\n {\n id: `${LayoutAction.UpdateDialog._tag}/assistant/open`,\n data: async () => {\n const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);\n const client = context.requestCapability(ClientCapabilities.Client);\n const layout = context.requestCapability(Capabilities.Layout);\n const { graph } = context.requestCapability(Capabilities.AppGraph);\n\n // TODO(burdon): Get space from workspace.\n // TODO(burdon): If need to create chat, then add to dispatch stack below.\n let chat: AIChatType | undefined;\n if (layout.active.length > 0) {\n const node = graph.findNode(layout.active[0]);\n if (node) {\n const space = getSpace(node.data);\n if (space) {\n chat = await getOrCreateChat(dispatch, space);\n }\n }\n } else {\n const space = client.spaces.default;\n chat = await getOrCreateChat(dispatch, space);\n }\n\n if (!chat) {\n return;\n }\n\n await dispatch(\n createIntent(LayoutAction.UpdateDialog, {\n part: 'dialog',\n subject: ASSISTANT_DIALOG,\n options: {\n state: true,\n blockAlign: 'end',\n props: {\n chat,\n },\n },\n }),\n );\n },\n properties: {\n label: ['open assistant label', { ns: ASSISTANT_PLUGIN }],\n icon: 'ph--sparkle--regular',\n disposition: 'pin-end',\n position: 'hoist',\n keyBinding: {\n macos: 'shift+meta+k',\n windows: 'shift+ctrl+k',\n },\n },\n },\n ],\n }),\n\n createExtension({\n id: `${ASSISTANT_PLUGIN}/object-chat-companion`,\n filter: (node): node is Node<AIChatType> =>\n isLiveObject(node.data) && node.data.assistantChatQueue && node.data.type !== AIChatType.typename,\n connector: ({ node }) => [\n {\n id: [node.id, 'assistant-chat'].join(ATTENDABLE_PATH_SEPARATOR),\n type: PLANK_COMPANION_TYPE,\n data: 'assistant-chat',\n properties: {\n label: ['assistant chat label', { ns: ASSISTANT_PLUGIN }],\n icon: 'ph--sparkle--regular',\n position: 'hoist',\n },\n },\n ],\n }),\n\n createExtension({\n id: `${ASSISTANT_PLUGIN}/root`,\n filter: (node): node is Node<Space> => node.type === SPACE_TYPE,\n connector: ({ node }) => {\n const templates = memoizeQuery(node.data, Filter.schema(TemplateType));\n return templates.length > 0\n ? [\n {\n id: `${ASSISTANT_PLUGIN}/templates`,\n type: `${ASSISTANT_PLUGIN}/templates`,\n data: null,\n properties: {\n label: ['templates label', { ns: ASSISTANT_PLUGIN }],\n icon: 'ph--file-code--regular',\n space: node.data,\n },\n },\n ]\n : [];\n },\n }),\n\n createExtension({\n id: `${ASSISTANT_PLUGIN}/templates`,\n filter: (node): node is Node<null, { space: Space }> => node.id === `${ASSISTANT_PLUGIN}/templates`,\n connector: ({ node }) => {\n const templates = memoizeQuery(node.properties.space, Filter.schema(TemplateType));\n return templates\n .toSorted((a, b) => {\n const nameA = a.name ?? '';\n const nameB = b.name ?? '';\n return nameA.localeCompare(nameB);\n })\n .map((template) => ({\n id: fullyQualifiedId(template),\n type: `${ASSISTANT_PLUGIN}/template`,\n data: template,\n properties: {\n label: template.name ?? ['object placeholder', { ns: ASSISTANT_PLUGIN }],\n icon: 'ph--file-code--regular',\n },\n }));\n },\n }),\n ]);\n\n// TODO(burdon): Factor out.\nconst getOrCreateChat = async (dispatch: PromiseIntentDispatcher, space: Space): Promise<AIChatType | undefined> => {\n const { objects } = await space.db.query(Filter.schema(AIChatType)).run();\n // console.log('objects', JSON.stringify(objects, null, 2));\n if (objects.length > 0) {\n // TODO(burdon): Is this the most recent?\n return objects[objects.length - 1];\n }\n\n const { data } = await dispatch(createIntent(AssistantAction.CreateChat, { spaceId: space.id }));\n invariant(data?.object instanceof AIChatType);\n await dispatch(createIntent(SpaceAction.AddObject, { target: space, object: data.object }));\n return data.object;\n};\n"],
|
|
5
5
|
"mappings": "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",
|
|
6
6
|
"names": ["Capabilities", "contributes", "createIntent", "LayoutAction", "invariant", "ClientCapabilities", "PLANK_COMPANION_TYPE", "ATTENDABLE_PATH_SEPARATOR", "createExtension", "ROOT_ID", "memoizeQuery", "SPACE_TYPE", "SpaceAction", "Filter", "fullyQualifiedId", "getSpace", "isLiveObject", "context", "contributes", "Capabilities", "AppGraphBuilder", "createExtension", "id", "ASSISTANT_PLUGIN", "filter", "node", "ROOT_ID", "actions", "LayoutAction", "UpdateDialog", "_tag", "data", "dispatchPromise", "dispatch", "requestCapability", "IntentDispatcher", "client", "ClientCapabilities", "Client", "layout", "Layout", "graph", "AppGraph", "chat", "active", "length", "findNode", "space", "getSpace", "getOrCreateChat", "spaces", "default", "createIntent", "part", "subject", "ASSISTANT_DIALOG", "options", "state", "blockAlign", "props", "properties", "label", "ns", "icon", "disposition", "position", "keyBinding", "macos", "windows", "isLiveObject", "assistantChatQueue", "type", "AIChatType", "typename", "connector", "join", "ATTENDABLE_PATH_SEPARATOR", "PLANK_COMPANION_TYPE", "SPACE_TYPE", "templates", "memoizeQuery", "Filter", "schema", "TemplateType", "toSorted", "a", "b", "nameA", "name", "nameB", "localeCompare", "map", "template", "fullyQualifiedId", "objects", "db", "query", "run", "AssistantAction", "CreateChat", "spaceId", "invariant", "object", "SpaceAction", "AddObject", "target"]
|
|
7
7
|
}
|
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
import {
|
|
6
6
|
ServiceType,
|
|
7
7
|
categoryIcons
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-UZWYXNR5.mjs";
|
|
9
9
|
import {
|
|
10
10
|
ASSISTANT_PLUGIN
|
|
11
11
|
} from "./chunk-ECRK6TUQ.mjs";
|
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
import React, { useState, useEffect, Fragment } from "react";
|
|
15
15
|
import { Capabilities, useCapabilities } from "@dxos/app-framework";
|
|
16
16
|
import { parseToolName } from "@dxos/artifact";
|
|
17
|
-
import { FunctionType } from "@dxos/functions
|
|
17
|
+
import { FunctionType } from "@dxos/functions";
|
|
18
18
|
import { log as log3 } from "@dxos/log";
|
|
19
19
|
import { Filter, useQuery } from "@dxos/react-client/echo";
|
|
20
20
|
import { mx } from "@dxos/react-ui-theme";
|
|
@@ -22,11 +22,11 @@ import { mx } from "@dxos/react-ui-theme";
|
|
|
22
22
|
// packages/plugins/plugin-assistant/src/tools/function.ts
|
|
23
23
|
import { defineTool, ToolResult } from "@dxos/artifact";
|
|
24
24
|
import { toEffectSchema } from "@dxos/echo-schema";
|
|
25
|
-
import { getInvocationUrl, getUserFunctionUrlInMetadata } from "@dxos/functions
|
|
25
|
+
import { getInvocationUrl, getUserFunctionUrlInMetadata } from "@dxos/functions";
|
|
26
26
|
import { log } from "@dxos/log";
|
|
27
27
|
import { getMeta } from "@dxos/react-client/echo";
|
|
28
28
|
var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-assistant/src/tools/function.ts";
|
|
29
|
-
var
|
|
29
|
+
var convertFunctionToTool = (fn, edgeUrl, spaceId) => {
|
|
30
30
|
if (!fn.description || !fn.inputSchema) {
|
|
31
31
|
return void 0;
|
|
32
32
|
}
|
|
@@ -48,7 +48,7 @@ var covertFunctionToTool = (fn, edgeUrl, spaceId) => {
|
|
|
48
48
|
input
|
|
49
49
|
}, {
|
|
50
50
|
F: __dxlog_file,
|
|
51
|
-
L:
|
|
51
|
+
L: 34,
|
|
52
52
|
S: void 0,
|
|
53
53
|
C: (f, a) => f(...a)
|
|
54
54
|
});
|
|
@@ -65,9 +65,10 @@ var covertFunctionToTool = (fn, edgeUrl, spaceId) => {
|
|
|
65
65
|
};
|
|
66
66
|
|
|
67
67
|
// packages/plugins/plugin-assistant/src/tools/openapi.ts
|
|
68
|
+
import { Schema } from "effect";
|
|
68
69
|
import jsonpointer from "jsonpointer";
|
|
69
70
|
import { ToolResult as ToolResult2 } from "@dxos/artifact";
|
|
70
|
-
import { JsonSchemaType, normalizeSchema,
|
|
71
|
+
import { JsonSchemaType, normalizeSchema, toEffectSchema as toEffectSchema2 } from "@dxos/echo-schema";
|
|
71
72
|
import { invariant } from "@dxos/invariant";
|
|
72
73
|
import { log as log2 } from "@dxos/log";
|
|
73
74
|
import { deepMapValues } from "@dxos/util";
|
|
@@ -75,7 +76,7 @@ var __dxlog_file2 = "/home/runner/work/dxos/dxos/packages/plugins/plugin-assista
|
|
|
75
76
|
var createToolsFromService = async (service) => {
|
|
76
77
|
invariant(service.interfaces?.length === 1 && service.interfaces[0].kind === "api", void 0, {
|
|
77
78
|
F: __dxlog_file2,
|
|
78
|
-
L:
|
|
79
|
+
L: 23,
|
|
79
80
|
S: void 0,
|
|
80
81
|
A: [
|
|
81
82
|
"service.interfaces?.length === 1 && service.interfaces[0].kind === 'api'",
|
|
@@ -85,7 +86,7 @@ var createToolsFromService = async (service) => {
|
|
|
85
86
|
const iface = service.interfaces[0];
|
|
86
87
|
invariant(iface.schemaUrl, void 0, {
|
|
87
88
|
F: __dxlog_file2,
|
|
88
|
-
L:
|
|
89
|
+
L: 25,
|
|
89
90
|
S: void 0,
|
|
90
91
|
A: [
|
|
91
92
|
"iface.schemaUrl",
|
|
@@ -94,7 +95,7 @@ var createToolsFromService = async (service) => {
|
|
|
94
95
|
});
|
|
95
96
|
invariant(iface.schemaUrl, void 0, {
|
|
96
97
|
F: __dxlog_file2,
|
|
97
|
-
L:
|
|
98
|
+
L: 26,
|
|
98
99
|
S: void 0,
|
|
99
100
|
A: [
|
|
100
101
|
"iface.schemaUrl",
|
|
@@ -112,7 +113,7 @@ var createToolsFromApi = async (url, options) => {
|
|
|
112
113
|
spec
|
|
113
114
|
}, {
|
|
114
115
|
F: __dxlog_file2,
|
|
115
|
-
L:
|
|
116
|
+
L: 33,
|
|
116
117
|
S: void 0,
|
|
117
118
|
C: (f, a) => f(...a)
|
|
118
119
|
});
|
|
@@ -130,7 +131,7 @@ var createToolsFromApi = async (url, options) => {
|
|
|
130
131
|
methodItem
|
|
131
132
|
}, {
|
|
132
133
|
F: __dxlog_file2,
|
|
133
|
-
L:
|
|
134
|
+
L: 45,
|
|
134
135
|
S: void 0,
|
|
135
136
|
C: (f, a) => f(...a)
|
|
136
137
|
});
|
|
@@ -148,7 +149,7 @@ var createToolsFromApi = async (url, options) => {
|
|
|
148
149
|
parameter
|
|
149
150
|
}, {
|
|
150
151
|
F: __dxlog_file2,
|
|
151
|
-
L:
|
|
152
|
+
L: 60,
|
|
152
153
|
S: void 0,
|
|
153
154
|
C: (f, a) => f(...a)
|
|
154
155
|
});
|
|
@@ -171,11 +172,11 @@ var createToolsFromApi = async (url, options) => {
|
|
|
171
172
|
inputSchema
|
|
172
173
|
}, {
|
|
173
174
|
F: __dxlog_file2,
|
|
174
|
-
L:
|
|
175
|
+
L: 85,
|
|
175
176
|
S: void 0,
|
|
176
177
|
C: (f, a) => f(...a)
|
|
177
178
|
});
|
|
178
|
-
|
|
179
|
+
Schema.validateSync(JsonSchemaType)(inputSchema);
|
|
179
180
|
const description = methodItem.description ?? methodItem.summary;
|
|
180
181
|
if (!description) {
|
|
181
182
|
log2.warn("no description", {
|
|
@@ -183,7 +184,7 @@ var createToolsFromApi = async (url, options) => {
|
|
|
183
184
|
method
|
|
184
185
|
}, {
|
|
185
186
|
F: __dxlog_file2,
|
|
186
|
-
L:
|
|
187
|
+
L: 90,
|
|
187
188
|
S: void 0,
|
|
188
189
|
C: (f, a) => f(...a)
|
|
189
190
|
});
|
|
@@ -259,7 +260,7 @@ var callApiEndpoint = async (endpoint, input) => {
|
|
|
259
260
|
input
|
|
260
261
|
}, {
|
|
261
262
|
F: __dxlog_file2,
|
|
262
|
-
L:
|
|
263
|
+
L: 174,
|
|
263
264
|
S: void 0,
|
|
264
265
|
C: (f, a) => f(...a)
|
|
265
266
|
});
|
|
@@ -288,7 +289,7 @@ var callApiEndpoint = async (endpoint, input) => {
|
|
|
288
289
|
case "body": {
|
|
289
290
|
const value = input[parameter.name];
|
|
290
291
|
const effectSchema = toEffectSchema2(parameter.schema);
|
|
291
|
-
|
|
292
|
+
Schema.validateSync(effectSchema)(value);
|
|
292
293
|
if (body) {
|
|
293
294
|
throw new Error(`Duplicate body parameter: ${parameter.name}`);
|
|
294
295
|
}
|
|
@@ -318,7 +319,7 @@ var callApiEndpoint = async (endpoint, input) => {
|
|
|
318
319
|
request
|
|
319
320
|
}, {
|
|
320
321
|
F: __dxlog_file2,
|
|
321
|
-
L:
|
|
322
|
+
L: 237,
|
|
322
323
|
S: void 0,
|
|
323
324
|
C: (f, a) => f(...a)
|
|
324
325
|
});
|
|
@@ -329,7 +330,7 @@ var callApiEndpoint = async (endpoint, input) => {
|
|
|
329
330
|
statusText: response.statusText
|
|
330
331
|
}, {
|
|
331
332
|
F: __dxlog_file2,
|
|
332
|
-
L:
|
|
333
|
+
L: 240,
|
|
333
334
|
S: void 0,
|
|
334
335
|
C: (f, a) => f(...a)
|
|
335
336
|
});
|
|
@@ -353,7 +354,7 @@ var callApiEndpoint = async (endpoint, input) => {
|
|
|
353
354
|
error
|
|
354
355
|
}, {
|
|
355
356
|
F: __dxlog_file2,
|
|
356
|
-
L:
|
|
357
|
+
L: 258,
|
|
357
358
|
S: void 0,
|
|
358
359
|
C: (f, a) => f(...a)
|
|
359
360
|
});
|
|
@@ -364,7 +365,7 @@ var callApiEndpoint = async (endpoint, input) => {
|
|
|
364
365
|
error
|
|
365
366
|
}, {
|
|
366
367
|
F: __dxlog_file2,
|
|
367
|
-
L:
|
|
368
|
+
L: 262,
|
|
368
369
|
S: void 0,
|
|
369
370
|
C: (f, a) => f(...a)
|
|
370
371
|
});
|
|
@@ -379,7 +380,7 @@ var getEndpointUrl = (endpoint) => {
|
|
|
379
380
|
} else {
|
|
380
381
|
invariant(!isV3_1(endpoint.document), void 0, {
|
|
381
382
|
F: __dxlog_file2,
|
|
382
|
-
L:
|
|
383
|
+
L: 273,
|
|
383
384
|
S: void 0,
|
|
384
385
|
A: [
|
|
385
386
|
"!isV3_1(endpoint.document)",
|
|
@@ -399,7 +400,7 @@ var resolveAuthorization = async (authorization) => {
|
|
|
399
400
|
case "api-key": {
|
|
400
401
|
invariant(authorization.placement.type === "authorization-header", void 0, {
|
|
401
402
|
F: __dxlog_file2,
|
|
402
|
-
L:
|
|
403
|
+
L: 289,
|
|
403
404
|
S: void 0,
|
|
404
405
|
A: [
|
|
405
406
|
"authorization.placement.type === 'authorization-header'",
|
|
@@ -437,7 +438,7 @@ var resolveJsonSchema = (schema, base) => {
|
|
|
437
438
|
base
|
|
438
439
|
}, {
|
|
439
440
|
F: __dxlog_file2,
|
|
440
|
-
L:
|
|
441
|
+
L: 322,
|
|
441
442
|
S: void 0,
|
|
442
443
|
C: (f, a) => f(...a)
|
|
443
444
|
});
|
|
@@ -682,7 +683,7 @@ var ToolContainer = ({ classNames, items }) => {
|
|
|
682
683
|
// packages/plugins/plugin-assistant/src/components/Thread/ThreadMessage.tsx
|
|
683
684
|
var __dxlog_file5 = "/home/runner/work/dxos/dxos/packages/plugins/plugin-assistant/src/components/Thread/ThreadMessage.tsx";
|
|
684
685
|
var panelClassNames = "flex flex-col w-full px-2 bg-groupSurface rounded-md";
|
|
685
|
-
var userClassNames = "bg-[--user-fill] text-
|
|
686
|
+
var userClassNames = "bg-[--user-fill] text-accentSurfaceText";
|
|
686
687
|
var ToggleContainer2 = (props) => {
|
|
687
688
|
return /* @__PURE__ */ React3.createElement(NativeToggleContainer, {
|
|
688
689
|
...props,
|
|
@@ -1255,7 +1256,7 @@ import React5, { useRef as useRef2, useState as useState3 } from "react";
|
|
|
1255
1256
|
import { useVoiceInput } from "@dxos/plugin-transcription";
|
|
1256
1257
|
import { Icon as Icon2, IconButton as IconButton2, Tooltip, useTranslation } from "@dxos/react-ui";
|
|
1257
1258
|
import { Spinner } from "@dxos/react-ui-sfx";
|
|
1258
|
-
import {
|
|
1259
|
+
import { errorText, mx as mx4 } from "@dxos/react-ui-theme";
|
|
1259
1260
|
var PromptBar = ({ classNames, placeholder, processing, error, microphone, onCancel, references, ...props }) => {
|
|
1260
1261
|
const { t } = useTranslation(ASSISTANT_PLUGIN);
|
|
1261
1262
|
const promptRef = useRef2(null);
|
|
@@ -1271,15 +1272,14 @@ var PromptBar = ({ classNames, placeholder, processing, error, microphone, onCan
|
|
|
1271
1272
|
className: mx4("shrink-0 w-full grid grid-cols-[var(--rail-action)_1fr_var(--rail-action)] overflow-hidden", classNames)
|
|
1272
1273
|
}, /* @__PURE__ */ React5.createElement("div", {
|
|
1273
1274
|
className: "flex w-[--rail-action] h-[--rail-action] items-center justify-center"
|
|
1274
|
-
}, error && /* @__PURE__ */ React5.createElement(Tooltip.
|
|
1275
|
+
}, error && /* @__PURE__ */ React5.createElement(Tooltip.Trigger, {
|
|
1276
|
+
content: error.message,
|
|
1275
1277
|
delayDuration: 0
|
|
1276
|
-
}, /* @__PURE__ */ React5.createElement(
|
|
1278
|
+
}, /* @__PURE__ */ React5.createElement(Icon2, {
|
|
1277
1279
|
icon: "ph--warning-circle--regular",
|
|
1278
1280
|
classNames: errorText,
|
|
1279
1281
|
size: 5
|
|
1280
|
-
}))
|
|
1281
|
-
className: mx4("text-sm", errorMessageColors)
|
|
1282
|
-
}, error.message), /* @__PURE__ */ React5.createElement(Tooltip.Arrow, null)))) || /* @__PURE__ */ React5.createElement(Spinner, {
|
|
1282
|
+
})) || /* @__PURE__ */ React5.createElement(Spinner, {
|
|
1283
1283
|
active: processing
|
|
1284
1284
|
})), /* @__PURE__ */ React5.createElement(Prompt, {
|
|
1285
1285
|
ref: promptRef,
|
|
@@ -1386,12 +1386,12 @@ var Thread = ({ classNames, space, messages, collapse = true, transcription, pro
|
|
|
1386
1386
|
};
|
|
1387
1387
|
|
|
1388
1388
|
// packages/plugins/plugin-assistant/src/components/Thread/ThreadContainer.tsx
|
|
1389
|
-
import React7, { useCallback as useCallback3, useEffect as
|
|
1389
|
+
import React7, { useCallback as useCallback3, useEffect as useEffect5 } from "react";
|
|
1390
1390
|
import { CollaborationActions, createIntent, useIntentDispatcher as useIntentDispatcher2 } from "@dxos/app-framework";
|
|
1391
|
-
import { invariant as
|
|
1392
|
-
import { DXN as
|
|
1391
|
+
import { invariant as invariant4 } from "@dxos/invariant";
|
|
1392
|
+
import { DXN as DXN2 } from "@dxos/keys";
|
|
1393
1393
|
import { makeRef, refFromDXN } from "@dxos/live-object";
|
|
1394
|
-
import { log as
|
|
1394
|
+
import { log as log8 } from "@dxos/log";
|
|
1395
1395
|
import { getSpace as getSpace2 } from "@dxos/react-client/echo";
|
|
1396
1396
|
|
|
1397
1397
|
// packages/plugins/plugin-assistant/src/hooks/processor.ts
|
|
@@ -1579,7 +1579,7 @@ import { useEffect as useEffect3, useMemo as useMemo3, useState as useState4 } f
|
|
|
1579
1579
|
import { Capabilities as Capabilities2, useCapabilities as useCapabilities2, useCapability, useIntentDispatcher } from "@dxos/app-framework";
|
|
1580
1580
|
import { createSystemPrompt } from "@dxos/artifact";
|
|
1581
1581
|
import { DEFAULT_EDGE_MODEL as DEFAULT_EDGE_MODEL2, DEFAULT_OLLAMA_MODEL } from "@dxos/assistant";
|
|
1582
|
-
import { FunctionType as FunctionType2 } from "@dxos/functions
|
|
1582
|
+
import { FunctionType as FunctionType2 } from "@dxos/functions";
|
|
1583
1583
|
import { log as log6 } from "@dxos/log";
|
|
1584
1584
|
import { useConfig } from "@dxos/react-client";
|
|
1585
1585
|
import { Filter as Filter2, fullyQualifiedId, useQuery as useQuery2 } from "@dxos/react-client/echo";
|
|
@@ -1588,10 +1588,10 @@ import { isNonNullable as isNonNullable2 } from "@dxos/util";
|
|
|
1588
1588
|
// packages/plugins/plugin-assistant/src/capabilities/index.ts
|
|
1589
1589
|
import { lazy } from "@dxos/app-framework";
|
|
1590
1590
|
var AiClient = lazy(() => import("./ai-client-LYCBXZI7.mjs"));
|
|
1591
|
-
var AppGraphBuilder = lazy(() => import("./app-graph-builder-
|
|
1592
|
-
var IntentResolver = lazy(() => import("./intent-resolver-
|
|
1593
|
-
var ReactSurface = lazy(() => import("./react-surface-
|
|
1594
|
-
var Settings = lazy(() => import("./settings-
|
|
1591
|
+
var AppGraphBuilder = lazy(() => import("./app-graph-builder-ZDI7EVEN.mjs"));
|
|
1592
|
+
var IntentResolver = lazy(() => import("./intent-resolver-JKWFZYLN.mjs"));
|
|
1593
|
+
var ReactSurface = lazy(() => import("./react-surface-RZBDBP42.mjs"));
|
|
1594
|
+
var Settings = lazy(() => import("./settings-CLE57WEP.mjs"));
|
|
1595
1595
|
|
|
1596
1596
|
// packages/plugins/plugin-assistant/src/hooks/useChatProcessor.tsx
|
|
1597
1597
|
var __dxlog_file7 = "/home/runner/work/dxos/dxos/packages/plugins/plugin-assistant/src/hooks/useChatProcessor.tsx";
|
|
@@ -1638,7 +1638,7 @@ var useChatProcessor = ({
|
|
|
1638
1638
|
const tools2 = [
|
|
1639
1639
|
...globalTools.flat(),
|
|
1640
1640
|
...serviceTools,
|
|
1641
|
-
...functions.map((fn) =>
|
|
1641
|
+
...functions.map((fn) => convertFunctionToTool(fn, config.values.runtime?.services?.edge?.url ?? "", space?.id)).filter(isNonNullable2)
|
|
1642
1642
|
];
|
|
1643
1643
|
const extensions2 = {
|
|
1644
1644
|
space,
|
|
@@ -1691,37 +1691,15 @@ ${definition.instructions}`),
|
|
|
1691
1691
|
return processor;
|
|
1692
1692
|
};
|
|
1693
1693
|
|
|
1694
|
-
// packages/plugins/plugin-assistant/src/hooks/useLocalTriggerManager.ts
|
|
1695
|
-
import { useEffect as useEffect4, useState as useState5 } from "react";
|
|
1696
|
-
import { Mutex as Mutex2 } from "@dxos/async";
|
|
1697
|
-
import { Context } from "@dxos/context";
|
|
1698
|
-
import { createSubscriptionTrigger } from "@dxos/functions";
|
|
1699
|
-
import { FunctionTrigger } from "@dxos/functions/types";
|
|
1700
|
-
import { invariant as invariant5 } from "@dxos/invariant";
|
|
1701
|
-
import { log as log8 } from "@dxos/log";
|
|
1702
|
-
import { useClient } from "@dxos/react-client";
|
|
1703
|
-
import { Filter as Filter3, useQuery as useQuery3 } from "@dxos/react-client/echo";
|
|
1704
|
-
|
|
1705
|
-
// packages/plugins/plugin-assistant/src/hooks/invocation-handler.ts
|
|
1706
|
-
import { sleep } from "@dxos/async";
|
|
1707
|
-
import { getObjectCore, ResultFormat } from "@dxos/echo-db";
|
|
1708
|
-
import { FunctionType as FunctionType3, getUserFunctionUrlInMetadata as getUserFunctionUrlInMetadata2 } from "@dxos/functions/types";
|
|
1709
|
-
import { invariant as invariant4 } from "@dxos/invariant";
|
|
1710
|
-
import { DXN, LOCAL_SPACE_TAG } from "@dxos/keys";
|
|
1711
|
-
import { log as log7 } from "@dxos/log";
|
|
1712
|
-
|
|
1713
|
-
// packages/plugins/plugin-assistant/src/hooks/useLocalTriggerManager.ts
|
|
1714
|
-
var registerTriggersMutex = new Mutex2();
|
|
1715
|
-
|
|
1716
1694
|
// packages/plugins/plugin-assistant/src/hooks/useMessageQueue.ts
|
|
1717
1695
|
import { useMemo as useMemo4 } from "react";
|
|
1718
|
-
import { DXN
|
|
1696
|
+
import { DXN, QueueSubspaceTags } from "@dxos/keys";
|
|
1719
1697
|
import { getSpace, useQueue } from "@dxos/react-client/echo";
|
|
1720
1698
|
var useMessageQueue = (chat) => {
|
|
1721
1699
|
const space = getSpace(chat);
|
|
1722
1700
|
const queueDxn = useMemo4(() => {
|
|
1723
1701
|
const dxn = space && chat?.assistantChatQueue.dxn;
|
|
1724
|
-
return dxn ? new
|
|
1702
|
+
return dxn ? new DXN(DXN.kind.QUEUE, [
|
|
1725
1703
|
QueueSubspaceTags.DATA,
|
|
1726
1704
|
space.id,
|
|
1727
1705
|
dxn.parts.at(-1)
|
|
@@ -1734,7 +1712,7 @@ var useMessageQueue = (chat) => {
|
|
|
1734
1712
|
};
|
|
1735
1713
|
|
|
1736
1714
|
// packages/plugins/plugin-assistant/src/hooks/useServices.ts
|
|
1737
|
-
import { useEffect as
|
|
1715
|
+
import { useEffect as useEffect4, useMemo as useMemo5, useState as useState5 } from "react";
|
|
1738
1716
|
|
|
1739
1717
|
// packages/plugins/plugin-assistant/src/testing/test-functions.ts
|
|
1740
1718
|
import { createSystemPrompt as createSystemPrompt2 } from "@dxos/artifact";
|
|
@@ -1830,14 +1808,15 @@ var TEST_SERVICES = [
|
|
|
1830
1808
|
];
|
|
1831
1809
|
|
|
1832
1810
|
// packages/plugins/plugin-assistant/src/hooks/useTextInputEvents.ts
|
|
1833
|
-
import { useState as
|
|
1811
|
+
import { useState as useState6, useCallback as useCallback2 } from "react";
|
|
1834
1812
|
|
|
1835
1813
|
// packages/plugins/plugin-assistant/src/hooks/useContextProvider.ts
|
|
1836
1814
|
import { useMemo as useMemo6 } from "react";
|
|
1837
1815
|
import { Capabilities as Capabilities3, useCapabilities as useCapabilities3 } from "@dxos/app-framework";
|
|
1838
|
-
import {
|
|
1839
|
-
import {
|
|
1840
|
-
import {
|
|
1816
|
+
import { Filter as Filter3 } from "@dxos/client/echo";
|
|
1817
|
+
import { Type } from "@dxos/echo";
|
|
1818
|
+
import { getLabel } from "@dxos/echo-schema";
|
|
1819
|
+
import { log as log7 } from "@dxos/log";
|
|
1841
1820
|
var __dxlog_file8 = "/home/runner/work/dxos/dxos/packages/plugins/plugin-assistant/src/hooks/useContextProvider.ts";
|
|
1842
1821
|
var stringMatch = (query, label) => label.toLowerCase().startsWith(query.toLowerCase());
|
|
1843
1822
|
var useContextProvider = (space) => {
|
|
@@ -1849,11 +1828,11 @@ var useContextProvider = (space) => {
|
|
|
1849
1828
|
return {
|
|
1850
1829
|
query: async ({ query }) => {
|
|
1851
1830
|
const artifactSchemas = artifactDefinitions.map((artifact) => artifact.schema);
|
|
1852
|
-
const { objects } = await space.db.query(
|
|
1831
|
+
const { objects } = await space.db.query(Filter3.or(...artifactSchemas.map((schema) => Filter3.schema(schema)))).run();
|
|
1853
1832
|
return objects.map((object) => {
|
|
1854
|
-
|
|
1833
|
+
log7.info("object", {
|
|
1855
1834
|
object,
|
|
1856
|
-
label: getLabel(getSchema(object), object)
|
|
1835
|
+
label: getLabel(Type.getSchema(object), object)
|
|
1857
1836
|
}, {
|
|
1858
1837
|
F: __dxlog_file8,
|
|
1859
1838
|
L: 36,
|
|
@@ -1861,9 +1840,9 @@ var useContextProvider = (space) => {
|
|
|
1861
1840
|
C: (f, a) => f(...a)
|
|
1862
1841
|
});
|
|
1863
1842
|
return object;
|
|
1864
|
-
}).filter((object) => stringMatch(query, getLabel(getSchema(object), object) ?? "")).filter((object) => !!getDXN(object)).map((object) => ({
|
|
1865
|
-
uri: getDXN(object).toString(),
|
|
1866
|
-
label: getLabel(getSchema(object), object) ?? ""
|
|
1843
|
+
}).filter((object) => stringMatch(query, getLabel(Type.getSchema(object), object) ?? "")).filter((object) => !!Type.getDXN(object)).map((object) => ({
|
|
1844
|
+
uri: Type.getDXN(object).toString(),
|
|
1845
|
+
label: getLabel(Type.getSchema(object), object) ?? ""
|
|
1867
1846
|
}));
|
|
1868
1847
|
},
|
|
1869
1848
|
resolveMetadata: async ({ uri }) => {
|
|
@@ -1872,7 +1851,7 @@ var useContextProvider = (space) => {
|
|
|
1872
1851
|
}).first();
|
|
1873
1852
|
return {
|
|
1874
1853
|
uri,
|
|
1875
|
-
label: getLabel(getSchema(object), object) ?? ""
|
|
1854
|
+
label: getLabel(Type.getSchema(object), object) ?? ""
|
|
1876
1855
|
};
|
|
1877
1856
|
}
|
|
1878
1857
|
};
|
|
@@ -1900,14 +1879,14 @@ var ThreadContainer = ({ classNames, chat, settings, part, associatedArtifact, o
|
|
|
1900
1879
|
...messageQueue?.items ?? [],
|
|
1901
1880
|
...processor.messages.value
|
|
1902
1881
|
];
|
|
1903
|
-
|
|
1882
|
+
useEffect5(() => {
|
|
1904
1883
|
if (!processor.streaming.value && messageQueue?.items) {
|
|
1905
1884
|
const message = messageQueue.items[messageQueue.items.length - 1];
|
|
1906
1885
|
if (space && chat && message && dispatch && associatedArtifact) {
|
|
1907
1886
|
void dispatch(createIntent(CollaborationActions.InsertContent, {
|
|
1908
1887
|
spaceId: space.id,
|
|
1909
1888
|
target: makeRef(associatedArtifact),
|
|
1910
|
-
object: refFromDXN(new
|
|
1889
|
+
object: refFromDXN(new DXN2(DXN2.kind.QUEUE, [
|
|
1911
1890
|
...chat.assistantChatQueue.dxn.parts,
|
|
1912
1891
|
message.id
|
|
1913
1892
|
])),
|
|
@@ -1922,7 +1901,7 @@ var ThreadContainer = ({ classNames, chat, settings, part, associatedArtifact, o
|
|
|
1922
1901
|
]);
|
|
1923
1902
|
const handleSubmit = useCallback3((text) => {
|
|
1924
1903
|
if (processor.streaming.value) {
|
|
1925
|
-
|
|
1904
|
+
log8.warn("ignoring submit; still processing.", void 0, {
|
|
1926
1905
|
F: __dxlog_file9,
|
|
1927
1906
|
L: 66,
|
|
1928
1907
|
S: void 0,
|
|
@@ -1931,7 +1910,7 @@ var ThreadContainer = ({ classNames, chat, settings, part, associatedArtifact, o
|
|
|
1931
1910
|
return false;
|
|
1932
1911
|
}
|
|
1933
1912
|
onOpenChange?.(true);
|
|
1934
|
-
|
|
1913
|
+
invariant4(messageQueue, void 0, {
|
|
1935
1914
|
F: __dxlog_file9,
|
|
1936
1915
|
L: 72,
|
|
1937
1916
|
S: void 0,
|
|
@@ -1986,4 +1965,4 @@ export {
|
|
|
1986
1965
|
Settings,
|
|
1987
1966
|
ThreadContainer
|
|
1988
1967
|
};
|
|
1989
|
-
//# sourceMappingURL=chunk-
|
|
1968
|
+
//# sourceMappingURL=chunk-RDU7QEFL.mjs.map
|