@datalayer/agent-runtimes 1.0.29 → 1.3.11
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/lib/AgentDocument.js +5 -22
- package/lib/AgentNode.d.ts +1 -1
- package/lib/AgentNode.js +193 -23
- package/lib/AgentNotebook.js +1 -1
- package/lib/App.d.ts +1 -1
- package/lib/AppExamples2.d.ts +1 -1
- package/lib/agent-node/AgentNodeGallery.d.ts +14 -1
- package/lib/agent-node/AgentNodeGallery.js +19 -15
- package/lib/agent-node/themeStore.js +7 -6
- package/lib/agents/AgentDetails.d.ts +8 -2
- package/lib/agents/AgentDetails.js +41 -11
- package/lib/agents/AgentRuntimeChat.d.ts +3 -3
- package/lib/agents/AgentRuntimeChat.js +15 -15
- package/lib/api/agents.d.ts +10 -10
- package/lib/api/agents.js +15 -15
- package/lib/api/checkpoints.d.ts +40 -0
- package/lib/api/checkpoints.js +75 -0
- package/lib/api/index.d.ts +1 -0
- package/lib/api/index.js +2 -1
- package/lib/api/notifications.d.ts +21 -6
- package/lib/api/notifications.js +32 -14
- package/lib/api/runtimes/environments.d.ts +406 -4
- package/lib/api/runtimes/environments.js +641 -9
- package/lib/api/runtimes/runtimes.d.ts +19 -19
- package/lib/api/runtimes/runtimes.js +47 -46
- package/lib/api/spacer/notebooks.js +1 -1
- package/lib/chat/Chat.d.ts +16 -4
- package/lib/chat/Chat.js +18 -5
- package/lib/chat/ChatFloating.d.ts +20 -2
- package/lib/chat/ChatFloating.js +196 -118
- package/lib/chat/ChatInline.d.ts +15 -0
- package/lib/chat/ChatInline.js +0 -18
- package/lib/chat/ChatPopupStandalone.d.ts +1 -1
- package/lib/chat/ChatSidebar.d.ts +14 -2
- package/lib/chat/ChatSidebar.js +1 -1
- package/lib/chat/ChatStandalone.d.ts +1 -1
- package/lib/chat/EphemeralSurfaceControl.d.ts +30 -0
- package/lib/chat/EphemeralSurfaceControl.js +55 -0
- package/lib/chat/base/ChatAvailability.d.ts +34 -0
- package/lib/chat/base/ChatAvailability.js +18 -0
- package/lib/chat/base/ChatBase.d.ts +2 -1
- package/lib/chat/base/ChatBase.js +657 -28
- package/lib/chat/display/ButtonGlow.d.ts +9 -0
- package/lib/chat/display/ButtonGlow.js +60 -0
- package/lib/chat/display/EmptyState.d.ts +15 -1
- package/lib/chat/display/EmptyState.js +81 -12
- package/lib/chat/display/FloatingBrandButton.d.ts +1 -1
- package/lib/chat/display/PoweredByTag.d.ts +1 -1
- package/lib/chat/display/groupSuggestions.d.ts +21 -0
- package/lib/chat/display/groupSuggestions.js +18 -0
- package/lib/chat/document/EphemeralDocument.d.ts +70 -6
- package/lib/chat/document/EphemeralDocument.js +154 -52
- package/lib/chat/header/ChatHeader.d.ts +1 -1
- package/lib/chat/header/ChatHeaderBase.d.ts +10 -1
- package/lib/chat/header/ChatHeaderBase.js +21 -102
- package/lib/chat/header/ChatViewModeToggle.d.ts +29 -0
- package/lib/chat/header/ChatViewModeToggle.js +55 -0
- package/lib/chat/index.d.ts +5 -1
- package/lib/chat/index.js +9 -1
- package/lib/chat/indicators/McpStatusIndicator.d.ts +1 -1
- package/lib/chat/indicators/SandboxStatusIndicator.d.ts +1 -1
- package/lib/chat/indicators/SandboxStatusIndicator.js +1 -1
- package/lib/chat/indicators/SkillsStatusIndicator.d.ts +1 -1
- package/lib/chat/messages/ChatMessageList.d.ts +22 -1
- package/lib/chat/messages/ChatMessageList.js +370 -166
- package/lib/chat/messages/ChatMessages.d.ts +1 -1
- package/lib/chat/messages/NotebookToolSurfaces.d.ts +68 -0
- package/lib/chat/messages/NotebookToolSurfaces.js +302 -0
- package/lib/chat/messages/TurnFooter.d.ts +42 -0
- package/lib/chat/messages/TurnFooter.js +75 -0
- package/lib/chat/messages/assistantMarkdown.d.ts +22 -0
- package/lib/chat/messages/assistantMarkdown.js +56 -0
- package/lib/chat/notebook/EphemeralNotebook.d.ts +67 -6
- package/lib/chat/notebook/EphemeralNotebook.js +194 -61
- package/lib/chat/parts/DynamicToolPart.d.ts +1 -1
- package/lib/chat/parts/MessagePart.d.ts +1 -1
- package/lib/chat/parts/ReasoningPart.d.ts +8 -1
- package/lib/chat/parts/TextPart.d.ts +1 -1
- package/lib/chat/parts/ToolPart.d.ts +8 -1
- package/lib/chat/prompt/FloatingCard.d.ts +26 -0
- package/lib/chat/prompt/FloatingCard.js +80 -0
- package/lib/chat/prompt/InputPrompt.d.ts +206 -53
- package/lib/chat/prompt/InputPrompt.js +161 -80
- package/lib/chat/prompt/InputPromptBase.d.ts +112 -0
- package/lib/chat/prompt/InputPromptBase.js +225 -0
- package/lib/chat/prompt/InputPromptLexical.d.ts +18 -1
- package/lib/chat/prompt/InputPromptLexical.js +227 -30
- package/lib/chat/prompt/InputPromptText.d.ts +10 -2
- package/lib/chat/prompt/InputPromptText.js +35 -3
- package/lib/chat/prompt/footer/BelowPromptFooter.d.ts +25 -0
- package/lib/chat/prompt/footer/BelowPromptFooter.js +12 -0
- package/lib/chat/prompt/footer/InPromptFooter.d.ts +35 -0
- package/lib/chat/prompt/footer/InPromptFooter.js +16 -0
- package/lib/chat/prompt/footer/index.d.ts +7 -0
- package/lib/chat/prompt/footer/index.js +11 -0
- package/lib/chat/prompt/header/BelowPromptHeader.d.ts +23 -0
- package/lib/chat/prompt/header/BelowPromptHeader.js +12 -0
- package/lib/chat/prompt/header/InPromptHeader.d.ts +31 -0
- package/lib/chat/prompt/header/InPromptHeader.js +14 -0
- package/lib/chat/prompt/header/index.d.ts +7 -0
- package/lib/chat/prompt/header/index.js +11 -0
- package/lib/chat/prompt/index.d.ts +8 -4
- package/lib/chat/prompt/index.js +15 -3
- package/lib/chat/prompt/menus/AgentsMenu.d.ts +14 -0
- package/lib/chat/prompt/menus/AgentsMenu.js +42 -0
- package/lib/chat/prompt/menus/InlineAgentsMenu.d.ts +22 -0
- package/lib/chat/prompt/menus/InlineAgentsMenu.js +24 -0
- package/lib/chat/prompt/menus/ModelSelector.d.ts +7 -0
- package/lib/chat/prompt/menus/ModelSelector.js +27 -0
- package/lib/chat/prompt/menus/SkillsMenu.d.ts +10 -0
- package/lib/chat/prompt/menus/SkillsMenu.js +75 -0
- package/lib/chat/prompt/menus/SuggestionsMenu.d.ts +13 -0
- package/lib/chat/prompt/menus/SuggestionsMenu.js +31 -0
- package/lib/chat/prompt/menus/ToolsMenu.d.ts +13 -0
- package/lib/chat/prompt/menus/ToolsMenu.js +103 -0
- package/lib/chat/prompt/menus/index.d.ts +15 -0
- package/lib/chat/prompt/menus/index.js +19 -0
- package/lib/chat/prompt/plugins/AgentMentionPlugin.d.ts +54 -0
- package/lib/chat/prompt/plugins/AgentMentionPlugin.js +370 -0
- package/lib/chat/prompt/plugins/CommandPlugin.d.ts +52 -0
- package/lib/chat/prompt/plugins/CommandPlugin.js +359 -0
- package/lib/chat/prompt/plugins/MentionChip.d.ts +15 -0
- package/lib/chat/prompt/plugins/MentionChip.js +24 -0
- package/lib/chat/prompt/plugins/MentionNode.d.ts +66 -0
- package/lib/chat/prompt/plugins/MentionNode.js +77 -0
- package/lib/chat/prompt/promptHistory.d.ts +52 -0
- package/lib/chat/prompt/promptHistory.js +123 -0
- package/lib/chat/prompt/stack.d.ts +81 -0
- package/lib/chat/prompt/stack.js +41 -0
- package/lib/chat/prompt/useTypingPlaceholder.d.ts +52 -0
- package/lib/chat/prompt/useTypingPlaceholder.js +180 -0
- package/lib/chat/tools/A2AAgentDialog.d.ts +60 -0
- package/lib/chat/tools/A2AAgentDialog.js +265 -0
- package/lib/chat/tools/ToolApprovalBanner.d.ts +1 -1
- package/lib/chat/tools/ToolApprovalDialog.d.ts +1 -1
- package/lib/chat/tools/ToolCallDisplay.d.ts +8 -1
- package/lib/chat/tools/index.d.ts +1 -0
- package/lib/chat/tools/index.js +1 -0
- package/lib/chat/usage/ContextPie.d.ts +17 -0
- package/lib/chat/usage/{TokenUsageBar.js → ContextPie.js} +20 -14
- package/lib/chat/useViewportDrag.d.ts +11 -0
- package/lib/chat/useViewportDrag.js +61 -0
- package/lib/chat/viewModes.d.ts +51 -0
- package/lib/chat/viewModes.js +57 -0
- package/lib/client/AgentRuntimesClient.d.ts +10 -9
- package/lib/client/AgentRuntimesClient.js +1 -1
- package/lib/client/AgentRuntimesClientContext.d.ts +1 -0
- package/lib/client/AgentsMixin.d.ts +12 -12
- package/lib/client/AgentsMixin.js +31 -31
- package/lib/client/IAgentRuntimesClient.d.ts +10 -10
- package/lib/client/SdkAgentRuntimesClient.d.ts +10 -10
- package/lib/client/SdkAgentRuntimesClient.js +10 -10
- package/lib/client/mixins/RuntimesMixin.d.ts +37 -10
- package/lib/client/mixins/RuntimesMixin.js +54 -21
- package/lib/components/a2ui/A2uiSurfaceComposed.d.ts +1 -1
- package/lib/components/agents/AgentSummary.d.ts +13 -0
- package/lib/components/agents/AgentSummary.js +21 -4
- package/lib/components/cards/NotificationEventCard.d.ts +1 -1
- package/lib/components/cards/OutputCard.d.ts +1 -1
- package/lib/components/cards/ToolApprovalCard.d.ts +2 -2
- package/lib/components/cards/ToolApprovalCard.js +1 -0
- package/lib/components/code-sandboxes/CodeSandboxCellVariables.d.ts +1 -0
- package/lib/components/code-sandboxes/CodeSandboxCellVariables.js +0 -4
- package/lib/components/code-sandboxes/CodeSandboxCellVariablesDialog.d.ts +1 -0
- package/lib/components/code-sandboxes/CodeSandboxCellVariablesDialog.js +0 -4
- package/lib/components/code-sandboxes/CodeSandboxEnvironmentSelect.d.ts +35 -0
- package/lib/components/code-sandboxes/CodeSandboxEnvironmentSelect.js +27 -29
- package/lib/components/code-sandboxes/CodeSandboxLauncher.d.ts +9 -0
- package/lib/components/code-sandboxes/CodeSandboxLauncher.js +95 -23
- package/lib/components/code-sandboxes/CodeSandboxNames.js +7 -6
- package/lib/components/code-sandboxes/CodeSandboxPicker.js +89 -42
- package/lib/components/code-sandboxes/CodeSandboxPickerCell.d.ts +1 -0
- package/lib/components/code-sandboxes/CodeSandboxPickerCell.js +0 -4
- package/lib/components/code-sandboxes/CodeSandboxReservationControl.d.ts +1 -0
- package/lib/components/code-sandboxes/CodeSandboxReservationControl.js +5 -7
- package/lib/components/code-sandboxes/CodeSandboxTransfer.d.ts +5 -0
- package/lib/components/code-sandboxes/CodeSandboxUtils.d.ts +13 -1
- package/lib/components/code-sandboxes/CodeSandboxUtils.js +10 -4
- package/lib/components/code-sandboxes/NewCodeSandboxControls.d.ts +21 -15
- package/lib/components/code-sandboxes/NewCodeSandboxControls.js +28 -51
- package/lib/components/code-sandboxes/codeSandboxAllowance.d.ts +33 -0
- package/lib/components/code-sandboxes/codeSandboxAllowance.js +37 -0
- package/lib/components/code-sandboxes/codeSandboxEnvironments.d.ts +97 -0
- package/lib/components/code-sandboxes/codeSandboxEnvironments.js +184 -0
- package/lib/components/code-sandboxes/codeSandboxProviders.js +14 -5
- package/lib/components/code-sandboxes/index.d.ts +1 -0
- package/lib/components/code-sandboxes/index.js +1 -0
- package/lib/components/context/SpaceSelect.d.ts +1 -1
- package/lib/components/flashes/FlashDisclaimer.d.ts +1 -1
- package/lib/components/icons/ArtifactIcon.d.ts +1 -0
- package/lib/components/icons/ArtifactIcon.js +2 -1
- package/lib/components/nbgrader/NbGradesDetails.d.ts +1 -1
- package/lib/components/progress/CreditsIndicator.d.ts +1 -0
- package/lib/components/progress/CreditsIndicator.js +0 -4
- package/lib/components/scheduler/ScheduleMenu.d.ts +1 -1
- package/lib/components/snapshots/SandboxSnapshotMenu.d.ts +3 -2
- package/lib/components/snapshots/SandboxSnapshotMenu.js +11 -15
- package/lib/components/snippets/SnippetDialog.d.ts +1 -0
- package/lib/components/snippets/SnippetDialog.js +0 -4
- package/lib/components/specs/SpecPayloadPreview.d.ts +34 -0
- package/lib/components/specs/SpecPayloadPreview.js +102 -0
- package/lib/components/tokens/SpaceVariantToken.d.ts +1 -1
- package/lib/context/ContextDistribution.d.ts +1 -1
- package/lib/context/ContextInspector.d.ts +2 -1
- package/lib/context/ContextPanel.d.ts +1 -1
- package/lib/context/ContextUsage.d.ts +1 -1
- package/lib/context/CostTracker.d.ts +1 -1
- package/lib/context/CostUsageChart.d.ts +1 -1
- package/lib/context/CostUsageChart.js +4 -4
- package/lib/context/MessageHistory.d.ts +3 -2
- package/lib/context/TokenUsageChart.d.ts +1 -1
- package/lib/context/TokenUsageChart.js +4 -4
- package/lib/examples/A2UiAgentExample.js +15 -6
- package/lib/examples/A2UiComponentsGalleryExample.d.ts +10 -0
- package/lib/examples/A2UiComponentsGalleryExample.js +24 -855
- package/lib/examples/A2UiContactCardExample.d.ts +10 -0
- package/lib/examples/A2UiContactCardExample.js +23 -170
- package/lib/examples/A2UiJupyterOutputExample.d.ts +3 -0
- package/lib/examples/A2UiJupyterOutputExample.js +792 -0
- package/lib/examples/A2UiRestaurantExample.d.ts +10 -0
- package/lib/examples/A2UiRestaurantExample.js +24 -179
- package/lib/examples/A2UiViewerExample.d.ts +10 -0
- package/lib/examples/A2UiViewerExample.js +24 -378
- package/lib/examples/AgUiAgenticExample.js +2 -4
- package/lib/examples/AgUiBackendToolRenderingExample.js +3 -5
- package/lib/examples/AgUiHaikuGenUiExample.js +2 -4
- package/lib/examples/AgUiHumanInTheLoopExample.js +2 -4
- package/lib/examples/AgUiSharedStateExample.js +2 -4
- package/lib/examples/AgUiToolsBasedGenUiExample.js +2 -4
- package/lib/examples/AgentA2AExample.d.ts +17 -0
- package/lib/examples/AgentA2AExample.js +56 -0
- package/lib/examples/AgentCheckpointsExample.d.ts +9 -10
- package/lib/examples/AgentCheckpointsExample.js +72 -54
- package/lib/examples/AgentCodeSandboxExample.d.ts +7 -7
- package/lib/examples/AgentCodeSandboxExample.js +93 -303
- package/lib/examples/AgentCodeSandboxesExample.d.ts +10 -0
- package/lib/examples/AgentCodeSandboxesExample.js +56 -162
- package/lib/examples/AgentCodemodeExample.d.ts +7 -2
- package/lib/examples/AgentCodemodeExample.js +60 -125
- package/lib/examples/AgentCompactionExample.js +19 -135
- package/lib/examples/AgentEvalsExample.js +34 -66
- package/lib/examples/AgentGuardrailsExample.js +64 -112
- package/lib/examples/AgentHooksExample.d.ts +11 -0
- package/lib/examples/AgentHooksExample.js +30 -67
- package/lib/examples/AgentInferenceProviderExample.js +8 -32
- package/lib/examples/AgentLoopExample.d.ts +4 -2
- package/lib/examples/AgentLoopExample.js +45 -93
- package/lib/examples/AgentMCPExample.js +30 -79
- package/lib/examples/AgentMemoryExample.js +21 -64
- package/lib/examples/AgentMonitoringExample.js +33 -94
- package/lib/examples/AgentNotificationsExample.js +56 -95
- package/lib/examples/AgentOtelExample.js +35 -88
- package/lib/examples/AgentOutputsExample.d.ts +2 -1
- package/lib/examples/AgentOutputsExample.js +16 -137
- package/lib/examples/AgentParametersExample.js +7 -17
- package/lib/examples/AgentSkillsExample.js +40 -154
- package/lib/examples/AgentSubagentsExample.d.ts +7 -6
- package/lib/examples/AgentSubagentsExample.js +80 -191
- package/lib/examples/AgentToolApprovalsExample.js +35 -91
- package/lib/examples/AgentTriggersExample.js +43 -59
- package/lib/examples/AgentspecsExample.js +4 -4
- package/lib/examples/CellExample.d.ts +1 -1
- package/lib/examples/ChatExample.d.ts +12 -5
- package/lib/examples/ChatExample.js +38 -13
- package/lib/examples/CopilotKitLexicalExample.d.ts +1 -0
- package/lib/examples/CopilotKitLexicalExample.js +4 -41
- package/lib/examples/CopilotKitNotebookExample.d.ts +10 -0
- package/lib/examples/CopilotKitNotebookExample.js +2 -14
- package/lib/examples/DecksAgent.d.ts +21 -0
- package/lib/examples/DecksAgent.js +23 -0
- package/lib/examples/DocumentPageAgent.d.ts +19 -0
- package/lib/examples/DocumentPageAgent.js +15 -0
- package/lib/examples/Lexical2Example.d.ts +2 -2
- package/lib/examples/Lexical2Example.js +17 -38
- package/lib/examples/LexicalAgentExample.d.ts +2 -1
- package/lib/examples/LexicalAgentExample.js +29 -102
- package/lib/examples/LexicalAgentSidebarExample.d.ts +16 -5
- package/lib/examples/LexicalAgentSidebarExample.js +99 -131
- package/lib/examples/LoopShellExample.d.ts +38 -0
- package/lib/examples/LoopShellExample.js +68 -0
- package/lib/examples/LoopWorkspaceEmbed.d.ts +50 -0
- package/lib/examples/LoopWorkspaceEmbed.js +73 -0
- package/lib/examples/LoopWorkspaceExample.d.ts +150 -0
- package/lib/examples/LoopWorkspaceExample.js +151 -0
- package/lib/examples/NotebookAgentExample.d.ts +13 -0
- package/lib/examples/NotebookAgentExample.js +36 -86
- package/lib/examples/NotebookAgentSidebarExample.d.ts +10 -4
- package/lib/examples/NotebookAgentSidebarExample.js +39 -83
- package/lib/examples/NotebookCollaborationExample.d.ts +1 -1
- package/lib/examples/NotebookCollaborationExample.js +108 -20
- package/lib/examples/NotebookExample.d.ts +1 -1
- package/lib/examples/NotebookExample.js +20 -10
- package/lib/examples/NotebookPageAgent.d.ts +23 -0
- package/lib/examples/NotebookPageAgent.js +17 -0
- package/lib/examples/components/ExampleWrapper.d.ts +5 -0
- package/lib/examples/components/ExampleWrapper.js +36 -28
- package/lib/examples/components/LexicalEditor.d.ts +1 -1
- package/lib/examples/components/LexicalEditor.js +4 -24
- package/lib/examples/components/haiku/HaikuDisplay.d.ts +1 -1
- package/lib/examples/components/haiku/InlineHaikuCard.d.ts +1 -1
- package/lib/examples/components/weather/InlineWeatherCard.d.ts +1 -1
- package/lib/examples/example-selector.js +26 -6
- package/lib/examples/hooks/useCreateAgentOnce.d.ts +41 -0
- package/lib/examples/hooks/useCreateAgentOnce.js +51 -0
- package/lib/examples/hooks/useExampleAgentProtocol.d.ts +35 -0
- package/lib/examples/hooks/useExampleAgentProtocol.js +63 -0
- package/lib/examples/hooks/useExampleAgentRuntime.d.ts +16 -16
- package/lib/examples/hooks/useExampleAgentRuntime.js +26 -25
- package/lib/examples/hooks/useExampleAgentRuntimes.js +45 -61
- package/lib/examples/hooks/useExampleJupyterAgent.d.ts +91 -0
- package/lib/examples/hooks/useExampleJupyterAgent.js +151 -0
- package/lib/examples/index.d.ts +4 -0
- package/lib/examples/index.js +6 -0
- package/lib/examples/lexical/editorConfig.d.ts +2 -75
- package/lib/examples/lexical/editorConfig.js +26 -48
- package/lib/examples/lexical/lexical-theme.css +65 -47
- package/lib/examples/main.js +450 -322
- package/lib/examples/scenes/A2UiComponentsGalleryScene.d.ts +3 -0
- package/lib/examples/scenes/A2UiComponentsGalleryScene.js +872 -0
- package/lib/examples/scenes/A2UiContactCardScene.d.ts +3 -0
- package/lib/examples/scenes/A2UiContactCardScene.js +188 -0
- package/lib/examples/scenes/A2UiRestaurantScene.d.ts +3 -0
- package/lib/examples/scenes/A2UiRestaurantScene.js +196 -0
- package/lib/examples/scenes/A2UiViewerScene.d.ts +3 -0
- package/lib/examples/scenes/A2UiViewerScene.js +395 -0
- package/lib/examples/utils/agentSummaryStore.d.ts +7 -1
- package/lib/examples/utils/agents/earthquake-detector.ipynb.json +1 -1
- package/lib/examples/utils/agents/earthquake-detector.lexical.json +1 -1
- package/lib/examples/utils/agents/sales-forecaster.ipynb.json +1 -1
- package/lib/examples/utils/agents/sales-forecaster.lexical.json +1 -1
- package/lib/examples/utils/agents/social-post-generator.ipynb.json +1 -1
- package/lib/examples/utils/agents/social-post-generator.lexical.json +1 -1
- package/lib/examples/utils/exampleSurfaces.d.ts +31 -0
- package/lib/examples/utils/exampleSurfaces.js +38 -0
- package/lib/examples/utils/jupyterSandboxUrl.d.ts +27 -0
- package/lib/examples/utils/jupyterSandboxUrl.js +55 -0
- package/lib/examples/utils/localUrl.d.ts +2 -0
- package/lib/examples/utils/localUrl.js +49 -0
- package/lib/examples/utils/notebookToolbarItems.d.ts +46 -0
- package/lib/examples/utils/notebookToolbarItems.js +129 -0
- package/lib/examples/utils/runtimeTargetStore.d.ts +40 -1
- package/lib/examples/utils/runtimeTargetStore.js +82 -1
- package/lib/examples/utils/themedProvider.d.ts +7 -0
- package/lib/examples/utils/themedProvider.js +57 -4
- package/lib/examples/utils/useExampleAgentRuntimesUrl.js +30 -5
- package/lib/examples/utils/waitForAgent.d.ts +23 -0
- package/lib/examples/utils/waitForAgent.js +24 -0
- package/lib/examples2/CellExample.d.ts +1 -1
- package/lib/examples2/DatalayerNotebookExample.d.ts +1 -1
- package/lib/examples2/NotebookExample.d.ts +1 -1
- package/lib/examples2/NotebookMutationsKernel.d.ts +1 -1
- package/lib/examples2/NotebookMutationsServiceManager.d.ts +1 -1
- package/lib/examples2/main.js +24 -4
- package/lib/extensions/A2UIExtension.d.ts +1 -1
- package/lib/hooks/index.d.ts +8 -5
- package/lib/hooks/index.js +20 -5
- package/lib/hooks/useAgentRuntimes.d.ts +49 -22
- package/lib/hooks/useAgentRuntimes.js +214 -90
- package/lib/hooks/useAgentsCatalog.js +32 -4
- package/lib/hooks/useBrowserAgent.d.ts +26 -0
- package/lib/hooks/useBrowserAgent.js +75 -0
- package/lib/hooks/useBrowserInference.d.ts +27 -0
- package/lib/hooks/useBrowserInference.js +67 -0
- package/lib/hooks/useCheckpoints.d.ts +8 -17
- package/lib/hooks/useCheckpoints.js +25 -59
- package/lib/hooks/useConfig.d.ts +1 -1
- package/lib/hooks/useConfig.js +5 -1
- package/lib/hooks/useContextSnapshot.d.ts +18 -7
- package/lib/hooks/useContextSnapshot.js +14 -10
- package/lib/hooks/useNotifications.d.ts +11 -11
- package/lib/hooks/useNotifications.js +1 -1
- package/lib/hooks/useProjects.d.ts +7 -19
- package/lib/hooks/useProjects.js +5 -5
- package/lib/hooks/useSkills.d.ts +0 -1
- package/lib/hooks/useSkills.js +6 -2
- package/lib/hooks/useToolApprovals.d.ts +8 -8
- package/lib/hooks/useToolApprovals.js +3 -3
- package/lib/identity/AgentIdentity.d.ts +9 -2
- package/lib/index.d.ts +1 -0
- package/lib/index.js +4 -0
- package/lib/jupyter/index.d.ts +2 -1
- package/lib/jupyter/index.js +2 -1
- package/lib/jupyter/serverExecution.d.ts +78 -0
- package/lib/jupyter/serverExecution.js +258 -0
- package/lib/jupyter/useResumeServerExecutions.d.ts +11 -0
- package/lib/jupyter/useResumeServerExecutions.js +64 -0
- package/lib/lexical/ChatInlinePlugin.d.ts +33 -0
- package/lib/lexical/ChatInlinePlugin.js +0 -36
- package/lib/loop/core/focusRequests.d.ts +10 -0
- package/lib/loop/core/focusRequests.js +46 -0
- package/lib/loop/core/index.d.ts +903 -0
- package/lib/loop/core/index.js +264 -0
- package/lib/loop/core/promptStore.d.ts +44 -0
- package/lib/loop/core/promptStore.js +63 -0
- package/lib/loop/core/surfaceRequests.d.ts +33 -0
- package/lib/loop/core/surfaceRequests.js +29 -0
- package/lib/loop/core/toolbar.d.ts +28 -0
- package/lib/loop/core/toolbar.js +59 -0
- package/lib/loop/embed/LoopEmbed.d.ts +57 -0
- package/lib/loop/embed/LoopEmbed.js +124 -0
- package/lib/loop/extensions.d.ts +10 -0
- package/lib/loop/extensions.js +49 -0
- package/lib/loop/index.d.ts +68 -0
- package/lib/loop/index.js +87 -0
- package/lib/loop/plugins/a2a-sidebar/A2ASidebar.d.ts +48 -0
- package/lib/loop/plugins/a2a-sidebar/A2ASidebar.js +190 -0
- package/lib/loop/plugins/a2a-sidebar/index.d.ts +5 -0
- package/lib/loop/plugins/a2a-sidebar/index.js +39 -0
- package/lib/loop/plugins/a2ui/A2uiView.d.ts +12 -0
- package/lib/loop/plugins/a2ui/A2uiView.js +97 -0
- package/lib/loop/plugins/a2ui/index.d.ts +3 -0
- package/lib/loop/plugins/a2ui/index.js +50 -0
- package/lib/loop/plugins/a2ui-scene/index.d.ts +36 -0
- package/lib/loop/plugins/a2ui-scene/index.js +28 -0
- package/lib/loop/plugins/agent-a2a/index.d.ts +3 -0
- package/lib/loop/plugins/agent-a2a/index.js +26 -0
- package/lib/loop/plugins/agent-a2ui/index.d.ts +3 -0
- package/lib/loop/plugins/agent-a2ui/index.js +42 -0
- package/lib/loop/plugins/agent-a2ui-jupyter-output/index.d.ts +3 -0
- package/lib/loop/plugins/agent-a2ui-jupyter-output/index.js +53 -0
- package/lib/loop/plugins/agent-capacity/index.d.ts +39 -0
- package/lib/loop/plugins/agent-capacity/index.js +52 -0
- package/lib/loop/plugins/agent-checkpoints/index.d.ts +3 -0
- package/lib/loop/plugins/agent-checkpoints/index.js +26 -0
- package/lib/loop/plugins/agent-code-sandbox/index.d.ts +3 -0
- package/lib/loop/plugins/agent-code-sandbox/index.js +24 -0
- package/lib/loop/plugins/agent-code-sandboxes/index.d.ts +13 -0
- package/lib/loop/plugins/agent-code-sandboxes/index.js +85 -0
- package/lib/loop/plugins/agent-codemode/index.d.ts +5 -0
- package/lib/loop/plugins/agent-codemode/index.js +41 -0
- package/lib/loop/plugins/agent-compaction/index.d.ts +10 -0
- package/lib/loop/plugins/agent-compaction/index.js +34 -0
- package/lib/loop/plugins/agent-evals/index.d.ts +3 -0
- package/lib/loop/plugins/agent-evals/index.js +25 -0
- package/lib/loop/plugins/agent-guardrails/index.d.ts +3 -0
- package/lib/loop/plugins/agent-guardrails/index.js +25 -0
- package/lib/loop/plugins/agent-hooks/index.d.ts +3 -0
- package/lib/loop/plugins/agent-hooks/index.js +28 -0
- package/lib/loop/plugins/agent-inference/index.d.ts +7 -0
- package/lib/loop/plugins/agent-inference/index.js +29 -0
- package/lib/loop/plugins/agent-mcp/index.d.ts +3 -0
- package/lib/loop/plugins/agent-mcp/index.js +25 -0
- package/lib/loop/plugins/agent-memory/index.d.ts +3 -0
- package/lib/loop/plugins/agent-memory/index.js +25 -0
- package/lib/loop/plugins/agent-monitoring/index.d.ts +3 -0
- package/lib/loop/plugins/agent-monitoring/index.js +25 -0
- package/lib/loop/plugins/agent-notifications/index.d.ts +3 -0
- package/lib/loop/plugins/agent-notifications/index.js +25 -0
- package/lib/loop/plugins/agent-otel/index.d.ts +3 -0
- package/lib/loop/plugins/agent-otel/index.js +25 -0
- package/lib/loop/plugins/agent-outputs/index.d.ts +3 -0
- package/lib/loop/plugins/agent-outputs/index.js +25 -0
- package/lib/loop/plugins/agent-parameters/index.d.ts +3 -0
- package/lib/loop/plugins/agent-parameters/index.js +25 -0
- package/lib/loop/plugins/agent-skills/index.d.ts +3 -0
- package/lib/loop/plugins/agent-skills/index.js +25 -0
- package/lib/loop/plugins/agent-subagents/index.d.ts +3 -0
- package/lib/loop/plugins/agent-subagents/index.js +25 -0
- package/lib/loop/plugins/agent-tool-approvals/index.d.ts +11 -0
- package/lib/loop/plugins/agent-tool-approvals/index.js +38 -0
- package/lib/loop/plugins/agent-triggers/index.d.ts +3 -0
- package/lib/loop/plugins/agent-triggers/index.js +26 -0
- package/lib/loop/plugins/agents/AgentSummaryPanel.d.ts +20 -0
- package/lib/loop/plugins/agents/AgentSummaryPanel.js +50 -0
- package/lib/loop/plugins/agents/AnonymousKeyBadge.d.ts +35 -0
- package/lib/loop/plugins/agents/AnonymousKeyBadge.js +53 -0
- package/lib/loop/plugins/agents/DatalayerAgentBridge.d.ts +24 -0
- package/lib/loop/plugins/agents/DatalayerAgentBridge.js +102 -0
- package/lib/loop/plugins/agents/DatalayerAgentMount.d.ts +18 -0
- package/lib/loop/plugins/agents/DatalayerAgentMount.js +12 -0
- package/lib/loop/plugins/agents/SandboxSelector.d.ts +18 -0
- package/lib/loop/plugins/agents/SandboxSelector.js +99 -0
- package/lib/loop/plugins/agents/SandboxStatusBridge.d.ts +19 -0
- package/lib/loop/plugins/agents/SandboxStatusBridge.js +23 -0
- package/lib/loop/plugins/agents/SandboxView.d.ts +11 -0
- package/lib/loop/plugins/agents/SandboxView.js +43 -0
- package/lib/loop/plugins/agents/TeamMemberPicker.d.ts +17 -0
- package/lib/loop/plugins/agents/TeamMemberPicker.js +60 -0
- package/lib/loop/plugins/agents/agentIcons.d.ts +23 -0
- package/lib/loop/plugins/agents/agentIcons.js +88 -0
- package/lib/loop/plugins/agents/browserService.d.ts +50 -0
- package/lib/loop/plugins/agents/browserService.js +233 -0
- package/lib/loop/plugins/agents/index.d.ts +13 -0
- package/lib/loop/plugins/agents/index.js +17 -0
- package/lib/loop/plugins/agents/plugin.d.ts +91 -0
- package/lib/loop/plugins/agents/plugin.js +201 -0
- package/lib/loop/plugins/agents/service.d.ts +99 -0
- package/lib/loop/plugins/agents/service.js +167 -0
- package/lib/loop/plugins/agents/specSubagents.d.ts +18 -0
- package/lib/loop/plugins/agents/specSubagents.js +33 -0
- package/lib/loop/plugins/agents/switchable.d.ts +107 -0
- package/lib/loop/plugins/agents/switchable.js +405 -0
- package/lib/loop/plugins/agents/team.d.ts +87 -0
- package/lib/loop/plugins/agents/team.js +143 -0
- package/lib/loop/plugins/agents/useSandboxService.d.ts +11 -0
- package/lib/loop/plugins/agents/useSandboxService.js +36 -0
- package/lib/loop/plugins/agents/useTeamSelection.d.ts +10 -0
- package/lib/loop/plugins/agents/useTeamSelection.js +27 -0
- package/lib/loop/plugins/agentspecs/AgentspecPicker.d.ts +15 -0
- package/lib/loop/plugins/agentspecs/AgentspecPicker.js +90 -0
- package/lib/loop/plugins/agentspecs/index.d.ts +6 -0
- package/lib/loop/plugins/agentspecs/index.js +63 -0
- package/lib/loop/plugins/chat/ChatView.d.ts +20 -0
- package/lib/loop/plugins/chat/ChatView.js +1679 -0
- package/lib/loop/plugins/chat/chatViewTools.d.ts +41 -0
- package/lib/loop/plugins/chat/chatViewTools.js +92 -0
- package/lib/loop/plugins/chat/index.d.ts +111 -0
- package/lib/loop/plugins/chat/index.js +143 -0
- package/lib/loop/plugins/chat/turnState.d.ts +41 -0
- package/lib/loop/plugins/chat/turnState.js +90 -0
- package/lib/loop/plugins/chat-extras/index.d.ts +14 -0
- package/lib/loop/plugins/chat-extras/index.js +51 -0
- package/lib/loop/plugins/chat-header/HeaderView.d.ts +13 -0
- package/lib/loop/plugins/chat-header/HeaderView.js +6 -0
- package/lib/loop/plugins/chat-header/index.d.ts +3 -0
- package/lib/loop/plugins/chat-header/index.js +21 -0
- package/lib/loop/plugins/chat-view/index.d.ts +10 -0
- package/lib/loop/plugins/chat-view/index.js +29 -0
- package/lib/loop/plugins/checkpoints-sidebar/CheckpointsSidebar.d.ts +27 -0
- package/lib/loop/plugins/checkpoints-sidebar/CheckpointsSidebar.js +174 -0
- package/lib/loop/plugins/checkpoints-sidebar/index.d.ts +5 -0
- package/lib/loop/plugins/checkpoints-sidebar/index.js +39 -0
- package/lib/loop/plugins/commands/index.d.ts +20 -0
- package/lib/loop/plugins/commands/index.js +148 -0
- package/lib/loop/plugins/decks/DeckSurface.d.ts +10 -0
- package/lib/loop/plugins/decks/DeckSurface.js +6 -0
- package/lib/loop/plugins/decks/DecksMenu.d.ts +11 -0
- package/lib/loop/plugins/decks/DecksMenu.js +42 -0
- package/lib/loop/plugins/decks/index.d.ts +19 -0
- package/lib/loop/plugins/decks/index.js +133 -0
- package/lib/loop/plugins/decks/surface.d.ts +7 -0
- package/lib/loop/plugins/decks/surface.js +11 -0
- package/lib/loop/plugins/document/DocumentView.d.ts +12 -0
- package/lib/loop/plugins/document/DocumentView.js +68 -0
- package/lib/loop/plugins/document/index.d.ts +3 -0
- package/lib/loop/plugins/document/index.js +86 -0
- package/lib/loop/plugins/document/openingDocument.d.ts +28 -0
- package/lib/loop/plugins/document/openingDocument.js +122 -0
- package/lib/loop/plugins/document-toolbar/SandboxStatusItem.d.ts +16 -0
- package/lib/loop/plugins/document-toolbar/SandboxStatusItem.js +31 -0
- package/lib/loop/plugins/document-toolbar/index.d.ts +4 -0
- package/lib/loop/plugins/document-toolbar/index.js +35 -0
- package/lib/loop/plugins/document-toolbar/names.d.ts +6 -0
- package/lib/loop/plugins/document-toolbar/names.js +10 -0
- package/lib/loop/plugins/document-toolbar/plugin.d.ts +2 -0
- package/lib/loop/plugins/document-toolbar/plugin.js +38 -0
- package/lib/loop/plugins/document-view/index.d.ts +10 -0
- package/lib/loop/plugins/document-view/index.js +28 -0
- package/lib/loop/plugins/graph/GraphToggle.d.ts +17 -0
- package/lib/loop/plugins/graph/GraphToggle.js +22 -0
- package/lib/loop/plugins/graph/GraphView.d.ts +16 -0
- package/lib/loop/plugins/graph/GraphView.js +6 -0
- package/lib/loop/plugins/graph/index.d.ts +5 -0
- package/lib/loop/plugins/graph/index.js +80 -0
- package/lib/loop/plugins/graph/viewType.d.ts +10 -0
- package/lib/loop/plugins/graph/viewType.js +14 -0
- package/lib/loop/plugins/input-prompt/ComposerView.d.ts +15 -0
- package/lib/loop/plugins/input-prompt/ComposerView.js +25 -0
- package/lib/loop/plugins/input-prompt/index.d.ts +25 -0
- package/lib/loop/plugins/input-prompt/index.js +26 -0
- package/lib/loop/plugins/models/index.d.ts +3 -0
- package/lib/loop/plugins/models/index.js +49 -0
- package/lib/loop/plugins/notebook/NotebookView.d.ts +9 -0
- package/lib/loop/plugins/notebook/NotebookView.js +189 -0
- package/lib/loop/plugins/notebook/index.d.ts +3 -0
- package/lib/loop/plugins/notebook/index.js +91 -0
- package/lib/loop/plugins/notebook/openingNotebook.d.ts +72 -0
- package/lib/loop/plugins/notebook/openingNotebook.js +90 -0
- package/lib/loop/plugins/notebook-toolbar/index.d.ts +4 -0
- package/lib/loop/plugins/notebook-toolbar/index.js +45 -0
- package/lib/loop/plugins/notebook-toolbar/items.d.ts +10 -0
- package/lib/loop/plugins/notebook-toolbar/items.js +45 -0
- package/lib/loop/plugins/notebook-toolbar/names.d.ts +9 -0
- package/lib/loop/plugins/notebook-toolbar/names.js +13 -0
- package/lib/loop/plugins/notebook-toolbar/plugin.d.ts +2 -0
- package/lib/loop/plugins/notebook-toolbar/plugin.js +24 -0
- package/lib/loop/plugins/notebook-view/index.d.ts +10 -0
- package/lib/loop/plugins/notebook-view/index.js +30 -0
- package/lib/loop/plugins/page-layout/TurnPanel.d.ts +25 -0
- package/lib/loop/plugins/page-layout/TurnPanel.js +126 -0
- package/lib/loop/plugins/page-layout/index.d.ts +71 -0
- package/lib/loop/plugins/page-layout/index.js +160 -0
- package/lib/loop/plugins/plugins-panel/index.d.ts +14 -0
- package/lib/loop/plugins/plugins-panel/index.js +74 -0
- package/lib/loop/plugins/prompt/NewChatAction.d.ts +19 -0
- package/lib/loop/plugins/prompt/NewChatAction.js +10 -0
- package/lib/loop/plugins/prompt/index.d.ts +11 -0
- package/lib/loop/plugins/prompt/index.js +73 -0
- package/lib/loop/plugins/shell/editorChoice.d.ts +31 -0
- package/lib/loop/plugins/shell/editorChoice.js +58 -0
- package/lib/loop/plugins/shell/index.d.ts +47 -0
- package/lib/loop/plugins/shell/index.js +142 -0
- package/lib/loop/plugins/shell/useEditorPreviews.d.ts +32 -0
- package/lib/loop/plugins/shell/useEditorPreviews.js +217 -0
- package/lib/loop/plugins/subagent-activity/SubagentPulse.d.ts +16 -0
- package/lib/loop/plugins/subagent-activity/SubagentPulse.js +45 -0
- package/lib/loop/plugins/subagent-activity/index.d.ts +12 -0
- package/lib/loop/plugins/subagent-activity/index.js +42 -0
- package/lib/loop/plugins/view-switch/index.d.ts +46 -0
- package/lib/loop/plugins/view-switch/index.js +68 -0
- package/lib/loop/plugins/window-frame/WindowFrame.d.ts +48 -0
- package/lib/loop/plugins/window-frame/WindowFrame.js +63 -0
- package/lib/loop/plugins/window-frame/index.d.ts +6 -0
- package/lib/loop/plugins/window-frame/index.js +79 -0
- package/lib/loop/plugins/window-frame/slots.d.ts +26 -0
- package/lib/loop/plugins/window-frame/slots.js +30 -0
- package/lib/loop/presets.d.ts +181 -0
- package/lib/loop/presets.js +141 -0
- package/lib/loop/shell/LoopWorkspace.d.ts +109 -0
- package/lib/loop/shell/LoopWorkspace.js +231 -0
- package/lib/loop/shell/PluginToggles.d.ts +21 -0
- package/lib/loop/shell/PluginToggles.js +41 -0
- package/lib/loop/shell/ViewSwitcher.d.ts +24 -0
- package/lib/loop/shell/ViewSwitcher.js +43 -0
- package/lib/loop/shell/WorkspaceFullScreenAction.d.ts +25 -0
- package/lib/loop/shell/WorkspaceFullScreenAction.js +24 -0
- package/lib/loop/shell/index.d.ts +10 -0
- package/lib/loop/shell/index.js +14 -0
- package/lib/loop/shell/useWorkspaceFullScreen.d.ts +93 -0
- package/lib/loop/shell/useWorkspaceFullScreen.js +167 -0
- package/lib/loop-example-main.d.ts +1 -0
- package/lib/loop-example-main.js +42 -0
- package/lib/loop-main.d.ts +1 -0
- package/lib/loop-main.js +138 -0
- package/lib/mcp/McpServerManager.d.ts +1 -1
- package/lib/models/CodeSandboxSnapshotDTO.d.ts +1 -1
- package/lib/models/CodeSandboxVariant.d.ts +13 -5
- package/lib/models/CodeSandboxVariant.js +17 -5
- package/lib/models/Content.d.ts +26 -0
- package/lib/models/Deck.d.ts +14 -0
- package/lib/models/Environment.d.ts +678 -5
- package/lib/models/Environment.js +12 -1
- package/lib/models/EnvironmentDTO.d.ts +24 -6
- package/lib/models/EnvironmentDTO.js +13 -2
- package/lib/models/Exercise.d.ts +0 -2
- package/lib/models/ItemType.d.ts +1 -1
- package/lib/models/Library.d.ts +0 -2
- package/lib/models/Notebook.d.ts +0 -2
- package/lib/models/ProjectDTO.d.ts +2 -2
- package/lib/models/ProjectDTO.js +4 -4
- package/lib/models/Runtime.d.ts +17 -11
- package/lib/models/RuntimeDTO.d.ts +16 -7
- package/lib/models/RuntimeDTO.js +9 -9
- package/lib/models/Space.d.ts +10 -0
- package/lib/models/Space.js +1 -1
- package/lib/models/SpaceDTO.d.ts +1 -1
- package/lib/models/SpaceItem.d.ts +2 -2
- package/lib/models/environments.generated.d.ts +141 -0
- package/lib/models/environments.generated.js +13 -0
- package/lib/models/index.d.ts +1 -1
- package/lib/models/index.js +1 -1
- package/lib/protocols/A2AAdapter.d.ts +39 -6
- package/lib/protocols/A2AAdapter.js +180 -11
- package/lib/protocols/ACPAdapter.js +40 -37
- package/lib/protocols/AGUIAdapter.d.ts +14 -0
- package/lib/protocols/AGUIAdapter.js +34 -9
- package/lib/protocols/BrowserAgentAdapter.d.ts +125 -0
- package/lib/protocols/BrowserAgentAdapter.js +317 -0
- package/lib/protocols/VercelAIAdapter.d.ts +10 -0
- package/lib/protocols/VercelAIAdapter.js +27 -7
- package/lib/protocols/index.d.ts +1 -0
- package/lib/protocols/index.js +1 -0
- package/lib/runtimes/actions.d.ts +8 -3
- package/lib/runtimes/actions.js +46 -14
- package/lib/runtimes/apis.d.ts +13 -4
- package/lib/runtimes/browser/agent.d.ts +54 -0
- package/lib/runtimes/browser/agent.js +63 -0
- package/lib/runtimes/browser/anonymousToken.d.ts +121 -0
- package/lib/runtimes/browser/anonymousToken.js +300 -0
- package/lib/runtimes/browser/frontendTools.d.ts +61 -0
- package/lib/runtimes/browser/frontendTools.js +152 -0
- package/lib/runtimes/browser/index.d.ts +11 -0
- package/lib/runtimes/browser/index.js +20 -0
- package/lib/runtimes/browser/model.d.ts +52 -0
- package/lib/runtimes/browser/model.js +110 -0
- package/lib/runtimes/browser/protocol.d.ts +54 -0
- package/lib/runtimes/browser/protocol.js +35 -0
- package/lib/runtimes/browser/subagents.d.ts +131 -0
- package/lib/runtimes/browser/subagents.js +241 -0
- package/lib/runtimes/index.d.ts +3 -0
- package/lib/runtimes/index.js +3 -0
- package/lib/runtimes/lifecycle.d.ts +76 -0
- package/lib/runtimes/lifecycle.js +99 -0
- package/lib/runtimes/variants.d.ts +172 -0
- package/lib/runtimes/variants.js +187 -0
- package/lib/services/reconnectToRuntime.d.ts +2 -2
- package/lib/services/reconnectToRuntime.js +3 -3
- package/lib/services/sandboxServiceManagers.d.ts +2 -2
- package/lib/services/sandboxServiceManagers.js +11 -11
- package/lib/specs/agents/agents.d.ts +129 -112
- package/lib/specs/agents/agents.js +8200 -5044
- package/lib/specs/evals.js +9 -0
- package/lib/specs/frontendTools.d.ts +4 -0
- package/lib/specs/frontendTools.js +77 -3
- package/lib/specs/mcpServers.d.ts +1 -0
- package/lib/specs/mcpServers.js +38 -15
- package/lib/specs/models.d.ts +18 -0
- package/lib/specs/models.js +154 -0
- package/lib/specs/outputs.d.ts +2 -0
- package/lib/specs/outputs.js +31 -0
- package/lib/specs/personas.js +1 -1
- package/lib/specs/skills.js +7 -7
- package/lib/specs/teams/teams.d.ts +2 -0
- package/lib/specs/teams/teams.js +628 -111
- package/lib/state/index.d.ts +1 -1
- package/lib/state/index.js +1 -1
- package/lib/state/substates/RuntimesState.d.ts +5 -5
- package/lib/state/substates/RuntimesState.js +14 -14
- package/lib/state/substates/index.d.ts +1 -1
- package/lib/state/substates/index.js +1 -1
- package/lib/stores/agentRuntimeStore.d.ts +43 -1
- package/lib/stores/agentRuntimeStore.js +100 -11
- package/lib/stores/index.d.ts +1 -1
- package/lib/stores/index.js +1 -1
- package/lib/stories/Button.d.ts +1 -1
- package/lib/stories/Button.stories.d.ts +1 -1
- package/lib/stories/Header.d.ts +1 -1
- package/lib/stories/Header.stories.d.ts +1 -1
- package/lib/test-setup.js +66 -0
- package/lib/tools/adapters/agent-runtimes/lexicalHooks.d.ts +15 -0
- package/lib/tools/adapters/agent-runtimes/lexicalHooks.js +43 -2
- package/lib/tools/adapters/agent-runtimes/notebookHooks.d.ts +9 -0
- package/lib/tools/adapters/agent-runtimes/notebookHooks.js +12 -0
- package/lib/tools/adapters/commands/frontendCommandTools.d.ts +11 -0
- package/lib/tools/adapters/commands/frontendCommandTools.js +60 -0
- package/lib/tools/adapters/commands/index.d.ts +1 -0
- package/lib/tools/adapters/commands/index.js +5 -0
- package/lib/tools/adapters/copilotkit/lexicalHooks.js +7 -3
- package/lib/tools/index.d.ts +1 -0
- package/lib/tools/index.js +1 -0
- package/lib/types/a2a.d.ts +15 -1
- package/lib/types/agents-lifecycle.d.ts +11 -6
- package/lib/types/agents.d.ts +31 -6
- package/lib/types/agentspecs.d.ts +120 -4
- package/lib/types/chat.d.ts +251 -3
- package/lib/types/checkpoints.d.ts +20 -0
- package/lib/types/config.d.ts +13 -1
- package/lib/types/connection.d.ts +1 -1
- package/lib/types/evals.d.ts +2 -0
- package/lib/types/messages.d.ts +60 -0
- package/lib/types/models.d.ts +26 -0
- package/lib/types/notifications.d.ts +15 -6
- package/lib/types/outputs.d.ts +2 -0
- package/lib/types/protocol.d.ts +7 -2
- package/lib/types/stream.d.ts +48 -3
- package/lib/types/stream.js +5 -0
- package/lib/types/teams.d.ts +102 -4
- package/lib/types/tool-approvals.d.ts +1 -1
- package/lib/types/tools.d.ts +8 -2
- package/lib/utils/utils.js +7 -1
- package/package.json +376 -361
- package/scripts/codegen/compose.py +208 -0
- package/scripts/codegen/generate_agents.py +202 -31
- package/scripts/codegen/generate_evals.py +2 -0
- package/scripts/codegen/generate_frontend_tools.py +35 -6
- package/scripts/codegen/generate_mcp_servers.py +2 -2
- package/scripts/codegen/generate_models.py +40 -15
- package/scripts/codegen/generate_outputs.py +2 -0
- package/scripts/codegen/generate_sandbox_agents.py +76 -62
- package/scripts/codegen/generate_skills.py +2 -2
- package/scripts/codegen/generate_teams.py +178 -4
- package/scripts/codegen/generate_tools.py +6 -4
- package/scripts/gen_workers.py +278 -110
- package/scripts/generate-environments-types.py +404 -0
- package/lib/chat/prompt/InputFooter.d.ts +0 -58
- package/lib/chat/prompt/InputFooter.js +0 -194
- package/lib/chat/prompt/InputPromptFooter.d.ts +0 -27
- package/lib/chat/prompt/InputPromptFooter.js +0 -15
- package/lib/chat/prompt/InputPromptHeader.d.ts +0 -15
- package/lib/chat/prompt/InputPromptHeader.js +0 -15
- package/lib/chat/usage/TokenUsageBar.d.ts +0 -8
- package/lib/hooks/useRuntimes.d.ts +0 -5
- package/lib/hooks/useRuntimes.js +0 -34
- package/lib/jupyter/kernelsHandler.d.ts +0 -8
- package/lib/jupyter/kernelsHandler.js +0 -39
- package/lib/models/Dataset.d.ts +0 -16
- package/lib/utils/Cells.d.ts +0 -2
- package/lib/utils/Cells.js +0 -28
- /package/lib/models/{Dataset.js → Deck.js} +0 -0
|
@@ -8,8 +8,18 @@
|
|
|
8
8
|
*
|
|
9
9
|
* @module tools/adapters/agent-runtimes/lexicalHooks
|
|
10
10
|
*/
|
|
11
|
+
/*
|
|
12
|
+
* First, before anything lexical: `@datalayer/jupyter-lexical` pulls
|
|
13
|
+
* `@lexical/code`, whose Prism language components read the bare global
|
|
14
|
+
* `Prism` the moment they evaluate — and PrismCss is what defines it. This
|
|
15
|
+
* module is now loaded *eagerly by the document plugin's build* (to
|
|
16
|
+
* contribute the document tools), so it can be the first lexical import in
|
|
17
|
+
* the page; without this line the whole document chunk died on "Prism is
|
|
18
|
+
* not defined".
|
|
19
|
+
*/
|
|
20
|
+
import '@datalayer/jupyter-react/lib/css/PrismCss';
|
|
11
21
|
import { useMemo } from 'react';
|
|
12
|
-
import { lexicalStore, DefaultExecutor as LexicalDefaultExecutor,
|
|
22
|
+
import { lexicalStore, DefaultExecutor as LexicalDefaultExecutor, getLexicalTools, useLexicalToolBundle, } from '@datalayer/jupyter-lexical';
|
|
13
23
|
import { createAllAgentRuntimesTools } from './AgentRuntimesToolAdapter';
|
|
14
24
|
/**
|
|
15
25
|
* Hook that creates agent-runtimes tools for lexical operations.
|
|
@@ -41,6 +51,25 @@ import { createAllAgentRuntimesTools } from './AgentRuntimesToolAdapter';
|
|
|
41
51
|
* />
|
|
42
52
|
* ```
|
|
43
53
|
*/
|
|
54
|
+
/**
|
|
55
|
+
* The document's frontend tools, built without React.
|
|
56
|
+
*
|
|
57
|
+
* The plain twin of `useLexicalTools`, for the document plugin contributing
|
|
58
|
+
* to the chat's `LoopFrontendTool` point. The executor reads the lexical
|
|
59
|
+
* store's live state through its methods; no reactivity needed.
|
|
60
|
+
*/
|
|
61
|
+
export function createLexicalTools(documentId, contextOverrides) {
|
|
62
|
+
const executor = new LexicalDefaultExecutor(documentId, lexicalStore.getState());
|
|
63
|
+
// A snapshot: whichever plugins have mounted by now. The React hook below
|
|
64
|
+
// is the one that keeps up as they come and go.
|
|
65
|
+
const { definitions, operations } = getLexicalTools(documentId);
|
|
66
|
+
return createAllAgentRuntimesTools(definitions, operations, {
|
|
67
|
+
documentId,
|
|
68
|
+
executor,
|
|
69
|
+
format: 'toon',
|
|
70
|
+
...contextOverrides,
|
|
71
|
+
});
|
|
72
|
+
}
|
|
44
73
|
export function useLexicalTools(documentId, contextOverrides) {
|
|
45
74
|
// Create DefaultExecutor — stable reference, only recreate when documentId changes.
|
|
46
75
|
// lexicalStore is a module-level Zustand store singleton; getState() returns
|
|
@@ -54,6 +83,18 @@ export function useLexicalTools(documentId, contextOverrides) {
|
|
|
54
83
|
format: 'toon',
|
|
55
84
|
...contextOverrides,
|
|
56
85
|
}), [documentId, executor, contextOverrides]);
|
|
86
|
+
/*
|
|
87
|
+
* The tools a document offers are not a constant.
|
|
88
|
+
*
|
|
89
|
+
* The block tools are — every Lexical document has blocks — but a plugin
|
|
90
|
+
* brings its own, and which plugins are mounted is the editor's business,
|
|
91
|
+
* not this hook's. `useLexicalToolBundle` watches the set of mounted
|
|
92
|
+
* plugins by name, so this recomputes when the editor gains or loses one
|
|
93
|
+
* and at no other time: the stability the comment above is about is
|
|
94
|
+
* preserved, because a block insertion does not change which plugins are
|
|
95
|
+
* mounted.
|
|
96
|
+
*/
|
|
97
|
+
const bundle = useLexicalToolBundle(documentId);
|
|
57
98
|
// Create and return tools (stable reference)
|
|
58
|
-
return useMemo(() => createAllAgentRuntimesTools(
|
|
99
|
+
return useMemo(() => createAllAgentRuntimesTools(bundle.definitions, bundle.operations, context), [bundle, context]);
|
|
59
100
|
}
|
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
import type { ToolExecutionContext } from '@datalayer/jupyter-react';
|
|
2
2
|
import type { FrontendToolDefinition } from '../../../types/tools';
|
|
3
|
+
/**
|
|
4
|
+
* The notebook's frontend tools, built without React.
|
|
5
|
+
*
|
|
6
|
+
* What `useNotebookTools` memoises, as a plain function — for callers that
|
|
7
|
+
* are not components: a reactor plugin contributing the tools to the chat's
|
|
8
|
+
* `LoopFrontendTool` point builds them here. The executor reads the store's
|
|
9
|
+
* live state through its methods, so nothing here needs reactivity.
|
|
10
|
+
*/
|
|
11
|
+
export declare function createNotebookTools(documentId: string, contextOverrides?: Partial<Omit<ToolExecutionContext, 'executor' | 'documentId'>>): FrontendToolDefinition[];
|
|
3
12
|
/**
|
|
4
13
|
* Hook that creates agent-runtimes tools for notebook operations.
|
|
5
14
|
* Returns stable tools array that won't cause re-renders.
|
|
@@ -13,6 +13,18 @@ import { notebookStore, DefaultExecutor, notebookToolDefinitions, notebookToolOp
|
|
|
13
13
|
import { createAllAgentRuntimesTools } from './AgentRuntimesToolAdapter';
|
|
14
14
|
// Hook wrapper to get notebook store state
|
|
15
15
|
const useNotebookStore = () => notebookStore.getState();
|
|
16
|
+
/**
|
|
17
|
+
* The notebook's frontend tools, built without React.
|
|
18
|
+
*
|
|
19
|
+
* What `useNotebookTools` memoises, as a plain function — for callers that
|
|
20
|
+
* are not components: a reactor plugin contributing the tools to the chat's
|
|
21
|
+
* `LoopFrontendTool` point builds them here. The executor reads the store's
|
|
22
|
+
* live state through its methods, so nothing here needs reactivity.
|
|
23
|
+
*/
|
|
24
|
+
export function createNotebookTools(documentId, contextOverrides) {
|
|
25
|
+
const executor = new DefaultExecutor(documentId, notebookStore.getState());
|
|
26
|
+
return createAllAgentRuntimesTools(notebookToolDefinitions, notebookToolOperations, { documentId, executor, format: 'toon', ...contextOverrides });
|
|
27
|
+
}
|
|
16
28
|
/**
|
|
17
29
|
* Hook that creates agent-runtimes tools for notebook operations.
|
|
18
30
|
* Returns stable tools array that won't cause re-renders.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { AgentToolBundle, ReactorPlatform } from '@datalayer/reactor';
|
|
2
|
+
import type { FrontendToolDefinition } from '../../../types';
|
|
3
|
+
/** One bundle's commands, executed on a reactor. Only the `toolset` is offered. */
|
|
4
|
+
export declare function agentBundleTools(bundle: AgentToolBundle, reactor: ReactorPlatform | null | undefined): FrontendToolDefinition[];
|
|
5
|
+
/** Every command tool of every bundle, in contribution order. */
|
|
6
|
+
export declare function agentBundleToolDefinitions(bundles: AgentToolBundle[], reactor: ReactorPlatform | null | undefined): FrontendToolDefinition[];
|
|
7
|
+
/**
|
|
8
|
+
* The command tools every mounted plugin declared, bound to this page's
|
|
9
|
+
* reactor — live, so a plugin switched on later brings its tools with it.
|
|
10
|
+
*/
|
|
11
|
+
export declare function useAgentCommandTools(): FrontendToolDefinition[];
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025-2026 Datalayer, Inc.
|
|
3
|
+
* Distributed under the terms of the Modified BSD License.
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* The agent tools plugins declared, as tools the browser loop can call.
|
|
7
|
+
*
|
|
8
|
+
* A plugin contributes an `AgentTools` bundle to the reactor: its commands,
|
|
9
|
+
* named and described for a model. Each becomes a `FrontendToolDefinition` —
|
|
10
|
+
* the shape the notebook tools have, so a host adds them the same way — whose
|
|
11
|
+
* handler runs `reactor.executeCommand(command, args)` on the reactor the
|
|
12
|
+
* host is mounted in, which is exactly what the keystroke does. What the
|
|
13
|
+
* command returns is the tool's result: a command that lists the decks
|
|
14
|
+
* answers with the list, and a command that returns nothing answers that it
|
|
15
|
+
* ran. A host with a richer in-page implementation of the same tool
|
|
16
|
+
* contributes it under the same name, and the chat folds these in after
|
|
17
|
+
* contributions, so the bundle's version steps aside.
|
|
18
|
+
*
|
|
19
|
+
* @module tools/adapters/commands
|
|
20
|
+
*/
|
|
21
|
+
import { useMemo } from 'react';
|
|
22
|
+
import { useAgentToolBundles, useOptionalReactorPlatform, } from '@datalayer/reactor/react';
|
|
23
|
+
const NO_ARGUMENTS = { type: 'object', properties: {} };
|
|
24
|
+
/** One bundle's commands, executed on a reactor. Only the `toolset` is offered. */
|
|
25
|
+
export function agentBundleTools(bundle, reactor) {
|
|
26
|
+
const granted = new Set(bundle.toolset);
|
|
27
|
+
return bundle.commands
|
|
28
|
+
.filter((entry) => granted.has(entry.name))
|
|
29
|
+
.map((entry) => ({
|
|
30
|
+
name: entry.name,
|
|
31
|
+
description: entry.description,
|
|
32
|
+
parameters: entry.parameters ?? NO_ARGUMENTS,
|
|
33
|
+
location: 'frontend',
|
|
34
|
+
handler: async (args) => {
|
|
35
|
+
if (!reactor) {
|
|
36
|
+
throw new Error(`${entry.name}: the ${bundle.plugin ?? bundle.id} plugin is not mounted on this page.`);
|
|
37
|
+
}
|
|
38
|
+
const argument = Object.keys(args ?? {}).length > 0 ? args : undefined;
|
|
39
|
+
const result = await reactor.executeCommand(entry.command, argument);
|
|
40
|
+
// The command's own answer when it gave one; otherwise the fact that
|
|
41
|
+
// it ran, which is all a keystroke-shaped command has to say.
|
|
42
|
+
return result === undefined
|
|
43
|
+
? { ok: true, command: entry.command, argument }
|
|
44
|
+
: result;
|
|
45
|
+
},
|
|
46
|
+
}));
|
|
47
|
+
}
|
|
48
|
+
/** Every command tool of every bundle, in contribution order. */
|
|
49
|
+
export function agentBundleToolDefinitions(bundles, reactor) {
|
|
50
|
+
return bundles.flatMap(bundle => agentBundleTools(bundle, reactor));
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* The command tools every mounted plugin declared, bound to this page's
|
|
54
|
+
* reactor — live, so a plugin switched on later brings its tools with it.
|
|
55
|
+
*/
|
|
56
|
+
export function useAgentCommandTools() {
|
|
57
|
+
const reactor = useOptionalReactorPlatform();
|
|
58
|
+
const bundles = useAgentToolBundles();
|
|
59
|
+
return useMemo(() => agentBundleToolDefinitions(bundles, reactor), [bundles, reactor]);
|
|
60
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './frontendCommandTools';
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* @module tools/adapters/copilotkit/lexicalHooks
|
|
10
10
|
*/
|
|
11
11
|
import { useMemo } from 'react';
|
|
12
|
-
import { useLexicalStore, DefaultExecutor as LexicalDefaultExecutor,
|
|
12
|
+
import { useLexicalStore, DefaultExecutor as LexicalDefaultExecutor, useLexicalToolBundle, } from '@datalayer/jupyter-lexical';
|
|
13
13
|
import { createAllCopilotKitActions } from './CopilotKitToolAdapter';
|
|
14
14
|
/**
|
|
15
15
|
* Hook that creates CopilotKit actions for lexical tools.
|
|
@@ -50,8 +50,12 @@ export function useLexicalToolActions(documentId, contextOverrides) {
|
|
|
50
50
|
format: 'toon', // Default format
|
|
51
51
|
...contextOverrides, // Override with user-provided values
|
|
52
52
|
}), [documentId, executor, contextOverrides]);
|
|
53
|
+
// The document's tools: the block ones, plus whatever the plugins mounted
|
|
54
|
+
// in this editor have contributed. Changes only when a plugin mounts or
|
|
55
|
+
// unmounts.
|
|
56
|
+
const bundle = useLexicalToolBundle(documentId);
|
|
53
57
|
// Create and return CopilotKit actions (stable reference)
|
|
54
|
-
// Only re-create when context
|
|
55
|
-
const actions = useMemo(() => createAllCopilotKitActions(
|
|
58
|
+
// Only re-create when the context or the mounted plugins change
|
|
59
|
+
const actions = useMemo(() => createAllCopilotKitActions(bundle.definitions, bundle.operations, context), [bundle, context]);
|
|
56
60
|
return actions;
|
|
57
61
|
}
|
package/lib/tools/index.d.ts
CHANGED
package/lib/tools/index.js
CHANGED
package/lib/types/a2a.d.ts
CHANGED
|
@@ -1,4 +1,18 @@
|
|
|
1
1
|
import { ChatMessage } from './messages';
|
|
2
|
+
/**
|
|
3
|
+
* A protocol extension an agent card advertises supporting
|
|
4
|
+
* (https://a2a-protocol.org/latest/topics/extensions/): a URI, not the
|
|
5
|
+
* bare string this codebase's `capabilities.extensions` used to be typed
|
|
6
|
+
* as. A real card's entries are objects — `{ uri, description?, required?
|
|
7
|
+
* }` — and a `string[]` type made `.includes(uri)` silently false against
|
|
8
|
+
* one, even though nothing read the field yet to notice.
|
|
9
|
+
*/
|
|
10
|
+
export interface AgentExtension {
|
|
11
|
+
uri: string;
|
|
12
|
+
description?: string;
|
|
13
|
+
required?: boolean;
|
|
14
|
+
params?: Record<string, unknown>;
|
|
15
|
+
}
|
|
2
16
|
/**
|
|
3
17
|
* Agent card for A2A protocol
|
|
4
18
|
*/
|
|
@@ -9,7 +23,7 @@ export interface AgentCard {
|
|
|
9
23
|
version?: string;
|
|
10
24
|
capabilities?: {
|
|
11
25
|
streaming?: boolean;
|
|
12
|
-
extensions?:
|
|
26
|
+
extensions?: AgentExtension[];
|
|
13
27
|
};
|
|
14
28
|
skills?: Array<{
|
|
15
29
|
id: string;
|
|
@@ -30,12 +30,17 @@ export type CreateAgentRuntimeRequest = {
|
|
|
30
30
|
billingSourceOrganizationUid?: string;
|
|
31
31
|
/** Source organization handle for team-billed runtimes. */
|
|
32
32
|
billingSourceOrganizationHandle?: string;
|
|
33
|
-
/**
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
33
|
+
/**
|
|
34
|
+
* The runtime's uid (a ULID) the Contents attachments were made for; the
|
|
35
|
+
* runtime is created under it so the attachments name the right sandbox.
|
|
36
|
+
*/
|
|
37
|
+
runtimeName?: string;
|
|
38
|
+
/**
|
|
39
|
+
* Contents attachments to mount, created for `runtimeName` before the runtime:
|
|
40
|
+
* a Home Folder attachment mounts the caller's home folders, a Volume
|
|
41
|
+
* attachment mounts its Volume. There is no other way to ask for a mount.
|
|
42
|
+
*/
|
|
43
|
+
contentAttachmentUids?: string[];
|
|
39
44
|
};
|
|
40
45
|
export type CreateRuntimeApiResponse = {
|
|
41
46
|
success?: boolean;
|
package/lib/types/agents.d.ts
CHANGED
|
@@ -30,13 +30,13 @@ export interface AgentRuntimeState {
|
|
|
30
30
|
/**
|
|
31
31
|
* Agent Runtime data type (mapped from runtimes service).
|
|
32
32
|
*
|
|
33
|
-
* Backend
|
|
33
|
+
* Backend RuntimeRecord fields: runtime_name, environment{name,title,cpu,memory,gpu,resources}, uid,
|
|
34
34
|
* type, given_name, token, ingress, reservation_id, started_at, expired_at, burning_rate.
|
|
35
35
|
*
|
|
36
36
|
* We map `ingress` to `url` for consistency with the UI.
|
|
37
37
|
*/
|
|
38
38
|
export type AgentRuntimeData = {
|
|
39
|
-
|
|
39
|
+
runtime_name: string;
|
|
40
40
|
id: string;
|
|
41
41
|
name: string;
|
|
42
42
|
environment: {
|
|
@@ -62,15 +62,40 @@ export type AgentRuntimeData = {
|
|
|
62
62
|
billing_entity_uid?: string;
|
|
63
63
|
billing_entity_type?: 'user' | 'organization' | 'team';
|
|
64
64
|
billing_entity_handle?: string;
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
65
|
+
/** Home folders the runtime mounts: the caller's own and their memberships. */
|
|
66
|
+
home_folder_mounts?: RuntimeHomeFolderMount[];
|
|
67
|
+
/** Contents attachments the runtime mounts, as recorded on its pod. */
|
|
68
|
+
content_attachments?: RuntimeContentAttachment[];
|
|
69
|
+
};
|
|
70
|
+
/** One home folder a runtime mounts, at `~/{handle}`. */
|
|
71
|
+
export type RuntimeHomeFolderMount = {
|
|
72
|
+
type: 'user' | 'organization' | 'team';
|
|
73
|
+
uid: string;
|
|
74
|
+
handle?: string;
|
|
75
|
+
organization_handle?: string;
|
|
76
|
+
};
|
|
77
|
+
/**
|
|
78
|
+
* A Contents attachment as the runtime reports it.
|
|
79
|
+
*
|
|
80
|
+
* `source_kind` is the kind of the attached source — `files` for the Home
|
|
81
|
+
* Folder, `volume` for a Volume — which is what tells the two mounts apart.
|
|
82
|
+
*/
|
|
83
|
+
export type RuntimeContentAttachment = {
|
|
84
|
+
uid?: string;
|
|
85
|
+
source_uid?: string;
|
|
86
|
+
source_kind?: string;
|
|
87
|
+
delivery?: 'mount' | 'local-bridge' | 'materialize' | 'client' | 'environment';
|
|
88
|
+
mount_path?: string | null;
|
|
89
|
+
mode?: 'ro' | 'rw';
|
|
90
|
+
required?: boolean;
|
|
91
|
+
status?: string;
|
|
92
|
+
provider_resource_id?: string | null;
|
|
68
93
|
};
|
|
69
94
|
export interface RunningAgent {
|
|
70
95
|
/** Unique agent ID within the runtime */
|
|
71
96
|
agentId: string;
|
|
72
97
|
/** Pod name in Kubernetes */
|
|
73
|
-
|
|
98
|
+
runtimeName: string;
|
|
74
99
|
/** Agent display name */
|
|
75
100
|
name: string;
|
|
76
101
|
/** Agentspec ID used to create the agent */
|
|
@@ -14,6 +14,66 @@ import type { AgentCodemodeConfig, AgentAdvancedConfig } from './config';
|
|
|
14
14
|
* Defines the configuration for a reusable agent template that can be
|
|
15
15
|
* instantiated as an Agent Runtime.
|
|
16
16
|
*/
|
|
17
|
+
/**
|
|
18
|
+
* An opener offered to somebody arriving at an empty chat.
|
|
19
|
+
*
|
|
20
|
+
* Text and, optionally, a mark to show beside it. It was a bare string, which
|
|
21
|
+
* is enough for a chip in an empty state and not enough for anywhere else a
|
|
22
|
+
* suggestion is offered — a menu, a launcher, a list of what an agent is for —
|
|
23
|
+
* where an unmarked row of sentences is hard to scan. Both marks are optional
|
|
24
|
+
* and independent: an octicon suits chrome already drawn in line art, an emoji
|
|
25
|
+
* suits a place that has colour.
|
|
26
|
+
*/
|
|
27
|
+
export interface AgentSuggestion {
|
|
28
|
+
/** What is sent when the suggestion is taken. */
|
|
29
|
+
text: string;
|
|
30
|
+
/**
|
|
31
|
+
* A few words shown as the label where the text is too long to be one — a
|
|
32
|
+
* chip, a menu row. The text itself is then the tooltip.
|
|
33
|
+
*/
|
|
34
|
+
summary?: string;
|
|
35
|
+
/** Octicon name to show beside it. */
|
|
36
|
+
icon?: string;
|
|
37
|
+
/** Unicode emoji to show beside it. */
|
|
38
|
+
emoji?: string;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Conversation checkpoint configuration.
|
|
42
|
+
*
|
|
43
|
+
* Snapshots of the message history the agent (or the person) can rewind to.
|
|
44
|
+
* Complementary to runtime checkpoints (CRIU), which freeze the whole process.
|
|
45
|
+
*/
|
|
46
|
+
export interface AgentCheckpointsConfig {
|
|
47
|
+
/** Whether checkpointing is on for this agent. */
|
|
48
|
+
enabled?: boolean;
|
|
49
|
+
/** When a checkpoint is taken on its own. */
|
|
50
|
+
frequency?: 'every_turn' | 'every_tool' | 'manual_only';
|
|
51
|
+
/** Rolling window: the oldest checkpoint goes when this is exceeded. */
|
|
52
|
+
max_checkpoints?: number;
|
|
53
|
+
/** Where checkpoints are kept. */
|
|
54
|
+
store?: 'in_memory' | 'file';
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* One kind of work an agent can be delegated, and what it takes and returns.
|
|
58
|
+
*
|
|
59
|
+
* The unit `agents.discover` matches on. It maps onto an A2A agent card's
|
|
60
|
+
* `skills` entry, so a Datalayer agentspec and a third-party A2A worker are
|
|
61
|
+
* discoverable through one query rather than two.
|
|
62
|
+
*/
|
|
63
|
+
export interface AgentCapability {
|
|
64
|
+
/** One of the closed vocabulary in `agent_runtimes.types`. */
|
|
65
|
+
id: string;
|
|
66
|
+
/** Display label; the vocabulary's own description when absent. */
|
|
67
|
+
name?: string;
|
|
68
|
+
/** What this agent in particular does under that capability. */
|
|
69
|
+
description?: string;
|
|
70
|
+
/** Context reference kinds it accepts — notebook, dataset, file, sandbox. */
|
|
71
|
+
inputs?: string[];
|
|
72
|
+
/** Artifact types it produces — notebook, report, dataset, file. */
|
|
73
|
+
outputs?: string[];
|
|
74
|
+
/** Free text, for humans reading a catalogue; never matched on. */
|
|
75
|
+
tags?: string[];
|
|
76
|
+
}
|
|
17
77
|
export interface Agentspec {
|
|
18
78
|
/** Unique agent identifier */
|
|
19
79
|
id: string;
|
|
@@ -58,17 +118,40 @@ export interface Agentspec {
|
|
|
58
118
|
/** Theme color for the agent (hex code) */
|
|
59
119
|
color?: string;
|
|
60
120
|
/** Chat suggestions to show users what this agent can do */
|
|
61
|
-
suggestions?:
|
|
121
|
+
suggestions?: AgentSuggestion[];
|
|
62
122
|
/** Welcome message shown when agent starts */
|
|
63
123
|
welcomeMessage?: string;
|
|
64
124
|
/** Path to Jupyter notebook to show on agent creation */
|
|
65
125
|
welcomeNotebook?: string;
|
|
66
126
|
/** Path to Lexical document to show on agent creation */
|
|
67
127
|
welcomeDocument?: string;
|
|
68
|
-
/**
|
|
128
|
+
/**
|
|
129
|
+
* Which agent framework runs this agent's loop.
|
|
130
|
+
*
|
|
131
|
+
* `pydantic-ai` (the default) runs it server-side in the agent runtime;
|
|
132
|
+
* `vercel-ai` runs it in the browser with the Vercel AI SDK, for an agent
|
|
133
|
+
* that has to work with no server behind it. Distinct from `protocol`,
|
|
134
|
+
* which says how a client and an agent talk rather than what runs the loop.
|
|
135
|
+
*/
|
|
136
|
+
harness?: string;
|
|
137
|
+
/** Sandbox variant to use for this agent (e.g. 'eval', 'jupyter-server', 'kaggle'). */
|
|
69
138
|
sandboxVariant?: string;
|
|
70
139
|
/** User-facing objective for the agent */
|
|
71
140
|
goal?: string;
|
|
141
|
+
/**
|
|
142
|
+
* What work this agent can be delegated (ORCHESTRATOR.md, O2-07).
|
|
143
|
+
*
|
|
144
|
+
* `protocol` below says how a client and an agent talk; this says what it
|
|
145
|
+
* is worth handing the agent. Ids come from a closed vocabulary, because
|
|
146
|
+
* `agents.discover --capability notebook.validate` has to match something
|
|
147
|
+
* and free text does not: two specs saying "analysis" and "analyse"
|
|
148
|
+
* describe the same work and find each other never.
|
|
149
|
+
*
|
|
150
|
+
* Deliberately not called `capabilities`: that name is already taken on
|
|
151
|
+
* this type for pydantic-ai capability configurations, which are runtime
|
|
152
|
+
* behaviours attached to an agent rather than work handed to it.
|
|
153
|
+
*/
|
|
154
|
+
delegable?: AgentCapability[];
|
|
72
155
|
/** Communication protocol (e.g., 'ag-ui', 'acp', 'a2a', 'vercel-ai') */
|
|
73
156
|
protocol?: string;
|
|
74
157
|
/** UI extension type (e.g., 'a2ui', 'mcp-apps') */
|
|
@@ -89,6 +172,8 @@ export interface Agentspec {
|
|
|
89
172
|
output?: AgentOutputConfig;
|
|
90
173
|
/** Advanced settings (cost_limit, time_limit, max_iterations, validation) */
|
|
91
174
|
advanced?: AgentAdvancedConfig;
|
|
175
|
+
/** Conversation checkpoints: auto-snapshots of the history, with tools to save, list and rewind. */
|
|
176
|
+
checkpoints?: AgentCheckpointsConfig;
|
|
92
177
|
/** Authorization policy */
|
|
93
178
|
authorizationPolicy?: string;
|
|
94
179
|
/** Notification configuration (email, slack) */
|
|
@@ -111,6 +196,22 @@ export interface Agentspec {
|
|
|
111
196
|
/** Subagent delegation configuration. */
|
|
112
197
|
subagents?: SubAgentsConfig;
|
|
113
198
|
}
|
|
199
|
+
/**
|
|
200
|
+
* Where a subagent reached over A2A lives, or how to launch it.
|
|
201
|
+
*
|
|
202
|
+
* Either `url` names an agent already running, or the subagent's `ref` names
|
|
203
|
+
* the agentspec to launch one from — on the local agent-runtimes server when
|
|
204
|
+
* the parent runs locally and on a Datalayer runtime when it runs in the
|
|
205
|
+
* cloud (`launch: 'auto'`, the default), or on one of those explicitly.
|
|
206
|
+
*/
|
|
207
|
+
export interface A2ASubagentConfig {
|
|
208
|
+
/** JSON-RPC endpoint of an A2A agent already running. */
|
|
209
|
+
url?: string;
|
|
210
|
+
/** Where to launch the agent named by `ref`. */
|
|
211
|
+
launch?: 'local' | 'cloud' | 'auto';
|
|
212
|
+
/** Runtime environment for a cloud launch. */
|
|
213
|
+
environment?: string;
|
|
214
|
+
}
|
|
114
215
|
/**
|
|
115
216
|
* Configuration for a subagent within an agent specification.
|
|
116
217
|
*/
|
|
@@ -119,8 +220,23 @@ export interface SubAgentspecConfig {
|
|
|
119
220
|
name: string;
|
|
120
221
|
/** Brief description shown to the parent agent */
|
|
121
222
|
description: string;
|
|
122
|
-
/**
|
|
123
|
-
|
|
223
|
+
/**
|
|
224
|
+
* System prompt for the subagent. Optional when `ref` names an agentspec to
|
|
225
|
+
* take it from.
|
|
226
|
+
*/
|
|
227
|
+
instructions?: string;
|
|
228
|
+
/**
|
|
229
|
+
* An agentspec this subagent *is*, as `<id>:<version>`.
|
|
230
|
+
*
|
|
231
|
+
* A specialist defined once and referenced by many parents, rather than its
|
|
232
|
+
* instructions copy-pasted into each — which is how they drift apart.
|
|
233
|
+
*/
|
|
234
|
+
ref?: string;
|
|
235
|
+
/**
|
|
236
|
+
* Reach this subagent over A2A, as a separate agent, instead of running it
|
|
237
|
+
* inside the parent's process.
|
|
238
|
+
*/
|
|
239
|
+
a2a?: A2ASubagentConfig;
|
|
124
240
|
/** LLM model to use (defaults to parent agent's model) */
|
|
125
241
|
model?: string;
|
|
126
242
|
/** Whether the subagent can ask the parent for clarification */
|