@dxos/plugin-assistant 0.8.4-main.1da679c → 0.8.4-main.1f223c7

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 (149) hide show
  1. package/dist/lib/browser/{BlueprintContainer-6MZHBQ25.mjs → BlueprintContainer-BFNN6K46.mjs} +2 -2
  2. package/dist/lib/browser/{ChatCompanion-B4DLQE6Y.mjs → ChatCompanion-DOVN34C7.mjs} +6 -4
  3. package/dist/lib/{node-esm/ChatCompanion-DK6FULBU.mjs.map → browser/ChatCompanion-DOVN34C7.mjs.map} +1 -1
  4. package/dist/lib/browser/{ChatContainer-Z7A3RKOY.mjs → ChatContainer-XIVJTCC2.mjs} +4 -2
  5. package/dist/lib/browser/{ChatContainer-Z7A3RKOY.mjs.map → ChatContainer-XIVJTCC2.mjs.map} +1 -1
  6. package/dist/lib/browser/{ChatDialog-PL5TSGD5.mjs → ChatDialog-EJJMK3WL.mjs} +4 -2
  7. package/dist/lib/browser/{ChatDialog-PL5TSGD5.mjs.map → ChatDialog-EJJMK3WL.mjs.map} +1 -1
  8. package/dist/lib/browser/ai-service-YC2EQPHA.mjs +22 -0
  9. package/dist/lib/browser/ai-service-YC2EQPHA.mjs.map +7 -0
  10. package/dist/lib/browser/{app-graph-builder-BBDHBJXA.mjs → app-graph-builder-3C43MLCD.mjs} +4 -4
  11. package/dist/lib/browser/{app-graph-builder-BBDHBJXA.mjs.map → app-graph-builder-3C43MLCD.mjs.map} +1 -1
  12. package/dist/lib/browser/{blueprint-definition-3SATLYJW.mjs → blueprint-definition-VHFSRTEJ.mjs} +2 -2
  13. package/dist/lib/browser/{chunk-YOBHCEEI.mjs → chunk-C4Q2RYQM.mjs} +47 -14
  14. package/dist/lib/browser/chunk-C4Q2RYQM.mjs.map +7 -0
  15. package/dist/lib/browser/{chunk-YKODYEYR.mjs → chunk-EZUSNS2J.mjs} +4 -1
  16. package/dist/lib/browser/chunk-EZUSNS2J.mjs.map +7 -0
  17. package/dist/lib/browser/{chunk-BBT6KNXA.mjs → chunk-GLWD66TA.mjs} +5 -9
  18. package/dist/lib/browser/chunk-GLWD66TA.mjs.map +7 -0
  19. package/dist/lib/browser/{chunk-JDI4FEKA.mjs → chunk-QD4UUISH.mjs} +6 -6
  20. package/dist/lib/browser/{chunk-TMKK6VCA.mjs → chunk-R6LRGW3I.mjs} +3 -3
  21. package/dist/lib/browser/chunk-R6LRGW3I.mjs.map +7 -0
  22. package/dist/lib/browser/compute-runtime-X6IREJN3.mjs +155 -0
  23. package/dist/lib/browser/compute-runtime-X6IREJN3.mjs.map +7 -0
  24. package/dist/lib/browser/{edge-model-resolver-6YWYDPTS.mjs → edge-model-resolver-JNEB355N.mjs} +9 -5
  25. package/dist/lib/browser/edge-model-resolver-JNEB355N.mjs.map +7 -0
  26. package/dist/lib/browser/index.mjs +25 -21
  27. package/dist/lib/browser/index.mjs.map +4 -4
  28. package/dist/lib/browser/{intent-resolver-MRZJU255.mjs → intent-resolver-I6M3ZDAS.mjs} +5 -5
  29. package/dist/lib/browser/{intent-resolver-MRZJU255.mjs.map → intent-resolver-I6M3ZDAS.mjs.map} +1 -1
  30. package/dist/lib/browser/{local-model-resolver-QXLLTV2H.mjs → local-model-resolver-EUXSRZ7X.mjs} +9 -5
  31. package/dist/lib/browser/local-model-resolver-EUXSRZ7X.mjs.map +7 -0
  32. package/dist/lib/browser/meta.json +1 -1
  33. package/dist/lib/browser/{react-surface-UKMOARXR.mjs → react-surface-E4NAGB6R.mjs} +8 -6
  34. package/dist/lib/{node-esm/react-surface-5NDJAWA2.mjs.map → browser/react-surface-E4NAGB6R.mjs.map} +1 -1
  35. package/dist/lib/browser/{settings-4AJ34FKF.mjs → settings-36V3VUMW.mjs} +3 -3
  36. package/dist/lib/browser/{settings-4AJ34FKF.mjs.map → settings-36V3VUMW.mjs.map} +1 -1
  37. package/dist/lib/browser/{state-ABR7YSSA.mjs → state-AINRYS5W.mjs} +4 -4
  38. package/dist/lib/browser/{state-ABR7YSSA.mjs.map → state-AINRYS5W.mjs.map} +1 -1
  39. package/dist/lib/browser/{toolkit-U7SKGAIC.mjs → toolkit-MPUS3U64.mjs} +3 -3
  40. package/dist/lib/browser/{toolkit-U7SKGAIC.mjs.map → toolkit-MPUS3U64.mjs.map} +1 -1
  41. package/dist/lib/node-esm/{BlueprintContainer-MUHW5HNY.mjs → BlueprintContainer-X4MRBKDR.mjs} +2 -2
  42. package/dist/lib/node-esm/{ChatCompanion-DK6FULBU.mjs → ChatCompanion-ICWYVPRD.mjs} +6 -4
  43. package/dist/lib/{browser/ChatCompanion-B4DLQE6Y.mjs.map → node-esm/ChatCompanion-ICWYVPRD.mjs.map} +1 -1
  44. package/dist/lib/node-esm/{ChatContainer-7IN7ZICQ.mjs → ChatContainer-LMMMQD4K.mjs} +4 -2
  45. package/dist/lib/node-esm/{ChatContainer-7IN7ZICQ.mjs.map → ChatContainer-LMMMQD4K.mjs.map} +1 -1
  46. package/dist/lib/node-esm/{ChatDialog-LPE653RZ.mjs → ChatDialog-UUE3F7BT.mjs} +4 -2
  47. package/dist/lib/node-esm/{ChatDialog-LPE653RZ.mjs.map → ChatDialog-UUE3F7BT.mjs.map} +1 -1
  48. package/dist/lib/node-esm/{ai-service-I5JU4JN2.mjs → ai-service-XUMZVFCK.mjs} +10 -6
  49. package/dist/lib/node-esm/ai-service-XUMZVFCK.mjs.map +7 -0
  50. package/dist/lib/node-esm/{app-graph-builder-EMR5JF6Z.mjs → app-graph-builder-NM3JDLQ2.mjs} +4 -4
  51. package/dist/lib/node-esm/{app-graph-builder-EMR5JF6Z.mjs.map → app-graph-builder-NM3JDLQ2.mjs.map} +1 -1
  52. package/dist/lib/node-esm/{blueprint-definition-B6UDX5U3.mjs → blueprint-definition-4E6XTLVN.mjs} +2 -2
  53. package/dist/lib/node-esm/{chunk-GCNF3CQU.mjs → chunk-LVTG5JTW.mjs} +3 -3
  54. package/dist/lib/node-esm/chunk-LVTG5JTW.mjs.map +7 -0
  55. package/dist/lib/node-esm/{chunk-5MYWJPYA.mjs → chunk-QG2KT3AT.mjs} +5 -9
  56. package/dist/lib/node-esm/chunk-QG2KT3AT.mjs.map +7 -0
  57. package/dist/lib/node-esm/{chunk-X2YUKRBE.mjs → chunk-V44ZG7CU.mjs} +47 -14
  58. package/dist/lib/node-esm/chunk-V44ZG7CU.mjs.map +7 -0
  59. package/dist/lib/node-esm/{chunk-FHRJMZ7L.mjs → chunk-XD4CDA4R.mjs} +4 -1
  60. package/dist/lib/node-esm/chunk-XD4CDA4R.mjs.map +7 -0
  61. package/dist/lib/node-esm/{chunk-H3ZC4UL7.mjs → chunk-YU62ZWJN.mjs} +6 -6
  62. package/dist/lib/node-esm/compute-runtime-NRHLLTSC.mjs +156 -0
  63. package/dist/lib/node-esm/compute-runtime-NRHLLTSC.mjs.map +7 -0
  64. package/dist/lib/node-esm/{edge-model-resolver-A7B6QHLL.mjs → edge-model-resolver-UE5TLLJZ.mjs} +9 -5
  65. package/dist/lib/node-esm/edge-model-resolver-UE5TLLJZ.mjs.map +7 -0
  66. package/dist/lib/node-esm/index.mjs +25 -21
  67. package/dist/lib/node-esm/index.mjs.map +4 -4
  68. package/dist/lib/node-esm/{intent-resolver-CIXO3KMY.mjs → intent-resolver-VIINHFMT.mjs} +5 -5
  69. package/dist/lib/node-esm/{intent-resolver-CIXO3KMY.mjs.map → intent-resolver-VIINHFMT.mjs.map} +1 -1
  70. package/dist/lib/node-esm/{local-model-resolver-JCYDHAZY.mjs → local-model-resolver-JBEFVVZA.mjs} +9 -5
  71. package/dist/lib/node-esm/local-model-resolver-JBEFVVZA.mjs.map +7 -0
  72. package/dist/lib/node-esm/meta.json +1 -1
  73. package/dist/lib/node-esm/{react-surface-5NDJAWA2.mjs → react-surface-5WQLRTCH.mjs} +8 -6
  74. package/dist/lib/{browser/react-surface-UKMOARXR.mjs.map → node-esm/react-surface-5WQLRTCH.mjs.map} +1 -1
  75. package/dist/lib/node-esm/{settings-K2QW4ATZ.mjs → settings-7ZCZ6AS5.mjs} +3 -3
  76. package/dist/lib/node-esm/{settings-K2QW4ATZ.mjs.map → settings-7ZCZ6AS5.mjs.map} +1 -1
  77. package/dist/lib/node-esm/{state-6UHESJI5.mjs → state-EQS5KP6M.mjs} +4 -4
  78. package/dist/lib/node-esm/{state-6UHESJI5.mjs.map → state-EQS5KP6M.mjs.map} +1 -1
  79. package/dist/lib/node-esm/{toolkit-LNLRBVDU.mjs → toolkit-PKVYDZ4H.mjs} +3 -3
  80. package/dist/lib/node-esm/{toolkit-LNLRBVDU.mjs.map → toolkit-PKVYDZ4H.mjs.map} +1 -1
  81. package/dist/types/src/AssistantPlugin.d.ts.map +1 -1
  82. package/dist/types/src/capabilities/ai-service.d.ts +3 -2
  83. package/dist/types/src/capabilities/ai-service.d.ts.map +1 -1
  84. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -1
  85. package/dist/types/src/capabilities/capabilities.d.ts +21 -0
  86. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  87. package/dist/types/src/capabilities/compute-runtime.d.ts +5 -0
  88. package/dist/types/src/capabilities/compute-runtime.d.ts.map +1 -0
  89. package/dist/types/src/capabilities/edge-model-resolver.d.ts.map +1 -1
  90. package/dist/types/src/capabilities/index.d.ts +1 -0
  91. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  92. package/dist/types/src/capabilities/local-model-resolver.d.ts.map +1 -1
  93. package/dist/types/src/components/TemplateEditor/TemplateEditor.d.ts.map +1 -1
  94. package/dist/types/src/hooks/index.d.ts +1 -0
  95. package/dist/types/src/hooks/index.d.ts.map +1 -1
  96. package/dist/types/src/hooks/useComputeRuntimeCallback.d.ts +8 -0
  97. package/dist/types/src/hooks/useComputeRuntimeCallback.d.ts.map +1 -0
  98. package/dist/types/src/stories/Chat.stories.d.ts +0 -1
  99. package/dist/types/src/stories/Chat.stories.d.ts.map +1 -1
  100. package/dist/types/src/stories/components/TriggersContainer.d.ts +12 -1
  101. package/dist/types/src/stories/components/TriggersContainer.d.ts.map +1 -1
  102. package/dist/types/src/stories/components/index.d.ts +2 -3
  103. package/dist/types/src/stories/components/index.d.ts.map +1 -1
  104. package/dist/types/src/stories/testing/testing.d.ts.map +1 -1
  105. package/dist/types/src/testing/test-data.d.ts +1 -1
  106. package/dist/types/src/testing/test-data.d.ts.map +1 -1
  107. package/dist/types/tsconfig.tsbuildinfo +1 -1
  108. package/package.json +90 -91
  109. package/src/AssistantPlugin.tsx +9 -8
  110. package/src/capabilities/ai-service.ts +5 -3
  111. package/src/capabilities/blueprint-definition.ts +1 -4
  112. package/src/capabilities/capabilities.ts +53 -0
  113. package/src/capabilities/compute-runtime.ts +124 -0
  114. package/src/capabilities/edge-model-resolver.ts +4 -2
  115. package/src/capabilities/index.ts +1 -0
  116. package/src/capabilities/local-model-resolver.ts +4 -2
  117. package/src/components/TemplateEditor/TemplateEditor.tsx +2 -2
  118. package/src/hooks/index.ts +1 -0
  119. package/src/hooks/useChatServices.ts +2 -2
  120. package/src/hooks/useComputeRuntimeCallback.ts +25 -0
  121. package/src/stories/Chat.stories.tsx +4 -151
  122. package/src/stories/components/TriggersContainer.tsx +67 -4
  123. package/src/stories/components/index.ts +2 -3
  124. package/src/stories/testing/testing.tsx +1 -6
  125. package/src/testing/test-data.ts +26 -36
  126. package/dist/lib/browser/ai-service-4VESSFNB.mjs +0 -18
  127. package/dist/lib/browser/ai-service-4VESSFNB.mjs.map +0 -7
  128. package/dist/lib/browser/chunk-BBT6KNXA.mjs.map +0 -7
  129. package/dist/lib/browser/chunk-TMKK6VCA.mjs.map +0 -7
  130. package/dist/lib/browser/chunk-YKODYEYR.mjs.map +0 -7
  131. package/dist/lib/browser/chunk-YOBHCEEI.mjs.map +0 -7
  132. package/dist/lib/browser/edge-model-resolver-6YWYDPTS.mjs.map +0 -7
  133. package/dist/lib/browser/local-model-resolver-QXLLTV2H.mjs.map +0 -7
  134. package/dist/lib/node-esm/ai-service-I5JU4JN2.mjs.map +0 -7
  135. package/dist/lib/node-esm/chunk-5MYWJPYA.mjs.map +0 -7
  136. package/dist/lib/node-esm/chunk-FHRJMZ7L.mjs.map +0 -7
  137. package/dist/lib/node-esm/chunk-GCNF3CQU.mjs.map +0 -7
  138. package/dist/lib/node-esm/chunk-X2YUKRBE.mjs.map +0 -7
  139. package/dist/lib/node-esm/edge-model-resolver-A7B6QHLL.mjs.map +0 -7
  140. package/dist/lib/node-esm/local-model-resolver-JCYDHAZY.mjs.map +0 -7
  141. package/dist/types/src/stories/components/ProjectContainer.d.ts +0 -4
  142. package/dist/types/src/stories/components/ProjectContainer.d.ts.map +0 -1
  143. package/src/stories/components/ProjectContainer.tsx +0 -17
  144. /package/dist/lib/browser/{BlueprintContainer-6MZHBQ25.mjs.map → BlueprintContainer-BFNN6K46.mjs.map} +0 -0
  145. /package/dist/lib/browser/{blueprint-definition-3SATLYJW.mjs.map → blueprint-definition-VHFSRTEJ.mjs.map} +0 -0
  146. /package/dist/lib/browser/{chunk-JDI4FEKA.mjs.map → chunk-QD4UUISH.mjs.map} +0 -0
  147. /package/dist/lib/node-esm/{BlueprintContainer-MUHW5HNY.mjs.map → BlueprintContainer-X4MRBKDR.mjs.map} +0 -0
  148. /package/dist/lib/node-esm/{blueprint-definition-B6UDX5U3.mjs.map → blueprint-definition-4E6XTLVN.mjs.map} +0 -0
  149. /package/dist/lib/node-esm/{chunk-H3ZC4UL7.mjs.map → chunk-YU62ZWJN.mjs.map} +0 -0
