@dxos/assistant 0.8.2 → 0.8.3-main.672df60

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.
@@ -1 +1 @@
1
- {"inputs":{"packages/core/assistant/src/extraction/extraction.ts":{"bytes":6835,"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":[]},"packages/core/assistant/src/session/version-pin.ts":{"bytes":4222,"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"},"packages/core/assistant/src/session/session.ts":{"bytes":59353,"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-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":"packages/core/assistant/src/session/version-pin.ts","kind":"import-statement","original":"./version-pin"}],"format":"esm"},"packages/core/assistant/src/session/index.ts":{"bytes":569,"imports":[{"path":"packages/core/assistant/src/session/session.ts","kind":"import-statement","original":"./session"},{"path":"packages/core/assistant/src/session/version-pin.ts","kind":"import-statement","original":"./version-pin"}],"format":"esm"},"packages/core/assistant/src/extraction/quotes.ts":{"bytes":7034,"imports":[{"path":"effect","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"},"packages/core/assistant/src/extraction/extraction-llm-function/extraction-llm-function.ts":{"bytes":7661,"imports":[{"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/schema","kind":"import-statement","external":true},{"path":"raw-loader:./instructions.tpl?raw","kind":"import-statement","original":"./instructions.tpl?raw"},{"path":"packages/core/assistant/src/session/index.ts","kind":"import-statement","original":"../../session"},{"path":"packages/core/assistant/src/extraction/extraction.ts","kind":"import-statement","original":"../extraction"},{"path":"packages/core/assistant/src/extraction/quotes.ts","kind":"import-statement","original":"../quotes"}],"format":"esm"},"packages/core/assistant/src/extraction/extraction-llm-function/index.ts":{"bytes":537,"imports":[{"path":"packages/core/assistant/src/extraction/extraction-llm-function/extraction-llm-function.ts","kind":"import-statement","original":"./extraction-llm-function"}],"format":"esm"},"packages/core/assistant/src/extraction/extraction-ner-function/named-entity-recognition.ts":{"bytes":10072,"imports":[{"path":"@xenova/transformers","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"packages/core/assistant/src/extraction/extraction-ner-function/extraction-ner-function.ts":{"bytes":8910,"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":"packages/core/assistant/src/extraction/extraction-ner-function/named-entity-recognition.ts","kind":"import-statement","original":"./named-entity-recognition"},{"path":"packages/core/assistant/src/extraction/extraction.ts","kind":"import-statement","original":"../extraction"},{"path":"packages/core/assistant/src/extraction/quotes.ts","kind":"import-statement","original":"../quotes"}],"format":"esm"},"packages/core/assistant/src/extraction/extraction-ner-function/index.ts":{"bytes":665,"imports":[{"path":"packages/core/assistant/src/extraction/extraction-ner-function/extraction-ner-function.ts","kind":"import-statement","original":"./extraction-ner-function"},{"path":"packages/core/assistant/src/extraction/extraction-ner-function/named-entity-recognition.ts","kind":"import-statement","original":"./named-entity-recognition"}],"format":"esm"},"packages/core/assistant/src/extraction/index.ts":{"bytes":816,"imports":[{"path":"packages/core/assistant/src/extraction/extraction.ts","kind":"import-statement","original":"./extraction"},{"path":"packages/core/assistant/src/extraction/extraction-llm-function/index.ts","kind":"import-statement","original":"./extraction-llm-function"},{"path":"packages/core/assistant/src/extraction/extraction-ner-function/index.ts","kind":"import-statement","original":"./extraction-ner-function"},{"path":"packages/core/assistant/src/extraction/quotes.ts","kind":"import-statement","original":"./quotes"}],"format":"esm"},"packages/core/assistant/src/testing/exa-search-1748337321991.ts":{"bytes":75521,"imports":[],"format":"esm"},"packages/core/assistant/src/testing/exa-search-1748337331526.ts":{"bytes":90591,"imports":[],"format":"esm"},"packages/core/assistant/src/testing/exa-search-1748337344119.ts":{"bytes":69963,"imports":[],"format":"esm"},"packages/core/assistant/src/testing/index.ts":{"bytes":1218,"imports":[{"path":"packages/core/assistant/src/testing/exa-search-1748337321991.ts","kind":"import-statement","original":"./exa-search-1748337321991"},{"path":"packages/core/assistant/src/testing/exa-search-1748337331526.ts","kind":"import-statement","original":"./exa-search-1748337331526"},{"path":"packages/core/assistant/src/testing/exa-search-1748337344119.ts","kind":"import-statement","original":"./exa-search-1748337344119"}],"format":"esm"},"packages/core/assistant/src/research/exa.ts":{"bytes":10703,"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":"packages/core/assistant/src/testing/index.ts","kind":"import-statement","original":"../testing"}],"format":"esm"},"packages/core/assistant/src/research/graph.ts":{"bytes":28822,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","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":[]},"packages/core/assistant/src/research/research.ts":{"bytes":12349,"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":"packages/core/assistant/src/research/exa.ts","kind":"import-statement","original":"./exa"},{"path":"packages/core/assistant/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":"packages/core/assistant/src/session/index.ts","kind":"import-statement","original":"../session"}],"format":"esm"},"packages/core/assistant/src/research/index.ts":{"bytes":632,"imports":[{"path":"packages/core/assistant/src/research/exa.ts","kind":"import-statement","original":"./exa"},{"path":"packages/core/assistant/src/research/research.ts","kind":"import-statement","original":"./research"},{"path":"packages/core/assistant/src/research/graph.ts","kind":"import-statement","original":"./graph"}],"format":"esm"},"packages/core/assistant/src/types.ts":{"bytes":858,"imports":[],"format":"esm"},"packages/core/assistant/src/blueprint/blueprint.ts":{"bytes":7796,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true}],"format":"esm"},"packages/core/assistant/src/blueprint/machine.ts":{"bytes":21454,"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-schema","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"packages/core/assistant/src/session/index.ts","kind":"import-statement","original":"../session"}],"format":"esm"},"packages/core/assistant/src/blueprint/logger.ts":{"bytes":7589,"imports":[{"path":"chalk","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true}],"format":"esm"},"packages/core/assistant/src/blueprint/index.ts":{"bytes":647,"imports":[{"path":"packages/core/assistant/src/blueprint/blueprint.ts","kind":"import-statement","original":"./blueprint"},{"path":"packages/core/assistant/src/blueprint/machine.ts","kind":"import-statement","original":"./machine"},{"path":"packages/core/assistant/src/blueprint/logger.ts","kind":"import-statement","original":"./logger"}],"format":"esm"},"packages/core/assistant/src/index.ts":{"bytes":814,"imports":[{"path":"packages/core/assistant/src/extraction/index.ts","kind":"import-statement","original":"./extraction"},{"path":"packages/core/assistant/src/research/index.ts","kind":"import-statement","original":"./research"},{"path":"packages/core/assistant/src/session/index.ts","kind":"import-statement","original":"./session"},{"path":"packages/core/assistant/src/types.ts","kind":"import-statement","original":"./types"},{"path":"packages/core/assistant/src/blueprint/index.ts","kind":"import-statement","original":"./blueprint"}],"format":"esm"}},"outputs":{"packages/core/assistant/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":206454},"packages/core/assistant/dist/lib/browser/index.mjs":{"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},{"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/schema","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-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/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-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},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/keys","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-schema","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"chalk","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true}],"exports":["AIServiecOverloadedError","AISession","Blueprint","BlueprintBuilder","BlueprintMachine","BlueprintParser","BlueprintStep","ExtractionInput","ExtractionOutput","ReferencedQuotes","Subgraph","VersionPin","combineNerTokens","createArtifactElement","createExaTool","createExtractionSchema","createGraphWriterTool","createLocalSearchTool","createMockExaTool","createTokenGroups","extractFullEntities","extractionAnthropicFn","extractionNerFn","findQuotes","findRelatedSchema","getNer","getSanitizedSchemaName","insertReferences","processTranscriptMessage","researchFn","sanitizeObjects","setConsolePrinter"],"entryPoint":"packages/core/assistant/src/index.ts","inputs":{"packages/core/assistant/src/extraction/extraction.ts":{"bytesInOutput":1383},"packages/core/assistant/src/extraction/index.ts":{"bytesInOutput":0},"packages/core/assistant/src/extraction/extraction-llm-function/extraction-llm-function.ts":{"bytesInOutput":1649},"raw-loader:./instructions.tpl?raw":{"bytesInOutput":1376},"packages/core/assistant/src/session/session.ts":{"bytesInOutput":15770},"packages/core/assistant/src/session/version-pin.ts":{"bytesInOutput":758},"packages/core/assistant/src/session/index.ts":{"bytesInOutput":0},"packages/core/assistant/src/extraction/quotes.ts":{"bytesInOutput":1671},"packages/core/assistant/src/extraction/extraction-llm-function/index.ts":{"bytesInOutput":0},"packages/core/assistant/src/extraction/extraction-ner-function/extraction-ner-function.ts":{"bytesInOutput":2653},"packages/core/assistant/src/extraction/extraction-ner-function/named-entity-recognition.ts":{"bytesInOutput":2289},"packages/core/assistant/src/extraction/extraction-ner-function/index.ts":{"bytesInOutput":0},"packages/core/assistant/src/index.ts":{"bytesInOutput":0},"packages/core/assistant/src/research/exa.ts":{"bytesInOutput":2550},"packages/core/assistant/src/testing/exa-search-1748337321991.ts":{"bytesInOutput":31265},"packages/core/assistant/src/testing/exa-search-1748337331526.ts":{"bytesInOutput":43952},"packages/core/assistant/src/testing/exa-search-1748337344119.ts":{"bytesInOutput":28760},"packages/core/assistant/src/testing/index.ts":{"bytesInOutput":133},"packages/core/assistant/src/research/index.ts":{"bytesInOutput":0},"packages/core/assistant/src/research/research.ts":{"bytesInOutput":2915},"packages/core/assistant/src/research/graph.ts":{"bytesInOutput":6803},"raw-loader:./instructions-research.tpl?raw":{"bytesInOutput":5201},"packages/core/assistant/src/types.ts":{"bytesInOutput":61},"packages/core/assistant/src/blueprint/blueprint.ts":{"bytesInOutput":1804},"packages/core/assistant/src/blueprint/index.ts":{"bytesInOutput":0},"packages/core/assistant/src/blueprint/machine.ts":{"bytesInOutput":5392},"packages/core/assistant/src/blueprint/logger.ts":{"bytesInOutput":1667}},"bytes":160261}}}
1
+ {"inputs":{"packages/core/assistant/src/extraction/extraction.ts":{"bytes":6835,"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":[]},"packages/core/assistant/src/session/version-pin.ts":{"bytes":4222,"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"},"packages/core/assistant/src/session/session.ts":{"bytes":59353,"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-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":"packages/core/assistant/src/session/version-pin.ts","kind":"import-statement","original":"./version-pin"}],"format":"esm"},"packages/core/assistant/src/session/index.ts":{"bytes":569,"imports":[{"path":"packages/core/assistant/src/session/session.ts","kind":"import-statement","original":"./session"},{"path":"packages/core/assistant/src/session/version-pin.ts","kind":"import-statement","original":"./version-pin"}],"format":"esm"},"packages/core/assistant/src/extraction/quotes.ts":{"bytes":7034,"imports":[{"path":"effect","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"},"packages/core/assistant/src/extraction/extraction-llm-function/extraction-llm-function.ts":{"bytes":7661,"imports":[{"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/schema","kind":"import-statement","external":true},{"path":"raw-loader:./instructions.tpl?raw","kind":"import-statement","original":"./instructions.tpl?raw"},{"path":"packages/core/assistant/src/session/index.ts","kind":"import-statement","original":"../../session"},{"path":"packages/core/assistant/src/extraction/extraction.ts","kind":"import-statement","original":"../extraction"},{"path":"packages/core/assistant/src/extraction/quotes.ts","kind":"import-statement","original":"../quotes"}],"format":"esm"},"packages/core/assistant/src/extraction/extraction-llm-function/index.ts":{"bytes":537,"imports":[{"path":"packages/core/assistant/src/extraction/extraction-llm-function/extraction-llm-function.ts","kind":"import-statement","original":"./extraction-llm-function"}],"format":"esm"},"packages/core/assistant/src/extraction/extraction-ner-function/named-entity-recognition.ts":{"bytes":10072,"imports":[{"path":"@xenova/transformers","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"packages/core/assistant/src/extraction/extraction-ner-function/extraction-ner-function.ts":{"bytes":8910,"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":"packages/core/assistant/src/extraction/extraction-ner-function/named-entity-recognition.ts","kind":"import-statement","original":"./named-entity-recognition"},{"path":"packages/core/assistant/src/extraction/extraction.ts","kind":"import-statement","original":"../extraction"},{"path":"packages/core/assistant/src/extraction/quotes.ts","kind":"import-statement","original":"../quotes"}],"format":"esm"},"packages/core/assistant/src/extraction/extraction-ner-function/index.ts":{"bytes":665,"imports":[{"path":"packages/core/assistant/src/extraction/extraction-ner-function/extraction-ner-function.ts","kind":"import-statement","original":"./extraction-ner-function"},{"path":"packages/core/assistant/src/extraction/extraction-ner-function/named-entity-recognition.ts","kind":"import-statement","original":"./named-entity-recognition"}],"format":"esm"},"packages/core/assistant/src/extraction/index.ts":{"bytes":816,"imports":[{"path":"packages/core/assistant/src/extraction/extraction.ts","kind":"import-statement","original":"./extraction"},{"path":"packages/core/assistant/src/extraction/extraction-llm-function/index.ts","kind":"import-statement","original":"./extraction-llm-function"},{"path":"packages/core/assistant/src/extraction/extraction-ner-function/index.ts","kind":"import-statement","original":"./extraction-ner-function"},{"path":"packages/core/assistant/src/extraction/quotes.ts","kind":"import-statement","original":"./quotes"}],"format":"esm"},"packages/core/assistant/src/testing/exa-search-1748337321991.ts":{"bytes":75521,"imports":[],"format":"esm"},"packages/core/assistant/src/testing/exa-search-1748337331526.ts":{"bytes":90591,"imports":[],"format":"esm"},"packages/core/assistant/src/testing/exa-search-1748337344119.ts":{"bytes":69963,"imports":[],"format":"esm"},"packages/core/assistant/src/testing/index.ts":{"bytes":1218,"imports":[{"path":"packages/core/assistant/src/testing/exa-search-1748337321991.ts","kind":"import-statement","original":"./exa-search-1748337321991"},{"path":"packages/core/assistant/src/testing/exa-search-1748337331526.ts","kind":"import-statement","original":"./exa-search-1748337331526"},{"path":"packages/core/assistant/src/testing/exa-search-1748337344119.ts","kind":"import-statement","original":"./exa-search-1748337344119"}],"format":"esm"},"packages/core/assistant/src/research/exa.ts":{"bytes":10703,"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":"packages/core/assistant/src/testing/index.ts","kind":"import-statement","original":"../testing"}],"format":"esm"},"packages/core/assistant/src/research/graph.ts":{"bytes":34629,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","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":[]},"packages/core/assistant/src/research/research.ts":{"bytes":12349,"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":"packages/core/assistant/src/research/exa.ts","kind":"import-statement","original":"./exa"},{"path":"packages/core/assistant/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":"packages/core/assistant/src/session/index.ts","kind":"import-statement","original":"../session"}],"format":"esm"},"packages/core/assistant/src/research/index.ts":{"bytes":632,"imports":[{"path":"packages/core/assistant/src/research/exa.ts","kind":"import-statement","original":"./exa"},{"path":"packages/core/assistant/src/research/research.ts","kind":"import-statement","original":"./research"},{"path":"packages/core/assistant/src/research/graph.ts","kind":"import-statement","original":"./graph"}],"format":"esm"},"packages/core/assistant/src/types.ts":{"bytes":858,"imports":[],"format":"esm"},"packages/core/assistant/src/blueprint/blueprint.ts":{"bytes":6353,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true}],"format":"esm"},"packages/core/assistant/src/blueprint/machine.ts":{"bytes":22240,"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-schema","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/assistant/src/session/index.ts","kind":"import-statement","original":"../session"}],"format":"esm"},"packages/core/assistant/src/blueprint/logger.ts":{"bytes":11635,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"chalk","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true}],"format":"esm"},"packages/core/assistant/src/blueprint/index.ts":{"bytes":647,"imports":[{"path":"packages/core/assistant/src/blueprint/blueprint.ts","kind":"import-statement","original":"./blueprint"},{"path":"packages/core/assistant/src/blueprint/machine.ts","kind":"import-statement","original":"./machine"},{"path":"packages/core/assistant/src/blueprint/logger.ts","kind":"import-statement","original":"./logger"}],"format":"esm"},"packages/core/assistant/src/index.ts":{"bytes":814,"imports":[{"path":"packages/core/assistant/src/extraction/index.ts","kind":"import-statement","original":"./extraction"},{"path":"packages/core/assistant/src/research/index.ts","kind":"import-statement","original":"./research"},{"path":"packages/core/assistant/src/session/index.ts","kind":"import-statement","original":"./session"},{"path":"packages/core/assistant/src/types.ts","kind":"import-statement","original":"./types"},{"path":"packages/core/assistant/src/blueprint/index.ts","kind":"import-statement","original":"./blueprint"}],"format":"esm"}},"outputs":{"packages/core/assistant/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":211308},"packages/core/assistant/dist/lib/browser/index.mjs":{"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},{"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/schema","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-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/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-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},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/keys","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-schema","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"chalk","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true}],"exports":["AIServiecOverloadedError","AISession","Blueprint","BlueprintBuilder","BlueprintMachine","BlueprintParser","BlueprintSchema","BlueprintStepSchema","ExtractionInput","ExtractionOutput","Logger","ReferencedQuotes","Subgraph","VersionPin","combineNerTokens","createArtifactElement","createExaTool","createExtractionSchema","createGraphWriterTool","createLocalSearchTool","createMockExaTool","createTokenGroups","extractFullEntities","extractionAnthropicFn","extractionNerFn","findQuotes","findRelatedSchema","getNer","getSanitizedSchemaName","insertReferences","processTranscriptMessage","researchFn","sanitizeObjects","setConsolePrinter","setLogger"],"entryPoint":"packages/core/assistant/src/index.ts","inputs":{"packages/core/assistant/src/extraction/extraction.ts":{"bytesInOutput":1383},"packages/core/assistant/src/extraction/index.ts":{"bytesInOutput":0},"packages/core/assistant/src/extraction/extraction-llm-function/extraction-llm-function.ts":{"bytesInOutput":1649},"raw-loader:./instructions.tpl?raw":{"bytesInOutput":1376},"packages/core/assistant/src/session/session.ts":{"bytesInOutput":15770},"packages/core/assistant/src/session/version-pin.ts":{"bytesInOutput":758},"packages/core/assistant/src/session/index.ts":{"bytesInOutput":0},"packages/core/assistant/src/extraction/quotes.ts":{"bytesInOutput":1671},"packages/core/assistant/src/extraction/extraction-llm-function/index.ts":{"bytesInOutput":0},"packages/core/assistant/src/extraction/extraction-ner-function/extraction-ner-function.ts":{"bytesInOutput":2653},"packages/core/assistant/src/extraction/extraction-ner-function/named-entity-recognition.ts":{"bytesInOutput":2289},"packages/core/assistant/src/extraction/extraction-ner-function/index.ts":{"bytesInOutput":0},"packages/core/assistant/src/index.ts":{"bytesInOutput":0},"packages/core/assistant/src/research/exa.ts":{"bytesInOutput":2550},"packages/core/assistant/src/testing/exa-search-1748337321991.ts":{"bytesInOutput":31265},"packages/core/assistant/src/testing/exa-search-1748337331526.ts":{"bytesInOutput":43952},"packages/core/assistant/src/testing/exa-search-1748337344119.ts":{"bytesInOutput":28760},"packages/core/assistant/src/testing/index.ts":{"bytesInOutput":133},"packages/core/assistant/src/research/index.ts":{"bytesInOutput":0},"packages/core/assistant/src/research/research.ts":{"bytesInOutput":2915},"packages/core/assistant/src/research/graph.ts":{"bytesInOutput":8232},"raw-loader:./instructions-research.tpl?raw":{"bytesInOutput":5201},"packages/core/assistant/src/types.ts":{"bytesInOutput":61},"packages/core/assistant/src/blueprint/blueprint.ts":{"bytesInOutput":1489},"packages/core/assistant/src/blueprint/index.ts":{"bytesInOutput":0},"packages/core/assistant/src/blueprint/machine.ts":{"bytesInOutput":5581},"packages/core/assistant/src/blueprint/logger.ts":{"bytesInOutput":2551}},"bytes":162496}}}
@@ -34,9 +34,11 @@ __export(node_exports, {
34
34
  BlueprintBuilder: () => BlueprintBuilder,
35
35
  BlueprintMachine: () => BlueprintMachine,
36
36
  BlueprintParser: () => BlueprintParser,
37
- BlueprintStep: () => BlueprintStep,
37
+ BlueprintSchema: () => BlueprintSchema,
38
+ BlueprintStepSchema: () => BlueprintStepSchema,
38
39
  ExtractionInput: () => ExtractionInput,
39
40
  ExtractionOutput: () => ExtractionOutput,
41
+ Logger: () => Logger,
40
42
  ReferencedQuotes: () => ReferencedQuotes,
41
43
  Subgraph: () => Subgraph,
42
44
  VersionPin: () => VersionPin,
@@ -59,7 +61,8 @@ __export(node_exports, {
59
61
  processTranscriptMessage: () => processTranscriptMessage,
60
62
  researchFn: () => researchFn,
61
63
  sanitizeObjects: () => sanitizeObjects,
62
- setConsolePrinter: () => setConsolePrinter
64
+ setConsolePrinter: () => setConsolePrinter,
65
+ setLogger: () => setLogger
63
66
  });
64
67
  module.exports = __toCommonJS(node_exports);
65
68
  var import_effect = require("effect");
@@ -112,16 +115,18 @@ var import_keys2 = require("@dxos/keys");
112
115
  var import_log8 = require("@dxos/log");
113
116
  var import_util = require("@dxos/util");
114
117
  var import_effect9 = require("effect");
115
- var import_ai6 = require("@dxos/ai");
116
- var import_debug = require("@dxos/debug");
118
+ var import_echo = require("@dxos/echo");
117
119
  var import_keys3 = require("@dxos/keys");
118
120
  var import_effect10 = require("effect");
119
- var import_ai7 = require("@dxos/ai");
121
+ var import_ai6 = require("@dxos/ai");
120
122
  var import_async4 = require("@dxos/async");
121
123
  var import_echo_schema9 = require("@dxos/echo-schema");
122
124
  var import_log9 = require("@dxos/log");
125
+ var import_util2 = require("@dxos/util");
126
+ var import_signals_core = require("@preact/signals-core");
123
127
  var import_chalk = __toESM(require("chalk"));
124
- var import_ai8 = require("@dxos/ai");
128
+ var import_ai7 = require("@dxos/ai");
129
+ var import_async5 = require("@dxos/async");
125
130
  var __dxlog_file = "/home/runner/work/dxos/dxos/packages/core/assistant/src/extraction/extraction.ts";
126
131
  var ExtractionInput = import_effect.Schema.Struct({
127
132
  message: import_schema.DataType.Message,
@@ -1466,7 +1471,7 @@ var isSchemaAddressableByDxn = (schema, dxn) => {
1466
1471
  }
1467
1472
  return false;
1468
1473
  };
1469
- var createLocalSearchTool = (db) => {
1474
+ var createLocalSearchTool = (db, queue) => {
1470
1475
  return (0, import_ai5.createTool)("search", {
1471
1476
  name: "local_search",
1472
1477
  description: "Search the local database for information using a vector index",
@@ -1479,9 +1484,16 @@ var createLocalSearchTool = (db) => {
1479
1484
  const { objects } = await db.query(import_echo_schema8.Query.select(import_echo_schema8.Filter.text(query, {
1480
1485
  type: "vector"
1481
1486
  }))).run();
1487
+ const results = [
1488
+ ...objects
1489
+ ];
1490
+ if (queue) {
1491
+ const queueObjects = await queue.queryObjects();
1492
+ results.push(...queueObjects);
1493
+ }
1482
1494
  return import_ai5.ToolResult.Success(`
1483
1495
  <local_context>
1484
- ${JSON.stringify(objects, null, 2)}
1496
+ ${JSON.stringify(results, null, 2)}
1485
1497
  </local_context>
1486
1498
  `);
1487
1499
  }
@@ -1500,13 +1512,14 @@ var createExtractionSchema = (types) => {
1500
1512
  var getSanitizedSchemaName = (schema) => {
1501
1513
  return (0, import_echo_schema8.getSchemaDXN)(schema).asTypeDXN().type.replaceAll(/[^a-zA-Z0-9]+/g, "_");
1502
1514
  };
1503
- var sanitizeObjects = async (types, data, db) => {
1515
+ var sanitizeObjects = async (types, data, db, queue) => {
1504
1516
  const entries = types.map((type) => data[`objects_${getSanitizedSchemaName(type)}`]?.map((object) => ({
1505
1517
  data: object,
1506
1518
  schema: type
1507
1519
  })) ?? []).flat();
1508
1520
  const idMap = /* @__PURE__ */ new Map();
1509
1521
  const existingIds = /* @__PURE__ */ new Set();
1522
+ const enitties = /* @__PURE__ */ new Map();
1510
1523
  const resolveId = (id) => {
1511
1524
  if (import_echo_schema8.ObjectId.isValid(id)) {
1512
1525
  existingIds.add(id);
@@ -1549,7 +1562,7 @@ var sanitizeObjects = async (types, data, db) => {
1549
1562
  source: data2.source
1550
1563
  }, {
1551
1564
  F: __dxlog_file7,
1552
- L: 205,
1565
+ L: 216,
1553
1566
  S: void 0,
1554
1567
  C: (f, a) => f(...a)
1555
1568
  });
@@ -1560,25 +1573,36 @@ var sanitizeObjects = async (types, data, db) => {
1560
1573
  target: data2.target
1561
1574
  }, {
1562
1575
  F: __dxlog_file7,
1563
- L: 209,
1576
+ L: 220,
1564
1577
  S: void 0,
1565
1578
  C: (f, a) => f(...a)
1566
1579
  });
1567
1580
  }
1568
1581
  delete data2.source;
1569
1582
  delete data2.target;
1570
- data2[import_echo_schema8.RelationSourceId] = sourceDxn;
1571
- data2[import_echo_schema8.RelationTargetId] = targetDxn;
1583
+ data2[import_echo_schema8.RelationSourceDXNId] = sourceDxn;
1584
+ data2[import_echo_schema8.RelationTargetDXNId] = targetDxn;
1572
1585
  }
1573
- return (0, import_echo_schema8.create)(entry.schema, data2);
1574
- }).filter((object) => !existingIds.has(object.id));
1575
- const { objects } = await db.query(import_echo_schema8.Query.select(import_echo_schema8.Filter.ids(...existingIds))).run();
1586
+ return {
1587
+ data: data2,
1588
+ schema: entry.schema
1589
+ };
1590
+ }).filter((object) => !existingIds.has(object.data.id));
1591
+ const { objects: dbObjects } = await db.query(import_echo_schema8.Query.select(import_echo_schema8.Filter.ids(...existingIds))).run();
1592
+ const queueObjects = await queue?.getObjectsById([
1593
+ ...existingIds
1594
+ ]) ?? [];
1595
+ const objects = [
1596
+ ...dbObjects,
1597
+ ...queueObjects
1598
+ ].filter(import_util.isNonNullable);
1576
1599
  import_log8.log.info("objects", {
1577
- objects,
1600
+ dbObjects,
1601
+ queueObjects,
1578
1602
  existingIds
1579
1603
  }, {
1580
1604
  F: __dxlog_file7,
1581
- L: 223,
1605
+ L: 241,
1582
1606
  S: void 0,
1583
1607
  C: (f, a) => f(...a)
1584
1608
  });
@@ -1586,7 +1610,37 @@ var sanitizeObjects = async (types, data, db) => {
1586
1610
  if (missing.length > 0) {
1587
1611
  throw new Error(`Object IDs do not point to existing objects: ${missing.join(", ")}`);
1588
1612
  }
1589
- return res;
1613
+ return res.flatMap(({ data: data2, schema }) => {
1614
+ let skip = false;
1615
+ if (import_echo_schema8.RelationSourceDXNId in data2) {
1616
+ const id = data2[import_echo_schema8.RelationSourceDXNId].asEchoDXN()?.echoId;
1617
+ const obj = objects.find((object) => object.id === id) ?? enitties.get(id);
1618
+ if (obj) {
1619
+ delete data2[import_echo_schema8.RelationSourceDXNId];
1620
+ data2[import_echo_schema8.RelationSourceId] = obj;
1621
+ } else {
1622
+ skip = true;
1623
+ }
1624
+ }
1625
+ if (import_echo_schema8.RelationTargetDXNId in data2) {
1626
+ const id = data2[import_echo_schema8.RelationTargetDXNId].asEchoDXN()?.echoId;
1627
+ const obj = objects.find((object) => object.id === id) ?? enitties.get(id);
1628
+ if (obj) {
1629
+ delete data2[import_echo_schema8.RelationTargetDXNId];
1630
+ data2[import_echo_schema8.RelationTargetId] = obj;
1631
+ } else {
1632
+ skip = true;
1633
+ }
1634
+ }
1635
+ if (!skip) {
1636
+ const obj = (0, import_echo_schema8.create)(schema, data2);
1637
+ enitties.set(obj.id, obj);
1638
+ return [
1639
+ obj
1640
+ ];
1641
+ }
1642
+ return [];
1643
+ });
1590
1644
  };
1591
1645
  var SoftRef = import_effect7.Schema.Struct({
1592
1646
  "/": import_effect7.Schema.String
@@ -1614,13 +1668,13 @@ var preprocessSchema = (schema) => {
1614
1668
  })
1615
1669
  })) : import_effect7.identity);
1616
1670
  };
