@dxos/plugin-assistant 0.8.4-main.3c1ae3b → 0.8.4-main.52d7546f51
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/browser/BlueprintArticle-6SP2ZWJ2.mjs +30 -0
- package/dist/lib/browser/BlueprintArticle-6SP2ZWJ2.mjs.map +7 -0
- package/dist/lib/browser/ChatCompanion-JOTRKE7B.mjs +200 -0
- package/dist/lib/browser/ChatCompanion-JOTRKE7B.mjs.map +7 -0
- package/dist/lib/browser/ChatContainer-ESDLG5JY.mjs +73 -0
- package/dist/lib/browser/ChatContainer-ESDLG5JY.mjs.map +7 -0
- package/dist/lib/browser/ChatDialog-LKY3FTYO.mjs +85 -0
- package/dist/lib/browser/ChatDialog-LKY3FTYO.mjs.map +7 -0
- package/dist/lib/browser/InitiativeContainer-T2SQ4O6J.mjs +267 -0
- package/dist/lib/browser/InitiativeContainer-T2SQ4O6J.mjs.map +7 -0
- package/dist/lib/browser/PromptArticle-PK3CBRUB.mjs +52 -0
- package/dist/lib/browser/PromptArticle-PK3CBRUB.mjs.map +7 -0
- package/dist/lib/browser/ai-service-CY2BYPH6.mjs +22 -0
- package/dist/lib/browser/ai-service-CY2BYPH6.mjs.map +7 -0
- package/dist/lib/browser/app-graph-builder-MUZGUQSC.mjs +234 -0
- package/dist/lib/browser/app-graph-builder-MUZGUQSC.mjs.map +7 -0
- package/dist/lib/browser/blueprint-definition-YAGWYVCL.mjs +14 -0
- package/dist/lib/browser/blueprints/index.mjs +12 -0
- package/dist/lib/browser/chunk-3ETBCBMH.mjs +47 -0
- package/dist/lib/browser/chunk-3ETBCBMH.mjs.map +7 -0
- package/dist/lib/browser/chunk-6BVCG5SJ.mjs +230 -0
- package/dist/lib/browser/chunk-6BVCG5SJ.mjs.map +7 -0
- package/dist/lib/browser/{chunk-7ZJIXQ2Y.mjs → chunk-DKQMSMBN.mjs} +54 -63
- package/dist/lib/browser/chunk-DKQMSMBN.mjs.map +7 -0
- package/dist/lib/browser/{chunk-WBG5PTSX.mjs → chunk-EXVT7D4B.mjs} +1 -1
- package/dist/lib/browser/chunk-EXVT7D4B.mjs.map +7 -0
- package/dist/lib/browser/{chunk-F6YX2HHA.mjs → chunk-IJYAKPEU.mjs} +45 -21
- package/dist/lib/browser/chunk-IJYAKPEU.mjs.map +7 -0
- package/dist/lib/browser/chunk-POPBT2AQ.mjs +198 -0
- package/dist/lib/browser/chunk-POPBT2AQ.mjs.map +7 -0
- package/dist/lib/browser/chunk-Q4QUMX62.mjs +1974 -0
- package/dist/lib/browser/chunk-Q4QUMX62.mjs.map +7 -0
- package/dist/lib/browser/edge-model-resolver-YTMFQEN5.mjs +21 -0
- package/dist/lib/browser/edge-model-resolver-YTMFQEN5.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +205 -177
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/local-model-resolver-CGRQH37T.mjs +20 -0
- package/dist/lib/browser/local-model-resolver-CGRQH37T.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/operation-resolver-2673CFJS.mjs +133 -0
- package/dist/lib/browser/operation-resolver-2673CFJS.mjs.map +7 -0
- package/dist/lib/browser/react-surface-I7YJVK4K.mjs +125 -0
- package/dist/lib/browser/react-surface-I7YJVK4K.mjs.map +7 -0
- package/dist/lib/browser/{repair-3MZXLUHO.mjs → repair-IRXDYF4R.mjs} +24 -17
- package/dist/lib/browser/repair-IRXDYF4R.mjs.map +7 -0
- package/dist/lib/browser/settings-XF6GKHCG.mjs +33 -0
- package/dist/lib/browser/settings-XF6GKHCG.mjs.map +7 -0
- package/dist/lib/browser/state-OYDPWLKA.mjs +26 -0
- package/dist/lib/browser/state-OYDPWLKA.mjs.map +7 -0
- package/dist/lib/browser/toolkit-IDXQCSTX.mjs +19 -0
- package/dist/lib/browser/toolkit-IDXQCSTX.mjs.map +7 -0
- package/dist/lib/browser/types/index.mjs +8 -4
- package/dist/lib/node-esm/BlueprintArticle-7LI6UXKZ.mjs +31 -0
- package/dist/lib/node-esm/BlueprintArticle-7LI6UXKZ.mjs.map +7 -0
- package/dist/lib/node-esm/ChatCompanion-52OWAARX.mjs +201 -0
- package/dist/lib/node-esm/ChatCompanion-52OWAARX.mjs.map +7 -0
- package/dist/lib/node-esm/ChatContainer-VLWSQ3ZO.mjs +74 -0
- package/dist/lib/node-esm/ChatContainer-VLWSQ3ZO.mjs.map +7 -0
- package/dist/lib/node-esm/ChatDialog-5DUQIF2T.mjs +86 -0
- package/dist/lib/node-esm/ChatDialog-5DUQIF2T.mjs.map +7 -0
- package/dist/lib/node-esm/InitiativeContainer-ATD3D23L.mjs +268 -0
- package/dist/lib/node-esm/InitiativeContainer-ATD3D23L.mjs.map +7 -0
- package/dist/lib/node-esm/PromptArticle-BHPABYLT.mjs +53 -0
- package/dist/lib/node-esm/PromptArticle-BHPABYLT.mjs.map +7 -0
- package/dist/lib/node-esm/ai-service-ZI3A6RVG.mjs +23 -0
- package/dist/lib/node-esm/ai-service-ZI3A6RVG.mjs.map +7 -0
- package/dist/lib/node-esm/app-graph-builder-4QN5M6PD.mjs +235 -0
- package/dist/lib/node-esm/app-graph-builder-4QN5M6PD.mjs.map +7 -0
- package/dist/lib/node-esm/{blueprint-definition-S3DNWJFV.mjs → blueprint-definition-H3LFAEK2.mjs} +6 -4
- package/dist/lib/node-esm/blueprint-definition-H3LFAEK2.mjs.map +7 -0
- package/dist/lib/node-esm/blueprints/index.mjs +13 -0
- package/dist/lib/node-esm/blueprints/index.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-2LEN26ZQ.mjs +48 -0
- package/dist/lib/node-esm/chunk-2LEN26ZQ.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-CKW4IYLY.mjs → chunk-75PHXBN3.mjs} +54 -63
- package/dist/lib/node-esm/chunk-75PHXBN3.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-ESDMBGF7.mjs +1975 -0
- package/dist/lib/node-esm/chunk-ESDMBGF7.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-F6LA7XNS.mjs +199 -0
- package/dist/lib/node-esm/chunk-F6LA7XNS.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-LB72WG6R.mjs +231 -0
- package/dist/lib/node-esm/chunk-LB72WG6R.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-GWKWQSEQ.mjs → chunk-MJD5XWQV.mjs} +45 -21
- package/dist/lib/node-esm/chunk-MJD5XWQV.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-WE6KTH72.mjs → chunk-POWB2BPC.mjs} +1 -1
- package/dist/lib/node-esm/chunk-POWB2BPC.mjs.map +7 -0
- package/dist/lib/node-esm/edge-model-resolver-CMJ3KNLQ.mjs +22 -0
- package/dist/lib/node-esm/edge-model-resolver-CMJ3KNLQ.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +205 -177
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/local-model-resolver-FFDAKOXN.mjs +21 -0
- package/dist/lib/node-esm/local-model-resolver-FFDAKOXN.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/operation-resolver-2ZD2DXOU.mjs +134 -0
- package/dist/lib/node-esm/operation-resolver-2ZD2DXOU.mjs.map +7 -0
- package/dist/lib/node-esm/{react-surface-AOBQALOV.mjs → react-surface-2CWJ6GZW.mjs} +57 -32
- package/dist/lib/node-esm/react-surface-2CWJ6GZW.mjs.map +7 -0
- package/dist/lib/node-esm/{repair-RER5H7Y6.mjs → repair-DMI55PON.mjs} +24 -17
- package/dist/lib/node-esm/repair-DMI55PON.mjs.map +7 -0
- package/dist/lib/node-esm/settings-NGGZA7S7.mjs +34 -0
- package/dist/lib/node-esm/settings-NGGZA7S7.mjs.map +7 -0
- package/dist/lib/node-esm/state-VSCPGN7R.mjs +27 -0
- package/dist/lib/node-esm/state-VSCPGN7R.mjs.map +7 -0
- package/dist/lib/node-esm/toolkit-JPRJRDDB.mjs +20 -0
- package/dist/lib/node-esm/toolkit-JPRJRDDB.mjs.map +7 -0
- package/dist/lib/node-esm/types/index.mjs +8 -4
- package/dist/types/src/AssistantPlugin.d.ts +2 -1
- package/dist/types/src/AssistantPlugin.d.ts.map +1 -1
- package/dist/types/src/blueprints/assistant-blueprint.d.ts +11 -0
- package/dist/types/src/blueprints/assistant-blueprint.d.ts.map +1 -0
- package/dist/types/src/blueprints/index.d.ts +7 -0
- package/dist/types/src/blueprints/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/ai-service/ai-service.d.ts +6 -0
- package/dist/types/src/capabilities/ai-service/ai-service.d.ts.map +1 -0
- package/dist/types/src/capabilities/ai-service/index.d.ts +3 -0
- package/dist/types/src/capabilities/ai-service/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +6 -0
- package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +1 -0
- package/dist/types/src/capabilities/app-graph-builder/index.d.ts +3 -0
- package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts +26 -0
- package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts.map +1 -0
- package/dist/types/src/capabilities/blueprint-definition/index.d.ts +4 -0
- package/dist/types/src/capabilities/blueprint-definition/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/edge-model-resolver/edge-model-resolver.d.ts +7 -0
- package/dist/types/src/capabilities/edge-model-resolver/edge-model-resolver.d.ts.map +1 -0
- package/dist/types/src/capabilities/edge-model-resolver/index.d.ts +3 -0
- package/dist/types/src/capabilities/edge-model-resolver/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/index.d.ts +10 -12
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/local-model-resolver/index.d.ts +3 -0
- package/dist/types/src/capabilities/local-model-resolver/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/local-model-resolver/local-model-resolver.d.ts +13 -0
- package/dist/types/src/capabilities/local-model-resolver/local-model-resolver.d.ts.map +1 -0
- package/dist/types/src/capabilities/operation-resolver/index.d.ts +3 -0
- package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +5 -0
- package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface/index.d.ts +3 -0
- package/dist/types/src/capabilities/react-surface/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts +5 -0
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +1 -0
- package/dist/types/src/capabilities/repair/index.d.ts +3 -0
- package/dist/types/src/capabilities/repair/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/repair/repair.d.ts +6 -0
- package/dist/types/src/capabilities/repair/repair.d.ts.map +1 -0
- package/dist/types/src/capabilities/settings/index.d.ts +15 -0
- package/dist/types/src/capabilities/settings/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/settings/settings.d.ts +18 -0
- package/dist/types/src/capabilities/settings/settings.d.ts.map +1 -0
- package/dist/types/src/capabilities/state/index.d.ts +11 -0
- package/dist/types/src/capabilities/state/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/state/state.d.ts +13 -0
- package/dist/types/src/capabilities/state/state.d.ts.map +1 -0
- package/dist/types/src/capabilities/toolkit/index.d.ts +3 -0
- package/dist/types/src/capabilities/toolkit/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/toolkit/toolkit.d.ts +6 -0
- package/dist/types/src/capabilities/toolkit/toolkit.d.ts.map +1 -0
- package/dist/types/src/components/AssistantSettings/AssistantSettings.d.ts +4 -2
- package/dist/types/src/components/AssistantSettings/AssistantSettings.d.ts.map +1 -1
- package/dist/types/src/components/BlueprintArticle.d.ts +2 -2
- package/dist/types/src/components/BlueprintArticle.d.ts.map +1 -1
- package/dist/types/src/components/Chat/Chat.d.ts +13 -11
- package/dist/types/src/components/Chat/Chat.d.ts.map +1 -1
- package/dist/types/src/components/Chat/events.d.ts +1 -1
- package/dist/types/src/components/Chat/events.d.ts.map +1 -1
- package/dist/types/src/components/ChatCompanion.d.ts +3 -3
- package/dist/types/src/components/ChatCompanion.d.ts.map +1 -1
- package/dist/types/src/components/ChatContainer.d.ts +8 -8
- package/dist/types/src/components/ChatContainer.d.ts.map +1 -1
- package/dist/types/src/components/ChatDialog.d.ts +2 -2
- package/dist/types/src/components/ChatDialog.d.ts.map +1 -1
- package/dist/types/src/components/ChatProgress/ChatProgress.d.ts +2 -2
- package/dist/types/src/components/ChatProgress/ChatProgress.d.ts.map +1 -1
- package/dist/types/src/components/ChatPrompt/ChatActions.d.ts.map +1 -1
- package/dist/types/src/components/ChatPrompt/ChatOptions.d.ts +3 -3
- package/dist/types/src/components/ChatPrompt/ChatOptions.d.ts.map +1 -1
- package/dist/types/src/components/ChatPrompt/ChatReferences.d.ts +3 -3
- package/dist/types/src/components/ChatPrompt/ChatReferences.d.ts.map +1 -1
- package/dist/types/src/components/ChatThread/ChatThread.d.ts +2 -2
- package/dist/types/src/components/ChatThread/ChatThread.d.ts.map +1 -1
- package/dist/types/src/components/ChatThread/ChatThread.stories.d.ts +116 -2
- package/dist/types/src/components/ChatThread/ChatThread.stories.d.ts.map +1 -1
- package/dist/types/src/components/ChatThread/registry.d.ts +1 -1
- package/dist/types/src/components/ChatThread/registry.d.ts.map +1 -1
- package/dist/types/src/components/ChatThread/sync.d.ts +1 -1
- package/dist/types/src/components/ChatThread/sync.d.ts.map +1 -1
- package/dist/types/src/components/InitiativeContainer.d.ts +9 -0
- package/dist/types/src/components/InitiativeContainer.d.ts.map +1 -0
- package/dist/types/src/components/PromptArticle.d.ts +2 -2
- package/dist/types/src/components/PromptArticle.d.ts.map +1 -1
- package/dist/types/src/components/TemplateEditor/TemplateEditor.d.ts.map +1 -1
- package/dist/types/src/components/TemplateEditor/TemplateEditor.stories.d.ts +114 -0
- package/dist/types/src/components/TemplateEditor/TemplateEditor.stories.d.ts.map +1 -1
- package/dist/types/src/components/TemplateEditor/TemplateForm.d.ts +11 -1
- package/dist/types/src/components/TemplateEditor/TemplateForm.d.ts.map +1 -1
- package/dist/types/src/components/TemplateEditor/TemplateForm.stories.d.ts +115 -1
- package/dist/types/src/components/TemplateEditor/TemplateForm.stories.d.ts.map +1 -1
- package/dist/types/src/components/TemplateEditor/extensions/handlebars-extension.d.ts.map +1 -1
- package/dist/types/src/components/ToolBlock/ToolBlock.d.ts +3 -3
- package/dist/types/src/components/ToolBlock/ToolBlock.d.ts.map +1 -1
- package/dist/types/src/components/Toolbox/Toolbox.d.ts +4 -5
- package/dist/types/src/components/Toolbox/Toolbox.d.ts.map +1 -1
- package/dist/types/src/components/Toolbox/Toolbox.stories.d.ts +114 -0
- package/dist/types/src/components/Toolbox/Toolbox.stories.d.ts.map +1 -1
- package/dist/types/src/components/TriggerStatus/TriggerStatus.d.ts +4 -0
- package/dist/types/src/components/TriggerStatus/TriggerStatus.d.ts.map +1 -0
- package/dist/types/src/components/TriggerStatus/index.d.ts +2 -0
- package/dist/types/src/components/TriggerStatus/index.d.ts.map +1 -0
- package/dist/types/src/components/Typewriter/AssistantToolbar.d.ts +12 -0
- package/dist/types/src/components/Typewriter/AssistantToolbar.d.ts.map +1 -0
- package/dist/types/src/components/Typewriter/Typewriter.d.ts +11 -0
- package/dist/types/src/components/Typewriter/Typewriter.d.ts.map +1 -0
- package/dist/types/src/components/Typewriter/Typewriter.stories.d.ts +7 -0
- package/dist/types/src/components/Typewriter/Typewriter.stories.d.ts.map +1 -0
- package/dist/types/src/components/Typewriter/assistant-extension.d.ts +5 -0
- package/dist/types/src/components/Typewriter/assistant-extension.d.ts.map +1 -0
- package/dist/types/src/components/Typewriter/index.d.ts +2 -0
- package/dist/types/src/components/Typewriter/index.d.ts.map +1 -0
- package/dist/types/src/components/index.d.ts +10 -10
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/functions/index.d.ts +1 -1
- package/dist/types/src/functions/index.d.ts.map +1 -1
- package/dist/types/src/functions/object-list.d.ts +1 -1
- package/dist/types/src/functions/object-load.d.ts +1 -1
- package/dist/types/src/functions/object-load.d.ts.map +1 -1
- package/dist/types/src/functions/object-search.d.ts +10 -0
- package/dist/types/src/functions/object-search.d.ts.map +1 -0
- package/dist/types/src/hooks/useBlueprintRegistry.d.ts +5 -5
- package/dist/types/src/hooks/useBlueprintRegistry.d.ts.map +1 -1
- package/dist/types/src/hooks/useChatProcessor.d.ts +2 -1
- package/dist/types/src/hooks/useChatProcessor.d.ts.map +1 -1
- package/dist/types/src/hooks/useChatServices.d.ts +5 -5
- package/dist/types/src/hooks/useChatServices.d.ts.map +1 -1
- package/dist/types/src/hooks/useChatToolbarActions.d.ts +3 -3
- package/dist/types/src/hooks/useChatToolbarActions.d.ts.map +1 -1
- package/dist/types/src/hooks/useContextBinder.d.ts.map +1 -1
- package/dist/types/src/hooks/useContextObjects.d.ts +7 -7
- package/dist/types/src/hooks/useContextObjects.d.ts.map +1 -1
- package/dist/types/src/hooks/useFilteredTypes.d.ts +2 -3
- package/dist/types/src/hooks/useFilteredTypes.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +0 -1
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/meta.d.ts +2 -2
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/processor/processor.d.ts +13 -9
- package/dist/types/src/processor/processor.d.ts.map +1 -1
- package/dist/types/src/processor/update-name.d.ts +2 -2
- package/dist/types/src/processor/update-name.d.ts.map +1 -1
- package/dist/types/src/queue-logger.d.ts.map +1 -1
- package/dist/types/src/testing/test-services.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +114 -0
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/Assistant.d.ts +7 -32
- package/dist/types/src/types/Assistant.d.ts.map +1 -1
- package/dist/types/src/types/AssistantAction.d.ts +90 -122
- package/dist/types/src/types/AssistantAction.d.ts.map +1 -1
- package/dist/types/src/types/capabilities.d.ts +33 -0
- package/dist/types/src/types/capabilities.d.ts.map +1 -0
- package/dist/types/src/types/events.d.ts +5 -0
- package/dist/types/src/types/events.d.ts.map +1 -0
- package/dist/types/src/types/index.d.ts +4 -1
- package/dist/types/src/types/index.d.ts.map +1 -1
- package/dist/types/src/types/service.d.ts +11 -260
- package/dist/types/src/types/service.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +116 -93
- package/src/AssistantPlugin.tsx +104 -99
- package/src/blueprints/assistant-blueprint.ts +57 -0
- package/src/blueprints/index.ts +12 -0
- package/src/capabilities/ai-service/ai-service.ts +30 -0
- package/src/capabilities/ai-service/index.ts +7 -0
- package/src/capabilities/app-graph-builder/app-graph-builder.ts +200 -0
- package/src/capabilities/app-graph-builder/index.ts +7 -0
- package/src/capabilities/blueprint-definition/blueprint-definition.ts +74 -0
- package/src/capabilities/blueprint-definition/index.ts +8 -0
- package/src/capabilities/edge-model-resolver/edge-model-resolver.ts +33 -0
- package/src/capabilities/edge-model-resolver/index.ts +7 -0
- package/src/capabilities/index.ts +10 -15
- package/src/capabilities/local-model-resolver/index.ts +7 -0
- package/src/capabilities/local-model-resolver/local-model-resolver.ts +38 -0
- package/src/capabilities/operation-resolver/index.ts +7 -0
- package/src/capabilities/operation-resolver/operation-resolver.ts +112 -0
- package/src/capabilities/react-surface/index.ts +7 -0
- package/src/capabilities/react-surface/react-surface.tsx +111 -0
- package/src/capabilities/repair/index.ts +7 -0
- package/src/capabilities/{repair.ts → repair/repair.ts} +24 -11
- package/src/capabilities/settings/index.ts +7 -0
- package/src/capabilities/settings/settings.ts +31 -0
- package/src/capabilities/state/index.ts +7 -0
- package/src/capabilities/state/state.ts +27 -0
- package/src/capabilities/toolkit/index.ts +7 -0
- package/src/capabilities/toolkit/toolkit.ts +27 -0
- package/src/components/AssistantSettings/AssistantSettings.tsx +28 -20
- package/src/components/BlueprintArticle.tsx +5 -6
- package/src/components/Chat/Chat.tsx +104 -77
- package/src/components/Chat/events.ts +1 -1
- package/src/components/ChatCompanion.tsx +103 -43
- package/src/components/ChatContainer.tsx +30 -24
- package/src/components/ChatDialog.tsx +8 -8
- package/src/components/ChatProgress/ChatProgress.tsx +5 -19
- package/src/components/ChatPrompt/ChatActions.tsx +9 -1
- package/src/components/ChatPrompt/ChatOptions.tsx +62 -58
- package/src/components/ChatPrompt/ChatReferences.tsx +5 -6
- package/src/components/ChatPrompt/ChatStatusIndicator.tsx +1 -1
- package/src/components/ChatThread/ChatThread.stories.tsx +9 -8
- package/src/components/ChatThread/ChatThread.tsx +14 -5
- package/src/components/ChatThread/Link.tsx +3 -3
- package/src/components/ChatThread/registry.tsx +1 -1
- package/src/components/ChatThread/sync.test.ts +13 -5
- package/src/components/ChatThread/sync.ts +8 -2
- package/src/components/InitiativeContainer.tsx +340 -0
- package/src/components/PromptArticle.tsx +9 -11
- package/src/components/TemplateEditor/TemplateEditor.stories.tsx +3 -3
- package/src/components/TemplateEditor/TemplateEditor.tsx +7 -4
- package/src/components/TemplateEditor/TemplateForm.stories.tsx +15 -7
- package/src/components/TemplateEditor/TemplateForm.tsx +75 -28
- package/src/components/TemplateEditor/extensions/handlebars-extension.ts +10 -5
- package/src/components/ToolBlock/ToolBlock.tsx +6 -6
- package/src/components/Toolbox/Toolbox.stories.tsx +10 -11
- package/src/components/Toolbox/Toolbox.tsx +50 -52
- package/src/components/TriggerStatus/TriggerStatus.tsx +142 -0
- package/src/components/TriggerStatus/index.ts +5 -0
- package/src/components/Typewriter/AssistantToolbar.tsx +161 -0
- package/src/components/Typewriter/Typewriter.stories.tsx +83 -0
- package/src/components/Typewriter/Typewriter.tsx +54 -0
- package/src/components/Typewriter/assistant-extension.tsx +144 -0
- package/src/components/Typewriter/index.ts +5 -0
- package/src/components/index.ts +11 -2
- package/src/functions/index.ts +1 -1
- package/src/functions/object-list.ts +2 -2
- package/src/functions/object-load.ts +9 -11
- package/src/functions/object-search.ts +46 -0
- package/src/hooks/useBlueprintRegistry.ts +31 -21
- package/src/hooks/useChatProcessor.ts +7 -3
- package/src/hooks/useChatServices.ts +14 -18
- package/src/hooks/useChatToolbarActions.ts +27 -27
- package/src/hooks/useContextBinder.ts +4 -2
- package/src/hooks/useContextObjects.ts +13 -25
- package/src/hooks/useFilteredTypes.ts +6 -7
- package/src/hooks/useReferencesProvider.ts +4 -4
- package/src/index.ts +0 -1
- package/src/meta.ts +2 -2
- package/src/processor/processor.test.ts +8 -8
- package/src/processor/processor.ts +49 -25
- package/src/processor/update-name.ts +6 -4
- package/src/queue-logger.ts +4 -1
- package/src/testing/test-services.ts +8 -6
- package/src/translations.ts +23 -2
- package/src/types/Assistant.ts +4 -39
- package/src/types/AssistantAction.ts +61 -64
- package/src/types/capabilities.ts +27 -0
- package/src/types/events.ts +11 -0
- package/src/types/index.ts +6 -1
- package/src/types/service.ts +10 -7
- package/dist/lib/browser/BlueprintArticle-BWSLH6LG.mjs +0 -36
- package/dist/lib/browser/BlueprintArticle-BWSLH6LG.mjs.map +0 -7
- package/dist/lib/browser/ChatCompanion-U7VMDYO6.mjs +0 -159
- package/dist/lib/browser/ChatCompanion-U7VMDYO6.mjs.map +0 -7
- package/dist/lib/browser/ChatContainer-JXDZQ2EY.mjs +0 -79
- package/dist/lib/browser/ChatContainer-JXDZQ2EY.mjs.map +0 -7
- package/dist/lib/browser/ChatDialog-5NNGCRKJ.mjs +0 -90
- package/dist/lib/browser/ChatDialog-5NNGCRKJ.mjs.map +0 -7
- package/dist/lib/browser/PromptArticle-Q7JYGFQV.mjs +0 -59
- package/dist/lib/browser/PromptArticle-Q7JYGFQV.mjs.map +0 -7
- package/dist/lib/browser/ai-service-ERTZBTP3.mjs +0 -19
- package/dist/lib/browser/ai-service-ERTZBTP3.mjs.map +0 -7
- package/dist/lib/browser/app-graph-builder-ADZRPJ3V.mjs +0 -199
- package/dist/lib/browser/app-graph-builder-ADZRPJ3V.mjs.map +0 -7
- package/dist/lib/browser/blueprint-definition-7HPQPCL7.mjs +0 -12
- package/dist/lib/browser/chunk-5JZRYQZL.mjs +0 -229
- package/dist/lib/browser/chunk-5JZRYQZL.mjs.map +0 -7
- package/dist/lib/browser/chunk-7ZJIXQ2Y.mjs.map +0 -7
- package/dist/lib/browser/chunk-F6YX2HHA.mjs.map +0 -7
- package/dist/lib/browser/chunk-LRE4VEZV.mjs +0 -16
- package/dist/lib/browser/chunk-LRE4VEZV.mjs.map +0 -7
- package/dist/lib/browser/chunk-SWEOO227.mjs +0 -1930
- package/dist/lib/browser/chunk-SWEOO227.mjs.map +0 -7
- package/dist/lib/browser/chunk-WBG5PTSX.mjs.map +0 -7
- package/dist/lib/browser/chunk-YDSFERCV.mjs +0 -178
- package/dist/lib/browser/chunk-YDSFERCV.mjs.map +0 -7
- package/dist/lib/browser/edge-model-resolver-O6OFYIO2.mjs +0 -18
- package/dist/lib/browser/edge-model-resolver-O6OFYIO2.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-Q7TX3MV7.mjs +0 -143
- package/dist/lib/browser/intent-resolver-Q7TX3MV7.mjs.map +0 -7
- package/dist/lib/browser/local-model-resolver-34MVHRKD.mjs +0 -17
- package/dist/lib/browser/local-model-resolver-34MVHRKD.mjs.map +0 -7
- package/dist/lib/browser/react-surface-VXXS6ZVC.mjs +0 -100
- package/dist/lib/browser/react-surface-VXXS6ZVC.mjs.map +0 -7
- package/dist/lib/browser/repair-3MZXLUHO.mjs.map +0 -7
- package/dist/lib/browser/settings-HD5WA24I.mjs +0 -23
- package/dist/lib/browser/settings-HD5WA24I.mjs.map +0 -7
- package/dist/lib/browser/state-GG7Z3NB7.mjs +0 -25
- package/dist/lib/browser/state-GG7Z3NB7.mjs.map +0 -7
- package/dist/lib/browser/toolkit-VYDAWNE4.mjs +0 -17
- package/dist/lib/browser/toolkit-VYDAWNE4.mjs.map +0 -7
- package/dist/lib/node-esm/BlueprintArticle-R2XYBRCK.mjs +0 -37
- package/dist/lib/node-esm/BlueprintArticle-R2XYBRCK.mjs.map +0 -7
- package/dist/lib/node-esm/ChatCompanion-O4T7PMMC.mjs +0 -160
- package/dist/lib/node-esm/ChatCompanion-O4T7PMMC.mjs.map +0 -7
- package/dist/lib/node-esm/ChatContainer-OWAZI6ZF.mjs +0 -80
- package/dist/lib/node-esm/ChatContainer-OWAZI6ZF.mjs.map +0 -7
- package/dist/lib/node-esm/ChatDialog-IBXH5FRI.mjs +0 -91
- package/dist/lib/node-esm/ChatDialog-IBXH5FRI.mjs.map +0 -7
- package/dist/lib/node-esm/PromptArticle-IV7O5UZ3.mjs +0 -60
- package/dist/lib/node-esm/PromptArticle-IV7O5UZ3.mjs.map +0 -7
- package/dist/lib/node-esm/ai-service-MUYLV3NT.mjs +0 -20
- package/dist/lib/node-esm/ai-service-MUYLV3NT.mjs.map +0 -7
- package/dist/lib/node-esm/app-graph-builder-26KXQ5ZY.mjs +0 -200
- package/dist/lib/node-esm/app-graph-builder-26KXQ5ZY.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-CKW4IYLY.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-E4JSYCWZ.mjs +0 -230
- package/dist/lib/node-esm/chunk-E4JSYCWZ.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-GWKWQSEQ.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-VGSP5WMV.mjs +0 -180
- package/dist/lib/node-esm/chunk-VGSP5WMV.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-WE6KTH72.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-YWFWT57N.mjs +0 -17
- package/dist/lib/node-esm/chunk-YWFWT57N.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-ZNSHGWE4.mjs +0 -1931
- package/dist/lib/node-esm/chunk-ZNSHGWE4.mjs.map +0 -7
- package/dist/lib/node-esm/edge-model-resolver-2ARXDOYS.mjs +0 -19
- package/dist/lib/node-esm/edge-model-resolver-2ARXDOYS.mjs.map +0 -7
- package/dist/lib/node-esm/intent-resolver-LTKMN3YB.mjs +0 -144
- package/dist/lib/node-esm/intent-resolver-LTKMN3YB.mjs.map +0 -7
- package/dist/lib/node-esm/local-model-resolver-TP2NTSAX.mjs +0 -18
- package/dist/lib/node-esm/local-model-resolver-TP2NTSAX.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-AOBQALOV.mjs.map +0 -7
- package/dist/lib/node-esm/repair-RER5H7Y6.mjs.map +0 -7
- package/dist/lib/node-esm/settings-YJQVKHH5.mjs +0 -24
- package/dist/lib/node-esm/settings-YJQVKHH5.mjs.map +0 -7
- package/dist/lib/node-esm/state-FSUHFMDM.mjs +0 -26
- package/dist/lib/node-esm/state-FSUHFMDM.mjs.map +0 -7
- package/dist/lib/node-esm/toolkit-HFJZLVIR.mjs +0 -18
- package/dist/lib/node-esm/toolkit-HFJZLVIR.mjs.map +0 -7
- package/dist/types/src/capabilities/ai-service.d.ts +0 -4
- package/dist/types/src/capabilities/ai-service.d.ts.map +0 -1
- package/dist/types/src/capabilities/app-graph-builder.d.ts +0 -4
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +0 -1
- package/dist/types/src/capabilities/blueprint-definition.d.ts +0 -7
- package/dist/types/src/capabilities/blueprint-definition.d.ts.map +0 -1
- package/dist/types/src/capabilities/capabilities.d.ts +0 -10
- package/dist/types/src/capabilities/capabilities.d.ts.map +0 -1
- package/dist/types/src/capabilities/edge-model-resolver.d.ts +0 -4
- package/dist/types/src/capabilities/edge-model-resolver.d.ts.map +0 -1
- package/dist/types/src/capabilities/intent-resolver.d.ts +0 -4
- package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
- package/dist/types/src/capabilities/local-model-resolver.d.ts +0 -10
- package/dist/types/src/capabilities/local-model-resolver.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-surface.d.ts +0 -4
- package/dist/types/src/capabilities/react-surface.d.ts.map +0 -1
- package/dist/types/src/capabilities/repair.d.ts +0 -4
- package/dist/types/src/capabilities/repair.d.ts.map +0 -1
- package/dist/types/src/capabilities/settings.d.ts +0 -4
- package/dist/types/src/capabilities/settings.d.ts.map +0 -1
- package/dist/types/src/capabilities/state.d.ts +0 -4
- package/dist/types/src/capabilities/state.d.ts.map +0 -1
- package/dist/types/src/capabilities/toolkit.d.ts +0 -4
- package/dist/types/src/capabilities/toolkit.d.ts.map +0 -1
- package/dist/types/src/components/ChatThread/reducers.d.ts +0 -40
- package/dist/types/src/components/ChatThread/reducers.d.ts.map +0 -1
- package/dist/types/src/events.d.ts +0 -4
- package/dist/types/src/events.d.ts.map +0 -1
- package/dist/types/src/functions/analysis.d.ts +0 -5
- package/dist/types/src/functions/analysis.d.ts.map +0 -1
- package/src/capabilities/ai-service.ts +0 -27
- package/src/capabilities/app-graph-builder.ts +0 -208
- package/src/capabilities/blueprint-definition.ts +0 -66
- package/src/capabilities/capabilities.ts +0 -17
- package/src/capabilities/edge-model-resolver.ts +0 -25
- package/src/capabilities/intent-resolver.ts +0 -135
- package/src/capabilities/local-model-resolver.ts +0 -30
- package/src/capabilities/react-surface.tsx +0 -87
- package/src/capabilities/settings.ts +0 -19
- package/src/capabilities/state.ts +0 -22
- package/src/capabilities/toolkit.ts +0 -17
- package/src/components/ChatThread/reducers.ts +0 -151
- package/src/events.ts +0 -11
- package/src/functions/analysis.ts +0 -22
- /package/dist/lib/browser/{blueprint-definition-7HPQPCL7.mjs.map → blueprint-definition-YAGWYVCL.mjs.map} +0 -0
- /package/dist/lib/{node-esm/blueprint-definition-S3DNWJFV.mjs.map → browser/blueprints/index.mjs.map} +0 -0
|
@@ -5,6 +5,7 @@ import * as Fiber from "effect/Fiber";
|
|
|
5
5
|
import * as Runtime from "effect/Runtime";
|
|
6
6
|
import { AiService, DEFAULT_EDGE_MODEL } from "@dxos/ai";
|
|
7
7
|
import { AiSession } from "@dxos/assistant";
|
|
8
|
+
import { Obj } from "@dxos/echo";
|
|
8
9
|
import { throwCause } from "@dxos/effect";
|
|
9
10
|
import { trim } from "@dxos/util";
|
|
10
11
|
var updateName = async (runtime, conversation, chat, model = DEFAULT_EDGE_MODEL) => {
|
|
@@ -25,7 +26,9 @@ var updateName = async (runtime, conversation, chat, model = DEFAULT_EDGE_MODEL)
|
|
|
25
26
|
const message = messages.find((message2) => message2.sender.role === "assistant");
|
|
26
27
|
const title = message?.blocks.find((block) => block._tag === "text")?.text;
|
|
27
28
|
if (title) {
|
|
28
|
-
chat
|
|
29
|
+
Obj.change(chat, (c) => {
|
|
30
|
+
c.name = title;
|
|
31
|
+
});
|
|
29
32
|
}
|
|
30
33
|
}), Runtime.runFork(runtime));
|
|
31
34
|
const response = await fiber.pipe(Fiber.join, Effect.runPromiseExit);
|
|
@@ -87,9 +90,10 @@ import * as Fiber2 from "effect/Fiber";
|
|
|
87
90
|
import * as Option from "effect/Option";
|
|
88
91
|
import * as Runtime2 from "effect/Runtime";
|
|
89
92
|
import { AiService as AiService2, DEFAULT_EDGE_MODEL as DEFAULT_EDGE_MODEL2 } from "@dxos/ai";
|
|
90
|
-
import { ArtifactDiffResolver, GenerationObserver, createSystemPrompt } from "@dxos/assistant";
|
|
91
|
-
import {
|
|
92
|
-
import {
|
|
93
|
+
import { AiContextService, ArtifactDiffResolver, GenerationObserver, createSystemPrompt } from "@dxos/assistant";
|
|
94
|
+
import { formatSystemPrompt } from "@dxos/assistant";
|
|
95
|
+
import { Obj as Obj2 } from "@dxos/echo";
|
|
96
|
+
import { runAndForwardErrors, throwCause as throwCause2, unwrapExit } from "@dxos/effect";
|
|
93
97
|
import { log } from "@dxos/log";
|
|
94
98
|
import { Message } from "@dxos/types";
|
|
95
99
|
var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-assistant/src/processor/processor.ts";
|
|
@@ -103,14 +107,14 @@ var AiChatProcessor = class {
|
|
|
103
107
|
_registry;
|
|
104
108
|
/** External observer. */
|
|
105
109
|
_observer;
|
|
106
|
-
/** Currently active request fiber. */
|
|
107
|
-
_fiber;
|
|
108
|
-
/** Last request (for retries). */
|
|
109
|
-
_lastRequest;
|
|
110
110
|
/** Pending messages (incl. the current user request). */
|
|
111
111
|
_pending = Atom.make([]);
|
|
112
112
|
/** Currently streaming message (from the AI service). */
|
|
113
113
|
_streaming = Atom.make(Option.none());
|
|
114
|
+
/** Currently active request fiber. */
|
|
115
|
+
_fiber;
|
|
116
|
+
/** Last request (for retries). */
|
|
117
|
+
_lastRequest;
|
|
114
118
|
/** Streaming state. */
|
|
115
119
|
streaming = Atom.make((get) => Option.isSome(get(this._streaming)));
|
|
116
120
|
/** Active state. */
|
|
@@ -148,29 +152,49 @@ var AiChatProcessor = class {
|
|
|
148
152
|
get blueprintRegistry() {
|
|
149
153
|
return this._options.blueprintRegistry;
|
|
150
154
|
}
|
|
155
|
+
get system() {
|
|
156
|
+
return this._options.system ?? "";
|
|
157
|
+
}
|
|
158
|
+
async getTools() {
|
|
159
|
+
return unwrapExit(await this._conversation.getTools().pipe(await Runtime2.runPromiseExit(await this._services())));
|
|
160
|
+
}
|
|
161
|
+
async getSystemPrompt() {
|
|
162
|
+
return unwrapExit(await Effect2.gen(this, function* () {
|
|
163
|
+
const blueprints = this.context.getBlueprints();
|
|
164
|
+
const objects = this.context.getObjects();
|
|
165
|
+
const system = yield* formatSystemPrompt({
|
|
166
|
+
system: this._options.system,
|
|
167
|
+
blueprints,
|
|
168
|
+
objects
|
|
169
|
+
});
|
|
170
|
+
return system;
|
|
171
|
+
}).pipe(Effect2.provideService(AiContextService, {
|
|
172
|
+
binder: this.context
|
|
173
|
+
}), await Runtime2.runPromiseExit(await this._services())));
|
|
174
|
+
}
|
|
151
175
|
/**
|
|
152
176
|
* Initiates a new request.
|
|
153
177
|
*/
|
|
154
|
-
async request(
|
|
178
|
+
async request(requestProp) {
|
|
155
179
|
if (this._fiber) {
|
|
156
180
|
await this.cancel();
|
|
157
181
|
}
|
|
158
182
|
try {
|
|
159
|
-
this._lastRequest =
|
|
183
|
+
this._lastRequest = requestProp;
|
|
160
184
|
this._registry.set(this.error, Option.none());
|
|
161
185
|
this._registry.set(this.active, true);
|
|
186
|
+
const services = await this._services();
|
|
162
187
|
const request = this._conversation.createRequest({
|
|
163
188
|
system: this._options.system,
|
|
164
|
-
prompt:
|
|
189
|
+
prompt: requestProp.message,
|
|
165
190
|
observer: this._observer
|
|
166
191
|
});
|
|
167
|
-
const runtime = await this._services();
|
|
168
192
|
this._fiber = request.pipe(
|
|
169
193
|
Effect2.provide(AiService2.model(this._options.model ?? DEFAULT_EDGE_MODEL2)),
|
|
170
194
|
// TODO(dmaretskyi): Move ArtifactDiffResolver upstream.
|
|
171
195
|
Effect2.provideService(ArtifactDiffResolver, this._artifactDiffResolver),
|
|
172
196
|
Effect2.asVoid,
|
|
173
|
-
Runtime2.runFork(
|
|
197
|
+
Runtime2.runFork(services)
|
|
174
198
|
);
|
|
175
199
|
const response = await this._fiber.pipe(Fiber2.join, Effect2.runPromiseExit);
|
|
176
200
|
if (!Exit2.isSuccess(response) && !Cause.isInterruptedOnly(response.cause)) {
|
|
@@ -179,28 +203,28 @@ var AiChatProcessor = class {
|
|
|
179
203
|
this._registry.set(this.error, Option.none());
|
|
180
204
|
this._lastRequest = void 0;
|
|
181
205
|
this._fiber = void 0;
|
|
182
|
-
} catch (
|
|
206
|
+
} catch (err) {
|
|
183
207
|
log.error("request failed", {
|
|
184
|
-
error
|
|
208
|
+
error: err
|
|
185
209
|
}, {
|
|
186
210
|
F: __dxlog_file,
|
|
187
|
-
L:
|
|
211
|
+
L: 211,
|
|
188
212
|
S: this,
|
|
189
213
|
C: (f, a) => f(...a)
|
|
190
214
|
});
|
|
191
215
|
this._registry.set(this.error, Option.some(new Error("AI service error", {
|
|
192
|
-
cause:
|
|
216
|
+
cause: err
|
|
193
217
|
})));
|
|
194
218
|
} finally {
|
|
195
|
-
this._fiber = void 0;
|
|
196
219
|
this._registry.set(this.active, false);
|
|
220
|
+
this._fiber = void 0;
|
|
197
221
|
}
|
|
198
222
|
}
|
|
199
223
|
/**
|
|
200
224
|
* Cancels the current request.
|
|
201
225
|
*/
|
|
202
226
|
async cancel() {
|
|
203
|
-
await
|
|
227
|
+
await runAndForwardErrors(Effect2.gen(this, function* () {
|
|
204
228
|
if (this._fiber) {
|
|
205
229
|
yield* this._fiber.pipe(Fiber2.interrupt);
|
|
206
230
|
}
|
|
@@ -240,7 +264,7 @@ var AiChatProcessor = class {
|
|
|
240
264
|
_onBlock = Effect2.fn((function* (block) {
|
|
241
265
|
this._registry.update(this._streaming, (streaming) => {
|
|
242
266
|
const blocks = streaming.pipe(Option.map((streaming2) => streaming2.blocks.filter((b) => !b.pending)), Option.getOrElse(() => []));
|
|
243
|
-
return Option.some(
|
|
267
|
+
return Option.some(Obj2.make(Message.Message, {
|
|
244
268
|
created: (/* @__PURE__ */ new Date()).toISOString(),
|
|
245
269
|
sender: {
|
|
246
270
|
role: "assistant"
|
|
@@ -259,4 +283,4 @@ export {
|
|
|
259
283
|
updateName,
|
|
260
284
|
AiChatProcessor
|
|
261
285
|
};
|
|
262
|
-
//# sourceMappingURL=chunk-
|
|
286
|
+
//# sourceMappingURL=chunk-IJYAKPEU.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/processor/update-name.ts", "../../../src/processor/presets.ts", "../../../src/processor/processor.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport * as Exit from 'effect/Exit';\nimport * as Fiber from 'effect/Fiber';\nimport * as Runtime from 'effect/Runtime';\n\nimport { AiService, DEFAULT_EDGE_MODEL, type ModelName } from '@dxos/ai';\nimport { type AiConversation, AiSession } from '@dxos/assistant';\nimport { type Chat } from '@dxos/assistant-toolkit';\nimport { Obj } from '@dxos/echo';\nimport { throwCause } from '@dxos/effect';\nimport { trim } from '@dxos/util';\n\nimport { type AiChatServices } from './processor';\n\n/**\n * Update the current chat's name.\n */\n// TODO(burdon): Convert this into a plugin tool.\nexport const updateName = async (\n runtime: Runtime.Runtime<AiChatServices>,\n conversation: AiConversation,\n chat: Chat.Chat,\n model: ModelName = DEFAULT_EDGE_MODEL,\n): Promise<void> => {\n const history = await conversation.getHistory();\n const system = trim`\n It is extremely important that you respond only with the title and nothing else.\n If you cannot do this effectively respond with \"New Chat\".\n `;\n const prompt = 'Suggest a name for this chat';\n\n const fiber = Effect.gen(this, function* () {\n const session = new AiSession();\n return yield* session.run({ system, prompt, history });\n }).pipe(\n Effect.provide(AiService.model(model)),\n Effect.tap((messages) => {\n // TODO(burdon): Parse response (should update via tool).\n const message = messages.find((message) => message.sender.role === 'assistant');\n const title = message?.blocks.find((block) => block._tag === 'text')?.text;\n if (title) {\n Obj.change(chat, (c) => {\n c.name = title;\n });\n }\n }),\n Runtime.runFork(runtime), // Run in the background.\n );\n\n const response = await fiber.pipe(Fiber.join, Effect.runPromiseExit);\n if (!Exit.isSuccess(response)) {\n throwCause(response.cause);\n }\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\n\nimport { type ModelName } from '@dxos/ai';\n\nconst ModelProviders = ['dxos-local', 'dxos-remote', 'lm-studio'] as const;\n\nconst ModelProvider = Schema.Literal(...ModelProviders);\ntype ModelProvider = Schema.Schema.Type<typeof ModelProvider>;\n\nexport type AiServicePreset = {\n id: string;\n provider: ModelProvider;\n model: ModelName;\n label?: string;\n};\n\nconst createModelLabel = (model: ModelName) => {\n const parts = model.split('/');\n return parts[parts.length - 1];\n};\n\n// TODO(burdon): Users should be able to create and edit presets.\nexport const AiServicePresets: AiServicePreset[] = [\n {\n provider: 'dxos-remote' as const,\n model: '@anthropic/claude-opus-4-0' as const,\n },\n {\n provider: 'dxos-remote' as const,\n model: '@anthropic/claude-sonnet-4-0' as const,\n },\n {\n provider: 'dxos-remote' as const,\n model: '@anthropic/claude-3-5-haiku-20241022' as const,\n },\n {\n provider: 'lm-studio' as const,\n model: '@google/gemma-3-27b' as const,\n },\n {\n provider: 'lm-studio' as const,\n model: '@meta/llama-3.2-3b-instruct' as const,\n },\n {\n model: 'deepseek-r1:latest' as const,\n provider: 'dxos-local' as const,\n },\n].map(\n ({ model, provider }, i) =>\n ({\n id: `preset-${i}`,\n provider,\n model,\n label: createModelLabel(model),\n }) satisfies AiServicePreset,\n);\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport type * as Tool from '@effect/ai/Tool';\nimport { Atom, Registry } from '@effect-atom/atom-react';\nimport * as Cause from 'effect/Cause';\nimport * as Effect from 'effect/Effect';\nimport * as Exit from 'effect/Exit';\nimport * as Fiber from 'effect/Fiber';\nimport * as Option from 'effect/Option';\nimport * as Runtime from 'effect/Runtime';\n\nimport {\n AiService,\n DEFAULT_EDGE_MODEL,\n type ModelName,\n type ModelRegistry,\n type ToolExecutionService,\n type ToolResolverService,\n} from '@dxos/ai';\nimport {\n AiContextService,\n type AiConversation,\n type AiConversationRunProps,\n ArtifactDiffResolver,\n GenerationObserver,\n createSystemPrompt,\n} from '@dxos/assistant';\nimport { formatSystemPrompt } from '@dxos/assistant';\nimport { type Chat } from '@dxos/assistant-toolkit';\nimport { type Blueprint } from '@dxos/blueprints';\nimport { Obj } from '@dxos/echo';\nimport { type Database } from '@dxos/echo';\nimport { runAndForwardErrors, throwCause, unwrapExit } from '@dxos/effect';\nimport {\n type CredentialsService,\n type FunctionInvocationService,\n type QueueService,\n type TracingService,\n} from '@dxos/functions';\nimport { log } from '@dxos/log';\nimport { type ContentBlock, Message } from '@dxos/types';\n\nimport { updateName } from './update-name';\n\nexport type AiChatServices =\n | CredentialsService\n | Database.Service\n | QueueService\n | FunctionInvocationService\n | AiService.AiService\n | ToolExecutionService\n | ToolResolverService\n | TracingService;\n\nexport type AiChatProcessorOptions = {\n model?: ModelName;\n modelRegistry?: ModelRegistry;\n blueprintRegistry?: Blueprint.Registry;\n observableRegistry?: Registry.Registry;\n extensions?: ToolContextExtensions;\n} & Pick<AiConversationRunProps, 'system'>;\n\nconst defaultOptions: Partial<AiChatProcessorOptions> = {\n model: DEFAULT_EDGE_MODEL,\n};\n\n// TODO(burdon): Retry, timeout?\nexport type AiRequestOptions = {};\n\nexport type AiRequest = {\n message: string;\n options?: AiRequestOptions;\n};\n\n/**\n * Handles interactions with the AI service.\n * Handles streaming responses from the conversation.\n */\nexport class AiChatProcessor {\n private readonly _registry: Registry.Registry;\n\n /** External observer. */\n private readonly _observer: GenerationObserver;\n\n /** Pending messages (incl. the current user request). */\n private readonly _pending = Atom.make<Message.Message[]>([]);\n\n /** Currently streaming message (from the AI service). */\n private readonly _streaming = Atom.make<Option.Option<Message.Message>>(Option.none());\n\n /** Currently active request fiber. */\n private _fiber: Fiber.Fiber<void, any> | undefined;\n\n /** Last request (for retries). */\n private _lastRequest: AiRequest | undefined;\n\n /** Streaming state. */\n public readonly streaming = Atom.make<boolean>((get) => Option.isSome(get(this._streaming)));\n\n /** Active state. */\n public readonly active = Atom.make(false);\n\n /** Array of Messages (incl. the current message being streamed). */\n public readonly messages = Atom.make<Message.Message[]>((get) =>\n Option.match(get(this._streaming), {\n onNone: () => get(this._pending),\n onSome: (streaming) => [...get(this._pending), streaming],\n }),\n );\n\n /** Last error. */\n public readonly error = Atom.make<Option.Option<Error>>(Option.none());\n\n constructor(\n private readonly _conversation: AiConversation,\n // TODO(dmaretskyi): Replace this with effect's ManagedRuntime wrapping this layer.\n private readonly _services: () => Promise<Runtime.Runtime<AiChatServices>>,\n private readonly _options: AiChatProcessorOptions = defaultOptions,\n ) {\n // Initialize registries and defaults before using in other logic.\n this._registry = this._options.observableRegistry ?? Registry.make();\n this._observer = GenerationObserver.make({\n onBlock: this._onBlock,\n onMessage: this._onMessage,\n });\n if (this._options.model && !this._options.system) {\n const capabilities = this._options.modelRegistry?.getCapabilities(this._options.model) ?? {};\n this._options.system = createSystemPrompt(capabilities);\n }\n }\n\n get context() {\n return this._conversation.context;\n }\n\n get conversation() {\n return this._conversation;\n }\n\n get blueprintRegistry() {\n return this._options.blueprintRegistry;\n }\n\n get system(): string {\n return this._options.system ?? '';\n }\n\n async getTools(): Promise<Record<string, Tool.Any>> {\n return unwrapExit(await this._conversation.getTools().pipe(await Runtime.runPromiseExit(await this._services())));\n }\n\n async getSystemPrompt(): Promise<string> {\n return unwrapExit(\n await Effect.gen(this, function* () {\n const blueprints = this.context.getBlueprints();\n const objects = this.context.getObjects();\n const system = yield* formatSystemPrompt({ system: this._options.system, blueprints, objects });\n return system;\n }).pipe(\n Effect.provideService(AiContextService, {\n binder: this.context,\n }),\n await Runtime.runPromiseExit(await this._services()),\n ),\n );\n }\n\n /**\n * Initiates a new request.\n */\n async request(requestProp: AiRequest): Promise<void> {\n if (this._fiber) {\n await this.cancel();\n }\n\n try {\n this._lastRequest = requestProp;\n this._registry.set(this.error, Option.none());\n this._registry.set(this.active, true);\n\n const services = await this._services();\n\n // Create request.\n const request = this._conversation.createRequest({\n system: this._options.system,\n prompt: requestProp.message,\n observer: this._observer,\n });\n\n // Create fiber.\n this._fiber = request.pipe(\n Effect.provide(AiService.model(this._options.model ?? DEFAULT_EDGE_MODEL)),\n // TODO(dmaretskyi): Move ArtifactDiffResolver upstream.\n Effect.provideService(ArtifactDiffResolver, this._artifactDiffResolver),\n Effect.asVoid,\n Runtime.runFork(services), // Runs in the background.\n );\n\n // Execute request.\n const response = await this._fiber.pipe(Fiber.join, Effect.runPromiseExit);\n if (!Exit.isSuccess(response) && !Cause.isInterruptedOnly(response.cause)) {\n throwCause(response.cause);\n }\n\n this._registry.set(this.error, Option.none());\n this._lastRequest = undefined;\n this._fiber = undefined;\n } catch (err) {\n log.error('request failed', { error: err });\n this._registry.set(this.error, Option.some(new Error('AI service error', { cause: err })));\n } finally {\n this._registry.set(this.active, false);\n this._fiber = undefined;\n }\n }\n\n /**\n * Cancels the current request.\n */\n async cancel(): Promise<void> {\n await runAndForwardErrors(\n Effect.gen(this, function* () {\n if (this._fiber) {\n yield* this._fiber.pipe(Fiber.interrupt);\n }\n }),\n );\n\n this._fiber = undefined;\n this._registry.set(this.active, false);\n }\n\n /**\n * Retry last failed request.\n */\n async retry(): Promise<void> {\n if (this._lastRequest) {\n return this.request(this._lastRequest);\n }\n }\n\n /**\n * Update the current chat's name.\n */\n async updateName(chat: Chat.Chat): Promise<void> {\n const runtime = await this._services();\n await updateName(runtime, this._conversation, chat, this._options.model);\n }\n\n // TODO(burdon): Fix/factor out.\n private _artifactDiffResolver: ArtifactDiffResolver.Service = {\n resolve: async (_artifacts) => {\n const versions = new Map();\n // await Promise.all(\n // artifacts.map(async (artifact) => {\n // const {\n // objects: [object],\n // } = await space.db.query(Filter.id(artifact.id)).run();\n // if (!object) {\n // return;\n // }\n\n // versions.set(artifact.id, {\n // version: getVersion(object),\n // diff: `Current state: ${JSON.stringify(object)}`,\n // });\n // }),\n // );\n\n return versions;\n },\n };\n\n private _onMessage = Effect.fn(\n function* (this: AiChatProcessor, message: Message.Message) {\n this._registry.set(this._streaming, Option.none());\n this._registry.update(this._pending, (pending) => [...pending, message]);\n }.bind(this),\n );\n\n private _onBlock = Effect.fn(\n function* (this: AiChatProcessor, block: ContentBlock.Any) {\n this._registry.update(this._streaming, (streaming) => {\n const blocks = streaming.pipe(\n Option.map((streaming) => streaming.blocks.filter((b: ContentBlock.Any) => !b.pending)),\n Option.getOrElse(() => []),\n );\n\n return Option.some(\n Obj.make(Message.Message, {\n created: new Date().toISOString(),\n sender: { role: 'assistant' },\n blocks: [...blocks, block],\n }),\n );\n });\n }.bind(this),\n );\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["Effect", "Exit", "Fiber", "Runtime", "AiService", "DEFAULT_EDGE_MODEL", "AiSession", "Obj", "throwCause", "trim", "updateName", "runtime", "conversation", "chat", "model", "DEFAULT_EDGE_MODEL", "history", "getHistory", "system", "trim", "prompt", "fiber", "gen", "session", "AiSession", "run", "pipe", "provide", "AiService", "tap", "messages", "message", "find", "sender", "role", "title", "blocks", "block", "_tag", "text", "Obj", "change", "c", "name", "runFork", "response", "join", "runPromiseExit", "isSuccess", "throwCause", "cause", "Schema", "ModelProviders", "ModelProvider", "Literal", "createModelLabel", "model", "parts", "split", "length", "AiServicePresets", "provider", "map", "i", "id", "label", "Atom", "Registry", "Cause", "Effect", "Exit", "Fiber", "Option", "Runtime", "AiService", "DEFAULT_EDGE_MODEL", "AiContextService", "ArtifactDiffResolver", "GenerationObserver", "createSystemPrompt", "formatSystemPrompt", "Obj", "runAndForwardErrors", "throwCause", "unwrapExit", "log", "Message", "defaultOptions", "model", "DEFAULT_EDGE_MODEL", "AiChatProcessor", "_registry", "_observer", "_pending", "Atom", "make", "_streaming", "none", "_fiber", "_lastRequest", "streaming", "get", "isSome", "active", "messages", "match", "onNone", "onSome", "error", "_conversation", "_services", "_options", "observableRegistry", "Registry", "GenerationObserver", "onBlock", "_onBlock", "onMessage", "_onMessage", "system", "capabilities", "modelRegistry", "getCapabilities", "createSystemPrompt", "context", "conversation", "blueprintRegistry", "getTools", "unwrapExit", "pipe", "runPromiseExit", "getSystemPrompt", "gen", "blueprints", "getBlueprints", "objects", "getObjects", "formatSystemPrompt", "provideService", "AiContextService", "binder", "request", "requestProp", "cancel", "set", "services", "createRequest", "prompt", "message", "observer", "provide", "AiService", "ArtifactDiffResolver", "_artifactDiffResolver", "asVoid", "runFork", "response", "join", "isSuccess", "isInterruptedOnly", "cause", "throwCause", "undefined", "err", "log", "some", "Error", "runAndForwardErrors", "interrupt", "retry", "updateName", "chat", "runtime", "resolve", "_artifacts", "versions", "Map", "fn", "update", "pending", "bind", "block", "blocks", "map", "filter", "b", "getOrElse", "Obj", "Message", "created", "Date", "toISOString", "sender", "role"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
import {
|
|
2
|
+
__export
|
|
3
|
+
} from "./chunk-J5LGTIGS.mjs";
|
|
4
|
+
|
|
5
|
+
// src/blueprints/assistant-blueprint.ts
|
|
6
|
+
var assistant_blueprint_exports = {};
|
|
7
|
+
__export(assistant_blueprint_exports, {
|
|
8
|
+
Key: () => Key,
|
|
9
|
+
blueprint: () => blueprint,
|
|
10
|
+
blueprints: () => blueprints,
|
|
11
|
+
deckTools: () => deckTools,
|
|
12
|
+
functions: () => functions,
|
|
13
|
+
functions$: () => functions$,
|
|
14
|
+
make: () => make,
|
|
15
|
+
tools: () => tools
|
|
16
|
+
});
|
|
17
|
+
import { templates } from "@dxos/assistant";
|
|
18
|
+
import { AssistantToolkit, DiscordBlueprint, LinearBlueprint, ResearchBlueprint, SystemToolkit, WebSearchBlueprint } from "@dxos/assistant-toolkit";
|
|
19
|
+
import { Blueprint } from "@dxos/blueprints";
|
|
20
|
+
|
|
21
|
+
// src/functions/object-list.ts
|
|
22
|
+
import * as Effect from "effect/Effect";
|
|
23
|
+
import * as Schema from "effect/Schema";
|
|
24
|
+
import { Filter, Obj, Query } from "@dxos/echo";
|
|
25
|
+
import { Database } from "@dxos/echo";
|
|
26
|
+
import { defineFunction } from "@dxos/functions";
|
|
27
|
+
import { trim } from "@dxos/util";
|
|
28
|
+
var object_list_default = defineFunction({
|
|
29
|
+
key: "dxos.org/function/assistant/object-list",
|
|
30
|
+
name: "List objects",
|
|
31
|
+
description: (
|
|
32
|
+
// TODO(wittjosiah): Find a better way to prompt for looking up typenames before querying with them.
|
|
33
|
+
trim`
|
|
34
|
+
Lists the objects of the given type.
|
|
35
|
+
Check the get-schemas tool for available types before calling this function.
|
|
36
|
+
`
|
|
37
|
+
),
|
|
38
|
+
inputSchema: Schema.Struct({
|
|
39
|
+
typename: Schema.String.annotations({
|
|
40
|
+
description: "The typename of the objects to list."
|
|
41
|
+
})
|
|
42
|
+
}),
|
|
43
|
+
outputSchema: Schema.Struct({
|
|
44
|
+
results: Schema.Array(Schema.Struct({
|
|
45
|
+
dxn: Schema.String.annotations({
|
|
46
|
+
description: "The DXN of the object."
|
|
47
|
+
}),
|
|
48
|
+
label: Schema.optional(Schema.String.annotations({
|
|
49
|
+
description: "The label of the object."
|
|
50
|
+
}))
|
|
51
|
+
}))
|
|
52
|
+
}),
|
|
53
|
+
handler: Effect.fn(function* ({ data: { typename } }) {
|
|
54
|
+
const [schema] = yield* Database.runSchemaQuery({
|
|
55
|
+
typename
|
|
56
|
+
});
|
|
57
|
+
const filter = schema ? Filter.type(schema) : Filter.typename(typename);
|
|
58
|
+
const objects = yield* Database.runQuery(Query.select(filter));
|
|
59
|
+
const results = objects.map((object) => ({
|
|
60
|
+
dxn: Obj.getDXN(object).toString(),
|
|
61
|
+
label: Obj.getLabel(object)
|
|
62
|
+
}));
|
|
63
|
+
return {
|
|
64
|
+
results
|
|
65
|
+
};
|
|
66
|
+
})
|
|
67
|
+
});
|
|
68
|
+
|
|
69
|
+
// src/functions/object-load.ts
|
|
70
|
+
import * as Effect2 from "effect/Effect";
|
|
71
|
+
import * as Function from "effect/Function";
|
|
72
|
+
import * as Option from "effect/Option";
|
|
73
|
+
import * as Schema2 from "effect/Schema";
|
|
74
|
+
import { Database as Database2, Entity, Type } from "@dxos/echo";
|
|
75
|
+
import { defineFunction as defineFunction2 } from "@dxos/functions";
|
|
76
|
+
var object_load_default = defineFunction2({
|
|
77
|
+
key: "dxos.org/function/assistant/object-load",
|
|
78
|
+
name: "Load object",
|
|
79
|
+
description: "Loads the object.",
|
|
80
|
+
inputSchema: Schema2.Struct({
|
|
81
|
+
object: Type.Ref(Type.Obj).annotations({
|
|
82
|
+
description: "The ID of the object."
|
|
83
|
+
}),
|
|
84
|
+
typename: Schema2.String.annotations({
|
|
85
|
+
description: "The typename of the object."
|
|
86
|
+
})
|
|
87
|
+
}),
|
|
88
|
+
outputSchema: Schema2.Struct({
|
|
89
|
+
// TODO(wittjosiah): Type.Entity.Any
|
|
90
|
+
object: Schema2.Any
|
|
91
|
+
}),
|
|
92
|
+
handler: Effect2.fn(function* ({ data: { object, typename } }) {
|
|
93
|
+
const loadedObject = yield* Database2.load(object);
|
|
94
|
+
return yield* Function.pipe(Option.fromNullable(loadedObject), Option.flatMap((obj) => Entity.getTypename(obj) === typename ? Option.some(obj) : Option.none()), Option.match({
|
|
95
|
+
onNone: () => Effect2.fail("Object not found."),
|
|
96
|
+
onSome: (obj) => {
|
|
97
|
+
return Effect2.succeed({
|
|
98
|
+
object: obj
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
}));
|
|
102
|
+
})
|
|
103
|
+
});
|
|
104
|
+
|
|
105
|
+
// src/functions/object-search.ts
|
|
106
|
+
import * as Effect3 from "effect/Effect";
|
|
107
|
+
import * as Schema3 from "effect/Schema";
|
|
108
|
+
import { Filter as Filter2, Obj as Obj2, Query as Query2 } from "@dxos/echo";
|
|
109
|
+
import { Database as Database3 } from "@dxos/echo";
|
|
110
|
+
import { defineFunction as defineFunction3 } from "@dxos/functions";
|
|
111
|
+
import { trim as trim2 } from "@dxos/util";
|
|
112
|
+
var object_search_default = defineFunction3({
|
|
113
|
+
key: "dxos.org/function/assistant/object-search",
|
|
114
|
+
name: "Search objects",
|
|
115
|
+
description: (
|
|
116
|
+
// TODO(wittjosiah): Find a better way to prompt for looking up typenames before querying with them.
|
|
117
|
+
trim2`
|
|
118
|
+
Searches the objects using full-text search.
|
|
119
|
+
`
|
|
120
|
+
),
|
|
121
|
+
inputSchema: Schema3.Struct({
|
|
122
|
+
query: Schema3.String.annotations({
|
|
123
|
+
description: "The query to search for."
|
|
124
|
+
})
|
|
125
|
+
}),
|
|
126
|
+
outputSchema: Schema3.Struct({
|
|
127
|
+
results: Schema3.Array(Schema3.Struct({
|
|
128
|
+
dxn: Schema3.String.annotations({
|
|
129
|
+
description: "The DXN of the object."
|
|
130
|
+
}),
|
|
131
|
+
label: Schema3.optional(Schema3.String.annotations({
|
|
132
|
+
description: "The label of the object."
|
|
133
|
+
}))
|
|
134
|
+
}))
|
|
135
|
+
}),
|
|
136
|
+
handler: Effect3.fn(function* ({ data: { query } }) {
|
|
137
|
+
const objects = yield* Database3.runQuery(Query2.select(Filter2.text(query, {
|
|
138
|
+
type: "full-text"
|
|
139
|
+
})).options({
|
|
140
|
+
allQueuesFromSpaces: true
|
|
141
|
+
}));
|
|
142
|
+
const results = objects.map((object) => ({
|
|
143
|
+
dxn: Obj2.getDXN(object).toString(),
|
|
144
|
+
label: Obj2.getLabel(object)
|
|
145
|
+
}));
|
|
146
|
+
return {
|
|
147
|
+
results
|
|
148
|
+
};
|
|
149
|
+
})
|
|
150
|
+
});
|
|
151
|
+
|
|
152
|
+
// src/blueprints/assistant-blueprint.ts
|
|
153
|
+
var deckTools = [
|
|
154
|
+
"open-item"
|
|
155
|
+
];
|
|
156
|
+
var functions$ = [
|
|
157
|
+
object_list_default,
|
|
158
|
+
object_load_default,
|
|
159
|
+
object_search_default
|
|
160
|
+
];
|
|
161
|
+
var functions = [
|
|
162
|
+
...functions$
|
|
163
|
+
];
|
|
164
|
+
var tools = [
|
|
165
|
+
...AssistantToolkit.tools,
|
|
166
|
+
...SystemToolkit.tools,
|
|
167
|
+
...deckTools
|
|
168
|
+
];
|
|
169
|
+
var Key = "dxos.org/blueprint/assistant";
|
|
170
|
+
var make = () => Blueprint.make({
|
|
171
|
+
key: Key,
|
|
172
|
+
name: "Assistant",
|
|
173
|
+
tools: Blueprint.toolDefinitions({
|
|
174
|
+
functions,
|
|
175
|
+
tools
|
|
176
|
+
}),
|
|
177
|
+
instructions: templates.system
|
|
178
|
+
});
|
|
179
|
+
var blueprint = make();
|
|
180
|
+
var blueprints = [
|
|
181
|
+
blueprint,
|
|
182
|
+
// Factor out.
|
|
183
|
+
ResearchBlueprint,
|
|
184
|
+
WebSearchBlueprint,
|
|
185
|
+
DiscordBlueprint,
|
|
186
|
+
LinearBlueprint
|
|
187
|
+
];
|
|
188
|
+
|
|
189
|
+
// src/blueprints/index.ts
|
|
190
|
+
var blueprints2 = blueprints;
|
|
191
|
+
var functions2 = functions;
|
|
192
|
+
|
|
193
|
+
export {
|
|
194
|
+
assistant_blueprint_exports,
|
|
195
|
+
blueprints2 as blueprints,
|
|
196
|
+
functions2 as functions
|
|
197
|
+
};
|
|
198
|
+
//# sourceMappingURL=chunk-POPBT2AQ.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/blueprints/assistant-blueprint.ts", "../../../src/functions/object-list.ts", "../../../src/functions/object-load.ts", "../../../src/functions/object-search.ts", "../../../src/blueprints/index.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { templates } from '@dxos/assistant';\nimport {\n AssistantToolkit,\n DiscordBlueprint,\n LinearBlueprint,\n ResearchBlueprint,\n SystemToolkit,\n WebSearchBlueprint,\n} from '@dxos/assistant-toolkit';\nimport { Blueprint } from '@dxos/blueprints';\nimport { type FunctionDefinition } from '@dxos/functions';\n\nimport { list, load, search } from '../functions';\n\n// TODO(burdon): Document plugin structure (blueprint, functions, toolkit.).\n// TODO(burdon): Test framework for developing functions. Error handling.\n// TODO(burdon): Function naming pattern (noun-verb); fully-qualified?\n\nexport const deckTools = ['open-item'];\n\nexport const functions$: FunctionDefinition[] = [list, load, search];\nexport const functions = [\n ...functions$,\n // Factor out.\n // Research.create,\n // Research.research,\n // Agent.prompt,\n // EntityExtraction.extract,\n // Discord.fetch,\n // Linear.sync,\n];\nexport const tools = [...AssistantToolkit.tools, ...SystemToolkit.tools, ...deckTools];\n\nexport const Key = 'dxos.org/blueprint/assistant';\n\nexport const make = (): Blueprint.Blueprint =>\n Blueprint.make({\n key: Key,\n name: 'Assistant',\n tools: Blueprint.toolDefinitions({ functions, tools }),\n instructions: templates.system,\n });\n\nexport const blueprint = make();\n\nexport const blueprints = [\n blueprint,\n // Factor out.\n ResearchBlueprint,\n WebSearchBlueprint,\n DiscordBlueprint,\n LinearBlueprint,\n];\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport * as Schema from 'effect/Schema';\n\nimport { Filter, Obj, Query } from '@dxos/echo';\nimport { Database } from '@dxos/echo';\nimport { defineFunction } from '@dxos/functions';\nimport { trim } from '@dxos/util';\n\n// TODO(burdon): Move to toolkit (i.e., tool not function).\nexport default defineFunction({\n key: 'dxos.org/function/assistant/object-list',\n name: 'List objects',\n description:\n // TODO(wittjosiah): Find a better way to prompt for looking up typenames before querying with them.\n trim`\n Lists the objects of the given type.\n Check the get-schemas tool for available types before calling this function.\n `,\n inputSchema: Schema.Struct({\n typename: Schema.String.annotations({\n description: 'The typename of the objects to list.',\n }),\n }),\n outputSchema: Schema.Struct({\n results: Schema.Array(\n Schema.Struct({\n dxn: Schema.String.annotations({ description: 'The DXN of the object.' }),\n label: Schema.optional(Schema.String.annotations({ description: 'The label of the object.' })),\n }),\n ),\n }),\n handler: Effect.fn(function* ({ data: { typename } }) {\n // TODO(wittjosiah): Typename query is not working for dynamic schemas.\n const [schema] = yield* Database.runSchemaQuery({ typename });\n const filter = schema ? Filter.type(schema) : Filter.typename(typename);\n\n const objects = yield* Database.runQuery(Query.select(filter));\n const results = objects.map((object) => ({\n dxn: Obj.getDXN(object).toString(),\n label: Obj.getLabel(object),\n }));\n\n return { results };\n }),\n});\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport * as Function from 'effect/Function';\nimport * as Option from 'effect/Option';\nimport * as Schema from 'effect/Schema';\n\nimport { Database, Entity, Type } from '@dxos/echo';\nimport { defineFunction } from '@dxos/functions';\n\n// TODO(burdon): Move to toolkit (i.e., tool not function).\nexport default defineFunction({\n key: 'dxos.org/function/assistant/object-load',\n name: 'Load object',\n description: 'Loads the object.',\n inputSchema: Schema.Struct({\n object: Type.Ref(Type.Obj).annotations({\n description: 'The ID of the object.',\n }),\n typename: Schema.String.annotations({\n description: 'The typename of the object.',\n }),\n }),\n outputSchema: Schema.Struct({\n // TODO(wittjosiah): Type.Entity.Any\n object: Schema.Any,\n }),\n handler: Effect.fn(function* ({ data: { object, typename } }) {\n const loadedObject = yield* Database.load(object);\n return yield* Function.pipe(\n Option.fromNullable(loadedObject),\n Option.flatMap((obj) => (Entity.getTypename(obj) === typename ? Option.some(obj) : Option.none())),\n Option.match({\n onNone: () => Effect.fail('Object not found.'),\n onSome: (obj) => {\n // log.info('object', { object: obj });\n return Effect.succeed({ object: obj });\n },\n }),\n );\n }),\n});\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport * as Schema from 'effect/Schema';\n\nimport { Filter, Obj, Query } from '@dxos/echo';\nimport { Database } from '@dxos/echo';\nimport { defineFunction } from '@dxos/functions';\nimport { trim } from '@dxos/util';\n\n// TODO(burdon): Move to toolkit (i.e., tool not function).\nexport default defineFunction({\n key: 'dxos.org/function/assistant/object-search',\n name: 'Search objects',\n description:\n // TODO(wittjosiah): Find a better way to prompt for looking up typenames before querying with them.\n trim`\n Searches the objects using full-text search.\n `,\n inputSchema: Schema.Struct({\n query: Schema.String.annotations({\n description: 'The query to search for.',\n }),\n }),\n outputSchema: Schema.Struct({\n results: Schema.Array(\n Schema.Struct({\n dxn: Schema.String.annotations({ description: 'The DXN of the object.' }),\n label: Schema.optional(Schema.String.annotations({ description: 'The label of the object.' })),\n }),\n ),\n }),\n handler: Effect.fn(function* ({ data: { query } }) {\n const objects = yield* Database.runQuery(\n Query.select(Filter.text(query, { type: 'full-text' })).options({ allQueuesFromSpaces: true }),\n );\n const results = objects.map((object) => ({\n dxn: Obj.getDXN(object).toString(),\n label: Obj.getLabel(object),\n }));\n\n return { results };\n }),\n});\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { type Blueprint } from '@dxos/blueprints';\nimport { type FunctionDefinition } from '@dxos/functions';\n\nimport * as AssistantBlueprint from './assistant-blueprint';\n\nexport { AssistantBlueprint };\nexport const blueprints: Blueprint.Blueprint[] = AssistantBlueprint.blueprints;\nexport const functions: FunctionDefinition[] = AssistantBlueprint.functions;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["templates", "AssistantToolkit", "DiscordBlueprint", "LinearBlueprint", "ResearchBlueprint", "SystemToolkit", "WebSearchBlueprint", "Blueprint", "Effect", "Schema", "Filter", "Obj", "Query", "Database", "defineFunction", "trim", "defineFunction", "key", "name", "description", "trim", "inputSchema", "Struct", "typename", "String", "annotations", "outputSchema", "results", "Array", "dxn", "label", "optional", "handler", "fn", "data", "schema", "Database", "runSchemaQuery", "filter", "Filter", "type", "objects", "runQuery", "Query", "select", "map", "object", "Obj", "getDXN", "toString", "getLabel", "Effect", "Function", "Option", "Schema", "Database", "Entity", "Type", "defineFunction", "defineFunction", "key", "name", "description", "inputSchema", "Struct", "object", "Type", "Ref", "Obj", "annotations", "typename", "String", "outputSchema", "Any", "handler", "fn", "data", "loadedObject", "Database", "load", "pipe", "fromNullable", "flatMap", "obj", "Entity", "getTypename", "some", "none", "match", "onNone", "fail", "onSome", "succeed", "Effect", "Schema", "Filter", "Obj", "Query", "Database", "defineFunction", "trim", "defineFunction", "key", "name", "description", "trim", "inputSchema", "Struct", "query", "String", "annotations", "outputSchema", "results", "Array", "dxn", "label", "optional", "handler", "fn", "data", "objects", "Database", "runQuery", "Query", "select", "Filter", "text", "type", "options", "allQueuesFromSpaces", "map", "object", "Obj", "getDXN", "toString", "getLabel", "deckTools", "functions$", "list", "load", "search", "functions", "tools", "AssistantToolkit", "SystemToolkit", "Key", "make", "Blueprint", "key", "name", "toolDefinitions", "instructions", "templates", "system", "blueprint", "blueprints", "ResearchBlueprint", "WebSearchBlueprint", "DiscordBlueprint", "LinearBlueprint", "blueprints", "functions"]
|
|
7
|
+
}
|