@dxos/plugin-assistant 0.8.2-main.f11618f → 0.8.2-main.fbd8ed0

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 (166) hide show
  1. package/dist/lib/browser/{AssistantDialog-I47GUXWR.mjs → AssistantDialog-DTWVEQBB.mjs} +3 -3
  2. package/dist/lib/browser/{ChatContainer-GAYN3FEF.mjs → ChatContainer-ZNKENYKZ.mjs} +3 -3
  3. package/dist/lib/browser/{ai-client-OK5SMYJC.mjs → ai-client-5PRCXI7N.mjs} +3 -3
  4. package/dist/lib/browser/ai-client-5PRCXI7N.mjs.map +7 -0
  5. package/dist/lib/browser/{app-graph-builder-ZXKGE3H5.mjs → app-graph-builder-HTK3HFGM.mjs} +71 -61
  6. package/dist/lib/browser/app-graph-builder-HTK3HFGM.mjs.map +7 -0
  7. package/dist/lib/browser/chunk-5P7U35RJ.mjs +192 -0
  8. package/dist/lib/browser/chunk-5P7U35RJ.mjs.map +7 -0
  9. package/dist/lib/browser/{chunk-BGMQ2YYP.mjs → chunk-7VDZP5WX.mjs} +4 -4
  10. package/dist/lib/browser/{chunk-BGMQ2YYP.mjs.map → chunk-7VDZP5WX.mjs.map} +2 -2
  11. package/dist/lib/browser/{chunk-7CAHKTZQ.mjs → chunk-OWZHLWW5.mjs} +66 -91
  12. package/dist/lib/browser/chunk-OWZHLWW5.mjs.map +7 -0
  13. package/dist/lib/browser/index.mjs +3 -3
  14. package/dist/lib/browser/{intent-resolver-W6XREK5F.mjs → intent-resolver-QV5AAVJZ.mjs} +4 -9
  15. package/dist/lib/browser/intent-resolver-QV5AAVJZ.mjs.map +7 -0
  16. package/dist/lib/browser/meta.json +1 -1
  17. package/dist/lib/browser/{react-surface-QMI5KG4H.mjs → react-surface-JJPYWEIN.mjs} +9 -9
  18. package/dist/lib/browser/react-surface-JJPYWEIN.mjs.map +7 -0
  19. package/dist/lib/browser/{settings-LAJZQI4H.mjs → settings-OZX7J65A.mjs} +2 -2
  20. package/dist/lib/browser/types/index.mjs +1 -1
  21. package/dist/lib/node/{AssistantDialog-SDS2TE5L.cjs → AssistantDialog-RJJHZI63.cjs} +7 -7
  22. package/dist/lib/node/{ChatContainer-U6AVMAHY.cjs → ChatContainer-WVAAOEOH.cjs} +7 -7
  23. package/dist/lib/node/{ai-client-3EVTLXTT.cjs → ai-client-OUPSRQT7.cjs} +6 -6
  24. package/dist/lib/node/ai-client-OUPSRQT7.cjs.map +7 -0
  25. package/dist/lib/node/{app-graph-builder-TXHPXIIC.cjs → app-graph-builder-LEO63CZZ.cjs} +74 -64
  26. package/dist/lib/node/app-graph-builder-LEO63CZZ.cjs.map +7 -0
  27. package/dist/lib/node/{chunk-XBJO453B.cjs → chunk-GQ3XS5FZ.cjs} +9 -9
  28. package/dist/lib/node/{chunk-XBJO453B.cjs.map → chunk-GQ3XS5FZ.cjs.map} +2 -2
  29. package/dist/lib/node/{chunk-CWHFK36A.cjs → chunk-OOHFSPWR.cjs} +72 -91
  30. package/dist/lib/node/chunk-OOHFSPWR.cjs.map +7 -0
  31. package/dist/lib/node/{chunk-5UELRDHQ.cjs → chunk-VG2UQY4S.cjs} +74 -72
  32. package/dist/lib/node/chunk-VG2UQY4S.cjs.map +7 -0
  33. package/dist/lib/node/index.cjs +39 -39
  34. package/dist/lib/node/{intent-resolver-MUJMV7II.cjs → intent-resolver-QDGZMWLY.cjs} +10 -15
  35. package/dist/lib/node/intent-resolver-QDGZMWLY.cjs.map +7 -0
  36. package/dist/lib/node/meta.json +1 -1
  37. package/dist/lib/node/{react-surface-SAJF4XBB.cjs → react-surface-XNEIJJYJ.cjs} +22 -22
  38. package/dist/lib/node/react-surface-XNEIJJYJ.cjs.map +7 -0
  39. package/dist/lib/node/{settings-NPXTE6ND.cjs → settings-WLTC7XO5.cjs} +6 -6
  40. package/dist/lib/node/types/index.cjs +13 -13
  41. package/dist/lib/node/types/index.cjs.map +1 -1
  42. package/dist/lib/node-esm/{AssistantDialog-KGA5HBFO.mjs → AssistantDialog-D33WZUGR.mjs} +3 -3
  43. package/dist/lib/node-esm/{ChatContainer-XPNXNPSW.mjs → ChatContainer-FAYGNMQW.mjs} +3 -3
  44. package/dist/lib/node-esm/{ai-client-LYCBXZI7.mjs → ai-client-RZQWEDUX.mjs} +3 -3
  45. package/dist/lib/node-esm/ai-client-RZQWEDUX.mjs.map +7 -0
  46. package/dist/lib/node-esm/{app-graph-builder-SV4WC2E2.mjs → app-graph-builder-WXJNZDYB.mjs} +71 -61
  47. package/dist/lib/node-esm/app-graph-builder-WXJNZDYB.mjs.map +7 -0
  48. package/dist/lib/node-esm/{chunk-R7Q3OHWG.mjs → chunk-74GFINWJ.mjs} +4 -4
  49. package/dist/lib/node-esm/{chunk-R7Q3OHWG.mjs.map → chunk-74GFINWJ.mjs.map} +2 -2
  50. package/dist/lib/node-esm/{chunk-XFUXN5QU.mjs → chunk-ED55ZE4G.mjs} +66 -91
  51. package/dist/lib/node-esm/chunk-ED55ZE4G.mjs.map +7 -0
  52. package/dist/lib/node-esm/chunk-UZWYXNR5.mjs +193 -0
  53. package/dist/lib/node-esm/chunk-UZWYXNR5.mjs.map +7 -0
  54. package/dist/lib/node-esm/index.mjs +3 -3
  55. package/dist/lib/node-esm/{intent-resolver-DZY2O2DG.mjs → intent-resolver-Q3I6S6HN.mjs} +4 -9
  56. package/dist/lib/node-esm/intent-resolver-Q3I6S6HN.mjs.map +7 -0
  57. package/dist/lib/node-esm/meta.json +1 -1
  58. package/dist/lib/node-esm/{react-surface-R43NHNMC.mjs → react-surface-RI3JONQY.mjs} +9 -9
  59. package/dist/lib/node-esm/react-surface-RI3JONQY.mjs.map +7 -0
  60. package/dist/lib/node-esm/{settings-K3JDH2I5.mjs → settings-CLE57WEP.mjs} +2 -2
  61. package/dist/lib/node-esm/types/index.mjs +1 -1
  62. package/dist/types/src/capabilities/ai-client.d.ts +2 -2
  63. package/dist/types/src/capabilities/ai-client.d.ts.map +1 -1
  64. package/dist/types/src/capabilities/app-graph-builder.d.ts +2 -179
  65. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  66. package/dist/types/src/capabilities/index.d.ts +2 -178
  67. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  68. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  69. package/dist/types/src/components/AmbientDialog/AmbientDialog.d.ts.map +1 -1
  70. package/dist/types/src/components/AssistantSettings/AssistantSettings.d.ts.map +1 -1
  71. package/dist/types/src/components/Prompt/PromptBar.d.ts.map +1 -1
  72. package/dist/types/src/components/Prompt/autocomplete.d.ts.map +1 -1
  73. package/dist/types/src/components/Prompt/references.d.ts.map +1 -1
  74. package/dist/types/src/components/PromptSettings.d.ts.map +1 -1
  75. package/dist/types/src/components/TemplateContainer.d.ts.map +1 -1
  76. package/dist/types/src/components/TemplateEditor/TemplateEditor.d.ts.map +1 -1
  77. package/dist/types/src/components/TemplateEditor/TemplateEditor.stories.d.ts.map +1 -1
  78. package/dist/types/src/components/TemplateEditor/TemplateForm.d.ts +2 -2
  79. package/dist/types/src/components/TemplateEditor/TemplateForm.d.ts.map +1 -1
  80. package/dist/types/src/components/Thread/Thread.d.ts.map +1 -1
  81. package/dist/types/src/components/Thread/Thread.stories.d.ts.map +1 -1
  82. package/dist/types/src/components/Thread/ThreadContainer.stories.d.ts +2 -2
  83. package/dist/types/src/components/Thread/ThreadContainer.stories.d.ts.map +1 -1
  84. package/dist/types/src/components/Thread/ToolInvocations.d.ts.map +1 -1
  85. package/dist/types/src/components/Toolbox/Toolbox.d.ts +1 -1
  86. package/dist/types/src/components/Toolbox/Toolbox.d.ts.map +1 -1
  87. package/dist/types/src/hooks/index.d.ts +0 -1
  88. package/dist/types/src/hooks/index.d.ts.map +1 -1
  89. package/dist/types/src/hooks/useChatProcessor.d.ts.map +1 -1
  90. package/dist/types/src/hooks/useContextProvider.d.ts +1 -1
  91. package/dist/types/src/hooks/useContextProvider.d.ts.map +1 -1
  92. package/dist/types/src/hooks/useMessageQueue.d.ts.map +1 -1
  93. package/dist/types/src/hooks/useServices.d.ts.map +1 -1
  94. package/dist/types/src/hooks/useTextInputEvents.d.ts.map +1 -1
  95. package/dist/types/src/testing/test-functions.d.ts.map +1 -1
  96. package/dist/types/src/tools/function.d.ts +2 -2
  97. package/dist/types/src/tools/function.d.ts.map +1 -1
  98. package/dist/types/src/tools/openapi.d.ts.map +1 -1
  99. package/dist/types/src/translations.d.ts +6 -60
  100. package/dist/types/src/translations.d.ts.map +1 -1
  101. package/dist/types/src/types/service.d.ts +96 -95
  102. package/dist/types/src/types/service.d.ts.map +1 -1
  103. package/dist/types/src/types/template.d.ts +52 -52
  104. package/dist/types/src/types/template.d.ts.map +1 -1
  105. package/dist/types/src/types/types.d.ts +19 -19
  106. package/dist/types/src/types/types.d.ts.map +1 -1
  107. package/dist/types/tsconfig.tsbuildinfo +1 -1
  108. package/package.json +64 -58
  109. package/src/capabilities/ai-client.ts +4 -4
  110. package/src/capabilities/app-graph-builder.ts +166 -106
  111. package/src/capabilities/intent-resolver.ts +2 -5
  112. package/src/capabilities/react-surface.tsx +5 -5
  113. package/src/components/AmbientDialog/AmbientDialog.stories.tsx +1 -1
  114. package/src/components/Prompt/Prompt.stories.tsx +1 -1
  115. package/src/components/Prompt/PromptBar.tsx +4 -12
  116. package/src/components/PromptSettings.tsx +2 -2
  117. package/src/components/TemplateEditor/TemplateForm.tsx +2 -2
  118. package/src/components/Thread/Thread.stories.tsx +12 -15
  119. package/src/components/Thread/ThreadContainer.stories.tsx +7 -7
  120. package/src/components/Thread/ThreadMessage.tsx +1 -1
  121. package/src/components/Toolbox/Toolbox.stories.tsx +2 -2
  122. package/src/components/Toolbox/Toolbox.tsx +3 -3
  123. package/src/hooks/index.ts +0 -1
  124. package/src/hooks/useChatProcessor.tsx +5 -5
  125. package/src/hooks/useContextProvider.ts +20 -16
  126. package/src/hooks/useMessageQueue.ts +2 -2
  127. package/src/tools/function.ts +4 -6
  128. package/src/tools/openapi.ts +4 -3
  129. package/src/types/service.ts +39 -37
  130. package/src/types/template.ts +27 -25
  131. package/src/types/types.ts +18 -18
  132. package/dist/lib/browser/ai-client-OK5SMYJC.mjs.map +0 -7
  133. package/dist/lib/browser/app-graph-builder-ZXKGE3H5.mjs.map +0 -7
  134. package/dist/lib/browser/chunk-7CAHKTZQ.mjs.map +0 -7
  135. package/dist/lib/browser/chunk-E7BN4QKP.mjs +0 -190
  136. package/dist/lib/browser/chunk-E7BN4QKP.mjs.map +0 -7
  137. package/dist/lib/browser/intent-resolver-W6XREK5F.mjs.map +0 -7
  138. package/dist/lib/browser/react-surface-QMI5KG4H.mjs.map +0 -7
  139. package/dist/lib/node/ai-client-3EVTLXTT.cjs.map +0 -7
  140. package/dist/lib/node/app-graph-builder-TXHPXIIC.cjs.map +0 -7
  141. package/dist/lib/node/chunk-5UELRDHQ.cjs.map +0 -7
  142. package/dist/lib/node/chunk-CWHFK36A.cjs.map +0 -7
  143. package/dist/lib/node/intent-resolver-MUJMV7II.cjs.map +0 -7
  144. package/dist/lib/node/react-surface-SAJF4XBB.cjs.map +0 -7
  145. package/dist/lib/node-esm/ai-client-LYCBXZI7.mjs.map +0 -7
  146. package/dist/lib/node-esm/app-graph-builder-SV4WC2E2.mjs.map +0 -7
  147. package/dist/lib/node-esm/chunk-ECYNZYEG.mjs +0 -191
  148. package/dist/lib/node-esm/chunk-ECYNZYEG.mjs.map +0 -7
  149. package/dist/lib/node-esm/chunk-XFUXN5QU.mjs.map +0 -7
  150. package/dist/lib/node-esm/intent-resolver-DZY2O2DG.mjs.map +0 -7
  151. package/dist/lib/node-esm/react-surface-R43NHNMC.mjs.map +0 -7
  152. package/dist/types/src/hooks/invocation-handler.d.ts +0 -5
  153. package/dist/types/src/hooks/invocation-handler.d.ts.map +0 -1
  154. package/dist/types/src/hooks/useLocalTriggerManager.d.ts +0 -3
  155. package/dist/types/src/hooks/useLocalTriggerManager.d.ts.map +0 -1
  156. package/src/hooks/invocation-handler.ts +0 -107
  157. package/src/hooks/useLocalTriggerManager.ts +0 -82
  158. /package/dist/lib/browser/{AssistantDialog-I47GUXWR.mjs.map → AssistantDialog-DTWVEQBB.mjs.map} +0 -0
  159. /package/dist/lib/browser/{ChatContainer-GAYN3FEF.mjs.map → ChatContainer-ZNKENYKZ.mjs.map} +0 -0
  160. /package/dist/lib/browser/{settings-LAJZQI4H.mjs.map → settings-OZX7J65A.mjs.map} +0 -0
  161. /package/dist/lib/node/{AssistantDialog-SDS2TE5L.cjs.map → AssistantDialog-RJJHZI63.cjs.map} +0 -0
  162. /package/dist/lib/node/{ChatContainer-U6AVMAHY.cjs.map → ChatContainer-WVAAOEOH.cjs.map} +0 -0
  163. /package/dist/lib/node/{settings-NPXTE6ND.cjs.map → settings-WLTC7XO5.cjs.map} +0 -0
  164. /package/dist/lib/node-esm/{AssistantDialog-KGA5HBFO.mjs.map → AssistantDialog-D33WZUGR.mjs.map} +0 -0
  165. /package/dist/lib/node-esm/{ChatContainer-XPNXNPSW.mjs.map → ChatContainer-FAYGNMQW.mjs.map} +0 -0
  166. /package/dist/lib/node-esm/{settings-K3JDH2I5.mjs.map → settings-CLE57WEP.mjs.map} +0 -0
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  ThreadContainer
3
- } from "./chunk-7CAHKTZQ.mjs";
3
+ } from "./chunk-OWZHLWW5.mjs";
4
4
  import "./chunk-TXJWGWJ7.mjs";
