@dxos/assistant-toolkit 0.8.4-main.ae835ea → 0.8.4-main.c85a9c8dae
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/neutral/chunk-J5LGTIGS.mjs +10 -0
- package/dist/lib/neutral/chunk-J5LGTIGS.mjs.map +7 -0
- package/dist/lib/{browser → neutral}/index.mjs +2989 -1842
- package/dist/lib/neutral/index.mjs.map +7 -0
- package/dist/lib/neutral/meta.json +1 -0
- package/dist/lib/neutral/testing/index.mjs +81 -0
- package/dist/lib/neutral/testing/index.mjs.map +7 -0
- package/dist/types/src/blueprints/browser/blueprint.d.ts +4 -0
- package/dist/types/src/blueprints/browser/blueprint.d.ts.map +1 -0
- package/dist/types/src/blueprints/browser/blueprint.test.d.ts +2 -0
- package/dist/types/src/blueprints/browser/blueprint.test.d.ts.map +1 -0
- package/dist/types/src/blueprints/browser/index.d.ts +2 -0
- package/dist/types/src/blueprints/browser/index.d.ts.map +1 -0
- package/dist/types/src/blueprints/database/blueprint.d.ts +4 -0
- package/dist/types/src/blueprints/database/blueprint.d.ts.map +1 -0
- package/dist/types/src/blueprints/database/blueprint.test.d.ts +2 -0
- package/dist/types/src/blueprints/database/blueprint.test.d.ts.map +1 -0
- package/dist/types/src/blueprints/database/functions/context-add.d.ts +6 -0
- package/dist/types/src/blueprints/database/functions/context-add.d.ts.map +1 -0
- package/dist/types/src/blueprints/database/functions/context-remove.d.ts +6 -0
- package/dist/types/src/blueprints/database/functions/context-remove.d.ts.map +1 -0
- package/dist/types/src/blueprints/database/functions/index.d.ts +57 -0
- package/dist/types/src/blueprints/database/functions/index.d.ts.map +1 -0
- package/dist/types/src/blueprints/database/functions/load.d.ts +6 -0
- package/dist/types/src/blueprints/database/functions/load.d.ts.map +1 -0
- package/dist/types/src/blueprints/database/functions/object-create.d.ts +6 -0
- package/dist/types/src/blueprints/database/functions/object-create.d.ts.map +1 -0
- package/dist/types/src/blueprints/database/functions/object-delete.d.ts +6 -0
- package/dist/types/src/blueprints/database/functions/object-delete.d.ts.map +1 -0
- package/dist/types/src/blueprints/database/functions/object-update.d.ts +9 -0
- package/dist/types/src/blueprints/database/functions/object-update.d.ts.map +1 -0
- package/dist/types/src/blueprints/database/functions/query.d.ts +9 -0
- package/dist/types/src/blueprints/database/functions/query.d.ts.map +1 -0
- package/dist/types/src/blueprints/database/functions/relation-create.d.ts +9 -0
- package/dist/types/src/blueprints/database/functions/relation-create.d.ts.map +1 -0
- package/dist/types/src/blueprints/database/functions/relation-delete.d.ts +6 -0
- package/dist/types/src/blueprints/database/functions/relation-delete.d.ts.map +1 -0
- package/dist/types/src/blueprints/database/functions/schema-add.d.ts +7 -0
- package/dist/types/src/blueprints/database/functions/schema-add.d.ts.map +1 -0
- package/dist/types/src/blueprints/database/functions/schema-list.d.ts +5 -0
- package/dist/types/src/blueprints/database/functions/schema-list.d.ts.map +1 -0
- package/dist/types/src/blueprints/database/functions/tag-add.d.ts +7 -0
- package/dist/types/src/blueprints/database/functions/tag-add.d.ts.map +1 -0
- package/dist/types/src/blueprints/database/functions/tag-remove.d.ts +7 -0
- package/dist/types/src/blueprints/database/functions/tag-remove.d.ts.map +1 -0
- package/dist/types/src/blueprints/database/index.d.ts +3 -0
- package/dist/types/src/blueprints/database/index.d.ts.map +1 -0
- package/dist/types/src/blueprints/design/blueprint.d.ts +4 -0
- package/dist/types/src/blueprints/design/blueprint.d.ts.map +1 -0
- package/dist/types/src/blueprints/design/blueprint.test.d.ts +2 -0
- package/dist/types/src/blueprints/design/blueprint.test.d.ts.map +1 -0
- package/dist/types/src/blueprints/design/index.d.ts +1 -2
- package/dist/types/src/blueprints/design/index.d.ts.map +1 -1
- package/dist/types/src/blueprints/discord/blueprint.d.ts +4 -0
- package/dist/types/src/blueprints/discord/blueprint.d.ts.map +1 -0
- package/dist/types/src/{functions/discord → blueprints/discord/functions}/fetch-messages.d.ts +1 -1
- package/dist/types/src/blueprints/discord/functions/fetch-messages.d.ts.map +1 -0
- package/dist/types/src/blueprints/discord/functions/fetch-messages.test.d.ts.map +1 -0
- package/dist/types/src/{functions/discord → blueprints/discord/functions}/index.d.ts +4 -4
- package/dist/types/src/blueprints/discord/functions/index.d.ts.map +1 -0
- package/dist/types/src/blueprints/discord/index.d.ts +1 -2
- package/dist/types/src/blueprints/discord/index.d.ts.map +1 -1
- package/dist/types/src/{functions/github → blueprints/github/functions}/fetch-prs.d.ts +1 -1
- package/dist/types/src/blueprints/github/functions/fetch-prs.d.ts.map +1 -0
- package/dist/types/src/blueprints/github/functions/index.d.ts +7 -0
- package/dist/types/src/blueprints/github/functions/index.d.ts.map +1 -0
- package/dist/types/src/blueprints/github/index.d.ts +1 -0
- package/dist/types/src/blueprints/github/index.d.ts.map +1 -0
- package/dist/types/src/blueprints/index.d.ts +10 -6
- package/dist/types/src/blueprints/index.d.ts.map +1 -1
- package/dist/types/src/blueprints/linear/blueprint.d.ts +4 -0
- package/dist/types/src/blueprints/linear/blueprint.d.ts.map +1 -0
- package/dist/types/src/blueprints/linear/functions/index.d.ts +9 -0
- package/dist/types/src/blueprints/linear/functions/index.d.ts.map +1 -0
- package/dist/types/src/blueprints/linear/functions/linear.test.d.ts.map +1 -0
- package/dist/types/src/{functions/linear → blueprints/linear/functions}/sync-issues.d.ts +2 -2
- package/dist/types/src/blueprints/linear/functions/sync-issues.d.ts.map +1 -0
- package/dist/types/src/blueprints/linear/index.d.ts +1 -2
- package/dist/types/src/blueprints/linear/index.d.ts.map +1 -1
- package/dist/types/src/blueprints/markdown/blueprint.d.ts +4 -0
- package/dist/types/src/blueprints/markdown/blueprint.d.ts.map +1 -0
- package/dist/types/src/{functions/research/create-document.d.ts → blueprints/markdown/functions/create.d.ts} +2 -3
- package/dist/types/src/blueprints/markdown/functions/create.d.ts.map +1 -0
- package/dist/types/src/blueprints/markdown/functions/index.d.ts +30 -0
- package/dist/types/src/blueprints/markdown/functions/index.d.ts.map +1 -0
- package/dist/types/src/blueprints/markdown/functions/read.d.ts +14 -0
- package/dist/types/src/blueprints/markdown/functions/read.d.ts.map +1 -0
- package/dist/types/src/blueprints/markdown/functions/update.d.ts +13 -0
- package/dist/types/src/blueprints/markdown/functions/update.d.ts.map +1 -0
- package/dist/types/src/blueprints/markdown/index.d.ts +3 -0
- package/dist/types/src/blueprints/markdown/index.d.ts.map +1 -0
- package/dist/types/src/blueprints/planning/blueprint.d.ts +4 -0
- package/dist/types/src/blueprints/planning/blueprint.d.ts.map +1 -0
- package/dist/types/src/blueprints/planning/functions/index.d.ts +10 -0
- package/dist/types/src/blueprints/planning/functions/index.d.ts.map +1 -0
- package/dist/types/src/blueprints/planning/functions/update-tasks.d.ts +9 -0
- package/dist/types/src/blueprints/planning/functions/update-tasks.d.ts.map +1 -0
- package/dist/types/src/blueprints/planning/index.d.ts +1 -2
- package/dist/types/src/blueprints/planning/index.d.ts.map +1 -1
- package/dist/types/src/blueprints/planning-old/blueprint.d.ts +4 -0
- package/dist/types/src/blueprints/planning-old/blueprint.d.ts.map +1 -0
- package/dist/types/src/blueprints/planning-old/blueprint.test.d.ts +2 -0
- package/dist/types/src/blueprints/planning-old/blueprint.test.d.ts.map +1 -0
- package/dist/types/src/blueprints/planning-old/functions/index.d.ts +29 -0
- package/dist/types/src/blueprints/planning-old/functions/index.d.ts.map +1 -0
- package/dist/types/src/blueprints/planning-old/functions/read.d.ts +14 -0
- package/dist/types/src/blueprints/planning-old/functions/read.d.ts.map +1 -0
- package/dist/types/src/blueprints/planning-old/functions/task-list.d.ts.map +1 -0
- package/dist/types/src/blueprints/planning-old/functions/task-list.test.d.ts.map +1 -0
- package/dist/types/src/blueprints/planning-old/functions/update.d.ts +16 -0
- package/dist/types/src/blueprints/planning-old/functions/update.d.ts.map +1 -0
- package/dist/types/src/blueprints/planning-old/index.d.ts +2 -0
- package/dist/types/src/blueprints/planning-old/index.d.ts.map +1 -0
- package/dist/types/src/blueprints/project/blueprint.d.ts +4 -0
- package/dist/types/src/blueprints/project/blueprint.d.ts.map +1 -0
- package/dist/types/src/blueprints/project/blueprint.test.d.ts +2 -0
- package/dist/types/src/blueprints/project/blueprint.test.d.ts.map +1 -0
- package/dist/types/src/blueprints/project/functions/add-artifact.d.ts +7 -0
- package/dist/types/src/blueprints/project/functions/add-artifact.d.ts.map +1 -0
- package/dist/types/src/blueprints/project/functions/agent.d.ts +62 -0
- package/dist/types/src/blueprints/project/functions/agent.d.ts.map +1 -0
- package/dist/types/src/blueprints/project/functions/get-context.d.ts +13 -0
- package/dist/types/src/blueprints/project/functions/get-context.d.ts.map +1 -0
- package/dist/types/src/blueprints/project/functions/index.d.ts +133 -0
- package/dist/types/src/blueprints/project/functions/index.d.ts.map +1 -0
- package/dist/types/src/blueprints/project/functions/qualifier.d.ts +60 -0
- package/dist/types/src/blueprints/project/functions/qualifier.d.ts.map +1 -0
- package/dist/types/src/blueprints/project/index.d.ts +3 -0
- package/dist/types/src/blueprints/project/index.d.ts.map +1 -0
- package/dist/types/src/blueprints/research/blueprint.d.ts +4 -0
- package/dist/types/src/blueprints/research/blueprint.d.ts.map +1 -0
- package/dist/types/src/blueprints/research/blueprint.test.d.ts +2 -0
- package/dist/types/src/blueprints/research/blueprint.test.d.ts.map +1 -0
- package/dist/types/src/blueprints/research/functions/document-create.d.ts +10 -0
- package/dist/types/src/blueprints/research/functions/document-create.d.ts.map +1 -0
- package/dist/types/src/blueprints/research/functions/index.d.ts +19 -0
- package/dist/types/src/blueprints/research/functions/index.d.ts.map +1 -0
- package/dist/types/src/{functions/research → blueprints/research/functions}/research.d.ts +4 -3
- package/dist/types/src/blueprints/research/functions/research.d.ts.map +1 -0
- package/dist/types/src/blueprints/research/functions/research.test.d.ts.map +1 -0
- package/dist/types/src/blueprints/research/index.d.ts +2 -2
- package/dist/types/src/blueprints/research/index.d.ts.map +1 -1
- package/dist/types/src/blueprints/research/types/ResearchGraph.d.ts +18 -0
- package/dist/types/src/blueprints/research/types/ResearchGraph.d.ts.map +1 -0
- package/dist/types/src/blueprints/research/types/index.d.ts +7 -0
- package/dist/types/src/blueprints/research/types/index.d.ts.map +1 -0
- package/dist/types/src/blueprints/testing.d.ts +18 -4
- package/dist/types/src/blueprints/testing.d.ts.map +1 -1
- package/dist/types/src/blueprints/websearch/blueprint.d.ts +4 -0
- package/dist/types/src/blueprints/websearch/blueprint.d.ts.map +1 -0
- package/dist/types/src/blueprints/websearch/index.d.ts +2 -3
- package/dist/types/src/blueprints/websearch/index.d.ts.map +1 -1
- package/dist/types/src/blueprints/websearch/{websearch-toolkit.d.ts → toolkit.d.ts} +2 -1
- package/dist/types/src/blueprints/websearch/toolkit.d.ts.map +1 -0
- package/dist/types/src/{functions/research → crud}/graph.d.ts +14 -11
- package/dist/types/src/crud/graph.d.ts.map +1 -0
- package/dist/types/src/crud/graph.test.d.ts.map +1 -0
- package/dist/types/src/crud/index.d.ts +2 -0
- package/dist/types/src/crud/index.d.ts.map +1 -0
- package/dist/types/src/functions/agent/index.d.ts +84 -4
- package/dist/types/src/functions/agent/index.d.ts.map +1 -1
- package/dist/types/src/functions/agent/prompt.d.ts +81 -8
- package/dist/types/src/functions/agent/prompt.d.ts.map +1 -1
- package/dist/types/src/functions/entity-extraction/entity-extraction.d.ts +142 -136
- package/dist/types/src/functions/entity-extraction/entity-extraction.d.ts.map +1 -1
- package/dist/types/src/functions/entity-extraction/index.d.ts +144 -139
- package/dist/types/src/functions/entity-extraction/index.d.ts.map +1 -1
- package/dist/types/src/functions/exa/data/exa-search-1748337321991.d.ts.map +1 -0
- package/dist/types/src/functions/exa/data/exa-search-1748337331526.d.ts.map +1 -0
- package/dist/types/src/functions/exa/data/exa-search-1748337344119.d.ts.map +1 -0
- package/dist/types/src/functions/exa/data/index.d.ts.map +1 -0
- package/dist/types/src/functions/exa/exa.d.ts +1 -1
- package/dist/types/src/functions/exa/index.d.ts +8 -2
- package/dist/types/src/functions/exa/index.d.ts.map +1 -1
- package/dist/types/src/functions/exa/mock.d.ts +1 -1
- package/dist/types/src/functions/index.d.ts +1 -5
- package/dist/types/src/functions/index.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +3 -1
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/sync/sync.d.ts +3 -3
- package/dist/types/src/sync/sync.d.ts.map +1 -1
- package/dist/types/src/testing/index.d.ts +2 -1
- package/dist/types/src/testing/index.d.ts.map +1 -1
- package/dist/types/src/testing/plugins.d.ts +19 -0
- package/dist/types/src/testing/plugins.d.ts.map +1 -0
- package/dist/types/src/toolkits/WebToolkit.d.ts +38 -0
- package/dist/types/src/toolkits/WebToolkit.d.ts.map +1 -0
- package/dist/types/src/toolkits/index.d.ts +2 -0
- package/dist/types/src/toolkits/index.d.ts.map +1 -0
- package/dist/types/src/types/Chat.d.ts +31 -0
- package/dist/types/src/types/Chat.d.ts.map +1 -0
- package/dist/types/src/types/Plan.d.ts +77 -0
- package/dist/types/src/types/Plan.d.ts.map +1 -0
- package/dist/types/src/types/Project.d.ts +67 -0
- package/dist/types/src/types/Project.d.ts.map +1 -0
- package/dist/types/src/types/index.d.ts +4 -0
- package/dist/types/src/types/index.d.ts.map +1 -0
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +49 -38
- package/src/blueprints/browser/blueprint.conversations.json +1 -0
- package/src/blueprints/browser/blueprint.test.ts +70 -0
- package/src/blueprints/browser/blueprint.ts +41 -0
- package/src/blueprints/browser/index.ts +5 -0
- package/src/blueprints/database/blueprint.conversations.json +1 -0
- package/src/blueprints/database/blueprint.test.ts +321 -0
- package/src/blueprints/database/blueprint.ts +39 -0
- package/src/blueprints/database/functions/context-add.ts +35 -0
- package/src/blueprints/database/functions/context-remove.ts +35 -0
- package/src/blueprints/database/functions/index.ts +33 -0
- package/src/blueprints/database/functions/load.ts +31 -0
- package/src/blueprints/database/functions/object-create.ts +35 -0
- package/src/blueprints/database/functions/object-delete.ts +27 -0
- package/src/blueprints/database/functions/object-update.ts +32 -0
- package/src/blueprints/database/functions/query.ts +126 -0
- package/src/blueprints/database/functions/relation-create.ts +47 -0
- package/src/blueprints/database/functions/relation-delete.ts +28 -0
- package/src/blueprints/database/functions/schema-add.ts +40 -0
- package/src/blueprints/database/functions/schema-list.ts +34 -0
- package/src/blueprints/database/functions/tag-add.ts +31 -0
- package/src/blueprints/database/functions/tag-remove.ts +30 -0
- package/src/blueprints/database/index.ts +6 -0
- package/src/blueprints/design/{design-blueprint.test.ts → blueprint.test.ts} +25 -37
- package/src/blueprints/design/blueprint.ts +46 -0
- package/src/blueprints/design/index.ts +1 -3
- package/src/blueprints/discord/blueprint.ts +46 -0
- package/src/{functions/discord → blueprints/discord/functions}/fetch-messages.test.ts +10 -14
- package/src/{functions/discord → blueprints/discord/functions}/fetch-messages.ts +11 -10
- package/src/blueprints/discord/functions/index.ts +9 -0
- package/src/blueprints/discord/index.ts +1 -3
- package/src/{functions/github → blueprints/github/functions}/fetch-prs.ts +3 -2
- package/src/blueprints/github/functions/index.ts +9 -0
- package/src/blueprints/github/index.ts +3 -0
- package/src/blueprints/index.ts +10 -6
- package/src/blueprints/linear/blueprint.ts +47 -0
- package/src/blueprints/linear/functions/index.ts +9 -0
- package/src/blueprints/linear/functions/linear.test.ts +58 -0
- package/src/{functions/linear → blueprints/linear/functions}/sync-issues.ts +17 -15
- package/src/blueprints/linear/index.ts +1 -3
- package/src/blueprints/markdown/blueprint.ts +38 -0
- package/src/blueprints/markdown/functions/create.ts +29 -0
- package/src/blueprints/markdown/functions/index.ts +13 -0
- package/src/blueprints/markdown/functions/read.ts +32 -0
- package/src/{functions/document → blueprints/markdown/functions}/update.ts +9 -7
- package/src/blueprints/markdown/index.ts +6 -0
- package/src/blueprints/planning/blueprint.ts +28 -0
- package/src/blueprints/planning/functions/index.ts +9 -0
- package/src/blueprints/planning/functions/update-tasks.ts +168 -0
- package/src/blueprints/planning/index.ts +2 -4
- package/src/blueprints/{planning/planning-blueprint.test.ts → planning-old/blueprint.test.ts} +25 -32
- package/src/blueprints/{planning/planning-blueprint.ts → planning-old/blueprint.ts} +24 -12
- package/src/blueprints/planning-old/functions/index.ts +11 -0
- package/src/{functions/tasks → blueprints/planning-old/functions}/read.ts +6 -6
- package/src/{functions/tasks → blueprints/planning-old/functions}/update.ts +6 -6
- package/src/blueprints/planning-old/index.ts +5 -0
- package/src/blueprints/project/blueprint.test.ts +579 -0
- package/src/blueprints/project/blueprint.ts +68 -0
- package/src/blueprints/project/functions/add-artifact.ts +41 -0
- package/src/blueprints/project/functions/agent.ts +72 -0
- package/src/blueprints/project/functions/get-context.ts +63 -0
- package/src/blueprints/project/functions/index.ts +15 -0
- package/src/blueprints/project/functions/qualifier.ts +96 -0
- package/src/blueprints/project/index.ts +6 -0
- package/src/blueprints/research/blueprint.ts +65 -0
- package/src/blueprints/research/functions/document-create.ts +73 -0
- package/src/blueprints/research/functions/index.ts +11 -0
- package/src/{functions/research/instructions-research.tpl → blueprints/research/functions/research-instructions.tpl} +14 -6
- package/src/blueprints/research/functions/research.conversations.json +1 -0
- package/src/blueprints/research/functions/research.test.ts +149 -0
- package/src/blueprints/research/functions/research.ts +175 -0
- package/src/blueprints/research/index.ts +2 -3
- package/src/blueprints/research/types/ResearchGraph.ts +49 -0
- package/src/blueprints/research/types/index.ts +32 -0
- package/src/blueprints/testing.ts +36 -5
- package/src/blueprints/websearch/blueprint.ts +32 -0
- package/src/blueprints/websearch/index.ts +2 -4
- package/src/crud/graph.test.ts +46 -0
- package/src/{functions/research → crud}/graph.ts +32 -40
- package/src/crud/index.ts +5 -0
- package/src/functions/READ_THIS.md +5 -0
- package/src/functions/agent/index.ts +4 -6
- package/src/functions/agent/prompt.ts +32 -25
- package/src/functions/entity-extraction/entity-extraction.conversations.json +1 -1
- package/src/functions/entity-extraction/entity-extraction.test.ts +17 -43
- package/src/functions/entity-extraction/entity-extraction.ts +54 -36
- package/src/functions/entity-extraction/index.ts +4 -4
- package/src/functions/exa/exa.ts +2 -2
- package/src/functions/exa/index.ts +7 -2
- package/src/functions/exa/mock.ts +1 -1
- package/src/functions/index.ts +1 -5
- package/src/index.ts +3 -1
- package/src/sync/sync.ts +38 -30
- package/src/testing/index.ts +2 -1
- package/src/testing/plugins.tsx +72 -0
- package/src/toolkits/WebToolkit.ts +33 -0
- package/src/toolkits/index.ts +5 -0
- package/src/types/Chat.ts +49 -0
- package/src/types/Plan.ts +107 -0
- package/src/types/Project.ts +196 -0
- package/src/types/index.ts +7 -0
- package/dist/lib/browser/index.mjs.map +0 -7
- package/dist/lib/browser/meta.json +0 -1
- package/dist/lib/node-esm/index.mjs +0 -2483
- package/dist/lib/node-esm/index.mjs.map +0 -7
- package/dist/lib/node-esm/meta.json +0 -1
- package/dist/types/src/blueprints/design/design-blueprint.d.ts +0 -4
- package/dist/types/src/blueprints/design/design-blueprint.d.ts.map +0 -1
- package/dist/types/src/blueprints/design/design-blueprint.test.d.ts +0 -2
- package/dist/types/src/blueprints/design/design-blueprint.test.d.ts.map +0 -1
- package/dist/types/src/blueprints/discord/discord-blueprint.d.ts +0 -18
- package/dist/types/src/blueprints/discord/discord-blueprint.d.ts.map +0 -1
- package/dist/types/src/blueprints/linear/linear-blueprint.d.ts +0 -18
- package/dist/types/src/blueprints/linear/linear-blueprint.d.ts.map +0 -1
- package/dist/types/src/blueprints/planning/planning-blueprint.d.ts +0 -4
- package/dist/types/src/blueprints/planning/planning-blueprint.d.ts.map +0 -1
- package/dist/types/src/blueprints/planning/planning-blueprint.test.d.ts +0 -2
- package/dist/types/src/blueprints/planning/planning-blueprint.test.d.ts.map +0 -1
- package/dist/types/src/blueprints/research/research-blueprint.d.ts +0 -4
- package/dist/types/src/blueprints/research/research-blueprint.d.ts.map +0 -1
- package/dist/types/src/blueprints/research/research-blueprint.test.d.ts +0 -2
- package/dist/types/src/blueprints/research/research-blueprint.test.d.ts.map +0 -1
- package/dist/types/src/blueprints/websearch/websearch-blueprint.d.ts +0 -4
- package/dist/types/src/blueprints/websearch/websearch-blueprint.d.ts.map +0 -1
- package/dist/types/src/blueprints/websearch/websearch-toolkit.d.ts.map +0 -1
- package/dist/types/src/experimental/feed.test.d.ts +0 -2
- package/dist/types/src/experimental/feed.test.d.ts.map +0 -1
- package/dist/types/src/functions/discord/fetch-messages.d.ts.map +0 -1
- package/dist/types/src/functions/discord/fetch-messages.test.d.ts.map +0 -1
- package/dist/types/src/functions/discord/index.d.ts.map +0 -1
- package/dist/types/src/functions/document/index.d.ts +0 -12
- package/dist/types/src/functions/document/index.d.ts.map +0 -1
- package/dist/types/src/functions/document/read.d.ts +0 -7
- package/dist/types/src/functions/document/read.d.ts.map +0 -1
- package/dist/types/src/functions/document/update.d.ts +0 -6
- package/dist/types/src/functions/document/update.d.ts.map +0 -1
- package/dist/types/src/functions/github/fetch-prs.d.ts.map +0 -1
- package/dist/types/src/functions/linear/index.d.ts +0 -9
- package/dist/types/src/functions/linear/index.d.ts.map +0 -1
- package/dist/types/src/functions/linear/linear.test.d.ts.map +0 -1
- package/dist/types/src/functions/linear/sync-issues.d.ts.map +0 -1
- package/dist/types/src/functions/research/create-document.d.ts.map +0 -1
- package/dist/types/src/functions/research/graph.d.ts.map +0 -1
- package/dist/types/src/functions/research/graph.test.d.ts.map +0 -1
- package/dist/types/src/functions/research/index.d.ts +0 -19
- package/dist/types/src/functions/research/index.d.ts.map +0 -1
- package/dist/types/src/functions/research/research-graph.d.ts +0 -18
- package/dist/types/src/functions/research/research-graph.d.ts.map +0 -1
- package/dist/types/src/functions/research/research.d.ts.map +0 -1
- package/dist/types/src/functions/research/research.test.d.ts.map +0 -1
- package/dist/types/src/functions/research/types.d.ts +0 -384
- package/dist/types/src/functions/research/types.d.ts.map +0 -1
- package/dist/types/src/functions/tasks/index.d.ts +0 -15
- package/dist/types/src/functions/tasks/index.d.ts.map +0 -1
- package/dist/types/src/functions/tasks/read.d.ts +0 -7
- package/dist/types/src/functions/tasks/read.d.ts.map +0 -1
- package/dist/types/src/functions/tasks/task-list.d.ts.map +0 -1
- package/dist/types/src/functions/tasks/task-list.test.d.ts.map +0 -1
- package/dist/types/src/functions/tasks/update.d.ts +0 -9
- package/dist/types/src/functions/tasks/update.d.ts.map +0 -1
- package/dist/types/src/plugins.d.ts +0 -19
- package/dist/types/src/plugins.d.ts.map +0 -1
- package/dist/types/src/testing/data/exa-search-1748337321991.d.ts.map +0 -1
- package/dist/types/src/testing/data/exa-search-1748337331526.d.ts.map +0 -1
- package/dist/types/src/testing/data/exa-search-1748337344119.d.ts.map +0 -1
- package/dist/types/src/testing/data/index.d.ts.map +0 -1
- package/src/blueprints/design/design-blueprint.ts +0 -33
- package/src/blueprints/discord/discord-blueprint.ts +0 -34
- package/src/blueprints/linear/linear-blueprint.ts +0 -35
- package/src/blueprints/research/research-blueprint.ts +0 -45
- package/src/blueprints/websearch/websearch-blueprint.ts +0 -20
- package/src/experimental/feed.test.ts +0 -108
- package/src/functions/discord/index.ts +0 -9
- package/src/functions/document/index.ts +0 -11
- package/src/functions/document/read.ts +0 -29
- package/src/functions/linear/index.ts +0 -9
- package/src/functions/linear/linear.test.ts +0 -86
- package/src/functions/research/create-document.ts +0 -69
- package/src/functions/research/graph.test.ts +0 -69
- package/src/functions/research/index.ts +0 -15
- package/src/functions/research/research-graph.ts +0 -47
- package/src/functions/research/research.conversations.json +0 -10714
- package/src/functions/research/research.test.ts +0 -240
- package/src/functions/research/research.ts +0 -155
- package/src/functions/research/types.ts +0 -24
- package/src/functions/tasks/index.ts +0 -11
- package/src/plugins.tsx +0 -68
- /package/dist/types/src/{functions/discord → blueprints/discord/functions}/fetch-messages.test.d.ts +0 -0
- /package/dist/types/src/{functions/linear → blueprints/linear/functions}/linear.test.d.ts +0 -0
- /package/dist/types/src/{functions/tasks → blueprints/planning-old/functions}/task-list.d.ts +0 -0
- /package/dist/types/src/{functions/tasks → blueprints/planning-old/functions}/task-list.test.d.ts +0 -0
- /package/dist/types/src/{functions/research → blueprints/research/functions}/research.test.d.ts +0 -0
- /package/dist/types/src/{functions/research → crud}/graph.test.d.ts +0 -0
- /package/dist/types/src/{testing → functions/exa}/data/exa-search-1748337321991.d.ts +0 -0
- /package/dist/types/src/{testing → functions/exa}/data/exa-search-1748337331526.d.ts +0 -0
- /package/dist/types/src/{testing → functions/exa}/data/exa-search-1748337344119.d.ts +0 -0
- /package/dist/types/src/{testing → functions/exa}/data/index.d.ts +0 -0
- /package/src/{functions/tasks → blueprints/planning-old/functions}/task-list.test.ts +0 -0
- /package/src/{functions/tasks → blueprints/planning-old/functions}/task-list.ts +0 -0
- /package/src/blueprints/research/{research-blueprint.test.ts → blueprint.test.ts} +0 -0
- /package/src/blueprints/websearch/{websearch-toolkit.ts → toolkit.ts} +0 -0
- /package/src/{testing → functions/exa}/data/exa-search-1748337321991.ts +0 -0
- /package/src/{testing → functions/exa}/data/exa-search-1748337331526.ts +0 -0
- /package/src/{testing → functions/exa}/data/exa-search-1748337344119.ts +0 -0
- /package/src/{testing → functions/exa}/data/index.ts +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"conversations":[{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"List all available schemas. Tell me what typenames are available.","options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01DhqJH6FV8thCSTZUnjNDvt","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"reasoning-start","id":"0","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"The user wants to","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" see","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" all available schemas and their","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" typenames. I shoul","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"d use the list","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"-schemas function","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" to retrieve","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" this","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" information.","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{"anthropic":{"type":"thinking","signature":"Eq4CCkYICxgCKkBLtudXLQg4FbtrDOgUTnCMt+jGIReiekUK5kG2MB87UGwH6ZdvfLI10CykQNQJ0Ew5FVX7Pmjwlu20Pk+44enwEgzvZgJRSXFOwvNU8A4aDNzi1ZidlotowbWY/CIwTcl5M0HUlao/mKEFP7JcpLTFQzFddTXw8lqKOqFQ/cVraP5yBYw6b/jRubwdyr98KpUBzWnDR/wDDaBmc0aLaEeue0v4oi/1I84/4cUf9yP/wmfp2PclMKt6TWN+R0+hZsgLDtEZgRVkxPy+Aue+f0auY3VM562oHtJBhk9nd77YpCnkGS7EJTJkgFsFSr1wAxTBvhC4QCbRdj8BAqoTIfRpmRalR0Hdh+mNsjc5UnTliJqmBi4SCz/ujkov1iofPcCBVKyBx0UYAQ=="}}},{"type":"reasoning-end","id":"0","metadata":{}},{"type":"text-start","id":"1","metadata":{}},{"type":"text-delta","id":"1","delta":"I","metadata":{}},{"type":"text-delta","id":"1","delta":"'ll list all the","metadata":{}},{"type":"text-delta","id":"1","delta":" available schemas for","metadata":{}},{"type":"text-delta","id":"1","delta":" you.","metadata":{}},{"type":"text-end","id":"1","metadata":{}},{"type":"tool-params-start","id":"toolu_01USrCd8agMJNga2FQ6Gfcey","name":"list-schemas","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01USrCd8agMJNga2FQ6Gfcey","delta":"","metadata":{}},{"type":"tool-params-end","id":"toolu_01USrCd8agMJNga2FQ6Gfcey","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":10,"outputTokens":81,"totalTokens":91},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":5660},"cache_creation_input_tokens":5660,"cache_read_input_tokens":0,"input_tokens":10,"output_tokens":4,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"List all available schemas. Tell me what typenames are available.","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to see all available schemas and their typenames. I should use the list-schemas function to retrieve this information.","options":{}},{"type":"text","text":"I'll list all the available schemas for you.","options":{}},{"type":"tool-call","id":"toolu_01USrCd8agMJNga2FQ6Gfcey","name":"list-schemas","params":{},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01USrCd8agMJNga2FQ6Gfcey","name":"list-schemas","isFailure":false,"result":[{"typename":"dxos.org/relation/Employer","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/relation/Employer","entityKind":"relation","typename":"dxos.org/relation/Employer","version":"0.1.0","relationTarget":{"$ref":"dxn:type:dxos.org/type/Organization"},"relationSource":{"$ref":"dxn:type:dxos.org/type/Person"},"type":"object","properties":{"id":{"type":"string","description":"A Universally Unique Lexicographically Sortable Identifier","pattern":"^[0-7][0-9A-HJKMNP-TV-Z]{25}$"},"role":{"type":"string"},"active":{"type":"boolean"},"startDate":{"type":"string"},"endDate":{"type":"string"}},"required":["id"],"propertyOrder":["id","role","active","startDate","endDate"],"additionalProperties":false,"description":"An employing organization of a person."},"kind":"relation"},{"typename":"dxos.org/type/Blueprint","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Blueprint","entityKind":"object","typename":"dxos.org/type/Blueprint","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"key":{"type":"string","description":"Unique registration key for the blueprint"},"name":{"type":"string","description":"Human-readable name of the blueprint"},"description":{"type":"string","description":"Description of the blueprint's purpose and functionality"},"instructions":{"type":"object","required":["source"],"properties":{"source":{"allOf":[{"$id":"/schemas/echo/ref","$ref":"/schemas/echo/ref","reference":{"schema":{"$ref":"dxn:type:dxos.org/type/Text"},"schemaVersion":"0.1.0"}}],"description":"Handlebars template source"},"inputs":{"type":"array","items":{"type":"object","required":["name"],"properties":{"name":{"type":"string"},"kind":{"type":"string","enum":["value","pass-through","retriever","function","query","resolver","context","schema"]},"default":{"$id":"/schemas/any","title":"any"},"function":{"type":"string"}},"additionalProperties":false,"propertyOrder":["name","kind","default","function"]}}},"additionalProperties":false,"description":"Instructions that guide the AI assistant's behavior and responses","propertyOrder":["source","inputs"]},"tools":{"type":"array","items":{"$ref":"#/$defs/ToolId"},"description":"Array of tools that the AI assistant can use when this blueprint is active"},"mcpServers":{"type":"array","items":{"type":"object","required":["url","protocol"],"properties":{"url":{"type":"string","description":"URL of the MCP server"},"protocol":{"type":"string","enum":["sse","http"],"description":"Protocol of the MCP server"}},"additionalProperties":false,"propertyOrder":["url","protocol"]}}},"required":["key","name","instructions","tools","id"],"propertyOrder":["key","name","description","instructions","tools","mcpServers","id"],"additionalProperties":false,"annotations":{"meta":{"dxos.org/annotation/Icon":{"icon":"ph--blueprint--regular","hue":"blue"}},"labelProp":["name"]}},"kind":"record"},{"typename":"dxos.org/type/Organization","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Organization","entityKind":"object","typename":"dxos.org/type/Organization","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"name":{"type":"string","title":"Name","annotations":{"generator":{"generator":"company.name","probability":1}}},"description":{"type":"string","title":"Description","annotations":{"generator":{"generator":"lorem.paragraphs","args":[{"min":1,"max":3}]}}},"status":{"type":"string","enum":["prospect","qualified","active","commit","reject"],"title":"Status","annotations":{"meta":{"singleSelect":{"options":[{"id":"prospect","title":"Prospect","color":"indigo"},{"id":"qualified","title":"Qualified","color":"purple"},{"id":"active","title":"Active","color":"amber"},{"id":"commit","title":"Commit","color":"emerald"},{"id":"reject","title":"Reject","color":"red"}]}},"generator":{"generator":"helpers.arrayElement","args":[["prospect","qualified","active","commit","reject"]]}},"format":"single-select"},"image":{"type":"string","title":"Image","annotations":{"generator":"image.url"}},"website":{"type":"string","title":"Website","annotations":{"generator":"internet.url"}},"location":{"type":"array","minItems":2,"items":[{"type":"number","title":"Longitude"},{"type":"number","title":"Latitude"},{"type":"number","title":"Height ASL (m)"}],"additionalItems":false,"description":"GeoJSON Position","title":"Location","format":"lnglat"}},"required":["id"],"propertyOrder":["name","description","status","image","website","location","id"],"additionalProperties":false,"description":"An organization.","title":"Organization","annotations":{"labelProp":["name"]}},"kind":"record"},{"typename":"dxos.org/type/Person","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Person","entityKind":"object","typename":"dxos.org/type/Person","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"fullName":{"type":"string","title":"Full Name","annotations":{"generator":{"generator":"person.fullName","probability":1}}},"preferredName":{"type":"string","title":"Preferred Name"},"nickname":{"type":"string","title":"Nickname"},"image":{"type":"string","title":"Image"},"organization":{"allOf":[{"$id":"/schemas/echo/ref","$ref":"/schemas/echo/ref","reference":{"schema":{"$ref":"dxn:type:dxos.org/type/Organization"},"schemaVersion":"0.1.0"}}],"description":"Current employer","title":"Employer","annotations":{"meta":{"referenceProperty":"name"}}},"jobTitle":{"type":"string","title":"Job Title"},"department":{"type":"string","title":"Department"},"notes":{"type":"string","title":"Notes"},"emails":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string","description":"Email address","title":"Email","default":"hello@email.com","pattern":"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$","annotations":{"generator":"internet.email"},"format":"email"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"identities":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"phoneNumbers":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["label","value"]},"title":"Phone Numbers"},"addresses":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"object","required":[],"properties":{"street":{"type":"string","description":"The street address.","examples":["1600 Amphitheatre Pkwy"]},"extended":{"type":"string","description":"An address extension such as an apartment number, C/O or alternative name.","examples":["Apt 1","Suite 2"]},"locality":{"type":"string","description":"The locality in which the street address is, and which is in the region.","examples":["Mountain View","Bangkok"]},"region":{"type":"string","description":"The region in which the locality is, and which is in the country.","examples":["CA","NY"]},"postalCode":{"type":"string","description":"The postal code.","examples":["12345","A1A 1A1"]},"postOfficeBoxNumber":{"type":"string","description":"The post office box number for PO Box addresses."},"country":{"type":"string","description":"The country in 2-letter ISO 3166-1 alpha-2 format.","examples":["US","SG"]}},"additionalProperties":false,"propertyOrder":["street","extended","locality","region","postalCode","postOfficeBoxNumber","country"]}},"additionalProperties":false,"propertyOrder":["label","value"]}},"urls":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string","description":"URL","title":"URL","default":"https://example.com","pattern":"^(\\w+?:\\/\\/)?([\\da-z.-]+)\\.([a-z.]{2,6})([/\\w .-]*)*\\/?$","annotations":{"generator":"internet.url"},"format":"url"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"birthday":{"type":"string","title":"Birthday","annotations":{"generator":"date.iso8601"}},"fields":{"type":"array","items":{"type":"object","required":["label","value"],"properties":{"category":{"type":"string"},"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["category","label","value"]}},"location":{"type":"array","minItems":2,"items":[{"type":"number","title":"Longitude"},{"type":"number","title":"Latitude"},{"type":"number","title":"Height ASL (m)"}],"additionalItems":false,"description":"GeoJSON Position","title":"Location","format":"lnglat"}},"required":["id"],"propertyOrder":["fullName","preferredName","nickname","image","organization","jobTitle","department","notes","emails","identities","phoneNumbers","addresses","urls","birthday","fields","location","id"],"additionalProperties":false,"title":"Person","annotations":{"labelProp":["preferredName","fullName","nickname"]}},"kind":"record"},{"typename":"dxos.org/type/Tag","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Tag","entityKind":"object","typename":"dxos.org/type/Tag","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"},"hue":{"type":"string"}},"required":["label","id"],"propertyOrder":["label","hue","id"],"additionalProperties":false,"annotations":{"labelProp":["label"]}},"kind":"record"},{"typename":"example.com/type/Expando","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:example.com/type/Expando","entityKind":"object","typename":"example.com/type/Expando","version":"0.1.0","type":"object","properties":{"id":{"type":"string"}},"required":["id"],"propertyOrder":["id"],"additionalProperties":{"$id":"/schemas/any","title":"any"}},"kind":"record"}],"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_016dxRdtS7eQ3VeU8JCfnw1U","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"Base","metadata":{}},{"type":"text-delta","id":"0","delta":"d on the","metadata":{}},{"type":"text-delta","id":"0","delta":" available","metadata":{}},{"type":"text-delta","id":"0","delta":" schemas","metadata":{}},{"type":"text-delta","id":"0","delta":",","metadata":{}},{"type":"text-delta","id":"0","delta":" here","metadata":{}},{"type":"text-delta","id":"0","delta":" are","metadata":{}},{"type":"text-delta","id":"0","delta":" the typ","metadata":{}},{"type":"text-delta","id":"0","delta":"enames that are","metadata":{}},{"type":"text-delta","id":"0","delta":" available","metadata":{}},{"type":"text-delta","id":"0","delta":" in","metadata":{}},{"type":"text-delta","id":"0","delta":" your","metadata":{}},{"type":"text-delta","id":"0","delta":" ECHO","metadata":{}},{"type":"text-delta","id":"0","delta":" space","metadata":{}},{"type":"text-delta","id":"0","delta":":\n\n##","metadata":{}},{"type":"text-delta","id":"0","delta":" Available Typenames:","metadata":{}},{"type":"text-delta","id":"0","delta":"\n\n###","metadata":{}},{"type":"text-delta","id":"0","delta":" Object","metadata":{}},{"type":"text-delta","id":"0","delta":" Types:\n1. **`","metadata":{}},{"type":"text-delta","id":"0","delta":"dxos.org/type/Blueprint","metadata":{}},{"type":"text-delta","id":"0","delta":"`** - For","metadata":{}},{"type":"text-delta","id":"0","delta":" storing","metadata":{}},{"type":"text-delta","id":"0","delta":" AI","metadata":{}},{"type":"text-delta","id":"0","delta":" assistant","metadata":{}},{"type":"text-delta","id":"0","delta":" blueprints with","metadata":{}},{"type":"text-delta","id":"0","delta":" instructions","metadata":{}},{"type":"text-delta","id":"0","delta":" and tool","metadata":{}},{"type":"text-delta","id":"0","delta":" configurations","metadata":{}},{"type":"text-delta","id":"0","delta":"\n2. **`dxos","metadata":{}},{"type":"text-delta","id":"0","delta":".org/type/Organization","metadata":{}},{"type":"text-delta","id":"0","delta":"`** - For organization","metadata":{}},{"type":"text-delta","id":"0","delta":"/","metadata":{}},{"type":"text-delta","id":"0","delta":"company records","metadata":{}},{"type":"text-delta","id":"0","delta":" with","metadata":{}},{"type":"text-delta","id":"0","delta":" fields","metadata":{}},{"type":"text-delta","id":"0","delta":" like name, description, status","metadata":{}},{"type":"text-delta","id":"0","delta":",","metadata":{}},{"type":"text-delta","id":"0","delta":" website","metadata":{}},{"type":"text-delta","id":"0","delta":", an","metadata":{}},{"type":"text-delta","id":"0","delta":"d location","metadata":{}},{"type":"text-delta","id":"0","delta":"\n3. **`dxos","metadata":{}},{"type":"text-delta","id":"0","delta":".org/type/Person`**","metadata":{}},{"type":"text-delta","id":"0","delta":" - For person/","metadata":{}},{"type":"text-delta","id":"0","delta":"contact records with comprehensive","metadata":{}},{"type":"text-delta","id":"0","delta":" fields including name, contact","metadata":{}},{"type":"text-delta","id":"0","delta":" information, employer","metadata":{}},{"type":"text-delta","id":"0","delta":", and addresses","metadata":{}},{"type":"text-delta","id":"0","delta":"\n4. **`dxos","metadata":{}},{"type":"text-delta","id":"0","delta":".org/type/Tag`**","metadata":{}},{"type":"text-delta","id":"0","delta":" - For creating","metadata":{}},{"type":"text-delta","id":"0","delta":" tags","metadata":{}},{"type":"text-delta","id":"0","delta":" that","metadata":{}},{"type":"text-delta","id":"0","delta":" can be applied to other objects\n5","metadata":{}},{"type":"text-delta","id":"0","delta":". **`example","metadata":{}},{"type":"text-delta","id":"0","delta":".com/type/Expan","metadata":{}},{"type":"text-delta","id":"0","delta":"do`** - A","metadata":{}},{"type":"text-delta","id":"0","delta":" flexible object","metadata":{}},{"type":"text-delta","id":"0","delta":" type that allows additional","metadata":{}},{"type":"text-delta","id":"0","delta":" properties","metadata":{}},{"type":"text-delta","id":"0","delta":" beyon","metadata":{}},{"type":"text-delta","id":"0","delta":"d just","metadata":{}},{"type":"text-delta","id":"0","delta":" the ID","metadata":{}},{"type":"text-delta","id":"0","delta":"\n\n###","metadata":{}},{"type":"text-delta","id":"0","delta":" Relation","metadata":{}},{"type":"text-delta","id":"0","delta":" Types:\n1","metadata":{}},{"type":"text-delta","id":"0","delta":". **`dxos.org","metadata":{}},{"type":"text-delta","id":"0","delta":"/relation/","metadata":{}},{"type":"text-delta","id":"0","delta":"Employer","metadata":{}},{"type":"text-delta","id":"0","delta":"`** - For establishing","metadata":{}},{"type":"text-delta","id":"0","delta":" employer","metadata":{}},{"type":"text-delta","id":"0","delta":" relationships","metadata":{}},{"type":"text-delta","id":"0","delta":" between","metadata":{}},{"type":"text-delta","id":"0","delta":" Person and Organization objects","metadata":{}},{"type":"text-delta","id":"0","delta":"\n\nThese","metadata":{}},{"type":"text-delta","id":"0","delta":" schemas","metadata":{}},{"type":"text-delta","id":"0","delta":" define","metadata":{}},{"type":"text-delta","id":"0","delta":" the","metadata":{}},{"type":"text-delta","id":"0","delta":" structure and validation rules for different","metadata":{}},{"type":"text-delta","id":"0","delta":" types of data","metadata":{}},{"type":"text-delta","id":"0","delta":" you","metadata":{}},{"type":"text-delta","id":"0","delta":" can store in","metadata":{}},{"type":"text-delta","id":"0","delta":" ECHO. Each","metadata":{}},{"type":"text-delta","id":"0","delta":" typename follows","metadata":{}},{"type":"text-delta","id":"0","delta":" a reverse","metadata":{}},{"type":"text-delta","id":"0","delta":" domain","metadata":{}},{"type":"text-delta","id":"0","delta":" notation","metadata":{}},{"type":"text-delta","id":"0","delta":" format (e","metadata":{}},{"type":"text-delta","id":"0","delta":".g., `organization","metadata":{}},{"type":"text-delta","id":"0","delta":".org","metadata":{}},{"type":"text-delta","id":"0","delta":"/type/Type","metadata":{}},{"type":"text-delta","id":"0","delta":"Name`)","metadata":{}},{"type":"text-delta","id":"0","delta":" to","metadata":{}},{"type":"text-delta","id":"0","delta":" ensure uniqueness across","metadata":{}},{"type":"text-delta","id":"0","delta":" different","metadata":{}},{"type":"text-delta","id":"0","delta":" systems","metadata":{}},{"type":"text-delta","id":"0","delta":".","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"finish","reason":"stop","usage":{"inputTokens":6,"outputTokens":275,"totalTokens":281},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":8615},"cache_creation_input_tokens":8615,"cache_read_input_tokens":0,"input_tokens":6,"output_tokens":1,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Add a new schema called \"Project\" with typename \"example.com/type/Project\" and fields: name (string), description (string), and status (string).","options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01A5msv9aW6Kn911H1nmVWxJ","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"reasoning-start","id":"0","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"The user wants to","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" add a new schema called \"Project\"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" with the","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" typename \"example.com/type/","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"Project\" and specific fields. I","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" need to use the add-schema function","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" with","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" the appropriate","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" JSON","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" schema","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" format","metadata":{}},{"type":"reasoning-delta","id":"0","delta":".\n\nThe","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" fields","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" require","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"d are:\n- name:","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" string\n- description: string ","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"\n- status: string\n\nI","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" need to format this as a JSON schema","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" object.","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{"anthropic":{"type":"thinking","signature":"Eu4DCkYICxgCKkBdGnU5HoqdgALaO95tKLkgdftCHwnXu2m44pwgP6HKfI5DxyDA2Q2mZuvzdf2ofeQTjD8i/NJrXQZWyE9l1/O8EgxCRdaClmR/WjZghDgaDPKvir8CpeCbC1YGiyIw8nZAQHUal3yTWkOgRExUXHQT9pDAXkXDZR2GueR4F08FYNK0dBnNX6WgBgIBzJwzKtUCAgmxw+LBV6MB/w3P2bX8ArglPBuy7X8dgJ9NQrEknmhNKGGi0SZbgS+3EW9Hl5wKexld8c9dOLcHT508eY/2aY37a9ozNGB01kR/vL3BTwIX334q54lA91VCKVsFgpU9/UA8TVMxdsIYnB0c4lPZLSxhUMSxN0SRwpFRAH+Fj+jqRZwy5mIyqKva2DrR6emekrfZCPp5iIFXvId0u6nixo8ixYY/ylhLjaThtKzffpYLH/Vtsd6WJi08CJkBkprMOkZqQX+tCOcBkxrybN7eu5mMikiU6tChKfts86fzDqWg4PdoP0WWHcdVYrb5u5O1PgsbObu6JA8pm1nj2yK4yJO8Df0UVZCN1Bhkr2FPULObKeFm8XX/nCI8qx5A3PI7K0GxCZU651zBvDNvEc2FUtpV/5VbBCtedV3H1XR9MRTKhKelVHV+zsK7+Wtzgxq/ViEDK3EYAQ=="}}},{"type":"reasoning-end","id":"0","metadata":{}},{"type":"text-start","id":"1","metadata":{}},{"type":"text-delta","id":"1","delta":"I'll add the new Project","metadata":{}},{"type":"text-delta","id":"1","delta":" schema with","metadata":{}},{"type":"text-delta","id":"1","delta":" the specifie","metadata":{}},{"type":"text-delta","id":"1","delta":"d fields.","metadata":{}},{"type":"text-end","id":"1","metadata":{}},{"type":"tool-params-start","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","name":"add-schema","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"{\"nam","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"e\": ","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"\"Proje","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"ct\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":", \"ty","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"penam","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"e\": \"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"example.com","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"/t","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"ype/Projec","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"t\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":", \"jsonS","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"chema\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":": {\"type\":\"o","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"bje","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"ct\",\"prope","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"rties\":{\"n","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"ame\":{\"type","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"\":\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"strin","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"g\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":",\"descript","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"ion\":\"The ","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"name of th","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"e projec","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"t\"},\"des","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"cri","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"ption\":","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"{\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"type\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":":\"string\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":",\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"des","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"cription\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":":\"A descri","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"ption ","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"of the","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":" projec","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"t\"},\"s","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"tatus\":{\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"type\":\"stri","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"ng\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":",\"de","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"scripti","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"on\":\"The c","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"ur","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"rent ","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"stat","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"us","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":" of the","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":" pro","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"ject","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"\"}},\"r","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"equired","metadata":{}},{"type":"tool-params-delta","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","delta":"\":[\"name\"]}}","metadata":{}},{"type":"tool-params-end","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":10,"outputTokens":307,"totalTokens":317},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":5682},"cache_creation_input_tokens":5682,"cache_read_input_tokens":0,"input_tokens":10,"output_tokens":4,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Add a new schema called \"Project\" with typename \"example.com/type/Project\" and fields: name (string), description (string), and status (string).","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to add a new schema called \"Project\" with the typename \"example.com/type/Project\" and specific fields. I need to use the add-schema function with the appropriate JSON schema format.\n\nThe fields required are:\n- name: string\n- description: string \n- status: string\n\nI need to format this as a JSON schema object.","options":{}},{"type":"text","text":"I'll add the new Project schema with the specified fields.","options":{}},{"type":"tool-call","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","name":"add-schema","params":{"name":"Project","typename":"example.com/type/Project","jsonSchema":{"type":"object","properties":{"name":{"type":"string","description":"The name of the project"},"description":{"type":"string","description":"A description of the project"},"status":{"type":"string","description":"The current status of the project"}},"required":["name"]}},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_014nADgsiMtT8BQyNFjCmdWn","name":"add-schema","isFailure":false,"result":{},"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_015vzLSbfVy2h8WahdE2gutC","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"The Project","metadata":{}},{"type":"text-delta","id":"0","delta":" schema has been successfully added with","metadata":{}},{"type":"text-delta","id":"0","delta":":","metadata":{}},{"type":"text-delta","id":"0","delta":"\n- **","metadata":{}},{"type":"text-delta","id":"0","delta":"Name**: Project","metadata":{}},{"type":"text-delta","id":"0","delta":"\n- **","metadata":{}},{"type":"text-delta","id":"0","delta":"Typename**: example.com/type/","metadata":{}},{"type":"text-delta","id":"0","delta":"Project\n- **Fields**","metadata":{}},{"type":"text-delta","id":"0","delta":":\n - `","metadata":{}},{"type":"text-delta","id":"0","delta":"name`","metadata":{}},{"type":"text-delta","id":"0","delta":" (string)","metadata":{}},{"type":"text-delta","id":"0","delta":" - required fiel","metadata":{}},{"type":"text-delta","id":"0","delta":"d\n - `description` (string","metadata":{}},{"type":"text-delta","id":"0","delta":") - optional","metadata":{}},{"type":"text-delta","id":"0","delta":" field\n - `status` (","metadata":{}},{"type":"text-delta","id":"0","delta":"string) - optional field\n\nThe schema","metadata":{}},{"type":"text-delta","id":"0","delta":" is now available for","metadata":{}},{"type":"text-delta","id":"0","delta":" creating","metadata":{}},{"type":"text-delta","id":"0","delta":" new","metadata":{}},{"type":"text-delta","id":"0","delta":" Project objects in","metadata":{}},{"type":"text-delta","id":"0","delta":" the space","metadata":{}},{"type":"text-delta","id":"0","delta":".","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"finish","reason":"stop","usage":{"inputTokens":5,"outputTokens":88,"totalTokens":93},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":5851},"cache_creation_input_tokens":5851,"cache_read_input_tokens":0,"input_tokens":5,"output_tokens":2,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Create a new organization called \"Cyberdyne Systems\".","options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01VoEmRsEjeRSWrQ2VHuqY19","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"reasoning-start","id":"0","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"The user wants to create a new organization","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" called \"Cyberdyne Systems\".","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" I need to:","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"\n1. First","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" list","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" the available schemas","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" to fin","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"d the correct","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" typename","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" for an organization\n2. Then","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" create the organization with","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" the proper data","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" structure","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"\n\nLet","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" me start by listing","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" schemas to","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" find the organization","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" type.","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{"anthropic":{"type":"thinking","signature":"EswDCkYICxgCKkCej5r/xamTBHeIU9OyHU7GY/6h4XzPPZMU2gU38f8aoITvla02w4f+kXyHWuxxeew1bkFKT5GKFBec0NhxUL7mEgybCIOGyDrTmlVISRAaDOxmuIPbW0fRkEBNniIwNE8DUVSenZmQULH8BcuxpU7GCXTQNK3uROyuePWXy0xv8y6kvOISl1kIr3M66W31KrMCtSSViCMeteKc+Z0Ix65vhtKPh5wNlCdyLs7Hq9tOTMeLsExhe53uelYzmf7GXTahipMed1oCKyO+qSLmbVlxOjtLYJUODsC81J5y+li96Riad6zozI3YvqCeliDjUaJKc/5aE9sCI0lMGIIIIJ1hWQM2xWBuB9ojR4Ej4QhMRJQbcw8M0BApG7VTsbmI5PCTsNtEQUwHLvwX7SLLcwdGFhQaqFso36a45YbdJN8RvAePfX2gY/G6VnGxWsMdDajZ5Kfyyc+cAIcbTk0u36IKyRhYacLIxhFcZBQILZNBbzB60vJMBVLgohGdqlJxRoFUqtUC/odgJdbaUHXyNd+Y9vEF/J4q3t6VvYy9vS3JubKIBpx1JPCl2Y12z/j7BE0ooq1FETyPFLlvwyUT/KLPKIirMRgB"}}},{"type":"reasoning-end","id":"0","metadata":{}},{"type":"text-start","id":"1","metadata":{}},{"type":"text-delta","id":"1","delta":"I'll help you create a","metadata":{}},{"type":"text-delta","id":"1","delta":" new organization called \"Cyberdyne","metadata":{}},{"type":"text-delta","id":"1","delta":" Systems\". First","metadata":{}},{"type":"text-delta","id":"1","delta":", let me check the","metadata":{}},{"type":"text-delta","id":"1","delta":" available schemas to find the correct organization","metadata":{}},{"type":"text-delta","id":"1","delta":" type.","metadata":{}},{"type":"text-end","id":"1","metadata":{}},{"type":"tool-params-start","id":"toolu_01NwtiuUf7impfdWCedcJQjH","name":"list-schemas","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01NwtiuUf7impfdWCedcJQjH","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01NwtiuUf7impfdWCedcJQjH","delta":"{\"limit\": ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01NwtiuUf7impfdWCedcJQjH","delta":"20}","metadata":{}},{"type":"tool-params-end","id":"toolu_01NwtiuUf7impfdWCedcJQjH","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":10,"outputTokens":154,"totalTokens":164},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":5659},"cache_creation_input_tokens":5659,"cache_read_input_tokens":0,"input_tokens":10,"output_tokens":8,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Create a new organization called \"Cyberdyne Systems\".","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to create a new organization called \"Cyberdyne Systems\". I need to:\n1. First list the available schemas to find the correct typename for an organization\n2. Then create the organization with the proper data structure\n\nLet me start by listing schemas to find the organization type.","options":{}},{"type":"text","text":"I'll help you create a new organization called \"Cyberdyne Systems\". First, let me check the available schemas to find the correct organization type.","options":{}},{"type":"tool-call","id":"toolu_01NwtiuUf7impfdWCedcJQjH","name":"list-schemas","params":{"limit":20},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01NwtiuUf7impfdWCedcJQjH","name":"list-schemas","isFailure":false,"result":[{"typename":"dxos.org/relation/Employer","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/relation/Employer","entityKind":"relation","typename":"dxos.org/relation/Employer","version":"0.1.0","relationTarget":{"$ref":"dxn:type:dxos.org/type/Organization"},"relationSource":{"$ref":"dxn:type:dxos.org/type/Person"},"type":"object","properties":{"id":{"type":"string","description":"A Universally Unique Lexicographically Sortable Identifier","pattern":"^[0-7][0-9A-HJKMNP-TV-Z]{25}$"},"role":{"type":"string"},"active":{"type":"boolean"},"startDate":{"type":"string"},"endDate":{"type":"string"}},"required":["id"],"propertyOrder":["id","role","active","startDate","endDate"],"additionalProperties":false,"description":"An employing organization of a person."},"kind":"relation"},{"typename":"dxos.org/type/Blueprint","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Blueprint","entityKind":"object","typename":"dxos.org/type/Blueprint","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"key":{"type":"string","description":"Unique registration key for the blueprint"},"name":{"type":"string","description":"Human-readable name of the blueprint"},"description":{"type":"string","description":"Description of the blueprint's purpose and functionality"},"instructions":{"type":"object","required":["source"],"properties":{"source":{"allOf":[{"$id":"/schemas/echo/ref","$ref":"/schemas/echo/ref","reference":{"schema":{"$ref":"dxn:type:dxos.org/type/Text"},"schemaVersion":"0.1.0"}}],"description":"Handlebars template source"},"inputs":{"type":"array","items":{"type":"object","required":["name"],"properties":{"name":{"type":"string"},"kind":{"type":"string","enum":["value","pass-through","retriever","function","query","resolver","context","schema"]},"default":{"$id":"/schemas/any","title":"any"},"function":{"type":"string"}},"additionalProperties":false,"propertyOrder":["name","kind","default","function"]}}},"additionalProperties":false,"description":"Instructions that guide the AI assistant's behavior and responses","propertyOrder":["source","inputs"]},"tools":{"type":"array","items":{"$ref":"#/$defs/ToolId"},"description":"Array of tools that the AI assistant can use when this blueprint is active"},"mcpServers":{"type":"array","items":{"type":"object","required":["url","protocol"],"properties":{"url":{"type":"string","description":"URL of the MCP server"},"protocol":{"type":"string","enum":["sse","http"],"description":"Protocol of the MCP server"}},"additionalProperties":false,"propertyOrder":["url","protocol"]}}},"required":["key","name","instructions","tools","id"],"propertyOrder":["key","name","description","instructions","tools","mcpServers","id"],"additionalProperties":false,"annotations":{"meta":{"dxos.org/annotation/Icon":{"icon":"ph--blueprint--regular","hue":"blue"}},"labelProp":["name"]}},"kind":"record"},{"typename":"dxos.org/type/Organization","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Organization","entityKind":"object","typename":"dxos.org/type/Organization","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"name":{"type":"string","title":"Name","annotations":{"generator":{"generator":"company.name","probability":1}}},"description":{"type":"string","title":"Description","annotations":{"generator":{"generator":"lorem.paragraphs","args":[{"min":1,"max":3}]}}},"status":{"type":"string","enum":["prospect","qualified","active","commit","reject"],"title":"Status","annotations":{"meta":{"singleSelect":{"options":[{"id":"prospect","title":"Prospect","color":"indigo"},{"id":"qualified","title":"Qualified","color":"purple"},{"id":"active","title":"Active","color":"amber"},{"id":"commit","title":"Commit","color":"emerald"},{"id":"reject","title":"Reject","color":"red"}]}},"generator":{"generator":"helpers.arrayElement","args":[["prospect","qualified","active","commit","reject"]]}},"format":"single-select"},"image":{"type":"string","title":"Image","annotations":{"generator":"image.url"}},"website":{"type":"string","title":"Website","annotations":{"generator":"internet.url"}},"location":{"type":"array","minItems":2,"items":[{"type":"number","title":"Longitude"},{"type":"number","title":"Latitude"},{"type":"number","title":"Height ASL (m)"}],"additionalItems":false,"description":"GeoJSON Position","title":"Location","format":"lnglat"}},"required":["id"],"propertyOrder":["name","description","status","image","website","location","id"],"additionalProperties":false,"description":"An organization.","title":"Organization","annotations":{"labelProp":["name"]}},"kind":"record"},{"typename":"dxos.org/type/Person","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Person","entityKind":"object","typename":"dxos.org/type/Person","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"fullName":{"type":"string","title":"Full Name","annotations":{"generator":{"generator":"person.fullName","probability":1}}},"preferredName":{"type":"string","title":"Preferred Name"},"nickname":{"type":"string","title":"Nickname"},"image":{"type":"string","title":"Image"},"organization":{"allOf":[{"$id":"/schemas/echo/ref","$ref":"/schemas/echo/ref","reference":{"schema":{"$ref":"dxn:type:dxos.org/type/Organization"},"schemaVersion":"0.1.0"}}],"description":"Current employer","title":"Employer","annotations":{"meta":{"referenceProperty":"name"}}},"jobTitle":{"type":"string","title":"Job Title"},"department":{"type":"string","title":"Department"},"notes":{"type":"string","title":"Notes"},"emails":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string","description":"Email address","title":"Email","default":"hello@email.com","pattern":"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$","annotations":{"generator":"internet.email"},"format":"email"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"identities":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"phoneNumbers":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["label","value"]},"title":"Phone Numbers"},"addresses":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"object","required":[],"properties":{"street":{"type":"string","description":"The street address.","examples":["1600 Amphitheatre Pkwy"]},"extended":{"type":"string","description":"An address extension such as an apartment number, C/O or alternative name.","examples":["Apt 1","Suite 2"]},"locality":{"type":"string","description":"The locality in which the street address is, and which is in the region.","examples":["Mountain View","Bangkok"]},"region":{"type":"string","description":"The region in which the locality is, and which is in the country.","examples":["CA","NY"]},"postalCode":{"type":"string","description":"The postal code.","examples":["12345","A1A 1A1"]},"postOfficeBoxNumber":{"type":"string","description":"The post office box number for PO Box addresses."},"country":{"type":"string","description":"The country in 2-letter ISO 3166-1 alpha-2 format.","examples":["US","SG"]}},"additionalProperties":false,"propertyOrder":["street","extended","locality","region","postalCode","postOfficeBoxNumber","country"]}},"additionalProperties":false,"propertyOrder":["label","value"]}},"urls":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string","description":"URL","title":"URL","default":"https://example.com","pattern":"^(\\w+?:\\/\\/)?([\\da-z.-]+)\\.([a-z.]{2,6})([/\\w .-]*)*\\/?$","annotations":{"generator":"internet.url"},"format":"url"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"birthday":{"type":"string","title":"Birthday","annotations":{"generator":"date.iso8601"}},"fields":{"type":"array","items":{"type":"object","required":["label","value"],"properties":{"category":{"type":"string"},"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["category","label","value"]}},"location":{"type":"array","minItems":2,"items":[{"type":"number","title":"Longitude"},{"type":"number","title":"Latitude"},{"type":"number","title":"Height ASL (m)"}],"additionalItems":false,"description":"GeoJSON Position","title":"Location","format":"lnglat"}},"required":["id"],"propertyOrder":["fullName","preferredName","nickname","image","organization","jobTitle","department","notes","emails","identities","phoneNumbers","addresses","urls","birthday","fields","location","id"],"additionalProperties":false,"title":"Person","annotations":{"labelProp":["preferredName","fullName","nickname"]}},"kind":"record"},{"typename":"dxos.org/type/Tag","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Tag","entityKind":"object","typename":"dxos.org/type/Tag","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"},"hue":{"type":"string"}},"required":["label","id"],"propertyOrder":["label","hue","id"],"additionalProperties":false,"annotations":{"labelProp":["label"]}},"kind":"record"},{"typename":"example.com/type/Expando","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:example.com/type/Expando","entityKind":"object","typename":"example.com/type/Expando","version":"0.1.0","type":"object","properties":{"id":{"type":"string"}},"required":["id"],"propertyOrder":["id"],"additionalProperties":{"$id":"/schemas/any","title":"any"}},"kind":"record"}],"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01KxN5U1yg5KNfL7oeAzA3XB","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"Perfect! I foun","metadata":{}},{"type":"text-delta","id":"0","delta":"d the Organization","metadata":{}},{"type":"text-delta","id":"0","delta":" schema. Now I'll","metadata":{}},{"type":"text-delta","id":"0","delta":" create","metadata":{}},{"type":"text-delta","id":"0","delta":" a new organization","metadata":{}},{"type":"text-delta","id":"0","delta":" calle","metadata":{}},{"type":"text-delta","id":"0","delta":"d \"Cyb","metadata":{}},{"type":"text-delta","id":"0","delta":"er","metadata":{}},{"type":"text-delta","id":"0","delta":"dyne Systems\".","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"tool-params-start","id":"toolu_01Q7LLPEK8Y79J8nbrvXaCFR","name":"create-object","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01Q7LLPEK8Y79J8nbrvXaCFR","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Q7LLPEK8Y79J8nbrvXaCFR","delta":"{\"typename\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Q7LLPEK8Y79J8nbrvXaCFR","delta":": ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Q7LLPEK8Y79J8nbrvXaCFR","delta":"\"dxos.org","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Q7LLPEK8Y79J8nbrvXaCFR","delta":"/type/","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Q7LLPEK8Y79J8nbrvXaCFR","delta":"Or","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Q7LLPEK8Y79J8nbrvXaCFR","delta":"ganization\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Q7LLPEK8Y79J8nbrvXaCFR","delta":", \"data\": ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Q7LLPEK8Y79J8nbrvXaCFR","delta":"{\"name","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Q7LLPEK8Y79J8nbrvXaCFR","delta":"\":\"Cyb","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Q7LLPEK8Y79J8nbrvXaCFR","delta":"erdyne Sys","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Q7LLPEK8Y79J8nbrvXaCFR","delta":"tems\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Q7LLPEK8Y79J8nbrvXaCFR","delta":"}}","metadata":{}},{"type":"tool-params-end","id":"toolu_01Q7LLPEK8Y79J8nbrvXaCFR","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":6,"outputTokens":115,"totalTokens":121},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":8652},"cache_creation_input_tokens":8652,"cache_read_input_tokens":0,"input_tokens":6,"output_tokens":4,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Create a new organization called \"Cyberdyne Systems\".","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to create a new organization called \"Cyberdyne Systems\". I need to:\n1. First list the available schemas to find the correct typename for an organization\n2. Then create the organization with the proper data structure\n\nLet me start by listing schemas to find the organization type.","options":{}},{"type":"text","text":"I'll help you create a new organization called \"Cyberdyne Systems\". First, let me check the available schemas to find the correct organization type.","options":{}},{"type":"tool-call","id":"toolu_01NwtiuUf7impfdWCedcJQjH","name":"list-schemas","params":{"limit":20},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01NwtiuUf7impfdWCedcJQjH","name":"list-schemas","isFailure":false,"result":[{"typename":"dxos.org/relation/Employer","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/relation/Employer","entityKind":"relation","typename":"dxos.org/relation/Employer","version":"0.1.0","relationTarget":{"$ref":"dxn:type:dxos.org/type/Organization"},"relationSource":{"$ref":"dxn:type:dxos.org/type/Person"},"type":"object","properties":{"id":{"type":"string","description":"A Universally Unique Lexicographically Sortable Identifier","pattern":"^[0-7][0-9A-HJKMNP-TV-Z]{25}$"},"role":{"type":"string"},"active":{"type":"boolean"},"startDate":{"type":"string"},"endDate":{"type":"string"}},"required":["id"],"propertyOrder":["id","role","active","startDate","endDate"],"additionalProperties":false,"description":"An employing organization of a person."},"kind":"relation"},{"typename":"dxos.org/type/Blueprint","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Blueprint","entityKind":"object","typename":"dxos.org/type/Blueprint","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"key":{"type":"string","description":"Unique registration key for the blueprint"},"name":{"type":"string","description":"Human-readable name of the blueprint"},"description":{"type":"string","description":"Description of the blueprint's purpose and functionality"},"instructions":{"type":"object","required":["source"],"properties":{"source":{"allOf":[{"$id":"/schemas/echo/ref","$ref":"/schemas/echo/ref","reference":{"schema":{"$ref":"dxn:type:dxos.org/type/Text"},"schemaVersion":"0.1.0"}}],"description":"Handlebars template source"},"inputs":{"type":"array","items":{"type":"object","required":["name"],"properties":{"name":{"type":"string"},"kind":{"type":"string","enum":["value","pass-through","retriever","function","query","resolver","context","schema"]},"default":{"$id":"/schemas/any","title":"any"},"function":{"type":"string"}},"additionalProperties":false,"propertyOrder":["name","kind","default","function"]}}},"additionalProperties":false,"description":"Instructions that guide the AI assistant's behavior and responses","propertyOrder":["source","inputs"]},"tools":{"type":"array","items":{"$ref":"#/$defs/ToolId"},"description":"Array of tools that the AI assistant can use when this blueprint is active"},"mcpServers":{"type":"array","items":{"type":"object","required":["url","protocol"],"properties":{"url":{"type":"string","description":"URL of the MCP server"},"protocol":{"type":"string","enum":["sse","http"],"description":"Protocol of the MCP server"}},"additionalProperties":false,"propertyOrder":["url","protocol"]}}},"required":["key","name","instructions","tools","id"],"propertyOrder":["key","name","description","instructions","tools","mcpServers","id"],"additionalProperties":false,"annotations":{"meta":{"dxos.org/annotation/Icon":{"icon":"ph--blueprint--regular","hue":"blue"}},"labelProp":["name"]}},"kind":"record"},{"typename":"dxos.org/type/Organization","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Organization","entityKind":"object","typename":"dxos.org/type/Organization","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"name":{"type":"string","title":"Name","annotations":{"generator":{"generator":"company.name","probability":1}}},"description":{"type":"string","title":"Description","annotations":{"generator":{"generator":"lorem.paragraphs","args":[{"min":1,"max":3}]}}},"status":{"type":"string","enum":["prospect","qualified","active","commit","reject"],"title":"Status","annotations":{"meta":{"singleSelect":{"options":[{"id":"prospect","title":"Prospect","color":"indigo"},{"id":"qualified","title":"Qualified","color":"purple"},{"id":"active","title":"Active","color":"amber"},{"id":"commit","title":"Commit","color":"emerald"},{"id":"reject","title":"Reject","color":"red"}]}},"generator":{"generator":"helpers.arrayElement","args":[["prospect","qualified","active","commit","reject"]]}},"format":"single-select"},"image":{"type":"string","title":"Image","annotations":{"generator":"image.url"}},"website":{"type":"string","title":"Website","annotations":{"generator":"internet.url"}},"location":{"type":"array","minItems":2,"items":[{"type":"number","title":"Longitude"},{"type":"number","title":"Latitude"},{"type":"number","title":"Height ASL (m)"}],"additionalItems":false,"description":"GeoJSON Position","title":"Location","format":"lnglat"}},"required":["id"],"propertyOrder":["name","description","status","image","website","location","id"],"additionalProperties":false,"description":"An organization.","title":"Organization","annotations":{"labelProp":["name"]}},"kind":"record"},{"typename":"dxos.org/type/Person","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Person","entityKind":"object","typename":"dxos.org/type/Person","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"fullName":{"type":"string","title":"Full Name","annotations":{"generator":{"generator":"person.fullName","probability":1}}},"preferredName":{"type":"string","title":"Preferred Name"},"nickname":{"type":"string","title":"Nickname"},"image":{"type":"string","title":"Image"},"organization":{"allOf":[{"$id":"/schemas/echo/ref","$ref":"/schemas/echo/ref","reference":{"schema":{"$ref":"dxn:type:dxos.org/type/Organization"},"schemaVersion":"0.1.0"}}],"description":"Current employer","title":"Employer","annotations":{"meta":{"referenceProperty":"name"}}},"jobTitle":{"type":"string","title":"Job Title"},"department":{"type":"string","title":"Department"},"notes":{"type":"string","title":"Notes"},"emails":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string","description":"Email address","title":"Email","default":"hello@email.com","pattern":"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$","annotations":{"generator":"internet.email"},"format":"email"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"identities":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"phoneNumbers":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["label","value"]},"title":"Phone Numbers"},"addresses":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"object","required":[],"properties":{"street":{"type":"string","description":"The street address.","examples":["1600 Amphitheatre Pkwy"]},"extended":{"type":"string","description":"An address extension such as an apartment number, C/O or alternative name.","examples":["Apt 1","Suite 2"]},"locality":{"type":"string","description":"The locality in which the street address is, and which is in the region.","examples":["Mountain View","Bangkok"]},"region":{"type":"string","description":"The region in which the locality is, and which is in the country.","examples":["CA","NY"]},"postalCode":{"type":"string","description":"The postal code.","examples":["12345","A1A 1A1"]},"postOfficeBoxNumber":{"type":"string","description":"The post office box number for PO Box addresses."},"country":{"type":"string","description":"The country in 2-letter ISO 3166-1 alpha-2 format.","examples":["US","SG"]}},"additionalProperties":false,"propertyOrder":["street","extended","locality","region","postalCode","postOfficeBoxNumber","country"]}},"additionalProperties":false,"propertyOrder":["label","value"]}},"urls":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string","description":"URL","title":"URL","default":"https://example.com","pattern":"^(\\w+?:\\/\\/)?([\\da-z.-]+)\\.([a-z.]{2,6})([/\\w .-]*)*\\/?$","annotations":{"generator":"internet.url"},"format":"url"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"birthday":{"type":"string","title":"Birthday","annotations":{"generator":"date.iso8601"}},"fields":{"type":"array","items":{"type":"object","required":["label","value"],"properties":{"category":{"type":"string"},"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["category","label","value"]}},"location":{"type":"array","minItems":2,"items":[{"type":"number","title":"Longitude"},{"type":"number","title":"Latitude"},{"type":"number","title":"Height ASL (m)"}],"additionalItems":false,"description":"GeoJSON Position","title":"Location","format":"lnglat"}},"required":["id"],"propertyOrder":["fullName","preferredName","nickname","image","organization","jobTitle","department","notes","emails","identities","phoneNumbers","addresses","urls","birthday","fields","location","id"],"additionalProperties":false,"title":"Person","annotations":{"labelProp":["preferredName","fullName","nickname"]}},"kind":"record"},{"typename":"dxos.org/type/Tag","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Tag","entityKind":"object","typename":"dxos.org/type/Tag","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"},"hue":{"type":"string"}},"required":["label","id"],"propertyOrder":["label","hue","id"],"additionalProperties":false,"annotations":{"labelProp":["label"]}},"kind":"record"},{"typename":"example.com/type/Expando","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:example.com/type/Expando","entityKind":"object","typename":"example.com/type/Expando","version":"0.1.0","type":"object","properties":{"id":{"type":"string"}},"required":["id"],"propertyOrder":["id"],"additionalProperties":{"$id":"/schemas/any","title":"any"}},"kind":"record"}],"providerExecuted":false,"options":{}}],"options":{}},{"role":"assistant","content":[{"type":"text","text":"Perfect! I found the Organization schema. Now I'll create a new organization called \"Cyberdyne Systems\".","options":{}},{"type":"tool-call","id":"toolu_01Q7LLPEK8Y79J8nbrvXaCFR","name":"create-object","params":{"typename":"dxos.org/type/Organization","data":{"name":"Cyberdyne Systems"}},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01Q7LLPEK8Y79J8nbrvXaCFR","name":"create-object","isFailure":false,"result":{"id":"01JGFJJZ00G0WKQSJGMAKCNT9T","@type":"dxn:type:dxos.org/type/Organization:0.1.0","@meta":{"keys":[]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNT9T","name":"Cyberdyne Systems"},"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_0112ye3UnLttR2vEbM4xfG4m","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"Great! I've successfully created a","metadata":{}},{"type":"text-delta","id":"0","delta":" new organization","metadata":{}},{"type":"text-delta","id":"0","delta":" called \"Cyberdyne Systems\".","metadata":{}},{"type":"text-delta","id":"0","delta":" The organization has been create","metadata":{}},{"type":"text-delta","id":"0","delta":"d with the following","metadata":{}},{"type":"text-delta","id":"0","delta":" details","metadata":{}},{"type":"text-delta","id":"0","delta":":\n\n- **Name","metadata":{}},{"type":"text-delta","id":"0","delta":":** Cyberdyne Systems","metadata":{}},{"type":"text-delta","id":"0","delta":"\n- **ID:** 01J","metadata":{}},{"type":"text-delta","id":"0","delta":"GFJJZ00G0","metadata":{}},{"type":"text-delta","id":"0","delta":"WKQSJGMAKCNT","metadata":{}},{"type":"text-delta","id":"0","delta":"9T\n- **D","metadata":{}},{"type":"text-delta","id":"0","delta":"XN:**","metadata":{}},{"type":"text-delta","id":"0","delta":" ","metadata":{}},{"type":"text-delta","id":"0","delta":"dxn:echo:BDJ","metadata":{}},{"type":"text-delta","id":"0","delta":"XMULPW5FB55","metadata":{}},{"type":"text-delta","id":"0","delta":"UZ7KP5HL","metadata":{}},{"type":"text-delta","id":"0","delta":"DHVTXUTHE2U","metadata":{}},{"type":"text-delta","id":"0","delta":":01JGFJJZ","metadata":{}},{"type":"text-delta","id":"0","delta":"00G0WKQSJ","metadata":{}},{"type":"text-delta","id":"0","delta":"GMAKCNT9T\n\nThe","metadata":{}},{"type":"text-delta","id":"0","delta":" organization is now store","metadata":{}},{"type":"text-delta","id":"0","delta":"d in your","metadata":{}},{"type":"text-delta","id":"0","delta":" ECHO","metadata":{}},{"type":"text-delta","id":"0","delta":" space","metadata":{}},{"type":"text-delta","id":"0","delta":".","metadata":{}},{"type":"text-delta","id":"0","delta":" You","metadata":{}},{"type":"text-delta","id":"0","delta":" can update","metadata":{}},{"type":"text-delta","id":"0","delta":" it with additional information","metadata":{}},{"type":"text-delta","id":"0","delta":" like","metadata":{}},{"type":"text-delta","id":"0","delta":" description","metadata":{}},{"type":"text-delta","id":"0","delta":", status","metadata":{}},{"type":"text-delta","id":"0","delta":", website","metadata":{}},{"type":"text-delta","id":"0","delta":", location","metadata":{}},{"type":"text-delta","id":"0","delta":", or","metadata":{}},{"type":"text-delta","id":"0","delta":" image","metadata":{}},{"type":"text-delta","id":"0","delta":" if","metadata":{}},{"type":"text-delta","id":"0","delta":" needed.","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"finish","reason":"stop","usage":{"inputTokens":6,"outputTokens":162,"totalTokens":168},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":251},"cache_creation_input_tokens":251,"cache_read_input_tokens":8652,"input_tokens":6,"output_tokens":7,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Delete the organization \"Obsolete Corp\".","options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_013cAHdodx6xV4MU3bXiRCXZ","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"reasoning-start","id":"0","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"The user wants to delete an organization name","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"d \"Obsolete Corp\". I nee","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"d to:","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"\n\n1. First","metadata":{}},{"type":"reasoning-delta","id":"0","delta":", search","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" for this","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" organization in","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" the database","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"\n2. Once","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" I","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" find it, delete","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" it using","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" the delete-object","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" function\n\nLet","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" me search","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" for it","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" first.","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{"anthropic":{"type":"thinking","signature":"EoMDCkYICxgCKkApIT5D6UrgJnO2KPV3r78Hrh+PdxdbVUuqK2LSLptDSd7IewA2/Zf5VRlJ1ysTc0Zk33xc0qT9GXuDpNwX4HSuEgxjJW0g9yv6F2G+yx0aDJHB/V5or9hDJgBKoyIwnEjDBe5deyu0zJHI/D6NotaO0I6BsVnzCP8B/rK0e8Yp7pzHMOtwCsSQJbx4KNMhKuoBJ9wyxX/AQG1Yh2aJvqN/Sk7BpolpOwg2rSa/DO/7jjyPOOGLK0KyptfyC/WJWKZvd+Jterip44C4LZPd4Kl78tIzx/xJO0XaI1Ze0RBlwS6zNKpmcp94NjsQ75QLHOdjYSPO8dHx8mp9Q77ZrUzZCSQbazNHhc2DX/Vi8uFUYKIR73zdqXbsu4QC67IYiBXNYKrWl+DUjokyKV5x+cCfRtleOh56LySWgyObZc7FVgq7W0u20pFc6imCYG8exj7AlyQcrDSjvoasj6wGsczHhPs9T3P+LG32msSNDdc7VAyyERqypmhuVOD7GAE="}}},{"type":"reasoning-end","id":"0","metadata":{}},{"type":"text-start","id":"1","metadata":{}},{"type":"text-delta","id":"1","delta":"I'll help you delete the","metadata":{}},{"type":"text-delta","id":"1","delta":" organization \"Obsolete Corp\". First","metadata":{}},{"type":"text-delta","id":"1","delta":", let me search for this","metadata":{}},{"type":"text-delta","id":"1","delta":" organization in the database.","metadata":{}},{"type":"text-end","id":"1","metadata":{}},{"type":"tool-params-start","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","name":"query","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","delta":"{\"text","metadata":{}},{"type":"tool-params-delta","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","delta":"\": \"Obsol","metadata":{}},{"type":"tool-params-delta","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","delta":"ete Corp\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","delta":", \"ty","metadata":{}},{"type":"tool-params-delta","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","delta":"pename\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","delta":": ","metadata":{}},{"type":"tool-params-delta","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","delta":"\"dxos.org/","metadata":{}},{"type":"tool-params-delta","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","delta":"type","metadata":{}},{"type":"tool-params-delta","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","delta":"/Organiza","metadata":{}},{"type":"tool-params-delta","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","delta":"tion\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","delta":", \"includeCo","metadata":{}},{"type":"tool-params-delta","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","delta":"ntent\": tr","metadata":{}},{"type":"tool-params-delta","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","delta":"ue","metadata":{}},{"type":"tool-params-delta","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","delta":", \"li","metadata":{}},{"type":"tool-params-delta","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","delta":"mit\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","delta":": 5}","metadata":{}},{"type":"tool-params-end","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":10,"outputTokens":203,"totalTokens":213},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":5656},"cache_creation_input_tokens":5656,"cache_read_input_tokens":0,"input_tokens":10,"output_tokens":8,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Delete the organization \"Obsolete Corp\".","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to delete an organization named \"Obsolete Corp\". I need to:\n\n1. First, search for this organization in the database\n2. Once I find it, delete it using the delete-object function\n\nLet me search for it first.","options":{}},{"type":"text","text":"I'll help you delete the organization \"Obsolete Corp\". First, let me search for this organization in the database.","options":{}},{"type":"tool-call","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","name":"query","params":{"text":"Obsolete Corp","typename":"dxos.org/type/Organization","includeContent":true,"limit":5},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","name":"query","isFailure":false,"result":[{"id":"01JGFJJZ00G0WKQSJGMAKCNTA7","@type":"dxn:type:dxos.org/type/Organization:0.1.0","@meta":{"keys":[]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTA7","name":"Obsolete Corp"}],"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01BhxYCMGSNwCDepYqqvP333","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"Great","metadata":{}},{"type":"text-delta","id":"0","delta":"! I found the organization \"Obsol","metadata":{}},{"type":"text-delta","id":"0","delta":"ete Corp\" with the","metadata":{}},{"type":"text-delta","id":"0","delta":" ID `01JGFJJ","metadata":{}},{"type":"text-delta","id":"0","delta":"Z00G0WKQ","metadata":{}},{"type":"text-delta","id":"0","delta":"SJGMAKCNTA7`.","metadata":{}},{"type":"text-delta","id":"0","delta":" Now I'll delete it","metadata":{}},{"type":"text-delta","id":"0","delta":".","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"tool-params-start","id":"toolu_01Q3s7PSNKHM71GNVaQk1w9z","name":"delete-object","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01Q3s7PSNKHM71GNVaQk1w9z","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Q3s7PSNKHM71GNVaQk1w9z","delta":"{\"obj\": \"01","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Q3s7PSNKHM71GNVaQk1w9z","delta":"JG","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Q3s7PSNKHM71GNVaQk1w9z","delta":"FJJZ0","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Q3s7PSNKHM71GNVaQk1w9z","delta":"0G0WKQSJGMAK","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Q3s7PSNKHM71GNVaQk1w9z","delta":"CNTA7\"}","metadata":{}},{"type":"tool-params-end","id":"toolu_01Q3s7PSNKHM71GNVaQk1w9z","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":6,"outputTokens":118,"totalTokens":124},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":5911},"cache_creation_input_tokens":5911,"cache_read_input_tokens":0,"input_tokens":6,"output_tokens":1,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Delete the organization \"Obsolete Corp\".","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to delete an organization named \"Obsolete Corp\". I need to:\n\n1. First, search for this organization in the database\n2. Once I find it, delete it using the delete-object function\n\nLet me search for it first.","options":{}},{"type":"text","text":"I'll help you delete the organization \"Obsolete Corp\". First, let me search for this organization in the database.","options":{}},{"type":"tool-call","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","name":"query","params":{"text":"Obsolete Corp","typename":"dxos.org/type/Organization","includeContent":true,"limit":5},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_017u6zALS3uVPS3ZGLnPgT8n","name":"query","isFailure":false,"result":[{"id":"01JGFJJZ00G0WKQSJGMAKCNTA7","@type":"dxn:type:dxos.org/type/Organization:0.1.0","@meta":{"keys":[]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTA7","name":"Obsolete Corp"}],"providerExecuted":false,"options":{}}],"options":{}},{"role":"assistant","content":[{"type":"text","text":"Great! I found the organization \"Obsolete Corp\" with the ID `01JGFJJZ00G0WKQSJGMAKCNTA7`. Now I'll delete it.","options":{}},{"type":"tool-call","id":"toolu_01Q3s7PSNKHM71GNVaQk1w9z","name":"delete-object","params":{"obj":"01JGFJJZ00G0WKQSJGMAKCNTA7"},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01Q3s7PSNKHM71GNVaQk1w9z","name":"delete-object","isFailure":false,"result":{},"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01BB9Rx1mC4xaAiLKsQSkFpL","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"I","metadata":{}},{"type":"text-delta","id":"0","delta":"'ve successfully deleted the organization \"Obsol","metadata":{}},{"type":"text-delta","id":"0","delta":"ete Corp\"","metadata":{}},{"type":"text-delta","id":"0","delta":" from the database. The organization","metadata":{}},{"type":"text-delta","id":"0","delta":" has been removed from","metadata":{}},{"type":"text-delta","id":"0","delta":" the system.","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"finish","reason":"stop","usage":{"inputTokens":5,"outputTokens":28,"totalTokens":33},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":131},"cache_creation_input_tokens":131,"cache_read_input_tokens":5911,"input_tokens":5,"output_tokens":1,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Update the organization \"Old Name Inc\" and change its name to \"New Name Corp\".","options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_011o8biwZSDc1XTYYy2x7A6g","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"reasoning-start","id":"0","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"The user wants to update an organization's","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" name from","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" \"Old Name Inc\" to \"New","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" Name Corp\". To","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" do this, I need to:","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"\n\n1. First find the organization with","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" name","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" \"Old Name Inc\"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" using","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" the","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" query","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" tool","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"\n2. Then update its name property","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" to \"New Name Corp\"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" using the update-","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"object tool\n\nLet me start by searching","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" for the organization.","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{"anthropic":{"type":"thinking","signature":"EuQDCkYICxgCKkDR0lNRgMobCCTtft8leRMF7rTLJ2XddgBXhUN03lU+5hdP351+P22p8HWeSiDkyRXVydcHU+EZG2OmWovBWn2rEgzqqr1v/QidzCPvYcIaDH/ILSyYjIlTtaA0SSIwD7+3WpvDAwwC+b0D0zBaoiT/x5h/w5ts0rJokqyJyDi1GLNf3hUyyi8e7MeOVd8qKssCWYs1D88HFq9TAGTe5HS2v7FdA9hI5IPz0sgbuZtVWzrhNMOAtzghrMm8Gk7Dot+5yjTxW2gx31J4qpaY320Iz5phdpBvLP/nRK6tXwl47KuGRz5kA482mMs4f7dRqXGlGliXhhYnwu3MogdQNLMhkljcD85EfdhB3MllO2u1qv/qlYmbNZRkmesRr2aQLSxKNBPro6JTy0+xIgdMlVr9U/8UI8Ner/La6/rgTCztOsr71wbm5+JRg3sTeRRStPOzXw++GBEGXE92SWn4BmDWyLlU1n1TchPOG3Mhd02sHaa9gA1g45XpKsNyiEhzwM2VKlE0/t6rl6imyHHtuLxyky6erynONKUhAInp7gKpXJ88Iu3W8WZy0JTdp4qgQ2ahQx63XfOlJeU+3r/DM/wo88teqooJo341aAdfOHpgD5sg+rhKSURr8kooVBgB"}}},{"type":"reasoning-end","id":"0","metadata":{}},{"type":"text-start","id":"1","metadata":{}},{"type":"text-delta","id":"1","delta":"I'll help you","metadata":{}},{"type":"text-delta","id":"1","delta":" update the organization name","metadata":{}},{"type":"text-delta","id":"1","delta":" from \"Old Name Inc\" to \"","metadata":{}},{"type":"text-delta","id":"1","delta":"New Name Corp\". Let me first fin","metadata":{}},{"type":"text-delta","id":"1","delta":"d the organization with the current","metadata":{}},{"type":"text-delta","id":"1","delta":" name.","metadata":{}},{"type":"text-end","id":"1","metadata":{}},{"type":"tool-params-start","id":"toolu_01Qc7y4UbDEjjjngJwxnNv9p","name":"query","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01Qc7y4UbDEjjjngJwxnNv9p","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Qc7y4UbDEjjjngJwxnNv9p","delta":"{\"text\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Qc7y4UbDEjjjngJwxnNv9p","delta":": \"Old","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Qc7y4UbDEjjjngJwxnNv9p","delta":" Name","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Qc7y4UbDEjjjngJwxnNv9p","delta":" Inc\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Qc7y4UbDEjjjngJwxnNv9p","delta":", \"includ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Qc7y4UbDEjjjngJwxnNv9p","delta":"eCo","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Qc7y4UbDEjjjngJwxnNv9p","delta":"ntent\": ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Qc7y4UbDEjjjngJwxnNv9p","delta":"true","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Qc7y4UbDEjjjngJwxnNv9p","delta":", \"lim","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Qc7y4UbDEjjjngJwxnNv9p","delta":"it\":","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Qc7y4UbDEjjjngJwxnNv9p","delta":" 5}","metadata":{}},{"type":"tool-params-end","id":"toolu_01Qc7y4UbDEjjjngJwxnNv9p","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":10,"outputTokens":206,"totalTokens":216},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":5665},"cache_creation_input_tokens":5665,"cache_read_input_tokens":0,"input_tokens":10,"output_tokens":8,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Update the organization \"Old Name Inc\" and change its name to \"New Name Corp\".","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to update an organization's name from \"Old Name Inc\" to \"New Name Corp\". To do this, I need to:\n\n1. First find the organization with name \"Old Name Inc\" using the query tool\n2. Then update its name property to \"New Name Corp\" using the update-object tool\n\nLet me start by searching for the organization.","options":{}},{"type":"text","text":"I'll help you update the organization name from \"Old Name Inc\" to \"New Name Corp\". Let me first find the organization with the current name.","options":{}},{"type":"tool-call","id":"toolu_01Qc7y4UbDEjjjngJwxnNv9p","name":"query","params":{"text":"Old Name Inc","includeContent":true,"limit":5},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01Qc7y4UbDEjjjngJwxnNv9p","name":"query","isFailure":false,"result":[{"id":"01JGFJJZ00G0WKQSJGMAKCNTAS","@type":"dxn:type:dxos.org/type/Blueprint:0.1.0","@meta":{"keys":[]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTAS","description":"Query and manipulate objects in the ECHO database.","instructions":{"source":{"/":"dxn:echo:@:01JGFJJZ00G0WKQSJGMAKCNTAR"}},"key":"dxos.org/blueprint/database","name":"Database","tools":["dxos.org/function/database/context-add","dxos.org/function/database/context-remove","dxos.org/function/database/load","dxos.org/function/database/object-create","dxos.org/function/database/object-delete","dxos.org/function/database/object-update","dxos.org/function/database/query","dxos.org/function/database/relation-create","dxos.org/function/database/relation-delete","dxos.org/function/database/schema-add","dxos.org/function/database/schema-list","dxos.org/function/database/tag-add","dxos.org/function/database/tag-remove"]},{"id":"01JGFJJZ00G0WKQSJGMAKCNTAX","@type":"dxn:type:dxos.org/type/Organization:0.1.0","@meta":{"keys":[]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTAX","name":"Old Name Inc"}],"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_012P5SejpSaRUy1yCLjcU88t","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"Perfect","metadata":{}},{"type":"text-delta","id":"0","delta":"! I found the organization \"","metadata":{}},{"type":"text-delta","id":"0","delta":"Old Name Inc\". Now I'll update","metadata":{}},{"type":"text-delta","id":"0","delta":" its","metadata":{}},{"type":"text-delta","id":"0","delta":" name to \"New Name Corp\".","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"tool-params-start","id":"toolu_01T9N7KnqQdRUPCMToD1vvHR","name":"update-object","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01T9N7KnqQdRUPCMToD1vvHR","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01T9N7KnqQdRUPCMToD1vvHR","delta":"{\"o","metadata":{}},{"type":"tool-params-delta","id":"toolu_01T9N7KnqQdRUPCMToD1vvHR","delta":"bj","metadata":{}},{"type":"tool-params-delta","id":"toolu_01T9N7KnqQdRUPCMToD1vvHR","delta":"\": \"01JGFJJ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01T9N7KnqQdRUPCMToD1vvHR","delta":"Z00G0W","metadata":{}},{"type":"tool-params-delta","id":"toolu_01T9N7KnqQdRUPCMToD1vvHR","delta":"KQSJGMAKC","metadata":{}},{"type":"tool-params-delta","id":"toolu_01T9N7KnqQdRUPCMToD1vvHR","delta":"NTAX\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01T9N7KnqQdRUPCMToD1vvHR","delta":", \"propertie","metadata":{}},{"type":"tool-params-delta","id":"toolu_01T9N7KnqQdRUPCMToD1vvHR","delta":"s\": {\"na","metadata":{}},{"type":"tool-params-delta","id":"toolu_01T9N7KnqQdRUPCMToD1vvHR","delta":"me\":\"New ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01T9N7KnqQdRUPCMToD1vvHR","delta":"Na","metadata":{}},{"type":"tool-params-delta","id":"toolu_01T9N7KnqQdRUPCMToD1vvHR","delta":"me Corp\"}}","metadata":{}},{"type":"tool-params-end","id":"toolu_01T9N7KnqQdRUPCMToD1vvHR","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":6,"outputTokens":124,"totalTokens":130},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":6266},"cache_creation_input_tokens":6266,"cache_read_input_tokens":0,"input_tokens":6,"output_tokens":1,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Update the organization \"Old Name Inc\" and change its name to \"New Name Corp\".","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to update an organization's name from \"Old Name Inc\" to \"New Name Corp\". To do this, I need to:\n\n1. First find the organization with name \"Old Name Inc\" using the query tool\n2. Then update its name property to \"New Name Corp\" using the update-object tool\n\nLet me start by searching for the organization.","options":{}},{"type":"text","text":"I'll help you update the organization name from \"Old Name Inc\" to \"New Name Corp\". Let me first find the organization with the current name.","options":{}},{"type":"tool-call","id":"toolu_01Qc7y4UbDEjjjngJwxnNv9p","name":"query","params":{"text":"Old Name Inc","includeContent":true,"limit":5},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01Qc7y4UbDEjjjngJwxnNv9p","name":"query","isFailure":false,"result":[{"id":"01JGFJJZ00G0WKQSJGMAKCNTAS","@type":"dxn:type:dxos.org/type/Blueprint:0.1.0","@meta":{"keys":[]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTAS","description":"Query and manipulate objects in the ECHO database.","instructions":{"source":{"/":"dxn:echo:@:01JGFJJZ00G0WKQSJGMAKCNTAR"}},"key":"dxos.org/blueprint/database","name":"Database","tools":["dxos.org/function/database/context-add","dxos.org/function/database/context-remove","dxos.org/function/database/load","dxos.org/function/database/object-create","dxos.org/function/database/object-delete","dxos.org/function/database/object-update","dxos.org/function/database/query","dxos.org/function/database/relation-create","dxos.org/function/database/relation-delete","dxos.org/function/database/schema-add","dxos.org/function/database/schema-list","dxos.org/function/database/tag-add","dxos.org/function/database/tag-remove"]},{"id":"01JGFJJZ00G0WKQSJGMAKCNTAX","@type":"dxn:type:dxos.org/type/Organization:0.1.0","@meta":{"keys":[]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTAX","name":"Old Name Inc"}],"providerExecuted":false,"options":{}}],"options":{}},{"role":"assistant","content":[{"type":"text","text":"Perfect! I found the organization \"Old Name Inc\". Now I'll update its name to \"New Name Corp\".","options":{}},{"type":"tool-call","id":"toolu_01T9N7KnqQdRUPCMToD1vvHR","name":"update-object","params":{"obj":"01JGFJJZ00G0WKQSJGMAKCNTAX","properties":{"name":"New Name Corp"}},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01T9N7KnqQdRUPCMToD1vvHR","name":"update-object","isFailure":false,"result":{"id":"01JGFJJZ00G0WKQSJGMAKCNTAX","@type":"dxn:type:dxos.org/type/Organization:0.1.0","@meta":{"keys":[]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTAX","name":"New Name Corp"},"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01BNfKh115TbJJryPET8J6XQ","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"Great! I've successfully updated the organization","metadata":{}},{"type":"text-delta","id":"0","delta":" name","metadata":{}},{"type":"text-delta","id":"0","delta":" from \"Old Name Inc\" to \"","metadata":{}},{"type":"text-delta","id":"0","delta":"New Name Corp\". The organization","metadata":{}},{"type":"text-delta","id":"0","delta":" recor","metadata":{}},{"type":"text-delta","id":"0","delta":"d has been updated an","metadata":{}},{"type":"text-delta","id":"0","delta":"d now shows the new name.","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"finish","reason":"stop","usage":{"inputTokens":6,"outputTokens":37,"totalTokens":43},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":256},"cache_creation_input_tokens":256,"cache_read_input_tokens":6266,"input_tokens":6,"output_tokens":8,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Search for all organizations. How many are there?","options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01MW98hbxumjq9skEN2v6gXy","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"reasoning-start","id":"0","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"The user wants","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" to search for all organizations in","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" ECHO. To","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" do this, I need to:","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"\n\n1. First","metadata":{}},{"type":"reasoning-delta","id":"0","delta":", I shoul","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"d check","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" what","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" schemas","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" are","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" available to fin","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"d the","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" exact","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" typename","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" for organizations\n2. Then use","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" the query","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" function","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" to search for all objects","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" of that type\n3. Count the","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" results\n\nLet me start by listing","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" the schemas to","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" fin","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"d the correct typename for organizations.","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{"anthropic":{"type":"thinking","signature":"EocECkYICxgCKkAHCGCJlxrPeTGa8XshQ0/uPTnu2vIwlUNxIf8aRtyOFbkFCN1Ac7Rc0aEr4LcNuoe9NTFPMb20s+0nxJQi5uyGEgyOp/CjtNvJtBzZ0PMaDE8Ap47qkXIMhahRcCIwidFam0SwlbjcCr90nCoe/bee+ClQXr8ZML+LcQAm90um/fyDd7kRfufR2wKOmvsuKu4CY92uui5ZI6FdlwcCKLQ+mOXufB4mjy48B32oGygifTuI32slNTpnYfGvNxVkJRz/UNqVK3Y1fBLFU5lKuDTX5LnjDoTajKkvKCUfLo743+wAmqeAQnlBAIxtFneBC3gAMXCgnN2FjrJFJfjGCqNF1HqKO5pIDgL3iwEfO7qqwKzv5uzi6PYHnEmSI9AXiDReWs+8Syf2/OuyltJWQqVnMT02+7fDOAg1tmkiSXfaQzJrg5MvoA7D90blTzETgk5HmKNRdIpFkmsVeqWJ+TgMxQhAMt2qR0hGRVTBVSnZnjQsBbdVZFdYgpY/t9HFjltwLuPCKcJ64aDsv+hTjqd40x1MHz4tlQPDIpLAtuP0NbmFEo+5wg4xwGwUfM5+J1KBXVR1mU/hU6df5RtYlwK39eBop7v8YO0RspFLlt6saYcoIvLOGHqK9CyfJ9ydzHUoZBx+yMPBMoSaNLgxwHRAKpv0JsSBS2mALcGRyy2oGAE="}}},{"type":"reasoning-end","id":"0","metadata":{}},{"type":"text-start","id":"1","metadata":{}},{"type":"text-delta","id":"1","delta":"I'll","metadata":{}},{"type":"text-delta","id":"1","delta":" help you search for all organizations.","metadata":{}},{"type":"text-delta","id":"1","delta":" First","metadata":{}},{"type":"text-delta","id":"1","delta":", let me check the","metadata":{}},{"type":"text-delta","id":"1","delta":" available schemas to find the exact","metadata":{}},{"type":"text-delta","id":"1","delta":" typename for organizations.","metadata":{}},{"type":"text-end","id":"1","metadata":{}},{"type":"tool-params-start","id":"toolu_01ScyKdn6ob8g984kxRTkr5L","name":"list-schemas","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01ScyKdn6ob8g984kxRTkr5L","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01ScyKdn6ob8g984kxRTkr5L","delta":"{\"limit\": 20}","metadata":{}},{"type":"tool-params-end","id":"toolu_01ScyKdn6ob8g984kxRTkr5L","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":10,"outputTokens":164,"totalTokens":174},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":5657},"cache_creation_input_tokens":5657,"cache_read_input_tokens":0,"input_tokens":10,"output_tokens":3,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Search for all organizations. How many are there?","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to search for all organizations in ECHO. To do this, I need to:\n\n1. First, I should check what schemas are available to find the exact typename for organizations\n2. Then use the query function to search for all objects of that type\n3. Count the results\n\nLet me start by listing the schemas to find the correct typename for organizations.","options":{}},{"type":"text","text":"I'll help you search for all organizations. First, let me check the available schemas to find the exact typename for organizations.","options":{}},{"type":"tool-call","id":"toolu_01ScyKdn6ob8g984kxRTkr5L","name":"list-schemas","params":{"limit":20},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01ScyKdn6ob8g984kxRTkr5L","name":"list-schemas","isFailure":false,"result":[{"typename":"dxos.org/relation/Employer","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/relation/Employer","entityKind":"relation","typename":"dxos.org/relation/Employer","version":"0.1.0","relationTarget":{"$ref":"dxn:type:dxos.org/type/Organization"},"relationSource":{"$ref":"dxn:type:dxos.org/type/Person"},"type":"object","properties":{"id":{"type":"string","description":"A Universally Unique Lexicographically Sortable Identifier","pattern":"^[0-7][0-9A-HJKMNP-TV-Z]{25}$"},"role":{"type":"string"},"active":{"type":"boolean"},"startDate":{"type":"string"},"endDate":{"type":"string"}},"required":["id"],"propertyOrder":["id","role","active","startDate","endDate"],"additionalProperties":false,"description":"An employing organization of a person."},"kind":"relation"},{"typename":"dxos.org/type/Blueprint","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Blueprint","entityKind":"object","typename":"dxos.org/type/Blueprint","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"key":{"type":"string","description":"Unique registration key for the blueprint"},"name":{"type":"string","description":"Human-readable name of the blueprint"},"description":{"type":"string","description":"Description of the blueprint's purpose and functionality"},"instructions":{"type":"object","required":["source"],"properties":{"source":{"allOf":[{"$id":"/schemas/echo/ref","$ref":"/schemas/echo/ref","reference":{"schema":{"$ref":"dxn:type:dxos.org/type/Text"},"schemaVersion":"0.1.0"}}],"description":"Handlebars template source"},"inputs":{"type":"array","items":{"type":"object","required":["name"],"properties":{"name":{"type":"string"},"kind":{"type":"string","enum":["value","pass-through","retriever","function","query","resolver","context","schema"]},"default":{"$id":"/schemas/any","title":"any"},"function":{"type":"string"}},"additionalProperties":false,"propertyOrder":["name","kind","default","function"]}}},"additionalProperties":false,"description":"Instructions that guide the AI assistant's behavior and responses","propertyOrder":["source","inputs"]},"tools":{"type":"array","items":{"$ref":"#/$defs/ToolId"},"description":"Array of tools that the AI assistant can use when this blueprint is active"},"mcpServers":{"type":"array","items":{"type":"object","required":["url","protocol"],"properties":{"url":{"type":"string","description":"URL of the MCP server"},"protocol":{"type":"string","enum":["sse","http"],"description":"Protocol of the MCP server"}},"additionalProperties":false,"propertyOrder":["url","protocol"]}}},"required":["key","name","instructions","tools","id"],"propertyOrder":["key","name","description","instructions","tools","mcpServers","id"],"additionalProperties":false,"annotations":{"meta":{"dxos.org/annotation/Icon":{"icon":"ph--blueprint--regular","hue":"blue"}},"labelProp":["name"]}},"kind":"record"},{"typename":"dxos.org/type/Organization","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Organization","entityKind":"object","typename":"dxos.org/type/Organization","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"name":{"type":"string","title":"Name","annotations":{"generator":{"generator":"company.name","probability":1}}},"description":{"type":"string","title":"Description","annotations":{"generator":{"generator":"lorem.paragraphs","args":[{"min":1,"max":3}]}}},"status":{"type":"string","enum":["prospect","qualified","active","commit","reject"],"title":"Status","annotations":{"meta":{"singleSelect":{"options":[{"id":"prospect","title":"Prospect","color":"indigo"},{"id":"qualified","title":"Qualified","color":"purple"},{"id":"active","title":"Active","color":"amber"},{"id":"commit","title":"Commit","color":"emerald"},{"id":"reject","title":"Reject","color":"red"}]}},"generator":{"generator":"helpers.arrayElement","args":[["prospect","qualified","active","commit","reject"]]}},"format":"single-select"},"image":{"type":"string","title":"Image","annotations":{"generator":"image.url"}},"website":{"type":"string","title":"Website","annotations":{"generator":"internet.url"}},"location":{"type":"array","minItems":2,"items":[{"type":"number","title":"Longitude"},{"type":"number","title":"Latitude"},{"type":"number","title":"Height ASL (m)"}],"additionalItems":false,"description":"GeoJSON Position","title":"Location","format":"lnglat"}},"required":["id"],"propertyOrder":["name","description","status","image","website","location","id"],"additionalProperties":false,"description":"An organization.","title":"Organization","annotations":{"labelProp":["name"]}},"kind":"record"},{"typename":"dxos.org/type/Person","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Person","entityKind":"object","typename":"dxos.org/type/Person","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"fullName":{"type":"string","title":"Full Name","annotations":{"generator":{"generator":"person.fullName","probability":1}}},"preferredName":{"type":"string","title":"Preferred Name"},"nickname":{"type":"string","title":"Nickname"},"image":{"type":"string","title":"Image"},"organization":{"allOf":[{"$id":"/schemas/echo/ref","$ref":"/schemas/echo/ref","reference":{"schema":{"$ref":"dxn:type:dxos.org/type/Organization"},"schemaVersion":"0.1.0"}}],"description":"Current employer","title":"Employer","annotations":{"meta":{"referenceProperty":"name"}}},"jobTitle":{"type":"string","title":"Job Title"},"department":{"type":"string","title":"Department"},"notes":{"type":"string","title":"Notes"},"emails":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string","description":"Email address","title":"Email","default":"hello@email.com","pattern":"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$","annotations":{"generator":"internet.email"},"format":"email"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"identities":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"phoneNumbers":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["label","value"]},"title":"Phone Numbers"},"addresses":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"object","required":[],"properties":{"street":{"type":"string","description":"The street address.","examples":["1600 Amphitheatre Pkwy"]},"extended":{"type":"string","description":"An address extension such as an apartment number, C/O or alternative name.","examples":["Apt 1","Suite 2"]},"locality":{"type":"string","description":"The locality in which the street address is, and which is in the region.","examples":["Mountain View","Bangkok"]},"region":{"type":"string","description":"The region in which the locality is, and which is in the country.","examples":["CA","NY"]},"postalCode":{"type":"string","description":"The postal code.","examples":["12345","A1A 1A1"]},"postOfficeBoxNumber":{"type":"string","description":"The post office box number for PO Box addresses."},"country":{"type":"string","description":"The country in 2-letter ISO 3166-1 alpha-2 format.","examples":["US","SG"]}},"additionalProperties":false,"propertyOrder":["street","extended","locality","region","postalCode","postOfficeBoxNumber","country"]}},"additionalProperties":false,"propertyOrder":["label","value"]}},"urls":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string","description":"URL","title":"URL","default":"https://example.com","pattern":"^(\\w+?:\\/\\/)?([\\da-z.-]+)\\.([a-z.]{2,6})([/\\w .-]*)*\\/?$","annotations":{"generator":"internet.url"},"format":"url"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"birthday":{"type":"string","title":"Birthday","annotations":{"generator":"date.iso8601"}},"fields":{"type":"array","items":{"type":"object","required":["label","value"],"properties":{"category":{"type":"string"},"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["category","label","value"]}},"location":{"type":"array","minItems":2,"items":[{"type":"number","title":"Longitude"},{"type":"number","title":"Latitude"},{"type":"number","title":"Height ASL (m)"}],"additionalItems":false,"description":"GeoJSON Position","title":"Location","format":"lnglat"}},"required":["id"],"propertyOrder":["fullName","preferredName","nickname","image","organization","jobTitle","department","notes","emails","identities","phoneNumbers","addresses","urls","birthday","fields","location","id"],"additionalProperties":false,"title":"Person","annotations":{"labelProp":["preferredName","fullName","nickname"]}},"kind":"record"},{"typename":"dxos.org/type/Tag","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Tag","entityKind":"object","typename":"dxos.org/type/Tag","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"},"hue":{"type":"string"}},"required":["label","id"],"propertyOrder":["label","hue","id"],"additionalProperties":false,"annotations":{"labelProp":["label"]}},"kind":"record"},{"typename":"example.com/type/Expando","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:example.com/type/Expando","entityKind":"object","typename":"example.com/type/Expando","version":"0.1.0","type":"object","properties":{"id":{"type":"string"}},"required":["id"],"propertyOrder":["id"],"additionalProperties":{"$id":"/schemas/any","title":"any"}},"kind":"record"}],"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01EwAUhTtUjYNejZn4Eq3Q2Z","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"Now","metadata":{}},{"type":"text-delta","id":"0","delta":" I can","metadata":{}},{"type":"text-delta","id":"0","delta":" see that","metadata":{}},{"type":"text-delta","id":"0","delta":" the typename","metadata":{}},{"type":"text-delta","id":"0","delta":" for","metadata":{}},{"type":"text-delta","id":"0","delta":" organizations","metadata":{}},{"type":"text-delta","id":"0","delta":" is `dxos.org/","metadata":{}},{"type":"text-delta","id":"0","delta":"type/Organization`.","metadata":{}},{"type":"text-delta","id":"0","delta":" Let me search","metadata":{}},{"type":"text-delta","id":"0","delta":" for all","metadata":{}},{"type":"text-delta","id":"0","delta":" organizations","metadata":{}},{"type":"text-delta","id":"0","delta":" in the database","metadata":{}},{"type":"text-delta","id":"0","delta":".","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"tool-params-start","id":"toolu_017nHkwSM2nz44Nqi5D351u5","name":"query","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_017nHkwSM2nz44Nqi5D351u5","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_017nHkwSM2nz44Nqi5D351u5","delta":"{\"typename\":","metadata":{}},{"type":"tool-params-delta","id":"toolu_017nHkwSM2nz44Nqi5D351u5","delta":" \"d","metadata":{}},{"type":"tool-params-delta","id":"toolu_017nHkwSM2nz44Nqi5D351u5","delta":"xos.org/ty","metadata":{}},{"type":"tool-params-delta","id":"toolu_017nHkwSM2nz44Nqi5D351u5","delta":"pe","metadata":{}},{"type":"tool-params-delta","id":"toolu_017nHkwSM2nz44Nqi5D351u5","delta":"/Organizati","metadata":{}},{"type":"tool-params-delta","id":"toolu_017nHkwSM2nz44Nqi5D351u5","delta":"on\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_017nHkwSM2nz44Nqi5D351u5","delta":", \"inc","metadata":{}},{"type":"tool-params-delta","id":"toolu_017nHkwSM2nz44Nqi5D351u5","delta":"ludeC","metadata":{}},{"type":"tool-params-delta","id":"toolu_017nHkwSM2nz44Nqi5D351u5","delta":"ontent\": fal","metadata":{}},{"type":"tool-params-delta","id":"toolu_017nHkwSM2nz44Nqi5D351u5","delta":"se","metadata":{}},{"type":"tool-params-delta","id":"toolu_017nHkwSM2nz44Nqi5D351u5","delta":", \"limit","metadata":{}},{"type":"tool-params-delta","id":"toolu_017nHkwSM2nz44Nqi5D351u5","delta":"\":","metadata":{}},{"type":"tool-params-delta","id":"toolu_017nHkwSM2nz44Nqi5D351u5","delta":" 100}","metadata":{}},{"type":"tool-params-end","id":"toolu_017nHkwSM2nz44Nqi5D351u5","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":6,"outputTokens":127,"totalTokens":133},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":8644},"cache_creation_input_tokens":8644,"cache_read_input_tokens":0,"input_tokens":6,"output_tokens":1,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Search for all organizations. How many are there?","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to search for all organizations in ECHO. To do this, I need to:\n\n1. First, I should check what schemas are available to find the exact typename for organizations\n2. Then use the query function to search for all objects of that type\n3. Count the results\n\nLet me start by listing the schemas to find the correct typename for organizations.","options":{}},{"type":"text","text":"I'll help you search for all organizations. First, let me check the available schemas to find the exact typename for organizations.","options":{}},{"type":"tool-call","id":"toolu_01ScyKdn6ob8g984kxRTkr5L","name":"list-schemas","params":{"limit":20},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01ScyKdn6ob8g984kxRTkr5L","name":"list-schemas","isFailure":false,"result":[{"typename":"dxos.org/relation/Employer","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/relation/Employer","entityKind":"relation","typename":"dxos.org/relation/Employer","version":"0.1.0","relationTarget":{"$ref":"dxn:type:dxos.org/type/Organization"},"relationSource":{"$ref":"dxn:type:dxos.org/type/Person"},"type":"object","properties":{"id":{"type":"string","description":"A Universally Unique Lexicographically Sortable Identifier","pattern":"^[0-7][0-9A-HJKMNP-TV-Z]{25}$"},"role":{"type":"string"},"active":{"type":"boolean"},"startDate":{"type":"string"},"endDate":{"type":"string"}},"required":["id"],"propertyOrder":["id","role","active","startDate","endDate"],"additionalProperties":false,"description":"An employing organization of a person."},"kind":"relation"},{"typename":"dxos.org/type/Blueprint","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Blueprint","entityKind":"object","typename":"dxos.org/type/Blueprint","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"key":{"type":"string","description":"Unique registration key for the blueprint"},"name":{"type":"string","description":"Human-readable name of the blueprint"},"description":{"type":"string","description":"Description of the blueprint's purpose and functionality"},"instructions":{"type":"object","required":["source"],"properties":{"source":{"allOf":[{"$id":"/schemas/echo/ref","$ref":"/schemas/echo/ref","reference":{"schema":{"$ref":"dxn:type:dxos.org/type/Text"},"schemaVersion":"0.1.0"}}],"description":"Handlebars template source"},"inputs":{"type":"array","items":{"type":"object","required":["name"],"properties":{"name":{"type":"string"},"kind":{"type":"string","enum":["value","pass-through","retriever","function","query","resolver","context","schema"]},"default":{"$id":"/schemas/any","title":"any"},"function":{"type":"string"}},"additionalProperties":false,"propertyOrder":["name","kind","default","function"]}}},"additionalProperties":false,"description":"Instructions that guide the AI assistant's behavior and responses","propertyOrder":["source","inputs"]},"tools":{"type":"array","items":{"$ref":"#/$defs/ToolId"},"description":"Array of tools that the AI assistant can use when this blueprint is active"},"mcpServers":{"type":"array","items":{"type":"object","required":["url","protocol"],"properties":{"url":{"type":"string","description":"URL of the MCP server"},"protocol":{"type":"string","enum":["sse","http"],"description":"Protocol of the MCP server"}},"additionalProperties":false,"propertyOrder":["url","protocol"]}}},"required":["key","name","instructions","tools","id"],"propertyOrder":["key","name","description","instructions","tools","mcpServers","id"],"additionalProperties":false,"annotations":{"meta":{"dxos.org/annotation/Icon":{"icon":"ph--blueprint--regular","hue":"blue"}},"labelProp":["name"]}},"kind":"record"},{"typename":"dxos.org/type/Organization","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Organization","entityKind":"object","typename":"dxos.org/type/Organization","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"name":{"type":"string","title":"Name","annotations":{"generator":{"generator":"company.name","probability":1}}},"description":{"type":"string","title":"Description","annotations":{"generator":{"generator":"lorem.paragraphs","args":[{"min":1,"max":3}]}}},"status":{"type":"string","enum":["prospect","qualified","active","commit","reject"],"title":"Status","annotations":{"meta":{"singleSelect":{"options":[{"id":"prospect","title":"Prospect","color":"indigo"},{"id":"qualified","title":"Qualified","color":"purple"},{"id":"active","title":"Active","color":"amber"},{"id":"commit","title":"Commit","color":"emerald"},{"id":"reject","title":"Reject","color":"red"}]}},"generator":{"generator":"helpers.arrayElement","args":[["prospect","qualified","active","commit","reject"]]}},"format":"single-select"},"image":{"type":"string","title":"Image","annotations":{"generator":"image.url"}},"website":{"type":"string","title":"Website","annotations":{"generator":"internet.url"}},"location":{"type":"array","minItems":2,"items":[{"type":"number","title":"Longitude"},{"type":"number","title":"Latitude"},{"type":"number","title":"Height ASL (m)"}],"additionalItems":false,"description":"GeoJSON Position","title":"Location","format":"lnglat"}},"required":["id"],"propertyOrder":["name","description","status","image","website","location","id"],"additionalProperties":false,"description":"An organization.","title":"Organization","annotations":{"labelProp":["name"]}},"kind":"record"},{"typename":"dxos.org/type/Person","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Person","entityKind":"object","typename":"dxos.org/type/Person","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"fullName":{"type":"string","title":"Full Name","annotations":{"generator":{"generator":"person.fullName","probability":1}}},"preferredName":{"type":"string","title":"Preferred Name"},"nickname":{"type":"string","title":"Nickname"},"image":{"type":"string","title":"Image"},"organization":{"allOf":[{"$id":"/schemas/echo/ref","$ref":"/schemas/echo/ref","reference":{"schema":{"$ref":"dxn:type:dxos.org/type/Organization"},"schemaVersion":"0.1.0"}}],"description":"Current employer","title":"Employer","annotations":{"meta":{"referenceProperty":"name"}}},"jobTitle":{"type":"string","title":"Job Title"},"department":{"type":"string","title":"Department"},"notes":{"type":"string","title":"Notes"},"emails":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string","description":"Email address","title":"Email","default":"hello@email.com","pattern":"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$","annotations":{"generator":"internet.email"},"format":"email"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"identities":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"phoneNumbers":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["label","value"]},"title":"Phone Numbers"},"addresses":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"object","required":[],"properties":{"street":{"type":"string","description":"The street address.","examples":["1600 Amphitheatre Pkwy"]},"extended":{"type":"string","description":"An address extension such as an apartment number, C/O or alternative name.","examples":["Apt 1","Suite 2"]},"locality":{"type":"string","description":"The locality in which the street address is, and which is in the region.","examples":["Mountain View","Bangkok"]},"region":{"type":"string","description":"The region in which the locality is, and which is in the country.","examples":["CA","NY"]},"postalCode":{"type":"string","description":"The postal code.","examples":["12345","A1A 1A1"]},"postOfficeBoxNumber":{"type":"string","description":"The post office box number for PO Box addresses."},"country":{"type":"string","description":"The country in 2-letter ISO 3166-1 alpha-2 format.","examples":["US","SG"]}},"additionalProperties":false,"propertyOrder":["street","extended","locality","region","postalCode","postOfficeBoxNumber","country"]}},"additionalProperties":false,"propertyOrder":["label","value"]}},"urls":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string","description":"URL","title":"URL","default":"https://example.com","pattern":"^(\\w+?:\\/\\/)?([\\da-z.-]+)\\.([a-z.]{2,6})([/\\w .-]*)*\\/?$","annotations":{"generator":"internet.url"},"format":"url"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"birthday":{"type":"string","title":"Birthday","annotations":{"generator":"date.iso8601"}},"fields":{"type":"array","items":{"type":"object","required":["label","value"],"properties":{"category":{"type":"string"},"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["category","label","value"]}},"location":{"type":"array","minItems":2,"items":[{"type":"number","title":"Longitude"},{"type":"number","title":"Latitude"},{"type":"number","title":"Height ASL (m)"}],"additionalItems":false,"description":"GeoJSON Position","title":"Location","format":"lnglat"}},"required":["id"],"propertyOrder":["fullName","preferredName","nickname","image","organization","jobTitle","department","notes","emails","identities","phoneNumbers","addresses","urls","birthday","fields","location","id"],"additionalProperties":false,"title":"Person","annotations":{"labelProp":["preferredName","fullName","nickname"]}},"kind":"record"},{"typename":"dxos.org/type/Tag","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Tag","entityKind":"object","typename":"dxos.org/type/Tag","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"},"hue":{"type":"string"}},"required":["label","id"],"propertyOrder":["label","hue","id"],"additionalProperties":false,"annotations":{"labelProp":["label"]}},"kind":"record"},{"typename":"example.com/type/Expando","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:example.com/type/Expando","entityKind":"object","typename":"example.com/type/Expando","version":"0.1.0","type":"object","properties":{"id":{"type":"string"}},"required":["id"],"propertyOrder":["id"],"additionalProperties":{"$id":"/schemas/any","title":"any"}},"kind":"record"}],"providerExecuted":false,"options":{}}],"options":{}},{"role":"assistant","content":[{"type":"text","text":"Now I can see that the typename for organizations is `dxos.org/type/Organization`. Let me search for all organizations in the database.","options":{}},{"type":"tool-call","id":"toolu_017nHkwSM2nz44Nqi5D351u5","name":"query","params":{"typename":"dxos.org/type/Organization","includeContent":false,"limit":100},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_017nHkwSM2nz44Nqi5D351u5","name":"query","isFailure":false,"result":[{"dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTBK","typename":"dxos.org/type/Organization","label":"Acme Corp"},{"dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTBN","typename":"dxos.org/type/Organization","label":"Globex Industries"}],"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01VdBAG5PkyvYqvpCsjuAVwr","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"Base","metadata":{}},{"type":"text-delta","id":"0","delta":"d on my search","metadata":{}},{"type":"text-delta","id":"0","delta":", I foun","metadata":{}},{"type":"text-delta","id":"0","delta":"d **","metadata":{}},{"type":"text-delta","id":"0","delta":"2 organizations** in the database","metadata":{}},{"type":"text-delta","id":"0","delta":":\n\n1. **Acme","metadata":{}},{"type":"text-delta","id":"0","delta":" Corp** - ","metadata":{}},{"type":"text-delta","id":"0","delta":"dxn:echo:BDJ","metadata":{}},{"type":"text-delta","id":"0","delta":"XMULPW5FB55","metadata":{}},{"type":"text-delta","id":"0","delta":"UZ7KP5HL","metadata":{}},{"type":"text-delta","id":"0","delta":"DHVTXUTHE2U","metadata":{}},{"type":"text-delta","id":"0","delta":":01JGFJJZ","metadata":{}},{"type":"text-delta","id":"0","delta":"00G0WKQSJ","metadata":{}},{"type":"text-delta","id":"0","delta":"GMAKCNTBK\n2","metadata":{}},{"type":"text-delta","id":"0","delta":". **Globex Industries** -","metadata":{}},{"type":"text-delta","id":"0","delta":" dxn:echo:B","metadata":{}},{"type":"text-delta","id":"0","delta":"DJXMULPW5FB","metadata":{}},{"type":"text-delta","id":"0","delta":"55UZ7KP5","metadata":{}},{"type":"text-delta","id":"0","delta":"HLDHVTXUTHE2","metadata":{}},{"type":"text-delta","id":"0","delta":"U:01JGFJJ","metadata":{}},{"type":"text-delta","id":"0","delta":"Z00G0WKQ","metadata":{}},{"type":"text-delta","id":"0","delta":"SJGMAKCNTBN\n\nThere","metadata":{}},{"type":"text-delta","id":"0","delta":" are","metadata":{}},{"type":"text-delta","id":"0","delta":" **","metadata":{}},{"type":"text-delta","id":"0","delta":"2","metadata":{}},{"type":"text-delta","id":"0","delta":" organizations** total","metadata":{}},{"type":"text-delta","id":"0","delta":" in the system","metadata":{}},{"type":"text-delta","id":"0","delta":".","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"finish","reason":"stop","usage":{"inputTokens":6,"outputTokens":161,"totalTokens":167},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":299},"cache_creation_input_tokens":299,"cache_read_input_tokens":8644,"input_tokens":6,"output_tokens":1,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Load the full details of object dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTCB. What is its description?","options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01Evs393HSFHzjFqTzWqDAwT","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"reasoning-start","id":"0","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"The user wants","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" me","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" to load the full details of a","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" specific object with the D","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"XN \"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"dxn:echo:B","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"DJXMULPW5FB","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"55UZ7KP5","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"HLDHVTXUTHE2","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"U:01JGFJJ","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"Z00G0WKQ","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"SJGMAKCNTCB\"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" and fin","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"d out","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" its description.\n\nI need to use","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" the loa","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"d-object function to loa","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"d the full details of this","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" object.","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{"anthropic":{"type":"thinking","signature":"EqwDCkYICxgCKkCEsd8jraPH9dOYoNSOW+K51q8wkYZf2hCHcRM6pGXGP6r4Wmpt4fM9w1GKZ1hd3CQxllnV1xRoTRhQQ43v037HEgwlil5ZiAvTd0IFfkgaDPQu9Mqm3el/kldlPyIwn/BDm2JwpVDarvzIlFuLkxF+GnEazrASUvHblik5TggxssXIoQF5nKiekVMs/BnlKpMCF1tIHn5bkJCIMVRKCXmeO+y5pCNpZiXpqZ9zFhd28fy0M3zNzJPyKO2ETncf//u77p03k7BzVsEvcoQPrWPZsGbhCHyAkB756KZ+jr1+7K7HHVJaFN+xaSAfP/v7tBw3fRDU3HQ2iy/wa8IRK3V1UR5zl/orjhXh2IAFhplA9Pgcg5zXOoB/bSD4HoVT/LLreyShf/qQgLVcTE+/3cbMA6RyxF3iYLbGWkdMFwYEvgpAKv5AWGhJMSQOkJFF5P+z1GZxjCInBZg76LmreDakQ//RKzYaegY22D6Kl9vkPaN34HbzkW3qIr936achE4vT3keP5cJUzy+J+XkvZEGfVq2RrAT6S5NCPJB3CooewYYlyXcYAQ=="}}},{"type":"reasoning-end","id":"0","metadata":{}},{"type":"text-start","id":"1","metadata":{}},{"type":"text-delta","id":"1","delta":"I'll load the full details of that","metadata":{}},{"type":"text-delta","id":"1","delta":" object for you.","metadata":{}},{"type":"text-end","id":"1","metadata":{}},{"type":"tool-params-start","id":"toolu_01K1PNKf7tzLtp6aRBunEFaz","name":"load-object","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01K1PNKf7tzLtp6aRBunEFaz","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01K1PNKf7tzLtp6aRBunEFaz","delta":"{\"refs","metadata":{}},{"type":"tool-params-delta","id":"toolu_01K1PNKf7tzLtp6aRBunEFaz","delta":"\": [\"dxn:","metadata":{}},{"type":"tool-params-delta","id":"toolu_01K1PNKf7tzLtp6aRBunEFaz","delta":"echo:","metadata":{}},{"type":"tool-params-delta","id":"toolu_01K1PNKf7tzLtp6aRBunEFaz","delta":"BDJXMU","metadata":{}},{"type":"tool-params-delta","id":"toolu_01K1PNKf7tzLtp6aRBunEFaz","delta":"LPW5FB55U","metadata":{}},{"type":"tool-params-delta","id":"toolu_01K1PNKf7tzLtp6aRBunEFaz","delta":"Z7KP5HL","metadata":{}},{"type":"tool-params-delta","id":"toolu_01K1PNKf7tzLtp6aRBunEFaz","delta":"DHV","metadata":{}},{"type":"tool-params-delta","id":"toolu_01K1PNKf7tzLtp6aRBunEFaz","delta":"TXUTHE2U:","metadata":{}},{"type":"tool-params-delta","id":"toolu_01K1PNKf7tzLtp6aRBunEFaz","delta":"01JGFJJZ0","metadata":{}},{"type":"tool-params-delta","id":"toolu_01K1PNKf7tzLtp6aRBunEFaz","delta":"0G0WK","metadata":{}},{"type":"tool-params-delta","id":"toolu_01K1PNKf7tzLtp6aRBunEFaz","delta":"QSJGMAKCNTCB","metadata":{}},{"type":"tool-params-delta","id":"toolu_01K1PNKf7tzLtp6aRBunEFaz","delta":"\"]}","metadata":{}},{"type":"tool-params-end","id":"toolu_01K1PNKf7tzLtp6aRBunEFaz","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":10,"outputTokens":230,"totalTokens":240},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":5714},"cache_creation_input_tokens":5714,"cache_read_input_tokens":0,"input_tokens":10,"output_tokens":3,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Load the full details of object dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTCB. What is its description?","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants me to load the full details of a specific object with the DXN \"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTCB\" and find out its description.\n\nI need to use the load-object function to load the full details of this object.","options":{}},{"type":"text","text":"I'll load the full details of that object for you.","options":{}},{"type":"tool-call","id":"toolu_01K1PNKf7tzLtp6aRBunEFaz","name":"load-object","params":{"refs":["dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTCB"]},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01K1PNKf7tzLtp6aRBunEFaz","name":"load-object","isFailure":false,"result":[{"id":"01JGFJJZ00G0WKQSJGMAKCNTCB","@type":"dxn:type:dxos.org/type/Organization:0.1.0","@meta":{"keys":[]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTCB","description":"A detailed organization.","name":"Detail Corp"}],"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01BJfeAZkmwEarFbyHZiM7sC","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"The object has","metadata":{}},{"type":"text-delta","id":"0","delta":" been loaded successfully","metadata":{}},{"type":"text-delta","id":"0","delta":". Here are the","metadata":{}},{"type":"text-delta","id":"0","delta":" details","metadata":{}},{"type":"text-delta","id":"0","delta":":\n\n-","metadata":{}},{"type":"text-delta","id":"0","delta":" **Type","metadata":{}},{"type":"text-delta","id":"0","delta":"**: Organization","metadata":{}},{"type":"text-delta","id":"0","delta":" (","metadata":{}},{"type":"text-delta","id":"0","delta":"dxos","metadata":{}},{"type":"text-delta","id":"0","delta":".org/type/Organization:0","metadata":{}},{"type":"text-delta","id":"0","delta":".1.0)\n- **","metadata":{}},{"type":"text-delta","id":"0","delta":"Name","metadata":{}},{"type":"text-delta","id":"0","delta":"**: Detail Corp\n- **Description**:","metadata":{}},{"type":"text-delta","id":"0","delta":" \"","metadata":{}},{"type":"text-delta","id":"0","delta":"A detailed organization.\"","metadata":{}},{"type":"text-delta","id":"0","delta":"\n- **D","metadata":{}},{"type":"text-delta","id":"0","delta":"XN**: ","metadata":{}},{"type":"text-delta","id":"0","delta":"dxn:echo:BDJ","metadata":{}},{"type":"text-delta","id":"0","delta":"XMULPW5FB55","metadata":{}},{"type":"text-delta","id":"0","delta":"UZ7KP5HL","metadata":{}},{"type":"text-delta","id":"0","delta":"DHVTXUTHE2U","metadata":{}},{"type":"text-delta","id":"0","delta":":01JGFJJZ","metadata":{}},{"type":"text-delta","id":"0","delta":"00G0WKQSJ","metadata":{}},{"type":"text-delta","id":"0","delta":"GMAKCNTCB\n\nThe","metadata":{}},{"type":"text-delta","id":"0","delta":" description","metadata":{}},{"type":"text-delta","id":"0","delta":" of","metadata":{}},{"type":"text-delta","id":"0","delta":" this organization","metadata":{}},{"type":"text-delta","id":"0","delta":" object","metadata":{}},{"type":"text-delta","id":"0","delta":" is **","metadata":{}},{"type":"text-delta","id":"0","delta":"\"A detailed organization.\"**","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"finish","reason":"stop","usage":{"inputTokens":6,"outputTokens":132,"totalTokens":138},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":5955},"cache_creation_input_tokens":5955,"cache_read_input_tokens":0,"input_tokens":6,"output_tokens":3,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Create an Employer relation from person \"John Connor\" to organization \"Cyberdyne Systems\" with role \"Engineer\". List schemas first to find the relation typename.","options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01Nca7ECkGnH9SFfstRV4PWe","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"reasoning-start","id":"0","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"The user wants","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" to","metadata":{}},{"type":"reasoning-delta","id":"0","delta":":","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"\n1. List","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" schemas first to find the relation typename for","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" an Employer relation\n2. Create","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" an Employer relation from person \"John","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" Connor\" to organization \"Cyber","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"dyne Systems\" with role \"Engineer\"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"\n\nI","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" need to:\n1. First,","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" list schemas to find the correct","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" typename","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" for the Employer relation\n2.","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" Then query","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" for \"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"John Connor\" (","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"person)","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" an","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"d \"Cyberdyne Systems\" (","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"organization) to get","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" their","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" IDs\n3. Create the relation","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" between","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" them","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" with the role","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" \"Engineer\"\n\nLet's","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" start by listing schemas to see what relation","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" types are available.","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{"anthropic":{"type":"thinking","signature":"ErkFCkYICxgCKkBuYcTsjvqJ0656DOTqdRxIBr6cWRiLjgb/NJJwqTc1NHZhsTEc/D/2WXV/my4XvTUxr+BB0bm6wW2g2E0LtX3XEgwFwW4+KFPZ1CGOUMwaDBYfLb58Yas521hBoiIwJaCd5jWvPscEMRFYVMOs4k/zh6aHD5hTh0Q01XHWtXLtas7vW+dlWH8xCwxCMaLtKqAEpdVSGZZeb2ZAhPotTRU1vB3oLlltNuY4yHzQDaWekIcgIXdHzLV19BPVDmRmYxfeN67Aia3SDQ9PDqm8GsX0tsICymPQGhFj7xHrKWvhZL0zfYbMbgLjmSHmxNwr/wDU6gQN6xWmOYfkg2fRkYAHW/rOGLOr6hzBc4MJTWzxoLM+a0le6PTYuhJt4oB4IEbFzUOenBOr5V4IkGfBjo0thueaNQ/lWPVcsvIE7GtRDNna4r3m74QwlhKdUTQATzJUP7l0I3qnAIQu7nyoZQfB+aMcDRll8lW1D908KZJCxdfZb6PFxMEIrQ5O3957/3xb0ADW1FQdDEnuKAdKmQz3dtIX+1W61+x/W5hgIGtHWY3R/v7S/u3pUPrkvOJtLdJEKPvlxIq/xj6EPKaArUaaK92FZQktwWCVSM7YIwZrfjOlzKPfFbrXgoHdNdlEG+Woe0/5CJFioYG0aFeTggMERpuOaYKyN3PSs8I/Rriq4sevClK8AERuCFl0jGTAbLyfbQLIs4v+rtoLvty3/K7QugFHKkisPBPuERO1SlXzSUqF9BtmMXQycSszQoaLBvH1tEYhJfe/r05E7+KKWrjnGztPVxXekSZHJ1tOTfnj3ZEXX0VJ3LfEeG2rcFj0/HZqrK4GBgHbnOpeI7xX+F/+OnQd7tXwy53DAq3jfiMz9O+8Nnr99vb611L/K67eNo6imfIH9DfDSRgbyfrRCIQWlBgB"}}},{"type":"reasoning-end","id":"0","metadata":{}},{"type":"text-start","id":"1","metadata":{}},{"type":"text-delta","id":"1","delta":"I'll help you","metadata":{}},{"type":"text-delta","id":"1","delta":" create an Employer relation.","metadata":{}},{"type":"text-delta","id":"1","delta":" Let","metadata":{}},{"type":"text-delta","id":"1","delta":" me first list the schemas to find the","metadata":{}},{"type":"text-delta","id":"1","delta":" correct","metadata":{}},{"type":"text-delta","id":"1","delta":" typename","metadata":{}},{"type":"text-delta","id":"1","delta":" for","metadata":{}},{"type":"text-delta","id":"1","delta":" the Employer relation.","metadata":{}},{"type":"text-end","id":"1","metadata":{}},{"type":"tool-params-start","id":"toolu_011q8GJcTLDbnXAPJmLeQdeN","name":"list-schemas","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_011q8GJcTLDbnXAPJmLeQdeN","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_011q8GJcTLDbnXAPJmLeQdeN","delta":"{\"limit\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_011q8GJcTLDbnXAPJmLeQdeN","delta":": 50}","metadata":{}},{"type":"tool-params-end","id":"toolu_011q8GJcTLDbnXAPJmLeQdeN","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":10,"outputTokens":218,"totalTokens":228},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":5681},"cache_creation_input_tokens":5681,"cache_read_input_tokens":0,"input_tokens":10,"output_tokens":3,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Create an Employer relation from person \"John Connor\" to organization \"Cyberdyne Systems\" with role \"Engineer\". List schemas first to find the relation typename.","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to:\n1. List schemas first to find the relation typename for an Employer relation\n2. Create an Employer relation from person \"John Connor\" to organization \"Cyberdyne Systems\" with role \"Engineer\"\n\nI need to:\n1. First, list schemas to find the correct typename for the Employer relation\n2. Then query for \"John Connor\" (person) and \"Cyberdyne Systems\" (organization) to get their IDs\n3. Create the relation between them with the role \"Engineer\"\n\nLet's start by listing schemas to see what relation types are available.","options":{}},{"type":"text","text":"I'll help you create an Employer relation. Let me first list the schemas to find the correct typename for the Employer relation.","options":{}},{"type":"tool-call","id":"toolu_011q8GJcTLDbnXAPJmLeQdeN","name":"list-schemas","params":{"limit":50},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_011q8GJcTLDbnXAPJmLeQdeN","name":"list-schemas","isFailure":false,"result":[{"typename":"dxos.org/relation/Employer","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/relation/Employer","entityKind":"relation","typename":"dxos.org/relation/Employer","version":"0.1.0","relationTarget":{"$ref":"dxn:type:dxos.org/type/Organization"},"relationSource":{"$ref":"dxn:type:dxos.org/type/Person"},"type":"object","properties":{"id":{"type":"string","description":"A Universally Unique Lexicographically Sortable Identifier","pattern":"^[0-7][0-9A-HJKMNP-TV-Z]{25}$"},"role":{"type":"string"},"active":{"type":"boolean"},"startDate":{"type":"string"},"endDate":{"type":"string"}},"required":["id"],"propertyOrder":["id","role","active","startDate","endDate"],"additionalProperties":false,"description":"An employing organization of a person."},"kind":"relation"},{"typename":"dxos.org/type/Blueprint","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Blueprint","entityKind":"object","typename":"dxos.org/type/Blueprint","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"key":{"type":"string","description":"Unique registration key for the blueprint"},"name":{"type":"string","description":"Human-readable name of the blueprint"},"description":{"type":"string","description":"Description of the blueprint's purpose and functionality"},"instructions":{"type":"object","required":["source"],"properties":{"source":{"allOf":[{"$id":"/schemas/echo/ref","$ref":"/schemas/echo/ref","reference":{"schema":{"$ref":"dxn:type:dxos.org/type/Text"},"schemaVersion":"0.1.0"}}],"description":"Handlebars template source"},"inputs":{"type":"array","items":{"type":"object","required":["name"],"properties":{"name":{"type":"string"},"kind":{"type":"string","enum":["value","pass-through","retriever","function","query","resolver","context","schema"]},"default":{"$id":"/schemas/any","title":"any"},"function":{"type":"string"}},"additionalProperties":false,"propertyOrder":["name","kind","default","function"]}}},"additionalProperties":false,"description":"Instructions that guide the AI assistant's behavior and responses","propertyOrder":["source","inputs"]},"tools":{"type":"array","items":{"$ref":"#/$defs/ToolId"},"description":"Array of tools that the AI assistant can use when this blueprint is active"},"mcpServers":{"type":"array","items":{"type":"object","required":["url","protocol"],"properties":{"url":{"type":"string","description":"URL of the MCP server"},"protocol":{"type":"string","enum":["sse","http"],"description":"Protocol of the MCP server"}},"additionalProperties":false,"propertyOrder":["url","protocol"]}}},"required":["key","name","instructions","tools","id"],"propertyOrder":["key","name","description","instructions","tools","mcpServers","id"],"additionalProperties":false,"annotations":{"meta":{"dxos.org/annotation/Icon":{"icon":"ph--blueprint--regular","hue":"blue"}},"labelProp":["name"]}},"kind":"record"},{"typename":"dxos.org/type/Organization","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Organization","entityKind":"object","typename":"dxos.org/type/Organization","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"name":{"type":"string","title":"Name","annotations":{"generator":{"generator":"company.name","probability":1}}},"description":{"type":"string","title":"Description","annotations":{"generator":{"generator":"lorem.paragraphs","args":[{"min":1,"max":3}]}}},"status":{"type":"string","enum":["prospect","qualified","active","commit","reject"],"title":"Status","annotations":{"meta":{"singleSelect":{"options":[{"id":"prospect","title":"Prospect","color":"indigo"},{"id":"qualified","title":"Qualified","color":"purple"},{"id":"active","title":"Active","color":"amber"},{"id":"commit","title":"Commit","color":"emerald"},{"id":"reject","title":"Reject","color":"red"}]}},"generator":{"generator":"helpers.arrayElement","args":[["prospect","qualified","active","commit","reject"]]}},"format":"single-select"},"image":{"type":"string","title":"Image","annotations":{"generator":"image.url"}},"website":{"type":"string","title":"Website","annotations":{"generator":"internet.url"}},"location":{"type":"array","minItems":2,"items":[{"type":"number","title":"Longitude"},{"type":"number","title":"Latitude"},{"type":"number","title":"Height ASL (m)"}],"additionalItems":false,"description":"GeoJSON Position","title":"Location","format":"lnglat"}},"required":["id"],"propertyOrder":["name","description","status","image","website","location","id"],"additionalProperties":false,"description":"An organization.","title":"Organization","annotations":{"labelProp":["name"]}},"kind":"record"},{"typename":"dxos.org/type/Person","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Person","entityKind":"object","typename":"dxos.org/type/Person","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"fullName":{"type":"string","title":"Full Name","annotations":{"generator":{"generator":"person.fullName","probability":1}}},"preferredName":{"type":"string","title":"Preferred Name"},"nickname":{"type":"string","title":"Nickname"},"image":{"type":"string","title":"Image"},"organization":{"allOf":[{"$id":"/schemas/echo/ref","$ref":"/schemas/echo/ref","reference":{"schema":{"$ref":"dxn:type:dxos.org/type/Organization"},"schemaVersion":"0.1.0"}}],"description":"Current employer","title":"Employer","annotations":{"meta":{"referenceProperty":"name"}}},"jobTitle":{"type":"string","title":"Job Title"},"department":{"type":"string","title":"Department"},"notes":{"type":"string","title":"Notes"},"emails":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string","description":"Email address","title":"Email","default":"hello@email.com","pattern":"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$","annotations":{"generator":"internet.email"},"format":"email"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"identities":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"phoneNumbers":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["label","value"]},"title":"Phone Numbers"},"addresses":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"object","required":[],"properties":{"street":{"type":"string","description":"The street address.","examples":["1600 Amphitheatre Pkwy"]},"extended":{"type":"string","description":"An address extension such as an apartment number, C/O or alternative name.","examples":["Apt 1","Suite 2"]},"locality":{"type":"string","description":"The locality in which the street address is, and which is in the region.","examples":["Mountain View","Bangkok"]},"region":{"type":"string","description":"The region in which the locality is, and which is in the country.","examples":["CA","NY"]},"postalCode":{"type":"string","description":"The postal code.","examples":["12345","A1A 1A1"]},"postOfficeBoxNumber":{"type":"string","description":"The post office box number for PO Box addresses."},"country":{"type":"string","description":"The country in 2-letter ISO 3166-1 alpha-2 format.","examples":["US","SG"]}},"additionalProperties":false,"propertyOrder":["street","extended","locality","region","postalCode","postOfficeBoxNumber","country"]}},"additionalProperties":false,"propertyOrder":["label","value"]}},"urls":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string","description":"URL","title":"URL","default":"https://example.com","pattern":"^(\\w+?:\\/\\/)?([\\da-z.-]+)\\.([a-z.]{2,6})([/\\w .-]*)*\\/?$","annotations":{"generator":"internet.url"},"format":"url"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"birthday":{"type":"string","title":"Birthday","annotations":{"generator":"date.iso8601"}},"fields":{"type":"array","items":{"type":"object","required":["label","value"],"properties":{"category":{"type":"string"},"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["category","label","value"]}},"location":{"type":"array","minItems":2,"items":[{"type":"number","title":"Longitude"},{"type":"number","title":"Latitude"},{"type":"number","title":"Height ASL (m)"}],"additionalItems":false,"description":"GeoJSON Position","title":"Location","format":"lnglat"}},"required":["id"],"propertyOrder":["fullName","preferredName","nickname","image","organization","jobTitle","department","notes","emails","identities","phoneNumbers","addresses","urls","birthday","fields","location","id"],"additionalProperties":false,"title":"Person","annotations":{"labelProp":["preferredName","fullName","nickname"]}},"kind":"record"},{"typename":"dxos.org/type/Tag","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Tag","entityKind":"object","typename":"dxos.org/type/Tag","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"},"hue":{"type":"string"}},"required":["label","id"],"propertyOrder":["label","hue","id"],"additionalProperties":false,"annotations":{"labelProp":["label"]}},"kind":"record"},{"typename":"example.com/type/Expando","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:example.com/type/Expando","entityKind":"object","typename":"example.com/type/Expando","version":"0.1.0","type":"object","properties":{"id":{"type":"string"}},"required":["id"],"propertyOrder":["id"],"additionalProperties":{"$id":"/schemas/any","title":"any"}},"kind":"record"}],"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01MhgLVQeb4tXHodsSQ6udkW","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"Great","metadata":{}},{"type":"text-delta","id":"0","delta":"! I","metadata":{}},{"type":"text-delta","id":"0","delta":" foun","metadata":{}},{"type":"text-delta","id":"0","delta":"d the","metadata":{}},{"type":"text-delta","id":"0","delta":" Employer","metadata":{}},{"type":"text-delta","id":"0","delta":" relation","metadata":{}},{"type":"text-delta","id":"0","delta":" schema","metadata":{}},{"type":"text-delta","id":"0","delta":". Now I need to fin","metadata":{}},{"type":"text-delta","id":"0","delta":"d the \"","metadata":{}},{"type":"text-delta","id":"0","delta":"John","metadata":{}},{"type":"text-delta","id":"0","delta":" Connor","metadata":{}},{"type":"text-delta","id":"0","delta":"\" person an","metadata":{}},{"type":"text-delta","id":"0","delta":"d \"","metadata":{}},{"type":"text-delta","id":"0","delta":"Cyb","metadata":{}},{"type":"text-delta","id":"0","delta":"erdyne Systems\" organization to create","metadata":{}},{"type":"text-delta","id":"0","delta":" the relation","metadata":{}},{"type":"text-delta","id":"0","delta":" between","metadata":{}},{"type":"text-delta","id":"0","delta":" them.","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"tool-params-start","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","name":"query","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","delta":"{\"typename","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","delta":"\": \"dxos","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","delta":".org/type","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","delta":"/Person","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","delta":"\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","delta":", \"t","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","delta":"ext","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","delta":"\": \"John Con","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","delta":"nor\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","delta":", \"include","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","delta":"Cont","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","delta":"ent\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","delta":": f","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","delta":"alse","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","delta":", \"li","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","delta":"mit\": 5}","metadata":{}},{"type":"tool-params-end","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":6,"outputTokens":151,"totalTokens":157},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":8670},"cache_creation_input_tokens":8670,"cache_read_input_tokens":0,"input_tokens":6,"output_tokens":1,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Create an Employer relation from person \"John Connor\" to organization \"Cyberdyne Systems\" with role \"Engineer\". List schemas first to find the relation typename.","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to:\n1. List schemas first to find the relation typename for an Employer relation\n2. Create an Employer relation from person \"John Connor\" to organization \"Cyberdyne Systems\" with role \"Engineer\"\n\nI need to:\n1. First, list schemas to find the correct typename for the Employer relation\n2. Then query for \"John Connor\" (person) and \"Cyberdyne Systems\" (organization) to get their IDs\n3. Create the relation between them with the role \"Engineer\"\n\nLet's start by listing schemas to see what relation types are available.","options":{}},{"type":"text","text":"I'll help you create an Employer relation. Let me first list the schemas to find the correct typename for the Employer relation.","options":{}},{"type":"tool-call","id":"toolu_011q8GJcTLDbnXAPJmLeQdeN","name":"list-schemas","params":{"limit":50},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_011q8GJcTLDbnXAPJmLeQdeN","name":"list-schemas","isFailure":false,"result":[{"typename":"dxos.org/relation/Employer","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/relation/Employer","entityKind":"relation","typename":"dxos.org/relation/Employer","version":"0.1.0","relationTarget":{"$ref":"dxn:type:dxos.org/type/Organization"},"relationSource":{"$ref":"dxn:type:dxos.org/type/Person"},"type":"object","properties":{"id":{"type":"string","description":"A Universally Unique Lexicographically Sortable Identifier","pattern":"^[0-7][0-9A-HJKMNP-TV-Z]{25}$"},"role":{"type":"string"},"active":{"type":"boolean"},"startDate":{"type":"string"},"endDate":{"type":"string"}},"required":["id"],"propertyOrder":["id","role","active","startDate","endDate"],"additionalProperties":false,"description":"An employing organization of a person."},"kind":"relation"},{"typename":"dxos.org/type/Blueprint","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Blueprint","entityKind":"object","typename":"dxos.org/type/Blueprint","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"key":{"type":"string","description":"Unique registration key for the blueprint"},"name":{"type":"string","description":"Human-readable name of the blueprint"},"description":{"type":"string","description":"Description of the blueprint's purpose and functionality"},"instructions":{"type":"object","required":["source"],"properties":{"source":{"allOf":[{"$id":"/schemas/echo/ref","$ref":"/schemas/echo/ref","reference":{"schema":{"$ref":"dxn:type:dxos.org/type/Text"},"schemaVersion":"0.1.0"}}],"description":"Handlebars template source"},"inputs":{"type":"array","items":{"type":"object","required":["name"],"properties":{"name":{"type":"string"},"kind":{"type":"string","enum":["value","pass-through","retriever","function","query","resolver","context","schema"]},"default":{"$id":"/schemas/any","title":"any"},"function":{"type":"string"}},"additionalProperties":false,"propertyOrder":["name","kind","default","function"]}}},"additionalProperties":false,"description":"Instructions that guide the AI assistant's behavior and responses","propertyOrder":["source","inputs"]},"tools":{"type":"array","items":{"$ref":"#/$defs/ToolId"},"description":"Array of tools that the AI assistant can use when this blueprint is active"},"mcpServers":{"type":"array","items":{"type":"object","required":["url","protocol"],"properties":{"url":{"type":"string","description":"URL of the MCP server"},"protocol":{"type":"string","enum":["sse","http"],"description":"Protocol of the MCP server"}},"additionalProperties":false,"propertyOrder":["url","protocol"]}}},"required":["key","name","instructions","tools","id"],"propertyOrder":["key","name","description","instructions","tools","mcpServers","id"],"additionalProperties":false,"annotations":{"meta":{"dxos.org/annotation/Icon":{"icon":"ph--blueprint--regular","hue":"blue"}},"labelProp":["name"]}},"kind":"record"},{"typename":"dxos.org/type/Organization","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Organization","entityKind":"object","typename":"dxos.org/type/Organization","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"name":{"type":"string","title":"Name","annotations":{"generator":{"generator":"company.name","probability":1}}},"description":{"type":"string","title":"Description","annotations":{"generator":{"generator":"lorem.paragraphs","args":[{"min":1,"max":3}]}}},"status":{"type":"string","enum":["prospect","qualified","active","commit","reject"],"title":"Status","annotations":{"meta":{"singleSelect":{"options":[{"id":"prospect","title":"Prospect","color":"indigo"},{"id":"qualified","title":"Qualified","color":"purple"},{"id":"active","title":"Active","color":"amber"},{"id":"commit","title":"Commit","color":"emerald"},{"id":"reject","title":"Reject","color":"red"}]}},"generator":{"generator":"helpers.arrayElement","args":[["prospect","qualified","active","commit","reject"]]}},"format":"single-select"},"image":{"type":"string","title":"Image","annotations":{"generator":"image.url"}},"website":{"type":"string","title":"Website","annotations":{"generator":"internet.url"}},"location":{"type":"array","minItems":2,"items":[{"type":"number","title":"Longitude"},{"type":"number","title":"Latitude"},{"type":"number","title":"Height ASL (m)"}],"additionalItems":false,"description":"GeoJSON Position","title":"Location","format":"lnglat"}},"required":["id"],"propertyOrder":["name","description","status","image","website","location","id"],"additionalProperties":false,"description":"An organization.","title":"Organization","annotations":{"labelProp":["name"]}},"kind":"record"},{"typename":"dxos.org/type/Person","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Person","entityKind":"object","typename":"dxos.org/type/Person","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"fullName":{"type":"string","title":"Full Name","annotations":{"generator":{"generator":"person.fullName","probability":1}}},"preferredName":{"type":"string","title":"Preferred Name"},"nickname":{"type":"string","title":"Nickname"},"image":{"type":"string","title":"Image"},"organization":{"allOf":[{"$id":"/schemas/echo/ref","$ref":"/schemas/echo/ref","reference":{"schema":{"$ref":"dxn:type:dxos.org/type/Organization"},"schemaVersion":"0.1.0"}}],"description":"Current employer","title":"Employer","annotations":{"meta":{"referenceProperty":"name"}}},"jobTitle":{"type":"string","title":"Job Title"},"department":{"type":"string","title":"Department"},"notes":{"type":"string","title":"Notes"},"emails":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string","description":"Email address","title":"Email","default":"hello@email.com","pattern":"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$","annotations":{"generator":"internet.email"},"format":"email"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"identities":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"phoneNumbers":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["label","value"]},"title":"Phone Numbers"},"addresses":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"object","required":[],"properties":{"street":{"type":"string","description":"The street address.","examples":["1600 Amphitheatre Pkwy"]},"extended":{"type":"string","description":"An address extension such as an apartment number, C/O or alternative name.","examples":["Apt 1","Suite 2"]},"locality":{"type":"string","description":"The locality in which the street address is, and which is in the region.","examples":["Mountain View","Bangkok"]},"region":{"type":"string","description":"The region in which the locality is, and which is in the country.","examples":["CA","NY"]},"postalCode":{"type":"string","description":"The postal code.","examples":["12345","A1A 1A1"]},"postOfficeBoxNumber":{"type":"string","description":"The post office box number for PO Box addresses."},"country":{"type":"string","description":"The country in 2-letter ISO 3166-1 alpha-2 format.","examples":["US","SG"]}},"additionalProperties":false,"propertyOrder":["street","extended","locality","region","postalCode","postOfficeBoxNumber","country"]}},"additionalProperties":false,"propertyOrder":["label","value"]}},"urls":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string","description":"URL","title":"URL","default":"https://example.com","pattern":"^(\\w+?:\\/\\/)?([\\da-z.-]+)\\.([a-z.]{2,6})([/\\w .-]*)*\\/?$","annotations":{"generator":"internet.url"},"format":"url"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"birthday":{"type":"string","title":"Birthday","annotations":{"generator":"date.iso8601"}},"fields":{"type":"array","items":{"type":"object","required":["label","value"],"properties":{"category":{"type":"string"},"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["category","label","value"]}},"location":{"type":"array","minItems":2,"items":[{"type":"number","title":"Longitude"},{"type":"number","title":"Latitude"},{"type":"number","title":"Height ASL (m)"}],"additionalItems":false,"description":"GeoJSON Position","title":"Location","format":"lnglat"}},"required":["id"],"propertyOrder":["fullName","preferredName","nickname","image","organization","jobTitle","department","notes","emails","identities","phoneNumbers","addresses","urls","birthday","fields","location","id"],"additionalProperties":false,"title":"Person","annotations":{"labelProp":["preferredName","fullName","nickname"]}},"kind":"record"},{"typename":"dxos.org/type/Tag","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Tag","entityKind":"object","typename":"dxos.org/type/Tag","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"},"hue":{"type":"string"}},"required":["label","id"],"propertyOrder":["label","hue","id"],"additionalProperties":false,"annotations":{"labelProp":["label"]}},"kind":"record"},{"typename":"example.com/type/Expando","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:example.com/type/Expando","entityKind":"object","typename":"example.com/type/Expando","version":"0.1.0","type":"object","properties":{"id":{"type":"string"}},"required":["id"],"propertyOrder":["id"],"additionalProperties":{"$id":"/schemas/any","title":"any"}},"kind":"record"}],"providerExecuted":false,"options":{}}],"options":{}},{"role":"assistant","content":[{"type":"text","text":"Great! I found the Employer relation schema. Now I need to find the \"John Connor\" person and \"Cyberdyne Systems\" organization to create the relation between them.","options":{}},{"type":"tool-call","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","name":"query","params":{"typename":"dxos.org/type/Person","text":"John Connor","includeContent":false,"limit":5},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","name":"query","isFailure":false,"result":[{"dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTCX","typename":"dxos.org/type/Person","label":"John Connor"}],"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01KPECn4Q5yk6ithnVVF3ojW","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"tool-params-start","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","name":"query","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","delta":"{\"ty","metadata":{}},{"type":"tool-params-delta","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","delta":"pename\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","delta":": \"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","delta":"dxo","metadata":{}},{"type":"tool-params-delta","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","delta":"s.org/t","metadata":{}},{"type":"tool-params-delta","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","delta":"ype/Organiz","metadata":{}},{"type":"tool-params-delta","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","delta":"ation\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","delta":", \"text\": \"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","delta":"Cyb","metadata":{}},{"type":"tool-params-delta","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","delta":"erdyne Sy","metadata":{}},{"type":"tool-params-delta","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","delta":"stems","metadata":{}},{"type":"tool-params-delta","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","delta":"\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","delta":", \"in","metadata":{}},{"type":"tool-params-delta","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","delta":"cludeContent","metadata":{}},{"type":"tool-params-delta","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","delta":"\": fals","metadata":{}},{"type":"tool-params-delta","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","delta":"e","metadata":{}},{"type":"tool-params-delta","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","delta":", \"lim","metadata":{}},{"type":"tool-params-delta","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","delta":"it\": 5}","metadata":{}},{"type":"tool-params-end","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":6,"outputTokens":116,"totalTokens":122},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":242},"cache_creation_input_tokens":242,"cache_read_input_tokens":8670,"input_tokens":6,"output_tokens":24,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Create an Employer relation from person \"John Connor\" to organization \"Cyberdyne Systems\" with role \"Engineer\". List schemas first to find the relation typename.","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to:\n1. List schemas first to find the relation typename for an Employer relation\n2. Create an Employer relation from person \"John Connor\" to organization \"Cyberdyne Systems\" with role \"Engineer\"\n\nI need to:\n1. First, list schemas to find the correct typename for the Employer relation\n2. Then query for \"John Connor\" (person) and \"Cyberdyne Systems\" (organization) to get their IDs\n3. Create the relation between them with the role \"Engineer\"\n\nLet's start by listing schemas to see what relation types are available.","options":{}},{"type":"text","text":"I'll help you create an Employer relation. Let me first list the schemas to find the correct typename for the Employer relation.","options":{}},{"type":"tool-call","id":"toolu_011q8GJcTLDbnXAPJmLeQdeN","name":"list-schemas","params":{"limit":50},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_011q8GJcTLDbnXAPJmLeQdeN","name":"list-schemas","isFailure":false,"result":[{"typename":"dxos.org/relation/Employer","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/relation/Employer","entityKind":"relation","typename":"dxos.org/relation/Employer","version":"0.1.0","relationTarget":{"$ref":"dxn:type:dxos.org/type/Organization"},"relationSource":{"$ref":"dxn:type:dxos.org/type/Person"},"type":"object","properties":{"id":{"type":"string","description":"A Universally Unique Lexicographically Sortable Identifier","pattern":"^[0-7][0-9A-HJKMNP-TV-Z]{25}$"},"role":{"type":"string"},"active":{"type":"boolean"},"startDate":{"type":"string"},"endDate":{"type":"string"}},"required":["id"],"propertyOrder":["id","role","active","startDate","endDate"],"additionalProperties":false,"description":"An employing organization of a person."},"kind":"relation"},{"typename":"dxos.org/type/Blueprint","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Blueprint","entityKind":"object","typename":"dxos.org/type/Blueprint","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"key":{"type":"string","description":"Unique registration key for the blueprint"},"name":{"type":"string","description":"Human-readable name of the blueprint"},"description":{"type":"string","description":"Description of the blueprint's purpose and functionality"},"instructions":{"type":"object","required":["source"],"properties":{"source":{"allOf":[{"$id":"/schemas/echo/ref","$ref":"/schemas/echo/ref","reference":{"schema":{"$ref":"dxn:type:dxos.org/type/Text"},"schemaVersion":"0.1.0"}}],"description":"Handlebars template source"},"inputs":{"type":"array","items":{"type":"object","required":["name"],"properties":{"name":{"type":"string"},"kind":{"type":"string","enum":["value","pass-through","retriever","function","query","resolver","context","schema"]},"default":{"$id":"/schemas/any","title":"any"},"function":{"type":"string"}},"additionalProperties":false,"propertyOrder":["name","kind","default","function"]}}},"additionalProperties":false,"description":"Instructions that guide the AI assistant's behavior and responses","propertyOrder":["source","inputs"]},"tools":{"type":"array","items":{"$ref":"#/$defs/ToolId"},"description":"Array of tools that the AI assistant can use when this blueprint is active"},"mcpServers":{"type":"array","items":{"type":"object","required":["url","protocol"],"properties":{"url":{"type":"string","description":"URL of the MCP server"},"protocol":{"type":"string","enum":["sse","http"],"description":"Protocol of the MCP server"}},"additionalProperties":false,"propertyOrder":["url","protocol"]}}},"required":["key","name","instructions","tools","id"],"propertyOrder":["key","name","description","instructions","tools","mcpServers","id"],"additionalProperties":false,"annotations":{"meta":{"dxos.org/annotation/Icon":{"icon":"ph--blueprint--regular","hue":"blue"}},"labelProp":["name"]}},"kind":"record"},{"typename":"dxos.org/type/Organization","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Organization","entityKind":"object","typename":"dxos.org/type/Organization","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"name":{"type":"string","title":"Name","annotations":{"generator":{"generator":"company.name","probability":1}}},"description":{"type":"string","title":"Description","annotations":{"generator":{"generator":"lorem.paragraphs","args":[{"min":1,"max":3}]}}},"status":{"type":"string","enum":["prospect","qualified","active","commit","reject"],"title":"Status","annotations":{"meta":{"singleSelect":{"options":[{"id":"prospect","title":"Prospect","color":"indigo"},{"id":"qualified","title":"Qualified","color":"purple"},{"id":"active","title":"Active","color":"amber"},{"id":"commit","title":"Commit","color":"emerald"},{"id":"reject","title":"Reject","color":"red"}]}},"generator":{"generator":"helpers.arrayElement","args":[["prospect","qualified","active","commit","reject"]]}},"format":"single-select"},"image":{"type":"string","title":"Image","annotations":{"generator":"image.url"}},"website":{"type":"string","title":"Website","annotations":{"generator":"internet.url"}},"location":{"type":"array","minItems":2,"items":[{"type":"number","title":"Longitude"},{"type":"number","title":"Latitude"},{"type":"number","title":"Height ASL (m)"}],"additionalItems":false,"description":"GeoJSON Position","title":"Location","format":"lnglat"}},"required":["id"],"propertyOrder":["name","description","status","image","website","location","id"],"additionalProperties":false,"description":"An organization.","title":"Organization","annotations":{"labelProp":["name"]}},"kind":"record"},{"typename":"dxos.org/type/Person","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Person","entityKind":"object","typename":"dxos.org/type/Person","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"fullName":{"type":"string","title":"Full Name","annotations":{"generator":{"generator":"person.fullName","probability":1}}},"preferredName":{"type":"string","title":"Preferred Name"},"nickname":{"type":"string","title":"Nickname"},"image":{"type":"string","title":"Image"},"organization":{"allOf":[{"$id":"/schemas/echo/ref","$ref":"/schemas/echo/ref","reference":{"schema":{"$ref":"dxn:type:dxos.org/type/Organization"},"schemaVersion":"0.1.0"}}],"description":"Current employer","title":"Employer","annotations":{"meta":{"referenceProperty":"name"}}},"jobTitle":{"type":"string","title":"Job Title"},"department":{"type":"string","title":"Department"},"notes":{"type":"string","title":"Notes"},"emails":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string","description":"Email address","title":"Email","default":"hello@email.com","pattern":"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$","annotations":{"generator":"internet.email"},"format":"email"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"identities":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"phoneNumbers":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["label","value"]},"title":"Phone Numbers"},"addresses":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"object","required":[],"properties":{"street":{"type":"string","description":"The street address.","examples":["1600 Amphitheatre Pkwy"]},"extended":{"type":"string","description":"An address extension such as an apartment number, C/O or alternative name.","examples":["Apt 1","Suite 2"]},"locality":{"type":"string","description":"The locality in which the street address is, and which is in the region.","examples":["Mountain View","Bangkok"]},"region":{"type":"string","description":"The region in which the locality is, and which is in the country.","examples":["CA","NY"]},"postalCode":{"type":"string","description":"The postal code.","examples":["12345","A1A 1A1"]},"postOfficeBoxNumber":{"type":"string","description":"The post office box number for PO Box addresses."},"country":{"type":"string","description":"The country in 2-letter ISO 3166-1 alpha-2 format.","examples":["US","SG"]}},"additionalProperties":false,"propertyOrder":["street","extended","locality","region","postalCode","postOfficeBoxNumber","country"]}},"additionalProperties":false,"propertyOrder":["label","value"]}},"urls":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string","description":"URL","title":"URL","default":"https://example.com","pattern":"^(\\w+?:\\/\\/)?([\\da-z.-]+)\\.([a-z.]{2,6})([/\\w .-]*)*\\/?$","annotations":{"generator":"internet.url"},"format":"url"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"birthday":{"type":"string","title":"Birthday","annotations":{"generator":"date.iso8601"}},"fields":{"type":"array","items":{"type":"object","required":["label","value"],"properties":{"category":{"type":"string"},"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["category","label","value"]}},"location":{"type":"array","minItems":2,"items":[{"type":"number","title":"Longitude"},{"type":"number","title":"Latitude"},{"type":"number","title":"Height ASL (m)"}],"additionalItems":false,"description":"GeoJSON Position","title":"Location","format":"lnglat"}},"required":["id"],"propertyOrder":["fullName","preferredName","nickname","image","organization","jobTitle","department","notes","emails","identities","phoneNumbers","addresses","urls","birthday","fields","location","id"],"additionalProperties":false,"title":"Person","annotations":{"labelProp":["preferredName","fullName","nickname"]}},"kind":"record"},{"typename":"dxos.org/type/Tag","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Tag","entityKind":"object","typename":"dxos.org/type/Tag","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"},"hue":{"type":"string"}},"required":["label","id"],"propertyOrder":["label","hue","id"],"additionalProperties":false,"annotations":{"labelProp":["label"]}},"kind":"record"},{"typename":"example.com/type/Expando","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:example.com/type/Expando","entityKind":"object","typename":"example.com/type/Expando","version":"0.1.0","type":"object","properties":{"id":{"type":"string"}},"required":["id"],"propertyOrder":["id"],"additionalProperties":{"$id":"/schemas/any","title":"any"}},"kind":"record"}],"providerExecuted":false,"options":{}}],"options":{}},{"role":"assistant","content":[{"type":"text","text":"Great! I found the Employer relation schema. Now I need to find the \"John Connor\" person and \"Cyberdyne Systems\" organization to create the relation between them.","options":{}},{"type":"tool-call","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","name":"query","params":{"typename":"dxos.org/type/Person","text":"John Connor","includeContent":false,"limit":5},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","name":"query","isFailure":false,"result":[{"dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTCX","typename":"dxos.org/type/Person","label":"John Connor"}],"providerExecuted":false,"options":{}}],"options":{}},{"role":"assistant","content":[{"type":"tool-call","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","name":"query","params":{"typename":"dxos.org/type/Organization","text":"Cyberdyne Systems","includeContent":false,"limit":5},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","name":"query","isFailure":false,"result":[{"dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTCZ","typename":"dxos.org/type/Organization","label":"Cyberdyne Systems"}],"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01UduuaYQGN1DGN8u2ghMX3x","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"Perfect! I","metadata":{}},{"type":"text-delta","id":"0","delta":" found both John Connor and Cyber","metadata":{}},{"type":"text-delta","id":"0","delta":"dyne Systems. Now I'll create the","metadata":{}},{"type":"text-delta","id":"0","delta":" Employer relation between them with","metadata":{}},{"type":"text-delta","id":"0","delta":" the role","metadata":{}},{"type":"text-delta","id":"0","delta":" \"Engineer","metadata":{}},{"type":"text-delta","id":"0","delta":"\".","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"tool-params-start","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","name":"create-relation","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"{\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"typen","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"ame\": ","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"\"dxo","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"s.org/relati","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"on/Employer\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":", \"sou","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"rce","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"\": \"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"dxn:echo:","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"BDJ","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"XMULPW5FB","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"55UZ7KP5HLD","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"HV","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"TXUTHE","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"2U:01JG","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"FJJZ","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"00G0","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"WKQSJGMAKCN","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"TCX\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":", \"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"ta","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"rget","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"\": \"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"dxn:echo:BD","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"JXMULPW5","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"FB55UZ7KP5","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"HLDHVTXUT","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"HE2","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"U:01JGF","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"JJZ00G0WKQS","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"JGMAKCNTC","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"Z\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":", \"proper","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"ties\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":": {\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"role\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":":\"Engineer\",","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"\"active\":","metadata":{}},{"type":"tool-params-delta","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","delta":"true}}","metadata":{}},{"type":"tool-params-end","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":6,"outputTokens":267,"totalTokens":273},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":210},"cache_creation_input_tokens":210,"cache_read_input_tokens":8912,"input_tokens":6,"output_tokens":3,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Create an Employer relation from person \"John Connor\" to organization \"Cyberdyne Systems\" with role \"Engineer\". List schemas first to find the relation typename.","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to:\n1. List schemas first to find the relation typename for an Employer relation\n2. Create an Employer relation from person \"John Connor\" to organization \"Cyberdyne Systems\" with role \"Engineer\"\n\nI need to:\n1. First, list schemas to find the correct typename for the Employer relation\n2. Then query for \"John Connor\" (person) and \"Cyberdyne Systems\" (organization) to get their IDs\n3. Create the relation between them with the role \"Engineer\"\n\nLet's start by listing schemas to see what relation types are available.","options":{}},{"type":"text","text":"I'll help you create an Employer relation. Let me first list the schemas to find the correct typename for the Employer relation.","options":{}},{"type":"tool-call","id":"toolu_011q8GJcTLDbnXAPJmLeQdeN","name":"list-schemas","params":{"limit":50},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_011q8GJcTLDbnXAPJmLeQdeN","name":"list-schemas","isFailure":false,"result":[{"typename":"dxos.org/relation/Employer","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/relation/Employer","entityKind":"relation","typename":"dxos.org/relation/Employer","version":"0.1.0","relationTarget":{"$ref":"dxn:type:dxos.org/type/Organization"},"relationSource":{"$ref":"dxn:type:dxos.org/type/Person"},"type":"object","properties":{"id":{"type":"string","description":"A Universally Unique Lexicographically Sortable Identifier","pattern":"^[0-7][0-9A-HJKMNP-TV-Z]{25}$"},"role":{"type":"string"},"active":{"type":"boolean"},"startDate":{"type":"string"},"endDate":{"type":"string"}},"required":["id"],"propertyOrder":["id","role","active","startDate","endDate"],"additionalProperties":false,"description":"An employing organization of a person."},"kind":"relation"},{"typename":"dxos.org/type/Blueprint","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Blueprint","entityKind":"object","typename":"dxos.org/type/Blueprint","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"key":{"type":"string","description":"Unique registration key for the blueprint"},"name":{"type":"string","description":"Human-readable name of the blueprint"},"description":{"type":"string","description":"Description of the blueprint's purpose and functionality"},"instructions":{"type":"object","required":["source"],"properties":{"source":{"allOf":[{"$id":"/schemas/echo/ref","$ref":"/schemas/echo/ref","reference":{"schema":{"$ref":"dxn:type:dxos.org/type/Text"},"schemaVersion":"0.1.0"}}],"description":"Handlebars template source"},"inputs":{"type":"array","items":{"type":"object","required":["name"],"properties":{"name":{"type":"string"},"kind":{"type":"string","enum":["value","pass-through","retriever","function","query","resolver","context","schema"]},"default":{"$id":"/schemas/any","title":"any"},"function":{"type":"string"}},"additionalProperties":false,"propertyOrder":["name","kind","default","function"]}}},"additionalProperties":false,"description":"Instructions that guide the AI assistant's behavior and responses","propertyOrder":["source","inputs"]},"tools":{"type":"array","items":{"$ref":"#/$defs/ToolId"},"description":"Array of tools that the AI assistant can use when this blueprint is active"},"mcpServers":{"type":"array","items":{"type":"object","required":["url","protocol"],"properties":{"url":{"type":"string","description":"URL of the MCP server"},"protocol":{"type":"string","enum":["sse","http"],"description":"Protocol of the MCP server"}},"additionalProperties":false,"propertyOrder":["url","protocol"]}}},"required":["key","name","instructions","tools","id"],"propertyOrder":["key","name","description","instructions","tools","mcpServers","id"],"additionalProperties":false,"annotations":{"meta":{"dxos.org/annotation/Icon":{"icon":"ph--blueprint--regular","hue":"blue"}},"labelProp":["name"]}},"kind":"record"},{"typename":"dxos.org/type/Organization","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Organization","entityKind":"object","typename":"dxos.org/type/Organization","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"name":{"type":"string","title":"Name","annotations":{"generator":{"generator":"company.name","probability":1}}},"description":{"type":"string","title":"Description","annotations":{"generator":{"generator":"lorem.paragraphs","args":[{"min":1,"max":3}]}}},"status":{"type":"string","enum":["prospect","qualified","active","commit","reject"],"title":"Status","annotations":{"meta":{"singleSelect":{"options":[{"id":"prospect","title":"Prospect","color":"indigo"},{"id":"qualified","title":"Qualified","color":"purple"},{"id":"active","title":"Active","color":"amber"},{"id":"commit","title":"Commit","color":"emerald"},{"id":"reject","title":"Reject","color":"red"}]}},"generator":{"generator":"helpers.arrayElement","args":[["prospect","qualified","active","commit","reject"]]}},"format":"single-select"},"image":{"type":"string","title":"Image","annotations":{"generator":"image.url"}},"website":{"type":"string","title":"Website","annotations":{"generator":"internet.url"}},"location":{"type":"array","minItems":2,"items":[{"type":"number","title":"Longitude"},{"type":"number","title":"Latitude"},{"type":"number","title":"Height ASL (m)"}],"additionalItems":false,"description":"GeoJSON Position","title":"Location","format":"lnglat"}},"required":["id"],"propertyOrder":["name","description","status","image","website","location","id"],"additionalProperties":false,"description":"An organization.","title":"Organization","annotations":{"labelProp":["name"]}},"kind":"record"},{"typename":"dxos.org/type/Person","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Person","entityKind":"object","typename":"dxos.org/type/Person","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"fullName":{"type":"string","title":"Full Name","annotations":{"generator":{"generator":"person.fullName","probability":1}}},"preferredName":{"type":"string","title":"Preferred Name"},"nickname":{"type":"string","title":"Nickname"},"image":{"type":"string","title":"Image"},"organization":{"allOf":[{"$id":"/schemas/echo/ref","$ref":"/schemas/echo/ref","reference":{"schema":{"$ref":"dxn:type:dxos.org/type/Organization"},"schemaVersion":"0.1.0"}}],"description":"Current employer","title":"Employer","annotations":{"meta":{"referenceProperty":"name"}}},"jobTitle":{"type":"string","title":"Job Title"},"department":{"type":"string","title":"Department"},"notes":{"type":"string","title":"Notes"},"emails":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string","description":"Email address","title":"Email","default":"hello@email.com","pattern":"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$","annotations":{"generator":"internet.email"},"format":"email"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"identities":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"phoneNumbers":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["label","value"]},"title":"Phone Numbers"},"addresses":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"object","required":[],"properties":{"street":{"type":"string","description":"The street address.","examples":["1600 Amphitheatre Pkwy"]},"extended":{"type":"string","description":"An address extension such as an apartment number, C/O or alternative name.","examples":["Apt 1","Suite 2"]},"locality":{"type":"string","description":"The locality in which the street address is, and which is in the region.","examples":["Mountain View","Bangkok"]},"region":{"type":"string","description":"The region in which the locality is, and which is in the country.","examples":["CA","NY"]},"postalCode":{"type":"string","description":"The postal code.","examples":["12345","A1A 1A1"]},"postOfficeBoxNumber":{"type":"string","description":"The post office box number for PO Box addresses."},"country":{"type":"string","description":"The country in 2-letter ISO 3166-1 alpha-2 format.","examples":["US","SG"]}},"additionalProperties":false,"propertyOrder":["street","extended","locality","region","postalCode","postOfficeBoxNumber","country"]}},"additionalProperties":false,"propertyOrder":["label","value"]}},"urls":{"type":"array","items":{"type":"object","required":["value"],"properties":{"label":{"type":"string"},"value":{"type":"string","description":"URL","title":"URL","default":"https://example.com","pattern":"^(\\w+?:\\/\\/)?([\\da-z.-]+)\\.([a-z.]{2,6})([/\\w .-]*)*\\/?$","annotations":{"generator":"internet.url"},"format":"url"}},"additionalProperties":false,"propertyOrder":["label","value"]}},"birthday":{"type":"string","title":"Birthday","annotations":{"generator":"date.iso8601"}},"fields":{"type":"array","items":{"type":"object","required":["label","value"],"properties":{"category":{"type":"string"},"label":{"type":"string"},"value":{"type":"string"}},"additionalProperties":false,"propertyOrder":["category","label","value"]}},"location":{"type":"array","minItems":2,"items":[{"type":"number","title":"Longitude"},{"type":"number","title":"Latitude"},{"type":"number","title":"Height ASL (m)"}],"additionalItems":false,"description":"GeoJSON Position","title":"Location","format":"lnglat"}},"required":["id"],"propertyOrder":["fullName","preferredName","nickname","image","organization","jobTitle","department","notes","emails","identities","phoneNumbers","addresses","urls","birthday","fields","location","id"],"additionalProperties":false,"title":"Person","annotations":{"labelProp":["preferredName","fullName","nickname"]}},"kind":"record"},{"typename":"dxos.org/type/Tag","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:dxos.org/type/Tag","entityKind":"object","typename":"dxos.org/type/Tag","version":"0.1.0","type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"},"hue":{"type":"string"}},"required":["label","id"],"propertyOrder":["label","hue","id"],"additionalProperties":false,"annotations":{"labelProp":["label"]}},"kind":"record"},{"typename":"example.com/type/Expando","jsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","$id":"dxn:type:example.com/type/Expando","entityKind":"object","typename":"example.com/type/Expando","version":"0.1.0","type":"object","properties":{"id":{"type":"string"}},"required":["id"],"propertyOrder":["id"],"additionalProperties":{"$id":"/schemas/any","title":"any"}},"kind":"record"}],"providerExecuted":false,"options":{}}],"options":{}},{"role":"assistant","content":[{"type":"text","text":"Great! I found the Employer relation schema. Now I need to find the \"John Connor\" person and \"Cyberdyne Systems\" organization to create the relation between them.","options":{}},{"type":"tool-call","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","name":"query","params":{"typename":"dxos.org/type/Person","text":"John Connor","includeContent":false,"limit":5},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01Er3NtrzokJ9fmqeR7FpSpX","name":"query","isFailure":false,"result":[{"dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTCX","typename":"dxos.org/type/Person","label":"John Connor"}],"providerExecuted":false,"options":{}}],"options":{}},{"role":"assistant","content":[{"type":"tool-call","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","name":"query","params":{"typename":"dxos.org/type/Organization","text":"Cyberdyne Systems","includeContent":false,"limit":5},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01NgSrpZG9jmCCWuSCcZ9uMa","name":"query","isFailure":false,"result":[{"dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTCZ","typename":"dxos.org/type/Organization","label":"Cyberdyne Systems"}],"providerExecuted":false,"options":{}}],"options":{}},{"role":"assistant","content":[{"type":"text","text":"Perfect! I found both John Connor and Cyberdyne Systems. Now I'll create the Employer relation between them with the role \"Engineer\".","options":{}},{"type":"tool-call","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","name":"create-relation","params":{"typename":"dxos.org/relation/Employer","source":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTCX","target":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTCZ","properties":{"role":"Engineer","active":true}},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_014jjRrX8gyP6uEzCMKWJg7N","name":"create-relation","isFailure":false,"result":{"id":"01JGFJJZ00G0WKQSJGMAKCNTDH","@type":"dxn:type:dxos.org/relation/Employer:0.1.0","@meta":{"keys":[]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTDH","@relationSource":"dxn:echo:@:01JGFJJZ00G0WKQSJGMAKCNTCX","@relationTarget":"dxn:echo:@:01JGFJJZ00G0WKQSJGMAKCNTCZ","active":true,"role":"Engineer"},"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01Uvxmk6s4q4Ep3p813EYyGQ","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"Successfully","metadata":{}},{"type":"text-delta","id":"0","delta":" created the Employer relation! ","metadata":{}},{"type":"text-delta","id":"0","delta":"\n\nI","metadata":{}},{"type":"text-delta","id":"0","delta":"'ve create","metadata":{}},{"type":"text-delta","id":"0","delta":"d an","metadata":{}},{"type":"text-delta","id":"0","delta":" Employer relation that","metadata":{}},{"type":"text-delta","id":"0","delta":" connects:","metadata":{}},{"type":"text-delta","id":"0","delta":"\n- **Source","metadata":{}},{"type":"text-delta","id":"0","delta":"**: John Connor (Person)","metadata":{}},{"type":"text-delta","id":"0","delta":"\n- **Target**: Cyber","metadata":{}},{"type":"text-delta","id":"0","delta":"dyne Systems (Organization)\n- **","metadata":{}},{"type":"text-delta","id":"0","delta":"Role**: Engineer\n- **Status**:","metadata":{}},{"type":"text-delta","id":"0","delta":" Active\n\nThe relation has been create","metadata":{}},{"type":"text-delta","id":"0","delta":"d with ID","metadata":{}},{"type":"text-delta","id":"0","delta":" `01JGFJJZ","metadata":{}},{"type":"text-delta","id":"0","delta":"00G0WKQSJ","metadata":{}},{"type":"text-delta","id":"0","delta":"GMAKCNTDH`. This","metadata":{}},{"type":"text-delta","id":"0","delta":" establ","metadata":{}},{"type":"text-delta","id":"0","delta":"ishes that","metadata":{}},{"type":"text-delta","id":"0","delta":" John Connor is employe","metadata":{}},{"type":"text-delta","id":"0","delta":"d by Cyberdyne Systems as an","metadata":{}},{"type":"text-delta","id":"0","delta":" Engineer.","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"finish","reason":"stop","usage":{"inputTokens":6,"outputTokens":106,"totalTokens":112},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":470},"cache_creation_input_tokens":470,"cache_read_input_tokens":9122,"input_tokens":6,"output_tokens":1,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Delete the relation dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTE2.","options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01Ud73vbxXhKJi5cmdxiqwr5","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"reasoning-start","id":"0","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"The user wants to delete a specific","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" relation with","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" the D","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"XN:","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" ","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"dxn:echo:BDJ","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"XMULPW5FB55","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"UZ7KP5HL","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"DHVTXUTHE2U","metadata":{}},{"type":"reasoning-delta","id":"0","delta":":01JGFJJZ","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"00G0WKQSJ","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"GMAKCNTE2","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"\n\nI","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" need to use the delete","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"-relation function with","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" this","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" exact DXN as","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" the parameter","metadata":{}},{"type":"reasoning-delta","id":"0","delta":".","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{"anthropic":{"type":"thinking","signature":"EvkCCkYICxgCKkDrcmBWSbEICjDqQ7mX80W1Hol5sGmJslDKKxczN+UoNm7c4kfNncIl53Mio1nWscC96uEfG3Hl38PVxPGec0GvEgznDdegEKncl2glFV4aDNDvGTnQaEQku9gHyCIwO8JRvsph+7VBccweQP6Zl90Ffa7k6GJ7ObhhcLY53aH9xBGlraJaK04out0v3laeKuABEfHxn5jbRtH/DGDcy7GMzFsOwArMJFuDlEGn37U35qdfLxhgihMbYybyvNfIFj/4wsj8phaAsiDvnwafQuAoG+KCBrxLhsW1SFk/7MS1i+PBbyOBXzggZIXrrfQw61lNlxvosrXAE7g2CkVeEuPcsIpdp6PVp5AlWX3I+wCwysswf+nUr/CTroKgbokhspDTB5YptgsmD3LAmV3XVbxf1HkfbtjNa2nxV1qGJ+G6xEYSik/398UsxU3WyROrvL/RKgqmbG9D94eqIeHRpfwbkxa173cCiDExQAk2bSqRT4YYAQ=="}}},{"type":"reasoning-end","id":"0","metadata":{}},{"type":"text-start","id":"1","metadata":{}},{"type":"text-delta","id":"1","delta":"I'll delete the relation with","metadata":{}},{"type":"text-delta","id":"1","delta":" the specifie","metadata":{}},{"type":"text-delta","id":"1","delta":"d DXN.","metadata":{}},{"type":"text-end","id":"1","metadata":{}},{"type":"tool-params-start","id":"toolu_01UYNmGXjQBTnocMbdeW25uw","name":"delete-relation","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01UYNmGXjQBTnocMbdeW25uw","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01UYNmGXjQBTnocMbdeW25uw","delta":"{\"rel\":","metadata":{}},{"type":"tool-params-delta","id":"toolu_01UYNmGXjQBTnocMbdeW25uw","delta":" \"dxn:echo:","metadata":{}},{"type":"tool-params-delta","id":"toolu_01UYNmGXjQBTnocMbdeW25uw","delta":"BDJXMULP","metadata":{}},{"type":"tool-params-delta","id":"toolu_01UYNmGXjQBTnocMbdeW25uw","delta":"W5FB55UZ7KP","metadata":{}},{"type":"tool-params-delta","id":"toolu_01UYNmGXjQBTnocMbdeW25uw","delta":"5H","metadata":{}},{"type":"tool-params-delta","id":"toolu_01UYNmGXjQBTnocMbdeW25uw","delta":"LDHVTXUTH","metadata":{}},{"type":"tool-params-delta","id":"toolu_01UYNmGXjQBTnocMbdeW25uw","delta":"E2U:0","metadata":{}},{"type":"tool-params-delta","id":"toolu_01UYNmGXjQBTnocMbdeW25uw","delta":"1JGFJJZ00G0","metadata":{}},{"type":"tool-params-delta","id":"toolu_01UYNmGXjQBTnocMbdeW25uw","delta":"WK","metadata":{}},{"type":"tool-params-delta","id":"toolu_01UYNmGXjQBTnocMbdeW25uw","delta":"QSJGMAKCN","metadata":{}},{"type":"tool-params-delta","id":"toolu_01UYNmGXjQBTnocMbdeW25uw","delta":"TE2","metadata":{}},{"type":"tool-params-delta","id":"toolu_01UYNmGXjQBTnocMbdeW25uw","delta":"\"}","metadata":{}},{"type":"tool-params-end","id":"toolu_01UYNmGXjQBTnocMbdeW25uw","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":10,"outputTokens":215,"totalTokens":225},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":5705},"cache_creation_input_tokens":5705,"cache_read_input_tokens":0,"input_tokens":10,"output_tokens":7,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Delete the relation dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTE2.","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to delete a specific relation with the DXN: dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTE2\n\nI need to use the delete-relation function with this exact DXN as the parameter.","options":{}},{"type":"text","text":"I'll delete the relation with the specified DXN.","options":{}},{"type":"tool-call","id":"toolu_01UYNmGXjQBTnocMbdeW25uw","name":"delete-relation","params":{"rel":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTE2"},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01UYNmGXjQBTnocMbdeW25uw","name":"delete-relation","isFailure":false,"result":{},"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01B2C5TBw3wcQxSQfyPV9tVh","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"The relation has been successfully deleted.","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"finish","reason":"stop","usage":{"inputTokens":5,"outputTokens":10,"totalTokens":15},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":5811},"cache_creation_input_tokens":5811,"cache_read_input_tokens":0,"input_tokens":5,"output_tokens":7,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Add tag \"important\" to the organization \"Tagged Corp\".","options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01N5bRJwV7qVkfGggiQTmf8M","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"reasoning-start","id":"0","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"The user wants to add a tag \"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"important\" to an organization called \"Tagge","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"d Corp\". ","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"\n\nLet me break","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" this down:\n1","metadata":{}},{"type":"reasoning-delta","id":"0","delta":". I need to fin","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"d the organization \"Tagged Corp\"\n2","metadata":{}},{"type":"reasoning-delta","id":"0","delta":". I need to fin","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"d or","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" create a tag \"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"important\"\n3. I need to","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" add this tag to the organization\n\nFirst","metadata":{}},{"type":"reasoning-delta","id":"0","delta":", let me search for the organization \"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"Tagged Corp\".","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{"anthropic":{"type":"thinking","signature":"EtgDCkYICxgCKkBPXLc9B6z11zmsL0ysCP3WnGF9ElN/I2ApMuDlERfRwilTn0cPtOzmoAvvGdqskbNPFOJzmwiThs+A2V71LE4qEgzb1X3tRQ5VajVhXt0aDMqXQONSd14gBXaymCIwGPOvxXd2AOQEJG7BmkpfZervph7fG06GOaVlrOM5vjtXDsBAGmTz0oVShMOHP2TFKr8CJrxNhnMD0PXVfSiP80qKCFw+0QompkjvsLgodkH1EPKuAC24Te+Vn7LCcG5x7Y8dvpRfMwVgIn5/NhDIHvS6yR45anKyQROXthsejEllWEFHboyRjvP21KZbU8bx4PBUW31JKrCBF3gByNPx+W1yx1rfPOnPrhHe3MERBna/tf6qoNev5908s0XOLzpO3+nPuVipMZ1tjkPBq4UjYTzfN0XuszSfDaJvgs6EKkBLPtkXhVvaXfabi4IRj90qEtcFrMVJilnuB8pTRj7YK9oCqzW91fNPRYsbc3TudbcHsAFo7DOO7/tbYbjXKdL/5T7BdBIAmfGE0XuHIDi62gVb4gFutVvtGFL8Ag5eZgTqW7qc7dpdhXePe4qA/AVjju0Mf9U79ZPkiubeU6CS0Y9vfraCuxmqMTDXcle4r3fOtRgB"}}},{"type":"reasoning-end","id":"0","metadata":{}},{"type":"text-start","id":"1","metadata":{}},{"type":"text-delta","id":"1","delta":"I'll help you add the \"","metadata":{}},{"type":"text-delta","id":"1","delta":"important\" tag to \"Tagged Corp\".","metadata":{}},{"type":"text-delta","id":"1","delta":" Let me first search for the organization an","metadata":{}},{"type":"text-delta","id":"1","delta":"d the","metadata":{}},{"type":"text-delta","id":"1","delta":" tag.","metadata":{}},{"type":"text-end","id":"1","metadata":{}},{"type":"tool-params-start","id":"toolu_01SrTrK3TYQskUD1De4hedv6","name":"query","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01SrTrK3TYQskUD1De4hedv6","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01SrTrK3TYQskUD1De4hedv6","delta":"{\"text\": \"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01SrTrK3TYQskUD1De4hedv6","delta":"Tagg","metadata":{}},{"type":"tool-params-delta","id":"toolu_01SrTrK3TYQskUD1De4hedv6","delta":"ed ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01SrTrK3TYQskUD1De4hedv6","delta":"Corp","metadata":{}},{"type":"tool-params-delta","id":"toolu_01SrTrK3TYQskUD1De4hedv6","delta":"\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01SrTrK3TYQskUD1De4hedv6","delta":", \"typename\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01SrTrK3TYQskUD1De4hedv6","delta":": \"dxos.or","metadata":{}},{"type":"tool-params-delta","id":"toolu_01SrTrK3TYQskUD1De4hedv6","delta":"g/type","metadata":{}},{"type":"tool-params-delta","id":"toolu_01SrTrK3TYQskUD1De4hedv6","delta":"/Orga","metadata":{}},{"type":"tool-params-delta","id":"toolu_01SrTrK3TYQskUD1De4hedv6","delta":"nization\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01SrTrK3TYQskUD1De4hedv6","delta":", \"include","metadata":{}},{"type":"tool-params-delta","id":"toolu_01SrTrK3TYQskUD1De4hedv6","delta":"Content\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01SrTrK3TYQskUD1De4hedv6","delta":": tr","metadata":{}},{"type":"tool-params-delta","id":"toolu_01SrTrK3TYQskUD1De4hedv6","delta":"ue","metadata":{}},{"type":"tool-params-delta","id":"toolu_01SrTrK3TYQskUD1De4hedv6","delta":", \"lim","metadata":{}},{"type":"tool-params-delta","id":"toolu_01SrTrK3TYQskUD1De4hedv6","delta":"it\": 5}","metadata":{}},{"type":"tool-params-end","id":"toolu_01SrTrK3TYQskUD1De4hedv6","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":10,"outputTokens":226,"totalTokens":236},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":5659},"cache_creation_input_tokens":5659,"cache_read_input_tokens":0,"input_tokens":10,"output_tokens":8,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Add tag \"important\" to the organization \"Tagged Corp\".","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to add a tag \"important\" to an organization called \"Tagged Corp\". \n\nLet me break this down:\n1. I need to find the organization \"Tagged Corp\"\n2. I need to find or create a tag \"important\"\n3. I need to add this tag to the organization\n\nFirst, let me search for the organization \"Tagged Corp\".","options":{}},{"type":"text","text":"I'll help you add the \"important\" tag to \"Tagged Corp\". Let me first search for the organization and the tag.","options":{}},{"type":"tool-call","id":"toolu_01SrTrK3TYQskUD1De4hedv6","name":"query","params":{"text":"Tagged Corp","typename":"dxos.org/type/Organization","includeContent":true,"limit":5},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01SrTrK3TYQskUD1De4hedv6","name":"query","isFailure":false,"result":[{"id":"01JGFJJZ00G0WKQSJGMAKCNTEM","@type":"dxn:type:dxos.org/type/Organization:0.1.0","@meta":{"keys":[]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTEM","name":"Tagged Corp"}],"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01RYMVjfB9YM4t47BgmXggbJ","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"Now","metadata":{}},{"type":"text-delta","id":"0","delta":" let me search for the \"","metadata":{}},{"type":"text-delta","id":"0","delta":"important\" tag:","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"tool-params-start","id":"toolu_01C7snQvU74kEDcLh25By4Q6","name":"query","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01C7snQvU74kEDcLh25By4Q6","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01C7snQvU74kEDcLh25By4Q6","delta":"{\"t","metadata":{}},{"type":"tool-params-delta","id":"toolu_01C7snQvU74kEDcLh25By4Q6","delta":"yp","metadata":{}},{"type":"tool-params-delta","id":"toolu_01C7snQvU74kEDcLh25By4Q6","delta":"ename\": \"dx","metadata":{}},{"type":"tool-params-delta","id":"toolu_01C7snQvU74kEDcLh25By4Q6","delta":"os.org/type","metadata":{}},{"type":"tool-params-delta","id":"toolu_01C7snQvU74kEDcLh25By4Q6","delta":"/Ta","metadata":{}},{"type":"tool-params-delta","id":"toolu_01C7snQvU74kEDcLh25By4Q6","delta":"g\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01C7snQvU74kEDcLh25By4Q6","delta":", \"te","metadata":{}},{"type":"tool-params-delta","id":"toolu_01C7snQvU74kEDcLh25By4Q6","delta":"xt\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01C7snQvU74kEDcLh25By4Q6","delta":": \"impor","metadata":{}},{"type":"tool-params-delta","id":"toolu_01C7snQvU74kEDcLh25By4Q6","delta":"tant","metadata":{}},{"type":"tool-params-delta","id":"toolu_01C7snQvU74kEDcLh25By4Q6","delta":"\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01C7snQvU74kEDcLh25By4Q6","delta":", \"incl","metadata":{}},{"type":"tool-params-delta","id":"toolu_01C7snQvU74kEDcLh25By4Q6","delta":"udeContent","metadata":{}},{"type":"tool-params-delta","id":"toolu_01C7snQvU74kEDcLh25By4Q6","delta":"\": true","metadata":{}},{"type":"tool-params-delta","id":"toolu_01C7snQvU74kEDcLh25By4Q6","delta":", \"limit","metadata":{}},{"type":"tool-params-delta","id":"toolu_01C7snQvU74kEDcLh25By4Q6","delta":"\": 5}","metadata":{}},{"type":"tool-params-end","id":"toolu_01C7snQvU74kEDcLh25By4Q6","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":6,"outputTokens":124,"totalTokens":130},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":5909},"cache_creation_input_tokens":5909,"cache_read_input_tokens":0,"input_tokens":6,"output_tokens":1,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Add tag \"important\" to the organization \"Tagged Corp\".","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to add a tag \"important\" to an organization called \"Tagged Corp\". \n\nLet me break this down:\n1. I need to find the organization \"Tagged Corp\"\n2. I need to find or create a tag \"important\"\n3. I need to add this tag to the organization\n\nFirst, let me search for the organization \"Tagged Corp\".","options":{}},{"type":"text","text":"I'll help you add the \"important\" tag to \"Tagged Corp\". Let me first search for the organization and the tag.","options":{}},{"type":"tool-call","id":"toolu_01SrTrK3TYQskUD1De4hedv6","name":"query","params":{"text":"Tagged Corp","typename":"dxos.org/type/Organization","includeContent":true,"limit":5},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01SrTrK3TYQskUD1De4hedv6","name":"query","isFailure":false,"result":[{"id":"01JGFJJZ00G0WKQSJGMAKCNTEM","@type":"dxn:type:dxos.org/type/Organization:0.1.0","@meta":{"keys":[]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTEM","name":"Tagged Corp"}],"providerExecuted":false,"options":{}}],"options":{}},{"role":"assistant","content":[{"type":"text","text":"Now let me search for the \"important\" tag:","options":{}},{"type":"tool-call","id":"toolu_01C7snQvU74kEDcLh25By4Q6","name":"query","params":{"typename":"dxos.org/type/Tag","text":"important","includeContent":true,"limit":5},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01C7snQvU74kEDcLh25By4Q6","name":"query","isFailure":false,"result":[{"id":"01JGFJJZ00G0WKQSJGMAKCNTEP","@type":"dxn:type:dxos.org/type/Tag:0.1.0","@meta":{"keys":[]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTEP","label":"important"}],"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01UbfdLyFEsXXxgLU1EnpY8J","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"Perfect! I found both the organization \"","metadata":{}},{"type":"text-delta","id":"0","delta":"Tagged Corp\" and the \"","metadata":{}},{"type":"text-delta","id":"0","delta":"important\" tag. Now I'll ad","metadata":{}},{"type":"text-delta","id":"0","delta":"d the tag to the organization:","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"tool-params-start","id":"toolu_01UdzTJo1X5g5LEnMzVcbP2B","name":"add-tag","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01UdzTJo1X5g5LEnMzVcbP2B","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01UdzTJo1X5g5LEnMzVcbP2B","delta":"{\"obj\": \"01","metadata":{}},{"type":"tool-params-delta","id":"toolu_01UdzTJo1X5g5LEnMzVcbP2B","delta":"JGFJJZ00G0WK","metadata":{}},{"type":"tool-params-delta","id":"toolu_01UdzTJo1X5g5LEnMzVcbP2B","delta":"QS","metadata":{}},{"type":"tool-params-delta","id":"toolu_01UdzTJo1X5g5LEnMzVcbP2B","delta":"JG","metadata":{}},{"type":"tool-params-delta","id":"toolu_01UdzTJo1X5g5LEnMzVcbP2B","delta":"MAKCNTEM\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01UdzTJo1X5g5LEnMzVcbP2B","delta":", \"tag\": ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01UdzTJo1X5g5LEnMzVcbP2B","delta":"\"01JGFJJ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01UdzTJo1X5g5LEnMzVcbP2B","delta":"Z00G0WK","metadata":{}},{"type":"tool-params-delta","id":"toolu_01UdzTJo1X5g5LEnMzVcbP2B","delta":"QSJGM","metadata":{}},{"type":"tool-params-delta","id":"toolu_01UdzTJo1X5g5LEnMzVcbP2B","delta":"AKCNTEP\"}","metadata":{}},{"type":"tool-params-end","id":"toolu_01UdzTJo1X5g5LEnMzVcbP2B","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":6,"outputTokens":137,"totalTokens":143},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":259},"cache_creation_input_tokens":259,"cache_read_input_tokens":5909,"input_tokens":6,"output_tokens":8,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Add tag \"important\" to the organization \"Tagged Corp\".","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to add a tag \"important\" to an organization called \"Tagged Corp\". \n\nLet me break this down:\n1. I need to find the organization \"Tagged Corp\"\n2. I need to find or create a tag \"important\"\n3. I need to add this tag to the organization\n\nFirst, let me search for the organization \"Tagged Corp\".","options":{}},{"type":"text","text":"I'll help you add the \"important\" tag to \"Tagged Corp\". Let me first search for the organization and the tag.","options":{}},{"type":"tool-call","id":"toolu_01SrTrK3TYQskUD1De4hedv6","name":"query","params":{"text":"Tagged Corp","typename":"dxos.org/type/Organization","includeContent":true,"limit":5},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01SrTrK3TYQskUD1De4hedv6","name":"query","isFailure":false,"result":[{"id":"01JGFJJZ00G0WKQSJGMAKCNTEM","@type":"dxn:type:dxos.org/type/Organization:0.1.0","@meta":{"keys":[]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTEM","name":"Tagged Corp"}],"providerExecuted":false,"options":{}}],"options":{}},{"role":"assistant","content":[{"type":"text","text":"Now let me search for the \"important\" tag:","options":{}},{"type":"tool-call","id":"toolu_01C7snQvU74kEDcLh25By4Q6","name":"query","params":{"typename":"dxos.org/type/Tag","text":"important","includeContent":true,"limit":5},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01C7snQvU74kEDcLh25By4Q6","name":"query","isFailure":false,"result":[{"id":"01JGFJJZ00G0WKQSJGMAKCNTEP","@type":"dxn:type:dxos.org/type/Tag:0.1.0","@meta":{"keys":[]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTEP","label":"important"}],"providerExecuted":false,"options":{}}],"options":{}},{"role":"assistant","content":[{"type":"text","text":"Perfect! I found both the organization \"Tagged Corp\" and the \"important\" tag. Now I'll add the tag to the organization:","options":{}},{"type":"tool-call","id":"toolu_01UdzTJo1X5g5LEnMzVcbP2B","name":"add-tag","params":{"obj":"01JGFJJZ00G0WKQSJGMAKCNTEM","tag":"01JGFJJZ00G0WKQSJGMAKCNTEP"},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01UdzTJo1X5g5LEnMzVcbP2B","name":"add-tag","isFailure":false,"result":{"id":"01JGFJJZ00G0WKQSJGMAKCNTEM","@type":"dxn:type:dxos.org/type/Organization:0.1.0","@meta":{"keys":[],"tags":["dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTEP"]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTEM","name":"Tagged Corp"},"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01HpSQqtSDNST2kFnEUsasU4","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"Great! I've successfully added the \"","metadata":{}},{"type":"text-delta","id":"0","delta":"important\" tag to the","metadata":{}},{"type":"text-delta","id":"0","delta":" organization \"Tagged Corp\". The tag has","metadata":{}},{"type":"text-delta","id":"0","delta":" been applied an","metadata":{}},{"type":"text-delta","id":"0","delta":"d you","metadata":{}},{"type":"text-delta","id":"0","delta":" can see in","metadata":{}},{"type":"text-delta","id":"0","delta":" the metadata","metadata":{}},{"type":"text-delta","id":"0","delta":" that the","metadata":{}},{"type":"text-delta","id":"0","delta":" organization now has the tag reference","metadata":{}},{"type":"text-delta","id":"0","delta":" included.","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"finish","reason":"stop","usage":{"inputTokens":6,"outputTokens":43,"totalTokens":49},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":331},"cache_creation_input_tokens":331,"cache_read_input_tokens":6168,"input_tokens":6,"output_tokens":8,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Remove tag \"obsolete\" from the organization \"Untagged Corp\".","options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01LfAuvnynCmHodHRHKw27kh","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"reasoning-start","id":"0","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"I","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" need to remove a tag called \"obsol","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"ete\" from an organization called \"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"Untagged Corp\". To","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" do this, I need to:","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"\n\n1. First","metadata":{}},{"type":"reasoning-delta","id":"0","delta":",","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" find the organization object","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" for \"Untagged Corp\"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"\n2. Find the tag object for","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" \"obsolete\"\n3. Use","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" the remove-tag function to remove the","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" tag from the organization\n\nLet me start","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" by searching","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" for the organization an","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"d the","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" tag.","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{"anthropic":{"type":"thinking","signature":"EvgDCkYICxgCKkAXMAesqLpkFXQhx3d3fF72lFvNMgAIUtyNJ/dXc3QiGFF7+NeGmiKHBW/O3kvHJQKnX6DwqquSYxCLfsmxNJXmEgwIrhEf0BqqocA+XRkaDFGN+g+JkUBBp6WLzSIwyuaEpA3wdXsUrn4d3EX97IG4ujFtcGC+bJxzkkEY9ixG62AygfIforaLLb1UpSgqKt8C7mCLRgp15KoTFMhmEVcU6xKXZp7rBncwm+NJofFbUr7res5jYWCG+2tPa8DveW8op18W9488OumUhvWV9SL3l3RIpNGdNPRCEfgNwiq506ksOkti3/t9GxSqg6o1iWVdSnR/F5RWLzr8QZGFU+3Ysyf7N1wSpH8LV+AQ8E3PWHLOXeL5owpjrvWoP44bMntlp3MTXkIR+PpB5Jby9+7DyCkHnCVPFuTD1pNkrdcUSR10HvtFOGx5VSw5rgtzrYhqbLpqbAE8IS7Ez5B4DCyW9XLsFIYgD1sG7Uq6umnY77E7R24YBB+SOj6GahqkXODUzOk7bxPCBfExsfnt/UAbLmBuOprUR2QOjzlSshu7nujyCom5HFg0FUjmvExgyuNrz/JeYW0VcfxH7sHU9qzmAOfkvtNJhPCaWOnuQFFX2nVcreF2c6PME+EIjxkyoQZK4pJGiKaTIG73IlVad5TQGAE="}}},{"type":"reasoning-end","id":"0","metadata":{}},{"type":"text-start","id":"1","metadata":{}},{"type":"text-delta","id":"1","delta":"I'll help you remove the","metadata":{}},{"type":"text-delta","id":"1","delta":" \"obsolete\" tag from \"","metadata":{}},{"type":"text-delta","id":"1","delta":"Untagged Corp\". First","metadata":{}},{"type":"text-delta","id":"1","delta":", let me search for both","metadata":{}},{"type":"text-delta","id":"1","delta":" the organization and the tag.","metadata":{}},{"type":"text-end","id":"1","metadata":{}},{"type":"tool-params-start","id":"toolu_01U3BBzdCHMvUMeGT6p5ExZd","name":"query","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01U3BBzdCHMvUMeGT6p5ExZd","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01U3BBzdCHMvUMeGT6p5ExZd","delta":"{\"t","metadata":{}},{"type":"tool-params-delta","id":"toolu_01U3BBzdCHMvUMeGT6p5ExZd","delta":"ext\": \"Un","metadata":{}},{"type":"tool-params-delta","id":"toolu_01U3BBzdCHMvUMeGT6p5ExZd","delta":"tagged Corp","metadata":{}},{"type":"tool-params-delta","id":"toolu_01U3BBzdCHMvUMeGT6p5ExZd","delta":"\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01U3BBzdCHMvUMeGT6p5ExZd","delta":", ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01U3BBzdCHMvUMeGT6p5ExZd","delta":"\"inc","metadata":{}},{"type":"tool-params-delta","id":"toolu_01U3BBzdCHMvUMeGT6p5ExZd","delta":"ludeContent\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01U3BBzdCHMvUMeGT6p5ExZd","delta":": ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01U3BBzdCHMvUMeGT6p5ExZd","delta":"true","metadata":{}},{"type":"tool-params-delta","id":"toolu_01U3BBzdCHMvUMeGT6p5ExZd","delta":", \"limit\": 5}","metadata":{}},{"type":"tool-params-end","id":"toolu_01U3BBzdCHMvUMeGT6p5ExZd","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":10,"outputTokens":220,"totalTokens":230},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":5663},"cache_creation_input_tokens":5663,"cache_read_input_tokens":0,"input_tokens":10,"output_tokens":1,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Remove tag \"obsolete\" from the organization \"Untagged Corp\".","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"I need to remove a tag called \"obsolete\" from an organization called \"Untagged Corp\". To do this, I need to:\n\n1. First, find the organization object for \"Untagged Corp\"\n2. Find the tag object for \"obsolete\"\n3. Use the remove-tag function to remove the tag from the organization\n\nLet me start by searching for the organization and the tag.","options":{}},{"type":"text","text":"I'll help you remove the \"obsolete\" tag from \"Untagged Corp\". First, let me search for both the organization and the tag.","options":{}},{"type":"tool-call","id":"toolu_01U3BBzdCHMvUMeGT6p5ExZd","name":"query","params":{"text":"Untagged Corp","includeContent":true,"limit":5},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01U3BBzdCHMvUMeGT6p5ExZd","name":"query","isFailure":false,"result":[{"id":"01JGFJJZ00G0WKQSJGMAKCNTFG","@type":"dxn:type:dxos.org/type/Organization:0.1.0","@meta":{"keys":[],"tags":["dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTFJ"]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTFG","name":"Untagged Corp"}],"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01SKtyBCjk2bpm3Eg92cxLzE","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"Now","metadata":{}},{"type":"text-delta","id":"0","delta":" let me search for the \"","metadata":{}},{"type":"text-delta","id":"0","delta":"obsolete\" tag:","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"tool-params-start","id":"toolu_01M8V9MKk9A7ME6EHxyq7buv","name":"query","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01M8V9MKk9A7ME6EHxyq7buv","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01M8V9MKk9A7ME6EHxyq7buv","delta":"{\"type","metadata":{}},{"type":"tool-params-delta","id":"toolu_01M8V9MKk9A7ME6EHxyq7buv","delta":"name\": \"dxos","metadata":{}},{"type":"tool-params-delta","id":"toolu_01M8V9MKk9A7ME6EHxyq7buv","delta":".or","metadata":{}},{"type":"tool-params-delta","id":"toolu_01M8V9MKk9A7ME6EHxyq7buv","delta":"g/type/Tag\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01M8V9MKk9A7ME6EHxyq7buv","delta":", ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01M8V9MKk9A7ME6EHxyq7buv","delta":"\"text\": \"ob","metadata":{}},{"type":"tool-params-delta","id":"toolu_01M8V9MKk9A7ME6EHxyq7buv","delta":"solete\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01M8V9MKk9A7ME6EHxyq7buv","delta":", \"in","metadata":{}},{"type":"tool-params-delta","id":"toolu_01M8V9MKk9A7ME6EHxyq7buv","delta":"cludeContent","metadata":{}},{"type":"tool-params-delta","id":"toolu_01M8V9MKk9A7ME6EHxyq7buv","delta":"\": true","metadata":{}},{"type":"tool-params-delta","id":"toolu_01M8V9MKk9A7ME6EHxyq7buv","delta":", \"limit\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01M8V9MKk9A7ME6EHxyq7buv","delta":": 5}","metadata":{}},{"type":"tool-params-end","id":"toolu_01M8V9MKk9A7ME6EHxyq7buv","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":6,"outputTokens":126,"totalTokens":132},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":5962},"cache_creation_input_tokens":5962,"cache_read_input_tokens":0,"input_tokens":6,"output_tokens":1,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Remove tag \"obsolete\" from the organization \"Untagged Corp\".","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"I need to remove a tag called \"obsolete\" from an organization called \"Untagged Corp\". To do this, I need to:\n\n1. First, find the organization object for \"Untagged Corp\"\n2. Find the tag object for \"obsolete\"\n3. Use the remove-tag function to remove the tag from the organization\n\nLet me start by searching for the organization and the tag.","options":{}},{"type":"text","text":"I'll help you remove the \"obsolete\" tag from \"Untagged Corp\". First, let me search for both the organization and the tag.","options":{}},{"type":"tool-call","id":"toolu_01U3BBzdCHMvUMeGT6p5ExZd","name":"query","params":{"text":"Untagged Corp","includeContent":true,"limit":5},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01U3BBzdCHMvUMeGT6p5ExZd","name":"query","isFailure":false,"result":[{"id":"01JGFJJZ00G0WKQSJGMAKCNTFG","@type":"dxn:type:dxos.org/type/Organization:0.1.0","@meta":{"keys":[],"tags":["dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTFJ"]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTFG","name":"Untagged Corp"}],"providerExecuted":false,"options":{}}],"options":{}},{"role":"assistant","content":[{"type":"text","text":"Now let me search for the \"obsolete\" tag:","options":{}},{"type":"tool-call","id":"toolu_01M8V9MKk9A7ME6EHxyq7buv","name":"query","params":{"typename":"dxos.org/type/Tag","text":"obsolete","includeContent":true,"limit":5},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01M8V9MKk9A7ME6EHxyq7buv","name":"query","isFailure":false,"result":[{"id":"01JGFJJZ00G0WKQSJGMAKCNTFJ","@type":"dxn:type:dxos.org/type/Tag:0.1.0","@meta":{"keys":[]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTFJ","label":"obsolete"}],"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01X6tNgVda25n9PkEdF3NvLK","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"Perfect","metadata":{}},{"type":"text-delta","id":"0","delta":"! I found both:","metadata":{}},{"type":"text-delta","id":"0","delta":"\n-","metadata":{}},{"type":"text-delta","id":"0","delta":" \"","metadata":{}},{"type":"text-delta","id":"0","delta":"Untagged Corp\" organization","metadata":{}},{"type":"text-delta","id":"0","delta":" with","metadata":{}},{"type":"text-delta","id":"0","delta":" ID","metadata":{}},{"type":"text-delta","id":"0","delta":": `01JGFJJ","metadata":{}},{"type":"text-delta","id":"0","delta":"Z00G0WKQ","metadata":{}},{"type":"text-delta","id":"0","delta":"SJGMAKCNTFG`","metadata":{}},{"type":"text-delta","id":"0","delta":"\n- \"obsolete\" tag with","metadata":{}},{"type":"text-delta","id":"0","delta":" ID: `01JGFJ","metadata":{}},{"type":"text-delta","id":"0","delta":"JZ00G0WK","metadata":{}},{"type":"text-delta","id":"0","delta":"QSJGMAKCNTFJ","metadata":{}},{"type":"text-delta","id":"0","delta":"`\n\nI can","metadata":{}},{"type":"text-delta","id":"0","delta":" see","metadata":{}},{"type":"text-delta","id":"0","delta":" that the organization","metadata":{}},{"type":"text-delta","id":"0","delta":" currently","metadata":{}},{"type":"text-delta","id":"0","delta":" has the \"obsolete\" tag in","metadata":{}},{"type":"text-delta","id":"0","delta":" its metadata. Now","metadata":{}},{"type":"text-delta","id":"0","delta":" I'll remove this","metadata":{}},{"type":"text-delta","id":"0","delta":" tag:","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"tool-params-start","id":"toolu_01QX5fHRhaN7Y1YCy5cWQ6ur","name":"remove-tag","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01QX5fHRhaN7Y1YCy5cWQ6ur","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01QX5fHRhaN7Y1YCy5cWQ6ur","delta":"{\"obj\": \"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01QX5fHRhaN7Y1YCy5cWQ6ur","delta":"01JGFJJZ0","metadata":{}},{"type":"tool-params-delta","id":"toolu_01QX5fHRhaN7Y1YCy5cWQ6ur","delta":"0G","metadata":{}},{"type":"tool-params-delta","id":"toolu_01QX5fHRhaN7Y1YCy5cWQ6ur","delta":"0WKQSJGMAK","metadata":{}},{"type":"tool-params-delta","id":"toolu_01QX5fHRhaN7Y1YCy5cWQ6ur","delta":"CNTFG\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01QX5fHRhaN7Y1YCy5cWQ6ur","delta":", \"ta","metadata":{}},{"type":"tool-params-delta","id":"toolu_01QX5fHRhaN7Y1YCy5cWQ6ur","delta":"g\": \"01JGFJ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01QX5fHRhaN7Y1YCy5cWQ6ur","delta":"JZ00G0WKQ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01QX5fHRhaN7Y1YCy5cWQ6ur","delta":"SJG","metadata":{}},{"type":"tool-params-delta","id":"toolu_01QX5fHRhaN7Y1YCy5cWQ6ur","delta":"MAKCNTFJ\"}","metadata":{}},{"type":"tool-params-end","id":"toolu_01QX5fHRhaN7Y1YCy5cWQ6ur","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":6,"outputTokens":212,"totalTokens":218},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":264},"cache_creation_input_tokens":264,"cache_read_input_tokens":5962,"input_tokens":6,"output_tokens":1,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Remove tag \"obsolete\" from the organization \"Untagged Corp\".","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"I need to remove a tag called \"obsolete\" from an organization called \"Untagged Corp\". To do this, I need to:\n\n1. First, find the organization object for \"Untagged Corp\"\n2. Find the tag object for \"obsolete\"\n3. Use the remove-tag function to remove the tag from the organization\n\nLet me start by searching for the organization and the tag.","options":{}},{"type":"text","text":"I'll help you remove the \"obsolete\" tag from \"Untagged Corp\". First, let me search for both the organization and the tag.","options":{}},{"type":"tool-call","id":"toolu_01U3BBzdCHMvUMeGT6p5ExZd","name":"query","params":{"text":"Untagged Corp","includeContent":true,"limit":5},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01U3BBzdCHMvUMeGT6p5ExZd","name":"query","isFailure":false,"result":[{"id":"01JGFJJZ00G0WKQSJGMAKCNTFG","@type":"dxn:type:dxos.org/type/Organization:0.1.0","@meta":{"keys":[],"tags":["dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTFJ"]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTFG","name":"Untagged Corp"}],"providerExecuted":false,"options":{}}],"options":{}},{"role":"assistant","content":[{"type":"text","text":"Now let me search for the \"obsolete\" tag:","options":{}},{"type":"tool-call","id":"toolu_01M8V9MKk9A7ME6EHxyq7buv","name":"query","params":{"typename":"dxos.org/type/Tag","text":"obsolete","includeContent":true,"limit":5},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01M8V9MKk9A7ME6EHxyq7buv","name":"query","isFailure":false,"result":[{"id":"01JGFJJZ00G0WKQSJGMAKCNTFJ","@type":"dxn:type:dxos.org/type/Tag:0.1.0","@meta":{"keys":[]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTFJ","label":"obsolete"}],"providerExecuted":false,"options":{}}],"options":{}},{"role":"assistant","content":[{"type":"text","text":"Perfect! I found both:\n- \"Untagged Corp\" organization with ID: `01JGFJJZ00G0WKQSJGMAKCNTFG`\n- \"obsolete\" tag with ID: `01JGFJJZ00G0WKQSJGMAKCNTFJ`\n\nI can see that the organization currently has the \"obsolete\" tag in its metadata. Now I'll remove this tag:","options":{}},{"type":"tool-call","id":"toolu_01QX5fHRhaN7Y1YCy5cWQ6ur","name":"remove-tag","params":{"obj":"01JGFJJZ00G0WKQSJGMAKCNTFG","tag":"01JGFJJZ00G0WKQSJGMAKCNTFJ"},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01QX5fHRhaN7Y1YCy5cWQ6ur","name":"remove-tag","isFailure":false,"result":{"id":"01JGFJJZ00G0WKQSJGMAKCNTFG","@type":"dxn:type:dxos.org/type/Organization:0.1.0","@meta":{"keys":[],"tags":[]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTFG","name":"Untagged Corp"},"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_017LpBMyGyaqu1La8PW1keZz","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"Successfully","metadata":{}},{"type":"text-delta","id":"0","delta":" removed the \"obsolete\" tag from","metadata":{}},{"type":"text-delta","id":"0","delta":" \"Untagged Corp\"","metadata":{}},{"type":"text-delta","id":"0","delta":"! As","metadata":{}},{"type":"text-delta","id":"0","delta":" you can see in","metadata":{}},{"type":"text-delta","id":"0","delta":" the update","metadata":{}},{"type":"text-delta","id":"0","delta":"d object","metadata":{}},{"type":"text-delta","id":"0","delta":", the tags","metadata":{}},{"type":"text-delta","id":"0","delta":" array in","metadata":{}},{"type":"text-delta","id":"0","delta":" the metadata is","metadata":{}},{"type":"text-delta","id":"0","delta":" now empty, confir","metadata":{}},{"type":"text-delta","id":"0","delta":"ming that the tag has been removed from","metadata":{}},{"type":"text-delta","id":"0","delta":" the organization.","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"finish","reason":"stop","usage":{"inputTokens":6,"outputTokens":51,"totalTokens":57},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":356},"cache_creation_input_tokens":356,"cache_read_input_tokens":6226,"input_tokens":6,"output_tokens":1,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Add the organization \"Context Corp\" to the chat context.","options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01CQiCmLXjyMzjHCNzjJY7Lh","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"reasoning-start","id":"0","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"The user wants to add an","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" organization calle","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"d \"Context Corp\" to the chat context","metadata":{}},{"type":"reasoning-delta","id":"0","delta":". To","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" do this, I need to:","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"\n\n1. First, search","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" for an","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" organization with","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" that","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" name to see if it already","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" exists\n2. If it exists","metadata":{}},{"type":"reasoning-delta","id":"0","delta":", ad","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"d it to the context","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" using","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" the add-to","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"-context","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" function\n3. If it doesn't","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" exist, I","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" might","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" need to create","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" it first","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"\n\nLet me start by searching for this","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" organization.","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{"anthropic":{"type":"thinking","signature":"EpAECkYICxgCKkBR+vhX+aP4e5qinMifI9bW6FhxgwAvS2K1wF6/Z0R8KU7t3FiVJGnLk8xJk7/czYp3dR+nHb2iSgp+VvKfoXL8Egx5k/CH7J0X+IxxEb8aDNRkHII7slqoaTdQUyIwrx5dZwsiSFybON4oRvLUciPgfKvGqNOHZetSePDxDrKmrjyKTAZfTYFUlIqcRyx/KvcCVnjsSfVNO8ofEOYewpPHiK9A9l/3esazZD4tYR1b+yCEw4qBJIVrg7VWUjdcoI/1EWCbYM3IvUl13LDb6bMfiybIgZbODFr5wtMnTTVniw70n0ozt5A/11hh0lzUxTpo6A5pKPbg9ahAo63SeBP5FKlV5gN3gR1MxGhA0an+MAhfX/MCdrLK5OAOFKKXQXxLFjDn2f7NjQz62HWctYbXFrB0VzVWMQ8VvJxPQx9aMnzELOeNfQP4HuaFsZNOf7bLJM6oz82VwcLv2ydwVa6dv07YyF2lfKGlQK+lDOoZzpitHCK0SmNYo18+waxoi7/3PnC0EFwy0pMWVf4BMKxDNuofqBgfghxhDVTl5oDvRSoQWg3kTvoXBgkIb5ZgJClGMiaoN6AH55m7C3eveN8wgH9ur5ysEv0avkAuiCl3G73xTf4qwteFwKhZ4KR8RYodSI931hwuyGOyTYsFGpTEcapXFy1BC/os7JNfmSO8jF40ZJ13FZirGAE="}}},{"type":"reasoning-end","id":"0","metadata":{}},{"type":"text-start","id":"1","metadata":{}},{"type":"text-delta","id":"1","delta":"I'll search","metadata":{}},{"type":"text-delta","id":"1","delta":" for the organization \"Context Corp\" an","metadata":{}},{"type":"text-delta","id":"1","delta":"d ad","metadata":{}},{"type":"text-delta","id":"1","delta":"d it to the chat context.","metadata":{}},{"type":"text-end","id":"1","metadata":{}},{"type":"tool-params-start","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","name":"query","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","delta":"{\"text\":","metadata":{}},{"type":"tool-params-delta","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","delta":" \"Context","metadata":{}},{"type":"tool-params-delta","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","delta":" Corp\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","delta":", \"typena","metadata":{}},{"type":"tool-params-delta","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","delta":"me\": \"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","delta":"dxos.org/typ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","delta":"e/Org","metadata":{}},{"type":"tool-params-delta","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","delta":"anization","metadata":{}},{"type":"tool-params-delta","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","delta":"\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","delta":", \"inclu","metadata":{}},{"type":"tool-params-delta","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","delta":"deConten","metadata":{}},{"type":"tool-params-delta","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","delta":"t\":","metadata":{}},{"type":"tool-params-delta","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","delta":" true","metadata":{}},{"type":"tool-params-delta","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","delta":", \"lim","metadata":{}},{"type":"tool-params-delta","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","delta":"it","metadata":{}},{"type":"tool-params-delta","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","delta":"\":","metadata":{}},{"type":"tool-params-delta","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","delta":" 5}","metadata":{}},{"type":"tool-params-end","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":10,"outputTokens":229,"totalTokens":239},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":5659},"cache_creation_input_tokens":5659,"cache_read_input_tokens":0,"input_tokens":10,"output_tokens":6,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Add the organization \"Context Corp\" to the chat context.","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to add an organization called \"Context Corp\" to the chat context. To do this, I need to:\n\n1. First, search for an organization with that name to see if it already exists\n2. If it exists, add it to the context using the add-to-context function\n3. If it doesn't exist, I might need to create it first\n\nLet me start by searching for this organization.","options":{}},{"type":"text","text":"I'll search for the organization \"Context Corp\" and add it to the chat context.","options":{}},{"type":"tool-call","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","name":"query","params":{"text":"Context Corp","typename":"dxos.org/type/Organization","includeContent":true,"limit":5},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","name":"query","isFailure":false,"result":[{"id":"01JGFJJZ00G0WKQSJGMAKCNTGC","@type":"dxn:type:dxos.org/type/Organization:0.1.0","@meta":{"keys":[]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTGC","name":"Context Corp"}],"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01F23U7vNAh49wCRgppAKxzC","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"Foun","metadata":{}},{"type":"text-delta","id":"0","delta":"d it! I'll now add the \"","metadata":{}},{"type":"text-delta","id":"0","delta":"Context Corp\" organization to the chat context","metadata":{}},{"type":"text-delta","id":"0","delta":".","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"tool-params-start","id":"toolu_01Hma4zago7BFjtg3PiAFFbT","name":"add-to-context","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01Hma4zago7BFjtg3PiAFFbT","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Hma4zago7BFjtg3PiAFFbT","delta":"{\"obj","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Hma4zago7BFjtg3PiAFFbT","delta":"\":","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Hma4zago7BFjtg3PiAFFbT","delta":" \"01JGF","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Hma4zago7BFjtg3PiAFFbT","delta":"JJ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Hma4zago7BFjtg3PiAFFbT","delta":"Z00G0WKQSJ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Hma4zago7BFjtg3PiAFFbT","delta":"GMAKC","metadata":{}},{"type":"tool-params-delta","id":"toolu_01Hma4zago7BFjtg3PiAFFbT","delta":"NTGC\"}","metadata":{}},{"type":"tool-params-end","id":"toolu_01Hma4zago7BFjtg3PiAFFbT","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":6,"outputTokens":94,"totalTokens":100},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":5903},"cache_creation_input_tokens":5903,"cache_read_input_tokens":0,"input_tokens":6,"output_tokens":1,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>","options":{}},{"role":"user","content":"Add the organization \"Context Corp\" to the chat context.","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to add an organization called \"Context Corp\" to the chat context. To do this, I need to:\n\n1. First, search for an organization with that name to see if it already exists\n2. If it exists, add it to the context using the add-to-context function\n3. If it doesn't exist, I might need to create it first\n\nLet me start by searching for this organization.","options":{}},{"type":"text","text":"I'll search for the organization \"Context Corp\" and add it to the chat context.","options":{}},{"type":"tool-call","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","name":"query","params":{"text":"Context Corp","typename":"dxos.org/type/Organization","includeContent":true,"limit":5},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01J8xDxsbU2EQnZMnJhDzT8H","name":"query","isFailure":false,"result":[{"id":"01JGFJJZ00G0WKQSJGMAKCNTGC","@type":"dxn:type:dxos.org/type/Organization:0.1.0","@meta":{"keys":[]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTGC","name":"Context Corp"}],"providerExecuted":false,"options":{}}],"options":{}},{"role":"assistant","content":[{"type":"text","text":"Found it! I'll now add the \"Context Corp\" organization to the chat context.","options":{}},{"type":"tool-call","id":"toolu_01Hma4zago7BFjtg3PiAFFbT","name":"add-to-context","params":{"obj":"01JGFJJZ00G0WKQSJGMAKCNTGC"},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01Hma4zago7BFjtg3PiAFFbT","name":"add-to-context","isFailure":false,"result":{},"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_018f8mAwaUkPvwEztq4diU7n","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"I","metadata":{}},{"type":"text-delta","id":"0","delta":"'ve successfully added the","metadata":{}},{"type":"text-delta","id":"0","delta":" organization","metadata":{}},{"type":"text-delta","id":"0","delta":" \"Context Corp\" to the chat context","metadata":{}},{"type":"text-delta","id":"0","delta":". This","metadata":{}},{"type":"text-delta","id":"0","delta":" organization will","metadata":{}},{"type":"text-delta","id":"0","delta":" now be","metadata":{}},{"type":"text-delta","id":"0","delta":" available throughout","metadata":{}},{"type":"text-delta","id":"0","delta":" our","metadata":{}},{"type":"text-delta","id":"0","delta":" conversation for","metadata":{}},{"type":"text-delta","id":"0","delta":" reference","metadata":{}},{"type":"text-delta","id":"0","delta":" and any","metadata":{}},{"type":"text-delta","id":"0","delta":" relate","metadata":{}},{"type":"text-delta","id":"0","delta":"d operations you","metadata":{}},{"type":"text-delta","id":"0","delta":"'d like to perform.","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"finish","reason":"stop","usage":{"inputTokens":5,"outputTokens":39,"totalTokens":44},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":107},"cache_creation_input_tokens":107,"cache_read_input_tokens":5903,"input_tokens":5,"output_tokens":1,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>\n\n## Context Objects\n\n<object>\n <dxn>dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTH3</dxn>\n <typename>dxos.org/type/Organization</typename>\n</object>","options":{}},{"role":"user","content":"Remove the organization \"Remove Context Corp\" from the chat context.","options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01XZsqxVSUqUM2rS83xgXT2m","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"reasoning-start","id":"0","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"The user wants to remove an","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" organization called \"Remove Context Corp\" from","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" the chat context. I can","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" see that there's currently","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" one","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" organization object in the context","metadata":{}},{"type":"reasoning-delta","id":"0","delta":":","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"\n- dxn:echo:","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"BDJXMULPW5","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"FB55UZ7KP5","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"HLDHVTXUTHE","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"2U:01JGFJ","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"JZ00G0WK","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"QSJGMAKCNTH3","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" ","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"(","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"dxos","metadata":{}},{"type":"reasoning-delta","id":"0","delta":".org/type/Organization)","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"\n\nHowever","metadata":{}},{"type":"reasoning-delta","id":"0","delta":", I","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" don't know","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" if","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" this is","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" the \"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"Remove Context Corp\" organization without","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" loading","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" it","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" first","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" to","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" check","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" its","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" name","metadata":{}},{"type":"reasoning-delta","id":"0","delta":". Let","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" me loa","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"d the object to verify","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" it","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"'s the right","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" one before","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" removing","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" it from","metadata":{}},{"type":"reasoning-delta","id":"0","delta":" the context.","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{}},{"type":"reasoning-delta","id":"0","delta":"","metadata":{"anthropic":{"type":"thinking","signature":"Ev4ECkYICxgCKkDV+oF9NeT5Vk6ofBjfK6QKhcpJKwU6lwQ4tDNo+eWs5apIOS+37uVDiC02I10fvVLU8vuvkoKhPbctfRR/61+MEgwA5VibHM9CMtWYfJ8aDC6KQOatf0/jM2KpPyIwJnfMnNDiq9RmV15tm0ymocjAlnBd0Q1GGza0ahHOTjhVXNOGJ4LkedXWNSdOG1PbKuUDsoc7cZiXKW9iTSzdEsa5nmyZCwQquvP+mjCbjdN6n2aHSK4vnmbOhdXHvmIB1IdINf3QzncG4ITSsqmocU5nauC+2wqiTHTj7O2RcT42ej8qM+PqedzFAVPhu8b6iEnST9rxmyw1A5euWQQdiNcjhiQ78jCfDmGU6yEnHoTc/MwqUWmxI8HvlOFPTxw8KL2ucMO1IYNtCjBB+5pUoT7eVZasEuOaH3/2QTKjBRVVeu7XW1fBOS22CWtpMUCHr5W/6dbNFbx5aYm71AmPb1rqf8C+b5n/MTkfZZNx79O4nOQKHZmXzEu6HLEK4pYPdOM5bkHsT3/eSSNLXEBhzRWd7GOoiyu5+D4V2s8TnTm4oSI4+gBVkGcTTY9h2uiULgbiUuHXQGnCPmgxgc6FgUrvWpHMNsNbKTNct/NZmb9cPktDYht5f66k1pRxip5PSBUBv5Zv3I7eZ+OiwelRCYTLCVl4XtZzZHsHv4V/v3xEDz0DBfaVgeidrBlnmeni9ButQQbcY7ZR7qx0lGza4O4/VYZFRkJs/cyR/6W42/r7J6ZQQLk3huW2KpM87y9Lbm+i5lPqqRn0VyrS5kgPPwv5wsrfcqT+10S/q+YMf0DuVLwS3tV+3GApfyAzUQC7TqRXUu+UDIwYAQ=="}}},{"type":"reasoning-end","id":"0","metadata":{}},{"type":"text-start","id":"1","metadata":{}},{"type":"text-delta","id":"1","delta":"I'll first","metadata":{}},{"type":"text-delta","id":"1","delta":" check","metadata":{}},{"type":"text-delta","id":"1","delta":" if","metadata":{}},{"type":"text-delta","id":"1","delta":" the","metadata":{}},{"type":"text-delta","id":"1","delta":" organization in","metadata":{}},{"type":"text-delta","id":"1","delta":" the context","metadata":{}},{"type":"text-delta","id":"1","delta":" is \"Remove Context Corp\" before","metadata":{}},{"type":"text-delta","id":"1","delta":" removing it.","metadata":{}},{"type":"text-end","id":"1","metadata":{}},{"type":"tool-params-start","id":"toolu_01FNJ2SJBBVgUK1uEdaJYroa","name":"load-object","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01FNJ2SJBBVgUK1uEdaJYroa","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01FNJ2SJBBVgUK1uEdaJYroa","delta":"{\"ref","metadata":{}},{"type":"tool-params-delta","id":"toolu_01FNJ2SJBBVgUK1uEdaJYroa","delta":"s\"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01FNJ2SJBBVgUK1uEdaJYroa","delta":": [","metadata":{}},{"type":"tool-params-delta","id":"toolu_01FNJ2SJBBVgUK1uEdaJYroa","delta":"\"dxn:ec","metadata":{}},{"type":"tool-params-delta","id":"toolu_01FNJ2SJBBVgUK1uEdaJYroa","delta":"ho:BDJXM","metadata":{}},{"type":"tool-params-delta","id":"toolu_01FNJ2SJBBVgUK1uEdaJYroa","delta":"ULPW5FB5","metadata":{}},{"type":"tool-params-delta","id":"toolu_01FNJ2SJBBVgUK1uEdaJYroa","delta":"5UZ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01FNJ2SJBBVgUK1uEdaJYroa","delta":"7KP5HLD","metadata":{}},{"type":"tool-params-delta","id":"toolu_01FNJ2SJBBVgUK1uEdaJYroa","delta":"HVTXUTHE2","metadata":{}},{"type":"tool-params-delta","id":"toolu_01FNJ2SJBBVgUK1uEdaJYroa","delta":"U:01JGFJ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01FNJ2SJBBVgUK1uEdaJYroa","delta":"JZ00G0","metadata":{}},{"type":"tool-params-delta","id":"toolu_01FNJ2SJBBVgUK1uEdaJYroa","delta":"WKQ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01FNJ2SJBBVgUK1uEdaJYroa","delta":"SJGMA","metadata":{}},{"type":"tool-params-delta","id":"toolu_01FNJ2SJBBVgUK1uEdaJYroa","delta":"KCNTH3","metadata":{}},{"type":"tool-params-delta","id":"toolu_01FNJ2SJBBVgUK1uEdaJYroa","delta":"\"]}","metadata":{}},{"type":"tool-params-end","id":"toolu_01FNJ2SJBBVgUK1uEdaJYroa","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":10,"outputTokens":284,"totalTokens":294},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":5756},"cache_creation_input_tokens":5756,"cache_read_input_tokens":0,"input_tokens":10,"output_tokens":6,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>\n\n## Context Objects\n\n<object>\n <dxn>dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTH3</dxn>\n <typename>dxos.org/type/Organization</typename>\n</object>","options":{}},{"role":"user","content":"Remove the organization \"Remove Context Corp\" from the chat context.","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to remove an organization called \"Remove Context Corp\" from the chat context. I can see that there's currently one organization object in the context:\n- dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTH3 (dxos.org/type/Organization)\n\nHowever, I don't know if this is the \"Remove Context Corp\" organization without loading it first to check its name. Let me load the object to verify it's the right one before removing it from the context.","options":{}},{"type":"text","text":"I'll first check if the organization in the context is \"Remove Context Corp\" before removing it.","options":{}},{"type":"tool-call","id":"toolu_01FNJ2SJBBVgUK1uEdaJYroa","name":"load-object","params":{"refs":["dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTH3"]},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01FNJ2SJBBVgUK1uEdaJYroa","name":"load-object","isFailure":false,"result":[{"id":"01JGFJJZ00G0WKQSJGMAKCNTH3","@type":"dxn:type:dxos.org/type/Organization:0.1.0","@meta":{"keys":[]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTH3","name":"Remove Context Corp"}],"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_01BBr73KcpPdmaNtwNFAytzE","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"Perfect","metadata":{}},{"type":"text-delta","id":"0","delta":"! The","metadata":{}},{"type":"text-delta","id":"0","delta":" organization in","metadata":{}},{"type":"text-delta","id":"0","delta":" the context","metadata":{}},{"type":"text-delta","id":"0","delta":" is indeed \"Remove Context Corp\". I","metadata":{}},{"type":"text-delta","id":"0","delta":"'ll now remove it from the chat context","metadata":{}},{"type":"text-delta","id":"0","delta":".","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"tool-params-start","id":"toolu_01L7mLAwrEdjuo2jZ1VYgbEE","name":"remove-from-context","providerExecuted":false,"metadata":{}},{"type":"tool-params-delta","id":"toolu_01L7mLAwrEdjuo2jZ1VYgbEE","delta":"","metadata":{}},{"type":"tool-params-delta","id":"toolu_01L7mLAwrEdjuo2jZ1VYgbEE","delta":"{\"o","metadata":{}},{"type":"tool-params-delta","id":"toolu_01L7mLAwrEdjuo2jZ1VYgbEE","delta":"bj\": \"dxn:","metadata":{}},{"type":"tool-params-delta","id":"toolu_01L7mLAwrEdjuo2jZ1VYgbEE","delta":"echo:BDJ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01L7mLAwrEdjuo2jZ1VYgbEE","delta":"XMULPW5FB","metadata":{}},{"type":"tool-params-delta","id":"toolu_01L7mLAwrEdjuo2jZ1VYgbEE","delta":"55UZ7KP","metadata":{}},{"type":"tool-params-delta","id":"toolu_01L7mLAwrEdjuo2jZ1VYgbEE","delta":"5H","metadata":{}},{"type":"tool-params-delta","id":"toolu_01L7mLAwrEdjuo2jZ1VYgbEE","delta":"LD","metadata":{}},{"type":"tool-params-delta","id":"toolu_01L7mLAwrEdjuo2jZ1VYgbEE","delta":"HVT","metadata":{}},{"type":"tool-params-delta","id":"toolu_01L7mLAwrEdjuo2jZ1VYgbEE","delta":"XUTHE2","metadata":{}},{"type":"tool-params-delta","id":"toolu_01L7mLAwrEdjuo2jZ1VYgbEE","delta":"U:01JGFJ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01L7mLAwrEdjuo2jZ1VYgbEE","delta":"JZ","metadata":{}},{"type":"tool-params-delta","id":"toolu_01L7mLAwrEdjuo2jZ1VYgbEE","delta":"00G0W","metadata":{}},{"type":"tool-params-delta","id":"toolu_01L7mLAwrEdjuo2jZ1VYgbEE","delta":"KQSJGMA","metadata":{}},{"type":"tool-params-delta","id":"toolu_01L7mLAwrEdjuo2jZ1VYgbEE","delta":"KCNT","metadata":{}},{"type":"tool-params-delta","id":"toolu_01L7mLAwrEdjuo2jZ1VYgbEE","delta":"H3\"}","metadata":{}},{"type":"tool-params-end","id":"toolu_01L7mLAwrEdjuo2jZ1VYgbEE","metadata":{}},{"type":"finish","reason":"tool-calls","usage":{"inputTokens":6,"outputTokens":134,"totalTokens":140},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":5999},"cache_creation_input_tokens":5999,"cache_read_input_tokens":0,"input_tokens":6,"output_tokens":1,"server_tool_use":null,"service_tier":"standard"}}}}]},{"parameters":{"model":"@anthropic/claude-opus-4-6","stream":true,"tools":[{"name":"add-to-context","description":"Adds the object to the chat context.\nUse this it for objects that are useful long-term for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-from-context","description":"Removes the object from the chat context.\nUse this it for objects that are no longer useful for the conversation.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"load-object","description":"Loads the object or relation content.\nCan load multiple objects at at time.\nUse the to read the data when you have a DXN.\nCall this tool with an array of one or more DXNs or object IDs.\nWhen use see a reference ({ '/': 'dxn:...' }), you can call this function to load the object.\nNote that returned data is only a snapshot in time, and might have changed since the object was last loaded.","inputSchema":{"type":"object","required":["refs"],"properties":{"refs":{"type":"array","items":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}}},"additionalProperties":false}},{"name":"create-object","description":"Creates a new object and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","data"],"properties":{"typename":{"type":"string"},"data":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"delete-object","description":"Deletes the object.","inputSchema":{"type":"object","required":["obj"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"update-object","description":"Updates the object properties.","inputSchema":{"type":"object","required":["obj","properties"],"properties":{"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"type":"object","required":[],"properties":{},"additionalProperties":{"$id":"/schemas/any","title":"any"}}},"additionalProperties":false}},{"name":"query","description":"Query for objects in ECHO.\nUse this tool when searching for information in the space (both automerge and queues).\nCurrently, two types of queries are supported:\n - Full-text search - terms may appear anywhere in the object.\n - Type-based search - objects of a specific type.\nYou can use them together, for example, to search for objects of a specific type that match a full-text query.\nImportant: Whem querying by typename, make sure to list the schema first, to get the exact typename.\n\nOmit both typename and text to search for all objects.\n\n<output_format>\n You can choose to either return the full object data, or just the DXN, type and label.\n When expecting a lot of results, run with includeContent=false to not pollute the context, and then load specific objects using the load tool.\n\n You can choose to get the content right away, if you don't expect a lot of results.\n To load content right away, run with includeContent=true.\n When loading content, set an appropriate limit on the number of results to avoid overwhelming the context.\n</output_format>\n\n<example description=\"All tasks related to Cyberdyne and Bob\">\n {\n \"typename\": \"dxos.org/type/Task\",\n \"text\": \"cyberdyne bob\",\n }\n</example>\n\n<example description=\"Financial report Q1 2026\">\n {\n \"typename\": \"dxos.org/type/Document\",\n \"text\": \"financial report Q1 2026\",\n \"includeContent\": true\n \"limit\": 3\n }\n</example>","inputSchema":{"type":"object","required":[],"properties":{"typename":{"type":"string","description":"The typename of the objects to list."},"text":{"type":"string","description":"Full text search query."},"includeContent":{"type":"boolean","description":"Include the full object data in the response.","default":false},"limit":{"type":"number","description":"The maximum number of results to return.","default":10},"includeQueues":{"type":"boolean","description":"Search in queues as well as spaces. Only use this if searching for emails.","default":false}},"additionalProperties":false}},{"name":"create-relation","description":"Creates a new relation and adds it to the current space.\nGet the schema from the schema-list tool and ensure that the data matches the corresponding schema.","inputSchema":{"type":"object","required":["typename","source","target","properties"],"properties":{"typename":{"type":"string"},"source":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"target":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"properties":{"$id":"/schemas/any","description":"The data to be stored in the relation.","title":"any"}},"additionalProperties":false}},{"name":"delete-relation","description":"Deletes the relation.","inputSchema":{"type":"object","required":["rel"],"properties":{"rel":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"add-schema","description":"Adds a schema to the space.\nThe name will be used when displayed to the user.","inputSchema":{"type":"object","required":["name","typename","jsonSchema"],"properties":{"name":{"type":"string"},"typename":{"type":"string","description":"The typename of the schema in the format of \"example.com/type/Type\"."},"jsonSchema":{"$id":"/schemas/any","title":"any"}},"additionalProperties":false}},{"name":"list-schemas","description":"Lists schemas definitions.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"number"}},"additionalProperties":false}},{"name":"add-tag","description":"Adds a tag to an object.\nTags are objects of type dxos.org/type/Tag.\nYou must search database for available tags, or create a new one.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}},{"name":"remove-tag","description":"Removes a tag from an object.\nTags are objects of type dxos.org/type/Tag.","inputSchema":{"type":"object","required":["tag","obj"],"properties":{"tag":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]},"obj":{"type":"string","description":"The ID of the referenced object. Formats accepted:\n- DXN (dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4). DXNs can be prepended with an @ symbol for compatibility with in-text references.\n- space ID, object ID tuple (spaceID:objectID)\n- Only object ID that is assumed to be in the current space (01KG7R1ZXWFMWQ4DA1Q6TN1DG4)","examples":["dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","@dxn:echo:@:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","BM3FSHFOMJCHCG5QW7JTVKGYABD2GAA7G:01KG7R1ZXWFMWQ4DA1Q6TN1DG4","01KG7R1ZXWFMWQ4DA1Q6TN1DG4"]}},"additionalProperties":false}}]},"prompt":{"content":[{"role":"system","content":"## Blueprints Definitions\n\n<blueprint>\n You can query, create, update, and delete objects in ECHO.\n You can manage schemas, relations, tags, and add objects to the chat context.\n</blueprint>\n\n## Context Objects\n\n<object>\n <dxn>dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTH3</dxn>\n <typename>dxos.org/type/Organization</typename>\n</object>","options":{}},{"role":"user","content":"Remove the organization \"Remove Context Corp\" from the chat context.","options":{}},{"role":"assistant","content":[{"type":"reasoning","text":"The user wants to remove an organization called \"Remove Context Corp\" from the chat context. I can see that there's currently one organization object in the context:\n- dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTH3 (dxos.org/type/Organization)\n\nHowever, I don't know if this is the \"Remove Context Corp\" organization without loading it first to check its name. Let me load the object to verify it's the right one before removing it from the context.","options":{}},{"type":"text","text":"I'll first check if the organization in the context is \"Remove Context Corp\" before removing it.","options":{}},{"type":"tool-call","id":"toolu_01FNJ2SJBBVgUK1uEdaJYroa","name":"load-object","params":{"refs":["dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTH3"]},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01FNJ2SJBBVgUK1uEdaJYroa","name":"load-object","isFailure":false,"result":[{"id":"01JGFJJZ00G0WKQSJGMAKCNTH3","@type":"dxn:type:dxos.org/type/Organization:0.1.0","@meta":{"keys":[]},"@dxn":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTH3","name":"Remove Context Corp"}],"providerExecuted":false,"options":{}}],"options":{}},{"role":"assistant","content":[{"type":"text","text":"Perfect! The organization in the context is indeed \"Remove Context Corp\". I'll now remove it from the chat context.","options":{}},{"type":"tool-call","id":"toolu_01L7mLAwrEdjuo2jZ1VYgbEE","name":"remove-from-context","params":{"obj":"dxn:echo:BDJXMULPW5FB55UZ7KP5HLDHVTXUTHE2U:01JGFJJZ00G0WKQSJGMAKCNTH3"},"providerExecuted":false,"options":{}}],"options":{}},{"role":"tool","content":[{"type":"tool-result","id":"toolu_01L7mLAwrEdjuo2jZ1VYgbEE","name":"remove-from-context","isFailure":false,"result":{},"providerExecuted":false,"options":{}}],"options":{"anthropic":{"cacheControl":{"ttl":"5m","type":"ephemeral"}}}}]},"response":[{"type":"response-metadata","id":"msg_015mGp9QdW3jyTjeQRznbN8U","modelId":"claude-opus-4-20250514","timestamp":"1970-01-01T00:00:00.000Z","metadata":{}},{"type":"text-start","id":"0","metadata":{}},{"type":"text-delta","id":"0","delta":"I","metadata":{}},{"type":"text-delta","id":"0","delta":"'ve successfully removed the","metadata":{}},{"type":"text-delta","id":"0","delta":" organization \"Remove Context Corp\" from the","metadata":{}},{"type":"text-delta","id":"0","delta":" chat context.","metadata":{}},{"type":"text-end","id":"0","metadata":{}},{"type":"finish","reason":"stop","usage":{"inputTokens":5,"outputTokens":19,"totalTokens":24},"metadata":{"anthropic":{"usage":{"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":147},"cache_creation_input_tokens":147,"cache_read_input_tokens":5999,"input_tokens":5,"output_tokens":1,"server_tool_use":null,"service_tier":"standard"}}}}]}]}
|