@dxos/assistant 0.8.4-main.84f28bd → 0.8.4-main.ae835ea
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/chunk-4VIJTKPM.mjs +354 -0
- package/dist/lib/browser/chunk-4VIJTKPM.mjs.map +7 -0
- package/dist/lib/browser/chunk-UB26N5UF.mjs +89 -0
- package/dist/lib/browser/chunk-UB26N5UF.mjs.map +7 -0
- package/dist/lib/browser/extraction/index.mjs +272 -0
- package/dist/lib/browser/extraction/index.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +754 -1873
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/named-entity-recognition-QPYHML66.mjs +13 -0
- package/dist/lib/browser/named-entity-recognition-QPYHML66.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-AUUC7II4.mjs +356 -0
- package/dist/lib/node-esm/chunk-AUUC7II4.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-BCFXTNSK.mjs +91 -0
- package/dist/lib/node-esm/chunk-BCFXTNSK.mjs.map +7 -0
- package/dist/lib/node-esm/extraction/index.mjs +273 -0
- package/dist/lib/node-esm/extraction/index.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +754 -1874
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/named-entity-recognition-2HDF46YX.mjs +14 -0
- package/dist/lib/node-esm/named-entity-recognition-2HDF46YX.mjs.map +7 -0
- package/dist/types/src/conversation/context.d.ts +103 -0
- package/dist/types/src/conversation/context.d.ts.map +1 -0
- package/dist/types/src/conversation/conversation.d.ts +29 -32
- package/dist/types/src/conversation/conversation.d.ts.map +1 -1
- package/dist/types/src/conversation/index.d.ts +1 -0
- package/dist/types/src/conversation/index.d.ts.map +1 -1
- package/dist/types/src/diff.d.ts +15 -0
- package/dist/types/src/diff.d.ts.map +1 -0
- package/dist/types/src/diff.test.d.ts +2 -0
- package/dist/types/src/diff.test.d.ts.map +1 -0
- package/dist/types/src/errors.d.ts +75 -0
- package/dist/types/src/errors.d.ts.map +1 -0
- package/dist/types/src/execution-graph.d.ts +82 -0
- package/dist/types/src/execution-graph.d.ts.map +1 -0
- package/dist/types/src/execution-graph.test.d.ts +2 -0
- package/dist/types/src/execution-graph.test.d.ts.map +1 -0
- package/dist/types/src/extraction/extraction-llm-function/extraction-llm-function.d.ts +1 -1
- package/dist/types/src/extraction/extraction-llm-function/extraction-llm-function.d.ts.map +1 -1
- package/dist/types/src/extraction/extraction-ner-function/extraction-ner-function.d.ts +210 -73
- package/dist/types/src/extraction/extraction-ner-function/extraction-ner-function.d.ts.map +1 -1
- package/dist/types/src/extraction/extraction-ner-function/named-entity-recognition.d.ts +1 -1
- package/dist/types/src/extraction/extraction-ner-function/named-entity-recognition.d.ts.map +1 -1
- package/dist/types/src/extraction/extraction.d.ts +264 -166
- package/dist/types/src/extraction/extraction.d.ts.map +1 -1
- package/dist/types/src/extraction/quotes.d.ts +1 -1
- package/dist/types/src/extraction/quotes.d.ts.map +1 -1
- package/dist/types/src/functions/index.d.ts +2 -0
- package/dist/types/src/functions/index.d.ts.map +1 -0
- package/dist/types/src/functions/services.d.ts +19 -0
- package/dist/types/src/functions/services.d.ts.map +1 -0
- package/dist/types/src/index.d.ts +5 -5
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/session/artifact-diff.d.ts +27 -0
- package/dist/types/src/session/artifact-diff.d.ts.map +1 -0
- package/dist/types/src/session/error-handling.d.ts +4 -0
- package/dist/types/src/session/error-handling.d.ts.map +1 -0
- package/dist/types/src/session/format.d.ts +186 -0
- package/dist/types/src/session/format.d.ts.map +1 -0
- package/dist/types/src/session/format.test.d.ts +2 -0
- package/dist/types/src/session/format.test.d.ts.map +1 -0
- package/dist/types/src/session/index.d.ts +3 -0
- package/dist/types/src/session/index.d.ts.map +1 -1
- package/dist/types/src/session/observer.d.ts +22 -0
- package/dist/types/src/session/observer.d.ts.map +1 -0
- package/dist/types/src/session/session.d.ts +36 -268
- package/dist/types/src/session/session.d.ts.map +1 -1
- package/dist/types/src/session/toolkit.d.ts +15 -0
- package/dist/types/src/session/toolkit.d.ts.map +1 -0
- package/dist/types/src/session/version-pin.d.ts +5 -5
- package/dist/types/src/session/version-pin.d.ts.map +1 -1
- package/dist/types/src/templates/index.d.ts +2 -0
- package/dist/types/src/templates/index.d.ts.map +1 -0
- package/dist/types/src/templates/system.d.ts +18 -0
- package/dist/types/src/templates/system.d.ts.map +1 -0
- package/dist/types/src/types/artifact.d.ts +16 -0
- package/dist/types/src/types/artifact.d.ts.map +1 -0
- package/dist/types/src/types/index.d.ts +2 -0
- package/dist/types/src/types/index.d.ts.map +1 -0
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +46 -26
- package/src/conversation/context.ts +186 -0
- package/src/conversation/conversation.ts +101 -76
- package/src/conversation/index.ts +1 -0
- package/src/diff.test.ts +43 -0
- package/src/diff.ts +84 -0
- package/src/errors.ts +15 -0
- package/src/execution-graph.test.ts +738 -0
- package/src/execution-graph.ts +500 -0
- package/src/extraction/extraction-llm-function/extraction-llm-function.test.ts +13 -24
- package/src/extraction/extraction-llm-function/extraction-llm-function.ts +28 -22
- package/src/extraction/extraction-ner-function/extraction-ner-function.test.ts +9 -9
- package/src/extraction/extraction-ner-function/extraction-ner-function.ts +18 -8
- package/src/extraction/extraction-ner-function/named-entity-recognition.test.ts +4 -3
- package/src/extraction/extraction-ner-function/named-entity-recognition.ts +3 -1
- package/src/extraction/extraction.ts +2 -2
- package/src/extraction/quotes.test.ts +3 -3
- package/src/extraction/quotes.ts +4 -4
- package/src/functions/index.ts +5 -0
- package/src/functions/services.ts +158 -0
- package/src/index.ts +5 -5
- package/src/session/artifact-diff.ts +41 -0
- package/src/session/error-handling.ts +41 -0
- package/src/session/format.test.ts +60 -0
- package/src/session/format.ts +142 -0
- package/src/session/index.ts +3 -0
- package/src/session/observer.ts +59 -0
- package/src/session/session.conversations.json +1 -0
- package/src/session/session.test.ts +88 -214
- package/src/session/session.ts +170 -539
- package/src/session/toolkit.ts +48 -0
- package/src/session/version-pin.ts +10 -10
- package/src/summarization/summarization.test.ts +87 -106
- package/src/templates/format.tpl +60 -0
- package/src/templates/index.ts +5 -0
- package/src/templates/system.tpl +48 -0
- package/src/templates/system.ts +41 -0
- package/src/types/artifact.ts +52 -0
- package/src/types/index.ts +5 -0
- package/src/typings.d.ts +5 -0
- package/dist/types/bin/chat.d.ts +0 -2
- package/dist/types/bin/chat.d.ts.map +0 -1
- package/dist/types/src/blueprint/blueprint.d.ts +0 -41
- package/dist/types/src/blueprint/blueprint.d.ts.map +0 -1
- package/dist/types/src/blueprint/index.d.ts +0 -3
- package/dist/types/src/blueprint/index.d.ts.map +0 -1
- package/dist/types/src/blueprint/registry.d.ts +0 -7
- package/dist/types/src/blueprint/registry.d.ts.map +0 -1
- package/dist/types/src/context/binder.d.ts +0 -34
- package/dist/types/src/context/binder.d.ts.map +0 -1
- package/dist/types/src/context/binding.d.ts +0 -38
- package/dist/types/src/context/binding.d.ts.map +0 -1
- package/dist/types/src/context/index.d.ts +0 -3
- package/dist/types/src/context/index.d.ts.map +0 -1
- package/dist/types/src/research/exa.d.ts +0 -7
- package/dist/types/src/research/exa.d.ts.map +0 -1
- package/dist/types/src/research/graph.d.ts +0 -41
- package/dist/types/src/research/graph.d.ts.map +0 -1
- package/dist/types/src/research/graph.test.d.ts +0 -2
- package/dist/types/src/research/graph.test.d.ts.map +0 -1
- package/dist/types/src/research/index.d.ts +0 -4
- package/dist/types/src/research/index.d.ts.map +0 -1
- package/dist/types/src/research/research.d.ts +0 -10
- package/dist/types/src/research/research.d.ts.map +0 -1
- package/dist/types/src/research/research.test.d.ts +0 -2
- package/dist/types/src/research/research.test.d.ts.map +0 -1
- package/dist/types/src/session/version-pin.test.d.ts +0 -2
- package/dist/types/src/session/version-pin.test.d.ts.map +0 -1
- package/dist/types/src/testing/exa-search-1748337321991.d.ts +0 -38
- package/dist/types/src/testing/exa-search-1748337321991.d.ts.map +0 -1
- package/dist/types/src/testing/exa-search-1748337331526.d.ts +0 -37
- package/dist/types/src/testing/exa-search-1748337331526.d.ts.map +0 -1
- package/dist/types/src/testing/exa-search-1748337344119.d.ts +0 -58
- package/dist/types/src/testing/exa-search-1748337344119.d.ts.map +0 -1
- package/dist/types/src/testing/index.d.ts +0 -3
- package/dist/types/src/testing/index.d.ts.map +0 -1
- package/dist/types/src/types.d.ts +0 -3
- package/dist/types/src/types.d.ts.map +0 -1
- package/src/blueprint/blueprint.ts +0 -75
- package/src/blueprint/index.ts +0 -6
- package/src/blueprint/registry.ts +0 -15
- package/src/context/binder.ts +0 -101
- package/src/context/binding.ts +0 -31
- package/src/context/index.ts +0 -6
- package/src/research/exa.ts +0 -100
- package/src/research/graph.test.ts +0 -15
- package/src/research/graph.ts +0 -337
- package/src/research/index.ts +0 -7
- package/src/research/instructions-research.tpl +0 -97
- package/src/research/research.test.ts +0 -190
- package/src/research/research.ts +0 -90
- package/src/session/version-pin.test.ts +0 -26
- package/src/testing/exa-search-1748337321991.ts +0 -131
- package/src/testing/exa-search-1748337331526.ts +0 -144
- package/src/testing/exa-search-1748337344119.ts +0 -133
- package/src/testing/index.ts +0 -11
- package/src/typedefs.d.ts +0 -8
- package/src/types.ts +0 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"inputs":{"src/blueprint/blueprint.ts":{"bytes":6816,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true}],"format":"esm"},"src/blueprint/registry.ts":{"bytes":1443,"imports":[],"format":"esm"},"src/blueprint/index.ts":{"bytes":553,"imports":[{"path":"src/blueprint/blueprint.ts","kind":"import-statement","original":"./blueprint"},{"path":"src/blueprint/registry.ts","kind":"import-statement","original":"./registry"}],"format":"esm"},"src/context/binding.ts":{"bytes":2953,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"src/blueprint/index.ts","kind":"import-statement","original":"../blueprint"}],"format":"esm"},"src/context/binder.ts":{"bytes":10210,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/context/binding.ts","kind":"import-statement","original":"./binding"}],"format":"esm"},"src/context/index.ts":{"bytes":539,"imports":[{"path":"src/context/binder.ts","kind":"import-statement","original":"./binder"},{"path":"src/context/binding.ts","kind":"import-statement","original":"./binding"}],"format":"esm"},"src/session/version-pin.ts":{"bytes":4209,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true}],"format":"esm"},"src/session/session.ts":{"bytes":62326,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/session/version-pin.ts","kind":"import-statement","original":"./version-pin"}],"format":"esm"},"src/session/index.ts":{"bytes":556,"imports":[{"path":"src/session/session.ts","kind":"import-statement","original":"./session"},{"path":"src/session/version-pin.ts","kind":"import-statement","original":"./version-pin"}],"format":"esm"},"src/conversation/conversation.ts":{"bytes":10423,"imports":[{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/context/index.ts","kind":"import-statement","original":"../context"},{"path":"src/session/index.ts","kind":"import-statement","original":"../session"}],"format":"esm"},"src/conversation/index.ts":{"bytes":475,"imports":[{"path":"src/conversation/conversation.ts","kind":"import-statement","original":"./conversation"}],"format":"esm"},"src/extraction/extraction.ts":{"bytes":6822,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"format":"esm"},"raw-loader:./instructions.tpl?raw":{"bytes":1318,"imports":[]},"src/extraction/quotes.ts":{"bytes":7110,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"src/extraction/extraction-llm-function/extraction-llm-function.ts":{"bytes":8038,"imports":[{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"raw-loader:./instructions.tpl?raw","kind":"import-statement","original":"./instructions.tpl?raw"},{"path":"src/session/index.ts","kind":"import-statement","original":"../../session"},{"path":"src/extraction/extraction.ts","kind":"import-statement","original":"../extraction"},{"path":"src/extraction/quotes.ts","kind":"import-statement","original":"../quotes"}],"format":"esm"},"src/extraction/extraction-llm-function/index.ts":{"bytes":524,"imports":[{"path":"src/extraction/extraction-llm-function/extraction-llm-function.ts","kind":"import-statement","original":"./extraction-llm-function"}],"format":"esm"},"src/extraction/extraction-ner-function/named-entity-recognition.ts":{"bytes":10059,"imports":[{"path":"@xenova/transformers","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"src/extraction/extraction-ner-function/extraction-ner-function.ts":{"bytes":8897,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"src/extraction/extraction-ner-function/named-entity-recognition.ts","kind":"import-statement","original":"./named-entity-recognition"},{"path":"src/extraction/extraction.ts","kind":"import-statement","original":"../extraction"},{"path":"src/extraction/quotes.ts","kind":"import-statement","original":"../quotes"}],"format":"esm"},"src/extraction/extraction-ner-function/index.ts":{"bytes":652,"imports":[{"path":"src/extraction/extraction-ner-function/extraction-ner-function.ts","kind":"import-statement","original":"./extraction-ner-function"},{"path":"src/extraction/extraction-ner-function/named-entity-recognition.ts","kind":"import-statement","original":"./named-entity-recognition"}],"format":"esm"},"src/extraction/index.ts":{"bytes":803,"imports":[{"path":"src/extraction/extraction.ts","kind":"import-statement","original":"./extraction"},{"path":"src/extraction/extraction-llm-function/index.ts","kind":"import-statement","original":"./extraction-llm-function"},{"path":"src/extraction/extraction-ner-function/index.ts","kind":"import-statement","original":"./extraction-ner-function"},{"path":"src/extraction/quotes.ts","kind":"import-statement","original":"./quotes"}],"format":"esm"},"src/testing/exa-search-1748337321991.ts":{"bytes":75508,"imports":[],"format":"esm"},"src/testing/exa-search-1748337331526.ts":{"bytes":90578,"imports":[],"format":"esm"},"src/testing/exa-search-1748337344119.ts":{"bytes":69950,"imports":[],"format":"esm"},"src/testing/index.ts":{"bytes":1205,"imports":[{"path":"src/testing/exa-search-1748337321991.ts","kind":"import-statement","original":"./exa-search-1748337321991"},{"path":"src/testing/exa-search-1748337331526.ts","kind":"import-statement","original":"./exa-search-1748337331526"},{"path":"src/testing/exa-search-1748337344119.ts","kind":"import-statement","original":"./exa-search-1748337344119"}],"format":"esm"},"src/research/exa.ts":{"bytes":10690,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"exa-js","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/testing/index.ts","kind":"import-statement","original":"../testing"}],"format":"esm"},"src/research/graph.ts":{"bytes":34590,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-protocol","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"raw-loader:./instructions-research.tpl?raw":{"bytes":5065,"imports":[]},"src/research/research.ts":{"bytes":12714,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"src/research/exa.ts","kind":"import-statement","original":"./exa"},{"path":"src/research/graph.ts","kind":"import-statement","original":"./graph"},{"path":"raw-loader:./instructions-research.tpl?raw","kind":"import-statement","original":"./instructions-research.tpl?raw"},{"path":"src/session/index.ts","kind":"import-statement","original":"../session"}],"format":"esm"},"src/research/index.ts":{"bytes":619,"imports":[{"path":"src/research/exa.ts","kind":"import-statement","original":"./exa"},{"path":"src/research/research.ts","kind":"import-statement","original":"./research"},{"path":"src/research/graph.ts","kind":"import-statement","original":"./graph"}],"format":"esm"},"src/types.ts":{"bytes":845,"imports":[],"format":"esm"},"src/index.ts":{"bytes":1088,"imports":[{"path":"src/blueprint/index.ts","kind":"import-statement","original":"./blueprint"},{"path":"src/context/index.ts","kind":"import-statement","original":"./context"},{"path":"src/conversation/index.ts","kind":"import-statement","original":"./conversation"},{"path":"src/extraction/index.ts","kind":"import-statement","original":"./extraction"},{"path":"src/research/index.ts","kind":"import-statement","original":"./research"},{"path":"src/session/index.ts","kind":"import-statement","original":"./session"},{"path":"src/types.ts","kind":"import-statement","original":"./types"},{"path":"src/conversation/index.ts","kind":"import-statement","original":"./conversation"}],"format":"esm"}},"outputs":{"dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":208290},"dist/lib/browser/index.mjs":{"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@xenova/transformers","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"exa-js","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-protocol","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["AIServiecOverloadedError","AISession","Bindings","Blueprint","BlueprintRegistry","ContextBinder","ContextBinding","Conversation","ExtractionInput","ExtractionOutput","ReferencedQuotes","Subgraph","VersionPin","combineNerTokens","createArtifactElement","createExaTool","createExtractionSchema","createGraphWriterTool","createLocalSearchTool","createMockExaTool","createTokenGroups","extractFullEntities","extractionAnthropicFn","extractionNerFn","findQuotes","findRelatedSchema","getNer","getSanitizedSchemaName","insertReferences","processTranscriptMessage","researchFn","sanitizeObjects"],"entryPoint":"src/index.ts","inputs":{"src/blueprint/blueprint.ts":{"bytesInOutput":1892},"src/blueprint/index.ts":{"bytesInOutput":0},"src/blueprint/registry.ts":{"bytesInOutput":226},"src/index.ts":{"bytesInOutput":0},"src/context/binder.ts":{"bytesInOutput":2163},"src/context/binding.ts":{"bytesInOutput":544},"src/context/index.ts":{"bytesInOutput":0},"src/conversation/conversation.ts":{"bytesInOutput":2225},"src/session/session.ts":{"bytesInOutput":16339},"src/session/version-pin.ts":{"bytesInOutput":758},"src/session/index.ts":{"bytesInOutput":0},"src/conversation/index.ts":{"bytesInOutput":0},"src/extraction/extraction.ts":{"bytesInOutput":1403},"src/extraction/index.ts":{"bytesInOutput":0},"src/extraction/extraction-llm-function/extraction-llm-function.ts":{"bytesInOutput":1764},"raw-loader:./instructions.tpl?raw":{"bytesInOutput":1376},"src/extraction/quotes.ts":{"bytesInOutput":1687},"src/extraction/extraction-llm-function/index.ts":{"bytesInOutput":0},"src/extraction/extraction-ner-function/extraction-ner-function.ts":{"bytesInOutput":2640},"src/extraction/extraction-ner-function/named-entity-recognition.ts":{"bytesInOutput":2276},"src/extraction/extraction-ner-function/index.ts":{"bytesInOutput":0},"src/research/exa.ts":{"bytesInOutput":2537},"src/testing/exa-search-1748337321991.ts":{"bytesInOutput":31265},"src/testing/exa-search-1748337331526.ts":{"bytesInOutput":43952},"src/testing/exa-search-1748337344119.ts":{"bytesInOutput":28760},"src/testing/index.ts":{"bytesInOutput":133},"src/research/index.ts":{"bytesInOutput":0},"src/research/research.ts":{"bytesInOutput":3027},"src/research/graph.ts":{"bytesInOutput":8252},"raw-loader:./instructions-research.tpl?raw":{"bytesInOutput":5201},"src/types.ts":{"bytesInOutput":61}},"bytes":160251}}}
|
|
1
|
+
{"inputs":{"src/conversation/context.ts":{"bytes":20293,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"effect/Array","kind":"import-statement","external":true},{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Function","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/blueprints","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"src/session/artifact-diff.ts":{"bytes":2596,"imports":[{"path":"effect/Context","kind":"import-statement","external":true}],"format":"esm"},"src/session/observer.ts":{"bytes":5409,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Function","kind":"import-statement","external":true}],"format":"esm"},"src/errors.ts":{"bytes":1420,"imports":[{"path":"@dxos/errors","kind":"import-statement","external":true}],"format":"esm"},"src/session/format.ts":{"bytes":17119,"imports":[{"path":"effect/Array","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Function","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"@dxos/blueprints","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/errors.ts","kind":"import-statement","original":"../errors"},{"path":"src/session/artifact-diff.ts","kind":"import-statement","original":"./artifact-diff"}],"format":"esm"},"src/session/session.ts":{"bytes":23653,"imports":[{"path":"@effect/ai/LanguageModel","kind":"import-statement","external":true},{"path":"effect/Chunk","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Stream","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"src/session/format.ts","kind":"import-statement","original":"./format"},{"path":"src/session/observer.ts","kind":"import-statement","original":"./observer"},{"path":"@dxos/node-std/fs","kind":"require-call","external":true}],"format":"esm"},"src/session/toolkit.ts":{"bytes":4536,"imports":[{"path":"@effect/ai/Toolkit","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"src/session/version-pin.ts":{"bytes":4216,"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true}],"format":"esm"},"src/session/index.ts":{"bytes":832,"imports":[{"path":"src/session/artifact-diff.ts","kind":"import-statement","original":"./artifact-diff"},{"path":"src/session/observer.ts","kind":"import-statement","original":"./observer"},{"path":"src/session/session.ts","kind":"import-statement","original":"./session"},{"path":"src/session/toolkit.ts","kind":"import-statement","original":"./toolkit"},{"path":"src/session/version-pin.ts","kind":"import-statement","original":"./version-pin"}],"format":"esm"},"src/conversation/conversation.ts":{"bytes":12949,"imports":[{"path":"effect/Array","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"src/session/index.ts","kind":"import-statement","original":"../session"},{"path":"src/conversation/context.ts","kind":"import-statement","original":"./context"}],"format":"esm"},"src/conversation/index.ts":{"bytes":562,"imports":[{"path":"src/conversation/context.ts","kind":"import-statement","original":"./context"},{"path":"src/conversation/conversation.ts","kind":"import-statement","original":"./conversation"}],"format":"esm"},"src/diff.ts":{"bytes":8784,"imports":[{"path":"@automerge/automerge","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"src/execution-graph.ts":{"bytes":50143,"imports":[{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"src/functions/services.ts":{"bytes":20028,"imports":[{"path":"@effect/ai/Tool","kind":"import-statement","external":true},{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"effect/Record","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true}],"format":"esm"},"src/functions/index.ts":{"bytes":460,"imports":[{"path":"src/functions/services.ts","kind":"import-statement","original":"./services"}],"format":"esm"},"raw-loader:/__w/dxos/dxos/packages/core/assistant/src/templates/format.tpl?raw":{"bytes":1915,"imports":[]},"raw-loader:/__w/dxos/dxos/packages/core/assistant/src/templates/system.tpl?raw":{"bytes":3351,"imports":[]},"src/templates/system.ts":{"bytes":3127,"imports":[{"path":"lodash.defaultsdeep","kind":"import-statement","external":true},{"path":"@dxos/blueprints","kind":"import-statement","external":true},{"path":"raw-loader:/__w/dxos/dxos/packages/core/assistant/src/templates/format.tpl?raw","kind":"import-statement","original":"./format.tpl?raw"},{"path":"raw-loader:/__w/dxos/dxos/packages/core/assistant/src/templates/system.tpl?raw","kind":"import-statement","original":"./system.tpl?raw"}],"format":"esm"},"src/templates/index.ts":{"bytes":458,"imports":[{"path":"src/templates/system.ts","kind":"import-statement","original":"./system"}],"format":"esm"},"src/types/artifact.ts":{"bytes":6896,"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"src/types/index.ts":{"bytes":456,"imports":[{"path":"src/types/artifact.ts","kind":"import-statement","original":"./artifact"}],"format":"esm"},"src/index.ts":{"bytes":1081,"imports":[{"path":"src/conversation/index.ts","kind":"import-statement","original":"./conversation"},{"path":"src/diff.ts","kind":"import-statement","original":"./diff"},{"path":"src/errors.ts","kind":"import-statement","original":"./errors"},{"path":"src/execution-graph.ts","kind":"import-statement","original":"./execution-graph"},{"path":"src/functions/index.ts","kind":"import-statement","original":"./functions"},{"path":"src/session/index.ts","kind":"import-statement","original":"./session"},{"path":"src/templates/index.ts","kind":"import-statement","original":"./templates"},{"path":"src/types/index.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"src/extraction/extraction.ts":{"bytes":6844,"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"format":"esm"},"src/extraction/quotes.ts":{"bytes":7132,"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"raw-loader:/__w/dxos/dxos/packages/core/assistant/src/extraction/extraction-llm-function/instructions.tpl?raw":{"bytes":1318,"imports":[]},"src/extraction/extraction-llm-function/extraction-llm-function.ts":{"bytes":8733,"imports":[{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"src/session/index.ts","kind":"import-statement","original":"../../session"},{"path":"src/extraction/extraction.ts","kind":"import-statement","original":"../extraction"},{"path":"src/extraction/quotes.ts","kind":"import-statement","original":"../quotes"},{"path":"raw-loader:/__w/dxos/dxos/packages/core/assistant/src/extraction/extraction-llm-function/instructions.tpl?raw","kind":"import-statement","original":"./instructions.tpl?raw"}],"format":"esm"},"src/extraction/extraction-llm-function/index.ts":{"bytes":524,"imports":[{"path":"src/extraction/extraction-llm-function/extraction-llm-function.ts","kind":"import-statement","original":"./extraction-llm-function"}],"format":"esm"},"src/extraction/extraction-ner-function/named-entity-recognition.ts":{"bytes":10067,"imports":[{"path":"@xenova/transformers","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"src/extraction/extraction-ner-function/extraction-ner-function.ts":{"bytes":9310,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"src/extraction/extraction.ts","kind":"import-statement","original":"../extraction"},{"path":"src/extraction/quotes.ts","kind":"import-statement","original":"../quotes"},{"path":"src/extraction/extraction-ner-function/named-entity-recognition.ts","kind":"dynamic-import","original":"./named-entity-recognition"}],"format":"esm"},"src/extraction/extraction-ner-function/index.ts":{"bytes":652,"imports":[{"path":"src/extraction/extraction-ner-function/extraction-ner-function.ts","kind":"import-statement","original":"./extraction-ner-function"},{"path":"src/extraction/extraction-ner-function/named-entity-recognition.ts","kind":"import-statement","original":"./named-entity-recognition"}],"format":"esm"},"src/extraction/index.ts":{"bytes":803,"imports":[{"path":"src/extraction/extraction.ts","kind":"import-statement","original":"./extraction"},{"path":"src/extraction/extraction-llm-function/index.ts","kind":"import-statement","original":"./extraction-llm-function"},{"path":"src/extraction/extraction-ner-function/index.ts","kind":"import-statement","original":"./extraction-ner-function"},{"path":"src/extraction/quotes.ts","kind":"import-statement","original":"./quotes"}],"format":"esm"}},"outputs":{"dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":66383},"dist/lib/browser/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-4VIJTKPM.mjs","kind":"import-statement"},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"effect/Array","kind":"import-statement","external":true},{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Function","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/blueprints","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"effect/Array","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@automerge/automerge","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@effect/ai/Tool","kind":"import-statement","external":true},{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"effect/Record","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"lodash.defaultsdeep","kind":"import-statement","external":true},{"path":"@dxos/blueprints","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["AiAssistantError","AiContextBinder","AiContextService","AiConversation","AiModelError","AiSession","ArtifactDiffResolver","ArtifactId","Bindings","ContextBinding","ExecutionGraph","GenerationObserver","VersionPin","applyDiffs","computeDiffsWithCursors","createArtifactElement","createSystemPrompt","createToolkit","makeToolExecutionServiceFromFunctions","makeToolResolverFromFunctions","reduceDiffs","templates"],"entryPoint":"src/index.ts","inputs":{"src/conversation/context.ts":{"bytesInOutput":4967},"src/conversation/index.ts":{"bytesInOutput":0},"src/conversation/conversation.ts":{"bytesInOutput":2852},"src/index.ts":{"bytesInOutput":0},"src/diff.ts":{"bytesInOutput":1899},"src/execution-graph.ts":{"bytesInOutput":11774},"src/functions/services.ts":{"bytesInOutput":4296},"src/functions/index.ts":{"bytesInOutput":0},"src/templates/system.ts":{"bytesInOutput":540},"raw-loader:/__w/dxos/dxos/packages/core/assistant/src/templates/format.tpl?raw":{"bytesInOutput":2000},"raw-loader:/__w/dxos/dxos/packages/core/assistant/src/templates/system.tpl?raw":{"bytesInOutput":3424},"src/templates/index.ts":{"bytesInOutput":0},"src/types/artifact.ts":{"bytesInOutput":1332},"src/types/index.ts":{"bytesInOutput":0}},"bytes":34120},"dist/lib/browser/extraction/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":17181},"dist/lib/browser/extraction/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-4VIJTKPM.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-UB26N5UF.mjs","kind":"import-statement"},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"dist/lib/browser/named-entity-recognition-QPYHML66.mjs","kind":"dynamic-import"}],"exports":["ExtractionInput","ExtractionOutput","ReferencedQuotes","combineNerTokens","createTokenGroups","extractFullEntities","extractionAnthropicFunction","extractionNerFunction","findQuotes","getNer","insertReferences","processTranscriptMessage"],"entryPoint":"src/extraction/index.ts","inputs":{"src/extraction/extraction.ts":{"bytesInOutput":1380},"src/extraction/index.ts":{"bytesInOutput":0},"src/extraction/extraction-llm-function/extraction-llm-function.ts":{"bytesInOutput":1852},"src/extraction/quotes.ts":{"bytesInOutput":1673},"raw-loader:/__w/dxos/dxos/packages/core/assistant/src/extraction/extraction-llm-function/instructions.tpl?raw":{"bytesInOutput":1376},"src/extraction/extraction-llm-function/index.ts":{"bytesInOutput":0},"src/extraction/extraction-ner-function/extraction-ner-function.ts":{"bytesInOutput":2742},"src/extraction/extraction-ner-function/index.ts":{"bytesInOutput":0}},"bytes":9873},"dist/lib/browser/chunk-4VIJTKPM.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":29170},"dist/lib/browser/chunk-4VIJTKPM.mjs":{"imports":[{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Function","kind":"import-statement","external":true},{"path":"@dxos/errors","kind":"import-statement","external":true},{"path":"@effect/ai/LanguageModel","kind":"import-statement","external":true},{"path":"effect/Chunk","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Stream","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"effect/Array","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Function","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"@dxos/blueprints","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@effect/ai/Toolkit","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true}],"exports":["AiAssistantError","AiModelError","AiSession","ArtifactDiffResolver","GenerationObserver","VersionPin","createToolkit"],"inputs":{"src/session/artifact-diff.ts":{"bytesInOutput":143},"src/session/observer.ts":{"bytesInOutput":917},"src/errors.ts":{"bytesInOutput":236},"src/session/session.ts":{"bytesInOutput":4256},"src/session/format.ts":{"bytesInOutput":3923},"src/session/toolkit.ts":{"bytesInOutput":744},"src/session/version-pin.ts":{"bytesInOutput":741},"src/session/index.ts":{"bytesInOutput":0}},"bytes":11358},"dist/lib/browser/named-entity-recognition-QPYHML66.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/browser/named-entity-recognition-QPYHML66.mjs":{"imports":[{"path":"dist/lib/browser/chunk-UB26N5UF.mjs","kind":"import-statement"}],"exports":["combineNerTokens","createTokenGroups","extractFullEntities","getNer"],"entryPoint":"src/extraction/extraction-ner-function/named-entity-recognition.ts","inputs":{},"bytes":261},"dist/lib/browser/chunk-UB26N5UF.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5245},"dist/lib/browser/chunk-UB26N5UF.mjs":{"imports":[{"path":"@xenova/transformers","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["combineNerTokens","createTokenGroups","extractFullEntities","getNer"],"inputs":{"src/extraction/extraction-ner-function/named-entity-recognition.ts":{"bytesInOutput":2265}},"bytes":2465}}}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import {
|
|
2
|
+
combineNerTokens,
|
|
3
|
+
createTokenGroups,
|
|
4
|
+
extractFullEntities,
|
|
5
|
+
getNer
|
|
6
|
+
} from "./chunk-UB26N5UF.mjs";
|
|
7
|
+
export {
|
|
8
|
+
combineNerTokens,
|
|
9
|
+
createTokenGroups,
|
|
10
|
+
extractFullEntities,
|
|
11
|
+
getNer
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=named-entity-recognition-QPYHML66.mjs.map
|
|
@@ -0,0 +1,356 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
|
|
3
|
+
// src/session/artifact-diff.ts
|
|
4
|
+
import * as Context from "effect/Context";
|
|
5
|
+
var ArtifactDiffResolver = class extends Context.Tag("@dxos/assistant/ArtifactDiffResolver")() {
|
|
6
|
+
};
|
|
7
|
+
|
|
8
|
+
// src/session/observer.ts
|
|
9
|
+
import * as Effect from "effect/Effect";
|
|
10
|
+
import * as Function from "effect/Function";
|
|
11
|
+
var GenerationObserver = Object.freeze({
|
|
12
|
+
make: ({ onBegin = Function.constant(Effect.void), onPart = Function.constant(Effect.void), onBlock = Function.constant(Effect.void), onEnd = Function.constant(Effect.void), onMessage = Function.constant(Effect.void) } = {}) => ({
|
|
13
|
+
onBegin,
|
|
14
|
+
onPart,
|
|
15
|
+
onBlock,
|
|
16
|
+
onEnd,
|
|
17
|
+
onMessage
|
|
18
|
+
}),
|
|
19
|
+
noop: () => GenerationObserver.make(),
|
|
20
|
+
/**
|
|
21
|
+
* Debug printer to be used in unit-tests and browser devtools.
|
|
22
|
+
*/
|
|
23
|
+
fromPrinter: (printer) => GenerationObserver.make({
|
|
24
|
+
onBlock: (block) => Effect.sync(() => {
|
|
25
|
+
if (block.pending) {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
printer.printContentBlock(block);
|
|
29
|
+
}),
|
|
30
|
+
onMessage: (message) => Effect.sync(() => {
|
|
31
|
+
if (message.sender.role === "assistant") {
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
printer.printMessage(message);
|
|
35
|
+
})
|
|
36
|
+
})
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
// src/errors.ts
|
|
40
|
+
import { BaseError } from "@dxos/errors";
|
|
41
|
+
var AiModelError = class extends BaseError.extend("AI_MODEL_ERROR", "AI model error") {
|
|
42
|
+
};
|
|
43
|
+
var AiAssistantError = class extends BaseError.extend("AI_ASSISTANT_ERROR", "AI assistant error") {
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
// src/session/session.ts
|
|
47
|
+
import * as LanguageModel from "@effect/ai/LanguageModel";
|
|
48
|
+
import * as Chunk from "effect/Chunk";
|
|
49
|
+
import * as Effect3 from "effect/Effect";
|
|
50
|
+
import * as Stream from "effect/Stream";
|
|
51
|
+
import { AiParser, AiPreprocessor, callTool, getToolCalls } from "@dxos/ai";
|
|
52
|
+
import { todo } from "@dxos/debug";
|
|
53
|
+
import { Obj as Obj2 } from "@dxos/echo";
|
|
54
|
+
import { TracingService } from "@dxos/functions";
|
|
55
|
+
import { log as log2 } from "@dxos/log";
|
|
56
|
+
import { DataType as DataType2 } from "@dxos/schema";
|
|
57
|
+
|
|
58
|
+
// src/session/format.ts
|
|
59
|
+
import * as Array from "effect/Array";
|
|
60
|
+
import * as Effect2 from "effect/Effect";
|
|
61
|
+
import * as Function2 from "effect/Function";
|
|
62
|
+
import * as Option from "effect/Option";
|
|
63
|
+
import { Template } from "@dxos/blueprints";
|
|
64
|
+
import { Obj } from "@dxos/echo";
|
|
65
|
+
import { ObjectVersion } from "@dxos/echo-db";
|
|
66
|
+
import { DatabaseService } from "@dxos/functions";
|
|
67
|
+
import { log } from "@dxos/log";
|
|
68
|
+
import { DataType } from "@dxos/schema";
|
|
69
|
+
import { trim } from "@dxos/util";
|
|
70
|
+
var __dxlog_file = "/__w/dxos/dxos/packages/core/assistant/src/session/format.ts";
|
|
71
|
+
var formatSystemPrompt = ({ system, blueprints = [], objects = [] }) => Effect2.gen(function* () {
|
|
72
|
+
const blueprintDefs = yield* Function2.pipe(blueprints, Effect2.forEach((blueprint) => Effect2.succeed(blueprint.instructions)), Effect2.flatMap(Effect2.forEach((template) => DatabaseService.loadOption(template.source))), Effect2.map(Array.filter(Option.isSome)), Effect2.map(Array.map((template) => trim`
|
|
73
|
+
<blueprint>
|
|
74
|
+
${Template.process(template.value.content)}
|
|
75
|
+
</blueprint>
|
|
76
|
+
`)), Effect2.map((blueprints2) => blueprints2.length > 0 ? [
|
|
77
|
+
"## Blueprints Definitions",
|
|
78
|
+
...blueprints2
|
|
79
|
+
].join("\n\n") : void 0));
|
|
80
|
+
const objectDefs = yield* Function2.pipe(objects, Effect2.forEach((object) => Effect2.succeed(trim`
|
|
81
|
+
<object>
|
|
82
|
+
<dxn>${Obj.getDXN(object)}</dxn>
|
|
83
|
+
<typename>${Obj.getTypename(object)}</typename>
|
|
84
|
+
</object>
|
|
85
|
+
`)), Effect2.map((objects2) => objects2.length > 0 ? [
|
|
86
|
+
"## Context Objects",
|
|
87
|
+
...objects2
|
|
88
|
+
].join("\n\n") : void 0));
|
|
89
|
+
return yield* Function2.pipe(Effect2.succeed([
|
|
90
|
+
system,
|
|
91
|
+
blueprintDefs,
|
|
92
|
+
objectDefs
|
|
93
|
+
].filter((def) => def !== void 0)), Effect2.map((parts) => parts.join("\n\n")));
|
|
94
|
+
});
|
|
95
|
+
var formatUserPrompt = ({ prompt, history = [] }) => Effect2.gen(function* () {
|
|
96
|
+
const blocks = [];
|
|
97
|
+
const artifactDiffResolver = yield* Effect2.serviceOption(ArtifactDiffResolver);
|
|
98
|
+
if (Option.isSome(artifactDiffResolver)) {
|
|
99
|
+
const versions = gatherObjectVersions(history);
|
|
100
|
+
const artifactDiff = yield* Effect2.tryPromise({
|
|
101
|
+
try: () => artifactDiffResolver.value.resolve([
|
|
102
|
+
...versions.entries()
|
|
103
|
+
].map(([id, version]) => ({
|
|
104
|
+
id,
|
|
105
|
+
lastVersion: version
|
|
106
|
+
}))),
|
|
107
|
+
catch: AiAssistantError.wrap({
|
|
108
|
+
message: "Artifact diff resolution error"
|
|
109
|
+
})
|
|
110
|
+
});
|
|
111
|
+
log("version", {
|
|
112
|
+
artifactDiff,
|
|
113
|
+
versions
|
|
114
|
+
}, {
|
|
115
|
+
F: __dxlog_file,
|
|
116
|
+
L: 93,
|
|
117
|
+
S: this,
|
|
118
|
+
C: (f, a) => f(...a)
|
|
119
|
+
});
|
|
120
|
+
for (const [id, { version }] of [
|
|
121
|
+
...artifactDiff.entries()
|
|
122
|
+
]) {
|
|
123
|
+
if (ObjectVersion.equals(version, versions.get(id))) {
|
|
124
|
+
artifactDiff.delete(id);
|
|
125
|
+
continue;
|
|
126
|
+
}
|
|
127
|
+
blocks.push({
|
|
128
|
+
_tag: "anchor",
|
|
129
|
+
objectId: id,
|
|
130
|
+
version
|
|
131
|
+
});
|
|
132
|
+
}
|
|
133
|
+
if (artifactDiff.size > 0) {
|
|
134
|
+
blocks.push(createArtifactUpdateBlock(artifactDiff));
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
return Obj.make(DataType.Message, {
|
|
138
|
+
created: (/* @__PURE__ */ new Date()).toISOString(),
|
|
139
|
+
sender: {
|
|
140
|
+
role: "user"
|
|
141
|
+
},
|
|
142
|
+
blocks: [
|
|
143
|
+
...blocks,
|
|
144
|
+
{
|
|
145
|
+
_tag: "text",
|
|
146
|
+
text: prompt
|
|
147
|
+
}
|
|
148
|
+
]
|
|
149
|
+
});
|
|
150
|
+
});
|
|
151
|
+
var gatherObjectVersions = (messages) => {
|
|
152
|
+
const artifactIds = /* @__PURE__ */ new Map();
|
|
153
|
+
for (const message of messages) {
|
|
154
|
+
for (const block of message.blocks) {
|
|
155
|
+
if (block._tag === "anchor") {
|
|
156
|
+
artifactIds.set(block.objectId, block.version);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
return artifactIds;
|
|
161
|
+
};
|
|
162
|
+
var createArtifactUpdateBlock = (artifactDiff) => {
|
|
163
|
+
return {
|
|
164
|
+
_tag: "text",
|
|
165
|
+
// TODO(dmaretskyi): Does this need to be a special content-block?
|
|
166
|
+
disposition: "artifact-update",
|
|
167
|
+
text: trim`
|
|
168
|
+
The following artifacts have been updated since the last message:
|
|
169
|
+
${[
|
|
170
|
+
...artifactDiff.entries()
|
|
171
|
+
].map(([id, { diff }]) => `<changed-artifact id="${id}">${diff ? `
|
|
172
|
+
${diff}` : ""}</changed-artifact>`).join("\n")}
|
|
173
|
+
`
|
|
174
|
+
};
|
|
175
|
+
};
|
|
176
|
+
|
|
177
|
+
// src/session/session.ts
|
|
178
|
+
var __dxlog_file2 = "/__w/dxos/dxos/packages/core/assistant/src/session/session.ts";
|
|
179
|
+
var AiSession = class {
|
|
180
|
+
_options;
|
|
181
|
+
/** Prevents concurrent execution of session. */
|
|
182
|
+
_semaphore = Effect3.runSync(Effect3.makeSemaphore(1));
|
|
183
|
+
/** Message history from queue. */
|
|
184
|
+
// TODO(burdon): Evolve into supporting a git-like graph of messages.
|
|
185
|
+
_history = [];
|
|
186
|
+
/** Pending messages for this session (incl. the current prompt). */
|
|
187
|
+
_pending = [];
|
|
188
|
+
constructor(_options = {}) {
|
|
189
|
+
this._options = _options;
|
|
190
|
+
}
|
|
191
|
+
run = ({ prompt, system: systemTemplate, history = [], objects = [], blueprints = [], toolkit, observer = GenerationObserver.noop() }) => Effect3.gen(this, function* () {
|
|
192
|
+
this._history = [
|
|
193
|
+
...history
|
|
194
|
+
];
|
|
195
|
+
this._pending = [];
|
|
196
|
+
const pending = this._pending;
|
|
197
|
+
const submitMessage = Effect3.fnUntraced(function* (message) {
|
|
198
|
+
pending.push(message);
|
|
199
|
+
yield* observer.onMessage(message);
|
|
200
|
+
yield* TracingService.emitConverationMessage(message);
|
|
201
|
+
return message;
|
|
202
|
+
});
|
|
203
|
+
const promptMessage = yield* submitMessage(yield* formatUserPrompt({
|
|
204
|
+
prompt,
|
|
205
|
+
history
|
|
206
|
+
}));
|
|
207
|
+
const system = yield* formatSystemPrompt({
|
|
208
|
+
system: systemTemplate,
|
|
209
|
+
blueprints,
|
|
210
|
+
objects
|
|
211
|
+
});
|
|
212
|
+
do {
|
|
213
|
+
log2("request", {
|
|
214
|
+
prompt: promptMessage,
|
|
215
|
+
system: {
|
|
216
|
+
snippet: createSnippet(system),
|
|
217
|
+
length: system.length
|
|
218
|
+
},
|
|
219
|
+
pending: this._pending.length,
|
|
220
|
+
history: this._history.length,
|
|
221
|
+
objects: objects?.length ?? 0
|
|
222
|
+
}, {
|
|
223
|
+
F: __dxlog_file2,
|
|
224
|
+
L: 110,
|
|
225
|
+
S: this,
|
|
226
|
+
C: (f, a) => f(...a)
|
|
227
|
+
});
|
|
228
|
+
const prompt2 = yield* AiPreprocessor.preprocessPrompt([
|
|
229
|
+
...this._history,
|
|
230
|
+
...this._pending
|
|
231
|
+
], {
|
|
232
|
+
system
|
|
233
|
+
});
|
|
234
|
+
const blocks = yield* LanguageModel.streamText({
|
|
235
|
+
prompt: prompt2,
|
|
236
|
+
toolkit,
|
|
237
|
+
disableToolCallResolution: true
|
|
238
|
+
}).pipe(
|
|
239
|
+
// TOOD(dmaretskyi): Error mapping.
|
|
240
|
+
AiParser.parseResponse({
|
|
241
|
+
onBegin: () => observer.onBegin(),
|
|
242
|
+
onBlock: (block) => observer.onBlock(block),
|
|
243
|
+
onPart: (part) => observer.onPart(part),
|
|
244
|
+
onEnd: (summary) => observer.onEnd(summary)
|
|
245
|
+
}),
|
|
246
|
+
Stream.runCollect,
|
|
247
|
+
Effect3.map(Chunk.toArray)
|
|
248
|
+
);
|
|
249
|
+
const response = yield* submitMessage(Obj2.make(DataType2.Message, {
|
|
250
|
+
created: (/* @__PURE__ */ new Date()).toISOString(),
|
|
251
|
+
sender: {
|
|
252
|
+
role: "assistant"
|
|
253
|
+
},
|
|
254
|
+
blocks
|
|
255
|
+
}));
|
|
256
|
+
const toolCalls = getToolCalls(response);
|
|
257
|
+
if (toolCalls.length === 0) {
|
|
258
|
+
break;
|
|
259
|
+
} else if (!toolkit) {
|
|
260
|
+
throw new Error("No toolkit provided");
|
|
261
|
+
}
|
|
262
|
+
const toolResults = yield* Effect3.forEach(toolCalls, (toolCall) => {
|
|
263
|
+
return callTool(toolkit, toolCall).pipe(Effect3.provide(TracingService.layerSubframe((context) => ({
|
|
264
|
+
...context,
|
|
265
|
+
parentMessage: response.id,
|
|
266
|
+
toolCallId: toolCall.toolCallId
|
|
267
|
+
}))));
|
|
268
|
+
});
|
|
269
|
+
yield* submitMessage(Obj2.make(DataType2.Message, {
|
|
270
|
+
created: (/* @__PURE__ */ new Date()).toISOString(),
|
|
271
|
+
sender: {
|
|
272
|
+
role: "tool"
|
|
273
|
+
},
|
|
274
|
+
blocks: toolResults
|
|
275
|
+
}));
|
|
276
|
+
} while (true);
|
|
277
|
+
log2("done", {
|
|
278
|
+
pending: this._pending.length
|
|
279
|
+
}, {
|
|
280
|
+
F: __dxlog_file2,
|
|
281
|
+
L: 181,
|
|
282
|
+
S: this,
|
|
283
|
+
C: (f, a) => f(...a)
|
|
284
|
+
});
|
|
285
|
+
return this._pending;
|
|
286
|
+
}).pipe(this._semaphore.withPermits(1), Effect3.withSpan("AiSession.run"));
|
|
287
|
+
/**
|
|
288
|
+
* @deprecated
|
|
289
|
+
*/
|
|
290
|
+
// TODO(burdon): Implement or remove.
|
|
291
|
+
async runStructured(_schema, _options) {
|
|
292
|
+
return todo();
|
|
293
|
+
}
|
|
294
|
+
};
|
|
295
|
+
var createSnippet = (text, len = 32) => text.length <= len * 2 ? text : [
|
|
296
|
+
text.slice(0, len),
|
|
297
|
+
"...",
|
|
298
|
+
text.slice(-len)
|
|
299
|
+
].join("");
|
|
300
|
+
|
|
301
|
+
// src/session/toolkit.ts
|
|
302
|
+
import * as Toolkit from "@effect/ai/Toolkit";
|
|
303
|
+
import * as Effect4 from "effect/Effect";
|
|
304
|
+
import { ToolExecutionService, ToolResolverService } from "@dxos/ai";
|
|
305
|
+
import { isTruthy } from "@dxos/util";
|
|
306
|
+
var createToolkit = ({ toolkit: toolkitParam, toolIds = [], blueprints = [] }) => Effect4.gen(function* () {
|
|
307
|
+
const blueprintToolkit = yield* ToolResolverService.resolveToolkit([
|
|
308
|
+
...blueprints.flatMap(({ tools }) => tools),
|
|
309
|
+
...toolIds
|
|
310
|
+
]);
|
|
311
|
+
const blueprintToolkitHandler = yield* blueprintToolkit.toContext(ToolExecutionService.handlersFor(blueprintToolkit));
|
|
312
|
+
const toolkit = Toolkit.merge(...[
|
|
313
|
+
toolkitParam,
|
|
314
|
+
blueprintToolkit
|
|
315
|
+
].filter(isTruthy));
|
|
316
|
+
return yield* toolkit.pipe(Effect4.provide(blueprintToolkitHandler));
|
|
317
|
+
});
|
|
318
|
+
|
|
319
|
+
// src/session/version-pin.ts
|
|
320
|
+
import * as Schema from "effect/Schema";
|
|
321
|
+
import { ObjectId } from "@dxos/echo/internal";
|
|
322
|
+
import { getVersion } from "@dxos/echo-db";
|
|
323
|
+
var ObjectVersionSchema = Schema.Unknown;
|
|
324
|
+
var VersionPinSchema = Schema.Struct({
|
|
325
|
+
// TODO(dmaretskyi): Use Ref when those support encoding.
|
|
326
|
+
objectId: ObjectId,
|
|
327
|
+
// TODO(dmaretskyi): Could be opaque.
|
|
328
|
+
version: ObjectVersionSchema
|
|
329
|
+
});
|
|
330
|
+
var VersionPin = class extends VersionPinSchema {
|
|
331
|
+
static DISPOSITION = "version-pin";
|
|
332
|
+
static fromObject(object) {
|
|
333
|
+
return VersionPin.make({
|
|
334
|
+
objectId: object.id,
|
|
335
|
+
version: getVersion(object)
|
|
336
|
+
});
|
|
337
|
+
}
|
|
338
|
+
static createBlock(pin) {
|
|
339
|
+
return {
|
|
340
|
+
_tag: "json",
|
|
341
|
+
disposition: VersionPin.DISPOSITION,
|
|
342
|
+
data: JSON.stringify(pin)
|
|
343
|
+
};
|
|
344
|
+
}
|
|
345
|
+
};
|
|
346
|
+
|
|
347
|
+
export {
|
|
348
|
+
ArtifactDiffResolver,
|
|
349
|
+
GenerationObserver,
|
|
350
|
+
AiModelError,
|
|
351
|
+
AiAssistantError,
|
|
352
|
+
AiSession,
|
|
353
|
+
createToolkit,
|
|
354
|
+
VersionPin
|
|
355
|
+
};
|
|
356
|
+
//# sourceMappingURL=chunk-AUUC7II4.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/session/artifact-diff.ts", "../../../src/session/observer.ts", "../../../src/errors.ts", "../../../src/session/session.ts", "../../../src/session/format.ts", "../../../src/session/toolkit.ts", "../../../src/session/version-pin.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Context from 'effect/Context';\n\nimport { type ObjectId } from '@dxos/echo/internal';\nimport { type ObjectVersion } from '@dxos/echo-db';\n\n/**\n * Resolves artifact ids to their versions.\n * Used to give the model a sense of the changes to the artifacts made by users during the conversation.\n * The artifacts versions are pinned in the history, and whenever the artifact changes in-between assistant's steps,\n * a diff is inserted into the conversation.\n *\n * Can be optionally provided to the session run call.\n */\n// TODO(dmaretskyi): Convert to Context.Reference\nexport class ArtifactDiffResolver extends Context.Tag('@dxos/assistant/ArtifactDiffResolver')<\n ArtifactDiffResolver,\n ArtifactDiffResolver.Service\n>() {}\n\nexport namespace ArtifactDiffResolver {\n export type Service = {\n resolve: (\n artifacts: {\n id: ObjectId;\n lastVersion: ObjectVersion;\n }[],\n ) => Promise<\n Map<\n ObjectId,\n {\n version: ObjectVersion;\n diff?: string;\n }\n >\n >;\n };\n}\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport * as Function from 'effect/Function';\n\nimport { type AiParser, type ConsolePrinter } from '@dxos/ai';\nimport { type DataType } from '@dxos/schema';\n\n/**\n * Live observer of the generation process.\n */\nexport interface GenerationObserver extends AiParser.ParseResponseCallbacks {\n /**\n * Complete messages fired during the session, both from the model and from the user.\n * This message will contain all message blocks emitted through the `onBlock` callback.\n */\n onMessage: (message: DataType.Message) => Effect.Effect<void>;\n}\n\nexport const GenerationObserver = Object.freeze({\n make: ({\n onBegin = Function.constant(Effect.void),\n onPart = Function.constant(Effect.void),\n onBlock = Function.constant(Effect.void),\n onEnd = Function.constant(Effect.void),\n onMessage = Function.constant(Effect.void),\n }: Partial<GenerationObserver> = {}): GenerationObserver => ({\n onBegin,\n onPart,\n onBlock,\n onEnd,\n onMessage,\n }),\n\n noop: () => GenerationObserver.make(),\n\n /**\n * Debug printer to be used in unit-tests and browser devtools.\n */\n fromPrinter: (printer: ConsolePrinter) =>\n GenerationObserver.make({\n onBlock: (block) =>\n Effect.sync(() => {\n if (block.pending) {\n return; // Only prints full blocks (better for unit-tests and browser devtools).\n }\n printer.printContentBlock(block);\n }),\n onMessage: (message) =>\n Effect.sync(() => {\n if (message.sender.role === 'assistant') {\n return; // Skip assistant messages since they are printed in the `onBlock` callback.\n }\n printer.printMessage(message);\n }),\n }),\n});\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { BaseError } from '@dxos/errors';\n\n/**\n * Generic error from AI model.\n */\nexport class AiModelError extends BaseError.extend('AI_MODEL_ERROR', 'AI model error') {}\n\n/**\n * Generic error for AI agent execution.\n */\nexport class AiAssistantError extends BaseError.extend('AI_ASSISTANT_ERROR', 'AI assistant error') {}\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport type * as AiError from '@effect/ai/AiError';\nimport * as LanguageModel from '@effect/ai/LanguageModel';\nimport type * as Tool from '@effect/ai/Tool';\nimport type * as Toolkit from '@effect/ai/Toolkit';\nimport * as Chunk from 'effect/Chunk';\nimport * as Effect from 'effect/Effect';\nimport type * as Schema from 'effect/Schema';\nimport * as Stream from 'effect/Stream';\n\nimport {\n AiParser,\n AiPreprocessor,\n type AiToolNotFoundError,\n type PromptPreprocessingError,\n type ToolExecutionService,\n type ToolResolverService,\n callTool,\n getToolCalls,\n} from '@dxos/ai';\nimport { type Blueprint } from '@dxos/blueprints';\nimport { todo } from '@dxos/debug';\nimport { Obj } from '@dxos/echo';\nimport { TracingService } from '@dxos/functions';\nimport { log } from '@dxos/log';\nimport { DataType } from '@dxos/schema';\n\nimport { type AiAssistantError } from '../errors';\n\nimport { formatSystemPrompt, formatUserPrompt } from './format';\nimport { GenerationObserver } from './observer';\n\nexport type AiSessionRunError = AiError.AiError | PromptPreprocessingError | AiToolNotFoundError | AiAssistantError;\n\nexport type AiSessionRunRequirements =\n | LanguageModel.LanguageModel\n | ToolExecutionService\n | ToolResolverService\n | TracingService;\n\nexport type AiSessionRunParams<Tools extends Record<string, Tool.Any>> = {\n prompt: string;\n // TODO(wittjosiah): Rename to systemPrompt.\n system?: string;\n history?: DataType.Message[];\n objects?: Obj.Any[];\n blueprints?: Blueprint.Blueprint[];\n toolkit?: Toolkit.WithHandler<Tools>;\n observer?: GenerationObserver;\n};\n\nexport type AiSessionOptions = {};\n\n/**\n * Contains message history, tools, current context.\n * Current context means the state of the app, time of day, and other contextual information.\n * It makes requests to the model, its a state machine.\n * It keeps track of the current goal.\n * It manages the context window.\n * Tracks the success criteria of reaching the goal, exposing metrics (stretch).\n * Could be run locally in the app or remotely.\n * Could be personal or shared.\n */\nexport class AiSession {\n /** Prevents concurrent execution of session. */\n private readonly _semaphore = Effect.runSync(Effect.makeSemaphore(1));\n\n /** Message history from queue. */\n // TODO(burdon): Evolve into supporting a git-like graph of messages.\n private _history: DataType.Message[] = [];\n\n /** Pending messages for this session (incl. the current prompt). */\n private _pending: DataType.Message[] = [];\n\n constructor(private readonly _options: AiSessionOptions = {}) {}\n\n run = <Tools extends Record<string, Tool.Any>>({\n prompt,\n system: systemTemplate,\n history = [],\n objects = [],\n blueprints = [],\n toolkit,\n observer = GenerationObserver.noop(),\n }: AiSessionRunParams<Tools>): Effect.Effect<DataType.Message[], AiSessionRunError, AiSessionRunRequirements> =>\n Effect.gen(this, function* () {\n this._history = [...history];\n this._pending = [];\n const pending = this._pending;\n\n const submitMessage = Effect.fnUntraced(function* (message: DataType.Message) {\n pending.push(message);\n yield* observer.onMessage(message);\n yield* TracingService.emitConverationMessage(message);\n return message;\n });\n\n // Submit the prompt.\n // TODO(burdon): Remove if cancelled?\n const promptMessage = yield* submitMessage(yield* formatUserPrompt({ prompt, history }));\n\n // Generate system and prompt messages.\n const system = yield* formatSystemPrompt({ system: systemTemplate, blueprints, objects });\n\n // Tool call loop.\n do {\n log('request', {\n prompt: promptMessage,\n system: { snippet: createSnippet(system), length: system.length },\n pending: this._pending.length,\n history: this._history.length,\n objects: objects?.length ?? 0,\n });\n\n const prompt = yield* AiPreprocessor.preprocessPrompt([...this._history, ...this._pending], { system });\n\n // Execute the stream request.\n // logDump('prompt', Prompt.Prompt.pipe(Schema.encodeSync)(prompt));\n const blocks = yield* LanguageModel.streamText({\n prompt,\n toolkit,\n disableToolCallResolution: true,\n }).pipe(\n // TOOD(dmaretskyi): Error mapping.\n AiParser.parseResponse({\n onBegin: () => observer.onBegin(),\n onBlock: (block) => observer.onBlock(block),\n onPart: (part) => observer.onPart(part),\n onEnd: (summary) => observer.onEnd(summary),\n }),\n Stream.runCollect,\n Effect.map(Chunk.toArray),\n );\n\n // Create the response message.\n const response = yield* submitMessage(\n Obj.make(DataType.Message, {\n created: new Date().toISOString(),\n sender: { role: 'assistant' },\n blocks,\n }),\n );\n\n // Parse the response for tool calls.\n const toolCalls = getToolCalls(response);\n if (toolCalls.length === 0) {\n break;\n } else if (!toolkit) {\n throw new Error('No toolkit provided'); // TODO(burdon): Throw user error?\n }\n\n // Execute the tool calls.\n // TODO(burdon): Retry errors? Write result when each completes individually?\n const toolResults = yield* Effect.forEach(toolCalls, (toolCall) => {\n return callTool(toolkit, toolCall).pipe(\n Effect.provide(\n TracingService.layerSubframe((context) => ({\n ...context,\n parentMessage: response.id,\n toolCallId: toolCall.toolCallId,\n })),\n ),\n );\n });\n\n // Add to queue and continue loop.\n // TODO(wittjosiah): Sometimes tool error results are added to the queue before the tool agent statuses.\n // This results in a broken execution graph.\n yield* submitMessage(\n Obj.make(DataType.Message, {\n created: new Date().toISOString(),\n sender: { role: 'tool' },\n blocks: toolResults,\n }),\n );\n } while (true);\n\n log('done', { pending: this._pending.length });\n return this._pending;\n }).pipe(this._semaphore.withPermits(1), Effect.withSpan('AiSession.run'));\n\n /**\n * @deprecated\n */\n // TODO(burdon): Implement or remove.\n async runStructured<S extends Schema.Schema.AnyNoContext>(\n _schema: S,\n _options: AiSessionRunParams<any>,\n ): Promise<Schema.Schema.Type<S>> {\n return todo();\n // const parser = structuredOutputParser(schema);\n // const result = await this.run({\n // ...options,\n // executableTools: [...(options.executableTools ?? []), parser.tool],\n // });\n // return parser.getResult(result);\n }\n}\n\nconst createSnippet = (text: string, len = 32) =>\n text.length <= len * 2 ? text : [text.slice(0, len), '...', text.slice(-len)].join('');\n\n// TODO(dmaretskyi): Extract as a general util.\nconst logDump = (message: string, data: unknown) => {\n // eslint-disable-next-line @typescript-eslint/no-require-imports\n const { writeFileSync } = require('node:fs');\n const path = `/tmp/log-data-${Date.now()}.json`;\n writeFileSync(path, JSON.stringify(data, null, 2));\n log.info(message, { path });\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Array from 'effect/Array';\nimport * as Effect from 'effect/Effect';\nimport * as Function from 'effect/Function';\nimport * as Option from 'effect/Option';\n\nimport { Template } from '@dxos/blueprints';\nimport { Obj } from '@dxos/echo';\nimport { type ObjectId } from '@dxos/echo/internal';\nimport { ObjectVersion } from '@dxos/echo-db';\nimport { DatabaseService } from '@dxos/functions';\nimport { log } from '@dxos/log';\nimport { type ContentBlock, DataType } from '@dxos/schema';\nimport { trim } from '@dxos/util';\n\nimport { AiAssistantError } from '../errors';\n\nimport { ArtifactDiffResolver } from './artifact-diff';\nimport { type AiSessionRunParams } from './session';\n\n/**\n * Formats the system prompt.\n */\n// TODO(burdon): Move to AiPreprocessor.\nexport const formatSystemPrompt = ({\n system,\n blueprints = [],\n objects = [],\n}: Pick<AiSessionRunParams<any>, 'system' | 'blueprints' | 'objects'>) =>\n Effect.gen(function* () {\n const blueprintDefs = yield* Function.pipe(\n blueprints,\n Effect.forEach((blueprint) => Effect.succeed(blueprint.instructions)),\n Effect.flatMap(Effect.forEach((template) => DatabaseService.loadOption(template.source))),\n Effect.map(Array.filter(Option.isSome)),\n Effect.map(\n Array.map(\n (template) => trim`\n <blueprint>\n ${Template.process(template.value.content)}\n </blueprint>\n `,\n ),\n ),\n Effect.map((blueprints) =>\n blueprints.length > 0 ? ['## Blueprints Definitions', ...blueprints].join('\\n\\n') : undefined,\n ),\n );\n\n const objectDefs = yield* Function.pipe(\n objects,\n Effect.forEach((object) =>\n Effect.succeed(trim`\n <object>\n <dxn>${Obj.getDXN(object)}</dxn>\n <typename>${Obj.getTypename(object)}</typename>\n </object>\n `),\n ),\n Effect.map((objects) => (objects.length > 0 ? ['## Context Objects', ...objects].join('\\n\\n') : undefined)),\n );\n\n return yield* Function.pipe(\n Effect.succeed([system, blueprintDefs, objectDefs].filter((def): def is string => def !== undefined)),\n Effect.map((parts) => parts.join('\\n\\n')),\n );\n });\n\n/**\n * Formats the user prompt.\n */\n// TODO(burdon): Move to AiPreprocessor.\n// TODO(burdon): Convert util below to `Effect.fn` (to preserve stack info)\nexport const formatUserPrompt = ({ prompt, history = [] }: Pick<AiSessionRunParams<any>, 'prompt' | 'history'>) =>\n Effect.gen(function* () {\n const blocks: ContentBlock.Any[] = [];\n\n // TODO(dmaretskyi): Evaluate other approaches as `serviceOption` isn't represented in the type system.\n const artifactDiffResolver = yield* Effect.serviceOption(ArtifactDiffResolver);\n if (Option.isSome(artifactDiffResolver)) {\n const versions = gatherObjectVersions(history);\n const artifactDiff = yield* Effect.tryPromise({\n try: () =>\n artifactDiffResolver.value.resolve(\n [...versions.entries()].map(([id, version]) => ({ id, lastVersion: version })),\n ),\n catch: AiAssistantError.wrap({ message: 'Artifact diff resolution error' }),\n });\n\n log('version', { artifactDiff, versions });\n for (const [id, { version }] of [...artifactDiff.entries()]) {\n if (ObjectVersion.equals(version, versions.get(id)!)) {\n artifactDiff.delete(id);\n continue;\n }\n\n blocks.push({ _tag: 'anchor', objectId: id, version });\n }\n\n if (artifactDiff.size > 0) {\n blocks.push(createArtifactUpdateBlock(artifactDiff));\n }\n }\n\n return Obj.make(DataType.Message, {\n created: new Date().toISOString(),\n sender: { role: 'user' },\n blocks: [...blocks, { _tag: 'text', text: prompt }],\n });\n });\n\nconst gatherObjectVersions = (messages: DataType.Message[]): Map<ObjectId, ObjectVersion> => {\n const artifactIds = new Map<ObjectId, ObjectVersion>();\n for (const message of messages) {\n for (const block of message.blocks) {\n if (block._tag === 'anchor') {\n artifactIds.set(block.objectId, block.version as ObjectVersion);\n }\n }\n }\n\n return artifactIds;\n};\n\nconst createArtifactUpdateBlock = (\n artifactDiff: Map<ObjectId, { version: ObjectVersion; diff?: string }>,\n): ContentBlock.Any => {\n return {\n _tag: 'text',\n // TODO(dmaretskyi): Does this need to be a special content-block?\n disposition: 'artifact-update',\n text: trim`\n The following artifacts have been updated since the last message:\n ${[...artifactDiff.entries()]\n .map(([id, { diff }]) => `<changed-artifact id=\"${id}\">${diff ? `\\n${diff}` : ''}</changed-artifact>`)\n .join('\\n')}\n `,\n };\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport type * as Tool from '@effect/ai/Tool';\nimport * as Toolkit from '@effect/ai/Toolkit';\nimport type * as Context from 'effect/Context';\nimport * as Effect from 'effect/Effect';\n\nimport { type AiToolNotFoundError, ToolExecutionService, type ToolId, ToolResolverService } from '@dxos/ai';\nimport { type Blueprint } from '@dxos/blueprints';\nimport { isTruthy } from '@dxos/util';\n\nexport type ToolkitParams<Tools extends Record<string, Tool.Any>> = {\n toolkit?: Toolkit.Toolkit<Tools>;\n toolIds?: ToolId[];\n blueprints?: Blueprint.Blueprint[];\n};\n\n/**\n * Build a combined toolkit from the blueprint tools and the provided toolkit.\n */\nexport const createToolkit = <Tools extends Record<string, Tool.Any> = {}>({\n toolkit: toolkitParam,\n toolIds = [],\n blueprints = [],\n}: ToolkitParams<Tools>): Effect.Effect<\n Toolkit.WithHandler<any>,\n AiToolNotFoundError,\n ToolResolverService | ToolExecutionService | Tool.HandlersFor<Tools>\n> =>\n Effect.gen(function* () {\n const blueprintToolkit = yield* ToolResolverService.resolveToolkit([\n ...blueprints.flatMap(({ tools }) => tools),\n ...toolIds,\n ]);\n\n const blueprintToolkitHandler: Context.Context<Tool.HandlersFor<any>> = yield* blueprintToolkit.toContext(\n ToolExecutionService.handlersFor(blueprintToolkit),\n );\n\n const toolkit = Toolkit.merge(...[toolkitParam, blueprintToolkit].filter(isTruthy));\n return yield* toolkit.pipe(Effect.provide(blueprintToolkitHandler)) as any as Effect.Effect<\n Toolkit.WithHandler<any>,\n never,\n Tool.HandlersFor<Tools>\n >;\n });\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\n\nimport { type AnyEchoObject, ObjectId } from '@dxos/echo/internal';\nimport { type ObjectVersion } from '@dxos/echo-db';\nimport { getVersion } from '@dxos/echo-db';\nimport { type ContentBlock } from '@dxos/schema';\n\n// TODO(dmaretskyi): Extract.\nconst ObjectVersionSchema = Schema.Unknown as Schema.Schema<ObjectVersion>;\n\nconst VersionPinSchema = Schema.Struct({\n // TODO(dmaretskyi): Use Ref when those support encoding.\n objectId: ObjectId,\n // TODO(dmaretskyi): Could be opaque.\n version: ObjectVersionSchema,\n});\n\n/**\n * Used to pin a specific version of an object during the course of a conversation.\n * This allows us to detect when the object changes during the course of the conversation.\n */\nexport interface VersionPin extends Schema.Schema.Type<typeof VersionPinSchema> {}\n\nexport const VersionPin: typeof VersionPinSchema & {\n DISPOSITION: 'version-pin';\n fromObject: (object: AnyEchoObject) => VersionPin;\n createBlock: (pin: VersionPin) => ContentBlock.Any;\n} = class extends VersionPinSchema {\n static readonly DISPOSITION = 'version-pin';\n static fromObject(object: AnyEchoObject): VersionPin {\n return VersionPin.make({\n objectId: object.id,\n version: getVersion(object),\n });\n }\n\n static createBlock(pin: VersionPin): ContentBlock.Any {\n return {\n _tag: 'json',\n disposition: VersionPin.DISPOSITION,\n data: JSON.stringify(pin),\n };\n }\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["Context", "ArtifactDiffResolver", "Tag", "Effect", "Function", "GenerationObserver", "Object", "freeze", "make", "onBegin", "constant", "void", "onPart", "onBlock", "onEnd", "onMessage", "noop", "fromPrinter", "printer", "block", "sync", "pending", "printContentBlock", "message", "sender", "role", "printMessage", "BaseError", "AiModelError", "BaseError", "extend", "AiAssistantError", "LanguageModel", "Chunk", "Effect", "Stream", "AiParser", "AiPreprocessor", "callTool", "getToolCalls", "todo", "Obj", "TracingService", "log", "DataType", "Array", "Effect", "Function", "Option", "Template", "Obj", "ObjectVersion", "DatabaseService", "log", "DataType", "trim", "formatSystemPrompt", "system", "blueprints", "objects", "gen", "blueprintDefs", "pipe", "forEach", "blueprint", "succeed", "instructions", "flatMap", "template", "DatabaseService", "loadOption", "source", "map", "filter", "isSome", "trim", "Template", "process", "value", "content", "length", "join", "undefined", "objectDefs", "object", "Obj", "getDXN", "getTypename", "def", "parts", "formatUserPrompt", "prompt", "history", "blocks", "artifactDiffResolver", "serviceOption", "ArtifactDiffResolver", "versions", "gatherObjectVersions", "artifactDiff", "tryPromise", "try", "resolve", "entries", "id", "version", "lastVersion", "catch", "AiAssistantError", "wrap", "message", "log", "ObjectVersion", "equals", "get", "delete", "push", "_tag", "objectId", "size", "createArtifactUpdateBlock", "make", "DataType", "Message", "created", "Date", "toISOString", "sender", "role", "text", "messages", "artifactIds", "Map", "block", "set", "disposition", "diff", "AiSession", "_semaphore", "runSync", "makeSemaphore", "_history", "_pending", "_options", "run", "prompt", "system", "systemTemplate", "history", "objects", "blueprints", "toolkit", "observer", "GenerationObserver", "noop", "gen", "pending", "submitMessage", "fnUntraced", "message", "push", "onMessage", "TracingService", "emitConverationMessage", "promptMessage", "formatUserPrompt", "formatSystemPrompt", "log", "snippet", "createSnippet", "length", "AiPreprocessor", "preprocessPrompt", "blocks", "streamText", "disableToolCallResolution", "pipe", "AiParser", "parseResponse", "onBegin", "onBlock", "block", "onPart", "part", "onEnd", "summary", "runCollect", "map", "toArray", "response", "Obj", "make", "DataType", "Message", "created", "Date", "toISOString", "sender", "role", "toolCalls", "getToolCalls", "Error", "toolResults", "forEach", "toolCall", "callTool", "provide", "layerSubframe", "context", "parentMessage", "id", "toolCallId", "withPermits", "withSpan", "runStructured", "_schema", "todo", "text", "len", "slice", "join", "Toolkit", "Effect", "ToolExecutionService", "ToolResolverService", "isTruthy", "createToolkit", "toolkit", "toolkitParam", "toolIds", "blueprints", "gen", "blueprintToolkit", "ToolResolverService", "resolveToolkit", "flatMap", "tools", "blueprintToolkitHandler", "toContext", "ToolExecutionService", "handlersFor", "merge", "filter", "isTruthy", "pipe", "provide", "Schema", "ObjectId", "getVersion", "ObjectVersionSchema", "Unknown", "VersionPinSchema", "Struct", "objectId", "ObjectId", "version", "VersionPin", "DISPOSITION", "fromObject", "object", "make", "id", "getVersion", "createBlock", "pin", "_tag", "disposition", "data", "JSON", "stringify"]
|
|
7
|
+
}
|