5
- import "./chunk-E7BN4QKP.mjs";
5
+ import "./chunk-5P7U35RJ.mjs";
6
6
  import {
7
7
  ASSISTANT_PLUGIN
8
8
  } from "./chunk-3HCI5FIL.mjs";
@@ -114,4 +114,4 @@ export {
114
114
  AssistantDialog,
115
115
  AssistantDialog_default as default
116
116
  };
117
- //# sourceMappingURL=AssistantDialog-I47GUXWR.mjs.map
117
+ //# sourceMappingURL=AssistantDialog-DTWVEQBB.mjs.map
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  ThreadContainer
3
- } from "./chunk-7CAHKTZQ.mjs";
3
+ } from "./chunk-OWZHLWW5.mjs";
4
4
  import "./chunk-TXJWGWJ7.mjs";
5
- import "./chunk-E7BN4QKP.mjs";
5
+ import "./chunk-5P7U35RJ.mjs";
6
6
  import {
7
7
  ASSISTANT_PLUGIN
8
8
  } from "./chunk-3HCI5FIL.mjs";
@@ -30,4 +30,4 @@ export {
30
30
  ChatContainer,
31
31
  ChatContainer_default as default
32
32
  };
33
- //# sourceMappingURL=ChatContainer-GAYN3FEF.mjs.map
33
+ //# sourceMappingURL=ChatContainer-ZNKENYKZ.mjs.map
@@ -12,13 +12,13 @@ import { AIServiceEdgeClient, OllamaClient } from "@dxos/assistant";
12
12
  import { ClientCapabilities } from "@dxos/plugin-client";
