@assistant-ui/core 0.1.0
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/adapters/attachment.d.ts +36 -0
- package/dist/adapters/attachment.d.ts.map +1 -0
- package/dist/adapters/attachment.js +148 -0
- package/dist/adapters/attachment.js.map +1 -0
- package/dist/adapters/feedback.d.ts +10 -0
- package/dist/adapters/feedback.d.ts.map +1 -0
- package/dist/adapters/feedback.js +2 -0
- package/dist/adapters/feedback.js.map +1 -0
- package/dist/adapters/index.d.ts +8 -0
- package/dist/adapters/index.d.ts.map +1 -0
- package/dist/adapters/index.js +3 -0
- package/dist/adapters/index.js.map +1 -0
- package/dist/adapters/speech.d.ts +76 -0
- package/dist/adapters/speech.d.ts.map +1 -0
- package/dist/adapters/speech.js +179 -0
- package/dist/adapters/speech.js.map +1 -0
- package/dist/adapters/suggestion.d.ts +10 -0
- package/dist/adapters/suggestion.d.ts.map +1 -0
- package/dist/adapters/suggestion.js +2 -0
- package/dist/adapters/suggestion.js.map +1 -0
- package/dist/adapters/thread-history.d.ts +43 -0
- package/dist/adapters/thread-history.d.ts.map +1 -0
- package/dist/adapters/thread-history.js +2 -0
- package/dist/adapters/thread-history.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -0
- package/dist/internal.d.ts +5 -0
- package/dist/internal.d.ts.map +1 -0
- package/dist/internal.js +7 -0
- package/dist/internal.js.map +1 -0
- package/dist/model-context/frame/host.d.ts +21 -0
- package/dist/model-context/frame/host.d.ts.map +1 -0
- package/dist/model-context/frame/host.js +141 -0
- package/dist/model-context/frame/host.js.map +1 -0
- package/dist/model-context/frame/index.d.ts +5 -0
- package/dist/model-context/frame/index.d.ts.map +1 -0
- package/dist/model-context/frame/index.js +4 -0
- package/dist/model-context/frame/index.js.map +1 -0
- package/dist/model-context/frame/provider.d.ts +18 -0
- package/dist/model-context/frame/provider.d.ts.map +1 -0
- package/dist/model-context/frame/provider.js +133 -0
- package/dist/model-context/frame/provider.js.map +1 -0
- package/dist/model-context/frame/types.d.ts +29 -0
- package/dist/model-context/frame/types.d.ts.map +1 -0
- package/dist/model-context/frame/types.js +2 -0
- package/dist/model-context/frame/types.js.map +1 -0
- package/dist/model-context/index.d.ts +8 -0
- package/dist/model-context/index.d.ts.map +1 -0
- package/dist/model-context/index.js +9 -0
- package/dist/model-context/index.js.map +1 -0
- package/dist/model-context/registry-handles.d.ts +13 -0
- package/dist/model-context/registry-handles.d.ts.map +1 -0
- package/dist/model-context/registry-handles.js +2 -0
- package/dist/model-context/registry-handles.js.map +1 -0
- package/dist/model-context/registry.d.ts +17 -0
- package/dist/model-context/registry.d.ts.map +1 -0
- package/dist/model-context/registry.js +108 -0
- package/dist/model-context/registry.js.map +1 -0
- package/dist/model-context/tool.d.ts +3 -0
- package/dist/model-context/tool.d.ts.map +1 -0
- package/dist/model-context/tool.js +5 -0
- package/dist/model-context/tool.js.map +1 -0
- package/dist/model-context/types.d.ts +37 -0
- package/dist/model-context/types.d.ts.map +1 -0
- package/dist/model-context/types.js +43 -0
- package/dist/model-context/types.js.map +1 -0
- package/dist/runtime/api/assistant-runtime.d.ts +64 -0
- package/dist/runtime/api/assistant-runtime.d.ts.map +1 -0
- package/dist/runtime/api/assistant-runtime.js +46 -0
- package/dist/runtime/api/assistant-runtime.js.map +1 -0
- package/dist/runtime/api/attachment-runtime.d.ts +63 -0
- package/dist/runtime/api/attachment-runtime.d.ts.map +1 -0
- package/dist/runtime/api/attachment-runtime.js +56 -0
- package/dist/runtime/api/attachment-runtime.js.map +1 -0
- package/dist/runtime/api/bindings.d.ts +31 -0
- package/dist/runtime/api/bindings.d.ts.map +1 -0
- package/dist/runtime/api/bindings.js +2 -0
- package/dist/runtime/api/bindings.js.map +1 -0
- package/dist/runtime/api/composer-runtime.d.ts +181 -0
- package/dist/runtime/api/composer-runtime.d.ts.map +1 -0
- package/dist/runtime/api/composer-runtime.js +247 -0
- package/dist/runtime/api/composer-runtime.js.map +1 -0
- package/dist/runtime/api/message-part-runtime.d.ts +31 -0
- package/dist/runtime/api/message-part-runtime.d.ts.map +1 -0
- package/dist/runtime/api/message-part-runtime.js +67 -0
- package/dist/runtime/api/message-part-runtime.js.map +1 -0
- package/dist/runtime/api/message-runtime.d.ts +91 -0
- package/dist/runtime/api/message-runtime.d.ts.map +1 -0
- package/dist/runtime/api/message-runtime.js +199 -0
- package/dist/runtime/api/message-runtime.js.map +1 -0
- package/dist/runtime/api/paths.d.ts +64 -0
- package/dist/runtime/api/paths.d.ts.map +1 -0
- package/dist/runtime/api/paths.js +2 -0
- package/dist/runtime/api/paths.js.map +1 -0
- package/dist/runtime/api/thread-list-item-runtime.d.ts +50 -0
- package/dist/runtime/api/thread-list-item-runtime.d.ts.map +1 -0
- package/dist/runtime/api/thread-list-item-runtime.js +85 -0
- package/dist/runtime/api/thread-list-item-runtime.js.map +1 -0
- package/dist/runtime/api/thread-list-runtime.d.ts +44 -0
- package/dist/runtime/api/thread-list-runtime.d.ts.map +1 -0
- package/dist/runtime/api/thread-list-runtime.js +136 -0
- package/dist/runtime/api/thread-list-runtime.js.map +1 -0
- package/dist/runtime/api/thread-runtime.d.ts +272 -0
- package/dist/runtime/api/thread-runtime.d.ts.map +1 -0
- package/dist/runtime/api/thread-runtime.js +240 -0
- package/dist/runtime/api/thread-runtime.js.map +1 -0
- package/dist/runtime/base/base-assistant-runtime-core.d.ts +12 -0
- package/dist/runtime/base/base-assistant-runtime-core.d.ts.map +1 -0
- package/dist/runtime/base/base-assistant-runtime-core.js +11 -0
- package/dist/runtime/base/base-assistant-runtime-core.js.map +1 -0
- package/dist/runtime/base/base-composer-runtime-core.d.ts +55 -0
- package/dist/runtime/base/base-composer-runtime-core.d.ts.map +1 -0
- package/dist/runtime/base/base-composer-runtime-core.js +320 -0
- package/dist/runtime/base/base-composer-runtime-core.js.map +1 -0
- package/dist/runtime/base/base-thread-runtime-core.d.ts +67 -0
- package/dist/runtime/base/base-thread-runtime-core.d.ts.map +1 -0
- package/dist/runtime/base/base-thread-runtime-core.js +157 -0
- package/dist/runtime/base/base-thread-runtime-core.js.map +1 -0
- package/dist/runtime/base/default-edit-composer-runtime-core.d.ts +28 -0
- package/dist/runtime/base/default-edit-composer-runtime-core.d.ts.map +1 -0
- package/dist/runtime/base/default-edit-composer-runtime-core.js +49 -0
- package/dist/runtime/base/default-edit-composer-runtime-core.js.map +1 -0
- package/dist/runtime/base/default-thread-composer-runtime-core.d.ts +24 -0
- package/dist/runtime/base/default-thread-composer-runtime-core.d.ts.map +1 -0
- package/dist/runtime/base/default-thread-composer-runtime-core.js +41 -0
- package/dist/runtime/base/default-thread-composer-runtime-core.js.map +1 -0
- package/dist/runtime/index.d.ts +20 -0
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/runtime/index.js +7 -0
- package/dist/runtime/index.js.map +1 -0
- package/dist/runtime/interfaces/assistant-runtime-core.d.ts +10 -0
- package/dist/runtime/interfaces/assistant-runtime-core.d.ts.map +1 -0
- package/dist/runtime/interfaces/assistant-runtime-core.js +2 -0
- package/dist/runtime/interfaces/assistant-runtime-core.js.map +1 -0
- package/dist/runtime/interfaces/composer-runtime-core.d.ts +38 -0
- package/dist/runtime/interfaces/composer-runtime-core.d.ts.map +1 -0
- package/dist/runtime/interfaces/composer-runtime-core.js +2 -0
- package/dist/runtime/interfaces/composer-runtime-core.js.map +1 -0
- package/dist/runtime/interfaces/thread-list-runtime-core.d.ts +37 -0
- package/dist/runtime/interfaces/thread-list-runtime-core.d.ts.map +1 -0
- package/dist/runtime/interfaces/thread-list-runtime-core.js +2 -0
- package/dist/runtime/interfaces/thread-list-runtime-core.js.map +1 -0
- package/dist/runtime/interfaces/thread-runtime-core.d.ts +97 -0
- package/dist/runtime/interfaces/thread-runtime-core.d.ts.map +1 -0
- package/dist/runtime/interfaces/thread-runtime-core.js +2 -0
- package/dist/runtime/interfaces/thread-runtime-core.js.map +1 -0
- package/dist/runtime/internal.d.ts +23 -0
- package/dist/runtime/internal.d.ts.map +1 -0
- package/dist/runtime/internal.js +25 -0
- package/dist/runtime/internal.js.map +1 -0
- package/dist/runtime/utils/auto-status.d.ts +5 -0
- package/dist/runtime/utils/auto-status.d.ts.map +1 -0
- package/dist/runtime/utils/auto-status.js +32 -0
- package/dist/runtime/utils/auto-status.js.map +1 -0
- package/dist/runtime/utils/chat-model-adapter.d.ts +40 -0
- package/dist/runtime/utils/chat-model-adapter.d.ts.map +1 -0
- package/dist/runtime/utils/chat-model-adapter.js +2 -0
- package/dist/runtime/utils/chat-model-adapter.js.map +1 -0
- package/dist/runtime/utils/external-store-message.d.ts +10 -0
- package/dist/runtime/utils/external-store-message.d.ts.map +1 -0
- package/dist/runtime/utils/external-store-message.js +22 -0
- package/dist/runtime/utils/external-store-message.js.map +1 -0
- package/dist/runtime/utils/message-repository.d.ts +43 -0
- package/dist/runtime/utils/message-repository.d.ts.map +1 -0
- package/dist/runtime/utils/message-repository.js +257 -0
- package/dist/runtime/utils/message-repository.js.map +1 -0
- package/dist/runtime/utils/thread-message-like.d.ts +34 -0
- package/dist/runtime/utils/thread-message-like.d.ts.map +1 -0
- package/dist/runtime/utils/thread-message-like.js +129 -0
- package/dist/runtime/utils/thread-message-like.js.map +1 -0
- package/dist/runtimes/assistant-transport/utils.d.ts +11 -0
- package/dist/runtimes/assistant-transport/utils.d.ts.map +1 -0
- package/dist/runtimes/assistant-transport/utils.js +20 -0
- package/dist/runtimes/assistant-transport/utils.js.map +1 -0
- package/dist/runtimes/external-store/external-store-adapter.d.ts +81 -0
- package/dist/runtimes/external-store/external-store-adapter.d.ts.map +1 -0
- package/dist/runtimes/external-store/external-store-adapter.js +2 -0
- package/dist/runtimes/external-store/external-store-adapter.js.map +1 -0
- package/dist/runtimes/external-store/external-store-runtime-core.d.ts +9 -0
- package/dist/runtimes/external-store/external-store-runtime-core.d.ts.map +1 -0
- package/dist/runtimes/external-store/external-store-runtime-core.js +19 -0
- package/dist/runtimes/external-store/external-store-runtime-core.js.map +1 -0
- package/dist/runtimes/external-store/external-store-thread-list-runtime-core.d.ts +42 -0
- package/dist/runtimes/external-store/external-store-thread-list-runtime-core.d.ts.map +1 -0
- package/dist/runtimes/external-store/external-store-thread-list-runtime-core.js +174 -0
- package/dist/runtimes/external-store/external-store-thread-list-runtime-core.js.map +1 -0
- package/dist/runtimes/external-store/external-store-thread-runtime-core.d.ts +47 -0
- package/dist/runtimes/external-store/external-store-thread-runtime-core.d.ts.map +1 -0
- package/dist/runtimes/external-store/external-store-thread-runtime-core.js +260 -0
- package/dist/runtimes/external-store/external-store-thread-runtime-core.js.map +1 -0
- package/dist/runtimes/external-store/index.d.ts +8 -0
- package/dist/runtimes/external-store/index.d.ts.map +1 -0
- package/dist/runtimes/external-store/index.js +5 -0
- package/dist/runtimes/external-store/index.js.map +1 -0
- package/dist/runtimes/external-store/thread-message-converter.d.ts +7 -0
- package/dist/runtimes/external-store/thread-message-converter.d.ts.map +1 -0
- package/dist/runtimes/external-store/thread-message-converter.js +12 -0
- package/dist/runtimes/external-store/thread-message-converter.js.map +1 -0
- package/dist/runtimes/index.d.ts +6 -0
- package/dist/runtimes/index.d.ts.map +1 -0
- package/dist/runtimes/index.js +4 -0
- package/dist/runtimes/index.js.map +1 -0
- package/dist/runtimes/internal.d.ts +18 -0
- package/dist/runtimes/internal.d.ts.map +1 -0
- package/dist/runtimes/internal.js +15 -0
- package/dist/runtimes/internal.js.map +1 -0
- package/dist/runtimes/local/index.d.ts +7 -0
- package/dist/runtimes/local/index.d.ts.map +1 -0
- package/dist/runtimes/local/index.js +5 -0
- package/dist/runtimes/local/index.js.map +1 -0
- package/dist/runtimes/local/local-runtime-core.d.ts +11 -0
- package/dist/runtimes/local/local-runtime-core.d.ts.map +1 -0
- package/dist/runtimes/local/local-runtime-core.js +22 -0
- package/dist/runtimes/local/local-runtime-core.js.map +1 -0
- package/dist/runtimes/local/local-runtime-options.d.ts +23 -0
- package/dist/runtimes/local/local-runtime-options.d.ts.map +1 -0
- package/dist/runtimes/local/local-runtime-options.js +2 -0
- package/dist/runtimes/local/local-runtime-options.js.map +1 -0
- package/dist/runtimes/local/local-thread-list-runtime-core.d.ts +46 -0
- package/dist/runtimes/local/local-thread-list-runtime-core.d.ts.map +1 -0
- package/dist/runtimes/local/local-thread-list-runtime-core.js +87 -0
- package/dist/runtimes/local/local-thread-list-runtime-core.js.map +1 -0
- package/dist/runtimes/local/local-thread-runtime-core.d.ts +59 -0
- package/dist/runtimes/local/local-thread-runtime-core.d.ts.map +1 -0
- package/dist/runtimes/local/local-thread-runtime-core.js +423 -0
- package/dist/runtimes/local/local-thread-runtime-core.js.map +1 -0
- package/dist/runtimes/local/should-continue.d.ts +3 -0
- package/dist/runtimes/local/should-continue.d.ts.map +1 -0
- package/dist/runtimes/local/should-continue.js +14 -0
- package/dist/runtimes/local/should-continue.js.map +1 -0
- package/dist/runtimes/remote-thread-list/adapter/in-memory.d.ts +13 -0
- package/dist/runtimes/remote-thread-list/adapter/in-memory.d.ts.map +1 -0
- package/dist/runtimes/remote-thread-list/adapter/in-memory.js +29 -0
- package/dist/runtimes/remote-thread-list/adapter/in-memory.js.map +1 -0
- package/dist/runtimes/remote-thread-list/empty-thread-core.d.ts +3 -0
- package/dist/runtimes/remote-thread-list/empty-thread-core.d.ts.map +1 -0
- package/dist/runtimes/remote-thread-list/empty-thread-core.js +146 -0
- package/dist/runtimes/remote-thread-list/empty-thread-core.js.map +1 -0
- package/dist/runtimes/remote-thread-list/optimistic-state.d.ts +23 -0
- package/dist/runtimes/remote-thread-list/optimistic-state.d.ts.map +1 -0
- package/dist/runtimes/remote-thread-list/optimistic-state.js +57 -0
- package/dist/runtimes/remote-thread-list/optimistic-state.js.map +1 -0
- package/dist/runtimes/remote-thread-list/remote-thread-state.d.ts +37 -0
- package/dist/runtimes/remote-thread-list/remote-thread-state.d.ts.map +1 -0
- package/dist/runtimes/remote-thread-list/remote-thread-state.js +62 -0
- package/dist/runtimes/remote-thread-list/remote-thread-state.js.map +1 -0
- package/dist/runtimes/remote-thread-list/types.d.ts +38 -0
- package/dist/runtimes/remote-thread-list/types.d.ts.map +1 -0
- package/dist/runtimes/remote-thread-list/types.js +2 -0
- package/dist/runtimes/remote-thread-list/types.js.map +1 -0
- package/dist/store/clients/chain-of-thought-client.d.ts +15 -0
- package/dist/store/clients/chain-of-thought-client.d.ts.map +1 -0
- package/dist/store/clients/chain-of-thought-client.js +18 -0
- package/dist/store/clients/chain-of-thought-client.js.map +1 -0
- package/dist/store/clients/index.d.ts +6 -0
- package/dist/store/clients/index.d.ts.map +1 -0
- package/dist/store/clients/index.js +6 -0
- package/dist/store/clients/index.js.map +1 -0
- package/dist/store/clients/model-context-client.d.ts +3 -0
- package/dist/store/clients/model-context-client.d.ts.map +1 -0
- package/dist/store/clients/model-context-client.js +14 -0
- package/dist/store/clients/model-context-client.js.map +1 -0
- package/dist/store/clients/no-op-composer-client.d.ts +7 -0
- package/dist/store/clients/no-op-composer-client.d.ts.map +1 -0
- package/dist/store/clients/no-op-composer-client.js +61 -0
- package/dist/store/clients/no-op-composer-client.js.map +1 -0
- package/dist/store/clients/suggestions.d.ts +11 -0
- package/dist/store/clients/suggestions.d.ts.map +1 -0
- package/dist/store/clients/suggestions.js +37 -0
- package/dist/store/clients/suggestions.js.map +1 -0
- package/dist/store/clients/thread-message-client.d.ts +11 -0
- package/dist/store/clients/thread-message-client.d.ts.map +1 -0
- package/dist/store/clients/thread-message-client.js +112 -0
- package/dist/store/clients/thread-message-client.js.map +1 -0
- package/dist/store/index.d.ts +14 -0
- package/dist/store/index.d.ts.map +1 -0
- package/dist/store/index.js +14 -0
- package/dist/store/index.js.map +1 -0
- package/dist/store/internal.d.ts +11 -0
- package/dist/store/internal.d.ts.map +1 -0
- package/dist/store/internal.js +12 -0
- package/dist/store/internal.js.map +1 -0
- package/dist/store/runtime-clients/attachment-runtime-client.d.ts +8 -0
- package/dist/store/runtime-clients/attachment-runtime-client.d.ts.map +1 -0
- package/dist/store/runtime-clients/attachment-runtime-client.js +11 -0
- package/dist/store/runtime-clients/attachment-runtime-client.js.map +1 -0
- package/dist/store/runtime-clients/composer-runtime-client.d.ts +13 -0
- package/dist/store/runtime-clients/composer-runtime-client.d.ts.map +1 -0
- package/dist/store/runtime-clients/composer-runtime-client.js +83 -0
- package/dist/store/runtime-clients/composer-runtime-client.js.map +1 -0
- package/dist/store/runtime-clients/index.d.ts +8 -0
- package/dist/store/runtime-clients/index.d.ts.map +1 -0
- package/dist/store/runtime-clients/index.js +8 -0
- package/dist/store/runtime-clients/index.js.map +1 -0
- package/dist/store/runtime-clients/message-part-runtime-client.d.ts +8 -0
- package/dist/store/runtime-clients/message-part-runtime-client.d.ts.map +1 -0
- package/dist/store/runtime-clients/message-part-runtime-client.js +12 -0
- package/dist/store/runtime-clients/message-part-runtime-client.js.map +1 -0
- package/dist/store/runtime-clients/message-runtime-client.d.ts +11 -0
- package/dist/store/runtime-clients/message-runtime-client.d.ts.map +1 -0
- package/dist/store/runtime-clients/message-runtime-client.js +78 -0
- package/dist/store/runtime-clients/message-runtime-client.js.map +1 -0
- package/dist/store/runtime-clients/tap-subscribable.d.ts +3 -0
- package/dist/store/runtime-clients/tap-subscribable.d.ts.map +1 -0
- package/dist/store/runtime-clients/tap-subscribable.js +12 -0
- package/dist/store/runtime-clients/tap-subscribable.js.map +1 -0
- package/dist/store/runtime-clients/thread-list-item-runtime-client.d.ts +8 -0
- package/dist/store/runtime-clients/thread-list-item-runtime-client.d.ts.map +1 -0
- package/dist/store/runtime-clients/thread-list-item-runtime-client.js +41 -0
- package/dist/store/runtime-clients/thread-list-item-runtime-client.js.map +1 -0
- package/dist/store/runtime-clients/thread-list-runtime-client.d.ts +10 -0
- package/dist/store/runtime-clients/thread-list-runtime-client.d.ts.map +1 -0
- package/dist/store/runtime-clients/thread-list-runtime-client.js +54 -0
- package/dist/store/runtime-clients/thread-list-runtime-client.js.map +1 -0
- package/dist/store/runtime-clients/thread-runtime-client.d.ts +8 -0
- package/dist/store/runtime-clients/thread-runtime-client.d.ts.map +1 -0
- package/dist/store/runtime-clients/thread-runtime-client.js +91 -0
- package/dist/store/runtime-clients/thread-runtime-client.js.map +1 -0
- package/dist/store/scopes/attachment.d.ts +23 -0
- package/dist/store/scopes/attachment.d.ts.map +1 -0
- package/dist/store/scopes/attachment.js +2 -0
- package/dist/store/scopes/attachment.js.map +1 -0
- package/dist/store/scopes/chain-of-thought.d.ts +39 -0
- package/dist/store/scopes/chain-of-thought.d.ts.map +1 -0
- package/dist/store/scopes/chain-of-thought.js +2 -0
- package/dist/store/scopes/chain-of-thought.js.map +1 -0
- package/dist/store/scopes/composer.d.ts +75 -0
- package/dist/store/scopes/composer.d.ts.map +1 -0
- package/dist/store/scopes/composer.js +2 -0
- package/dist/store/scopes/composer.js.map +1 -0
- package/dist/store/scopes/index.d.ts +12 -0
- package/dist/store/scopes/index.d.ts.map +1 -0
- package/dist/store/scopes/index.js +2 -0
- package/dist/store/scopes/index.js.map +1 -0
- package/dist/store/scopes/message.d.ts +86 -0
- package/dist/store/scopes/message.d.ts.map +1 -0
- package/dist/store/scopes/message.js +2 -0
- package/dist/store/scopes/message.js.map +1 -0
- package/dist/store/scopes/model-context.d.ts +11 -0
- package/dist/store/scopes/model-context.d.ts.map +1 -0
- package/dist/store/scopes/model-context.js +2 -0
- package/dist/store/scopes/model-context.js.map +1 -0
- package/dist/store/scopes/part.d.ts +44 -0
- package/dist/store/scopes/part.d.ts.map +1 -0
- package/dist/store/scopes/part.js +2 -0
- package/dist/store/scopes/part.js.map +1 -0
- package/dist/store/scopes/suggestion.d.ts +19 -0
- package/dist/store/scopes/suggestion.d.ts.map +1 -0
- package/dist/store/scopes/suggestion.js +2 -0
- package/dist/store/scopes/suggestion.js.map +1 -0
- package/dist/store/scopes/suggestions.d.ts +19 -0
- package/dist/store/scopes/suggestions.d.ts.map +1 -0
- package/dist/store/scopes/suggestions.js +2 -0
- package/dist/store/scopes/suggestions.js.map +1 -0
- package/dist/store/scopes/thread-list-item.d.ts +50 -0
- package/dist/store/scopes/thread-list-item.d.ts.map +1 -0
- package/dist/store/scopes/thread-list-item.js +2 -0
- package/dist/store/scopes/thread-list-item.js.map +1 -0
- package/dist/store/scopes/thread.d.ts +135 -0
- package/dist/store/scopes/thread.d.ts.map +1 -0
- package/dist/store/scopes/thread.js +2 -0
- package/dist/store/scopes/thread.js.map +1 -0
- package/dist/store/scopes/threads.d.ts +29 -0
- package/dist/store/scopes/threads.d.ts.map +1 -0
- package/dist/store/scopes/threads.js +2 -0
- package/dist/store/scopes/threads.js.map +1 -0
- package/dist/store/types/client.d.ts +137 -0
- package/dist/store/types/client.d.ts.map +1 -0
- package/dist/store/types/client.js +2 -0
- package/dist/store/types/client.js.map +1 -0
- package/dist/store/types/events.d.ts +33 -0
- package/dist/store/types/events.d.ts.map +1 -0
- package/dist/store/types/events.js +8 -0
- package/dist/store/types/events.js.map +1 -0
- package/dist/store/types/index.d.ts +3 -0
- package/dist/store/types/index.d.ts.map +1 -0
- package/dist/store/types/index.js +2 -0
- package/dist/store/types/index.js.map +1 -0
- package/dist/store/utils/attach-transform-scopes.d.ts +11 -0
- package/dist/store/utils/attach-transform-scopes.d.ts.map +1 -0
- package/dist/store/utils/attach-transform-scopes.js +12 -0
- package/dist/store/utils/attach-transform-scopes.js.map +1 -0
- package/dist/store/utils/base-proxy-handler.d.ts +23 -0
- package/dist/store/utils/base-proxy-handler.d.ts.map +1 -0
- package/dist/store/utils/base-proxy-handler.js +46 -0
- package/dist/store/utils/base-proxy-handler.js.map +1 -0
- package/dist/store/utils/derived.d.ts +34 -0
- package/dist/store/utils/derived.d.ts.map +1 -0
- package/dist/store/utils/derived.js +24 -0
- package/dist/store/utils/derived.js.map +1 -0
- package/dist/store/utils/index.d.ts +7 -0
- package/dist/store/utils/index.d.ts.map +1 -0
- package/dist/store/utils/index.js +7 -0
- package/dist/store/utils/index.js.map +1 -0
- package/dist/store/utils/notification-manager.d.ts +11 -0
- package/dist/store/utils/notification-manager.d.ts.map +1 -0
- package/dist/store/utils/notification-manager.js +84 -0
- package/dist/store/utils/notification-manager.js.map +1 -0
- package/dist/store/utils/proxied-assistant-state.d.ts +8 -0
- package/dist/store/utils/proxied-assistant-state.d.ts.map +1 -0
- package/dist/store/utils/proxied-assistant-state.js +33 -0
- package/dist/store/utils/proxied-assistant-state.js.map +1 -0
- package/dist/store/utils/split-clients.d.ts +10 -0
- package/dist/store/utils/split-clients.d.ts.map +1 -0
- package/dist/store/utils/split-clients.js +53 -0
- package/dist/store/utils/split-clients.js.map +1 -0
- package/dist/store/utils/tap-assistant-context.d.ts +19 -0
- package/dist/store/utils/tap-assistant-context.d.ts.map +1 -0
- package/dist/store/utils/tap-assistant-context.js +23 -0
- package/dist/store/utils/tap-assistant-context.js.map +1 -0
- package/dist/store/utils/tap-client-list.d.ts +28 -0
- package/dist/store/utils/tap-client-list.d.ts.map +1 -0
- package/dist/store/utils/tap-client-list.js +68 -0
- package/dist/store/utils/tap-client-list.js.map +1 -0
- package/dist/store/utils/tap-client-lookup.d.ts +15 -0
- package/dist/store/utils/tap-client-lookup.d.ts.map +1 -0
- package/dist/store/utils/tap-client-lookup.js +42 -0
- package/dist/store/utils/tap-client-lookup.js.map +1 -0
- package/dist/store/utils/tap-client-resource.d.ts +13 -0
- package/dist/store/utils/tap-client-resource.d.ts.map +1 -0
- package/dist/store/utils/tap-client-resource.js +114 -0
- package/dist/store/utils/tap-client-resource.js.map +1 -0
- package/dist/store/utils/tap-client-stack-context.d.ts +23 -0
- package/dist/store/utils/tap-client-stack-context.d.ts.map +1 -0
- package/dist/store/utils/tap-client-stack-context.js +28 -0
- package/dist/store/utils/tap-client-stack-context.js.map +1 -0
- package/dist/store/utils/wrapper-resource.d.ts +3 -0
- package/dist/store/utils/wrapper-resource.d.ts.map +1 -0
- package/dist/store/utils/wrapper-resource.js +11 -0
- package/dist/store/utils/wrapper-resource.js.map +1 -0
- package/dist/subscribable/index.d.ts +3 -0
- package/dist/subscribable/index.d.ts.map +1 -0
- package/dist/subscribable/index.js +8 -0
- package/dist/subscribable/index.js.map +1 -0
- package/dist/subscribable/subscribable.d.ts +68 -0
- package/dist/subscribable/subscribable.d.ts.map +1 -0
- package/dist/subscribable/subscribable.js +237 -0
- package/dist/subscribable/subscribable.js.map +1 -0
- package/dist/types/attachment.d.ts +35 -0
- package/dist/types/attachment.d.ts.map +1 -0
- package/dist/types/attachment.js +2 -0
- package/dist/types/attachment.js.map +1 -0
- package/dist/types/index.d.ts +5 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +2 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/message.d.ts +179 -0
- package/dist/types/message.d.ts.map +1 -0
- package/dist/types/message.js +2 -0
- package/dist/types/message.js.map +1 -0
- package/dist/types/quote.d.ts +5 -0
- package/dist/types/quote.d.ts.map +1 -0
- package/dist/types/quote.js +2 -0
- package/dist/types/quote.js.map +1 -0
- package/dist/types/unsubscribe.d.ts +2 -0
- package/dist/types/unsubscribe.d.ts.map +1 -0
- package/dist/types/unsubscribe.js +2 -0
- package/dist/types/unsubscribe.js.map +1 -0
- package/dist/utils/composite-context-provider.d.ts +10 -0
- package/dist/utils/composite-context-provider.d.ts.map +1 -0
- package/dist/utils/composite-context-provider.js +29 -0
- package/dist/utils/composite-context-provider.js.map +1 -0
- package/dist/utils/id.d.ts +6 -0
- package/dist/utils/id.d.ts.map +1 -0
- package/dist/utils/id.js +9 -0
- package/dist/utils/id.js.map +1 -0
- package/dist/utils/index.d.ts +4 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +7 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/text.d.ts +3 -0
- package/dist/utils/text.d.ts.map +1 -0
- package/dist/utils/text.js +5 -0
- package/dist/utils/text.js.map +1 -0
- package/package.json +85 -0
- package/src/adapters/attachment.ts +209 -0
- package/src/adapters/feedback.ts +10 -0
- package/src/adapters/index.ts +30 -0
- package/src/adapters/speech.ts +338 -0
- package/src/adapters/suggestion.ts +14 -0
- package/src/adapters/thread-history.ts +72 -0
- package/src/index.ts +7 -0
- package/src/internal.ts +7 -0
- package/src/model-context/frame/host.ts +195 -0
- package/src/model-context/frame/index.ts +10 -0
- package/src/model-context/frame/provider.ts +193 -0
- package/src/model-context/frame/types.ts +40 -0
- package/src/model-context/index.ts +35 -0
- package/src/model-context/registry-handles.ts +18 -0
- package/src/model-context/registry.ts +159 -0
- package/src/model-context/tool.ts +9 -0
- package/src/model-context/types.ts +104 -0
- package/src/runtime/api/assistant-runtime.ts +115 -0
- package/src/runtime/api/attachment-runtime.ts +119 -0
- package/src/runtime/api/bindings.ts +49 -0
- package/src/runtime/api/composer-runtime.ts +505 -0
- package/src/runtime/api/message-part-runtime.ts +108 -0
- package/src/runtime/api/message-runtime.ts +335 -0
- package/src/runtime/api/paths.ts +61 -0
- package/src/runtime/api/thread-list-item-runtime.ts +145 -0
- package/src/runtime/api/thread-list-runtime.ts +227 -0
- package/src/runtime/api/thread-runtime.ts +568 -0
- package/src/runtime/base/base-assistant-runtime-core.ts +20 -0
- package/src/runtime/base/base-composer-runtime-core.ts +418 -0
- package/src/runtime/base/base-thread-runtime-core.ts +234 -0
- package/src/runtime/base/default-edit-composer-runtime-core.ts +71 -0
- package/src/runtime/base/default-thread-composer-runtime-core.ts +65 -0
- package/src/runtime/index.ts +108 -0
- package/src/runtime/interfaces/assistant-runtime-core.ts +12 -0
- package/src/runtime/interfaces/composer-runtime-core.ts +64 -0
- package/src/runtime/interfaces/thread-list-runtime-core.ts +49 -0
- package/src/runtime/interfaces/thread-runtime-core.ts +142 -0
- package/src/runtime/internal.ts +64 -0
- package/src/runtime/utils/auto-status.ts +67 -0
- package/src/runtime/utils/chat-model-adapter.ts +66 -0
- package/src/runtime/utils/external-store-message.ts +37 -0
- package/src/runtime/utils/message-repository.ts +390 -0
- package/src/runtime/utils/thread-message-like.ts +225 -0
- package/src/runtimes/assistant-transport/utils.ts +37 -0
- package/src/runtimes/external-store/external-store-adapter.ts +111 -0
- package/src/runtimes/external-store/external-store-runtime-core.ts +26 -0
- package/src/runtimes/external-store/external-store-thread-list-runtime-core.ts +235 -0
- package/src/runtimes/external-store/external-store-thread-runtime-core.ts +368 -0
- package/src/runtimes/external-store/index.ts +15 -0
- package/src/runtimes/external-store/thread-message-converter.ts +23 -0
- package/src/runtimes/index.ts +28 -0
- package/src/runtimes/internal.ts +36 -0
- package/src/runtimes/local/index.ts +6 -0
- package/src/runtimes/local/local-runtime-core.ts +32 -0
- package/src/runtimes/local/local-runtime-options.ts +27 -0
- package/src/runtimes/local/local-thread-list-runtime-core.ts +116 -0
- package/src/runtimes/local/local-thread-runtime-core.ts +534 -0
- package/src/runtimes/local/should-continue.ts +26 -0
- package/src/runtimes/remote-thread-list/adapter/in-memory.ts +43 -0
- package/src/runtimes/remote-thread-list/empty-thread-core.ts +200 -0
- package/src/runtimes/remote-thread-list/optimistic-state.ts +89 -0
- package/src/runtimes/remote-thread-list/remote-thread-state.ts +123 -0
- package/src/runtimes/remote-thread-list/types.ts +48 -0
- package/src/store/clients/chain-of-thought-client.ts +40 -0
- package/src/store/clients/index.ts +8 -0
- package/src/store/clients/model-context-client.ts +20 -0
- package/src/store/clients/no-op-composer-client.ts +66 -0
- package/src/store/clients/suggestions.ts +69 -0
- package/src/store/clients/thread-message-client.ts +170 -0
- package/src/store/index.ts +44 -0
- package/src/store/internal.ts +32 -0
- package/src/store/runtime-clients/attachment-runtime-client.ts +16 -0
- package/src/store/runtime-clients/composer-runtime-client.ts +131 -0
- package/src/store/runtime-clients/index.ts +7 -0
- package/src/store/runtime-clients/message-part-runtime-client.ts +17 -0
- package/src/store/runtime-clients/message-runtime-client.ts +141 -0
- package/src/store/runtime-clients/tap-subscribable.ts +16 -0
- package/src/store/runtime-clients/thread-list-item-runtime-client.ts +53 -0
- package/src/store/runtime-clients/thread-list-runtime-client.ts +86 -0
- package/src/store/runtime-clients/thread-runtime-client.ts +141 -0
- package/src/store/scopes/attachment.ts +20 -0
- package/src/store/scopes/chain-of-thought.ts +38 -0
- package/src/store/scopes/composer.ts +80 -0
- package/src/store/scopes/index.ts +68 -0
- package/src/store/scopes/message.ts +75 -0
- package/src/store/scopes/model-context.ts +13 -0
- package/src/store/scopes/part.ts +47 -0
- package/src/store/scopes/suggestion.ts +19 -0
- package/src/store/scopes/suggestions.ts +20 -0
- package/src/store/scopes/thread-list-item.ts +44 -0
- package/src/store/scopes/thread.ts +135 -0
- package/src/store/scopes/threads.ts +34 -0
- package/src/store/types/client.ts +203 -0
- package/src/store/types/events.ts +77 -0
- package/src/store/types/index.ts +23 -0
- package/src/store/utils/attach-transform-scopes.ts +38 -0
- package/src/store/utils/base-proxy-handler.ts +50 -0
- package/src/store/utils/derived.ts +46 -0
- package/src/store/utils/index.ts +28 -0
- package/src/store/utils/notification-manager.ts +114 -0
- package/src/store/utils/proxied-assistant-state.ts +55 -0
- package/src/store/utils/split-clients.ts +82 -0
- package/src/store/utils/tap-assistant-context.ts +58 -0
- package/src/store/utils/tap-client-list.ts +121 -0
- package/src/store/utils/tap-client-lookup.ts +79 -0
- package/src/store/utils/tap-client-resource.ts +187 -0
- package/src/store/utils/tap-client-stack-context.ts +51 -0
- package/src/store/utils/wrapper-resource.ts +17 -0
- package/src/subscribable/index.ts +21 -0
- package/src/subscribable/subscribable.ts +317 -0
- package/src/tests/BaseSubscribable.test.ts +54 -0
- package/src/tests/MessageRepository.test.ts +607 -0
- package/src/tests/OptimisticState-delete-crash.test.ts +206 -0
- package/src/types/attachment.ts +45 -0
- package/src/types/index.ts +39 -0
- package/src/types/message.ts +248 -0
- package/src/types/quote.ts +4 -0
- package/src/types/unsubscribe.ts +1 -0
- package/src/utils/composite-context-provider.ts +36 -0
- package/src/utils/id.ts +14 -0
- package/src/utils/index.ts +14 -0
- package/src/utils/text.ts +11 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { ModelContextProvider, ModelContext } from "../types.js";
|
|
2
|
+
import type { Unsubscribe } from "../../types/index.js";
|
|
3
|
+
export declare class AssistantFrameHost implements ModelContextProvider {
|
|
4
|
+
private _context;
|
|
5
|
+
private _subscribers;
|
|
6
|
+
private _pendingRequests;
|
|
7
|
+
private _requestCounter;
|
|
8
|
+
private _iframeWindow;
|
|
9
|
+
private _targetOrigin;
|
|
10
|
+
constructor(iframeWindow: Window, targetOrigin?: string);
|
|
11
|
+
private handleMessage;
|
|
12
|
+
private updateContext;
|
|
13
|
+
private callTool;
|
|
14
|
+
private sendRequest;
|
|
15
|
+
private requestContext;
|
|
16
|
+
private notifySubscribers;
|
|
17
|
+
getModelContext(): ModelContext;
|
|
18
|
+
subscribe(callback: () => void): Unsubscribe;
|
|
19
|
+
dispose(): void;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=host.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../../src/model-context/frame/host.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,oBAAiB;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,6BAAoB;AAyC/C,qBAAa,kBAAmB,YAAW,oBAAoB;IAC7D,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,YAAY,CAAyB;IAC7C,OAAO,CAAC,gBAAgB,CAMpB;IACJ,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,aAAa,CAAS;gBAElB,YAAY,EAAE,MAAM,EAAE,YAAY,GAAE,MAAY;IAU5D,OAAO,CAAC,aAAa;IA6BrB,OAAO,CAAC,aAAa;IAmBrB,OAAO,CAAC,QAAQ;IAahB,OAAO,CAAC,WAAW;IAqCnB,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,iBAAiB;IAIzB,eAAe,IAAI,YAAY;IAI/B,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,WAAW;IAK5C,OAAO;CAKR"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { FRAME_MESSAGE_CHANNEL, } from "./types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Deserializes tools from JSON Schema format back to Tool objects
|
|
4
|
+
*/
|
|
5
|
+
const deserializeTool = (serializedTool) => ({
|
|
6
|
+
parameters: serializedTool.parameters,
|
|
7
|
+
...(serializedTool.description && {
|
|
8
|
+
description: serializedTool.description,
|
|
9
|
+
}),
|
|
10
|
+
...(serializedTool.disabled !== undefined && {
|
|
11
|
+
disabled: serializedTool.disabled,
|
|
12
|
+
}),
|
|
13
|
+
...(serializedTool.type && { type: serializedTool.type }),
|
|
14
|
+
});
|
|
15
|
+
/**
|
|
16
|
+
* Deserializes a ModelContext from transmission format
|
|
17
|
+
*/
|
|
18
|
+
const deserializeModelContext = (serialized) => ({
|
|
19
|
+
...(serialized.system !== undefined && { system: serialized.system }),
|
|
20
|
+
...(serialized.tools && {
|
|
21
|
+
tools: Object.fromEntries(Object.entries(serialized.tools).map(([name, tool]) => [
|
|
22
|
+
name,
|
|
23
|
+
deserializeTool(tool),
|
|
24
|
+
])),
|
|
25
|
+
}),
|
|
26
|
+
});
|
|
27
|
+
export class AssistantFrameHost {
|
|
28
|
+
_context = {};
|
|
29
|
+
_subscribers = new Set();
|
|
30
|
+
_pendingRequests = new Map();
|
|
31
|
+
_requestCounter = 0;
|
|
32
|
+
_iframeWindow;
|
|
33
|
+
_targetOrigin;
|
|
34
|
+
constructor(iframeWindow, targetOrigin = "*") {
|
|
35
|
+
this._iframeWindow = iframeWindow;
|
|
36
|
+
this._targetOrigin = targetOrigin;
|
|
37
|
+
this.handleMessage = this.handleMessage.bind(this);
|
|
38
|
+
window.addEventListener("message", this.handleMessage);
|
|
39
|
+
this.requestContext();
|
|
40
|
+
}
|
|
41
|
+
handleMessage(event) {
|
|
42
|
+
if (this._targetOrigin !== "*" && event.origin !== this._targetOrigin)
|
|
43
|
+
return;
|
|
44
|
+
if (event.source !== this._iframeWindow)
|
|
45
|
+
return;
|
|
46
|
+
if (event.data?.channel !== FRAME_MESSAGE_CHANNEL)
|
|
47
|
+
return;
|
|
48
|
+
const message = event.data.message;
|
|
49
|
+
switch (message.type) {
|
|
50
|
+
case "model-context-update": {
|
|
51
|
+
this.updateContext(message.context);
|
|
52
|
+
break;
|
|
53
|
+
}
|
|
54
|
+
case "tool-result": {
|
|
55
|
+
const pending = this._pendingRequests.get(message.id);
|
|
56
|
+
if (pending) {
|
|
57
|
+
if (message.error) {
|
|
58
|
+
pending.reject(new Error(message.error));
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
pending.resolve(message.result);
|
|
62
|
+
}
|
|
63
|
+
this._pendingRequests.delete(message.id);
|
|
64
|
+
}
|
|
65
|
+
break;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
updateContext(serializedContext) {
|
|
70
|
+
const context = deserializeModelContext(serializedContext);
|
|
71
|
+
this._context = {
|
|
72
|
+
...context,
|
|
73
|
+
tools: context.tools &&
|
|
74
|
+
Object.fromEntries(Object.entries(context.tools).map(([name, tool]) => [
|
|
75
|
+
name,
|
|
76
|
+
{
|
|
77
|
+
...tool,
|
|
78
|
+
execute: (args) => this.callTool(name, args),
|
|
79
|
+
},
|
|
80
|
+
])),
|
|
81
|
+
};
|
|
82
|
+
this.notifySubscribers();
|
|
83
|
+
}
|
|
84
|
+
callTool(toolName, args) {
|
|
85
|
+
return this.sendRequest({
|
|
86
|
+
type: "tool-call",
|
|
87
|
+
id: `tool-${this._requestCounter++}`,
|
|
88
|
+
toolName,
|
|
89
|
+
args,
|
|
90
|
+
}, 30000, `Tool call "${toolName}" timed out`);
|
|
91
|
+
}
|
|
92
|
+
sendRequest(message, timeout = 30000, timeoutMessage = "Request timed out") {
|
|
93
|
+
return new Promise((resolve, reject) => {
|
|
94
|
+
this._pendingRequests.set(message.id, { resolve, reject });
|
|
95
|
+
this._iframeWindow.postMessage({ channel: FRAME_MESSAGE_CHANNEL, message }, this._targetOrigin);
|
|
96
|
+
const timeoutId = setTimeout(() => {
|
|
97
|
+
const pending = this._pendingRequests.get(message.id);
|
|
98
|
+
if (pending) {
|
|
99
|
+
pending.reject(new Error(timeoutMessage));
|
|
100
|
+
this._pendingRequests.delete(message.id);
|
|
101
|
+
}
|
|
102
|
+
}, timeout);
|
|
103
|
+
const originalResolve = this._pendingRequests.get(message.id).resolve;
|
|
104
|
+
const originalReject = this._pendingRequests.get(message.id).reject;
|
|
105
|
+
this._pendingRequests.set(message.id, {
|
|
106
|
+
resolve: (value) => {
|
|
107
|
+
clearTimeout(timeoutId);
|
|
108
|
+
originalResolve(value);
|
|
109
|
+
},
|
|
110
|
+
reject: (error) => {
|
|
111
|
+
clearTimeout(timeoutId);
|
|
112
|
+
originalReject(error);
|
|
113
|
+
},
|
|
114
|
+
});
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
requestContext() {
|
|
118
|
+
this._iframeWindow.postMessage({
|
|
119
|
+
channel: FRAME_MESSAGE_CHANNEL,
|
|
120
|
+
message: {
|
|
121
|
+
type: "model-context-request",
|
|
122
|
+
},
|
|
123
|
+
}, this._targetOrigin);
|
|
124
|
+
}
|
|
125
|
+
notifySubscribers() {
|
|
126
|
+
this._subscribers.forEach((callback) => callback());
|
|
127
|
+
}
|
|
128
|
+
getModelContext() {
|
|
129
|
+
return this._context;
|
|
130
|
+
}
|
|
131
|
+
subscribe(callback) {
|
|
132
|
+
this._subscribers.add(callback);
|
|
133
|
+
return () => this._subscribers.delete(callback);
|
|
134
|
+
}
|
|
135
|
+
dispose() {
|
|
136
|
+
window.removeEventListener("message", this.handleMessage);
|
|
137
|
+
this._subscribers.clear();
|
|
138
|
+
this._pendingRequests.clear();
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
//# sourceMappingURL=host.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"host.js","sourceRoot":"","sources":["../../../src/model-context/frame/host.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { AssistantFrameHost } from "./host.js";
|
|
2
|
+
export { AssistantFrameProvider } from "./provider.js";
|
|
3
|
+
export type { SerializedTool, SerializedModelContext, FrameMessageType, FrameMessage, } from "./types.js";
|
|
4
|
+
export { FRAME_MESSAGE_CHANNEL } from "./types.js";
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/model-context/frame/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,kBAAe;AAC5C,OAAO,EAAE,sBAAsB,EAAE,sBAAmB;AAEpD,YAAY,EACV,cAAc,EACd,sBAAsB,EACtB,gBAAgB,EAChB,YAAY,GACb,mBAAgB;AACjB,OAAO,EAAE,qBAAqB,EAAE,mBAAgB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/model-context/frame/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,kBAAe;AAC5C,OAAO,EAAE,sBAAsB,EAAE,sBAAmB;AAQpD,OAAO,EAAE,qBAAqB,EAAE,mBAAgB"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ModelContextProvider } from "../types.js";
|
|
2
|
+
import type { Unsubscribe } from "../../types/index.js";
|
|
3
|
+
export declare class AssistantFrameProvider {
|
|
4
|
+
private static _instance;
|
|
5
|
+
private _providers;
|
|
6
|
+
private _providerUnsubscribes;
|
|
7
|
+
private _targetOrigin;
|
|
8
|
+
private constructor();
|
|
9
|
+
private static getInstance;
|
|
10
|
+
private handleMessage;
|
|
11
|
+
private handleToolCall;
|
|
12
|
+
private sendMessage;
|
|
13
|
+
private getModelContext;
|
|
14
|
+
private broadcastUpdate;
|
|
15
|
+
static addModelContextProvider(provider: ModelContextProvider, targetOrigin?: string): Unsubscribe;
|
|
16
|
+
static dispose(): void;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/model-context/frame/provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAgB,oBAAiB;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,6BAAoB;AAkC/C,qBAAa,sBAAsB;IACjC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAuC;IAE/D,OAAO,CAAC,UAAU,CAAmC;IACrD,OAAO,CAAC,qBAAqB,CAGzB;IACJ,OAAO,CAAC,aAAa,CAAS;IAE9B,OAAO;IAQP,OAAO,CAAC,MAAM,CAAC,WAAW;IAS1B,OAAO,CAAC,aAAa;YAqBP,cAAc;IAoC5B,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,eAAe;IAkBvB,OAAO,CAAC,eAAe;IAcvB,MAAM,CAAC,uBAAuB,CAC5B,QAAQ,EAAE,oBAAoB,EAC9B,YAAY,CAAC,EAAE,MAAM,GACpB,WAAW;IAmBd,MAAM,CAAC,OAAO;CAYf"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { FRAME_MESSAGE_CHANNEL, } from "./types.js";
|
|
3
|
+
const serializeTool = (tool) => ({
|
|
4
|
+
...(tool.description && { description: tool.description }),
|
|
5
|
+
parameters: tool.parameters instanceof z.ZodType
|
|
6
|
+
? (z.toJSONSchema?.(tool.parameters) ?? tool.parameters)
|
|
7
|
+
: tool.parameters,
|
|
8
|
+
...(tool.disabled !== undefined && { disabled: tool.disabled }),
|
|
9
|
+
...(tool.type && { type: tool.type }),
|
|
10
|
+
});
|
|
11
|
+
const serializeModelContext = (context) => ({
|
|
12
|
+
...(context.system !== undefined && { system: context.system }),
|
|
13
|
+
...(context.tools && {
|
|
14
|
+
tools: Object.fromEntries(Object.entries(context.tools).map(([name, tool]) => [
|
|
15
|
+
name,
|
|
16
|
+
serializeTool(tool),
|
|
17
|
+
])),
|
|
18
|
+
}),
|
|
19
|
+
});
|
|
20
|
+
export class AssistantFrameProvider {
|
|
21
|
+
static _instance = null;
|
|
22
|
+
_providers = new Set();
|
|
23
|
+
_providerUnsubscribes = new Map();
|
|
24
|
+
_targetOrigin;
|
|
25
|
+
constructor(targetOrigin = "*") {
|
|
26
|
+
this._targetOrigin = targetOrigin;
|
|
27
|
+
this.handleMessage = this.handleMessage.bind(this);
|
|
28
|
+
window.addEventListener("message", this.handleMessage);
|
|
29
|
+
setTimeout(() => this.broadcastUpdate(), 0);
|
|
30
|
+
}
|
|
31
|
+
static getInstance(targetOrigin) {
|
|
32
|
+
if (!AssistantFrameProvider._instance) {
|
|
33
|
+
AssistantFrameProvider._instance = new AssistantFrameProvider(targetOrigin);
|
|
34
|
+
}
|
|
35
|
+
return AssistantFrameProvider._instance;
|
|
36
|
+
}
|
|
37
|
+
handleMessage(event) {
|
|
38
|
+
if (this._targetOrigin !== "*" && event.origin !== this._targetOrigin)
|
|
39
|
+
return;
|
|
40
|
+
if (event.data?.channel !== FRAME_MESSAGE_CHANNEL)
|
|
41
|
+
return;
|
|
42
|
+
const message = event.data.message;
|
|
43
|
+
switch (message.type) {
|
|
44
|
+
case "model-context-request":
|
|
45
|
+
this.sendMessage(event, {
|
|
46
|
+
type: "model-context-update",
|
|
47
|
+
context: serializeModelContext(this.getModelContext()),
|
|
48
|
+
});
|
|
49
|
+
break;
|
|
50
|
+
case "tool-call":
|
|
51
|
+
this.handleToolCall(message, event);
|
|
52
|
+
break;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
async handleToolCall(message, event) {
|
|
56
|
+
const tool = this.getModelContext().tools?.[message.toolName];
|
|
57
|
+
let result;
|
|
58
|
+
let error;
|
|
59
|
+
if (!tool) {
|
|
60
|
+
error = `Tool "${message.toolName}" not found`;
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
try {
|
|
64
|
+
result = tool.execute
|
|
65
|
+
? await tool.execute(message.args, {
|
|
66
|
+
toolCallId: message.id,
|
|
67
|
+
abortSignal: new AbortController().signal,
|
|
68
|
+
human: async () => {
|
|
69
|
+
throw new Error("Tool human input is not supported in frame context");
|
|
70
|
+
},
|
|
71
|
+
})
|
|
72
|
+
: undefined;
|
|
73
|
+
}
|
|
74
|
+
catch (e) {
|
|
75
|
+
error = e instanceof Error ? e.message : String(e);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
this.sendMessage(event, {
|
|
79
|
+
type: "tool-result",
|
|
80
|
+
id: message.id,
|
|
81
|
+
...(error ? { error } : { result }),
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
sendMessage(event, message) {
|
|
85
|
+
event.source?.postMessage({ channel: FRAME_MESSAGE_CHANNEL, message }, { targetOrigin: event.origin });
|
|
86
|
+
}
|
|
87
|
+
getModelContext() {
|
|
88
|
+
const contexts = Array.from(this._providers).map((p) => p.getModelContext());
|
|
89
|
+
return contexts.reduce((merged, context) => ({
|
|
90
|
+
system: context.system
|
|
91
|
+
? merged.system
|
|
92
|
+
? `${merged.system}\n\n${context.system}`
|
|
93
|
+
: context.system
|
|
94
|
+
: merged.system,
|
|
95
|
+
tools: { ...(merged.tools || {}), ...(context.tools || {}) },
|
|
96
|
+
}), {});
|
|
97
|
+
}
|
|
98
|
+
broadcastUpdate() {
|
|
99
|
+
if (window.parent && window.parent !== window) {
|
|
100
|
+
const updateMessage = {
|
|
101
|
+
type: "model-context-update",
|
|
102
|
+
context: serializeModelContext(this.getModelContext()),
|
|
103
|
+
};
|
|
104
|
+
window.parent.postMessage({ channel: FRAME_MESSAGE_CHANNEL, message: updateMessage }, this._targetOrigin);
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
static addModelContextProvider(provider, targetOrigin) {
|
|
108
|
+
const instance = AssistantFrameProvider.getInstance(targetOrigin);
|
|
109
|
+
instance._providers.add(provider);
|
|
110
|
+
const unsubscribe = provider.subscribe?.(() => instance.broadcastUpdate());
|
|
111
|
+
if (unsubscribe) {
|
|
112
|
+
instance._providerUnsubscribes.set(provider, unsubscribe);
|
|
113
|
+
}
|
|
114
|
+
instance.broadcastUpdate();
|
|
115
|
+
return () => {
|
|
116
|
+
instance._providers.delete(provider);
|
|
117
|
+
instance._providerUnsubscribes.get(provider)?.();
|
|
118
|
+
instance._providerUnsubscribes.delete(provider);
|
|
119
|
+
instance.broadcastUpdate();
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
static dispose() {
|
|
123
|
+
if (AssistantFrameProvider._instance) {
|
|
124
|
+
const instance = AssistantFrameProvider._instance;
|
|
125
|
+
window.removeEventListener("message", instance.handleMessage);
|
|
126
|
+
instance._providerUnsubscribes.forEach((unsubscribe) => unsubscribe?.());
|
|
127
|
+
instance._providerUnsubscribes.clear();
|
|
128
|
+
instance._providers.clear();
|
|
129
|
+
AssistantFrameProvider._instance = null;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
//# sourceMappingURL=provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/model-context/frame/provider.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAEL,qBAAqB,GAGtB,mBAAgB;AAEjB,MAAM,aAAa,GAAG,CAAC,IAAoB,EAAkB,EAAE,CAAC,CAAC;IAC/D,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;IAC1D,UAAU,EACR,IAAI,CAAC,UAAU,YAAY,CAAC,CAAC,OAAO;QAClC,CAAC,CAAC,CAAE,CAAS,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC;QACjE,CAAC,CAAC,IAAI,CAAC,UAAU;IACrB,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC/D,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;CACtC,CAAC,CAAC;AAEH,MAAM,qBAAqB,GAAG,CAC5B,OAAqB,EACG,EAAE,CAAC,CAAC;IAC5B,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;IAC/D,GAAG,CAAC,OAAO,CAAC,KAAK,IAAI;QACnB,KAAK,EAAE,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC;YAClD,IAAI;YACJ,aAAa,CAAC,IAAI,CAAC;SACpB,CAAC,CACH;KACF,CAAC;CACH,CAAC,CAAC;AAEH,MAAM,OAAO,sBAAsB;IACzB,MAAM,CAAC,SAAS,GAAkC,IAAI,CAAC;IAEvD,UAAU,GAAG,IAAI,GAAG,EAAwB,CAAC;IAC7C,qBAAqB,GAAG,IAAI,GAAG,EAGpC,CAAC;IACI,aAAa,CAAS;IAE9B,YAAoB,eAAuB,GAAG;QAC5C,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAClC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnD,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAEvD,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC;IAC9C,CAAC;IAEO,MAAM,CAAC,WAAW,CAAC,YAAqB;QAC9C,IAAI,CAAC,sBAAsB,CAAC,SAAS,EAAE,CAAC;YACtC,sBAAsB,CAAC,SAAS,GAAG,IAAI,sBAAsB,CAC3D,YAAY,CACb,CAAC;QACJ,CAAC;QACD,OAAO,sBAAsB,CAAC,SAAS,CAAC;IAC1C,CAAC;IAEO,aAAa,CAAC,KAAmB;QACvC,IAAI,IAAI,CAAC,aAAa,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,aAAa;YACnE,OAAO;QACT,IAAI,KAAK,CAAC,IAAI,EAAE,OAAO,KAAK,qBAAqB;YAAE,OAAO;QAE1D,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,OAAuB,CAAC;QAEnD,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;YACrB,KAAK,uBAAuB;gBAC1B,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE;oBACtB,IAAI,EAAE,sBAAsB;oBAC5B,OAAO,EAAE,qBAAqB,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;iBACvD,CAAC,CAAC;gBACH,MAAM;YAER,KAAK,WAAW;gBACd,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBACpC,MAAM;QACV,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,cAAc,CAC1B,OAAqD,EACrD,KAAmB;QAEnB,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAE9D,IAAI,MAAW,CAAC;QAChB,IAAI,KAAyB,CAAC;QAE9B,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,KAAK,GAAG,SAAS,OAAO,CAAC,QAAQ,aAAa,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC;gBACH,MAAM,GAAG,IAAI,CAAC,OAAO;oBACnB,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE;wBAC/B,UAAU,EAAE,OAAO,CAAC,EAAE;wBACtB,WAAW,EAAE,IAAI,eAAe,EAAE,CAAC,MAAM;wBACzC,KAAK,EAAE,KAAK,IAAI,EAAE;4BAChB,MAAM,IAAI,KAAK,CACb,oDAAoD,CACrD,CAAC;wBACJ,CAAC;qBACF,CAAC;oBACJ,CAAC,CAAC,SAAS,CAAC;YAChB,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,KAAK,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE;YACtB,IAAI,EAAE,aAAa;YACnB,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;SACpC,CAAC,CAAC;IACL,CAAC;IAEO,WAAW,CAAC,KAAmB,EAAE,OAAqB;QAC5D,KAAK,CAAC,MAAM,EAAE,WAAW,CACvB,EAAE,OAAO,EAAE,qBAAqB,EAAE,OAAO,EAAE,EAC3C,EAAE,YAAY,EAAE,KAAK,CAAC,MAAM,EAAE,CAC/B,CAAC;IACJ,CAAC;IAEO,eAAe;QACrB,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACrD,CAAC,CAAC,eAAe,EAAE,CACpB,CAAC;QAEF,OAAO,QAAQ,CAAC,MAAM,CACpB,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACpB,CAAC,CAAC,MAAM,CAAC,MAAM;oBACb,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,OAAO,OAAO,CAAC,MAAM,EAAE;oBACzC,CAAC,CAAC,OAAO,CAAC,MAAM;gBAClB,CAAC,CAAC,MAAM,CAAC,MAAM;YACjB,KAAK,EAAE,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE;SAC7D,CAAC,EACF,EAAkB,CACnB,CAAC;IACJ,CAAC;IAEO,eAAe;QACrB,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC9C,MAAM,aAAa,GAAiB;gBAClC,IAAI,EAAE,sBAAsB;gBAC5B,OAAO,EAAE,qBAAqB,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;aACvD,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,WAAW,CACvB,EAAE,OAAO,EAAE,qBAAqB,EAAE,OAAO,EAAE,aAAa,EAAE,EAC1D,IAAI,CAAC,aAAa,CACnB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,CAAC,uBAAuB,CAC5B,QAA8B,EAC9B,YAAqB;QAErB,MAAM,QAAQ,GAAG,sBAAsB,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAClE,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAElC,MAAM,WAAW,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,CAAC;QAC3E,IAAI,WAAW,EAAE,CAAC;YAChB,QAAQ,CAAC,qBAAqB,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAC5D,CAAC;QAED,QAAQ,CAAC,eAAe,EAAE,CAAC;QAE3B,OAAO,GAAG,EAAE;YACV,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACrC,QAAQ,CAAC,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjD,QAAQ,CAAC,qBAAqB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAChD,QAAQ,CAAC,eAAe,EAAE,CAAC;QAC7B,CAAC,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,OAAO;QACZ,IAAI,sBAAsB,CAAC,SAAS,EAAE,CAAC;YACrC,MAAM,QAAQ,GAAG,sBAAsB,CAAC,SAAS,CAAC;YAClD,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;YAE9D,QAAQ,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YACzE,QAAQ,CAAC,qBAAqB,CAAC,KAAK,EAAE,CAAC;YACvC,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YAE5B,sBAAsB,CAAC,SAAS,GAAG,IAAI,CAAC;QAC1C,CAAC;IACH,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export type SerializedTool = {
|
|
2
|
+
description?: string;
|
|
3
|
+
parameters: any;
|
|
4
|
+
disabled?: boolean;
|
|
5
|
+
type?: string;
|
|
6
|
+
};
|
|
7
|
+
export type SerializedModelContext = {
|
|
8
|
+
system?: string;
|
|
9
|
+
tools?: Record<string, SerializedTool>;
|
|
10
|
+
};
|
|
11
|
+
export type FrameMessageType = "model-context-request" | "model-context-update" | "tool-call" | "tool-result";
|
|
12
|
+
export type FrameMessage = {
|
|
13
|
+
type: "model-context-request";
|
|
14
|
+
} | {
|
|
15
|
+
type: "model-context-update";
|
|
16
|
+
context: SerializedModelContext;
|
|
17
|
+
} | {
|
|
18
|
+
type: "tool-call";
|
|
19
|
+
id: string;
|
|
20
|
+
toolName: string;
|
|
21
|
+
args: unknown;
|
|
22
|
+
} | {
|
|
23
|
+
type: "tool-result";
|
|
24
|
+
id: string;
|
|
25
|
+
result?: unknown;
|
|
26
|
+
error?: string;
|
|
27
|
+
};
|
|
28
|
+
export declare const FRAME_MESSAGE_CHANNEL = "assistant-ui-frame";
|
|
29
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/model-context/frame/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,GAAG,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GACxB,uBAAuB,GACvB,sBAAsB,GACtB,WAAW,GACX,aAAa,CAAC;AAElB,MAAM,MAAM,YAAY,GACpB;IACE,IAAI,EAAE,uBAAuB,CAAC;CAC/B,GACD;IACE,IAAI,EAAE,sBAAsB,CAAC;IAC7B,OAAO,EAAE,sBAAsB,CAAC;CACjC,GACD;IACE,IAAI,EAAE,WAAW,CAAC;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;CACf,GACD;IACE,IAAI,EAAE,aAAa,CAAC;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEN,eAAO,MAAM,qBAAqB,uBAAuB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/model-context/frame/types.ts"],"names":[],"mappings":"AAuCA,MAAM,CAAC,MAAM,qBAAqB,GAAG,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export type { LanguageModelV1CallSettings, LanguageModelConfig, ModelContext, ModelContextProvider, AssistantToolProps, AssistantInstructionsConfig, } from "./types.js";
|
|
2
|
+
export { mergeModelContexts } from "./types.js";
|
|
3
|
+
export { tool } from "./tool.js";
|
|
4
|
+
export { ModelContextRegistry } from "./registry.js";
|
|
5
|
+
export type { ModelContextRegistryToolHandle, ModelContextRegistryInstructionHandle, ModelContextRegistryProviderHandle, } from "./registry-handles.js";
|
|
6
|
+
export { AssistantFrameHost, AssistantFrameProvider, FRAME_MESSAGE_CHANNEL, } from "./frame/index.js";
|
|
7
|
+
export type { SerializedTool, SerializedModelContext, FrameMessageType, FrameMessage, } from "./frame/index.js";
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/model-context/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAEV,2BAA2B,EAC3B,mBAAmB,EAEnB,YAAY,EACZ,oBAAoB,EAEpB,kBAAkB,EAClB,2BAA2B,GAC5B,mBAAgB;AACjB,OAAO,EAAE,kBAAkB,EAAE,mBAAgB;AAE7C,OAAO,EAAE,IAAI,EAAE,kBAAe;AAE9B,OAAO,EAAE,oBAAoB,EAAE,sBAAmB;AAClD,YAAY,EACV,8BAA8B,EAC9B,qCAAqC,EACrC,kCAAkC,GACnC,8BAA2B;AAE5B,OAAO,EAEL,kBAAkB,EAClB,sBAAsB,EAEtB,qBAAqB,GACtB,yBAAgB;AACjB,YAAY,EACV,cAAc,EACd,sBAAsB,EACtB,gBAAgB,EAChB,YAAY,GACb,yBAAgB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export { mergeModelContexts } from "./types.js";
|
|
2
|
+
export { tool } from "./tool.js";
|
|
3
|
+
export { ModelContextRegistry } from "./registry.js";
|
|
4
|
+
export {
|
|
5
|
+
// Classes
|
|
6
|
+
AssistantFrameHost, AssistantFrameProvider,
|
|
7
|
+
// Constants
|
|
8
|
+
FRAME_MESSAGE_CHANNEL, } from "./frame/index.js";
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/model-context/index.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,kBAAkB,EAAE,mBAAgB;AAE7C,OAAO,EAAE,IAAI,EAAE,kBAAe;AAE9B,OAAO,EAAE,oBAAoB,EAAE,sBAAmB;AAOlD,OAAO;AACL,UAAU;AACV,kBAAkB,EAClB,sBAAsB;AACtB,YAAY;AACZ,qBAAqB,GACtB,yBAAgB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { AssistantToolProps, AssistantInstructionsConfig } from "./types.js";
|
|
2
|
+
export interface ModelContextRegistryToolHandle<TArgs extends Record<string, unknown> = any, TResult = any> {
|
|
3
|
+
update(tool: AssistantToolProps<TArgs, TResult>): void;
|
|
4
|
+
remove(): void;
|
|
5
|
+
}
|
|
6
|
+
export interface ModelContextRegistryInstructionHandle {
|
|
7
|
+
update(config: string | AssistantInstructionsConfig): void;
|
|
8
|
+
remove(): void;
|
|
9
|
+
}
|
|
10
|
+
export interface ModelContextRegistryProviderHandle {
|
|
11
|
+
remove(): void;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=registry-handles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry-handles.d.ts","sourceRoot":"","sources":["../../src/model-context/registry-handles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,mBAAgB;AAE/E,MAAM,WAAW,8BAA8B,CAC7C,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,GAAG,EAC3C,OAAO,GAAG,GAAG;IAEb,MAAM,CAAC,IAAI,EAAE,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACvD,MAAM,IAAI,IAAI,CAAC;CAChB;AAED,MAAM,WAAW,qCAAqC;IACpD,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,2BAA2B,GAAG,IAAI,CAAC;IAC3D,MAAM,IAAI,IAAI,CAAC;CAChB;AAED,MAAM,WAAW,kCAAkC;IACjD,MAAM,IAAI,IAAI,CAAC;CAChB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry-handles.js","sourceRoot":"","sources":["../../src/model-context/registry-handles.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ModelContext, ModelContextProvider, AssistantToolProps, AssistantInstructionsConfig } from "./types.js";
|
|
2
|
+
import type { Unsubscribe } from "../types/index.js";
|
|
3
|
+
import { ModelContextRegistryToolHandle, ModelContextRegistryInstructionHandle, ModelContextRegistryProviderHandle } from "./registry-handles.js";
|
|
4
|
+
export declare class ModelContextRegistry implements ModelContextProvider {
|
|
5
|
+
private _tools;
|
|
6
|
+
private _instructions;
|
|
7
|
+
private _providers;
|
|
8
|
+
private _subscribers;
|
|
9
|
+
private _providerUnsubscribes;
|
|
10
|
+
getModelContext(): ModelContext;
|
|
11
|
+
subscribe(callback: () => void): Unsubscribe;
|
|
12
|
+
private notifySubscribers;
|
|
13
|
+
addTool<TArgs extends Record<string, unknown>, TResult>(tool: AssistantToolProps<TArgs, TResult>): ModelContextRegistryToolHandle<TArgs, TResult>;
|
|
14
|
+
addInstruction(config: string | AssistantInstructionsConfig): ModelContextRegistryInstructionHandle;
|
|
15
|
+
addProvider(provider: ModelContextProvider): ModelContextRegistryProviderHandle;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/model-context/registry.ts"],"names":[],"mappings":"AACA,OAAO,EACL,YAAY,EACZ,oBAAoB,EAEpB,kBAAkB,EAClB,2BAA2B,EAC5B,mBAAgB;AACjB,OAAO,KAAK,EAAE,WAAW,EAAE,0BAAiB;AAC5C,OAAO,EACL,8BAA8B,EAC9B,qCAAqC,EACrC,kCAAkC,EACnC,8BAA2B;AAE5B,qBAAa,oBAAqB,YAAW,oBAAoB;IAC/D,OAAO,CAAC,MAAM,CAAmD;IACjE,OAAO,CAAC,aAAa,CAA6B;IAClD,OAAO,CAAC,UAAU,CAA2C;IAC7D,OAAO,CAAC,YAAY,CAAyB;IAC7C,OAAO,CAAC,qBAAqB,CAA8C;IAE3E,eAAe,IAAI,YAAY;IA4C/B,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,WAAW;IAK5C,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EACpD,IAAI,EAAE,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,GACvC,8BAA8B,CAAC,KAAK,EAAE,OAAO,CAAC;IAoBjD,cAAc,CACZ,MAAM,EAAE,MAAM,GAAG,2BAA2B,GAC3C,qCAAqC;IAiCxC,WAAW,CACT,QAAQ,EAAE,oBAAoB,GAC7B,kCAAkC;CAsBtC"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { mergeModelContexts, } from "./types.js";
|
|
2
|
+
export class ModelContextRegistry {
|
|
3
|
+
_tools = new Map();
|
|
4
|
+
_instructions = new Map();
|
|
5
|
+
_providers = new Map();
|
|
6
|
+
_subscribers = new Set();
|
|
7
|
+
_providerUnsubscribes = new Map();
|
|
8
|
+
getModelContext() {
|
|
9
|
+
const instructions = Array.from(this._instructions.values()).filter(Boolean);
|
|
10
|
+
const system = instructions.length > 0 ? instructions.join("\n\n") : undefined;
|
|
11
|
+
const tools = {};
|
|
12
|
+
for (const toolProps of this._tools.values()) {
|
|
13
|
+
const { toolName, render, ...tool } = toolProps;
|
|
14
|
+
tools[toolName] = tool;
|
|
15
|
+
}
|
|
16
|
+
const providerContexts = mergeModelContexts(new Set(this._providers.values()));
|
|
17
|
+
const context = {
|
|
18
|
+
system,
|
|
19
|
+
tools: Object.keys(tools).length > 0 ? tools : undefined,
|
|
20
|
+
};
|
|
21
|
+
if (providerContexts.system) {
|
|
22
|
+
context.system = context.system
|
|
23
|
+
? `${context.system}\n\n${providerContexts.system}`
|
|
24
|
+
: providerContexts.system;
|
|
25
|
+
}
|
|
26
|
+
if (providerContexts.tools) {
|
|
27
|
+
context.tools = { ...(context.tools || {}), ...providerContexts.tools };
|
|
28
|
+
}
|
|
29
|
+
if (providerContexts.callSettings) {
|
|
30
|
+
context.callSettings = providerContexts.callSettings;
|
|
31
|
+
}
|
|
32
|
+
if (providerContexts.config) {
|
|
33
|
+
context.config = providerContexts.config;
|
|
34
|
+
}
|
|
35
|
+
return context;
|
|
36
|
+
}
|
|
37
|
+
subscribe(callback) {
|
|
38
|
+
this._subscribers.add(callback);
|
|
39
|
+
return () => this._subscribers.delete(callback);
|
|
40
|
+
}
|
|
41
|
+
notifySubscribers() {
|
|
42
|
+
for (const callback of this._subscribers) {
|
|
43
|
+
callback();
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
addTool(tool) {
|
|
47
|
+
const id = Symbol();
|
|
48
|
+
this._tools.set(id, tool);
|
|
49
|
+
this.notifySubscribers();
|
|
50
|
+
return {
|
|
51
|
+
update: (newTool) => {
|
|
52
|
+
if (this._tools.has(id)) {
|
|
53
|
+
this._tools.set(id, newTool);
|
|
54
|
+
this.notifySubscribers();
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
remove: () => {
|
|
58
|
+
this._tools.delete(id);
|
|
59
|
+
this.notifySubscribers();
|
|
60
|
+
},
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
addInstruction(config) {
|
|
64
|
+
const id = Symbol();
|
|
65
|
+
const instruction = typeof config === "string" ? config : config.instruction;
|
|
66
|
+
const disabled = typeof config === "object" ? config.disabled : false;
|
|
67
|
+
if (!disabled) {
|
|
68
|
+
this._instructions.set(id, instruction);
|
|
69
|
+
this.notifySubscribers();
|
|
70
|
+
}
|
|
71
|
+
return {
|
|
72
|
+
update: (newConfig) => {
|
|
73
|
+
const newInstruction = typeof newConfig === "string" ? newConfig : newConfig.instruction;
|
|
74
|
+
const newDisabled = typeof newConfig === "object" ? newConfig.disabled : false;
|
|
75
|
+
if (newDisabled) {
|
|
76
|
+
this._instructions.delete(id);
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
this._instructions.set(id, newInstruction);
|
|
80
|
+
}
|
|
81
|
+
this.notifySubscribers();
|
|
82
|
+
},
|
|
83
|
+
remove: () => {
|
|
84
|
+
this._instructions.delete(id);
|
|
85
|
+
this.notifySubscribers();
|
|
86
|
+
},
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
addProvider(provider) {
|
|
90
|
+
const id = Symbol();
|
|
91
|
+
this._providers.set(id, provider);
|
|
92
|
+
const unsubscribe = provider.subscribe?.(() => {
|
|
93
|
+
this.notifySubscribers();
|
|
94
|
+
});
|
|
95
|
+
this._providerUnsubscribes.set(id, unsubscribe);
|
|
96
|
+
this.notifySubscribers();
|
|
97
|
+
return {
|
|
98
|
+
remove: () => {
|
|
99
|
+
this._providers.delete(id);
|
|
100
|
+
const unsubscribe = this._providerUnsubscribes.get(id);
|
|
101
|
+
unsubscribe?.();
|
|
102
|
+
this._providerUnsubscribes.delete(id);
|
|
103
|
+
this.notifySubscribers();
|
|
104
|
+
},
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/model-context/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool.d.ts","sourceRoot":"","sources":["../../src/model-context/tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAIxC,wBAAgB,IAAI,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,GAAG,EACvE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,GACzB,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAEtB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool.js","sourceRoot":"","sources":["../../src/model-context/tool.ts"],"names":[],"mappings":"AAEA,+CAA+C;AAE/C,MAAM,UAAU,IAAI,CAClB,IAA0B;IAE1B,OAAO,IAAI,CAAC;AACd,CAAC"}
|