1617
- var createGraphWriterTool = ({ db, schemaTypes, onDone = async (x) => x }) => {
1671
+ var createGraphWriterTool = ({ db, queue, schemaTypes, onDone = async (x) => x }) => {
1618
1672
  return (0, import_ai5.createTool)("graph", {
1619
1673
  name: "writer",
1620
1674
  description: "Write to the local graph database",
1621
1675
  schema: createExtractionSchema(schemaTypes),
1622
1676
  execute: async (input) => {
1623
- const data = await sanitizeObjects(schemaTypes, input, db);
1677
+ const data = await sanitizeObjects(schemaTypes, input, db, queue);
1624
1678
  return import_ai5.ToolResult.Success(await onDone(data));
1625
1679
  }
1626
1680
  });
@@ -1712,15 +1766,21 @@ var researchFn = (0, import_functions3.defineFunction)({
1712
1766
  }
1713
1767
  });
1714
1768
  var createArtifactElement = (id) => `<artifact id=${id} />`;
1715
- var BlueprintStep = import_effect9.Schema.Struct({
1716
- id: import_effect9.Schema.String,
1769
+ var BlueprintStepSchema = import_effect9.Schema.Struct({
1770
+ id: import_keys3.ObjectId,
1717
1771
  instructions: import_effect9.Schema.String,
1718
- // TODO(burdon): ExecutableTool can't be serialized.
1719
- tools: import_effect9.Schema.Array(import_ai6.Tool).pipe(import_effect9.Schema.mutable)
1772
+ tools: import_effect9.Schema.Array(import_effect9.Schema.String)
1720
1773
  });
1721
- var Blueprint = import_effect9.Schema.Struct({
1722
- steps: import_effect9.Schema.Array(BlueprintStep).pipe(import_effect9.Schema.mutable)
1774
+ var BlueprintSchema = import_effect9.Schema.Struct({
1775
+ steps: import_effect9.Schema.Array(BlueprintStepSchema.pipe(import_effect9.Schema.omit("id")))
1723
1776
  });
1777
+ var Blueprint = import_effect9.Schema.Struct({
1778
+ name: import_effect9.Schema.optional(import_effect9.Schema.String),
1779
+ steps: import_effect9.Schema.Array(BlueprintStepSchema)
1780
+ }).pipe(import_echo.Type.Obj({
1781
+ typename: "dxos.org/type/Blueprint",
1782
+ version: "0.1.0"
1783
+ }));
1724
1784
  (function(BlueprintBuilder2) {
1725
1785
  BlueprintBuilder2.create = () => new Builder();
1726
1786
  class Builder {
@@ -1736,33 +1796,20 @@ var Blueprint = import_effect9.Schema.Struct({
1736
1796
  return this;
1737
1797
  }
1738
1798
  build() {
1739
- return {
1799
+ return import_echo.Obj.make(Blueprint, {
1740
1800
  steps: this._steps
1741
- };
1801
+ });
1742
1802
  }
1743
1803
  }
1744
1804
  })(BlueprintBuilder || (BlueprintBuilder = {}));
1745
1805
  (function(BlueprintParser2) {
1746
- BlueprintParser2.create = (tools = []) => new Parser(tools);
1806
+ BlueprintParser2.create = () => new Parser();
1747
1807
  class Parser {
1748
- constructor(_tools) {
1749
- this._tools = _tools;
1750
- }
1751
- toJSON() {
1752
- return {
1753
- tools: this._tools.map((tool) => ({
1754
- name: tool.name,
1755
- namespace: tool.namespace,
1756
- type: tool.type
1757
- }))
1758
- };
1759
- }
1760
1808
  parse({ steps }) {
1761
1809
  const builder = BlueprintBuilder.create();
1762
1810
  for (const step of steps) {
1763
1811
  builder.step(step.instructions, {
1764
- // TODO(burdon): Tool resolution is duplicated in the session and ollama-client.
1765
- tools: step.tools?.map((tool) => this._tools.find(({ id }) => id === tool) ?? (0, import_debug.raise)(new Error(`Tool not found: ${tool}`)))
1812
+ tools: step.tools ?? []
1766
1813
  });
1767
1814
  }
1768
1815
  return builder.build();
@@ -1778,7 +1825,8 @@ var INITIAL_STATE = {
1778
1825
  trace: []
1779
1826
  };
1780
1827
  var BlueprintMachine = class {
1781
- constructor(blueprint) {
1828
+ constructor(registry, blueprint) {
1829
+ this.registry = registry;
1782
1830
  this.blueprint = blueprint;
1783
1831
  this.begin = new import_async4.Event();
1784
1832
  this.end = new import_async4.Event();
@@ -1791,7 +1839,7 @@ var BlueprintMachine = class {
1791
1839
  async runToCompletion(options) {
1792
1840
  import_log9.log.info("runToCompletion", options, {
1793
1841
  F: __dxlog_file9,
1794
- L: 67,
1842
+ L: 71,
1795
1843
  S: this,
1796
1844
  C: (f, a) => f(...a)
1797
1845
  });
@@ -1827,11 +1875,11 @@ var BlueprintMachine = class {
1827
1875
  description: "A comment about the task completion. If you bailed, you must explain why in detail (min couple of sentences)."
1828
1876
  })
1829
1877
  });
1830
- const report = (0, import_ai7.createTool)("system", {
1878
+ const report = (0, import_ai6.createTool)("system", {
1831
1879
  name: "report",
1832
1880
  description: "This tool reports that the agent has completed the task or is unable to do so",
1833
1881
  schema: ReportSchema,
1834
- execute: async (input) => import_ai7.ToolResult.Break(input)
1882
+ execute: async (input) => import_ai6.ToolResult.Break(input)
1835
1883
  });
1836
1884
  const session = new AISession({
1837
1885
  operationModel: "configured"
@@ -1840,7 +1888,7 @@ var BlueprintMachine = class {
1840
1888
  session.message.pipeInto(this.message);
1841
1889
  session.block.pipeInto(this.block);
1842
1890
  const inputMessages = options.input ? [
1843
- (0, import_echo_schema9.create)(import_ai7.Message, {
1891
+ (0, import_echo_schema9.create)(import_ai6.Message, {
1844
1892
  role: "user",
1845
1893
  content: [
1846
1894
  taggedDataBlock("input", options.input)
@@ -1848,6 +1896,7 @@ var BlueprintMachine = class {
1848
1896
  })
1849
1897
  ] : [];
1850
1898
  inputMessages.forEach((message) => this.message.emit(message));
1899
+ const tools = nextStep.tools.map((tool) => this.registry.get(tool)).filter(import_util2.isNonNullable);
1851
1900
  const messages = await session.run({
1852
1901
  systemPrompt: `
1853
1902
  You are a smart Rule-Following Agent.
@@ -1864,7 +1913,7 @@ var BlueprintMachine = class {
1864
1913
  ...inputMessages
1865
1914
  ],
1866
1915
  tools: [
1867
- ...nextStep.tools,
1916
+ ...tools,
1868
1917
  report
1869
1918
  ],
1870
1919
  artifacts: [],
@@ -1924,22 +1973,52 @@ var popLastToolCall = (messages) => {
1924
1973
  };
1925
1974
  };
1926
1975
  import_chalk.default.level = 2;
1927
- var setConsolePrinter = (machine, extraLogging = false) => {
1928
- const printer = new import_ai8.ConsolePrinter();
1929
- if (extraLogging) {
1930
- machine.stepStart.on((step) => console.log(`
1931
- ${import_chalk.default.magenta(`${import_chalk.default.bold(`STEP ${machine.blueprint.steps.indexOf(step) + 1} of ${machine.blueprint.steps.length}:`)} ${step.instructions}`)}
1932
- `));
1933
- machine.message.on((msg) => printer.printMessage(msg));
1934
- machine.block.on((block) => printer.printContentBlock(block));
1976
+ var Logger = class {
1977
+ constructor() {
1978
+ this._messages = (0, import_signals_core.signal)([]);
1979
+ }
1980
+ get messages() {
1981
+ return this._messages;
1935
1982
  }
1936
- machine.begin.on(() => printTrace(machine.blueprint, machine.state));
1937
- machine.stepComplete.on(() => printTrace(machine.blueprint, machine.state));
1983
+ clear() {
1984
+ this._messages.value = [];
1985
+ }
1986
+ log(message) {
1987
+ this._messages.value = [
1988
+ ...this._messages.value,
1989
+ message
1990
+ ];
1991
+ }
1992
+ };
1993
+ var setLogger = (machine, logger) => {
1994
+ return (0, import_async5.combine)(machine.begin.on(() => {
1995
+ logger.log("Starting...");
1996
+ }), machine.stepStart.on((step) => {
1997
+ const index = machine.blueprint.steps.indexOf(step);
1998
+ logger.log(`Step ${index + 1} of ${machine.blueprint.steps.length}`);
1999
+ logger.log(`Instructions: ${step.instructions}`);
2000
+ }), machine.stepComplete.on((step) => {
2001
+ const trace = machine.state.trace.find((t) => t.stepId === step.id);
2002
+ logger.log(`Complete: ${trace?.comment}`);
2003
+ }), machine.end.on(() => {
2004
+ logger.log("OK");
2005
+ }));
2006
+ };
2007
+ var setConsolePrinter = (machine, verbose = false) => {
2008
+ const printer = new import_ai7.ConsolePrinter();
2009
+ return (0, import_async5.combine)(machine.begin.on(() => printTrace(machine.blueprint, machine.state)), machine.stepStart.on((step) => console.log(`
2010
+ ${import_chalk.default.magenta(`${import_chalk.default.bold(`STEP ${machine.blueprint.steps.indexOf(step) + 1} of ${machine.blueprint.steps.length}:`)} ${step.instructions}`)}
2011
+ `)), machine.stepComplete.on(() => printTrace(machine.blueprint, machine.state)), machine.end.on(() => console.log("DONE")), verbose ? [
2012
+ machine.message.on((msg) => printer.printMessage(msg)),
2013
+ machine.block.on((block) => printer.printContentBlock(block))
2014
+ ] : []);
1938
2015
  };
2016
+ var BREAK_LINE = `
2017
+ ${"_".repeat(80)}
2018
+ `;
1939
2019
  var printTrace = (blueprint, state) => {
1940
- console.log("\n==============================================\n");
1941
- console.log(import_chalk.default.bold("\nThe Blueprint:"));
1942
- blueprint.steps.forEach((step, index) => {
2020
+ console.group(import_chalk.default.bold("\nBlueprint"));
2021
+ blueprint.steps.forEach((step) => {
1943
2022
  const traceStep = state.trace.find((t) => t.stepId === step.id);
1944
2023
  let color = import_chalk.default.gray;
1945
2024
  let bullet = "\u25CB";
@@ -1962,11 +2041,11 @@ var printTrace = (blueprint, state) => {
1962
2041
  console.log(color(`
1963
2042
  ${bullet} ${step.instructions}`));
1964
2043
  if (traceStep?.comment) {
1965
- console.log(import_chalk.default.white(` \u21B3 ${traceStep.comment}`));
2044
+ console.log(import_chalk.default.white(` \u21B3 ${traceStep.comment}`));
1966
2045
  }
1967
2046
  });
1968
- console.log("\n");
1969
- console.log("\n==============================================\n");
2047
+ console.groupEnd();
2048
+ console.log(BREAK_LINE);
1970
2049
  };
1971
2050
  // Annotate the CommonJS export names for ESM import in node:
1972
2051
  0 && (module.exports = {
@@ -1976,9 +2055,11 @@ ${bullet} ${step.instructions}`));
1976
2055
  BlueprintBuilder,
1977
2056
  BlueprintMachine,
1978
2057
  BlueprintParser,
1979
- BlueprintStep,
2058
+ BlueprintSchema,
2059
+ BlueprintStepSchema,
1980
2060
  ExtractionInput,
1981
2061
  ExtractionOutput,
2062
+ Logger,
1982
2063
  ReferencedQuotes,
1983
2064
  Subgraph,
1984
2065
  VersionPin,
@@ -2001,6 +2082,7 @@ ${bullet} ${step.instructions}`));
2001
2082
  processTranscriptMessage,
2002
2083
  researchFn,
2003
2084
  sanitizeObjects,
2004
- setConsolePrinter
2085
+ setConsolePrinter,
2086
+ setLogger
2005
2087
  });
2006
2088
  //# sourceMappingURL=index.cjs.map