@datalayer/agent-runtimes 1.0.2 → 1.0.3
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/README.md +1 -1
- package/lib/Agent.js +2 -2
- package/lib/AgentLexical.d.ts +1 -12
- package/lib/AgentLexical.js +3 -14
- package/lib/AgentNotebook.js +3 -3
- package/lib/App.js +2 -2
- package/lib/{components/chat/components → agents}/AgentDetails.d.ts +13 -2
- package/lib/{components/chat/components → agents}/AgentDetails.js +6 -12
- package/lib/api/agents.d.ts +47 -0
- package/lib/api/agents.js +106 -0
- package/lib/api/context.d.ts +17 -0
- package/lib/api/context.js +45 -0
- package/lib/api/evals.d.ts +27 -0
- package/lib/api/evals.js +63 -0
- package/lib/api/events.d.ts +17 -0
- package/lib/api/events.js +93 -0
- package/lib/{components/chat → api}/handler.js +1 -1
- package/lib/api/index.d.ts +15 -0
- package/lib/api/index.js +20 -0
- package/lib/api/notifications.d.ts +39 -0
- package/lib/api/notifications.js +103 -0
- package/lib/api/output.d.ts +28 -0
- package/lib/api/output.js +64 -0
- package/lib/api/tool-approvals.d.ts +62 -0
- package/lib/api/tool-approvals.js +145 -0
- package/lib/{components/chat/components → chat}/Chat.d.ts +24 -15
- package/lib/{components/chat/components → chat}/Chat.js +16 -16
- package/lib/{components/chat/components → chat}/ChatFloating.d.ts +17 -9
- package/lib/{components/chat/components → chat}/ChatFloating.js +17 -9
- package/lib/{components/chat/components → chat}/ChatInline.d.ts +2 -2
- package/lib/{components/chat/components → chat}/ChatInline.js +8 -6
- package/lib/{components/chat/components → chat}/ChatPopupStandalone.d.ts +3 -4
- package/lib/{components/chat/components → chat}/ChatPopupStandalone.js +6 -6
- package/lib/{components/chat/components → chat}/ChatSidebar.d.ts +14 -5
- package/lib/{components/chat/components → chat}/ChatSidebar.js +48 -26
- package/lib/{components/chat/components → chat}/ChatStandalone.d.ts +3 -4
- package/lib/{components/chat/components → chat}/ChatStandalone.js +5 -5
- package/lib/chat/base/ChatBase.d.ts +6 -0
- package/lib/chat/base/ChatBase.js +1287 -0
- package/lib/chat/display/EmptyState.d.ts +27 -0
- package/lib/chat/display/EmptyState.js +41 -0
- package/lib/{components/chat/components/elements → chat/display}/FloatingBrandButton.d.ts +1 -1
- package/lib/{components/chat/components/elements → chat/display}/FloatingBrandButton.js +1 -1
- package/lib/{components/chat/components/elements → chat/display}/PoweredByTag.d.ts +1 -1
- package/lib/{components/chat/components/elements → chat/header}/ChatHeader.d.ts +1 -4
- package/lib/{components/chat/components/elements → chat/header}/ChatHeader.js +1 -1
- package/lib/chat/header/ChatHeaderBase.d.ts +38 -0
- package/lib/chat/header/ChatHeaderBase.js +83 -0
- package/lib/chat/index.d.ts +66 -0
- package/lib/chat/index.js +74 -0
- package/lib/chat/indicators/McpStatusIndicator.d.ts +9 -0
- package/lib/chat/indicators/McpStatusIndicator.js +128 -0
- package/lib/chat/indicators/SandboxStatusIndicator.d.ts +10 -0
- package/lib/chat/indicators/SandboxStatusIndicator.js +175 -0
- package/lib/chat/indicators/index.d.ts +17 -0
- package/lib/chat/indicators/index.js +19 -0
- package/lib/chat/messages/ChatMessageList.d.ts +49 -0
- package/lib/chat/messages/ChatMessageList.js +319 -0
- package/lib/{components/chat/components/elements → chat/messages}/ChatMessages.d.ts +2 -2
- package/lib/{components/chat/components/elements → chat/messages}/ChatMessages.js +6 -4
- package/lib/{components/chat/components → chat}/parts/DynamicToolPart.d.ts +1 -1
- package/lib/{components/chat/components/elements → chat/parts}/MessagePart.d.ts +1 -1
- package/lib/{components/chat/components/elements → chat/parts}/MessagePart.js +4 -4
- package/lib/{components/chat/components → chat}/parts/ReasoningPart.js +1 -1
- package/lib/{components/chat/components → chat}/parts/TextPart.d.ts +1 -1
- package/lib/{components/chat/components → chat}/parts/ToolPart.js +1 -1
- package/lib/{components/chat/components → chat}/parts/index.d.ts +2 -1
- package/lib/{components/chat/components → chat}/parts/index.js +2 -1
- package/lib/chat/prompt/InputFooter.d.ts +43 -0
- package/lib/chat/prompt/InputFooter.js +135 -0
- package/lib/chat/prompt/InputPrompt.d.ts +60 -0
- package/lib/chat/prompt/InputPrompt.js +83 -0
- package/lib/chat/prompt/InputPromptFooter.d.ts +25 -0
- package/lib/chat/prompt/InputPromptFooter.js +15 -0
- package/lib/chat/prompt/InputPromptHeader.d.ts +15 -0
- package/lib/chat/prompt/InputPromptHeader.js +15 -0
- package/lib/chat/prompt/InputPromptLexical.d.ts +16 -0
- package/lib/chat/prompt/InputPromptLexical.js +122 -0
- package/lib/chat/prompt/InputPromptText.d.ts +24 -0
- package/lib/chat/prompt/InputPromptText.js +66 -0
- package/lib/chat/prompt/index.d.ts +11 -0
- package/lib/chat/prompt/index.js +15 -0
- package/lib/{components/chat/components → chat}/styles/streamdownStyles.d.ts +1 -1
- package/lib/chat/tools/ToolApprovalBanner.d.ts +31 -0
- package/lib/chat/tools/ToolApprovalBanner.js +62 -0
- package/lib/{components/chat/components/elements → chat/tools}/ToolApprovalDialog.js +1 -1
- package/lib/{components/chat/components/display → chat/tools}/ToolCallDisplay.d.ts +13 -4
- package/lib/{components/chat/components/display → chat/tools}/ToolCallDisplay.js +18 -8
- package/lib/chat/tools/index.d.ts +8 -0
- package/lib/{components/chat/components/display → chat/tools}/index.js +3 -1
- package/lib/chat/usage/TokenUsageBar.d.ts +8 -0
- package/lib/chat/usage/TokenUsageBar.js +213 -0
- package/lib/client/AgentsMixin.d.ts +169 -0
- package/lib/client/AgentsMixin.js +279 -0
- package/lib/client/index.d.ts +6 -0
- package/lib/client/index.js +10 -0
- package/lib/components/NotificationEventCard.d.ts +8 -0
- package/lib/components/NotificationEventCard.js +152 -0
- package/lib/components/OutputCard.d.ts +8 -0
- package/lib/components/OutputCard.js +80 -0
- package/lib/components/ToolApprovalCard.d.ts +33 -0
- package/lib/components/ToolApprovalCard.js +60 -0
- package/lib/components/index.d.ts +3 -7
- package/lib/components/index.js +3 -4
- package/lib/{components → config}/AgentConfiguration.d.ts +43 -21
- package/lib/{components → config}/AgentConfiguration.js +48 -28
- package/lib/config/index.d.ts +2 -0
- package/lib/config/index.js +1 -0
- package/lib/{components/chat/components → context}/ContextInspector.js +38 -8
- package/lib/{components/chat/components → context}/ContextPanel.js +27 -6
- package/lib/context/CostTracker.d.ts +37 -0
- package/lib/context/CostTracker.js +124 -0
- package/lib/context/TokenUsageChart.d.ts +10 -0
- package/lib/context/TokenUsageChart.js +288 -0
- package/lib/examples/A2UiComponentGalleryExample.d.ts +20 -0
- package/lib/examples/A2UiComponentGalleryExample.js +568 -0
- package/lib/examples/A2UiContactCardExample.d.ts +21 -0
- package/lib/examples/A2UiContactCardExample.js +432 -0
- package/lib/examples/A2UiRestaurantExample.d.ts +11 -3
- package/lib/examples/A2UiRestaurantExample.js +63 -98
- package/lib/examples/A2UiViewerExample.d.ts +21 -0
- package/lib/examples/A2UiViewerExample.js +563 -0
- package/lib/examples/AgUiAgenticExample.js +3 -3
- package/lib/examples/AgUiBackendToolRenderingExample.js +3 -3
- package/lib/examples/{AgUiHaikuGenUIExample.d.ts → AgUiHaikuGenUiExample.d.ts} +4 -4
- package/lib/examples/{AgUiHaikuGenUIExample.js → AgUiHaikuGenUiExample.js} +7 -7
- package/lib/examples/AgUiHumanInTheLoopExample.js +3 -3
- package/lib/examples/AgUiSharedStateExample.js +3 -3
- package/lib/examples/{AgUiToolsBasedGenUIExample.d.ts → AgUiToolsBasedGenUiExample.d.ts} +4 -4
- package/lib/examples/{AgUiToolsBasedGenUIExample.js → AgUiToolsBasedGenUiExample.js} +7 -7
- package/lib/examples/AgentCheckpointsExample.d.ts +19 -0
- package/lib/examples/AgentCheckpointsExample.js +506 -0
- package/lib/examples/AgentCodemodeExample.d.ts +14 -0
- package/lib/examples/AgentCodemodeExample.js +262 -0
- package/lib/examples/AgentEvalsExample.d.ts +14 -0
- package/lib/examples/AgentEvalsExample.js +216 -0
- package/lib/examples/AgentGuardrailsExample.d.ts +14 -0
- package/lib/examples/AgentGuardrailsExample.js +218 -0
- package/lib/examples/AgentMemoryExample.d.ts +14 -0
- package/lib/examples/AgentMemoryExample.js +234 -0
- package/lib/examples/AgentMonitoringExample.d.ts +13 -0
- package/lib/examples/AgentMonitoringExample.js +311 -0
- package/lib/examples/AgentNotificationsExample.d.ts +14 -0
- package/lib/examples/AgentNotificationsExample.js +273 -0
- package/lib/examples/AgentOtelExample.d.ts +25 -0
- package/lib/examples/AgentOtelExample.js +281 -0
- package/lib/examples/AgentOutputsExample.d.ts +14 -0
- package/lib/examples/AgentOutputsExample.js +211 -0
- package/lib/examples/AgentSandboxExample.d.ts +17 -0
- package/lib/examples/AgentSandboxExample.js +496 -0
- package/lib/examples/AgentSkillsExample.d.ts +3 -0
- package/lib/examples/AgentSkillsExample.js +290 -0
- package/lib/examples/AgentToolApprovalsExample.d.ts +3 -0
- package/lib/examples/AgentToolApprovalsExample.js +672 -0
- package/lib/examples/AgentTriggersExample.d.ts +14 -0
- package/lib/examples/AgentTriggersExample.js +523 -0
- package/lib/examples/{AgentRuntimeFormExample.d.ts → AgentspecExample.d.ts} +3 -4
- package/lib/examples/{AgentRuntimeFormExample.js → AgentspecExample.js} +92 -34
- package/lib/examples/{JupyterCellExample.js → CellSimpleExample.js} +1 -1
- package/lib/examples/{AgentRuntimeCustomExample.js → ChatCustomExample.js} +3 -3
- package/lib/examples/{AgentRuntimeChatExample.js → ChatExample.js} +4 -4
- package/lib/examples/{AgentRuntimeStandaloneExample.js → ChatStandaloneExample.js} +2 -2
- package/lib/examples/CopilotKitLexicalExample.d.ts +3 -14
- package/lib/examples/CopilotKitLexicalExample.js +4 -15
- package/lib/examples/CopilotKitNotebookExample.js +4 -6
- package/lib/examples/DatalayerNotebookExample.js +2 -2
- package/lib/examples/{AgentRuntimeLexical2Example.d.ts → Lexical2Example.d.ts} +2 -13
- package/lib/examples/{AgentRuntimeLexical2Example.js → Lexical2Example.js} +8 -17
- package/lib/examples/{AgentRuntimeLexicalExample.d.ts → LexicalExample.d.ts} +1 -12
- package/lib/examples/{AgentRuntimeLexicalExample.js → LexicalExample.js} +28 -27
- package/lib/examples/{AgentRuntimeLexicalSidebarExample.d.ts → LexicalSidebarExample.d.ts} +2 -13
- package/lib/examples/{AgentRuntimeLexicalSidebarExample.js → LexicalSidebarExample.js} +6 -18
- package/lib/examples/{AgentRuntimeNotebookExample.js → NotebookExample.js} +14 -10
- package/lib/examples/{AgentRuntimeNotebookSidebarExample.js → NotebookSidebarExample.js} +5 -8
- package/lib/examples/{JupyterNotebookExample.js → NotebookSimpleExample.js} +2 -2
- package/lib/examples/ag-ui/weather/InlineWeatherCard.js +1 -1
- package/lib/examples/components/ExampleWrapper.d.ts +12 -0
- package/lib/examples/components/ExampleWrapper.js +16 -0
- package/lib/examples/components/Header.d.ts +2 -2
- package/lib/examples/components/HeaderControls.js +1 -1
- package/lib/examples/components/LexicalEditor.d.ts +1 -12
- package/lib/examples/components/LexicalEditor.js +1 -12
- package/lib/examples/components/MainContent.d.ts +4 -11
- package/lib/examples/components/MainContent.js +6 -60
- package/lib/examples/components/index.d.ts +1 -0
- package/lib/examples/components/index.js +1 -0
- package/lib/examples/example-selector.d.ts +1 -1
- package/lib/examples/example-selector.js +35 -22
- package/lib/examples/index.d.ts +26 -13
- package/lib/examples/index.js +26 -12
- package/lib/examples/main.d.ts +6 -0
- package/lib/examples/main.js +20 -43
- package/lib/examples/utils/examplesStore.d.ts +4 -0
- package/lib/examples/{stores → utils}/examplesStore.js +1 -1
- package/lib/examples/utils/notebooks/Empty.ipynb.json +33 -0
- package/lib/examples/utils/notebooks/NotebookExample2.ipynb.json +48 -0
- package/lib/examples/utils/themeStore.d.ts +8 -0
- package/lib/examples/utils/themeStore.js +14 -0
- package/lib/extensions/A2UIExtension.d.ts +65 -0
- package/lib/extensions/A2UIExtension.js +202 -0
- package/lib/{components/chat/extensions → extensions}/ExtensionRegistry.d.ts +2 -3
- package/lib/{components/chat/extensions → extensions}/ExtensionRegistry.js +0 -2
- package/lib/{components/chat/extensions → extensions}/MCPUIExtension.d.ts +2 -2
- package/lib/{components/chat/extensions → extensions}/MCPUIExtension.js +1 -1
- package/lib/extensions/index.d.ts +9 -0
- package/lib/{components/chat/extensions → extensions}/index.js +2 -2
- package/lib/hooks/index.d.ts +33 -16
- package/lib/hooks/index.js +33 -16
- package/lib/hooks/useAIAgentsWebSocket.d.ts +29 -0
- package/lib/hooks/useAIAgentsWebSocket.js +136 -0
- package/lib/hooks/{useAGUI.d.ts → useAgUi.d.ts} +2 -2
- package/lib/hooks/{useAGUI.js → useAgUi.js} +2 -2
- package/lib/hooks/useAgents.d.ts +150 -11
- package/lib/hooks/useAgents.js +623 -61
- package/lib/hooks/{useAgentStore.d.ts → useAgentsCatalog.d.ts} +3 -8
- package/lib/hooks/{useAgentStore.js → useAgentsCatalog.js} +9 -3
- package/lib/hooks/useAgentsRegistry.d.ts +10 -0
- package/lib/hooks/useAgentsRegistry.js +20 -0
- package/lib/hooks/useAgentsService.d.ts +22 -0
- package/lib/hooks/useAgentsService.js +146 -0
- package/lib/hooks/useChat.d.ts +2 -2
- package/lib/hooks/useChat.js +14 -8
- package/lib/hooks/useCheckpoints.d.ts +176 -0
- package/lib/hooks/useCheckpoints.js +466 -0
- package/lib/hooks/useConfig.d.ts +11 -0
- package/lib/hooks/useConfig.js +46 -0
- package/lib/hooks/useContextSnapshot.d.ts +11 -0
- package/lib/hooks/useContextSnapshot.js +44 -0
- package/lib/hooks/useMonitoring.d.ts +24 -0
- package/lib/hooks/useMonitoring.js +111 -0
- package/lib/hooks/useNotifications.d.ts +67 -0
- package/lib/hooks/useNotifications.js +208 -0
- package/lib/hooks/useSandbox.d.ts +12 -0
- package/lib/hooks/useSandbox.js +49 -0
- package/lib/hooks/useSkills.d.ts +13 -0
- package/lib/hooks/useSkills.js +46 -0
- package/lib/hooks/useToolApprovals.d.ts +45 -0
- package/lib/hooks/useToolApprovals.js +126 -0
- package/lib/hooks/useTools.d.ts +4 -4
- package/lib/hooks/useTools.js +2 -2
- package/lib/hooks/{useVercelChat.d.ts → useVercelAI.d.ts} +3 -3
- package/lib/hooks/{useVercelChat.js → useVercelAI.js} +2 -2
- package/lib/{components/chat/components → identity}/AgentIdentity.d.ts +1 -1
- package/lib/{components/chat/components → identity}/AgentIdentity.js +4 -3
- package/lib/identity/index.d.ts +1 -0
- package/lib/identity/index.js +2 -0
- package/lib/index.d.ts +4 -3
- package/lib/index.js +3 -2
- package/lib/{components/chat/inference → inference}/BaseInferenceProvider.d.ts +3 -3
- package/lib/{components/chat/inference → inference}/DatalayerInferenceProvider.d.ts +3 -3
- package/lib/{components/chat/inference → inference}/DatalayerInferenceProvider.js +1 -1
- package/lib/{components/chat/inference → inference}/SelfHostedInferenceProvider.d.ts +2 -2
- package/lib/{components/chat/inference → inference}/SelfHostedInferenceProvider.js +1 -1
- package/lib/{components/chat/inference → inference}/index.d.ts +1 -1
- package/lib/{components/chat/inference → inference}/index.js +1 -1
- package/lib/lexical/ChatInlinePlugin.d.ts +1 -1
- package/lib/lexical/ChatInlinePlugin.js +1 -1
- package/lib/{components → mcp}/McpServerManager.d.ts +1 -2
- package/lib/mcp/index.d.ts +1 -0
- package/lib/{specs/agents/codeai → mcp}/index.js +1 -1
- package/lib/{components/chat/middleware → middleware}/MiddlewarePipeline.d.ts +3 -3
- package/lib/{components/chat/middleware → middleware}/index.d.ts +1 -1
- package/lib/{components/chat/middleware → middleware}/index.js +1 -1
- package/lib/{components/chat/protocols → protocols}/A2AAdapter.d.ts +6 -6
- package/lib/{components/chat/protocols → protocols}/A2AAdapter.js +3 -3
- package/lib/{components/chat/protocols → protocols}/ACPAdapter.d.ts +6 -6
- package/lib/{components/chat/protocols → protocols}/ACPAdapter.js +4 -4
- package/lib/{components/chat/protocols → protocols}/AGUIAdapter.d.ts +14 -6
- package/lib/{components/chat/protocols → protocols}/AGUIAdapter.js +72 -10
- package/lib/{components/chat/protocols → protocols}/BaseProtocolAdapter.d.ts +6 -6
- package/lib/{components/chat/protocols → protocols}/BaseProtocolAdapter.js +1 -1
- package/lib/{components/chat/protocols → protocols}/VercelAIAdapter.d.ts +31 -7
- package/lib/protocols/VercelAIAdapter.js +682 -0
- package/lib/{components/chat/protocols → protocols}/index.d.ts +1 -2
- package/lib/{components/chat/protocols → protocols}/index.js +1 -1
- package/lib/specs/agents/agents.d.ts +54 -0
- package/lib/specs/agents/{mocks/agents.js → agents.js} +1144 -799
- package/lib/specs/agents/index.js +14 -9
- package/lib/specs/envvars.d.ts +11 -19
- package/lib/specs/envvars.js +42 -21
- package/lib/specs/evals.d.ts +20 -0
- package/lib/specs/evals.js +133 -0
- package/lib/specs/events.d.ts +18 -0
- package/lib/specs/events.js +182 -0
- package/lib/specs/frontendTools.d.ts +14 -0
- package/lib/specs/frontendTools.js +53 -0
- package/lib/specs/guardrails.d.ts +22 -0
- package/lib/specs/guardrails.js +391 -0
- package/lib/specs/index.d.ts +15 -2
- package/lib/specs/index.js +15 -2
- package/lib/specs/mcpServers.d.ts +13 -11
- package/lib/specs/mcpServers.js +82 -28
- package/lib/specs/memory.d.ts +34 -0
- package/lib/specs/memory.js +99 -0
- package/lib/specs/models.d.ts +21 -34
- package/lib/specs/models.js +61 -41
- package/lib/specs/notifications.d.ts +17 -0
- package/lib/specs/notifications.js +187 -0
- package/lib/specs/outputs.d.ts +19 -0
- package/lib/specs/outputs.js +112 -0
- package/lib/specs/skills.d.ts +7 -16
- package/lib/specs/skills.js +89 -12
- package/lib/specs/teams/index.d.ts +17 -0
- package/lib/specs/teams/index.js +37 -0
- package/lib/specs/teams/teams.d.ts +27 -0
- package/lib/specs/teams/teams.js +1120 -0
- package/lib/specs/tools.d.ts +15 -0
- package/lib/specs/tools.js +83 -0
- package/lib/specs/triggers.d.ts +15 -0
- package/lib/specs/triggers.js +117 -0
- package/lib/stores/agentsStore.d.ts +123 -0
- package/lib/stores/agentsStore.js +270 -0
- package/lib/{components/chat/store → stores}/chatStore.d.ts +3 -2
- package/lib/{components/chat/store → stores}/chatStore.js +2 -2
- package/lib/{components/chat/store → stores}/conversationStore.d.ts +1 -1
- package/lib/{components/chat/store → stores}/conversationStore.js +1 -1
- package/lib/{components/chat/store → stores}/index.d.ts +3 -2
- package/lib/{components/chat/store → stores}/index.js +3 -2
- package/lib/{components/chat/tools → tools}/ToolExecutor.d.ts +2 -2
- package/lib/{components/chat/tools → tools}/ToolExecutor.js +1 -1
- package/lib/tools/adapters/agent-runtimes/AgentRuntimesToolAdapter.d.ts +1 -1
- package/lib/tools/adapters/agent-runtimes/lexicalHooks.d.ts +14 -10
- package/lib/tools/adapters/agent-runtimes/lexicalHooks.js +31 -21
- package/lib/tools/adapters/agent-runtimes/notebookHooks.d.ts +1 -1
- package/lib/tools/index.d.ts +3 -0
- package/lib/tools/index.js +3 -7
- package/lib/types/a2a.d.ts +39 -0
- package/lib/types/acp.d.ts +21 -0
- package/lib/types/ag-ui.d.ts +25 -0
- package/lib/types/agents-lifecycle.d.ts +36 -0
- package/lib/types/agents.d.ts +80 -0
- package/lib/types/agents.js +22 -0
- package/lib/types/agentspecs.d.ts +90 -0
- package/lib/{components/chat/components/base/ChatBase.d.ts → types/chat.d.ts} +59 -99
- package/lib/types/checkpoints.d.ts +32 -0
- package/lib/types/checkpoints.js +5 -0
- package/lib/types/config.d.ts +67 -0
- package/lib/{runtime/types.js → types/config.js} +2 -2
- package/lib/types/connection.d.ts +31 -0
- package/lib/types/connection.js +5 -0
- package/lib/types/context.d.ts +67 -0
- package/lib/types/context.js +5 -0
- package/lib/types/cost.d.ts +42 -0
- package/lib/types/cost.js +5 -0
- package/lib/types/envvars.d.ts +21 -0
- package/lib/types/envvars.js +5 -0
- package/lib/types/evals.d.ts +66 -0
- package/lib/types/evals.js +5 -0
- package/lib/types/events.d.ts +49 -0
- package/lib/types/events.js +5 -0
- package/lib/types/eventspecs.d.ts +39 -0
- package/lib/types/eventspecs.js +5 -0
- package/lib/types/examples.d.ts +31 -0
- package/lib/types/examples.js +5 -0
- package/lib/{components/chat/types → types}/execution.d.ts +10 -1
- package/lib/{components/chat/types/extension.d.ts → types/extensions.d.ts} +3 -3
- package/lib/types/guardrails.d.ts +106 -0
- package/lib/types/guardrails.js +5 -0
- package/lib/types/index.d.ts +36 -2
- package/lib/types/index.js +35 -2
- package/lib/{components/chat/types → types}/inference.d.ts +3 -3
- package/lib/types/inference.js +5 -0
- package/lib/types/mcp.d.ts +117 -0
- package/lib/types/mcp.js +27 -0
- package/lib/types/memory.d.ts +23 -0
- package/lib/types/memory.js +5 -0
- package/lib/{components/chat/types/message.d.ts → types/messages.d.ts} +20 -1
- package/lib/{components/chat/types → types}/middleware.d.ts +3 -3
- package/lib/types/models.d.ts +63 -0
- package/lib/types/models.js +5 -0
- package/lib/types/notifications.d.ts +85 -0
- package/lib/types/notifications.js +5 -0
- package/lib/types/outputs.d.ts +51 -0
- package/lib/types/outputs.js +5 -0
- package/lib/{components/chat/types → types}/protocol.d.ts +37 -99
- package/lib/types/protocol.js +5 -0
- package/lib/types/sandbox.d.ts +27 -0
- package/lib/types/sandbox.js +24 -0
- package/lib/types/skills.d.ts +74 -0
- package/lib/types/skills.js +5 -0
- package/lib/types/teams.d.ts +133 -0
- package/lib/types/teams.js +5 -0
- package/lib/types/tool-approvals.d.ts +39 -0
- package/lib/types/tool-approvals.js +5 -0
- package/lib/{components/chat/types/tool.d.ts → types/tools.d.ts} +59 -4
- package/lib/types/triggers.d.ts +48 -0
- package/lib/types/triggers.js +5 -0
- package/lib/types/usage.d.ts +36 -0
- package/lib/types/usage.js +5 -0
- package/lib/utils/index.d.ts +1 -0
- package/lib/utils/index.js +5 -0
- package/lib/utils/utils.d.ts +60 -0
- package/lib/utils/utils.js +205 -0
- package/package.json +13 -14
- package/scripts/codegen/__pycache__/generate_agents.cpython-313.pyc +0 -0
- package/scripts/codegen/__pycache__/generate_envvars.cpython-313.pyc +0 -0
- package/scripts/codegen/__pycache__/generate_evals.cpython-313.pyc +0 -0
- package/scripts/codegen/__pycache__/generate_guardrails.cpython-313.pyc +0 -0
- package/scripts/codegen/__pycache__/generate_mcp_servers.cpython-313.pyc +0 -0
- package/scripts/codegen/__pycache__/generate_memory.cpython-313.pyc +0 -0
- package/scripts/codegen/__pycache__/generate_models.cpython-313.pyc +0 -0
- package/scripts/codegen/__pycache__/generate_notifications.cpython-313.pyc +0 -0
- package/scripts/codegen/__pycache__/generate_outputs.cpython-313.pyc +0 -0
- package/scripts/codegen/__pycache__/generate_skills.cpython-313.pyc +0 -0
- package/scripts/codegen/__pycache__/generate_teams.cpython-313.pyc +0 -0
- package/scripts/codegen/__pycache__/generate_tools.cpython-313.pyc +0 -0
- package/scripts/codegen/__pycache__/generate_triggers.cpython-313.pyc +0 -0
- package/scripts/codegen/__pycache__/versioning.cpython-313.pyc +0 -0
- package/scripts/codegen/generate_agents.py +373 -60
- package/scripts/codegen/generate_envvars.py +36 -35
- package/scripts/codegen/generate_evals.py +279 -0
- package/scripts/codegen/generate_events.py +312 -0
- package/scripts/codegen/generate_frontend_tools.py +266 -0
- package/scripts/codegen/generate_guardrails.py +475 -0
- package/scripts/codegen/generate_mcp_servers.py +36 -9
- package/scripts/codegen/generate_memory.py +468 -0
- package/scripts/codegen/generate_models.py +22 -46
- package/scripts/codegen/generate_notifications.py +309 -0
- package/scripts/codegen/generate_outputs.py +267 -0
- package/scripts/codegen/generate_skills.py +108 -51
- package/scripts/codegen/generate_teams.py +922 -0
- package/scripts/codegen/generate_tools.py +326 -0
- package/scripts/codegen/generate_triggers.py +295 -0
- package/scripts/codegen/versioning.py +53 -0
- package/lib/components/chat/components/base/ChatBase.js +0 -2242
- package/lib/components/chat/components/base/InputPrompt.d.ts +0 -42
- package/lib/components/chat/components/base/InputPrompt.js +0 -131
- package/lib/components/chat/components/display/index.d.ts +0 -6
- package/lib/components/chat/components/index.d.ts +0 -26
- package/lib/components/chat/components/index.js +0 -39
- package/lib/components/chat/extensions/A2UIExtension.d.ts +0 -87
- package/lib/components/chat/extensions/A2UIExtension.js +0 -312
- package/lib/components/chat/extensions/index.d.ts +0 -10
- package/lib/components/chat/index.d.ts +0 -61
- package/lib/components/chat/index.js +0 -76
- package/lib/components/chat/protocols/VercelAIAdapter.js +0 -315
- package/lib/components/chat/tools/index.d.ts +0 -8
- package/lib/components/chat/tools/index.js +0 -11
- package/lib/components/chat/types/index.d.ts +0 -12
- package/lib/components/chat/types/index.js +0 -17
- package/lib/components/sparklines/Sparklines.d.ts +0 -16
- package/lib/components/sparklines/Sparklines.js +0 -65
- package/lib/components/sparklines/SparklinesLine.d.ts +0 -8
- package/lib/components/sparklines/SparklinesLine.js +0 -37
- package/lib/components/sparklines/dataProcessing.d.ts +0 -25
- package/lib/components/sparklines/dataProcessing.js +0 -35
- package/lib/components/sparklines/index.d.ts +0 -4
- package/lib/components/sparklines/index.js +0 -7
- package/lib/components/sparklines/types.d.ts +0 -36
- package/lib/examples/stores/examplesStore.d.ts +0 -5
- package/lib/examples/stores/notebooks/Empty.ipynb.json +0 -33
- package/lib/examples/stores/notebooks/NotebookExample2.ipynb.json +0 -48
- package/lib/examples/stores/themeStore.d.ts +0 -33
- package/lib/examples/stores/themeStore.js +0 -38
- package/lib/hooks/useAgentRuntimes.d.ts +0 -350
- package/lib/hooks/useAgentRuntimes.js +0 -78
- package/lib/hooks/useKeyboardShortcuts.d.ts +0 -47
- package/lib/hooks/useKeyboardShortcuts.js +0 -153
- package/lib/hooks/useMobile.d.ts +0 -1
- package/lib/hooks/useMobile.js +0 -19
- package/lib/hooks/useNotebookAIAgent.d.ts +0 -8
- package/lib/hooks/useNotebookAIAgent.js +0 -73
- package/lib/renderers/a2ui/components/A2UIRenderer.d.ts +0 -7
- package/lib/renderers/a2ui/components/A2UIRenderer.js +0 -102
- package/lib/renderers/a2ui/components/SurfaceRenderer.d.ts +0 -7
- package/lib/renderers/a2ui/components/SurfaceRenderer.js +0 -101
- package/lib/renderers/a2ui/components/content/AudioPlayer.d.ts +0 -9
- package/lib/renderers/a2ui/components/content/AudioPlayer.js +0 -38
- package/lib/renderers/a2ui/components/content/Divider.d.ts +0 -9
- package/lib/renderers/a2ui/components/content/Divider.js +0 -35
- package/lib/renderers/a2ui/components/content/Icon.d.ts +0 -9
- package/lib/renderers/a2ui/components/content/Icon.js +0 -110
- package/lib/renderers/a2ui/components/content/Image.d.ts +0 -9
- package/lib/renderers/a2ui/components/content/Image.js +0 -61
- package/lib/renderers/a2ui/components/content/Text.d.ts +0 -9
- package/lib/renderers/a2ui/components/content/Text.js +0 -64
- package/lib/renderers/a2ui/components/content/Video.d.ts +0 -9
- package/lib/renderers/a2ui/components/content/Video.js +0 -37
- package/lib/renderers/a2ui/components/content/index.d.ts +0 -6
- package/lib/renderers/a2ui/components/content/index.js +0 -25
- package/lib/renderers/a2ui/components/index.d.ts +0 -5
- package/lib/renderers/a2ui/components/index.js +0 -24
- package/lib/renderers/a2ui/components/interactive/Button.d.ts +0 -11
- package/lib/renderers/a2ui/components/interactive/Button.js +0 -71
- package/lib/renderers/a2ui/components/interactive/CheckBox.d.ts +0 -9
- package/lib/renderers/a2ui/components/interactive/CheckBox.js +0 -48
- package/lib/renderers/a2ui/components/interactive/DateTimeInput.d.ts +0 -9
- package/lib/renderers/a2ui/components/interactive/DateTimeInput.js +0 -62
- package/lib/renderers/a2ui/components/interactive/MultipleChoice.d.ts +0 -9
- package/lib/renderers/a2ui/components/interactive/MultipleChoice.js +0 -73
- package/lib/renderers/a2ui/components/interactive/Slider.d.ts +0 -9
- package/lib/renderers/a2ui/components/interactive/Slider.js +0 -53
- package/lib/renderers/a2ui/components/interactive/TextField.d.ts +0 -9
- package/lib/renderers/a2ui/components/interactive/TextField.js +0 -72
- package/lib/renderers/a2ui/components/interactive/index.d.ts +0 -6
- package/lib/renderers/a2ui/components/interactive/index.js +0 -25
- package/lib/renderers/a2ui/components/layout/Card.d.ts +0 -11
- package/lib/renderers/a2ui/components/layout/Card.js +0 -30
- package/lib/renderers/a2ui/components/layout/Column.d.ts +0 -11
- package/lib/renderers/a2ui/components/layout/Column.js +0 -65
- package/lib/renderers/a2ui/components/layout/List.d.ts +0 -11
- package/lib/renderers/a2ui/components/layout/List.js +0 -55
- package/lib/renderers/a2ui/components/layout/Modal.d.ts +0 -11
- package/lib/renderers/a2ui/components/layout/Modal.js +0 -58
- package/lib/renderers/a2ui/components/layout/Row.d.ts +0 -11
- package/lib/renderers/a2ui/components/layout/Row.js +0 -65
- package/lib/renderers/a2ui/components/layout/Tabs.d.ts +0 -11
- package/lib/renderers/a2ui/components/layout/Tabs.js +0 -48
- package/lib/renderers/a2ui/components/layout/index.d.ts +0 -6
- package/lib/renderers/a2ui/components/layout/index.js +0 -25
- package/lib/renderers/a2ui/context/A2UIContext.d.ts +0 -17
- package/lib/renderers/a2ui/context/A2UIContext.js +0 -54
- package/lib/renderers/a2ui/context/ThemeContext.d.ts +0 -20
- package/lib/renderers/a2ui/context/ThemeContext.js +0 -333
- package/lib/renderers/a2ui/hooks/useA2UI.d.ts +0 -36
- package/lib/renderers/a2ui/hooks/useA2UI.js +0 -62
- package/lib/renderers/a2ui/hooks/useDataBinding.d.ts +0 -8
- package/lib/renderers/a2ui/hooks/useDataBinding.js +0 -83
- package/lib/renderers/a2ui/index.d.ts +0 -9
- package/lib/renderers/a2ui/index.js +0 -28
- package/lib/renderers/a2ui/lib/utils.d.ts +0 -11
- package/lib/renderers/a2ui/lib/utils.js +0 -38
- package/lib/renderers/a2ui/types/index.d.ts +0 -17
- package/lib/runtime/index.d.ts +0 -38
- package/lib/runtime/index.js +0 -40
- package/lib/runtime/runtimeStore.d.ts +0 -76
- package/lib/runtime/runtimeStore.js +0 -184
- package/lib/runtime/types.d.ts +0 -84
- package/lib/runtime/useAgentConnection.d.ts +0 -45
- package/lib/runtime/useAgentConnection.js +0 -112
- package/lib/runtime/useAgentRuntime.d.ts +0 -93
- package/lib/runtime/useAgentRuntime.js +0 -125
- package/lib/specs/agents/codeai/agents.d.ts +0 -28
- package/lib/specs/agents/codeai/agents.js +0 -179
- package/lib/specs/agents/codeai/index.d.ts +0 -1
- package/lib/specs/agents/codemode-paper/agents.d.ts +0 -31
- package/lib/specs/agents/codemode-paper/agents.js +0 -378
- package/lib/specs/agents/codemode-paper/index.d.ts +0 -1
- package/lib/specs/agents/codemode-paper/index.js +0 -5
- package/lib/specs/agents/datalayer-ai/agents.d.ts +0 -31
- package/lib/specs/agents/datalayer-ai/agents.js +0 -352
- package/lib/specs/agents/datalayer-ai/index.d.ts +0 -1
- package/lib/specs/agents/datalayer-ai/index.js +0 -5
- package/lib/specs/agents/mocks/agents.d.ts +0 -43
- package/lib/specs/agents/mocks/index.d.ts +0 -1
- package/lib/specs/agents/mocks/index.js +0 -5
- package/lib/state/index.d.ts +0 -1
- package/lib/state/index.js +0 -5
- package/lib/state/substates/AIAgentState.d.ts +0 -80
- package/lib/state/substates/AIAgentState.js +0 -108
- package/lib/state/substates/index.d.ts +0 -1
- package/lib/state/substates/index.js +0 -5
- package/lib/types/AIAgent.d.ts +0 -17
- package/lib/types/Types.d.ts +0 -217
- /package/lib/{components/chat → api}/handler.d.ts +0 -0
- /package/lib/{renderers/index.d.ts → api/utils.d.ts} +0 -0
- /package/lib/{renderers/index.js → api/utils.js} +0 -0
- /package/lib/{components/chat/components/elements → chat/display}/PoweredByTag.js +0 -0
- /package/lib/{components/chat/components → chat}/parts/DynamicToolPart.js +0 -0
- /package/lib/{components/chat/components → chat}/parts/ReasoningPart.d.ts +0 -0
- /package/lib/{components/chat/components → chat}/parts/TextPart.js +0 -0
- /package/lib/{components/chat/components → chat}/parts/ToolPart.d.ts +0 -0
- /package/lib/{components/chat/components → chat}/styles/streamdownStyles.js +0 -0
- /package/lib/{components/chat/components/elements → chat/tools}/ToolApprovalDialog.d.ts +0 -0
- /package/lib/{components/chat/components → context}/ContextDistribution.d.ts +0 -0
- /package/lib/{components/chat/components → context}/ContextDistribution.js +0 -0
- /package/lib/{components/chat/components → context}/ContextInspector.d.ts +0 -0
- /package/lib/{components/chat/components → context}/ContextPanel.d.ts +0 -0
- /package/lib/{components/chat/components → context}/ContextUsage.d.ts +0 -0
- /package/lib/{components/chat/components → context}/ContextUsage.js +0 -0
- /package/lib/examples/{JupyterCellExample.d.ts → CellSimpleExample.d.ts} +0 -0
- /package/lib/examples/{AgentRuntimeCustomExample.d.ts → ChatCustomExample.d.ts} +0 -0
- /package/lib/examples/{AgentRuntimeChatExample.d.ts → ChatExample.d.ts} +0 -0
- /package/lib/examples/{AgentRuntimeStandaloneExample.d.ts → ChatStandaloneExample.d.ts} +0 -0
- /package/lib/examples/{AgentRuntimeNotebookExample.d.ts → NotebookExample.d.ts} +0 -0
- /package/lib/examples/{AgentRuntimeNotebookSidebarExample.d.ts → NotebookSidebarExample.d.ts} +0 -0
- /package/lib/examples/{JupyterNotebookExample.d.ts → NotebookSimpleExample.d.ts} +0 -0
- /package/lib/examples/{stores → utils}/agents/earthquake-detector.ipynb.json +0 -0
- /package/lib/examples/{stores → utils}/agents/earthquake-detector.json +0 -0
- /package/lib/examples/{stores → utils}/agents/earthquake-detector.lexical.json +0 -0
- /package/lib/examples/{stores → utils}/agents/sales-forecaster.ipynb.json +0 -0
- /package/lib/examples/{stores → utils}/agents/sales-forecaster.json +0 -0
- /package/lib/examples/{stores → utils}/agents/sales-forecaster.lexical.json +0 -0
- /package/lib/examples/{stores → utils}/agents/social-post-generator.ipynb.json +0 -0
- /package/lib/examples/{stores → utils}/agents/social-post-generator.json +0 -0
- /package/lib/examples/{stores → utils}/agents/social-post-generator.lexical.json +0 -0
- /package/lib/examples/{stores → utils}/agents/stock-market.ipynb.json +0 -0
- /package/lib/examples/{stores → utils}/agents/stock-market.json +0 -0
- /package/lib/examples/{stores → utils}/agents/stock-market.lexical.json +0 -0
- /package/lib/examples/{stores → utils}/notebooks/IPyWidgetsExample.ipynb.json +0 -0
- /package/lib/examples/{stores → utils}/notebooks/IPyWidgetsExampleWithState.ipynb.json +0 -0
- /package/lib/examples/{stores → utils}/notebooks/Lite.ipynb.json +0 -0
- /package/lib/examples/{stores → utils}/notebooks/Matplotlib.ipynb.json +0 -0
- /package/lib/examples/{stores → utils}/notebooks/NotebookExample1.ipynb.json +0 -0
- /package/lib/examples/{stores → utils}/notebooks/NotebookOutputs.ipynb.json +0 -0
- /package/lib/examples/{stores → utils}/notebooks/NotebookToCExample.ipynb.json +0 -0
- /package/lib/examples/{stores → utils}/notebooks/OutputIPyWidgetsExample.d.ts +0 -0
- /package/lib/examples/{stores → utils}/notebooks/OutputIPyWidgetsExample.js +0 -0
- /package/lib/examples/{stores → utils}/notebooks/PyGWalker.ipynb.json +0 -0
- /package/lib/examples/{stores → utils}/themedProvider.d.ts +0 -0
- /package/lib/examples/{stores → utils}/themedProvider.js +0 -0
- /package/lib/{components/chat/inference → inference}/BaseInferenceProvider.js +0 -0
- /package/lib/{components → mcp}/McpServerManager.js +0 -0
- /package/lib/{components/chat/middleware → middleware}/MiddlewarePipeline.js +0 -0
- /package/lib/{components/chat/types/inference.js → types/a2a.js} +0 -0
- /package/lib/{components/chat/types/protocol.js → types/acp.js} +0 -0
- /package/lib/{components/sparklines/types.js → types/ag-ui.js} +0 -0
- /package/lib/{renderers/a2ui/types/index.js → types/agents-lifecycle.js} +0 -0
- /package/lib/types/{AIAgent.js → agentspecs.js} +0 -0
- /package/lib/types/{Types.js → chat.js} +0 -0
- /package/lib/{components/chat/types → types}/execution.js +0 -0
- /package/lib/{components/chat/types/extension.js → types/extensions.js} +0 -0
- /package/lib/{components/chat/types/message.js → types/messages.js} +0 -0
- /package/lib/{components/chat/types → types}/middleware.js +0 -0
- /package/lib/{components/chat/types/tool.js → types/tools.js} +0 -0
|
@@ -1,9 +1,64 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
* Supports hybrid execution (frontend + backend) with per-tool annotation.
|
|
4
|
-
*
|
|
5
|
-
* @module components/chat/types/tool
|
|
2
|
+
* Runtime binding metadata for a tool implementation.
|
|
6
3
|
*/
|
|
4
|
+
export interface ToolRuntimeSpec {
|
|
5
|
+
/** Implementation language */
|
|
6
|
+
language: 'python' | 'typescript';
|
|
7
|
+
/** Module/package containing the implementation */
|
|
8
|
+
package: string;
|
|
9
|
+
/** Callable/function name in the package */
|
|
10
|
+
method: string;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Specification for a runtime tool.
|
|
14
|
+
*/
|
|
15
|
+
export interface ToolSpec {
|
|
16
|
+
/** Unique tool identifier */
|
|
17
|
+
id: string;
|
|
18
|
+
/** Version */
|
|
19
|
+
version?: string;
|
|
20
|
+
/** Display name for the tool */
|
|
21
|
+
name: string;
|
|
22
|
+
/** Tool description */
|
|
23
|
+
description: string;
|
|
24
|
+
/** Tags for categorization */
|
|
25
|
+
tags: string[];
|
|
26
|
+
/** Whether the tool is enabled */
|
|
27
|
+
enabled: boolean;
|
|
28
|
+
/** Approval policy for this tool */
|
|
29
|
+
approval: 'auto' | 'manual';
|
|
30
|
+
/** Whether tool requires human approval before execution */
|
|
31
|
+
requiresApproval?: boolean;
|
|
32
|
+
/** Runtime binding metadata */
|
|
33
|
+
runtime: ToolRuntimeSpec;
|
|
34
|
+
/** Icon identifier */
|
|
35
|
+
icon?: string;
|
|
36
|
+
/** Emoji identifier */
|
|
37
|
+
emoji?: string;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Specification for a frontend tool set.
|
|
41
|
+
*/
|
|
42
|
+
export interface FrontendToolSpec {
|
|
43
|
+
/** Unique frontend tool identifier */
|
|
44
|
+
id: string;
|
|
45
|
+
/** Version */
|
|
46
|
+
version?: string;
|
|
47
|
+
/** Display name for the frontend tool */
|
|
48
|
+
name: string;
|
|
49
|
+
/** Frontend tool description */
|
|
50
|
+
description: string;
|
|
51
|
+
/** Tags for categorization */
|
|
52
|
+
tags: string[];
|
|
53
|
+
/** Whether the frontend tool is enabled */
|
|
54
|
+
enabled: boolean;
|
|
55
|
+
/** Which tools from the toolset to include ('all' or specific list) */
|
|
56
|
+
toolset: string;
|
|
57
|
+
/** Icon identifier */
|
|
58
|
+
icon?: string;
|
|
59
|
+
/** Emoji identifier */
|
|
60
|
+
emoji?: string;
|
|
61
|
+
}
|
|
7
62
|
import type { ReactNode } from 'react';
|
|
8
63
|
/**
|
|
9
64
|
* Tool execution location
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dynamic field definition for a trigger type.
|
|
3
|
+
*/
|
|
4
|
+
export interface TriggerField {
|
|
5
|
+
/** Field key */
|
|
6
|
+
name: string;
|
|
7
|
+
/** Human-readable label */
|
|
8
|
+
label: string;
|
|
9
|
+
/** Field type */
|
|
10
|
+
type: 'string' | 'boolean' | 'number';
|
|
11
|
+
/** Whether the field is required */
|
|
12
|
+
required: boolean;
|
|
13
|
+
/** Placeholder text */
|
|
14
|
+
placeholder?: string;
|
|
15
|
+
/** Help text */
|
|
16
|
+
help?: string;
|
|
17
|
+
/** Font family hint (e.g., 'mono') */
|
|
18
|
+
font?: string;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Trigger type specification.
|
|
22
|
+
*/
|
|
23
|
+
export interface TriggerSpec {
|
|
24
|
+
/** Unique trigger identifier */
|
|
25
|
+
id: string;
|
|
26
|
+
/** Version */
|
|
27
|
+
version?: string;
|
|
28
|
+
/** Display name */
|
|
29
|
+
name: string;
|
|
30
|
+
/** Description of the trigger */
|
|
31
|
+
description: string;
|
|
32
|
+
/** Trigger type discriminator */
|
|
33
|
+
type: 'once' | 'schedule' | 'event';
|
|
34
|
+
/** Dynamic fields for this trigger type */
|
|
35
|
+
fields?: TriggerField[];
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Trigger configuration for an agent spec.
|
|
39
|
+
*/
|
|
40
|
+
export interface AgentTriggerConfig {
|
|
41
|
+
type?: string;
|
|
42
|
+
cron?: string;
|
|
43
|
+
event_source?: string;
|
|
44
|
+
event?: string;
|
|
45
|
+
description?: string;
|
|
46
|
+
prompt?: string;
|
|
47
|
+
[key: string]: string | number | boolean | undefined;
|
|
48
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export interface AgentUsageSummary {
|
|
2
|
+
/** Agent ID */
|
|
3
|
+
agentId: string;
|
|
4
|
+
/** Total tokens (input + output) */
|
|
5
|
+
totalTokens: number;
|
|
6
|
+
/** Input tokens */
|
|
7
|
+
inputTokens: number;
|
|
8
|
+
/** Output tokens */
|
|
9
|
+
outputTokens: number;
|
|
10
|
+
/** Estimated cost in USD */
|
|
11
|
+
totalCostUsd: number;
|
|
12
|
+
/** Number of model requests */
|
|
13
|
+
requestCount: number;
|
|
14
|
+
/** Number of tool calls */
|
|
15
|
+
toolCallCount: number;
|
|
16
|
+
/** Period start */
|
|
17
|
+
periodStart: string;
|
|
18
|
+
/** Period end */
|
|
19
|
+
periodEnd: string;
|
|
20
|
+
}
|
|
21
|
+
export interface ContextUsage {
|
|
22
|
+
/** Agent ID */
|
|
23
|
+
agentId: string;
|
|
24
|
+
/** Current token count in the context window */
|
|
25
|
+
currentTokens: number;
|
|
26
|
+
/** Maximum tokens in the context window */
|
|
27
|
+
maxTokens: number;
|
|
28
|
+
/** Usage percentage (0-100) */
|
|
29
|
+
usagePercent: number;
|
|
30
|
+
/** Number of messages in context */
|
|
31
|
+
messageCount: number;
|
|
32
|
+
/** Number of archived/evicted messages */
|
|
33
|
+
archivedCount: number;
|
|
34
|
+
/** Number of auto-summarizations performed */
|
|
35
|
+
summarizationCount: number;
|
|
36
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './utils';
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utility functions and constants for ChatBase.
|
|
3
|
+
*
|
|
4
|
+
* @module chat/utils
|
|
5
|
+
*/
|
|
6
|
+
import { QueryClient } from '@tanstack/react-query';
|
|
7
|
+
import type { ChatMessage } from '../types/messages';
|
|
8
|
+
import type { ProtocolConfig } from '../types/protocol';
|
|
9
|
+
import { type BaseProtocolAdapter } from '../protocols';
|
|
10
|
+
import type { ToolCallMessage, DisplayItem } from '../types/chat';
|
|
11
|
+
/** Singleton QueryClient for ChatBase instances without external QueryClientProvider */
|
|
12
|
+
export declare const internalQueryClient: QueryClient;
|
|
13
|
+
/** Primer's default portal root ID */
|
|
14
|
+
export declare const PRIMER_PORTAL_ROOT_ID = "__primerPortalRoot__";
|
|
15
|
+
/**
|
|
16
|
+
* Check if an item is a tool call message
|
|
17
|
+
*/
|
|
18
|
+
export declare function isToolCallMessage(item: DisplayItem): item is ToolCallMessage;
|
|
19
|
+
/**
|
|
20
|
+
* Strip low-level protocol/tool-call markup from assistant text content.
|
|
21
|
+
*
|
|
22
|
+
* Some models occasionally leak internal call formats (for example,
|
|
23
|
+
* <calls>...</calls> or <tml:invoke ...>) into natural-language responses.
|
|
24
|
+
* Keep user/system text untouched and sanitize assistant-visible text only.
|
|
25
|
+
*/
|
|
26
|
+
export declare function sanitizeAssistantContent(content: string): string;
|
|
27
|
+
/**
|
|
28
|
+
* Extract text content from a ChatMessage
|
|
29
|
+
*/
|
|
30
|
+
export declare function getMessageText(message: ChatMessage): string;
|
|
31
|
+
/**
|
|
32
|
+
* Convert history messages to display items.
|
|
33
|
+
*
|
|
34
|
+
* History returns:
|
|
35
|
+
* - Assistant messages with `toolCalls` array (tool invocations)
|
|
36
|
+
* - Tool messages (role='tool') with content (tool results)
|
|
37
|
+
*
|
|
38
|
+
* For display, we need to:
|
|
39
|
+
* 1. Keep user/assistant text messages as ChatMessage
|
|
40
|
+
* 2. Convert each toolCall from assistant messages into a ToolCallMessage
|
|
41
|
+
* 3. Match tool result messages (role='tool') to their ToolCallMessage and update result
|
|
42
|
+
* 4. Filter out raw tool messages (role='tool') from display — they're merged into ToolCallMessage
|
|
43
|
+
*/
|
|
44
|
+
export declare function convertHistoryToDisplayItems(messages: ChatMessage[]): DisplayItem[];
|
|
45
|
+
/**
|
|
46
|
+
* Format token count for compact display
|
|
47
|
+
*/
|
|
48
|
+
export declare function formatTokenCount(tokens: number): string;
|
|
49
|
+
/**
|
|
50
|
+
* Derive the API base URL from a configEndpoint.
|
|
51
|
+
* configEndpoint may look like:
|
|
52
|
+
* "http://host:port/api/v1/config" (from agentRuntimeConfig)
|
|
53
|
+
* "http://host:port/api/v1/configure" (from Chat component)
|
|
54
|
+
* We strip the trailing path segment to get "http://host:port/api/v1".
|
|
55
|
+
*/
|
|
56
|
+
export declare function getApiBaseFromConfig(configEndpoint: string): string;
|
|
57
|
+
/**
|
|
58
|
+
* Create protocol adapter based on configuration
|
|
59
|
+
*/
|
|
60
|
+
export declare function createProtocolAdapter(config: ProtocolConfig): BaseProtocolAdapter | null;
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025-2026 Datalayer, Inc.
|
|
3
|
+
* Distributed under the terms of the Modified BSD License.
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Utility functions and constants for ChatBase.
|
|
7
|
+
*
|
|
8
|
+
* @module chat/utils
|
|
9
|
+
*/
|
|
10
|
+
import { QueryClient } from '@tanstack/react-query';
|
|
11
|
+
import { AGUIAdapter, A2AAdapter, VercelAIAdapter, ACPAdapter, } from '../protocols';
|
|
12
|
+
// ---------------------------------------------------------------------------
|
|
13
|
+
// Constants
|
|
14
|
+
// ---------------------------------------------------------------------------
|
|
15
|
+
/** Singleton QueryClient for ChatBase instances without external QueryClientProvider */
|
|
16
|
+
export const internalQueryClient = new QueryClient({
|
|
17
|
+
defaultOptions: {
|
|
18
|
+
queries: {
|
|
19
|
+
staleTime: 5 * 60 * 1000, // 5 minutes
|
|
20
|
+
refetchOnWindowFocus: false,
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
});
|
|
24
|
+
/** Primer's default portal root ID */
|
|
25
|
+
export const PRIMER_PORTAL_ROOT_ID = '__primerPortalRoot__';
|
|
26
|
+
// ---------------------------------------------------------------------------
|
|
27
|
+
// Type guards & helpers
|
|
28
|
+
// ---------------------------------------------------------------------------
|
|
29
|
+
/**
|
|
30
|
+
* Check if an item is a tool call message
|
|
31
|
+
*/
|
|
32
|
+
export function isToolCallMessage(item) {
|
|
33
|
+
return 'type' in item && item.type === 'tool-call';
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Strip low-level protocol/tool-call markup from assistant text content.
|
|
37
|
+
*
|
|
38
|
+
* Some models occasionally leak internal call formats (for example,
|
|
39
|
+
* <calls>...</calls> or <tml:invoke ...>) into natural-language responses.
|
|
40
|
+
* Keep user/system text untouched and sanitize assistant-visible text only.
|
|
41
|
+
*/
|
|
42
|
+
export function sanitizeAssistantContent(content) {
|
|
43
|
+
if (!content || !content.includes('<')) {
|
|
44
|
+
return content;
|
|
45
|
+
}
|
|
46
|
+
let sanitized = content;
|
|
47
|
+
// Remove complete blocks first.
|
|
48
|
+
sanitized = sanitized
|
|
49
|
+
.replace(/<\s*calls\b[\s\S]*?<\s*\/\s*calls\s*>/gi, '')
|
|
50
|
+
.replace(/<\s*(?:an:)?tml:invoke\b[\s\S]*?<\s*\/\s*(?:an:)?tml:invoke\s*>/gi, '')
|
|
51
|
+
.replace(/<\s*(?:an:)?tml:parameter\b[\s\S]*?<\s*\/\s*(?:an:)?tml:parameter\s*>/gi, '');
|
|
52
|
+
// Remove standalone/open/close tags and malformed tag fragments.
|
|
53
|
+
sanitized = sanitized
|
|
54
|
+
.replace(/<\s*\/?\s*(?:an:[a-z_]+|tml:[a-z_]+|calls)\b[^>]*>?/gi, '')
|
|
55
|
+
.replace(/<\s*\/\s*>/g, '')
|
|
56
|
+
.replace(/^[ \t]+$/gm, '')
|
|
57
|
+
.replace(/\n{3,}/g, '\n\n')
|
|
58
|
+
.trim();
|
|
59
|
+
return sanitized;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Extract text content from a ChatMessage
|
|
63
|
+
*/
|
|
64
|
+
export function getMessageText(message) {
|
|
65
|
+
const text = typeof message.content === 'string'
|
|
66
|
+
? message.content
|
|
67
|
+
: // Array of ContentPart - extract text parts
|
|
68
|
+
message.content
|
|
69
|
+
.filter((part) => part.type === 'text')
|
|
70
|
+
.map(part => part.text)
|
|
71
|
+
.join('');
|
|
72
|
+
if (message.role === 'assistant') {
|
|
73
|
+
return sanitizeAssistantContent(text);
|
|
74
|
+
}
|
|
75
|
+
return text;
|
|
76
|
+
}
|
|
77
|
+
// ---------------------------------------------------------------------------
|
|
78
|
+
// History conversion
|
|
79
|
+
// ---------------------------------------------------------------------------
|
|
80
|
+
/**
|
|
81
|
+
* Convert history messages to display items.
|
|
82
|
+
*
|
|
83
|
+
* History returns:
|
|
84
|
+
* - Assistant messages with `toolCalls` array (tool invocations)
|
|
85
|
+
* - Tool messages (role='tool') with content (tool results)
|
|
86
|
+
*
|
|
87
|
+
* For display, we need to:
|
|
88
|
+
* 1. Keep user/assistant text messages as ChatMessage
|
|
89
|
+
* 2. Convert each toolCall from assistant messages into a ToolCallMessage
|
|
90
|
+
* 3. Match tool result messages (role='tool') to their ToolCallMessage and update result
|
|
91
|
+
* 4. Filter out raw tool messages (role='tool') from display — they're merged into ToolCallMessage
|
|
92
|
+
*/
|
|
93
|
+
export function convertHistoryToDisplayItems(messages) {
|
|
94
|
+
const displayItems = [];
|
|
95
|
+
const toolCallMap = new Map();
|
|
96
|
+
// First pass: collect all tool calls and build the initial display list
|
|
97
|
+
for (const msg of messages) {
|
|
98
|
+
if (msg.role === 'tool') {
|
|
99
|
+
// Tool result messages — will be merged later
|
|
100
|
+
const toolCallId = msg.metadata?.toolCallId;
|
|
101
|
+
if (toolCallId && toolCallMap.has(toolCallId)) {
|
|
102
|
+
// Update the existing tool call with the result
|
|
103
|
+
const toolCall = toolCallMap.get(toolCallId);
|
|
104
|
+
toolCall.result = msg.content;
|
|
105
|
+
toolCall.status = 'complete';
|
|
106
|
+
}
|
|
107
|
+
// Don't add tool messages to display — they're represented by ToolCallMessage
|
|
108
|
+
continue;
|
|
109
|
+
}
|
|
110
|
+
if (msg.role === 'assistant' && msg.toolCalls && msg.toolCalls.length > 0) {
|
|
111
|
+
// Assistant message with tool calls
|
|
112
|
+
// First add any text content as a regular message
|
|
113
|
+
const rawTextContent = typeof msg.content === 'string' ? msg.content.trim() : '';
|
|
114
|
+
const textContent = sanitizeAssistantContent(rawTextContent);
|
|
115
|
+
if (textContent) {
|
|
116
|
+
displayItems.push({
|
|
117
|
+
...msg,
|
|
118
|
+
content: textContent,
|
|
119
|
+
toolCalls: undefined, // Remove toolCalls from the text message
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
// Then add each tool call as a ToolCallMessage
|
|
123
|
+
// Map from message.ts ToolCallStatus to ChatBase ToolCallStatus
|
|
124
|
+
for (const tc of msg.toolCalls) {
|
|
125
|
+
let status = 'complete';
|
|
126
|
+
if (tc.status === 'pending' || tc.status === 'awaiting-approval') {
|
|
127
|
+
status = 'inProgress';
|
|
128
|
+
}
|
|
129
|
+
else if (tc.status === 'executing') {
|
|
130
|
+
status = 'executing';
|
|
131
|
+
}
|
|
132
|
+
else if (tc.status === 'failed') {
|
|
133
|
+
status = 'error';
|
|
134
|
+
}
|
|
135
|
+
const toolCallMsg = {
|
|
136
|
+
id: `tc-${tc.toolCallId}`,
|
|
137
|
+
type: 'tool-call',
|
|
138
|
+
toolCallId: tc.toolCallId,
|
|
139
|
+
toolName: tc.toolName,
|
|
140
|
+
args: tc.args || {},
|
|
141
|
+
status,
|
|
142
|
+
result: tc.result,
|
|
143
|
+
};
|
|
144
|
+
toolCallMap.set(tc.toolCallId, toolCallMsg);
|
|
145
|
+
displayItems.push(toolCallMsg);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
else {
|
|
149
|
+
// Regular user/assistant/system message
|
|
150
|
+
displayItems.push(msg);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
return displayItems;
|
|
154
|
+
}
|
|
155
|
+
// ---------------------------------------------------------------------------
|
|
156
|
+
// Formatting
|
|
157
|
+
// ---------------------------------------------------------------------------
|
|
158
|
+
/**
|
|
159
|
+
* Format token count for compact display
|
|
160
|
+
*/
|
|
161
|
+
export function formatTokenCount(tokens) {
|
|
162
|
+
if (tokens >= 1_000_000)
|
|
163
|
+
return `${(tokens / 1_000_000).toFixed(1)}M`;
|
|
164
|
+
if (tokens >= 1_000)
|
|
165
|
+
return `${(tokens / 1_000).toFixed(1)}K`;
|
|
166
|
+
return tokens.toString();
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Derive the API base URL from a configEndpoint.
|
|
170
|
+
* configEndpoint may look like:
|
|
171
|
+
* "http://host:port/api/v1/config" (from agentRuntimeConfig)
|
|
172
|
+
* "http://host:port/api/v1/configure" (from Chat component)
|
|
173
|
+
* We strip the trailing path segment to get "http://host:port/api/v1".
|
|
174
|
+
*/
|
|
175
|
+
export function getApiBaseFromConfig(configEndpoint) {
|
|
176
|
+
return configEndpoint.replace(/\/(config|configure)\/?$/, '');
|
|
177
|
+
}
|
|
178
|
+
// ---------------------------------------------------------------------------
|
|
179
|
+
// Protocol adapter factory
|
|
180
|
+
// ---------------------------------------------------------------------------
|
|
181
|
+
/**
|
|
182
|
+
* Create protocol adapter based on configuration
|
|
183
|
+
*/
|
|
184
|
+
export function createProtocolAdapter(config) {
|
|
185
|
+
const adapterConfig = {
|
|
186
|
+
protocol: config.type,
|
|
187
|
+
baseUrl: config.endpoint,
|
|
188
|
+
authToken: config.authToken,
|
|
189
|
+
agentId: config.agentId,
|
|
190
|
+
...config.options,
|
|
191
|
+
};
|
|
192
|
+
switch (config.type) {
|
|
193
|
+
case 'ag-ui':
|
|
194
|
+
return new AGUIAdapter(adapterConfig);
|
|
195
|
+
case 'a2a':
|
|
196
|
+
return new A2AAdapter(adapterConfig);
|
|
197
|
+
case 'vercel-ai':
|
|
198
|
+
return new VercelAIAdapter(adapterConfig);
|
|
199
|
+
case 'acp':
|
|
200
|
+
return new ACPAdapter(adapterConfig);
|
|
201
|
+
default:
|
|
202
|
+
console.warn(`[ChatBase] Unknown protocol type: ${config.type}`);
|
|
203
|
+
return null;
|
|
204
|
+
}
|
|
205
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@datalayer/agent-runtimes",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.3",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"workspaces": [
|
|
6
6
|
".",
|
|
@@ -89,7 +89,7 @@
|
|
|
89
89
|
"preview": "vite preview",
|
|
90
90
|
"rebuild:fresh": "npm run create:patches && npm install && npm run build && npm run clean:cache",
|
|
91
91
|
"server": "python -m agent_runtimes serve",
|
|
92
|
-
"server:start": "PYTHONIOENCODING=utf-8 python -m agent_runtimes serve --port 8765 --
|
|
92
|
+
"server:start": "PYTHONIOENCODING=utf-8 AGENT_RUNTIMES_DEBUG=false AGENT_RUNTIMES_LOG_LEVEL=info python -m agent_runtimes serve --port 8765 --log-level info",
|
|
93
93
|
"start": "vite",
|
|
94
94
|
"start:acp": "run-p server:start start:acp:vite",
|
|
95
95
|
"start:acp:prod": "run-p server start:acp:vite",
|
|
@@ -120,18 +120,18 @@
|
|
|
120
120
|
},
|
|
121
121
|
"dependencies": {
|
|
122
122
|
"@a2a-js/sdk": "^0.3.6",
|
|
123
|
-
"@a2ui/
|
|
123
|
+
"@a2ui/react": "^0.8.0",
|
|
124
124
|
"@ag-ui/client": "^0.0.42",
|
|
125
125
|
"@ag-ui/core": "^0.0.42",
|
|
126
126
|
"@ag-ui/encoder": "^0.0.42",
|
|
127
127
|
"@ag-ui/proto": "^0.0.42",
|
|
128
128
|
"@agentclientprotocol/sdk": "^0.8.0",
|
|
129
|
-
"@ai-sdk/react": "
|
|
129
|
+
"@ai-sdk/react": "^4.0.0-beta.33",
|
|
130
130
|
"@anthropic-ai/sdk": "^0.52.0",
|
|
131
|
-
"@datalayer/core": "^1.0.
|
|
131
|
+
"@datalayer/core": "^1.0.13",
|
|
132
132
|
"@datalayer/icons-react": "^1.0.6",
|
|
133
|
-
"@datalayer/jupyter-lexical": "^1.0.
|
|
134
|
-
"@datalayer/jupyter-react": "^2.0.
|
|
133
|
+
"@datalayer/jupyter-lexical": "^1.0.16",
|
|
134
|
+
"@datalayer/jupyter-react": "^2.0.7",
|
|
135
135
|
"@datalayer/primer-addons": "^1.0.10",
|
|
136
136
|
"@datalayer/primer-rjsf": "^1.0.1",
|
|
137
137
|
"@excalidraw/excalidraw": "^0.18.0",
|
|
@@ -193,7 +193,7 @@
|
|
|
193
193
|
"@tanstack/react-query": "^5.90.6",
|
|
194
194
|
"@toon-format/toon": "^1.3.0",
|
|
195
195
|
"@xyflow/react": "^12.10.0",
|
|
196
|
-
"ai": "6.0.
|
|
196
|
+
"ai": "^6.0.134",
|
|
197
197
|
"ansi-to-html": "^0.7.2",
|
|
198
198
|
"axios": "^1.7.7",
|
|
199
199
|
"boring-avatars": "^2.0.1",
|
|
@@ -257,12 +257,11 @@
|
|
|
257
257
|
"@storybook/builder-vite": "^9.1.1",
|
|
258
258
|
"@storybook/react-vite": "^9.1.1",
|
|
259
259
|
"@tailwindcss/postcss": "^4.1.16",
|
|
260
|
-
"@testing-library/react": "^16.3.0",
|
|
261
260
|
"@testing-library/jest-dom": "^6.4.8",
|
|
261
|
+
"@testing-library/react": "^16.3.0",
|
|
262
262
|
"@types/node": "^20.11.0",
|
|
263
263
|
"@types/react": "18.3.20",
|
|
264
264
|
"@types/react-dom": "18.3.6",
|
|
265
|
-
"@types/react-syntax-highlighter": "^15.5.13",
|
|
266
265
|
"@vitejs/plugin-react": "^4.5.2",
|
|
267
266
|
"@vitest/browser": "^3.2.4",
|
|
268
267
|
"@vitest/coverage-v8": "^3.2.4",
|
|
@@ -302,7 +301,7 @@
|
|
|
302
301
|
"vitest": "^3.2.4"
|
|
303
302
|
},
|
|
304
303
|
"resolutions": {
|
|
305
|
-
"@ai-sdk/react": "
|
|
304
|
+
"@ai-sdk/react": "^4.0.0-beta.33",
|
|
306
305
|
"@microsoft/fast-colors": "5.3.1",
|
|
307
306
|
"@microsoft/fast-components": "2.30.6",
|
|
308
307
|
"@microsoft/fast-element": "1.13.0",
|
|
@@ -312,14 +311,14 @@
|
|
|
312
311
|
"@microsoft/load-themed-styles": "1.10.295",
|
|
313
312
|
"@types/react": "18.3.20",
|
|
314
313
|
"@types/react-dom": "18.3.6",
|
|
315
|
-
"ai": "6.0.
|
|
314
|
+
"ai": "^6.0.134",
|
|
316
315
|
"pyodide": "0.28.0",
|
|
317
316
|
"react": "18.3.1",
|
|
318
317
|
"react-dom": "18.3.1",
|
|
319
318
|
"typescript": "^5.8.3"
|
|
320
319
|
},
|
|
321
320
|
"overrides": {
|
|
322
|
-
"@ai-sdk/react": "
|
|
321
|
+
"@ai-sdk/react": "^4.0.0-beta.33",
|
|
323
322
|
"@microsoft/fast-colors": "5.3.1",
|
|
324
323
|
"@microsoft/fast-components": "2.30.6",
|
|
325
324
|
"@microsoft/fast-element": "1.13.0",
|
|
@@ -329,7 +328,7 @@
|
|
|
329
328
|
"@microsoft/load-themed-styles": "1.10.295",
|
|
330
329
|
"@types/react": "18.3.20",
|
|
331
330
|
"@types/react-dom": "18.3.6",
|
|
332
|
-
"ai": "6.0.
|
|
331
|
+
"ai": "^6.0.134",
|
|
333
332
|
"pyodide": "0.28.0",
|
|
334
333
|
"react": "18.3.1",
|
|
335
334
|
"react-dom": "18.3.1",
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|