@@ -0,0 +1,156 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ AssistantCapabilities
4
+ } from "./chunk-XD4CDA4R.mjs";
5
+ import "./chunk-VFY2JG62.mjs";
6
+ import "./chunk-HSLMI22Q.mjs";
7
+
8
+ // src/capabilities/compute-runtime.ts
9
+ import { AiToolkit } from "@effect/ai";
10
+ import { BrowserKeyValueStore } from "@effect/platform-browser";
11
+ import { Effect, Layer, ManagedRuntime } from "effect";
12
+ import { Capabilities, contributes } from "@dxos/app-framework";
13
+ import { makeToolExecutionServiceFromFunctions, makeToolResolverFromFunctions } from "@dxos/assistant";
14
+ import { PropertiesType } from "@dxos/client/echo";
15
+ import { Resource } from "@dxos/context";
16
+ import { Query, Ref } from "@dxos/echo";
17
+ import { CredentialsService, DatabaseService, FunctionImplementationResolver, InvocationTracer, LocalFunctionExecutionService, QueueService, RemoteFunctionExecutionService, TriggerDispatcher } from "@dxos/functions";
18
+ import { TriggerStateStore } from "@dxos/functions";
19
+ import { invariant } from "@dxos/invariant";
20
+ import { ClientCapabilities } from "@dxos/plugin-client";
21
+ function _check_private_redeclaration(obj, privateCollection) {
22
+ if (privateCollection.has(obj)) {
23
+ throw new TypeError("Cannot initialize the same private elements twice on an object");
24
+ }
25
+ }
26
+ function _class_apply_descriptor_get(receiver, descriptor) {
27
+ if (descriptor.get) {
28
+ return descriptor.get.call(receiver);
29
+ }
30
+ return descriptor.value;
31
+ }
32
+ function _class_apply_descriptor_set(receiver, descriptor, value) {
33
+ if (descriptor.set) {
34
+ descriptor.set.call(receiver, value);
35
+ } else {
36
+ if (!descriptor.writable) {
37
+ throw new TypeError("attempted to set read only private field");
38
+ }
39
+ descriptor.value = value;
40
+ }
41
+ }
42
+ function _class_extract_field_descriptor(receiver, privateMap, action) {
43
+ if (!privateMap.has(receiver)) {
44
+ throw new TypeError("attempted to " + action + " private field on non-instance");
45
+ }
46
+ return privateMap.get(receiver);
47
+ }
48
+ function _class_private_field_get(receiver, privateMap) {
49
+ var descriptor = _class_extract_field_descriptor(receiver, privateMap, "get");
50
+ return _class_apply_descriptor_get(receiver, descriptor);
51
+ }
52
+ function _class_private_field_init(obj, privateMap, value) {
53
+ _check_private_redeclaration(obj, privateMap);
54
+ privateMap.set(obj, value);
55
+ }
56
+ function _class_private_field_set(receiver, privateMap, value) {
57
+ var descriptor = _class_extract_field_descriptor(receiver, privateMap, "set");
58
+ _class_apply_descriptor_set(receiver, descriptor, value);
59
+ return value;
60
+ }
61
+ var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-assistant/src/capabilities/compute-runtime.ts";
62
+ var compute_runtime_default = async (context) => {
63
+ const provider = await new ComputeRuntimeProviderImpl(context).open();
64
+ return contributes(AssistantCapabilities.ComputeRuntime, provider, async () => {
65
+ await provider.close();
66
+ });
67
+ };
68
+ var _runtimes = /* @__PURE__ */ new WeakMap();
69
+ var _context = /* @__PURE__ */ new WeakMap();
70
+ var ComputeRuntimeProviderImpl = class extends Resource {
71
+ async _open() {
72
+ }
73
+ async _close() {
74
+ await Promise.all(Array.from(_class_private_field_get(this, _runtimes).values()).map((rt) => rt.dispose()));
75
+ _class_private_field_get(this, _runtimes).clear();
76
+ }
77
+ getRuntime(spaceId) {
78
+ if (_class_private_field_get(this, _runtimes).has(spaceId)) {
79
+ return _class_private_field_get(this, _runtimes).get(spaceId);
80
+ }
81
+ const layer = Layer.unwrapEffect(Effect.gen(this, function* () {
82
+ const client = _class_private_field_get(this, _context).getCapability(ClientCapabilities.Client);
83
+ const serviceLayer = _class_private_field_get(this, _context).getCapability(AssistantCapabilities.AiServiceLayer) ?? Layer.die("AiService not found");
84
+ const functions = _class_private_field_get(this, _context).getCapabilities(Capabilities.Functions);
85
+ const toolkits = _class_private_field_get(this, _context).getCapabilities(Capabilities.Toolkit);
86
+ const handlers = _class_private_field_get(this, _context).getCapabilities(Capabilities.ToolkitHandler);
87
+ const allFunctions = functions.flat();
88
+ const toolkit = AiToolkit.merge(...toolkits);
89
+ const handlersLayer = Layer.mergeAll(Layer.empty, ...handlers);
90
+ const space = client.spaces.get(spaceId);
91
+ invariant(space, void 0, {
92
+ F: __dxlog_file,
93
+ L: 76,
94
+ S: this,
95
+ A: [
96
+ "space",
97
+ ""
98
+ ]
99
+ });
100
+ yield* Effect.promise(() => space.waitUntilReady());
101
+ return Layer.mergeAll(TriggerDispatcher.layer({
102
+ timeControl: "natural"
103
+ })).pipe(Layer.provideMerge(Layer.mergeAll(IvocationTracerLive, TriggerStateStore.layerKv.pipe(Layer.provide(BrowserKeyValueStore.layerLocalStorage)), serviceLayer, makeToolResolverFromFunctions(allFunctions, toolkit), makeToolExecutionServiceFromFunctions(allFunctions, toolkit, handlersLayer), CredentialsService.layerFromDatabase())), Layer.provideMerge(Layer.mergeAll(space ? DatabaseService.layer(space.db) : DatabaseService.notAvailable, space ? QueueService.layer(space.queues) : QueueService.notAvailable, LocalFunctionExecutionService.layerLive, RemoteFunctionExecutionService.mockLayer)), Layer.provideMerge(FunctionImplementationResolver.layerTest({
104
+ functions: allFunctions
105
+ })));
106
+ }));
107
+ const runtime = ManagedRuntime.make(layer);
108
+ _class_private_field_get(this, _runtimes).set(spaceId, runtime);
109
+ return runtime;
110
+ }
111
+ constructor(context) {
112
+ super(), _class_private_field_init(this, _runtimes, {
113
+ writable: true,
114
+ value: /* @__PURE__ */ new Map()
115
+ }), _class_private_field_init(this, _context, {
116
+ writable: true,
117
+ value: void 0
118
+ });
119
+ _class_private_field_set(this, _context, context);
120
+ }
121
+ };
122
+ var IvocationTracerLive = Layer.unwrapEffect(Effect.gen(function* () {
123
+ const { objects: [properties] } = yield* DatabaseService.runQuery(Query.type(PropertiesType));
124
+ invariant(properties, void 0, {
125
+ F: __dxlog_file,
126
+ L: 115,
127
+ S: this,
128
+ A: [
129
+ "properties",
130
+ ""
131
+ ]
132
+ });
133
+ if (!properties.invocationTraceQueue) {
134
+ const queue2 = yield* QueueService.createQueue({
135
+ subspaceTag: "trace"
136
+ });
137
+ properties.invocationTraceQueue = Ref.fromDXN(queue2.dxn);
138
+ }
139
+ const queue = properties.invocationTraceQueue.target;
140
+ invariant(queue, void 0, {
141
+ F: __dxlog_file,
142
+ L: 121,
143
+ S: this,
144
+ A: [
145
+ "queue",
146
+ ""
147
+ ]
148
+ });
149
+ return InvocationTracer.layerLive({
150
+ invocationTraceQueue: queue
151
+ });
152
+ }));
153
+ export {
154
+ compute_runtime_default as default
155
+ };
156
+ //# sourceMappingURL=compute-runtime-NRHLLTSC.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/compute-runtime.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { type AiTool, AiToolkit } from '@effect/ai';\nimport { BrowserKeyValueStore } from '@effect/platform-browser';\nimport { Effect, Layer, ManagedRuntime } from 'effect';\n\nimport { Capabilities, type PluginContext, contributes } from '@dxos/app-framework';\nimport { makeToolExecutionServiceFromFunctions, makeToolResolverFromFunctions } from '@dxos/assistant';\nimport { PropertiesType } from '@dxos/client/echo';\nimport { Resource } from '@dxos/context';\nimport { Query, Ref } from '@dxos/echo';\nimport {\n CredentialsService,\n DatabaseService,\n FunctionImplementationResolver,\n InvocationTracer,\n LocalFunctionExecutionService,\n QueueService,\n RemoteFunctionExecutionService,\n TriggerDispatcher,\n} from '@dxos/functions';\nimport { TriggerStateStore } from '@dxos/functions';\nimport { invariant } from '@dxos/invariant';\nimport { type SpaceId } from '@dxos/keys';\nimport { ClientCapabilities } from '@dxos/plugin-client';\n\nimport { AssistantCapabilities } from './capabilities';\n\nexport default async (context: PluginContext) => {\n const provider = await new ComputeRuntimeProviderImpl(context).open();\n return contributes(AssistantCapabilities.ComputeRuntime, provider, async () => {\n await provider.close();\n });\n};\n\nclass ComputeRuntimeProviderImpl extends Resource implements AssistantCapabilities.ComputeRuntimeProvider {\n readonly #runtimes = new Map<SpaceId, ManagedRuntime.ManagedRuntime<AssistantCapabilities.ComputeServices, never>>();\n readonly #context: PluginContext;\n\n constructor(context: PluginContext) {\n super();\n this.#context = context;\n }\n\n protected override async _open() {}\n\n protected override async _close() {\n await Promise.all(Array.from(this.#runtimes.values()).map((rt) => rt.dispose()));\n this.#runtimes.clear();\n }\n\n getRuntime(spaceId: SpaceId): ManagedRuntime.ManagedRuntime<AssistantCapabilities.ComputeServices, never> {\n if (this.#runtimes.has(spaceId)) {\n return this.#runtimes.get(spaceId)!;\n }\n\n const layer = Layer.unwrapEffect(\n Effect.gen(this, function* () {\n const client = this.#context.getCapability(ClientCapabilities.Client);\n const serviceLayer =\n this.#context.getCapability(AssistantCapabilities.AiServiceLayer) ?? Layer.die('AiService not found');\n\n // TODO(dmaretskyi): Make those reactive.\n const functions = this.#context.getCapabilities(Capabilities.Functions);\n const toolkits = this.#context.getCapabilities(Capabilities.Toolkit);\n const handlers = this.#context.getCapabilities(Capabilities.ToolkitHandler);\n\n const allFunctions = functions.flat();\n // TODO(wittjosiah): Don't cast.\n const toolkit = AiToolkit.merge(...toolkits) as AiToolkit.Any as AiToolkit.AiToolkit<AiTool.Any>;\n const handlersLayer = Layer.mergeAll(Layer.empty, ...handlers);\n\n const space = client.spaces.get(spaceId);\n invariant(space);\n yield* Effect.promise(() => space.waitUntilReady());\n\n return Layer.mergeAll(TriggerDispatcher.layer({ timeControl: 'natural' })).pipe(\n Layer.provideMerge(\n Layer.mergeAll(\n IvocationTracerLive,\n TriggerStateStore.layerKv.pipe(Layer.provide(BrowserKeyValueStore.layerLocalStorage)),\n serviceLayer,\n makeToolResolverFromFunctions(allFunctions, toolkit),\n makeToolExecutionServiceFromFunctions(allFunctions, toolkit, handlersLayer),\n CredentialsService.layerFromDatabase(),\n ),\n ),\n Layer.provideMerge(\n Layer.mergeAll(\n space ? DatabaseService.layer(space.db) : DatabaseService.notAvailable,\n space ? QueueService.layer(space.queues) : QueueService.notAvailable,\n LocalFunctionExecutionService.layerLive,\n RemoteFunctionExecutionService.mockLayer,\n ),\n ),\n Layer.provideMerge(FunctionImplementationResolver.layerTest({ functions: allFunctions })),\n );\n }),\n );\n\n const runtime = ManagedRuntime.make(layer);\n this.#runtimes.set(spaceId, runtime);\n\n return runtime;\n }\n}\n\nconst IvocationTracerLive = Layer.unwrapEffect(\n Effect.gen(function* () {\n const {\n objects: [properties],\n } = yield* DatabaseService.runQuery(Query.type(PropertiesType));\n invariant(properties);\n if (!properties.invocationTraceQueue) {\n const queue = yield* QueueService.createQueue({ subspaceTag: 'trace' });\n properties.invocationTraceQueue = Ref.fromDXN(queue.dxn);\n }\n const queue = properties.invocationTraceQueue.target;\n invariant(queue);\n return InvocationTracer.layerLive({ invocationTraceQueue: queue });\n }),\n);\n"],
5
+ "mappings": ";;;;;;;;AAIA,SAAsBA,iBAAiB;AACvC,SAASC,4BAA4B;AACrC,SAASC,QAAQC,OAAOC,sBAAsB;AAE9C,SAASC,cAAkCC,mBAAmB;AAC9D,SAASC,uCAAuCC,qCAAqC;AACrF,SAASC,sBAAsB;AAC/B,SAASC,gBAAgB;AACzB,SAASC,OAAOC,WAAW;AAC3B,SACEC,oBACAC,iBACAC,gCACAC,kBACAC,+BACAC,cACAC,gCACAC,yBACK;AACP,SAASC,yBAAyB;AAClC,SAASC,iBAAiB;AAE1B,SAASC,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAInC,IAAA,0BAAe,OAAOC,YAAAA;AACpB,QAAMC,WAAW,MAAM,IAAIC,2BAA2BF,OAAAA,EAASG,KAAI;AACnE,SAAOC,YAAYC,sBAAsBC,gBAAgBL,UAAU,YAAA;AACjE,UAAMA,SAASM,MAAK;EACtB,CAAA;AACF;IAGW,YAAA,oBAAA,QAAA;IACA,WAAA,oBAAA,QAAA;AAFX,IAAML,6BAAN,cAAyCM,SAAAA;EASvC,MAAyBC,QAAQ;EAAC;EAElC,MAAyBC,SAAS;AAChC,UAAMC,QAAQC,IAAIC,MAAMC,KAAK,yBAAA,MAAK,SAAA,EAAUC,OAAM,CAAA,EAAIC,IAAI,CAACC,OAAOA,GAAGC,QAAO,CAAA,CAAA;AAC5E,6BAAA,MAAK,SAAA,EAAUC,MAAK;EACtB;EAEAC,WAAWC,SAA+F;AACxG,QAAI,yBAAA,MAAK,SAAA,EAAUC,IAAID,OAAAA,GAAU;AAC/B,aAAO,yBAAA,MAAK,SAAA,EAAUE,IAAIF,OAAAA;IAC5B;AAEA,UAAMG,QAAQC,MAAMC,aAClBC,OAAOC,IAAI,MAAM,aAAA;AACf,YAAMC,SAAS,yBAAA,MAAK,QAAA,EAASC,cAAcC,mBAAmBC,MAAM;AACpE,YAAMC,eACJ,yBAAA,MAAK,QAAA,EAASH,cAAczB,sBAAsB6B,cAAc,KAAKT,MAAMU,IAAI,qBAAA;AAGjF,YAAMC,YAAY,yBAAA,MAAK,QAAA,EAASC,gBAAgBC,aAAaC,SAAS;AACtE,YAAMC,WAAW,yBAAA,MAAK,QAAA,EAASH,gBAAgBC,aAAaG,OAAO;AACnE,YAAMC,WAAW,yBAAA,MAAK,QAAA,EAASL,gBAAgBC,aAAaK,cAAc;AAE1E,YAAMC,eAAeR,UAAUS,KAAI;AAEnC,YAAMC,UAAUC,UAAUC,MAAK,GAAIR,QAAAA;AACnC,YAAMS,gBAAgBxB,MAAMyB,SAASzB,MAAM0B,OAAK,GAAKT,QAAAA;AAErD,YAAMU,QAAQvB,OAAOwB,OAAO9B,IAAIF,OAAAA;AAChCiC,gBAAUF,OAAAA,QAAAA;;;;;;;;;AACV,aAAOzB,OAAO4B,QAAQ,MAAMH,MAAMI,eAAc,CAAA;AAEhD,aAAO/B,MAAMyB,SAASO,kBAAkBjC,MAAM;QAAEkC,aAAa;MAAU,CAAA,CAAA,EAAIC,KACzElC,MAAMmC,aACJnC,MAAMyB,SACJW,qBACAC,kBAAkBC,QAAQJ,KAAKlC,MAAMuC,QAAQC,qBAAqBC,iBAAiB,CAAA,GACnFjC,cACAkC,8BAA8BvB,cAAcE,OAAAA,GAC5CsB,sCAAsCxB,cAAcE,SAASG,aAAAA,GAC7DoB,mBAAmBC,kBAAiB,CAAA,CAAA,GAGxC7C,MAAMmC,aACJnC,MAAMyB,SACJE,QAAQmB,gBAAgB/C,MAAM4B,MAAMoB,EAAE,IAAID,gBAAgBE,cAC1DrB,QAAQsB,aAAalD,MAAM4B,MAAMuB,MAAM,IAAID,aAAaD,cACxDG,8BAA8BC,WAC9BC,+BAA+BC,SAAS,CAAA,GAG5CtD,MAAMmC,aAAaoB,+BAA+BC,UAAU;QAAE7C,WAAWQ;MAAa,CAAA,CAAA,CAAA;IAE1F,CAAA,CAAA;AAGF,UAAMsC,UAAUC,eAAeC,KAAK5D,KAAAA;AACpC,6BAAA,MAAK,SAAA,EAAU6D,IAAIhE,SAAS6D,OAAAA;AAE5B,WAAOA;EACT;EAjEA,YAAYlF,SAAwB;AAClC,UAAK,GAJP,0BAAA,MAAS,WAAA;;aAAY,oBAAIsF,IAAAA;QACzB,0BAAA,MAAS,UAAA;;aAAT;;mCAIO,UAAWtF,OAAAA;EAClB;AA+DF;AAEA,IAAM6D,sBAAsBpC,MAAMC,aAChCC,OAAOC,IAAI,aAAA;AACT,QAAM,EACJ2D,SAAS,CAACC,UAAAA,EAAW,IACnB,OAAOjB,gBAAgBkB,SAASC,MAAMC,KAAKC,cAAAA,CAAAA;AAC/CtC,YAAUkC,YAAAA,QAAAA;;;;;;;;;AACV,MAAI,CAACA,WAAWK,sBAAsB;AACpC,UAAMC,SAAQ,OAAOpB,aAAaqB,YAAY;MAAEC,aAAa;IAAQ,CAAA;AACrER,eAAWK,uBAAuBI,IAAIC,QAAQJ,OAAMK,GAAG;EACzD;AACA,QAAML,QAAQN,WAAWK,qBAAqBO;AAC9C9C,YAAUwC,OAAAA,QAAAA;;;;;;;;;AACV,SAAOO,iBAAiBxB,UAAU;IAAEgB,sBAAsBC;EAAM,CAAA;AAClE,CAAA,CAAA;",
6
+ "names": ["AiToolkit", "BrowserKeyValueStore", "Effect", "Layer", "ManagedRuntime", "Capabilities", "contributes", "makeToolExecutionServiceFromFunctions", "makeToolResolverFromFunctions", "PropertiesType", "Resource", "Query", "Ref", "CredentialsService", "DatabaseService", "FunctionImplementationResolver", "InvocationTracer", "LocalFunctionExecutionService", "QueueService", "RemoteFunctionExecutionService", "TriggerDispatcher", "TriggerStateStore", "invariant", "ClientCapabilities", "context", "provider", "ComputeRuntimeProviderImpl", "open", "contributes", "AssistantCapabilities", "ComputeRuntime", "close", "Resource", "_open", "_close", "Promise", "all", "Array", "from", "values", "map", "rt", "dispose", "clear", "getRuntime", "spaceId", "has", "get", "layer", "Layer", "unwrapEffect", "Effect", "gen", "client", "getCapability", "ClientCapabilities", "Client", "serviceLayer", "AiServiceLayer", "die", "functions", "getCapabilities", "Capabilities", "Functions", "toolkits", "Toolkit", "handlers", "ToolkitHandler", "allFunctions", "flat", "toolkit", "AiToolkit", "merge", "handlersLayer", "mergeAll", "empty", "space", "spaces", "invariant", "promise", "waitUntilReady", "TriggerDispatcher", "timeControl", "pipe", "provideMerge", "IvocationTracerLive", "TriggerStateStore", "layerKv", "provide", "BrowserKeyValueStore", "layerLocalStorage", "makeToolResolverFromFunctions", "makeToolExecutionServiceFromFunctions", "CredentialsService", "layerFromDatabase", "DatabaseService", "db", "notAvailable", "QueueService", "queues", "LocalFunctionExecutionService", "layerLive", "RemoteFunctionExecutionService", "mockLayer", "FunctionImplementationResolver", "layerTest", "runtime", "ManagedRuntime", "make", "set", "Map", "objects", "properties", "runQuery", "Query", "type", "PropertiesType", "invocationTraceQueue", "queue", "createQueue", "subspaceTag", "Ref", "fromDXN", "dxn", "target", "InvocationTracer"]
7
+ }
@@ -1,4 +1,8 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ AssistantCapabilities
4
+ } from "./chunk-XD4CDA4R.mjs";
5
+ import "./chunk-VFY2JG62.mjs";
2
6
  import "./chunk-HSLMI22Q.mjs";
