@datalayer/agent-runtimes 1.0.1 → 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 +25 -16
- 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 +37 -12
- package/lib/hooks/index.js +37 -12
- 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/useAgentsCatalog.d.ts +25 -0
- package/lib/hooks/useAgentsCatalog.js +28 -0
- 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 +2 -3
- package/lib/{components → mcp}/McpServerManager.js +1 -1
- 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/agents.js +2638 -0
- package/lib/specs/agents/index.js +14 -7
- 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 -10
- package/lib/specs/mcpServers.js +95 -25
- package/lib/specs/memory.d.ts +34 -0
- package/lib/specs/memory.js +99 -0
- package/lib/specs/models.d.ts +22 -35
- package/lib/specs/models.js +64 -44
- 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 +2 -2
- package/lib/{components/chat/store → stores}/conversationStore.js +3 -3
- 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} +60 -100
- 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 +464 -58
- 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 -2240
- 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/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 -151
- 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 -308
- 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 -282
- package/lib/specs/agents/datalayer-ai/index.d.ts +0 -1
- package/lib/specs/agents/datalayer-ai/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 -189
- /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/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
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agents mixin providing durable agent management functionality.
|
|
3
|
+
*
|
|
4
|
+
* Wraps the ai-agents API functions into the DatalayerClient mixin pattern,
|
|
5
|
+
* providing methods for listing, inspecting, pausing, resuming, and monitoring
|
|
6
|
+
* durable agents, their checkpoints, tool approvals, notifications, evals, and costs.
|
|
7
|
+
*
|
|
8
|
+
* This mixin is designed to be composed into a DatalayerClient instance from
|
|
9
|
+
* `@datalayer/core`. Import and compose it alongside the other core mixins.
|
|
10
|
+
*
|
|
11
|
+
* @module client/AgentsMixin
|
|
12
|
+
*/
|
|
13
|
+
import type { Constructor } from '@datalayer/core/lib/client/utils/mixins';
|
|
14
|
+
import type { AgentEvent, CreateAgentEventRequest, GetAgentEventResponse, ListAgentEventsParams, ListAgentEventsResponse, UpdateAgentEventRequest, RunningAgent, AgentUsageSummary, ConversationCheckpoint, AgentNotification, NotificationFilters, OutputArtifact, EvalReport, RunEvalsRequest, ContextUsage, CostUsage } from '../types';
|
|
15
|
+
import type { ToolApproval, ToolApprovalFilters } from '../types/tool-approvals';
|
|
16
|
+
/** Agents mixin providing durable agent management. */
|
|
17
|
+
export declare function AgentsMixin<TBase extends Constructor>(Base: TBase): {
|
|
18
|
+
new (...args: any[]): {
|
|
19
|
+
/**
|
|
20
|
+
* List all running agents across runtimes.
|
|
21
|
+
* @returns Array of running agent summaries
|
|
22
|
+
*/
|
|
23
|
+
getRunningAgents(): Promise<RunningAgent[]>;
|
|
24
|
+
/**
|
|
25
|
+
* Get the status of a specific agent.
|
|
26
|
+
* @param podName - Pod name hosting the agent
|
|
27
|
+
* @param agentId - Optional agent ID within the pod
|
|
28
|
+
* @returns Detailed agent status
|
|
29
|
+
*/
|
|
30
|
+
getAgentStatus(podName: string, agentId?: string): Promise<RunningAgent>;
|
|
31
|
+
/**
|
|
32
|
+
* Pause a running agent (light checkpoint by default, CRIU optional).
|
|
33
|
+
* @param podName - Pod name hosting the agent
|
|
34
|
+
*/
|
|
35
|
+
pauseAgent(podName: string): Promise<void>;
|
|
36
|
+
/**
|
|
37
|
+
* Resume a paused/checkpointed agent.
|
|
38
|
+
* @param podName - Pod name hosting the agent
|
|
39
|
+
*/
|
|
40
|
+
resumeAgent(podName: string): Promise<void>;
|
|
41
|
+
/**
|
|
42
|
+
* Get conversation checkpoints for an agent.
|
|
43
|
+
* @param podName - Pod name
|
|
44
|
+
* @param agentId - Optional agent ID
|
|
45
|
+
* @returns Array of checkpoints
|
|
46
|
+
*/
|
|
47
|
+
getAgentCheckpoints(podName: string, agentId?: string): Promise<ConversationCheckpoint[]>;
|
|
48
|
+
/**
|
|
49
|
+
* Get usage summary for an agent.
|
|
50
|
+
* @param podName - Pod name
|
|
51
|
+
* @param agentId - Optional agent ID
|
|
52
|
+
* @returns Usage summary including tokens, cost, iterations
|
|
53
|
+
*/
|
|
54
|
+
getAgentUsage(podName: string, agentId?: string): Promise<AgentUsageSummary>;
|
|
55
|
+
/**
|
|
56
|
+
* List tool approval requests, optionally filtered.
|
|
57
|
+
* @param filters - Optional filters (status, agentId)
|
|
58
|
+
* @returns Array of tool approval records
|
|
59
|
+
*/
|
|
60
|
+
getToolApprovals(filters?: ToolApprovalFilters): Promise<ToolApproval[]>;
|
|
61
|
+
/**
|
|
62
|
+
* Approve a tool execution request.
|
|
63
|
+
* @param approvalId - ID of the approval to approve
|
|
64
|
+
*/
|
|
65
|
+
approveToolRequest(approvalId: string): Promise<void>;
|
|
66
|
+
/**
|
|
67
|
+
* Reject a tool execution request.
|
|
68
|
+
* @param approvalId - ID of the approval to reject
|
|
69
|
+
* @param reason - Optional rejection reason
|
|
70
|
+
*/
|
|
71
|
+
rejectToolRequest(approvalId: string, reason?: string): Promise<void>;
|
|
72
|
+
/**
|
|
73
|
+
* List notifications, optionally filtered.
|
|
74
|
+
* @param filters - Optional filters (level, read status)
|
|
75
|
+
* @returns Array of notifications
|
|
76
|
+
*/
|
|
77
|
+
getNotifications(filters?: NotificationFilters): Promise<AgentNotification[]>;
|
|
78
|
+
/**
|
|
79
|
+
* Mark a single notification as read.
|
|
80
|
+
* @param notificationId - ID of the notification
|
|
81
|
+
*/
|
|
82
|
+
markNotificationRead(notificationId: string): Promise<void>;
|
|
83
|
+
/**
|
|
84
|
+
* Mark all notifications as read.
|
|
85
|
+
*/
|
|
86
|
+
markAllNotificationsRead(): Promise<void>;
|
|
87
|
+
/**
|
|
88
|
+
* Create an event for an agent.
|
|
89
|
+
* @param data - Event payload
|
|
90
|
+
* @returns Created event
|
|
91
|
+
*/
|
|
92
|
+
createEvent(data: CreateAgentEventRequest): Promise<{
|
|
93
|
+
success: boolean;
|
|
94
|
+
event: AgentEvent;
|
|
95
|
+
}>;
|
|
96
|
+
/**
|
|
97
|
+
* List events with optional filters.
|
|
98
|
+
* @param params - Optional list filters
|
|
99
|
+
* @returns Paginated events response
|
|
100
|
+
*/
|
|
101
|
+
listEvents(agentId: string, params?: Omit<ListAgentEventsParams, "agent_id">): Promise<ListAgentEventsResponse>;
|
|
102
|
+
/**
|
|
103
|
+
* Get a single event by identifier.
|
|
104
|
+
* @param eventId - Event identifier
|
|
105
|
+
* @returns Event response
|
|
106
|
+
*/
|
|
107
|
+
getEvent(agentId: string, eventId: string): Promise<GetAgentEventResponse>;
|
|
108
|
+
/**
|
|
109
|
+
* Update an event.
|
|
110
|
+
* @param eventId - Event identifier
|
|
111
|
+
* @param data - Event patch payload
|
|
112
|
+
* @returns Updated event response
|
|
113
|
+
*/
|
|
114
|
+
updateEvent(agentId: string, eventId: string, data: UpdateAgentEventRequest): Promise<GetAgentEventResponse>;
|
|
115
|
+
/**
|
|
116
|
+
* List output artifacts for an agent.
|
|
117
|
+
* @param agentId - Agent identifier
|
|
118
|
+
* @returns Array of output artifacts
|
|
119
|
+
*/
|
|
120
|
+
getAgentOutputs(agentId: string): Promise<OutputArtifact[]>;
|
|
121
|
+
/**
|
|
122
|
+
* Get a specific output artifact.
|
|
123
|
+
* @param agentId - Agent identifier
|
|
124
|
+
* @param outputId - Output artifact ID
|
|
125
|
+
* @returns Output artifact details
|
|
126
|
+
*/
|
|
127
|
+
getAgentOutput(agentId: string, outputId: string): Promise<OutputArtifact>;
|
|
128
|
+
/**
|
|
129
|
+
* Generate a new output artifact (e.g. PDF).
|
|
130
|
+
* @param agentId - Agent identifier
|
|
131
|
+
* @param format - Output format
|
|
132
|
+
* @param options - Generation options
|
|
133
|
+
* @returns Generated output artifact
|
|
134
|
+
*/
|
|
135
|
+
generateAgentOutput(agentId: string, format: string, options?: Record<string, any>): Promise<OutputArtifact>;
|
|
136
|
+
/**
|
|
137
|
+
* Run evaluations on an agent.
|
|
138
|
+
* @param agentId - Agent identifier
|
|
139
|
+
* @param request - Eval run request parameters
|
|
140
|
+
* @returns Eval report
|
|
141
|
+
*/
|
|
142
|
+
runEvals(agentId: string, request: RunEvalsRequest): Promise<EvalReport>;
|
|
143
|
+
/**
|
|
144
|
+
* List eval reports for an agent.
|
|
145
|
+
* @param agentId - Agent identifier
|
|
146
|
+
* @returns Array of eval reports
|
|
147
|
+
*/
|
|
148
|
+
listEvals(agentId: string): Promise<EvalReport[]>;
|
|
149
|
+
/**
|
|
150
|
+
* Get a specific eval report.
|
|
151
|
+
* @param agentId - Agent identifier
|
|
152
|
+
* @param evalId - Eval report ID
|
|
153
|
+
* @returns Eval report details
|
|
154
|
+
*/
|
|
155
|
+
getEval(agentId: string, evalId: string): Promise<EvalReport>;
|
|
156
|
+
/**
|
|
157
|
+
* Get context window usage for an agent.
|
|
158
|
+
* @param agentId - Agent identifier
|
|
159
|
+
* @returns Context usage details
|
|
160
|
+
*/
|
|
161
|
+
getContextUsage(agentId: string): Promise<ContextUsage>;
|
|
162
|
+
/**
|
|
163
|
+
* Get cost usage for an agent.
|
|
164
|
+
* @param agentId - Agent identifier
|
|
165
|
+
* @returns Cost usage including per-model breakdown
|
|
166
|
+
*/
|
|
167
|
+
getCostUsage(agentId: string): Promise<CostUsage>;
|
|
168
|
+
};
|
|
169
|
+
} & TBase;
|
|
@@ -0,0 +1,279 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025-2026 Datalayer, Inc.
|
|
3
|
+
* Distributed under the terms of the Modified BSD License.
|
|
4
|
+
*/
|
|
5
|
+
import * as agents from '../api/agents';
|
|
6
|
+
import * as toolApprovals from '../api/tool-approvals';
|
|
7
|
+
import * as notifications from '../api/notifications';
|
|
8
|
+
import * as events from '../api/events';
|
|
9
|
+
import * as output from '../api/output';
|
|
10
|
+
import * as evals from '../api/evals';
|
|
11
|
+
import * as context from '../api/context';
|
|
12
|
+
/** Agents mixin providing durable agent management. */
|
|
13
|
+
export function AgentsMixin(Base) {
|
|
14
|
+
return class extends Base {
|
|
15
|
+
// ========================================================================
|
|
16
|
+
// Running Agents
|
|
17
|
+
// ========================================================================
|
|
18
|
+
/**
|
|
19
|
+
* List all running agents across runtimes.
|
|
20
|
+
* @returns Array of running agent summaries
|
|
21
|
+
*/
|
|
22
|
+
async getRunningAgents() {
|
|
23
|
+
const token = this.getToken();
|
|
24
|
+
const baseUrl = this.getIamRunUrl();
|
|
25
|
+
return agents.getRunningAgents(token, baseUrl);
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Get the status of a specific agent.
|
|
29
|
+
* @param podName - Pod name hosting the agent
|
|
30
|
+
* @param agentId - Optional agent ID within the pod
|
|
31
|
+
* @returns Detailed agent status
|
|
32
|
+
*/
|
|
33
|
+
async getAgentStatus(podName, agentId) {
|
|
34
|
+
const token = this.getToken();
|
|
35
|
+
const baseUrl = this.getIamRunUrl();
|
|
36
|
+
return agents.getAgentStatus(token, podName, agentId, baseUrl);
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Pause a running agent (light checkpoint by default, CRIU optional).
|
|
40
|
+
* @param podName - Pod name hosting the agent
|
|
41
|
+
*/
|
|
42
|
+
async pauseAgent(podName) {
|
|
43
|
+
const token = this.getToken();
|
|
44
|
+
const baseUrl = this.getIamRunUrl();
|
|
45
|
+
return agents.pauseAgent(token, podName, baseUrl);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Resume a paused/checkpointed agent.
|
|
49
|
+
* @param podName - Pod name hosting the agent
|
|
50
|
+
*/
|
|
51
|
+
async resumeAgent(podName) {
|
|
52
|
+
const token = this.getToken();
|
|
53
|
+
const baseUrl = this.getIamRunUrl();
|
|
54
|
+
return agents.resumeAgent(token, podName, baseUrl);
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Get conversation checkpoints for an agent.
|
|
58
|
+
* @param podName - Pod name
|
|
59
|
+
* @param agentId - Optional agent ID
|
|
60
|
+
* @returns Array of checkpoints
|
|
61
|
+
*/
|
|
62
|
+
async getAgentCheckpoints(podName, agentId) {
|
|
63
|
+
const token = this.getToken();
|
|
64
|
+
const baseUrl = this.getIamRunUrl();
|
|
65
|
+
return agents.getAgentCheckpoints(token, podName, agentId, baseUrl);
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Get usage summary for an agent.
|
|
69
|
+
* @param podName - Pod name
|
|
70
|
+
* @param agentId - Optional agent ID
|
|
71
|
+
* @returns Usage summary including tokens, cost, iterations
|
|
72
|
+
*/
|
|
73
|
+
async getAgentUsage(podName, agentId) {
|
|
74
|
+
const token = this.getToken();
|
|
75
|
+
const baseUrl = this.getIamRunUrl();
|
|
76
|
+
return agents.getAgentUsage(token, podName, agentId, baseUrl);
|
|
77
|
+
}
|
|
78
|
+
// ========================================================================
|
|
79
|
+
// Tool Approvals
|
|
80
|
+
// ========================================================================
|
|
81
|
+
/**
|
|
82
|
+
* List tool approval requests, optionally filtered.
|
|
83
|
+
* @param filters - Optional filters (status, agentId)
|
|
84
|
+
* @returns Array of tool approval records
|
|
85
|
+
*/
|
|
86
|
+
async getToolApprovals(filters) {
|
|
87
|
+
const token = this.getToken();
|
|
88
|
+
const baseUrl = this.getIamRunUrl();
|
|
89
|
+
return toolApprovals.getToolApprovals(token, filters, baseUrl);
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Approve a tool execution request.
|
|
93
|
+
* @param approvalId - ID of the approval to approve
|
|
94
|
+
*/
|
|
95
|
+
async approveToolRequest(approvalId) {
|
|
96
|
+
const token = this.getToken();
|
|
97
|
+
const baseUrl = this.getIamRunUrl();
|
|
98
|
+
return toolApprovals.approveToolRequest(token, approvalId, baseUrl);
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Reject a tool execution request.
|
|
102
|
+
* @param approvalId - ID of the approval to reject
|
|
103
|
+
* @param reason - Optional rejection reason
|
|
104
|
+
*/
|
|
105
|
+
async rejectToolRequest(approvalId, reason) {
|
|
106
|
+
const token = this.getToken();
|
|
107
|
+
const baseUrl = this.getIamRunUrl();
|
|
108
|
+
return toolApprovals.rejectToolRequest(token, approvalId, reason, baseUrl);
|
|
109
|
+
}
|
|
110
|
+
// ========================================================================
|
|
111
|
+
// Notifications
|
|
112
|
+
// ========================================================================
|
|
113
|
+
/**
|
|
114
|
+
* List notifications, optionally filtered.
|
|
115
|
+
* @param filters - Optional filters (level, read status)
|
|
116
|
+
* @returns Array of notifications
|
|
117
|
+
*/
|
|
118
|
+
async getNotifications(filters) {
|
|
119
|
+
const token = this.getToken();
|
|
120
|
+
const baseUrl = this.getIamRunUrl();
|
|
121
|
+
return notifications.getNotifications(token, filters, baseUrl);
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Mark a single notification as read.
|
|
125
|
+
* @param notificationId - ID of the notification
|
|
126
|
+
*/
|
|
127
|
+
async markNotificationRead(notificationId) {
|
|
128
|
+
const token = this.getToken();
|
|
129
|
+
const baseUrl = this.getIamRunUrl();
|
|
130
|
+
return notifications.markNotificationRead(token, notificationId, baseUrl);
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Mark all notifications as read.
|
|
134
|
+
*/
|
|
135
|
+
async markAllNotificationsRead() {
|
|
136
|
+
const token = this.getToken();
|
|
137
|
+
const baseUrl = this.getIamRunUrl();
|
|
138
|
+
return notifications.markAllRead(token, undefined, baseUrl);
|
|
139
|
+
}
|
|
140
|
+
// ========================================================================
|
|
141
|
+
// Events
|
|
142
|
+
// ========================================================================
|
|
143
|
+
/**
|
|
144
|
+
* Create an event for an agent.
|
|
145
|
+
* @param data - Event payload
|
|
146
|
+
* @returns Created event
|
|
147
|
+
*/
|
|
148
|
+
async createEvent(data) {
|
|
149
|
+
const token = this.getToken();
|
|
150
|
+
const baseUrl = this.getIamRunUrl();
|
|
151
|
+
return events.createEvent(token, data, baseUrl);
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* List events with optional filters.
|
|
155
|
+
* @param params - Optional list filters
|
|
156
|
+
* @returns Paginated events response
|
|
157
|
+
*/
|
|
158
|
+
async listEvents(agentId, params = {}) {
|
|
159
|
+
const token = this.getToken();
|
|
160
|
+
const baseUrl = this.getIamRunUrl();
|
|
161
|
+
return events.listEvents(token, agentId, params, baseUrl);
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Get a single event by identifier.
|
|
165
|
+
* @param eventId - Event identifier
|
|
166
|
+
* @returns Event response
|
|
167
|
+
*/
|
|
168
|
+
async getEvent(agentId, eventId) {
|
|
169
|
+
const token = this.getToken();
|
|
170
|
+
const baseUrl = this.getIamRunUrl();
|
|
171
|
+
return events.getEvent(token, agentId, eventId, baseUrl);
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Update an event.
|
|
175
|
+
* @param eventId - Event identifier
|
|
176
|
+
* @param data - Event patch payload
|
|
177
|
+
* @returns Updated event response
|
|
178
|
+
*/
|
|
179
|
+
async updateEvent(agentId, eventId, data) {
|
|
180
|
+
const token = this.getToken();
|
|
181
|
+
const baseUrl = this.getIamRunUrl();
|
|
182
|
+
return events.updateEvent(token, agentId, eventId, data, baseUrl);
|
|
183
|
+
}
|
|
184
|
+
// ========================================================================
|
|
185
|
+
// Output
|
|
186
|
+
// ========================================================================
|
|
187
|
+
/**
|
|
188
|
+
* List output artifacts for an agent.
|
|
189
|
+
* @param agentId - Agent identifier
|
|
190
|
+
* @returns Array of output artifacts
|
|
191
|
+
*/
|
|
192
|
+
async getAgentOutputs(agentId) {
|
|
193
|
+
const token = this.getToken();
|
|
194
|
+
const baseUrl = this.getIamRunUrl();
|
|
195
|
+
return output.getAgentOutputs(token, agentId, baseUrl);
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* Get a specific output artifact.
|
|
199
|
+
* @param agentId - Agent identifier
|
|
200
|
+
* @param outputId - Output artifact ID
|
|
201
|
+
* @returns Output artifact details
|
|
202
|
+
*/
|
|
203
|
+
async getAgentOutput(agentId, outputId) {
|
|
204
|
+
const token = this.getToken();
|
|
205
|
+
const baseUrl = this.getIamRunUrl();
|
|
206
|
+
return output.getAgentOutput(token, agentId, outputId, baseUrl);
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Generate a new output artifact (e.g. PDF).
|
|
210
|
+
* @param agentId - Agent identifier
|
|
211
|
+
* @param format - Output format
|
|
212
|
+
* @param options - Generation options
|
|
213
|
+
* @returns Generated output artifact
|
|
214
|
+
*/
|
|
215
|
+
async generateAgentOutput(agentId, format, options) {
|
|
216
|
+
const token = this.getToken();
|
|
217
|
+
const baseUrl = this.getIamRunUrl();
|
|
218
|
+
return output.generateAgentOutput(token, agentId, format, options, baseUrl);
|
|
219
|
+
}
|
|
220
|
+
// ========================================================================
|
|
221
|
+
// Evals
|
|
222
|
+
// ========================================================================
|
|
223
|
+
/**
|
|
224
|
+
* Run evaluations on an agent.
|
|
225
|
+
* @param agentId - Agent identifier
|
|
226
|
+
* @param request - Eval run request parameters
|
|
227
|
+
* @returns Eval report
|
|
228
|
+
*/
|
|
229
|
+
async runEvals(agentId, request) {
|
|
230
|
+
const token = this.getToken();
|
|
231
|
+
const baseUrl = this.getIamRunUrl();
|
|
232
|
+
return evals.runEvals(token, agentId, request, baseUrl);
|
|
233
|
+
}
|
|
234
|
+
/**
|
|
235
|
+
* List eval reports for an agent.
|
|
236
|
+
* @param agentId - Agent identifier
|
|
237
|
+
* @returns Array of eval reports
|
|
238
|
+
*/
|
|
239
|
+
async listEvals(agentId) {
|
|
240
|
+
const token = this.getToken();
|
|
241
|
+
const baseUrl = this.getIamRunUrl();
|
|
242
|
+
return evals.listEvals(token, agentId, baseUrl);
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Get a specific eval report.
|
|
246
|
+
* @param agentId - Agent identifier
|
|
247
|
+
* @param evalId - Eval report ID
|
|
248
|
+
* @returns Eval report details
|
|
249
|
+
*/
|
|
250
|
+
async getEval(agentId, evalId) {
|
|
251
|
+
const token = this.getToken();
|
|
252
|
+
const baseUrl = this.getIamRunUrl();
|
|
253
|
+
return evals.getEval(token, agentId, evalId, baseUrl);
|
|
254
|
+
}
|
|
255
|
+
// ========================================================================
|
|
256
|
+
// Context & Cost
|
|
257
|
+
// ========================================================================
|
|
258
|
+
/**
|
|
259
|
+
* Get context window usage for an agent.
|
|
260
|
+
* @param agentId - Agent identifier
|
|
261
|
+
* @returns Context usage details
|
|
262
|
+
*/
|
|
263
|
+
async getContextUsage(agentId) {
|
|
264
|
+
const token = this.getToken();
|
|
265
|
+
const baseUrl = this.getIamRunUrl();
|
|
266
|
+
return context.getContextUsage(token, agentId, baseUrl);
|
|
267
|
+
}
|
|
268
|
+
/**
|
|
269
|
+
* Get cost usage for an agent.
|
|
270
|
+
* @param agentId - Agent identifier
|
|
271
|
+
* @returns Cost usage including per-model breakdown
|
|
272
|
+
*/
|
|
273
|
+
async getCostUsage(agentId) {
|
|
274
|
+
const token = this.getToken();
|
|
275
|
+
const baseUrl = this.getIamRunUrl();
|
|
276
|
+
return context.getCostUsage(token, agentId, baseUrl);
|
|
277
|
+
}
|
|
278
|
+
};
|
|
279
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export interface NotificationEventCardProps {
|
|
2
|
+
event: any;
|
|
3
|
+
onToggleRead: (event: any) => void;
|
|
4
|
+
onDelete: (event: any) => void;
|
|
5
|
+
onOpenAgent?: (agentId: string) => void;
|
|
6
|
+
}
|
|
7
|
+
export declare function NotificationEventCard({ event, onToggleRead, onDelete, onOpenAgent, }: NotificationEventCardProps): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export default NotificationEventCard;
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright (c) 2025-2026 Datalayer, Inc.
|
|
4
|
+
* Distributed under the terms of the Modified BSD License.
|
|
5
|
+
*/
|
|
6
|
+
import { Button, Label, Text, Truncate } from '@primer/react';
|
|
7
|
+
import { Box } from '@datalayer/primer-addons';
|
|
8
|
+
import { DownloadIcon, EyeClosedIcon, EyeIcon, TrashIcon, } from '@primer/octicons-react';
|
|
9
|
+
import { createMarkdownDownloadPayload, downloadTextPayload, formatRelativeTime, } from '@datalayer/core/lib/utils';
|
|
10
|
+
import { Streamdown } from 'streamdown';
|
|
11
|
+
import { streamdownMarkdownStyles } from '../chat/styles/streamdownStyles';
|
|
12
|
+
const eventStartedAt = (evt) => {
|
|
13
|
+
const startedAt = evt?.started_at || evt?.payload?.started_at;
|
|
14
|
+
return typeof startedAt === 'string' && startedAt ? startedAt : null;
|
|
15
|
+
};
|
|
16
|
+
const eventEndedAt = (evt) => {
|
|
17
|
+
const endedAt = evt?.ended_at || evt?.payload?.ended_at;
|
|
18
|
+
return typeof endedAt === 'string' && endedAt ? endedAt : null;
|
|
19
|
+
};
|
|
20
|
+
const isRunningEvent = (evt) => {
|
|
21
|
+
const status = String(evt?.status ?? '').toLowerCase();
|
|
22
|
+
return evt?.kind === 'agent-started' && status === 'running';
|
|
23
|
+
};
|
|
24
|
+
export function NotificationEventCard({ event, onToggleRead, onDelete, onOpenAgent, }) {
|
|
25
|
+
const startedAt = eventStartedAt(event);
|
|
26
|
+
const endedAt = eventEndedAt(event);
|
|
27
|
+
const running = isRunningEvent(event);
|
|
28
|
+
const outputText = event.kind === 'agent-ended' && event.payload?.outputs
|
|
29
|
+
? String(event.payload.outputs)
|
|
30
|
+
: null;
|
|
31
|
+
const runtimeId = String(event?.agent_id ||
|
|
32
|
+
event?.runtime_id ||
|
|
33
|
+
event?.payload?.runtime_id ||
|
|
34
|
+
event?.payload?.agent_id ||
|
|
35
|
+
'runtime');
|
|
36
|
+
const detailEntries = [];
|
|
37
|
+
const detailLineSx = { fontSize: 0, overflowWrap: 'anywhere' };
|
|
38
|
+
const detailLabelSx = { color: 'fg.muted' };
|
|
39
|
+
const detailValueSx = { color: 'fg.default' };
|
|
40
|
+
Object.entries(event || {}).forEach(([key, value]) => {
|
|
41
|
+
if (key === 'payload' || key === 'outputs') {
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
if (value === undefined || value === null || value === '') {
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
if (typeof value === 'object') {
|
|
48
|
+
detailEntries.push({ label: key, value: JSON.stringify(value, null, 2) });
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
detailEntries.push({ label: key, value: String(value) });
|
|
52
|
+
});
|
|
53
|
+
Object.entries(event?.payload || {}).forEach(([key, value]) => {
|
|
54
|
+
if (key === 'outputs') {
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
if (value === undefined || value === null || value === '') {
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
if (typeof value === 'object') {
|
|
61
|
+
detailEntries.push({
|
|
62
|
+
label: `payload.${key}`,
|
|
63
|
+
value: JSON.stringify(value, null, 2),
|
|
64
|
+
});
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
detailEntries.push({ label: `payload.${key}`, value: String(value) });
|
|
68
|
+
});
|
|
69
|
+
return (_jsxs(Box, { sx: {
|
|
70
|
+
minWidth: 0,
|
|
71
|
+
maxWidth: '100%',
|
|
72
|
+
overflow: 'hidden',
|
|
73
|
+
p: 3,
|
|
74
|
+
borderRadius: 2,
|
|
75
|
+
border: '1px solid',
|
|
76
|
+
borderColor: event.read ? 'border.default' : 'accent.muted',
|
|
77
|
+
bg: event.read ? 'canvas.default' : 'accent.subtle',
|
|
78
|
+
}, children: [_jsxs(Box, { sx: {
|
|
79
|
+
display: 'flex',
|
|
80
|
+
justifyContent: 'space-between',
|
|
81
|
+
alignItems: 'flex-start',
|
|
82
|
+
gap: 2,
|
|
83
|
+
mb: 1,
|
|
84
|
+
minWidth: 0,
|
|
85
|
+
}, children: [_jsxs(Box, { sx: {
|
|
86
|
+
display: 'flex',
|
|
87
|
+
alignItems: 'center',
|
|
88
|
+
gap: 2,
|
|
89
|
+
minWidth: 0,
|
|
90
|
+
flex: 1,
|
|
91
|
+
}, children: [_jsx(Label, { variant: event.kind === 'agent-started'
|
|
92
|
+
? 'accent'
|
|
93
|
+
: event.kind === 'agent-ended'
|
|
94
|
+
? 'success'
|
|
95
|
+
: event.kind?.includes('alert')
|
|
96
|
+
? 'danger'
|
|
97
|
+
: 'attention', children: event.kind }), _jsx(Truncate, { maxWidth: "50%", title: String(event.title || ''), sx: { fontWeight: 'semibold', fontSize: 1, minWidth: 0 }, children: event.title }), event.kind === 'agent-ended' && event.payload?.exit_status && (_jsxs(Label, { variant: "success", sx: { fontSize: 0, whiteSpace: 'nowrap' }, children: ["Status: ", String(event.payload.exit_status)] })), event.agent_id && (_jsx(Truncate, { maxWidth: 240, title: String(event.agent_id), children: _jsx(Label, { variant: "secondary", sx: { fontSize: 0, maxWidth: '100%' }, children: event.agent_id }) }))] }), _jsxs(Box, { sx: { display: 'flex', alignItems: 'center', gap: 1, flexShrink: 0 }, children: [running && event.agent_id && (_jsx(Button, { size: "small", variant: "invisible", onClick: () => onOpenAgent?.(String(event.agent_id)), children: "Open agent" })), event.created_at && (_jsx(Text, { sx: { fontSize: 0, color: 'fg.muted', whiteSpace: 'nowrap' }, children: new Date(event.created_at).toLocaleString() })), _jsx(Button, { size: "small", variant: "invisible", onClick: () => onToggleRead(event), sx: { p: 1 }, children: event.read ? _jsx(EyeClosedIcon, { size: 12 }) : _jsx(EyeIcon, { size: 12 }) }), _jsx(Button, { size: "small", variant: "invisible", onClick: () => onDelete(event), sx: { p: 1, color: 'danger.fg' }, children: _jsx(TrashIcon, { size: 12 }) })] })] }), event.payload && (_jsxs(Box, { sx: {
|
|
98
|
+
fontSize: 0,
|
|
99
|
+
color: 'fg.muted',
|
|
100
|
+
mt: 1,
|
|
101
|
+
minWidth: 0,
|
|
102
|
+
overflowWrap: 'anywhere',
|
|
103
|
+
}, children: [(startedAt ||
|
|
104
|
+
endedAt ||
|
|
105
|
+
(event.kind === 'agent-ended' &&
|
|
106
|
+
event.payload.duration_ms != null)) && (_jsxs(Text, { as: "p", children: [startedAt ? `Started: ${formatRelativeTime(startedAt)}` : '', startedAt && endedAt ? ' · ' : '', endedAt ? `Ended: ${formatRelativeTime(endedAt)}` : '', (startedAt || endedAt) &&
|
|
107
|
+
event.kind === 'agent-ended' &&
|
|
108
|
+
event.payload.duration_ms != null
|
|
109
|
+
? ' · '
|
|
110
|
+
: '', event.kind === 'agent-ended' && event.payload.duration_ms != null
|
|
111
|
+
? `Duration: ${(Number(event.payload.duration_ms) / 1000).toFixed(1)}s`
|
|
112
|
+
: ''] })), event.kind?.includes('guardrail') && event.payload.message && (_jsx(Text, { as: "p", sx: { mb: 1 }, children: String(event.payload.message) })), event.kind?.includes('guardrail') && event.payload.action_taken && (_jsxs(Text, { as: "p", children: ["Action: ", String(event.payload.action_taken)] })), event.kind === 'agent-started' && event.payload.trigger_type && (_jsxs(Text, { as: "p", children: ["Trigger: ", String(event.payload.trigger_type)] })), outputText && (_jsx(Box, { sx: {
|
|
113
|
+
mt: 2,
|
|
114
|
+
p: 2,
|
|
115
|
+
borderRadius: 2,
|
|
116
|
+
border: '1px solid',
|
|
117
|
+
borderColor: 'border.muted',
|
|
118
|
+
bg: 'canvas.subtle',
|
|
119
|
+
}, children: _jsxs(Box, { sx: { display: 'flex', alignItems: 'flex-start', gap: 1 }, children: [_jsx(Box, { sx: { flex: 1, minWidth: 0 }, children: _jsxs("details", { children: [_jsx("summary", { style: {
|
|
120
|
+
cursor: 'pointer',
|
|
121
|
+
display: 'flex',
|
|
122
|
+
alignItems: 'center',
|
|
123
|
+
minWidth: 0,
|
|
124
|
+
}, children: _jsxs(Box, { sx: {
|
|
125
|
+
display: 'flex',
|
|
126
|
+
alignItems: 'center',
|
|
127
|
+
gap: 2,
|
|
128
|
+
minWidth: 0,
|
|
129
|
+
width: '100%',
|
|
130
|
+
flexWrap: 'nowrap',
|
|
131
|
+
}, children: [_jsx(Text, { sx: {
|
|
132
|
+
fontSize: 0,
|
|
133
|
+
fontWeight: 'semibold',
|
|
134
|
+
flexShrink: 0,
|
|
135
|
+
}, children: "Output" }), _jsx(Truncate, { maxWidth: "100%", title: outputText, sx: {
|
|
136
|
+
fontSize: 0,
|
|
137
|
+
color: 'fg.muted',
|
|
138
|
+
minWidth: 0,
|
|
139
|
+
flex: 1,
|
|
140
|
+
}, children: outputText })] }) }), _jsx(Box, { sx: { mt: 2 }, children: _jsx(Box, { sx: streamdownMarkdownStyles, children: _jsx(Streamdown, { children: outputText }) }) })] }) }), _jsx(Button, { size: "small", variant: "invisible", sx: { p: 1, flexShrink: 0 }, title: "Download output markdown", "aria-label": "Download output markdown", onClick: () => {
|
|
141
|
+
const payload = createMarkdownDownloadPayload(outputText, `${runtimeId}-output`);
|
|
142
|
+
downloadTextPayload(payload);
|
|
143
|
+
}, children: _jsx(DownloadIcon, { size: 12 }) })] }) })), _jsx(Box, { sx: {
|
|
144
|
+
mt: 2,
|
|
145
|
+
p: 2,
|
|
146
|
+
borderRadius: 2,
|
|
147
|
+
border: '1px solid',
|
|
148
|
+
borderColor: 'border.muted',
|
|
149
|
+
bg: 'canvas.subtle',
|
|
150
|
+
}, children: _jsxs("details", { children: [_jsx("summary", { style: { cursor: 'pointer' }, children: _jsx(Text, { sx: { fontSize: 0, fontWeight: 'semibold' }, children: "View details" }) }), _jsx(Box, { sx: { mt: 2, display: 'grid', gap: 1 }, children: detailEntries.map(({ label, value }) => (_jsxs(Text, { sx: detailLineSx, children: [_jsxs(Text, { as: "span", sx: detailLabelSx, children: [label, ":", ' '] }), _jsx(Text, { as: "span", sx: detailValueSx, children: value })] }, label))) })] }) })] }))] }));
|
|
151
|
+
}
|
|
152
|
+
export default NotificationEventCard;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export interface OutputCardProps {
|
|
2
|
+
event: any;
|
|
3
|
+
onToggleRead: (event: any) => void;
|
|
4
|
+
onDelete: (event: any) => void;
|
|
5
|
+
onOpenAgent?: (agentId: string) => void;
|
|
6
|
+
}
|
|
7
|
+
export declare function OutputCard({ event, onToggleRead, onDelete, onOpenAgent, }: OutputCardProps): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export default OutputCard;
|