13
13
  var DEFAULT_AI_SERVICE_URL = "http://localhost:8788";
14
14
  var ai_client_default = (context) => {
15
- const client = context.requestCapability(ClientCapabilities.Client);
15
+ const client = context.getCapability(ClientCapabilities.Client);
16
16
  const endpoint = client.config.values.runtime?.services?.ai?.server ?? DEFAULT_AI_SERVICE_URL;
17
17
  const ai = signal(new AIServiceEdgeClient({
18
18
  endpoint
19
19
  }));
20
20
  const unsubscribe = effect(() => {
21
- const settings = context.requestCapability(Capabilities.SettingsStore).getStore(ASSISTANT_PLUGIN)?.value;
21
+ const settings = context.getCapability(Capabilities.SettingsStore).getStore(ASSISTANT_PLUGIN)?.value;
22
22
  if (settings?.llmProvider === "ollama") {
23
23
  ai.value = new OllamaClient();
24
24
  } else {
@@ -32,4 +32,4 @@ var ai_client_default = (context) => {
32
32
  export {
33
33
  ai_client_default as default
34
34
  };
35
- //# sourceMappingURL=ai-client-OK5SMYJC.mjs.map
35
+ //# sourceMappingURL=ai-client-5PRCXI7N.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/ai-client.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { effect, signal } from '@preact/signals-core';\n\nimport { Capabilities, contributes, type PluginContext } from '@dxos/app-framework';\nimport { type AIServiceClient, AIServiceEdgeClient, OllamaClient } from '@dxos/assistant';\nimport { ClientCapabilities } from '@dxos/plugin-client';\n\nimport { AssistantCapabilities } from './capabilities';\nimport { ASSISTANT_PLUGIN } from '../meta';\nimport { type AssistantSettingsProps } from '../types';\n\n// TODO(wittjosiah): Factor out.\nconst DEFAULT_AI_SERVICE_URL = 'http://localhost:8788';\n\nexport default (context: PluginContext) => {\n const client = context.getCapability(ClientCapabilities.Client);\n const endpoint = client.config.values.runtime?.services?.ai?.server ?? DEFAULT_AI_SERVICE_URL;\n\n const ai = signal<AIServiceClient>(new AIServiceEdgeClient({ endpoint }));\n\n const unsubscribe = effect(() => {\n const settings = context\n .getCapability(Capabilities.SettingsStore)\n .getStore<AssistantSettingsProps>(ASSISTANT_PLUGIN)?.value;\n\n if (settings?.llmProvider === 'ollama') {\n ai.value = new OllamaClient();\n } else {\n ai.value = new AIServiceEdgeClient({ endpoint });\n }\n });\n\n return contributes(AssistantCapabilities.AiClient, ai, () => unsubscribe());\n};\n"],
5
+ "mappings": ";;;;;;;;AAIA,SAASA,QAAQC,cAAc;AAE/B,SAASC,cAAcC,mBAAuC;AAC9D,SAA+BC,qBAAqBC,oBAAoB;AACxE,SAASC,0BAA0B;AAOnC,IAAMC,yBAAyB;AAE/B,IAAA,oBAAe,CAACC,YAAAA;AACd,QAAMC,SAASD,QAAQE,cAAcC,mBAAmBC,MAAM;AAC9D,QAAMC,WAAWJ,OAAOK,OAAOC,OAAOC,SAASC,UAAUC,IAAIC,UAAUZ;AAEvE,QAAMW,KAAKE,OAAwB,IAAIC,oBAAoB;IAAER;EAAS,CAAA,CAAA;AAEtE,QAAMS,cAAcC,OAAO,MAAA;AACzB,UAAMC,WAAWhB,QACdE,cAAce,aAAaC,aAAa,EACxCC,SAAiCC,gBAAAA,GAAmBC;AAEvD,QAAIL,UAAUM,gBAAgB,UAAU;AACtCZ,SAAGW,QAAQ,IAAIE,aAAAA;IACjB,OAAO;AACLb,SAAGW,QAAQ,IAAIR,oBAAoB;QAAER;MAAS,CAAA;IAChD;EACF,CAAA;AAEA,SAAOmB,YAAYC,sBAAsBC,UAAUhB,IAAI,MAAMI,YAAAA,CAAAA;AAC/D;",
6
+ "names": ["effect", "signal", "Capabilities", "contributes", "AIServiceEdgeClient", "OllamaClient", "ClientCapabilities", "DEFAULT_AI_SERVICE_URL", "context", "client", "getCapability", "ClientCapabilities", "Client", "endpoint", "config", "values", "runtime", "services", "ai", "server", "signal", "AIServiceEdgeClient", "unsubscribe", "effect", "settings", "Capabilities", "SettingsStore", "getStore", "ASSISTANT_PLUGIN", "value", "llmProvider", "OllamaClient", "contributes", "AssistantCapabilities", "AiClient"]
7
+ }
@@ -2,39 +2,40 @@ import {
2
2
  AIChatType,
3
3
  AssistantAction,
4
4
  TemplateType
5
- } from "./chunk-E7BN4QKP.mjs";
5
+ } from "./chunk-5P7U35RJ.mjs";
6
6
  import {
7
7
  ASSISTANT_DIALOG,
8
8
  ASSISTANT_PLUGIN
9
9
  } from "./chunk-3HCI5FIL.mjs";
10
10
 
11
11
  // packages/plugins/plugin-assistant/src/capabilities/app-graph-builder.ts
12
+ import { Rx } from "@effect-rx/rx-react";
13
+ import { Option, pipe } from "effect";
12
14
  import { Capabilities, contributes, createIntent, LayoutAction } from "@dxos/app-framework";
13
15
  import { invariant } from "@dxos/invariant";
14
16
  import { ClientCapabilities } from "@dxos/plugin-client";
15
17
  import { PLANK_COMPANION_TYPE, ATTENDABLE_PATH_SEPARATOR } from "@dxos/plugin-deck/types";
16
18
  import { createExtension, ROOT_ID } from "@dxos/plugin-graph";
17
- import { memoizeQuery } from "@dxos/plugin-space";
19
+ import { rxFromQuery } from "@dxos/plugin-space";
18
20
  import { SPACE_TYPE, SpaceAction } from "@dxos/plugin-space/types";
19
- import { Filter, fullyQualifiedId, getSpace, isLiveObject } from "@dxos/react-client/echo";
21
+ import { Filter, fullyQualifiedId, getSpace, isLiveObject, isSpace, Query } from "@dxos/react-client/echo";
20
22
  var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-assistant/src/capabilities/app-graph-builder.ts";
21
23
  var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBuilder, [
22
24
  createExtension({
23
25
  id: `${ASSISTANT_PLUGIN}/assistant`,
24
- filter: (node) => node.id === ROOT_ID,
25
- actions: () => [
26
+ actions: (node) => Rx.make((get) => pipe(get(node), Option.flatMap((node2) => node2.id === ROOT_ID ? Option.some(node2) : Option.none()), Option.map(() => [
26
27
  {
27
28
  id: `${LayoutAction.UpdateDialog._tag}/assistant/open`,
28
29
  data: async () => {
29
- const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);
30
- const client = context.requestCapability(ClientCapabilities.Client);
31
- const layout = context.requestCapability(Capabilities.Layout);
32
- const { graph } = context.requestCapability(Capabilities.AppGraph);
30
+ const { dispatchPromise: dispatch } = context.getCapability(Capabilities.IntentDispatcher);
31
+ const client = context.getCapability(ClientCapabilities.Client);
32
+ const layout = context.getCapability(Capabilities.Layout);
33
+ const { graph } = context.getCapability(Capabilities.AppGraph);
33
34
  let chat;
34
35
  if (layout.active.length > 0) {
35
- const node = graph.findNode(layout.active[0]);
36
- if (node) {
37
- const space = getSpace(node.data);
36
+ const node2 = graph.getNode(layout.active[0]).pipe(Option.getOrNull);
37
+ if (node2) {
38
+ const space = getSpace(node2.data);
38
39
  if (space) {
39
40
  chat = await getOrCreateChat(dispatch, space);
40
41
  }
@@ -65,7 +66,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
65
66
  ns: ASSISTANT_PLUGIN
66
67
  }
67
68
  ],
68
- icon: "ph--star-four--regular",
69
+ icon: "ph--sparkle--regular",
69
70
  disposition: "pin-end",
70
71
  position: "hoist",
71
72
  keyBinding: {
@@ -74,15 +75,15 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
74
75
  }
75
76
  }
76
77
  }
77
- ]
78
+ ]), Option.getOrElse(() => [])))
78
79
  }),
79
80
  createExtension({
80
81
  id: `${ASSISTANT_PLUGIN}/object-chat-companion`,
81
- filter: (node) => isLiveObject(node.data) && node.data.assistantChatQueue && node.data.type !== AIChatType.typename,
82
- connector: ({ node }) => [
82
+ // TODO(burdon): Add to all objects?
83
+ connector: (node) => Rx.make((get) => pipe(get(node), Option.flatMap((node2) => isLiveObject(node2.data) && node2.data.assistantChatQueue && node2.data.type !== AIChatType.typename ? Option.some(node2) : Option.none()), Option.map((node2) => [
83
84
  {
84
85
  id: [
85
- node.id,
86
+ node2.id,
86
87
  "assistant-chat"
87
88
  ].join(ATTENDABLE_PATH_SEPARATOR),
88
89
  type: PLANK_COMPANION_TYPE,
@@ -94,64 +95,73 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
94
95
  ns: ASSISTANT_PLUGIN
95
96
  }
96
97
  ],
97
- icon: "ph--star-four--regular",
98
+ icon: "ph--sparkle--regular",
98
99
  position: "hoist"
99
100
  }
100
101
  }
101
- ]
102
+ ]), Option.getOrElse(() => [])))
102
103
  }),
103
104
  createExtension({
104
105
  id: `${ASSISTANT_PLUGIN}/root`,
105
- filter: (node) => node.type === SPACE_TYPE,
106
- connector: ({ node }) => {
107
- const templates = memoizeQuery(node.data, Filter.schema(TemplateType));
108
- return templates.length > 0 ? [
109
- {
110
- id: `${ASSISTANT_PLUGIN}/templates`,
111
- type: `${ASSISTANT_PLUGIN}/templates`,
112
- data: null,
113
- properties: {
114
- label: [
115
- "templates label",
116
- {
117
- ns: ASSISTANT_PLUGIN
118
- }
119
- ],
120
- icon: "ph--file-code--regular",
121
- space: node.data
122
- }
106
+ connector: (node) => {
107
+ let query;
108
+ return Rx.make((get) => pipe(get(node), Option.flatMap((node2) => node2.type === SPACE_TYPE && isSpace(node2.data) ? Option.some(node2.data) : Option.none()), Option.map((space) => {
109
+ if (!query) {
110
+ query = space.db.query(Query.type(TemplateType));
123
111
  }
124
- ] : [];
112
+ const templates = get(rxFromQuery(query));
113
+ return templates.length > 0 ? [
114
+ {
115
+ id: `${ASSISTANT_PLUGIN}/templates`,
116
+ type: `${ASSISTANT_PLUGIN}/templates`,
117
+ data: null,
118
+ properties: {
119
+ label: [
120
+ "templates label",
121
+ {
122
+ ns: ASSISTANT_PLUGIN
123
+ }
124
+ ],
125
+ icon: "ph--file-code--regular",
126
+ space
127
+ }
128
+ }
129
+ ] : [];
130
+ }), Option.getOrElse(() => [])));
125
131
  }
126
132
  }),
127
133
  createExtension({
128
134
  id: `${ASSISTANT_PLUGIN}/templates`,
129
- filter: (node) => node.id === `${ASSISTANT_PLUGIN}/templates`,
130
- connector: ({ node }) => {
131
- const templates = memoizeQuery(node.properties.space, Filter.schema(TemplateType));
132
- return templates.toSorted((a, b) => {
133
- const nameA = a.name ?? "";
134
- const nameB = b.name ?? "";
135
- return nameA.localeCompare(nameB);
136
- }).map((template) => ({
137
- id: fullyQualifiedId(template),
138
- type: `${ASSISTANT_PLUGIN}/template`,
139
- data: template,
140
- properties: {
141
- label: template.name ?? [
142
- "object placeholder",
143
- {
144
- ns: ASSISTANT_PLUGIN
145
- }
146
- ],
147
- icon: "ph--file-code--regular"
135
+ connector: (node) => {
136
+ let query;
137
+ return Rx.make((get) => pipe(get(node), Option.flatMap((node2) => node2.id === `${ASSISTANT_PLUGIN}/templates` && isSpace(node2.properties.space) ? Option.some(node2.properties.space) : Option.none()), Option.map((space) => {
138
+ if (!query) {
139
+ query = space.db.query(Query.type(TemplateType));
148
140
  }
149
- }));
141
+ return get(rxFromQuery(query)).toSorted((a, b) => {
142
+ const nameA = a.name ?? "";
143
+ const nameB = b.name ?? "";
144
+ return nameA.localeCompare(nameB);
145
+ }).map((template) => ({
146
+ id: fullyQualifiedId(template),
147
+ type: `${ASSISTANT_PLUGIN}/template`,
148
+ data: template,
149
+ properties: {
150
+ label: template.name ?? [
151
+ "object placeholder",
152
+ {
153
+ ns: ASSISTANT_PLUGIN
154
+ }
155
+ ],
156
+ icon: "ph--file-code--regular"
157
+ }
158
+ }));
159
+ }), Option.getOrElse(() => [])));
150
160
  }
151
161
  })
152
162
  ]);
153
163
  var getOrCreateChat = async (dispatch, space) => {
154
- const { objects } = await space.db.query(Filter.schema(AIChatType)).run();
164
+ const { objects } = await space.db.query(Filter.type(AIChatType)).run();
155
165
  if (objects.length > 0) {
156
166
  return objects[objects.length - 1];
157
167
  }
@@ -160,7 +170,7 @@ var getOrCreateChat = async (dispatch, space) => {
160
170
  }));
161
171
  invariant(data?.object instanceof AIChatType, void 0, {
162
172
  F: __dxlog_file,
163
- L: 160,
173
+ L: 220,
164
174
  S: void 0,
165
175
  A: [
166
176
  "data?.object instanceof AIChatType",
@@ -176,4 +186,4 @@ var getOrCreateChat = async (dispatch, space) => {
176
186
  export {
177
187
  app_graph_builder_default as default
178
188
  };
179
- //# sourceMappingURL=app-graph-builder-ZXKGE3H5.mjs.map
189
+ //# sourceMappingURL=app-graph-builder-HTK3HFGM.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/app-graph-builder.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Rx } from '@effect-rx/rx-react';\nimport { Option, pipe } from 'effect';\n\nimport {\n Capabilities,\n contributes,\n createIntent,\n LayoutAction,\n type PromiseIntentDispatcher,\n type PluginContext,\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, ROOT_ID } from '@dxos/plugin-graph';\nimport { rxFromQuery } from '@dxos/plugin-space';\nimport { SPACE_TYPE, SpaceAction } from '@dxos/plugin-space/types';\nimport {\n type Space,\n Filter,\n fullyQualifiedId,\n getSpace,\n isLiveObject,\n isSpace,\n Query,\n type QueryResult,\n} from '@dxos/react-client/echo';\n\nimport { ASSISTANT_DIALOG, ASSISTANT_PLUGIN } from '../meta';\nimport { AIChatType, AssistantAction, TemplateType } from '../types';\n\nexport default (context: PluginContext) =>\n contributes(Capabilities.AppGraphBuilder, [\n createExtension({\n id: `${ASSISTANT_PLUGIN}/assistant`,\n actions: (node) =>\n Rx.make((get) =>\n pipe(\n get(node),\n Option.flatMap((node) => (node.id === ROOT_ID ? Option.some(node) : Option.none())),\n Option.map(() => [\n {\n id: `${LayoutAction.UpdateDialog._tag}/assistant/open`,\n data: async () => {\n const { dispatchPromise: dispatch } = context.getCapability(Capabilities.IntentDispatcher);\n const client = context.getCapability(ClientCapabilities.Client);\n const layout = context.getCapability(Capabilities.Layout);\n const { graph } = context.getCapability(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.getNode(layout.active[0]).pipe(Option.getOrNull);\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 Option.getOrElse(() => []),\n ),\n ),\n }),\n\n createExtension({\n id: `${ASSISTANT_PLUGIN}/object-chat-companion`,\n // TODO(burdon): Add to all objects?\n connector: (node) =>\n Rx.make((get) =>\n pipe(\n get(node),\n Option.flatMap((node) =>\n isLiveObject(node.data) && node.data.assistantChatQueue && node.data.type !== AIChatType.typename\n ? Option.some(node)\n : Option.none(),\n ),\n Option.map((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 Option.getOrElse(() => []),\n ),\n ),\n }),\n\n createExtension({\n id: `${ASSISTANT_PLUGIN}/root`,\n connector: (node) => {\n let query: QueryResult<TemplateType> | undefined;\n return Rx.make((get) =>\n pipe(\n get(node),\n Option.flatMap((node) =>\n node.type === SPACE_TYPE && isSpace(node.data) ? Option.some(node.data) : Option.none(),\n ),\n Option.map((space) => {\n if (!query) {\n query = space.db.query(Query.type(TemplateType));\n }\n\n const templates = get(rxFromQuery(query));\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,\n },\n },\n ]\n : [];\n }),\n Option.getOrElse(() => []),\n ),\n );\n },\n }),\n\n createExtension({\n id: `${ASSISTANT_PLUGIN}/templates`,\n connector: (node) => {\n let query: QueryResult<TemplateType> | undefined;\n return Rx.make((get) =>\n pipe(\n get(node),\n Option.flatMap((node) =>\n node.id === `${ASSISTANT_PLUGIN}/templates` && isSpace(node.properties.space)\n ? Option.some(node.properties.space)\n : Option.none(),\n ),\n Option.map((space) => {\n if (!query) {\n query = space.db.query(Query.type(TemplateType));\n }\n return get(rxFromQuery(query))\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 Option.getOrElse(() => []),\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.type(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
+ "mappings": "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",
6
+ "names": ["Rx", "Option", "pipe", "Capabilities", "contributes", "createIntent", "LayoutAction", "invariant", "ClientCapabilities", "PLANK_COMPANION_TYPE", "ATTENDABLE_PATH_SEPARATOR", "createExtension", "ROOT_ID", "rxFromQuery", "SPACE_TYPE", "SpaceAction", "Filter", "fullyQualifiedId", "getSpace", "isLiveObject", "isSpace", "Query", "context", "contributes", "Capabilities", "AppGraphBuilder", "createExtension", "id", "ASSISTANT_PLUGIN", "actions", "node", "Rx", "make", "get", "pipe", "Option", "flatMap", "ROOT_ID", "some", "none", "map", "LayoutAction", "UpdateDialog", "_tag", "data", "dispatchPromise", "dispatch", "getCapability", "IntentDispatcher", "client", "ClientCapabilities", "Client", "layout", "Layout", "graph", "AppGraph", "chat", "active", "length", "getNode", "getOrNull", "space", "getSpace", "getOrCreateChat", "spaces", "default", "createIntent", "part", "subject", "ASSISTANT_DIALOG", "options", "state", "blockAlign", "props", "properties", "label", "ns", "icon", "disposition", "position", "keyBinding", "macos", "windows", "getOrElse", "connector", "isLiveObject", "assistantChatQueue", "type", "AIChatType", "typename", "join", "ATTENDABLE_PATH_SEPARATOR", "PLANK_COMPANION_TYPE", "query", "SPACE_TYPE", "isSpace", "db", "Query", "TemplateType", "templates", "rxFromQuery", "toSorted", "a", "b", "nameA", "name", "nameB", "localeCompare", "template", "fullyQualifiedId", "objects", "Filter", "run", "AssistantAction", "CreateChat", "spaceId", "invariant", "object", "SpaceAction", "AddObject", "target"]
7
+ }
@@ -0,0 +1,192 @@
1
+ import {
2
+ ASSISTANT_PLUGIN
3
+ } from "./chunk-3HCI5FIL.mjs";
4
+
5
+ // packages/plugins/plugin-assistant/src/types/chat.ts
6
+ import { Expando, Ref, TypedObject } from "@dxos/echo-schema";
7
+ var AIChatType = class extends TypedObject({
8
+ typename: "dxos.org/type/AIChat",
9
+ version: "0.1.0"
10
+ })({
11
+ // TODO(wittjosiah): Should be a ref to a Queue.
12
+ assistantChatQueue: Ref(Expando)
13
+ }) {
14
+ };
15
+
16
+ // packages/plugins/plugin-assistant/src/types/service.ts
17
+ import { Schema } from "effect";
18
+ import { ComputeGraph } from "@dxos/conductor";
19
+ import { Ref as Ref2, TypedObject as TypedObject2 } from "@dxos/echo-schema";
20
+ import { FunctionType } from "@dxos/functions";
21
+ var ApiAuthorizationKey = Schema.Struct({
22
+ type: Schema.Literal("api-key"),
23
+ key: Schema.String,
24
+ placement: Schema.Union(Schema.Struct({
25
+ type: Schema.Literal("authorization-header")
26
+ }), Schema.Struct({
27
+ type: Schema.Literal("query"),
28
+ name: Schema.String
29
+ }))
30
+ });
31
+ var ApiAuthorizationOauth = Schema.Struct({
32
+ type: Schema.Literal("oauth"),
33
+ clientId: Schema.String,
34
+ clientSecret: Schema.String,
35
+ tokenUrl: Schema.String,
36
+ grantType: Schema.String
37
+ });
38
+ var ApiAuthorization = Schema.Union(ApiAuthorizationKey, ApiAuthorizationOauth);
39
+ var ServiceInterfaceFunction = Schema.Struct({
40
+ kind: Schema.Literal("function"),
41
+ fn: Ref2(FunctionType)
42
+ });
43
+ var ServiceInterfaceWorkflow = Schema.Struct({
44
+ kind: Schema.Literal("workflow"),
45
+ workflow: Ref2(ComputeGraph)
46
+ });
47
+ var ServiceInterfaceApi = Schema.Struct({
48
+ kind: Schema.Literal("api"),
49
+ /**
50
+ * URL to fetch the openapi schema.
51
+ */
52
+ schemaUrl: Schema.optional(Schema.String),
53
+ /**
54
+ * Inlined openapi schema.
55
+ */
56
+ schema: Schema.optional(Schema.Any),
57
+ /**
58
+ * Authorization configuration if required.
59
+ */
60
+ authorization: Schema.optional(ApiAuthorization)
61
+ });
62
+ var ServiceInterface = Schema.Union(ServiceInterfaceFunction, ServiceInterfaceWorkflow, ServiceInterfaceApi);
63
+ var ServiceType = class extends TypedObject2({
64
+ typename: "dxos.org/type/ServiceType",
65
+ version: "0.1.0"
66
+ })({
67
+ serviceId: Schema.String,
68
+ name: Schema.optional(Schema.String),
69
+ description: Schema.optional(Schema.String),
70
+ category: Schema.optional(Schema.String),
71
+ enabled: Schema.optional(Schema.Boolean),
72
+ /**
73
+ * Entries exposed: functions, workflows, and APIs.
74
+ */
75
+ interfaces: Schema.optional(Schema.Array(ServiceInterface))
76
+ }) {
77
+ };
78
+ var categoryIcons = {
79
+ finance: "ph--bank--regular",
80
+ health: "ph--heart--regular",
81
+ geolocation: "ph--globe-simple--regular",
82
+ education: "ph--books--regular",
83
+ entertainment: "ph--music-notes--regular",
84
+ shopping: "ph--shopping-cart--regular",
85
+ travel: "ph--airplane-takeoff--regular",
86
+ utilities: "ph--lightning--regular",
87
+ weather: "ph--cloud-rain--regular"
88
+ };
89
+
90
+ // packages/plugins/plugin-assistant/src/types/template.ts
91
+ import { Schema as Schema2 } from "effect";
92
+ import { TypedObject as TypedObject3 } from "@dxos/echo-schema";
93
+ var TemplateInputType;
94
+ (function(TemplateInputType2) {
95
+ TemplateInputType2[TemplateInputType2["VALUE"] = 0] = "VALUE";
96
+ TemplateInputType2[TemplateInputType2["PASS_THROUGH"] = 1] = "PASS_THROUGH";
97
+ TemplateInputType2[TemplateInputType2["RETRIEVER"] = 2] = "RETRIEVER";
98
+ TemplateInputType2[TemplateInputType2["FUNCTION"] = 3] = "FUNCTION";
99
+ TemplateInputType2[TemplateInputType2["QUERY"] = 4] = "QUERY";
100
+ TemplateInputType2[TemplateInputType2["RESOLVER"] = 5] = "RESOLVER";
101
+ TemplateInputType2[TemplateInputType2["CONTEXT"] = 6] = "CONTEXT";
102
+ TemplateInputType2[TemplateInputType2["SCHEMA"] = 7] = "SCHEMA";
103
+ })(TemplateInputType || (TemplateInputType = {}));
104
+ var TemplateInputSchema = Schema2.mutable(Schema2.Struct({
105
+ name: Schema2.String,
106
+ type: Schema2.optional(Schema2.Enums(TemplateInputType)),
107
+ value: Schema2.optional(Schema2.String)
108
+ }));
109
+ var TemplateKinds = [
110
+ "always",
111
+ "schema-matching",
112
+ "automatically",
113
+ "manual"
114
+ ];
115
+ var TemplateKindSchema = Schema2.Union(Schema2.Struct({
116
+ include: Schema2.Literal("always")
117
+ }), Schema2.Struct({
118
+ include: Schema2.Literal("schema-matching"),
119
+ typename: Schema2.String
120
+ }), Schema2.Struct({
121
+ include: Schema2.Literal("automatically"),
122
+ description: Schema2.String
123
+ }), Schema2.Struct({
124
+ include: Schema2.Literal("manual")
125
+ }));
126
+ var TemplateType = class extends TypedObject3({
127
+ typename: "dxos.org/type/Template",
128
+ version: "0.1.0"
129
+ })({
130
+ name: Schema2.optional(Schema2.String),
131
+ kind: Schema2.mutable(TemplateKindSchema),
132
+ source: Schema2.String,
133
+ inputs: Schema2.optional(Schema2.mutable(Schema2.Array(TemplateInputSchema))),
134
+ command: Schema2.optional(Schema2.String)
135
+ }) {
136
+ };
137
+
138
+ // packages/plugins/plugin-assistant/src/types/types.ts
139
+ import { Schema as Schema3 } from "effect";
140
+ var AssistantAction;
141
+ (function(AssistantAction2) {
142
+ const ASSISTANT_ACTION = `${ASSISTANT_PLUGIN}/action`;
143
+ class CreateChat extends Schema3.TaggedClass()(`${ASSISTANT_ACTION}/create-chat`, {
144
+ input: Schema3.Struct({
145
+ spaceId: Schema3.optional(Schema3.String),
146
+ name: Schema3.optional(Schema3.String)
147
+ }),
148
+ output: Schema3.Struct({
149
+ object: AIChatType
150
+ })
151
+ }) {
152
+ }
153
+ AssistantAction2.CreateChat = CreateChat;
154
+ class CreateTemplate extends Schema3.TaggedClass()(`${ASSISTANT_ACTION}/create-template`, {
155
+ input: Schema3.Struct({
156
+ name: Schema3.optional(Schema3.String)
157
+ }),
158
+ output: Schema3.Struct({
159
+ object: TemplateType
160
+ })
161
+ }) {
162
+ }
163
+ AssistantAction2.CreateTemplate = CreateTemplate;
164
+ })(AssistantAction || (AssistantAction = {}));
165
+ var LLM_PROVIDERS = [
166
+ "edge",
167
+ "ollama",
168
+ "lmstudio"
169
+ ];
170
+ var AssistantSettingsSchema = Schema3.mutable(Schema3.Struct({
171
+ llmProvider: Schema3.optional(Schema3.Literal(...LLM_PROVIDERS)),
172
+ edgeModel: Schema3.optional(Schema3.String),
173
+ ollamaModel: Schema3.optional(Schema3.String),
174
+ lmstudioModel: Schema3.optional(Schema3.String),
175
+ customPrompts: Schema3.optional(Schema3.Boolean)
176
+ }));
177
+
178
+ export {
179
+ AIChatType,
180
+ ApiAuthorization,
181
+ ServiceType,
182
+ categoryIcons,
183
+ TemplateInputType,
184
+ TemplateInputSchema,
185
+ TemplateKinds,
186
+ TemplateKindSchema,
187
+ TemplateType,
188
+ AssistantAction,
189
+ LLM_PROVIDERS,
190
+ AssistantSettingsSchema
191
+ };
192
+ //# sourceMappingURL=chunk-5P7U35RJ.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/types/chat.ts", "../../../src/types/service.ts", "../../../src/types/template.ts", "../../../src/types/types.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { Expando, Ref, TypedObject } from '@dxos/echo-schema';\n\nexport class AIChatType extends TypedObject({ typename: 'dxos.org/type/AIChat', version: '0.1.0' })({\n // TODO(wittjosiah): Should be a ref to a Queue.\n assistantChatQueue: Ref(Expando),\n}) {}\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { Schema } from 'effect';\n\nimport { ComputeGraph } from '@dxos/conductor';\nimport { Ref, TypedObject, type Ref$ } from '@dxos/echo-schema';\nimport { FunctionType } from '@dxos/functions';\n\nconst ApiAuthorizationKey = Schema.Struct({\n type: Schema.Literal('api-key'),\n key: Schema.String,\n placement: Schema.Union(\n Schema.Struct({\n type: Schema.Literal('authorization-header'),\n }),\n Schema.Struct({\n type: Schema.Literal('query'),\n name: Schema.String,\n }),\n ),\n});\n\nconst ApiAuthorizationOauth = Schema.Struct({\n type: Schema.Literal('oauth'),\n clientId: Schema.String,\n clientSecret: Schema.String,\n tokenUrl: Schema.String,\n grantType: Schema.String,\n});\n\nexport const ApiAuthorization = Schema.Union(ApiAuthorizationKey, ApiAuthorizationOauth);\nexport type ApiAuthorization = Schema.Schema.Type<typeof ApiAuthorization>;\n\nconst ServiceInterfaceFunction = Schema.Struct({\n kind: Schema.Literal('function'),\n fn: Ref(FunctionType) as Ref$<FunctionType>,\n});\n\nconst ServiceInterfaceWorkflow = Schema.Struct({\n kind: Schema.Literal('workflow'),\n workflow: Ref(ComputeGraph) as Ref$<ComputeGraph>,\n});\n\nconst ServiceInterfaceApi = Schema.Struct({\n kind: Schema.Literal('api'),\n\n /**\n * URL to fetch the openapi schema.\n */\n schemaUrl: Schema.optional(Schema.String),\n\n /**\n * Inlined openapi schema.\n */\n schema: Schema.optional(Schema.Any),\n\n /**\n * Authorization configuration if required.\n */\n authorization: Schema.optional(ApiAuthorization),\n});\n\nconst ServiceInterface = Schema.Union(ServiceInterfaceFunction, ServiceInterfaceWorkflow, ServiceInterfaceApi);\nexport type ServiceInterface = Schema.Schema.Type<typeof ServiceInterface>;\n\nexport class ServiceType extends TypedObject({ typename: 'dxos.org/type/ServiceType', version: '0.1.0' })({\n serviceId: Schema.String,\n name: Schema.optional(Schema.String),\n description: Schema.optional(Schema.String),\n category: Schema.optional(Schema.String),\n enabled: Schema.optional(Schema.Boolean),\n\n /**\n * Entries exposed: functions, workflows, and APIs.\n */\n interfaces: Schema.optional(Schema.Array(ServiceInterface)),\n}) {}\n\n//\n// Service Registry\n//\n\nexport type ServiceQuery = {\n name?: string;\n category?: string;\n};\n\nexport interface BaseServiceRegistry {\n queryServices(query?: ServiceQuery): Promise<ServiceType[]>;\n}\n\nexport const categoryIcons: Record<string, string> = {\n finance: 'ph--bank--regular',\n health: 'ph--heart--regular',\n geolocation: 'ph--globe-simple--regular',\n education: 'ph--books--regular',\n entertainment: 'ph--music-notes--regular',\n shopping: 'ph--shopping-cart--regular',\n travel: 'ph--airplane-takeoff--regular',\n utilities: 'ph--lightning--regular',\n weather: 'ph--cloud-rain--regular',\n} as const;\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { Schema } from 'effect';\n\nimport { TypedObject } from '@dxos/echo-schema';\n\n// TODO(burdon): Change to Schema.Literal (and discriminated union).\nexport enum TemplateInputType {\n VALUE = 0,\n PASS_THROUGH = 1,\n RETRIEVER = 2,\n FUNCTION = 3,\n QUERY = 4,\n RESOLVER = 5,\n CONTEXT = 6,\n SCHEMA = 7,\n}\n\nexport const TemplateInputSchema = Schema.mutable(\n Schema.Struct({\n name: Schema.String,\n type: Schema.optional(Schema.Enums(TemplateInputType)),\n value: Schema.optional(Schema.String),\n }),\n);\n\nexport type TemplateInput = Schema.Schema.Type<typeof TemplateInputSchema>;\n\nexport const TemplateKinds = ['always', 'schema-matching', 'automatically', 'manual'] as const;\nexport type TemplateKind = (typeof TemplateKinds)[number];\n\nexport const TemplateKindSchema = Schema.Union(\n Schema.Struct({\n include: Schema.Literal('always'),\n }),\n Schema.Struct({\n include: Schema.Literal('schema-matching'),\n typename: Schema.String,\n }),\n Schema.Struct({\n include: Schema.Literal('automatically'),\n description: Schema.String,\n }),\n Schema.Struct({\n include: Schema.Literal('manual'),\n }),\n);\n\nexport type TemplateKindType = Schema.Schema.Type<typeof TemplateKindSchema>;\nexport class TemplateType extends TypedObject({ typename: 'dxos.org/type/Template', version: '0.1.0' })({\n name: Schema.optional(Schema.String),\n kind: Schema.mutable(TemplateKindSchema),\n source: Schema.String,\n inputs: Schema.optional(Schema.mutable(Schema.Array(TemplateInputSchema))),\n command: Schema.optional(Schema.String),\n}) {}\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Schema } from 'effect';\n\nimport { AIChatType } from './chat';\nimport { TemplateType } from './template';\nimport { ASSISTANT_PLUGIN } from '../meta';\n\nexport namespace AssistantAction {\n const ASSISTANT_ACTION = `${ASSISTANT_PLUGIN}/action`;\n\n export class CreateChat extends Schema.TaggedClass<CreateChat>()(`${ASSISTANT_ACTION}/create-chat`, {\n input: Schema.Struct({\n spaceId: Schema.optional(Schema.String),\n name: Schema.optional(Schema.String),\n }),\n output: Schema.Struct({\n object: AIChatType,\n }),\n }) {}\n\n export class CreateTemplate extends Schema.TaggedClass<CreateTemplate>()(`${ASSISTANT_ACTION}/create-template`, {\n input: Schema.Struct({\n name: Schema.optional(Schema.String),\n }),\n output: Schema.Struct({\n object: TemplateType,\n }),\n }) {}\n}\n\nexport const LLM_PROVIDERS = ['edge', 'ollama', 'lmstudio'] as const;\n\nexport const AssistantSettingsSchema = Schema.mutable(\n Schema.Struct({\n llmProvider: Schema.optional(Schema.Literal(...LLM_PROVIDERS)),\n edgeModel: Schema.optional(Schema.String),\n ollamaModel: Schema.optional(Schema.String),\n lmstudioModel: Schema.optional(Schema.String),\n customPrompts: Schema.optional(Schema.Boolean),\n }),\n);\n\nexport type AssistantSettingsProps = Schema.Schema.Type<typeof AssistantSettingsSchema>;\n"],
5
+ "mappings": "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",
6
+ "names": ["Expando", "Ref", "TypedObject", "AIChatType", "TypedObject", "typename", "version", "assistantChatQueue", "Ref", "Expando", "Schema", "ComputeGraph", "Ref", "TypedObject", "FunctionType", "ApiAuthorizationKey", "Schema", "Struct", "type", "Literal", "key", "String", "placement", "Union", "name", "ApiAuthorizationOauth", "clientId", "clientSecret", "tokenUrl", "grantType", "ApiAuthorization", "ServiceInterfaceFunction", "kind", "fn", "Ref", "FunctionType", "ServiceInterfaceWorkflow", "workflow", "ComputeGraph", "ServiceInterfaceApi", "schemaUrl", "optional", "schema", "Any", "authorization", "ServiceInterface", "ServiceType", "TypedObject", "typename", "version", "serviceId", "description", "category", "enabled", "Boolean", "interfaces", "Array", "categoryIcons", "finance", "health", "geolocation", "education", "entertainment", "shopping", "travel", "utilities", "weather", "Schema", "TypedObject", "TemplateInputType", "TemplateInputSchema", "Schema", "mutable", "Struct", "name", "String", "type", "optional", "Enums", "value", "TemplateKinds", "TemplateKindSchema", "Union", "include", "Literal", "typename", "description", "TemplateType", "TypedObject", "version", "kind", "source", "inputs", "Array", "command", "Schema", "AssistantAction", "ASSISTANT_ACTION", "ASSISTANT_PLUGIN", "CreateChat", "Schema", "TaggedClass", "input", "Struct", "spaceId", "optional", "String", "name", "output", "object", "AIChatType", "CreateTemplate", "TemplateType", "LLM_PROVIDERS", "AssistantSettingsSchema", "mutable", "llmProvider", "Literal", "edgeModel", "ollamaModel", "lmstudioModel", "customPrompts", "Boolean"]
7
+ }
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  LLM_PROVIDERS,
3
3
  TemplateKinds
4
- } from "./chunk-E7BN4QKP.mjs";
4
+ } from "./chunk-5P7U35RJ.mjs";
5
5
  import {
6
6
  ASSISTANT_PLUGIN
7
7
  } from "./chunk-3HCI5FIL.mjs";
@@ -129,8 +129,8 @@ var PromptSettings = ({ template }) => {
129
129
 
130
130
  // packages/plugins/plugin-assistant/src/components/index.ts
131
131
  import { lazy } from "react";
132
- var AssistantDialog = lazy(() => import("./AssistantDialog-I47GUXWR.mjs"));
133
- var ChatContainer = lazy(() => import("./ChatContainer-GAYN3FEF.mjs"));
132
+ var AssistantDialog = lazy(() => import("./AssistantDialog-DTWVEQBB.mjs"));
133
+ var ChatContainer = lazy(() => import("./ChatContainer-ZNKENYKZ.mjs"));
134
134
  var TemplateContainer = lazy(() => import("./TemplateContainer-WKU5XFSO.mjs"));
135
135
 
136
136
  export {
@@ -140,4 +140,4 @@ export {
140
140
  ChatContainer,
141
141
  TemplateContainer
142
142
  };
143
- //# sourceMappingURL=chunk-BGMQ2YYP.mjs.map
143
+ //# sourceMappingURL=chunk-7VDZP5WX.mjs.map