3
7
 
4
8
  // src/capabilities/edge-model-resolver.ts
@@ -6,14 +10,14 @@ import * as AnthropicClient from "@effect/ai-anthropic/AnthropicClient";
6
10
  import { FetchHttpClient } from "@effect/platform";
7
11
  import { Layer } from "effect";
8
12
  import { AiServiceRouter } from "@dxos/ai";
9
- import { Capabilities, contributes } from "@dxos/app-framework";
10
- var edge_model_resolver_default = (() => [
11
- contributes(Capabilities.AiModelResolver, AiServiceRouter.AnthropicResolver.pipe(Layer.provide(AnthropicClient.layer({
13
+ import { contributes } from "@dxos/app-framework";
14
+ var edge_model_resolver_default = () => [
15
+ contributes(AssistantCapabilities.AiModelResolver, AiServiceRouter.AnthropicResolver.pipe(Layer.provide(AnthropicClient.layer({
12
16
  // TODO(dmaretskyi): Read endpoint from config/settings.
13
17
  apiUrl: "https://ai-service.dxos.workers.dev/provider/anthropic"
14
18
  })), Layer.provide(FetchHttpClient.layer)))
15
- ]);
19
+ ];
16
20
  export {
17
21
  edge_model_resolver_default as default
18
22
  };
19
- //# sourceMappingURL=edge-model-resolver-A7B6QHLL.mjs.map
23
+ //# sourceMappingURL=edge-model-resolver-UE5TLLJZ.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/edge-model-resolver.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as AnthropicClient from '@effect/ai-anthropic/AnthropicClient';\nimport { FetchHttpClient } from '@effect/platform';\nimport { Layer } from 'effect';\n\nimport { AiServiceRouter } from '@dxos/ai';\nimport { type Capability, contributes } from '@dxos/app-framework';\n\nimport { AssistantCapabilities } from './capabilities';\n\nexport default (): Capability<any>[] => [\n contributes(\n AssistantCapabilities.AiModelResolver,\n AiServiceRouter.AnthropicResolver.pipe(\n Layer.provide(\n AnthropicClient.layer({\n // TODO(dmaretskyi): Read endpoint from config/settings.\n apiUrl: 'https://ai-service.dxos.workers.dev/provider/anthropic',\n }),\n ),\n Layer.provide(FetchHttpClient.layer),\n ),\n ),\n];\n"],
5
+ "mappings": ";;;;;;;;AAIA,YAAYA,qBAAqB;AACjC,SAASC,uBAAuB;AAChC,SAASC,aAAa;AAEtB,SAASC,uBAAuB;AAChC,SAA0BC,mBAAmB;AAI7C,IAAA,8BAAe,MAAyB;EACtCC,YACEC,sBAAsBC,iBACtBC,gBAAgBC,kBAAkBC,KAChCC,MAAMC,QACYC,sBAAM;;IAEpBC,QAAQ;EACV,CAAA,CAAA,GAEFH,MAAMC,QAAQG,gBAAgBF,KAAK,CAAA,CAAA;;",
6
+ "names": ["AnthropicClient", "FetchHttpClient", "Layer", "AiServiceRouter", "contributes", "contributes", "AssistantCapabilities", "AiModelResolver", "AiServiceRouter", "AnthropicResolver", "pipe", "Layer", "provide", "layer", "apiUrl", "FetchHttpClient"]
7
+ }
@@ -10,22 +10,33 @@ import {
10
10
  SequenceContainer,
11
11
  Toolbox,
12
12
  ToolboxContainer
13
- } from "./chunk-H3ZC4UL7.mjs";
13
+ } from "./chunk-YU62ZWJN.mjs";
14
14
  import {
15
15
  TemplateEditor
16
- } from "./chunk-GCNF3CQU.mjs";
16
+ } from "./chunk-LVTG5JTW.mjs";
17
17
  import {
18
18
  Toolbar
19
19
  } from "./chunk-4WLFSXZG.mjs";
20
20
  import {
21
+ AiService,
22
+ AppGraphBuilder,
23
+ AssistantState,
24
+ BlueprintDefinition,
21
25
  Chat,
22
26
  ChatContextProvider,
27
+ ComputeRuntime,
28
+ EdgeModelResolver,
29
+ IntentResolver,
30
+ LocalModelResolver,
31
+ ReactSurface,
32
+ Settings,
33
+ Toolkit,
23
34
  useChatContext
24
- } from "./chunk-X2YUKRBE.mjs";
35
+ } from "./chunk-V44ZG7CU.mjs";
25
36
  import {
26
37
  BLUEPRINT_KEY,
27
38
  createBlueprint
28
- } from "./chunk-5MYWJPYA.mjs";
39
+ } from "./chunk-QG2KT3AT.mjs";
29
40
  import {
30
41
  ApiAuthorization,
31
42
  AssistantAction_exports,
@@ -36,7 +47,7 @@ import {
36
47
  } from "./chunk-7YOGZI66.mjs";
37
48
  import {
38
49
  AssistantCapabilities
39
- } from "./chunk-FHRJMZ7L.mjs";
50
+ } from "./chunk-XD4CDA4R.mjs";
40
51
  import {
41
52
  ASSISTANT_DIALOG,
42
53
  ASSISTANT_PLUGIN,
@@ -44,19 +55,6 @@ import {
44
55
  } from "./chunk-VFY2JG62.mjs";
45
56
  import "./chunk-HSLMI22Q.mjs";
46
57
 
47
- // src/capabilities/index.ts
48
- import { lazy } from "@dxos/app-framework";
49
- var AiService = lazy(() => import("./ai-service-I5JU4JN2.mjs"));
50
- var AppGraphBuilder = lazy(() => import("./app-graph-builder-EMR5JF6Z.mjs"));
51
- var AssistantState = lazy(() => import("./state-6UHESJI5.mjs"));
52
- var BlueprintDefinition = lazy(() => import("./blueprint-definition-B6UDX5U3.mjs"));
53
- var EdgeModelResolver = lazy(() => import("./edge-model-resolver-A7B6QHLL.mjs"));
54
- var IntentResolver = lazy(() => import("./intent-resolver-CIXO3KMY.mjs"));
55
- var LocalModelResolver = lazy(() => import("./local-model-resolver-JCYDHAZY.mjs"));
56
- var ReactSurface = lazy(() => import("./react-surface-5NDJAWA2.mjs"));
57
- var Settings = lazy(() => import("./settings-K2QW4ATZ.mjs"));
58
- var Toolkit = lazy(() => import("./toolkit-LNLRBVDU.mjs"));
59
-
60
58
  // src/events.ts
61
59
  import { defineEvent } from "@dxos/app-framework";
62
60
  (function(AssistantEvents2) {
@@ -67,7 +65,7 @@ var AssistantEvents;
67
65
  // src/AssistantPlugin.tsx
68
66
  import { Capabilities, Events, contributes, createIntent, defineModule, definePlugin } from "@dxos/app-framework";
69
67
  import { ResearchGraph, ResearchOn } from "@dxos/assistant-testing";
70
- import { Blueprint as Blueprint2, Prompt } from "@dxos/blueprints";
68
+ import { Blueprint as Blueprint2 } from "@dxos/blueprints";
71
69
  import { Sequence as Sequence2 } from "@dxos/conductor";
72
70
  import { Type } from "@dxos/echo";
73
71
  import { ClientCapabilities, ClientEvents } from "@dxos/plugin-client";
@@ -238,8 +236,7 @@ var AssistantPlugin = () => definePlugin(meta, [
238
236
  ServiceType,
239
237
  Assistant_exports.CompanionTo,
240
238
  ResearchGraph,
241
- ResearchOn,
242
- Prompt.Prompt
239
+ ResearchOn
243
240
  ])
244
241
  }),
245
242
  defineModule({
@@ -298,6 +295,12 @@ var AssistantPlugin = () => definePlugin(meta, [
298
295
  // TODO(wittjosiah): Use a different event.
299
296
  activatesOn: Events.Startup,
300
297
  activate: Toolkit
298
+ }),
299
+ defineModule({
300
+ id: `${meta.id}/module/compute-runtime`,
301
+ // TODO(wittjosiah): Use a different event.
302
+ activatesOn: Events.Startup,
303
+ activate: ComputeRuntime
301
304
  })
302
305
  ]);
303
306
  export {
@@ -322,6 +325,7 @@ export {
322
325
  ChatContextProvider,
323
326
  ChatDialog,
324
327
  ChatProgress,
328
+ ComputeRuntime,
325
329
  EdgeModelResolver,
326
330
  IntentResolver,
327
331
  LLM_PROVIDERS,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/capabilities/index.ts", "../../../src/events.ts", "../../../src/AssistantPlugin.tsx", "../../../src/translations.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { lazy } from '@dxos/app-framework';\n\nexport const AiService = lazy(() => import('./ai-service'));\nexport const AppGraphBuilder = lazy(() => import('./app-graph-builder'));\nexport const AssistantState = lazy(() => import('./state'));\nexport const BlueprintDefinition = lazy(() => import('./blueprint-definition'));\nexport const EdgeModelResolver = lazy(() => import('./edge-model-resolver'));\nexport const IntentResolver = lazy(() => import('./intent-resolver'));\nexport const LocalModelResolver = lazy(() => import('./local-model-resolver'));\nexport const ReactSurface = lazy(() => import('./react-surface'));\nexport const Settings = lazy(() => import('./settings'));\nexport const Toolkit = lazy(() => import('./toolkit'));\n\nexport * from './blueprint-definition';\nexport * from './capabilities';\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { defineEvent } from '@dxos/app-framework';\n\nimport { meta } from './meta';\n\nexport namespace AssistantEvents {\n export const SetupAiServiceProviders = defineEvent(`${meta.id}/event/setup-ai-service-providers`);\n}\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { Capabilities, Events, contributes, createIntent, defineModule, definePlugin } from '@dxos/app-framework';\nimport { ResearchGraph, ResearchOn } from '@dxos/assistant-testing';\nimport { Blueprint, Prompt } from '@dxos/blueprints';\nimport { Sequence } from '@dxos/conductor';\nimport { Type } from '@dxos/echo';\nimport { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';\nimport { SpaceCapabilities, SpaceEvents } from '@dxos/plugin-space';\nimport { defineObjectForm } from '@dxos/plugin-space/types';\n\nimport {\n AiService,\n AppGraphBuilder,\n AssistantState,\n BlueprintDefinition,\n EdgeModelResolver,\n IntentResolver,\n LocalModelResolver,\n ReactSurface,\n Settings,\n Toolkit,\n} from './capabilities';\nimport { AssistantEvents } from './events';\nimport { meta } from './meta';\nimport { translations } from './translations';\nimport { Assistant, AssistantAction, ServiceType } from './types';\n\nexport const AssistantPlugin = () =>\n definePlugin(meta, [\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, translations),\n }),\n defineModule({\n id: `${meta.id}/module/settings`,\n activatesOn: Events.SetupSettings,\n activate: Settings,\n }),\n defineModule({\n id: `${meta.id}/module/state`,\n // TODO(wittjosiah): Does not integrate with settings store.\n // Should this be a different event?\n // Should settings store be renamed to be more generic?\n activatesOn: Events.SetupSettings,\n activate: AssistantState,\n }),\n defineModule({\n id: `${meta.id}/module/metadata`,\n activatesOn: Events.SetupMetadata,\n activate: () => [\n contributes(Capabilities.Metadata, {\n id: Type.getTypename(Assistant.Chat),\n metadata: {\n icon: 'ph--atom--regular',\n },\n }),\n contributes(Capabilities.Metadata, {\n id: Type.getTypename(Blueprint.Blueprint),\n metadata: {\n icon: 'ph--blueprint--regular',\n },\n }),\n contributes(Capabilities.Metadata, {\n id: Type.getTypename(Sequence),\n metadata: {\n icon: 'ph--circuitry--regular',\n },\n }),\n ],\n }),\n defineModule({\n id: `${meta.id}/module/object-form`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () => [\n contributes(\n SpaceCapabilities.ObjectForm,\n defineObjectForm({\n objectSchema: Assistant.Chat,\n getIntent: (_, options) => createIntent(AssistantAction.CreateChat, { space: options.space }),\n }),\n ),\n contributes(\n SpaceCapabilities.ObjectForm,\n defineObjectForm({\n objectSchema: Blueprint.Blueprint,\n formSchema: AssistantAction.BlueprintForm,\n getIntent: (props) => createIntent(AssistantAction.CreateBlueprint, props),\n }),\n ),\n contributes(\n SpaceCapabilities.ObjectForm,\n defineObjectForm({\n objectSchema: Sequence,\n getIntent: () => createIntent(AssistantAction.CreateSequence),\n }),\n ),\n ],\n }),\n defineModule({\n id: `${meta.id}/module/schema`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () =>\n contributes(ClientCapabilities.Schema, [\n ServiceType,\n Assistant.CompanionTo,\n ResearchGraph,\n ResearchOn,\n Prompt.Prompt,\n ]),\n }),\n defineModule({\n id: `${meta.id}/module/on-space-created`,\n activatesOn: SpaceEvents.SpaceCreated,\n activate: () =>\n contributes(SpaceCapabilities.OnSpaceCreated, ({ rootCollection, space }) =>\n createIntent(AssistantAction.OnSpaceCreated, { rootCollection, space }),\n ),\n }),\n defineModule({\n id: `${meta.id}/module/app-graph-builder`,\n activatesOn: Events.SetupAppGraph,\n activate: AppGraphBuilder,\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.SetupIntentResolver,\n activate: IntentResolver,\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.SetupReactSurface,\n // TODO(wittjosiah): Should occur before the chat is loaded when surfaces activation is more granular.\n activatesBefore: [Events.SetupArtifactDefinition],\n activate: ReactSurface,\n }),\n defineModule({\n id: `${meta.id}/module/edge-model-resolver`,\n activatesOn: AssistantEvents.SetupAiServiceProviders,\n activate: EdgeModelResolver,\n }),\n defineModule({\n id: `${meta.id}/module/local-model-resolver`,\n activatesOn: AssistantEvents.SetupAiServiceProviders,\n activate: LocalModelResolver,\n }),\n defineModule({\n id: `${meta.id}/module/ai-service`,\n activatesBefore: [AssistantEvents.SetupAiServiceProviders],\n // TODO(dmaretskyi): This should activate lazily when the AI chat is used.\n activatesOn: Events.Startup,\n activate: AiService,\n }),\n defineModule({\n id: `${meta.id}/module/blueprint`,\n activatesOn: Events.SetupArtifactDefinition,\n activate: BlueprintDefinition,\n }),\n defineModule({\n id: `${meta.id}/module/toolkit`,\n // TODO(wittjosiah): Use a different event.\n activatesOn: Events.Startup,\n activate: Toolkit,\n }),\n ]);\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { Blueprint } from '@dxos/blueprints';\nimport { Sequence } from '@dxos/conductor';\nimport { type Resource } from '@dxos/react-ui';\n\nimport { meta } from './meta';\nimport { Assistant } from './types';\n\n// TODO(burdon): Standardize translation names.\nexport const translations = [\n {\n 'en-US': {\n // TODO(burdon): From assistant.\n [Blueprint.Blueprint.typename]: {\n 'typename label': 'Blueprint',\n 'typename label_zero': 'Blueprints',\n 'typename label_one': 'Blueprint',\n 'typename label_other': 'Blueprints',\n 'object name placeholder': 'New blueprint',\n 'rename object label': 'Rename blueprint',\n 'delete object label': 'Delete blueprint',\n },\n // TODO(burdon): From conductor.\n [Sequence.typename]: {\n 'typename label': 'Sequence',\n 'typename label_zero': 'Sequences',\n 'typename label_one': 'Sequence',\n 'typename label_other': 'Sequences',\n 'object name placeholder': 'New sequence',\n 'rename object label': 'Rename sequence',\n 'delete object label': 'Delete sequence',\n },\n [Assistant.Chat.typename]: {\n 'typename label': 'AI Chat',\n 'object name placeholder': 'New AI Chat',\n 'rename object label': 'Rename AI Chat',\n 'delete object label': 'Delete AI Chat',\n },\n // TODO(burdon): Reconcile with react-ui-chat.\n [meta.id]: {\n 'templates label': 'Templates',\n 'open ambient chat label': 'Open Assistant',\n 'assistant chat label': 'Assistant',\n 'plugin name': 'Assistant',\n 'settings title': 'Assistant settings',\n 'object placeholder': 'New prompt',\n 'create object label': 'Create prompt',\n 'create trigger label': 'Create trigger',\n 'create stack section label': 'Create prompt',\n 'command placeholder': 'Enter slash command...',\n 'template placeholder': 'Enter template...',\n 'value placeholder': 'Enter value...',\n 'prompt rules label': 'Prompt Rules',\n 'typename placeholder': 'Enter typename of objects which this template is for',\n 'description placeholder': 'Enter description of when this template should be used',\n 'select preset template placeholder': 'Select preset',\n 'service registry label': 'Service Registry',\n 'type filter placeholder': 'Type',\n 'any type filter label': 'Any',\n 'no blueprint message': 'No active blueprints',\n 'calling tool label': 'Calling tool...',\n 'calling label': 'Calling',\n 'error label': 'Error',\n\n 'sequence logs label': 'Logs',\n\n 'assistant dialog title': 'Assistant',\n 'open assistant label': 'Open assistant',\n\n 'no tools': 'No tools are configured',\n 'no results': 'No results',\n\n 'button retry': 'Retry',\n 'button suggestion': 'Assistant suggestion',\n 'button select option': 'Select option',\n 'button cancel': 'Cancel',\n 'button save': 'Save',\n 'button run': 'Run',\n 'button new thread': 'New Chat',\n 'chat history label': 'Chat History',\n\n 'toolkit label': 'Toolkit',\n 'summary label': 'Summary',\n\n 'search placeholder': 'Search...',\n 'prompt placeholder': 'Enter question or command...',\n 'button context objects': 'Add to context',\n 'button context settings': 'Chat settings',\n 'button microphone': 'Click to speak',\n 'button cancel processing': 'Stop processing',\n 'blueprints in context title': 'Blueprints',\n 'objects in context title': 'Content',\n 'remove object in context label': 'Remove document',\n 'chat model title': 'Model',\n\n 'settings default label': 'Default',\n 'settings custom prompts label': 'Use custom prompts',\n 'settings llm provider label': 'LLM provider',\n 'settings edge llm model label': 'Remote language model',\n 'settings ollama llm model label': 'Ollama language model',\n },\n },\n },\n] as const satisfies Resource[];\n"],
5
- "mappings": "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",
6
- "names": ["lazy", "AiService", "lazy", "AppGraphBuilder", "AssistantState", "BlueprintDefinition", "EdgeModelResolver", "IntentResolver", "LocalModelResolver", "ReactSurface", "Settings", "Toolkit", "defineEvent", "AssistantEvents", "SetupAiServiceProviders", "defineEvent", "meta", "id", "Capabilities", "Events", "contributes", "createIntent", "defineModule", "definePlugin", "ResearchGraph", "ResearchOn", "Blueprint", "Prompt", "Sequence", "Type", "ClientCapabilities", "ClientEvents", "SpaceCapabilities", "SpaceEvents", "defineObjectForm", "Blueprint", "Sequence", "translations", "Blueprint", "typename", "Sequence", "Assistant", "Chat", "meta", "id", "AssistantPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "Events", "SetupTranslations", "activate", "contributes", "Capabilities", "Translations", "translations", "SetupSettings", "Settings", "AssistantState", "SetupMetadata", "Metadata", "Type", "getTypename", "Assistant", "Chat", "metadata", "icon", "Blueprint", "Sequence", "ClientEvents", "SetupSchema", "SpaceCapabilities", "ObjectForm", "defineObjectForm", "objectSchema", "getIntent", "_", "options", "createIntent", "AssistantAction", "CreateChat", "space", "formSchema", "BlueprintForm", "props", "CreateBlueprint", "CreateSequence", "ClientCapabilities", "Schema", "ServiceType", "CompanionTo", "ResearchGraph", "ResearchOn", "Prompt", "SpaceEvents", "SpaceCreated", "OnSpaceCreated", "rootCollection", "SetupAppGraph", "AppGraphBuilder", "SetupIntentResolver", "IntentResolver", "SetupReactSurface", "activatesBefore", "SetupArtifactDefinition", "ReactSurface", "AssistantEvents", "SetupAiServiceProviders", "EdgeModelResolver", "LocalModelResolver", "Startup", "AiService", "BlueprintDefinition", "Toolkit"]
3
+ "sources": ["../../../src/events.ts", "../../../src/AssistantPlugin.tsx", "../../../src/translations.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { defineEvent } from '@dxos/app-framework';\n\nimport { meta } from './meta';\n\nexport namespace AssistantEvents {\n export const SetupAiServiceProviders = defineEvent(`${meta.id}/event/setup-ai-service-providers`);\n}\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { Capabilities, Events, contributes, createIntent, defineModule, definePlugin } from '@dxos/app-framework';\nimport { ResearchGraph, ResearchOn } from '@dxos/assistant-testing';\nimport { Blueprint } from '@dxos/blueprints';\nimport { Sequence } from '@dxos/conductor';\nimport { Type } from '@dxos/echo';\nimport { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';\nimport { SpaceCapabilities, SpaceEvents } from '@dxos/plugin-space';\nimport { defineObjectForm } from '@dxos/plugin-space/types';\n\nimport {\n AiService,\n AppGraphBuilder,\n AssistantState,\n BlueprintDefinition,\n ComputeRuntime,\n EdgeModelResolver,\n IntentResolver,\n LocalModelResolver,\n ReactSurface,\n Settings,\n Toolkit,\n} from './capabilities';\nimport { AssistantEvents } from './events';\nimport { meta } from './meta';\nimport { translations } from './translations';\nimport { Assistant, AssistantAction, ServiceType } from './types';\n\nexport const AssistantPlugin = () =>\n definePlugin(meta, [\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, translations),\n }),\n defineModule({\n id: `${meta.id}/module/settings`,\n activatesOn: Events.SetupSettings,\n activate: Settings,\n }),\n defineModule({\n id: `${meta.id}/module/state`,\n // TODO(wittjosiah): Does not integrate with settings store.\n // Should this be a different event?\n // Should settings store be renamed to be more generic?\n activatesOn: Events.SetupSettings,\n activate: AssistantState,\n }),\n defineModule({\n id: `${meta.id}/module/metadata`,\n activatesOn: Events.SetupMetadata,\n activate: () => [\n contributes(Capabilities.Metadata, {\n id: Type.getTypename(Assistant.Chat),\n metadata: {\n icon: 'ph--atom--regular',\n },\n }),\n contributes(Capabilities.Metadata, {\n id: Type.getTypename(Blueprint.Blueprint),\n metadata: {\n icon: 'ph--blueprint--regular',\n },\n }),\n contributes(Capabilities.Metadata, {\n id: Type.getTypename(Sequence),\n metadata: {\n icon: 'ph--circuitry--regular',\n },\n }),\n ],\n }),\n defineModule({\n id: `${meta.id}/module/object-form`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () => [\n contributes(\n SpaceCapabilities.ObjectForm,\n defineObjectForm({\n objectSchema: Assistant.Chat,\n getIntent: (_, options) => createIntent(AssistantAction.CreateChat, { space: options.space }),\n }),\n ),\n contributes(\n SpaceCapabilities.ObjectForm,\n defineObjectForm({\n objectSchema: Blueprint.Blueprint,\n formSchema: AssistantAction.BlueprintForm,\n getIntent: (props) => createIntent(AssistantAction.CreateBlueprint, props),\n }),\n ),\n contributes(\n SpaceCapabilities.ObjectForm,\n defineObjectForm({\n objectSchema: Sequence,\n getIntent: () => createIntent(AssistantAction.CreateSequence),\n }),\n ),\n ],\n }),\n defineModule({\n id: `${meta.id}/module/schema`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () =>\n contributes(ClientCapabilities.Schema, [ServiceType, Assistant.CompanionTo, ResearchGraph, ResearchOn]),\n }),\n defineModule({\n id: `${meta.id}/module/on-space-created`,\n activatesOn: SpaceEvents.SpaceCreated,\n activate: () =>\n contributes(SpaceCapabilities.OnSpaceCreated, ({ rootCollection, space }) =>\n createIntent(AssistantAction.OnSpaceCreated, { rootCollection, space }),\n ),\n }),\n defineModule({\n id: `${meta.id}/module/app-graph-builder`,\n activatesOn: Events.SetupAppGraph,\n activate: AppGraphBuilder,\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.SetupIntentResolver,\n activate: IntentResolver,\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.SetupReactSurface,\n // TODO(wittjosiah): Should occur before the chat is loaded when surfaces activation is more granular.\n activatesBefore: [Events.SetupArtifactDefinition],\n activate: ReactSurface,\n }),\n defineModule({\n id: `${meta.id}/module/edge-model-resolver`,\n activatesOn: AssistantEvents.SetupAiServiceProviders,\n activate: EdgeModelResolver,\n }),\n defineModule({\n id: `${meta.id}/module/local-model-resolver`,\n activatesOn: AssistantEvents.SetupAiServiceProviders,\n activate: LocalModelResolver,\n }),\n defineModule({\n id: `${meta.id}/module/ai-service`,\n activatesBefore: [AssistantEvents.SetupAiServiceProviders],\n // TODO(dmaretskyi): This should activate lazily when the AI chat is used.\n activatesOn: Events.Startup,\n activate: AiService,\n }),\n defineModule({\n id: `${meta.id}/module/blueprint`,\n activatesOn: Events.SetupArtifactDefinition,\n activate: BlueprintDefinition,\n }),\n defineModule({\n id: `${meta.id}/module/toolkit`,\n // TODO(wittjosiah): Use a different event.\n activatesOn: Events.Startup,\n activate: Toolkit,\n }),\n defineModule({\n id: `${meta.id}/module/compute-runtime`,\n // TODO(wittjosiah): Use a different event.\n activatesOn: Events.Startup,\n activate: ComputeRuntime,\n }),\n ]);\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { Blueprint } from '@dxos/blueprints';\nimport { Sequence } from '@dxos/conductor';\nimport { type Resource } from '@dxos/react-ui';\n\nimport { meta } from './meta';\nimport { Assistant } from './types';\n\n// TODO(burdon): Standardize translation names.\nexport const translations = [\n {\n 'en-US': {\n // TODO(burdon): From assistant.\n [Blueprint.Blueprint.typename]: {\n 'typename label': 'Blueprint',\n 'typename label_zero': 'Blueprints',\n 'typename label_one': 'Blueprint',\n 'typename label_other': 'Blueprints',\n 'object name placeholder': 'New blueprint',\n 'rename object label': 'Rename blueprint',\n 'delete object label': 'Delete blueprint',\n },\n // TODO(burdon): From conductor.\n [Sequence.typename]: {\n 'typename label': 'Sequence',\n 'typename label_zero': 'Sequences',\n 'typename label_one': 'Sequence',\n 'typename label_other': 'Sequences',\n 'object name placeholder': 'New sequence',\n 'rename object label': 'Rename sequence',\n 'delete object label': 'Delete sequence',\n },\n [Assistant.Chat.typename]: {\n 'typename label': 'AI Chat',\n 'object name placeholder': 'New AI Chat',\n 'rename object label': 'Rename AI Chat',\n 'delete object label': 'Delete AI Chat',\n },\n // TODO(burdon): Reconcile with react-ui-chat.\n [meta.id]: {\n 'templates label': 'Templates',\n 'open ambient chat label': 'Open Assistant',\n 'assistant chat label': 'Assistant',\n 'plugin name': 'Assistant',\n 'settings title': 'Assistant settings',\n 'object placeholder': 'New prompt',\n 'create object label': 'Create prompt',\n 'create trigger label': 'Create trigger',\n 'create stack section label': 'Create prompt',\n 'command placeholder': 'Enter slash command...',\n 'template placeholder': 'Enter template...',\n 'value placeholder': 'Enter value...',\n 'prompt rules label': 'Prompt Rules',\n 'typename placeholder': 'Enter typename of objects which this template is for',\n 'description placeholder': 'Enter description of when this template should be used',\n 'select preset template placeholder': 'Select preset',\n 'service registry label': 'Service Registry',\n 'type filter placeholder': 'Type',\n 'any type filter label': 'Any',\n 'no blueprint message': 'No active blueprints',\n 'calling tool label': 'Calling tool...',\n 'calling label': 'Calling',\n 'error label': 'Error',\n\n 'sequence logs label': 'Logs',\n\n 'assistant dialog title': 'Assistant',\n 'open assistant label': 'Open assistant',\n\n 'no tools': 'No tools are configured',\n 'no results': 'No results',\n\n 'button retry': 'Retry',\n 'button suggestion': 'Assistant suggestion',\n 'button select option': 'Select option',\n 'button cancel': 'Cancel',\n 'button save': 'Save',\n 'button run': 'Run',\n 'button new thread': 'New Chat',\n 'chat history label': 'Chat History',\n\n 'toolkit label': 'Toolkit',\n 'summary label': 'Summary',\n\n 'search placeholder': 'Search...',\n 'prompt placeholder': 'Enter question or command...',\n 'button context objects': 'Add to context',\n 'button context settings': 'Chat settings',\n 'button microphone': 'Click to speak',\n 'button cancel processing': 'Stop processing',\n 'blueprints in context title': 'Blueprints',\n 'objects in context title': 'Content',\n 'remove object in context label': 'Remove document',\n 'chat model title': 'Model',\n\n 'settings default label': 'Default',\n 'settings custom prompts label': 'Use custom prompts',\n 'settings llm provider label': 'LLM provider',\n 'settings edge llm model label': 'Remote language model',\n 'settings ollama llm model label': 'Ollama language model',\n },\n },\n },\n] as const satisfies Resource[];\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,SAASA,mBAAmB;UAIXC,kBAAAA;mBACFC,0BAA0BC,YAAY,GAAGC,KAAKC,EAAE,mCAAmC;AAClG,GAFiBJ,oBAAAA,kBAAAA,CAAAA,EAAAA;;;;ACJjB,SAASK,cAAcC,QAAQC,aAAaC,cAAcC,cAAcC,oBAAoB;AAC5F,SAASC,eAAeC,kBAAkB;AAC1C,SAASC,aAAAA,kBAAiB;AAC1B,SAASC,YAAAA,iBAAgB;AACzB,SAASC,YAAY;AACrB,SAASC,oBAAoBC,oBAAoB;AACjD,SAASC,mBAAmBC,mBAAmB;AAC/C,SAASC,wBAAwB;;;ACPjC,SAASC,iBAAiB;AAC1B,SAASC,gBAAgB;AAOlB,IAAMC,eAAe;EAC1B;IACE,SAAS;;MAEP,CAACC,UAAUA,UAAUC,QAAQ,GAAG;QAC9B,kBAAkB;QAClB,uBAAuB;QACvB,sBAAsB;QACtB,wBAAwB;QACxB,2BAA2B;QAC3B,uBAAuB;QACvB,uBAAuB;MACzB;;MAEA,CAACC,SAASD,QAAQ,GAAG;QACnB,kBAAkB;QAClB,uBAAuB;QACvB,sBAAsB;QACtB,wBAAwB;QACxB,2BAA2B;QAC3B,uBAAuB;QACvB,uBAAuB;MACzB;MACA,CAACE,kBAAUC,KAAKH,QAAQ,GAAG;QACzB,kBAAkB;QAClB,2BAA2B;QAC3B,uBAAuB;QACvB,uBAAuB;MACzB;;MAEA,CAACI,KAAKC,EAAE,GAAG;QACT,mBAAmB;QACnB,2BAA2B;QAC3B,wBAAwB;QACxB,eAAe;QACf,kBAAkB;QAClB,sBAAsB;QACtB,uBAAuB;QACvB,wBAAwB;QACxB,8BAA8B;QAC9B,uBAAuB;QACvB,wBAAwB;QACxB,qBAAqB;QACrB,sBAAsB;QACtB,wBAAwB;QACxB,2BAA2B;QAC3B,sCAAsC;QACtC,0BAA0B;QAC1B,2BAA2B;QAC3B,yBAAyB;QACzB,wBAAwB;QACxB,sBAAsB;QACtB,iBAAiB;QACjB,eAAe;QAEf,uBAAuB;QAEvB,0BAA0B;QAC1B,wBAAwB;QAExB,YAAY;QACZ,cAAc;QAEd,gBAAgB;QAChB,qBAAqB;QACrB,wBAAwB;QACxB,iBAAiB;QACjB,eAAe;QACf,cAAc;QACd,qBAAqB;QACrB,sBAAsB;QAEtB,iBAAiB;QACjB,iBAAiB;QAEjB,sBAAsB;QACtB,sBAAsB;QACtB,0BAA0B;QAC1B,2BAA2B;QAC3B,qBAAqB;QACrB,4BAA4B;QAC5B,+BAA+B;QAC/B,4BAA4B;QAC5B,kCAAkC;QAClC,oBAAoB;QAEpB,0BAA0B;QAC1B,iCAAiC;QACjC,+BAA+B;QAC/B,iCAAiC;QACjC,mCAAmC;MACrC;IACF;EACF;;;;AD1EK,IAAMC,kBAAkB,MAC7BC,aAAaC,MAAM;EACjBC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOC;IACpBC,UAAU,MAAMC,YAAYC,aAAaC,cAAcC,YAAAA;EACzD,CAAA;EACAT,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOO;IACpBL,UAAUM;EACZ,CAAA;EACAX,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;;;;IAIdC,aAAaC,OAAOO;IACpBL,UAAUO;EACZ,CAAA;EACAZ,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOU;IACpBR,UAAU,MAAM;MACdC,YAAYC,aAAaO,UAAU;QACjCb,IAAIc,KAAKC,YAAYC,kBAAUC,IAAI;QACnCC,UAAU;UACRC,MAAM;QACR;MACF,CAAA;MACAd,YAAYC,aAAaO,UAAU;QACjCb,IAAIc,KAAKC,YAAYK,WAAUA,SAAS;QACxCF,UAAU;UACRC,MAAM;QACR;MACF,CAAA;MACAd,YAAYC,aAAaO,UAAU;QACjCb,IAAIc,KAAKC,YAAYM,SAAAA;QACrBH,UAAU;UACRC,MAAM;QACR;MACF,CAAA;;EAEJ,CAAA;EACApB,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaqB,aAAaC;IAC1BnB,UAAU,MAAM;MACdC,YACEmB,kBAAkBC,YAClBC,iBAAiB;QACfC,cAAcX,kBAAUC;QACxBW,WAAW,CAACC,GAAGC,YAAYC,aAAaC,wBAAgBC,YAAY;UAAEC,OAAOJ,QAAQI;QAAM,CAAA;MAC7F,CAAA,CAAA;MAEF7B,YACEmB,kBAAkBC,YAClBC,iBAAiB;QACfC,cAAcP,WAAUA;QACxBe,YAAYH,wBAAgBI;QAC5BR,WAAW,CAACS,UAAUN,aAAaC,wBAAgBM,iBAAiBD,KAAAA;MACtE,CAAA,CAAA;MAEFhC,YACEmB,kBAAkBC,YAClBC,iBAAiB;QACfC,cAAcN;QACdO,WAAW,MAAMG,aAAaC,wBAAgBO,cAAc;MAC9D,CAAA,CAAA;;EAGN,CAAA;EACAxC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaqB,aAAaC;IAC1BnB,UAAU,MACRC,YAAYmC,mBAAmBC,QAAQ;MAACC;MAAa1B,kBAAU2B;MAAaC;MAAeC;KAAW;EAC1G,CAAA;EACA9C,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAa6C,YAAYC;IACzB3C,UAAU,MACRC,YAAYmB,kBAAkBwB,gBAAgB,CAAC,EAAEC,gBAAgBf,MAAK,MACpEH,aAAaC,wBAAgBgB,gBAAgB;MAAEC;MAAgBf;IAAM,CAAA,CAAA;EAE3E,CAAA;EACAnC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOgD;IACpB9C,UAAU+C;EACZ,CAAA;EACApD,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOkD;IACpBhD,UAAUiD;EACZ,CAAA;EACAtD,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOoD;;IAEpBC,iBAAiB;MAACrD,OAAOsD;;IACzBpD,UAAUqD;EACZ,CAAA;EACA1D,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAayD,gBAAgBC;IAC7BvD,UAAUwD;EACZ,CAAA;EACA7D,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAayD,gBAAgBC;IAC7BvD,UAAUyD;EACZ,CAAA;EACA9D,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACduD,iBAAiB;MAACG,gBAAgBC;;;IAElC1D,aAAaC,OAAO4D;IACpB1D,UAAU2D;EACZ,CAAA;EACAhE,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOsD;IACpBpD,UAAU4D;EACZ,CAAA;EACAjE,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;;IAEdC,aAAaC,OAAO4D;IACpB1D,UAAU6D;EACZ,CAAA;EACAlE,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;;IAEdC,aAAaC,OAAO4D;IACpB1D,UAAU8D;EACZ,CAAA;CACD;",
6
+ "names": ["defineEvent", "AssistantEvents", "SetupAiServiceProviders", "defineEvent", "meta", "id", "Capabilities", "Events", "contributes", "createIntent", "defineModule", "definePlugin", "ResearchGraph", "ResearchOn", "Blueprint", "Sequence", "Type", "ClientCapabilities", "ClientEvents", "SpaceCapabilities", "SpaceEvents", "defineObjectForm", "Blueprint", "Sequence", "translations", "Blueprint", "typename", "Sequence", "Assistant", "Chat", "meta", "id", "AssistantPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "Events", "SetupTranslations", "activate", "contributes", "Capabilities", "Translations", "translations", "SetupSettings", "Settings", "AssistantState", "SetupMetadata", "Metadata", "Type", "getTypename", "Assistant", "Chat", "metadata", "icon", "Blueprint", "Sequence", "ClientEvents", "SetupSchema", "SpaceCapabilities", "ObjectForm", "defineObjectForm", "objectSchema", "getIntent", "_", "options", "createIntent", "AssistantAction", "CreateChat", "space", "formSchema", "BlueprintForm", "props", "CreateBlueprint", "CreateSequence", "ClientCapabilities", "Schema", "ServiceType", "CompanionTo", "ResearchGraph", "ResearchOn", "SpaceEvents", "SpaceCreated", "OnSpaceCreated", "rootCollection", "SetupAppGraph", "AppGraphBuilder", "SetupIntentResolver", "IntentResolver", "SetupReactSurface", "activatesBefore", "SetupArtifactDefinition", "ReactSurface", "AssistantEvents", "SetupAiServiceProviders", "EdgeModelResolver", "LocalModelResolver", "Startup", "AiService", "BlueprintDefinition", "Toolkit", "ComputeRuntime"]
7
7
  }
@@ -2,14 +2,14 @@ import { createRequire } from 'node:module';const require = createRequire(import
2
2
  import {
3
3
  BLUEPRINT_KEY,
4
4
  createBlueprint
5
- } from "./chunk-5MYWJPYA.mjs";
5
+ } from "./chunk-QG2KT3AT.mjs";
6
6
  import {
7
7
  AssistantAction_exports,
8
8
  Assistant_exports
9
9
  } from "./chunk-7YOGZI66.mjs";
10
10
  import {
11
11
  AssistantCapabilities
12
- } from "./chunk-FHRJMZ7L.mjs";
12
+ } from "./chunk-XD4CDA4R.mjs";
13
13
  import "./chunk-VFY2JG62.mjs";
14
14
  import "./chunk-HSLMI22Q.mjs";
15
15
 
@@ -22,7 +22,7 @@ import { fullyQualifiedId } from "@dxos/client/echo";
22
22
  import { Sequence } from "@dxos/conductor";
23
23
  import { Filter, Key, Obj, Ref } from "@dxos/echo";
24
24
  import { CollectionAction } from "@dxos/plugin-space/types";
25
- var intent_resolver_default = ((context) => [
25
+ var intent_resolver_default = (context) => [
26
26
  contributes(Capabilities.IntentResolver, [
27
27
  createResolver({
28
28
  intent: AssistantAction_exports.OnSpaceCreated,
@@ -106,8 +106,8 @@ var intent_resolver_default = ((context) => [
106
106
  })
107
107
  })
108
108
  ])
109
- ]);
109
+ ];
110
110
  export {
111
111
  intent_resolver_default as default
112
112
  };
113
- //# sourceMappingURL=intent-resolver-CIXO3KMY.mjs.map
113
+ //# sourceMappingURL=intent-resolver-VIINHFMT.mjs.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/capabilities/intent-resolver.ts"],
4
4
  "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Effect } from 'effect';\n\nimport { Capabilities, type PluginContext, contributes, createIntent, createResolver } from '@dxos/app-framework';\nimport { AiContextBinder } from '@dxos/assistant';\nimport { Blueprint, Template } from '@dxos/blueprints';\nimport { fullyQualifiedId } from '@dxos/client/echo';\nimport { Sequence } from '@dxos/conductor';\nimport { Filter, Key, Obj, Ref } from '@dxos/echo';\nimport { CollectionAction } from '@dxos/plugin-space/types';\n\nimport { Assistant, AssistantAction } from '../types';\n\nimport { BLUEPRINT_KEY, createBlueprint } from './blueprint-definition';\nimport { AssistantCapabilities } from './capabilities';\n\nexport default (context: PluginContext) => [\n contributes(Capabilities.IntentResolver, [\n createResolver({\n intent: AssistantAction.OnSpaceCreated,\n resolve: ({ space, rootCollection }) =>\n Effect.gen(function* () {\n const { dispatch } = context.getCapability(Capabilities.IntentDispatcher);\n const { object: chatCollection } = yield* dispatch(\n createIntent(CollectionAction.CreateQueryCollection, { typename: Assistant.Chat.typename }),\n );\n const { object: blueprintCollection } = yield* dispatch(\n createIntent(CollectionAction.CreateQueryCollection, { typename: Blueprint.Blueprint.typename }),\n );\n rootCollection.objects.push(Ref.make(chatCollection), Ref.make(blueprintCollection));\n\n // Create default chat.\n const { object: chat } = yield* dispatch(createIntent(AssistantAction.CreateChat, { space }));\n space.db.add(chat);\n }),\n }),\n createResolver({\n intent: AssistantAction.CreateChat,\n resolve: async ({ space, name }) => {\n const queue = space.queues.create();\n const chat = Obj.make(Assistant.Chat, { name, queue: Ref.fromDXN(queue.dxn) });\n const { objects: blueprints } = await space.db.query(Filter.type(Blueprint.Blueprint)).run();\n // TODO(wittjosiah): This should be a space-level setting.\n // TODO(burdon): Clone when activated. Copy-on-write for template.\n let defaultBlueprint = blueprints.find((blueprint) => blueprint.key === BLUEPRINT_KEY);\n if (!defaultBlueprint) {\n defaultBlueprint = space.db.add(createBlueprint());\n }\n\n const binder = new AiContextBinder(queue);\n await binder.bind({ blueprints: [Ref.make(defaultBlueprint)] });\n\n return {\n data: { object: chat },\n };\n },\n }),\n createResolver({\n intent: AssistantAction.CreateBlueprint,\n resolve: ({ key, name, description }) => ({\n data: {\n object: Blueprint.make({ key, name, description, instructions: Template.make({ source: '' }) }),\n },\n }),\n }),\n createResolver({\n intent: AssistantAction.CreateSequence,\n resolve: ({ name }) => ({\n data: {\n object: Obj.make(Sequence, {\n name,\n steps: [\n {\n id: Key.ObjectId.random(),\n instructions: 'You are a helpful assistant.',\n },\n ],\n }),\n },\n }),\n }),\n createResolver({\n intent: AssistantAction.SetCurrentChat,\n resolve: ({ companionTo, chat }) =>\n Effect.gen(function* () {\n const state = context.getCapability(AssistantCapabilities.MutableState);\n state.currentChat[fullyQualifiedId(companionTo)] = chat;\n }),\n }),\n ]),\n];\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;AAIA,SAASA,cAAc;AAEvB,SAASC,cAAkCC,aAAaC,cAAcC,sBAAsB;AAC5F,SAASC,uBAAuB;AAChC,SAASC,WAAWC,gBAAgB;AACpC,SAASC,wBAAwB;AACjC,SAASC,gBAAgB;AACzB,SAASC,QAAQC,KAAKC,KAAKC,WAAW;AACtC,SAASC,wBAAwB;AAOjC,IAAA,2BAAe,CAACC,YAA2B;EACzCC,YAAYC,aAAaC,gBAAgB;IACvCC,eAAe;MACbC,QAAQC,wBAAgBC;MACxBC,SAAS,CAAC,EAAEC,OAAOC,eAAc,MAC/BC,OAAOC,IAAI,aAAA;AACT,cAAM,EAAEC,SAAQ,IAAKb,QAAQc,cAAcZ,aAAaa,gBAAgB;AACxE,cAAM,EAAEC,QAAQC,eAAc,IAAK,OAAOJ,SACxCK,aAAaC,iBAAiBC,uBAAuB;UAAEC,UAAUC,kBAAUC,KAAKF;QAAS,CAAA,CAAA;AAE3F,cAAM,EAAEL,QAAQQ,oBAAmB,IAAK,OAAOX,SAC7CK,aAAaC,iBAAiBC,uBAAuB;UAAEC,UAAUI,UAAUA,UAAUJ;QAAS,CAAA,CAAA;AAEhGX,uBAAegB,QAAQC,KAAKC,IAAIC,KAAKZ,cAAAA,GAAiBW,IAAIC,KAAKL,mBAAAA,CAAAA;AAG/D,cAAM,EAAER,QAAQc,KAAI,IAAK,OAAOjB,SAASK,aAAaZ,wBAAgByB,YAAY;UAAEtB;QAAM,CAAA,CAAA;AAC1FA,cAAMuB,GAAGC,IAAIH,IAAAA;MACf,CAAA;IACJ,CAAA;IACA1B,eAAe;MACbC,QAAQC,wBAAgByB;MACxBvB,SAAS,OAAO,EAAEC,OAAOyB,KAAI,MAAE;AAC7B,cAAMC,QAAQ1B,MAAM2B,OAAOC,OAAM;AACjC,cAAMP,OAAOQ,IAAIT,KAAKP,kBAAUC,MAAM;UAAEW;UAAMC,OAAOP,IAAIW,QAAQJ,MAAMK,GAAG;QAAE,CAAA;AAC5E,cAAM,EAAEd,SAASe,WAAU,IAAK,MAAMhC,MAAMuB,GAAGU,MAAMC,OAAOC,KAAKnB,UAAUA,SAAS,CAAA,EAAGoB,IAAG;AAG1F,YAAIC,mBAAmBL,WAAWM,KAAK,CAACC,cAAcA,UAAUC,QAAQC,aAAAA;AACxE,YAAI,CAACJ,kBAAkB;AACrBA,6BAAmBrC,MAAMuB,GAAGC,IAAIkB,gBAAAA,CAAAA;QAClC;AAEA,cAAMC,SAAS,IAAIC,gBAAgBlB,KAAAA;AACnC,cAAMiB,OAAOE,KAAK;UAAEb,YAAY;YAACb,IAAIC,KAAKiB,gBAAAA;;QAAmB,CAAA;AAE7D,eAAO;UACLS,MAAM;YAAEvC,QAAQc;UAAK;QACvB;MACF;IACF,CAAA;IACA1B,eAAe;MACbC,QAAQC,wBAAgBkD;MACxBhD,SAAS,CAAC,EAAEyC,KAAKf,MAAMuB,YAAW,OAAQ;QACxCF,MAAM;UACJvC,QAAQS,UAAUI,KAAK;YAAEoB;YAAKf;YAAMuB;YAAaC,cAAcC,SAAS9B,KAAK;cAAE+B,QAAQ;YAAG,CAAA;UAAG,CAAA;QAC/F;MACF;IACF,CAAA;IACAxD,eAAe;MACbC,QAAQC,wBAAgBuD;MACxBrD,SAAS,CAAC,EAAE0B,KAAI,OAAQ;QACtBqB,MAAM;UACJvC,QAAQsB,IAAIT,KAAKiC,UAAU;YACzB5B;YACA6B,OAAO;cACL;gBACEC,IAAIC,IAAIC,SAASC,OAAM;gBACvBT,cAAc;cAChB;;UAEJ,CAAA;QACF;MACF;IACF,CAAA;IACAtD,eAAe;MACbC,QAAQC,wBAAgB8D;MACxB5D,SAAS,CAAC,EAAE6D,aAAavC,KAAI,MAC3BnB,OAAOC,IAAI,aAAA;AACT,cAAM0D,QAAQtE,QAAQc,cAAcyD,sBAAsBC,YAAY;AACtEF,cAAMG,YAAYC,iBAAiBL,WAAAA,CAAAA,IAAgBvC;MACrD,CAAA;IACJ,CAAA;GACD;;",
5
+ "mappings": ";;;;;;;;;;;;;;;;AAIA,SAASA,cAAc;AAEvB,SAASC,cAAkCC,aAAaC,cAAcC,sBAAsB;AAC5F,SAASC,uBAAuB;AAChC,SAASC,WAAWC,gBAAgB;AACpC,SAASC,wBAAwB;AACjC,SAASC,gBAAgB;AACzB,SAASC,QAAQC,KAAKC,KAAKC,WAAW;AACtC,SAASC,wBAAwB;AAOjC,IAAA,0BAAe,CAACC,YAA2B;EACzCC,YAAYC,aAAaC,gBAAgB;IACvCC,eAAe;MACbC,QAAQC,wBAAgBC;MACxBC,SAAS,CAAC,EAAEC,OAAOC,eAAc,MAC/BC,OAAOC,IAAI,aAAA;AACT,cAAM,EAAEC,SAAQ,IAAKb,QAAQc,cAAcZ,aAAaa,gBAAgB;AACxE,cAAM,EAAEC,QAAQC,eAAc,IAAK,OAAOJ,SACxCK,aAAaC,iBAAiBC,uBAAuB;UAAEC,UAAUC,kBAAUC,KAAKF;QAAS,CAAA,CAAA;AAE3F,cAAM,EAAEL,QAAQQ,oBAAmB,IAAK,OAAOX,SAC7CK,aAAaC,iBAAiBC,uBAAuB;UAAEC,UAAUI,UAAUA,UAAUJ;QAAS,CAAA,CAAA;AAEhGX,uBAAegB,QAAQC,KAAKC,IAAIC,KAAKZ,cAAAA,GAAiBW,IAAIC,KAAKL,mBAAAA,CAAAA;AAG/D,cAAM,EAAER,QAAQc,KAAI,IAAK,OAAOjB,SAASK,aAAaZ,wBAAgByB,YAAY;UAAEtB;QAAM,CAAA,CAAA;AAC1FA,cAAMuB,GAAGC,IAAIH,IAAAA;MACf,CAAA;IACJ,CAAA;IACA1B,eAAe;MACbC,QAAQC,wBAAgByB;MACxBvB,SAAS,OAAO,EAAEC,OAAOyB,KAAI,MAAE;AAC7B,cAAMC,QAAQ1B,MAAM2B,OAAOC,OAAM;AACjC,cAAMP,OAAOQ,IAAIT,KAAKP,kBAAUC,MAAM;UAAEW;UAAMC,OAAOP,IAAIW,QAAQJ,MAAMK,GAAG;QAAE,CAAA;AAC5E,cAAM,EAAEd,SAASe,WAAU,IAAK,MAAMhC,MAAMuB,GAAGU,MAAMC,OAAOC,KAAKnB,UAAUA,SAAS,CAAA,EAAGoB,IAAG;AAG1F,YAAIC,mBAAmBL,WAAWM,KAAK,CAACC,cAAcA,UAAUC,QAAQC,aAAAA;AACxE,YAAI,CAACJ,kBAAkB;AACrBA,6BAAmBrC,MAAMuB,GAAGC,IAAIkB,gBAAAA,CAAAA;QAClC;AAEA,cAAMC,SAAS,IAAIC,gBAAgBlB,KAAAA;AACnC,cAAMiB,OAAOE,KAAK;UAAEb,YAAY;YAACb,IAAIC,KAAKiB,gBAAAA;;QAAmB,CAAA;AAE7D,eAAO;UACLS,MAAM;YAAEvC,QAAQc;UAAK;QACvB;MACF;IACF,CAAA;IACA1B,eAAe;MACbC,QAAQC,wBAAgBkD;MACxBhD,SAAS,CAAC,EAAEyC,KAAKf,MAAMuB,YAAW,OAAQ;QACxCF,MAAM;UACJvC,QAAQS,UAAUI,KAAK;YAAEoB;YAAKf;YAAMuB;YAAaC,cAAcC,SAAS9B,KAAK;cAAE+B,QAAQ;YAAG,CAAA;UAAG,CAAA;QAC/F;MACF;IACF,CAAA;IACAxD,eAAe;MACbC,QAAQC,wBAAgBuD;MACxBrD,SAAS,CAAC,EAAE0B,KAAI,OAAQ;QACtBqB,MAAM;UACJvC,QAAQsB,IAAIT,KAAKiC,UAAU;YACzB5B;YACA6B,OAAO;cACL;gBACEC,IAAIC,IAAIC,SAASC,OAAM;gBACvBT,cAAc;cAChB;;UAEJ,CAAA;QACF;MACF;IACF,CAAA;IACAtD,eAAe;MACbC,QAAQC,wBAAgB8D;MACxB5D,SAAS,CAAC,EAAE6D,aAAavC,KAAI,MAC3BnB,OAAOC,IAAI,aAAA;AACT,cAAM0D,QAAQtE,QAAQc,cAAcyD,sBAAsBC,YAAY;AACtEF,cAAMG,YAAYC,iBAAiBL,WAAAA,CAAAA,IAAgBvC;MACrD,CAAA;IACJ,CAAA;GACD;;",
6
6
  "names": ["Effect", "Capabilities", "contributes", "createIntent", "createResolver", "AiContextBinder", "Blueprint", "Template", "fullyQualifiedId", "Sequence", "Filter", "Key", "Obj", "Ref", "CollectionAction", "context", "contributes", "Capabilities", "IntentResolver", "createResolver", "intent", "AssistantAction", "OnSpaceCreated", "resolve", "space", "rootCollection", "Effect", "gen", "dispatch", "getCapability", "IntentDispatcher", "object", "chatCollection", "createIntent", "CollectionAction", "CreateQueryCollection", "typename", "Assistant", "Chat", "blueprintCollection", "Blueprint", "objects", "push", "Ref", "make", "chat", "CreateChat", "db", "add", "name", "queue", "queues", "create", "Obj", "fromDXN", "dxn", "blueprints", "query", "Filter", "type", "run", "defaultBlueprint", "find", "blueprint", "key", "BLUEPRINT_KEY", "createBlueprint", "binder", "AiContextBinder", "bind", "data", "CreateBlueprint", "description", "instructions", "Template", "source", "CreateSequence", "Sequence", "steps", "id", "Key", "ObjectId", "random", "SetCurrentChat", "companionTo", "state", "AssistantCapabilities", "MutableState", "currentChat", "fullyQualifiedId"]
7
7
  }
@@ -1,4 +1,8 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ AssistantCapabilities
4
+ } from "./chunk-XD4CDA4R.mjs";
5
+ import "./chunk-VFY2JG62.mjs";
2
6
  import "./chunk-HSLMI22Q.mjs";
3
7
 
4
8
  // src/capabilities/local-model-resolver.ts
@@ -6,13 +10,13 @@ import { OpenAiClient } from "@effect/ai-openai";
6
10
  import { FetchHttpClient } from "@effect/platform";
7
11
  import { Layer } from "effect";
8
12
  import { AiServiceRouter } from "@dxos/ai";
9
- import { Capabilities, contributes } from "@dxos/app-framework";
10
- var local_model_resolver_default = (() => [
11
- contributes(Capabilities.AiModelResolver, AiServiceRouter.LMStudioResolver.pipe(Layer.provide(OpenAiClient.layer({
13
+ import { contributes } from "@dxos/app-framework";
14
+ var local_model_resolver_default = () => [
15
+ contributes(AssistantCapabilities.AiModelResolver, AiServiceRouter.LMStudioResolver.pipe(Layer.provide(OpenAiClient.layer({
12
16
  apiUrl: AiServiceRouter.LMSTUDIO_ENDPOINT
13
17
  })), Layer.provide(FetchHttpClient.layer)))
14
- ]);
18
+ ];
15
19
  export {
16
20
  local_model_resolver_default as default
17
21
  };
18
- //# sourceMappingURL=local-model-resolver-JCYDHAZY.mjs.map
22
+ //# sourceMappingURL=local-model-resolver-JBEFVVZA.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/local-model-resolver.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { OpenAiClient } from '@effect/ai-openai';\nimport { FetchHttpClient } from '@effect/platform';\nimport { Layer } from 'effect';\n\nimport { AiServiceRouter } from '@dxos/ai';\nimport { type Capability, contributes } from '@dxos/app-framework';\n\nimport { AssistantCapabilities } from './capabilities';\n\n/**\n * To start LM Studio server:\n * ```bash\n * ~/.lmstudio/bin/lms server start --cors\n * ```\n */\nexport default (): Capability<any>[] => [\n contributes(\n AssistantCapabilities.AiModelResolver,\n AiServiceRouter.LMStudioResolver.pipe(\n Layer.provide(\n OpenAiClient.layer({\n apiUrl: AiServiceRouter.LMSTUDIO_ENDPOINT,\n }),\n ),\n Layer.provide(FetchHttpClient.layer),\n ),\n ),\n];\n"],
5
+ "mappings": ";;;;;;;;AAIA,SAASA,oBAAoB;AAC7B,SAASC,uBAAuB;AAChC,SAASC,aAAa;AAEtB,SAASC,uBAAuB;AAChC,SAA0BC,mBAAmB;AAU7C,IAAA,+BAAe,MAAyB;EACtCC,YACEC,sBAAsBC,iBACtBC,gBAAgBC,iBAAiBC,KAC/BC,MAAMC,QACJC,aAAaC,MAAM;IACjBC,QAAQP,gBAAgBQ;EAC1B,CAAA,CAAA,GAEFL,MAAMC,QAAQK,gBAAgBH,KAAK,CAAA,CAAA;;",
6
+ "names": ["OpenAiClient", "FetchHttpClient", "Layer", "AiServiceRouter", "contributes", "contributes", "AssistantCapabilities", "AiModelResolver", "AiServiceRouter", "LMStudioResolver", "pipe", "Layer", "provide", "OpenAiClient", "layer", "apiUrl", "LMSTUDIO_ENDPOINT", "FetchHttpClient"]
7
+ }