@datalayer/agent-runtimes 1.0.9 → 1.0.17
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 +82 -1
- package/lib/{AgentLexical.d.ts → AgentDocument.d.ts} +5 -5
- package/lib/{AgentLexical.js → AgentDocument.js} +156 -26
- package/lib/AgentNode.js +32 -31
- package/lib/AgentNotebook.js +172 -17
- package/lib/AppExamples2.css +47 -0
- package/lib/AppExamples2.d.ts +3 -0
- package/lib/AppExamples2.js +21 -0
- package/lib/{agent-lexical-main.js → agent-document-main.js} +2 -2
- package/lib/agents/AgentRuntimeChat.d.ts +73 -0
- package/lib/agents/AgentRuntimeChat.js +198 -0
- package/lib/api/index.d.ts +12 -0
- package/lib/api/index.js +46 -0
- package/lib/api/runtimes/checkpoints.d.ts +122 -0
- package/lib/api/runtimes/checkpoints.js +118 -0
- package/lib/api/runtimes/environments.d.ts +9 -0
- package/lib/api/runtimes/environments.js +29 -0
- package/lib/api/runtimes/healthz.d.ts +15 -0
- package/lib/api/runtimes/healthz.js +44 -0
- package/lib/api/runtimes/index.d.ts +12 -0
- package/lib/api/runtimes/index.js +16 -0
- package/lib/api/runtimes/runtimes.d.ts +138 -0
- package/lib/api/runtimes/runtimes.js +230 -0
- package/lib/api/runtimes/snapshots.d.ts +38 -0
- package/lib/api/runtimes/snapshots.js +82 -0
- package/lib/api/scheduler/index.d.ts +6 -0
- package/lib/api/scheduler/index.js +10 -0
- package/lib/api/scheduler/schedules.d.ts +85 -0
- package/lib/api/scheduler/schedules.js +78 -0
- package/lib/api/spacer/documents.d.ts +12 -0
- package/lib/api/spacer/documents.js +43 -0
- package/lib/api/spacer/healthz.d.ts +15 -0
- package/lib/api/spacer/healthz.js +44 -0
- package/lib/api/spacer/index.d.ts +15 -0
- package/lib/api/spacer/index.js +19 -0
- package/lib/api/spacer/items.d.ts +25 -0
- package/lib/api/spacer/items.js +55 -0
- package/lib/api/spacer/lexicals.d.ts +34 -0
- package/lib/api/spacer/lexicals.js +89 -0
- package/lib/api/spacer/notebooks.d.ts +34 -0
- package/lib/api/spacer/notebooks.js +89 -0
- package/lib/api/spacer/spaces.d.ts +84 -0
- package/lib/api/spacer/spaces.js +170 -0
- package/lib/api/spacer/users.d.ts +9 -0
- package/lib/api/spacer/users.js +29 -0
- package/lib/chat/Chat.d.ts +1 -1
- package/lib/chat/Chat.js +54 -54
- package/lib/chat/ChatFloating.d.ts +2 -2
- package/lib/chat/ChatFloating.js +136 -25
- package/lib/chat/ChatSidebar.js +20 -22
- package/lib/chat/base/ChatBase.js +468 -40
- package/lib/chat/display/EmptyState.js +21 -21
- package/lib/chat/document/EphemeralDocument.d.ts +23 -0
- package/lib/chat/document/EphemeralDocument.js +270 -0
- package/lib/chat/header/ChatHeaderBase.d.ts +12 -2
- package/lib/chat/header/ChatHeaderBase.js +78 -23
- package/lib/chat/index.d.ts +1 -0
- package/lib/chat/index.js +2 -0
- package/lib/chat/notebook/EphemeralNotebook.d.ts +24 -0
- package/lib/chat/notebook/EphemeralNotebook.js +252 -0
- package/lib/chat/prompt/InputFooter.js +4 -1
- package/lib/client/AgentRuntimesClient.d.ts +127 -0
- package/lib/client/AgentRuntimesClient.js +36 -0
- package/lib/client/AgentsMixin.d.ts +4 -4
- package/lib/client/AgentsMixin.js +35 -35
- package/lib/client/SdkAgentRuntimesClient.d.ts +1 -1
- package/lib/client/SdkAgentRuntimesClient.js +1 -1
- package/lib/client/mixins/RuntimesMixin.d.ts +93 -0
- package/lib/client/mixins/RuntimesMixin.js +229 -0
- package/lib/client/mixins/SpacerMixin.d.ts +210 -0
- package/lib/client/mixins/SpacerMixin.js +615 -0
- package/lib/client/utils/spacerUtils.d.ts +18 -0
- package/lib/client/utils/spacerUtils.js +32 -0
- package/lib/collaboration/DatalayerCollaboration.d.ts +13 -0
- package/lib/collaboration/DatalayerCollaboration.js +28 -0
- package/lib/collaboration/DatalayerCollaborationProvider.d.ts +58 -0
- package/lib/collaboration/DatalayerCollaborationProvider.js +148 -0
- package/lib/collaboration/index.d.ts +2 -0
- package/lib/collaboration/index.js +6 -0
- package/lib/components/AgentSummary.d.ts +19 -0
- package/lib/components/AgentSummary.js +89 -0
- package/lib/components/ToolApprovalCard.js +13 -3
- package/lib/components/a2ui/A2uiSurfaceComposed.d.ts +13 -0
- package/lib/components/a2ui/A2uiSurfaceComposed.js +110 -0
- package/lib/components/a2ui/index.d.ts +2 -0
- package/lib/components/a2ui/index.js +6 -0
- package/lib/components/a2ui/styles.d.ts +14 -0
- package/lib/components/a2ui/styles.js +142 -0
- package/lib/components/context/SpaceSelect.d.ts +2 -0
- package/lib/components/context/SpaceSelect.js +42 -0
- package/lib/components/flashes/FlashDisclaimer.d.ts +2 -0
- package/lib/components/flashes/FlashDisclaimer.js +17 -0
- package/lib/components/icons/ArtifactIcon.d.ts +10 -0
- package/lib/components/icons/ArtifactIcon.js +58 -0
- package/lib/components/icons/index.d.ts +1 -0
- package/lib/components/icons/index.js +5 -0
- package/lib/components/index.d.ts +5 -0
- package/lib/components/index.js +5 -0
- package/lib/components/nbgrader/NbGradesDetails.d.ts +5 -0
- package/lib/components/nbgrader/NbGradesDetails.js +19 -0
- package/lib/components/nbgrader/index.d.ts +1 -0
- package/lib/components/nbgrader/index.js +5 -0
- package/lib/components/progress/CreditsIndicator.d.ts +33 -0
- package/lib/components/progress/CreditsIndicator.js +23 -0
- package/lib/components/progress/index.d.ts +2 -0
- package/lib/components/progress/index.js +6 -0
- package/lib/components/runtimes/RuntimeCellVariables.d.ts +39 -0
- package/lib/components/runtimes/RuntimeCellVariables.js +172 -0
- package/lib/components/runtimes/RuntimeCellVariablesDialog.d.ts +37 -0
- package/lib/components/runtimes/RuntimeCellVariablesDialog.js +101 -0
- package/lib/components/runtimes/RuntimeLauncherDialog.d.ts +57 -0
- package/lib/components/runtimes/RuntimeLauncherDialog.js +275 -0
- package/lib/components/runtimes/RuntimePickerBase.d.ts +69 -0
- package/lib/components/runtimes/RuntimePickerBase.js +122 -0
- package/lib/components/runtimes/RuntimePickerCell.d.ts +34 -0
- package/lib/components/runtimes/RuntimePickerCell.js +104 -0
- package/lib/components/runtimes/RuntimePickerNotebook.d.ts +42 -0
- package/lib/components/runtimes/RuntimePickerNotebook.js +232 -0
- package/lib/components/runtimes/RuntimeReservationControl.d.ts +47 -0
- package/lib/components/runtimes/RuntimeReservationControl.js +42 -0
- package/lib/components/runtimes/RuntimeSimplePicker.d.ts +38 -0
- package/lib/components/runtimes/RuntimeSimplePicker.js +155 -0
- package/lib/components/runtimes/RuntimeTransfer.d.ts +16 -0
- package/lib/components/runtimes/RuntimeTransfer.js +5 -0
- package/lib/components/runtimes/RuntimeUtils.d.ts +17 -0
- package/lib/components/runtimes/RuntimeUtils.js +178 -0
- package/lib/components/runtimes/RuntimeVariables.d.ts +38 -0
- package/lib/components/runtimes/RuntimeVariables.js +75 -0
- package/lib/components/runtimes/index.d.ts +11 -0
- package/lib/components/runtimes/index.js +15 -0
- package/lib/components/scheduler/ScheduleMenu.d.ts +54 -0
- package/lib/components/scheduler/ScheduleMenu.js +154 -0
- package/lib/components/scheduler/index.d.ts +1 -0
- package/lib/components/scheduler/index.js +5 -0
- package/lib/components/snapshots/SandboxSnapshotMenu.d.ts +33 -0
- package/lib/components/snapshots/SandboxSnapshotMenu.js +169 -0
- package/lib/components/snapshots/index.d.ts +1 -0
- package/lib/components/snapshots/index.js +5 -0
- package/lib/components/snippets/SnippetDialog.d.ts +42 -0
- package/lib/components/snippets/SnippetDialog.js +42 -0
- package/lib/components/students/StudentItemStatus.d.ts +7 -0
- package/lib/components/students/StudentItemStatus.js +68 -0
- package/lib/components/students/index.d.ts +1 -0
- package/lib/components/students/index.js +5 -0
- package/lib/components/tokens/SpaceVariantToken.d.ts +5 -0
- package/lib/components/tokens/SpaceVariantToken.js +23 -0
- package/lib/components/tokens/index.d.ts +1 -0
- package/lib/components/tokens/index.js +5 -0
- package/lib/components/toolbars/AssignmentEditorToolbar.d.ts +4 -0
- package/lib/components/toolbars/AssignmentEditorToolbar.js +18 -0
- package/lib/components/toolbars/DocumentEditorToolbar.d.ts +2 -0
- package/lib/components/toolbars/DocumentEditorToolbar.js +12 -0
- package/lib/components/toolbars/NotebookEditorToolbar.d.ts +29 -0
- package/lib/components/toolbars/NotebookEditorToolbar.js +30 -0
- package/lib/config/AgentConfiguration.d.ts +2 -2
- package/lib/config/index.d.ts +1 -1
- package/lib/context/ContextInspector.d.ts +1 -14
- package/lib/context/ContextInspector.js +3 -73
- package/lib/context/CostUsageChart.d.ts +4 -3
- package/lib/context/CostUsageChart.js +236 -35
- package/lib/context/MessageHistory.d.ts +30 -0
- package/lib/context/MessageHistory.js +129 -0
- package/lib/context/TokenUsageChart.d.ts +4 -3
- package/lib/context/TokenUsageChart.js +180 -30
- package/lib/context/TurnGraphChart.d.ts +1 -1
- package/lib/context/TurnGraphChart.js +6 -6
- package/lib/examples/A2UiAgentExample.d.ts +22 -0
- package/lib/examples/A2UiAgentExample.js +442 -0
- package/lib/examples/A2UiComponentsGalleryExample.d.ts +3 -0
- package/lib/examples/A2UiComponentsGalleryExample.js +863 -0
- package/lib/examples/A2UiContactCardExample.js +9 -5
- package/lib/examples/A2UiRestaurantExample.js +23 -8
- package/lib/examples/A2UiViewerExample.js +75 -3
- package/lib/examples/AgUiAgenticExample.d.ts +1 -12
- package/lib/examples/AgUiAgenticExample.js +52 -8
- package/lib/examples/AgUiBackendToolRenderingExample.d.ts +1 -16
- package/lib/examples/AgUiBackendToolRenderingExample.js +32 -17
- package/lib/examples/AgUiHaikuGenUiExample.d.ts +1 -17
- package/lib/examples/AgUiHaikuGenUiExample.js +49 -33
- package/lib/examples/AgUiHumanInTheLoopExample.d.ts +1 -12
- package/lib/examples/AgUiHumanInTheLoopExample.js +21 -6
- package/lib/examples/AgUiSharedStateExample.d.ts +1 -14
- package/lib/examples/AgUiSharedStateExample.js +21 -6
- package/lib/examples/AgUiToolsBasedGenUiExample.d.ts +1 -14
- package/lib/examples/AgUiToolsBasedGenUiExample.js +21 -6
- package/lib/examples/AgentCheckpointsExample.d.ts +1 -1
- package/lib/examples/AgentCheckpointsExample.js +21 -22
- package/lib/examples/AgentCodemodeExample.js +3 -3
- package/lib/examples/AgentEvalsExample.js +8 -8
- package/lib/examples/AgentGuardrailsExample.js +22 -17
- package/lib/examples/AgentHooksExample.js +16 -57
- package/lib/examples/AgentInferenceProviderExample.js +8 -8
- package/lib/examples/AgentLoopExample.d.ts +10 -0
- package/lib/examples/AgentLoopExample.js +304 -0
- package/lib/examples/AgentMCPExample.js +9 -9
- package/lib/examples/AgentMemoryExample.js +6 -6
- package/lib/examples/AgentMonitoringExample.js +116 -46
- package/lib/examples/AgentNotificationsExample.js +6 -6
- package/lib/examples/AgentOtelExample.d.ts +3 -3
- package/lib/examples/AgentOtelExample.js +20 -15
- package/lib/examples/AgentOutputsExample.js +8 -8
- package/lib/examples/AgentParametersExample.js +24 -36
- package/lib/examples/AgentSandboxExample.js +7 -7
- package/lib/examples/AgentSkillsExample.js +9 -9
- package/lib/examples/AgentSubagentsExample.js +6 -6
- package/lib/examples/AgentToolApprovalsExample.js +37 -11
- package/lib/examples/AgentTriggersExample.js +12 -12
- package/lib/examples/AgentspecsExample.js +63 -41
- package/lib/examples/ChatCustomExample.js +23 -77
- package/lib/examples/ChatExample.js +15 -46
- package/lib/examples/LexicalAgentExample.js +43 -91
- package/lib/examples/LexicalAgentSidebarExample.js +45 -73
- package/lib/examples/NotebookAgentExample.js +52 -81
- package/lib/examples/NotebookAgentSidebarExample.js +43 -71
- package/lib/examples/NotebookCollaborationExample.js +11 -9
- package/lib/examples/NotebookExample.js +5 -2
- package/lib/examples/components/AuthRequiredView.js +1 -1
- package/lib/examples/components/ExampleErrorBoundary.d.ts +46 -0
- package/lib/examples/components/ExampleErrorBoundary.js +67 -0
- package/lib/examples/components/haiku/haiku-card.css +11 -0
- package/lib/examples/components/weather/weather-card.css +11 -0
- package/lib/examples/example-selector.js +3 -1
- package/lib/examples/hooks/useExampleAgentRuntime.d.ts +35 -0
- package/lib/examples/hooks/useExampleAgentRuntime.js +82 -0
- package/lib/examples/hooks/useSpecRenderToolResult.d.ts +30 -0
- package/lib/examples/hooks/useSpecRenderToolResult.js +61 -0
- package/lib/examples/index.d.ts +3 -1
- package/lib/examples/index.js +3 -1
- package/lib/examples/main.js +340 -93
- package/lib/examples/utils/a2ui.d.ts +2 -0
- package/lib/examples/utils/a2ui.js +97 -2
- package/lib/examples/utils/agentSummaryStore.d.ts +21 -0
- package/lib/examples/utils/agentSummaryStore.js +23 -0
- package/lib/examples/utils/notebooks/Empty.ipynb.json +30 -30
- package/lib/examples/utils/runtimeTargetStore.d.ts +9 -0
- package/lib/examples/utils/runtimeTargetStore.js +27 -0
- package/lib/examples/utils/teardownAgents.d.ts +13 -0
- package/lib/examples/utils/teardownAgents.js +78 -0
- package/lib/examples/utils/useExampleAgentRuntimesUrl.d.ts +2 -0
- package/lib/examples/utils/useExampleAgentRuntimesUrl.js +26 -7
- package/lib/examples2/CellExample.d.ts +6 -0
- package/lib/examples2/CellExample.js +20 -0
- package/lib/examples2/DatalayerNotebookExample.d.ts +16 -0
- package/lib/examples2/DatalayerNotebookExample.js +109 -0
- package/lib/examples2/NativeNavigationExample.d.ts +8 -0
- package/lib/examples2/NativeNavigationExample.js +97 -0
- package/lib/examples2/NotebookExample.d.ts +6 -0
- package/lib/examples2/NotebookExample.js +19 -0
- package/lib/examples2/NotebookMutationsKernel.d.ts +2 -0
- package/lib/examples2/NotebookMutationsKernel.js +105 -0
- package/lib/examples2/NotebookMutationsServiceManager.d.ts +2 -0
- package/lib/examples2/NotebookMutationsServiceManager.js +109 -0
- package/lib/examples2/ReactRouterExample.d.ts +6 -0
- package/lib/examples2/ReactRouterExample.js +175 -0
- package/lib/examples2/example-selector.d.ts +22 -0
- package/lib/examples2/example-selector.js +45 -0
- package/lib/examples2/index.d.ts +2 -0
- package/lib/examples2/index.js +6 -0
- package/lib/examples2/lexical-theme.css +436 -0
- package/lib/examples2/main.d.ts +2 -0
- package/lib/examples2/main.js +330 -0
- package/lib/examples2/notebooks/IPyWidgetsExample.ipynb.json +101 -0
- package/lib/examples2/notebooks/IPyWidgetsExampleWithState.ipynb.json +112 -0
- package/lib/examples2/notebooks/Lite.ipynb.json +128 -0
- package/lib/examples2/notebooks/Matplotlib.ipynb.json +137 -0
- package/lib/examples2/notebooks/NotebookExample1.ipynb.json +126 -0
- package/lib/examples2/notebooks/NotebookExample2.ipynb.json +48 -0
- package/lib/examples2/notebooks/NotebookOutputs.ipynb.json +49 -0
- package/lib/examples2/notebooks/NotebookToCExample.ipynb.json +102 -0
- package/lib/examples2/notebooks/OutputIPyWidgetsExample.d.ts +145 -0
- package/lib/examples2/notebooks/OutputIPyWidgetsExample.js +153 -0
- package/lib/examples2/notebooks/PyGWalker.ipynb.json +55 -0
- package/lib/hooks/index.d.ts +9 -1
- package/lib/hooks/index.js +13 -1
- package/lib/hooks/useAIAgentsWebSocket.d.ts +1 -1
- package/lib/hooks/useAIAgentsWebSocket.js +39 -3
- package/lib/hooks/useAgentRuntimes.d.ts +15 -3
- package/lib/hooks/useAgentRuntimes.js +188 -29
- package/lib/hooks/useAgentsCatalog.d.ts +3 -3
- package/lib/hooks/useAgentsCatalog.js +4 -4
- package/lib/hooks/useAgentsService.js +5 -5
- package/lib/hooks/useCellOutputshot.d.ts +4 -0
- package/lib/hooks/useCellOutputshot.js +25 -0
- package/lib/hooks/useCheckpoints.d.ts +8 -8
- package/lib/hooks/useCheckpoints.js +38 -28
- package/lib/hooks/useConfig.d.ts +1 -1
- package/lib/hooks/useMonitoring.d.ts +7 -5
- package/lib/hooks/useMonitoring.js +16 -10
- package/lib/hooks/useNotifications.d.ts +11 -11
- package/lib/hooks/useNotifications.js +1 -1
- package/lib/hooks/useProgressStore.d.ts +25 -0
- package/lib/hooks/useProgressStore.js +58 -0
- package/lib/hooks/useProgressTask.d.ts +9 -0
- package/lib/hooks/useProgressTask.js +41 -0
- package/lib/hooks/useProjects.d.ts +628 -0
- package/lib/hooks/useProjects.js +190 -0
- package/lib/hooks/useRuntimes.d.ts +5 -0
- package/lib/hooks/useRuntimes.js +34 -0
- package/lib/hooks/useToolApprovals.d.ts +14 -6
- package/lib/hooks/useToolApprovals.js +20 -1
- package/lib/index.d.ts +2 -1
- package/lib/index.js +1 -0
- package/lib/jupyter/exec/Python.d.ts +5 -0
- package/lib/jupyter/exec/Python.js +100 -0
- package/lib/jupyter/exec/Snippets.d.ts +105 -0
- package/lib/jupyter/exec/Snippets.js +101 -0
- package/lib/jupyter/exec/index.d.ts +2 -0
- package/lib/jupyter/exec/index.js +6 -0
- package/lib/jupyter/index.d.ts +2 -0
- package/lib/jupyter/index.js +6 -0
- package/lib/jupyter/kernelsHandler.d.ts +8 -0
- package/lib/jupyter/kernelsHandler.js +39 -0
- package/lib/mocks/models/CourseMock.d.ts +6 -0
- package/lib/mocks/models/CourseMock.js +29 -0
- package/lib/mocks/models/SpaceMock.d.ts +6 -0
- package/lib/mocks/models/SpaceMock.js +25 -0
- package/lib/models/Assignment.d.ts +7 -0
- package/lib/models/Assignment.js +5 -0
- package/lib/models/Cell.d.ts +8 -0
- package/lib/models/Cell.js +5 -0
- package/lib/models/CodeBlock.d.ts +10 -0
- package/lib/models/CodeBlock.js +5 -0
- package/lib/models/CodeSandboxSnapshot.d.ts +92 -0
- package/lib/models/CodeSandboxSnapshot.js +13 -0
- package/lib/models/CodeSandboxSnapshotDTO.d.ts +173 -0
- package/lib/models/CodeSandboxSnapshotDTO.js +139 -0
- package/lib/models/CodefeedBlocks.d.ts +7 -0
- package/lib/models/CodefeedBlocks.js +5 -0
- package/lib/models/Content.d.ts +5 -0
- package/lib/models/Content.js +5 -0
- package/lib/models/Course.d.ts +17 -0
- package/lib/models/Course.js +5 -0
- package/lib/models/Dataset.d.ts +16 -0
- package/lib/models/Dataset.js +5 -0
- package/lib/models/Document.d.ts +8 -0
- package/lib/models/Document.js +5 -0
- package/lib/models/Environment.d.ts +86 -0
- package/lib/models/Environment.js +5 -0
- package/lib/models/EnvironmentDTO.d.ts +125 -0
- package/lib/models/EnvironmentDTO.js +88 -0
- package/lib/models/Exercise.d.ts +16 -0
- package/lib/models/Exercise.js +5 -0
- package/lib/models/Item.d.ts +20 -0
- package/lib/models/Item.js +5 -0
- package/lib/models/ItemDTO.d.ts +74 -0
- package/lib/models/ItemDTO.js +186 -0
- package/lib/models/ItemType.d.ts +2 -0
- package/lib/models/ItemType.js +5 -0
- package/lib/models/Lesson.d.ts +5 -0
- package/lib/models/Lesson.js +5 -0
- package/lib/models/LexicalDTO.d.ts +155 -0
- package/lib/models/LexicalDTO.js +157 -0
- package/lib/models/Library.d.ts +10 -0
- package/lib/models/Library.js +5 -0
- package/lib/models/Notebook.d.ts +11 -0
- package/lib/models/Notebook.js +5 -0
- package/lib/models/NotebookDTO.d.ts +96 -0
- package/lib/models/NotebookDTO.js +153 -0
- package/lib/models/Page.d.ts +41 -0
- package/lib/models/Page.js +25 -0
- package/lib/models/PageTag.d.ts +19 -0
- package/lib/models/PageTag.js +94 -0
- package/lib/models/ProjectDTO.d.ts +89 -0
- package/lib/models/ProjectDTO.js +131 -0
- package/lib/models/Runtime.d.ts +160 -0
- package/lib/models/Runtime.js +18 -0
- package/lib/models/RuntimeDTO.d.ts +172 -0
- package/lib/models/RuntimeDTO.js +204 -0
- package/lib/models/Space.d.ts +35 -0
- package/lib/models/Space.js +66 -0
- package/lib/models/SpaceDTO.d.ts +334 -0
- package/lib/models/SpaceDTO.js +244 -0
- package/lib/models/SpaceItem.d.ts +10 -0
- package/lib/models/SpaceItem.js +5 -0
- package/lib/models/SpaceMember.d.ts +6 -0
- package/lib/models/SpaceMember.js +5 -0
- package/lib/models/StudentItem.d.ts +21 -0
- package/lib/models/StudentItem.js +5 -0
- package/lib/models/index.d.ts +32 -0
- package/lib/models/index.js +39 -0
- package/lib/protocols/AGUIAdapter.js +1 -1
- package/lib/runtimes/actions.d.ts +102 -0
- package/lib/runtimes/actions.js +249 -0
- package/lib/runtimes/apis.d.ts +273 -0
- package/lib/runtimes/apis.js +5 -0
- package/lib/runtimes/index.d.ts +5 -0
- package/lib/runtimes/index.js +9 -0
- package/lib/runtimes/settings.d.ts +15 -0
- package/lib/runtimes/settings.js +31 -0
- package/lib/runtimes/snapshots.d.ts +25 -0
- package/lib/runtimes/snapshots.js +150 -0
- package/lib/runtimes/utils.d.ts +7 -0
- package/lib/runtimes/utils.js +14 -0
- package/lib/services/DatalayerServiceManager.d.ts +23 -0
- package/lib/services/DatalayerServiceManager.js +90 -0
- package/lib/services/reconnectToRuntime.d.ts +32 -0
- package/lib/services/reconnectToRuntime.js +59 -0
- package/lib/services/sandboxServiceManagers.d.ts +31 -0
- package/lib/services/sandboxServiceManagers.js +57 -0
- package/lib/specs/agents/agents.d.ts +95 -50
- package/lib/specs/agents/agents.js +4037 -1669
- package/lib/specs/agents/index.d.ts +5 -5
- package/lib/specs/agents/index.js +9 -9
- package/lib/specs/index.d.ts +1 -0
- package/lib/specs/index.js +1 -0
- package/lib/specs/loops.d.ts +34 -0
- package/lib/specs/loops.js +188 -0
- package/lib/specs/mcpServers.d.ts +1 -0
- package/lib/specs/mcpServers.js +17 -0
- package/lib/specs/models.d.ts +4 -0
- package/lib/specs/models.js +30 -0
- package/lib/specs/skills.d.ts +1 -0
- package/lib/specs/skills.js +18 -0
- package/lib/specs/tools.d.ts +15 -0
- package/lib/specs/tools.js +285 -0
- package/lib/state/index.d.ts +4 -0
- package/lib/state/index.js +10 -0
- package/lib/state/substates/CellState.d.ts +12 -0
- package/lib/state/substates/CellState.js +22 -0
- package/lib/state/substates/DocumentState.d.ts +10 -0
- package/lib/state/substates/DocumentState.js +14 -0
- package/lib/state/substates/GradeState.d.ts +10 -0
- package/lib/state/substates/GradeState.js +14 -0
- package/lib/state/substates/JupyterLabState.d.ts +16 -0
- package/lib/state/substates/JupyterLabState.js +17 -0
- package/lib/state/substates/NbformatState.d.ts +13 -0
- package/lib/state/substates/NbformatState.js +16 -0
- package/lib/state/substates/RuntimesState.d.ts +87 -0
- package/lib/state/substates/RuntimesState.js +192 -0
- package/lib/state/substates/SpaceState.d.ts +11 -0
- package/lib/state/substates/SpaceState.js +16 -0
- package/lib/state/substates/index.d.ts +8 -0
- package/lib/state/substates/index.js +14 -0
- package/lib/stores/agentRuntimeStore.d.ts +25 -2
- package/lib/stores/agentRuntimeStore.js +114 -19
- package/lib/stories/Button.stories.d.ts +1 -1
- package/lib/stories/Header.stories.d.ts +3 -3
- package/lib/test-setup.js +10 -0
- package/lib/types/agents-lifecycle.d.ts +5 -5
- package/lib/types/agents.d.ts +6 -6
- package/lib/types/agentspecs.d.ts +8 -4
- package/lib/types/chat.d.ts +135 -3
- package/lib/types/config.d.ts +19 -1
- package/lib/types/index.d.ts +1 -0
- package/lib/types/index.js +1 -0
- package/lib/types/loops.d.ts +64 -0
- package/lib/types/loops.js +5 -0
- package/lib/types/teams.d.ts +2 -2
- package/lib/types/tools.d.ts +16 -0
- package/lib/utils/Cells.d.ts +2 -0
- package/lib/utils/Cells.js +28 -0
- package/package.json +24 -18
- package/scripts/codegen/generate_agents.py +96 -61
- package/scripts/codegen/generate_loops.py +443 -0
- package/scripts/codegen/generate_teams.py +4 -4
- package/lib/examples/A2UiComponentGalleryExample.d.ts +0 -3
- package/lib/examples/A2UiComponentGalleryExample.js +0 -361
- package/scripts/codegen/__pycache__/generate_agents.cpython-313.pyc +0 -0
- package/scripts/codegen/__pycache__/generate_benchmarks.cpython-313.pyc +0 -0
- package/scripts/codegen/__pycache__/generate_evals.cpython-313.pyc +0 -0
- package/scripts/codegen/__pycache__/generate_events.cpython-313.pyc +0 -0
- /package/lib/{agent-lexical-main.d.ts → agent-document-main.d.ts} +0 -0
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Props for {@link ExampleErrorBoundary}.
|
|
4
|
+
*/
|
|
5
|
+
export interface ExampleErrorBoundaryProps {
|
|
6
|
+
/** Child example tree to protect. */
|
|
7
|
+
children: React.ReactNode;
|
|
8
|
+
}
|
|
9
|
+
interface ExampleErrorBoundaryState {
|
|
10
|
+
error: Error | null;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Generic error boundary that surfaces render-time exceptions thrown by any
|
|
14
|
+
* example in the UI instead of leaving a blank screen with a console error.
|
|
15
|
+
*
|
|
16
|
+
* Reset it per example by passing a `key` (e.g. the example id) so switching
|
|
17
|
+
* examples clears a previous error.
|
|
18
|
+
*/
|
|
19
|
+
export declare class ExampleErrorBoundary extends React.Component<ExampleErrorBoundaryProps, ExampleErrorBoundaryState> {
|
|
20
|
+
/**
|
|
21
|
+
* Create the boundary with a clean error state.
|
|
22
|
+
*
|
|
23
|
+
* @param props - The boundary props.
|
|
24
|
+
*/
|
|
25
|
+
constructor(props: ExampleErrorBoundaryProps);
|
|
26
|
+
/**
|
|
27
|
+
* Capture a thrown error into state so it can be rendered.
|
|
28
|
+
*
|
|
29
|
+
* @param error - The error thrown by a descendant.
|
|
30
|
+
* @returns The next boundary state.
|
|
31
|
+
*/
|
|
32
|
+
static getDerivedStateFromError(error: Error): ExampleErrorBoundaryState;
|
|
33
|
+
/**
|
|
34
|
+
* Log the error for debugging while it is surfaced in the UI.
|
|
35
|
+
*
|
|
36
|
+
* @param error - The error thrown by a descendant.
|
|
37
|
+
*/
|
|
38
|
+
componentDidCatch(error: Error): void;
|
|
39
|
+
/**
|
|
40
|
+
* Render either the protected children or the error surface.
|
|
41
|
+
*
|
|
42
|
+
* @returns The rendered tree.
|
|
43
|
+
*/
|
|
44
|
+
render(): React.ReactNode;
|
|
45
|
+
}
|
|
46
|
+
export {};
|
|
@@ -0,0 +1,67 @@
|
|
|
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 React from 'react';
|
|
7
|
+
import { Box } from '@datalayer/primer-addons';
|
|
8
|
+
/**
|
|
9
|
+
* Generic error boundary that surfaces render-time exceptions thrown by any
|
|
10
|
+
* example in the UI instead of leaving a blank screen with a console error.
|
|
11
|
+
*
|
|
12
|
+
* Reset it per example by passing a `key` (e.g. the example id) so switching
|
|
13
|
+
* examples clears a previous error.
|
|
14
|
+
*/
|
|
15
|
+
export class ExampleErrorBoundary extends React.Component {
|
|
16
|
+
/**
|
|
17
|
+
* Create the boundary with a clean error state.
|
|
18
|
+
*
|
|
19
|
+
* @param props - The boundary props.
|
|
20
|
+
*/
|
|
21
|
+
constructor(props) {
|
|
22
|
+
super(props);
|
|
23
|
+
this.state = { error: null };
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Capture a thrown error into state so it can be rendered.
|
|
27
|
+
*
|
|
28
|
+
* @param error - The error thrown by a descendant.
|
|
29
|
+
* @returns The next boundary state.
|
|
30
|
+
*/
|
|
31
|
+
static getDerivedStateFromError(error) {
|
|
32
|
+
return { error };
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Log the error for debugging while it is surfaced in the UI.
|
|
36
|
+
*
|
|
37
|
+
* @param error - The error thrown by a descendant.
|
|
38
|
+
*/
|
|
39
|
+
componentDidCatch(error) {
|
|
40
|
+
console.error('Example rendering failed:', error);
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Render either the protected children or the error surface.
|
|
44
|
+
*
|
|
45
|
+
* @returns The rendered tree.
|
|
46
|
+
*/
|
|
47
|
+
render() {
|
|
48
|
+
const { error } = this.state;
|
|
49
|
+
if (!error) {
|
|
50
|
+
return this.props.children;
|
|
51
|
+
}
|
|
52
|
+
return (_jsx(Box, { sx: { p: 4 }, children: _jsxs(Box, { sx: {
|
|
53
|
+
p: 3,
|
|
54
|
+
border: '1px solid',
|
|
55
|
+
borderColor: 'danger.muted',
|
|
56
|
+
borderRadius: 2,
|
|
57
|
+
bg: 'danger.subtle',
|
|
58
|
+
color: 'danger.fg',
|
|
59
|
+
}, children: [_jsx(Box, { sx: { fontWeight: 600, mb: 2 }, children: "This example failed to load" }), _jsx(Box, { as: "pre", sx: {
|
|
60
|
+
m: 0,
|
|
61
|
+
whiteSpace: 'pre-wrap',
|
|
62
|
+
wordBreak: 'break-word',
|
|
63
|
+
fontFamily: 'mono',
|
|
64
|
+
fontSize: 0,
|
|
65
|
+
}, children: error.message || String(error) })] }) }));
|
|
66
|
+
}
|
|
67
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025-2026 Datalayer, Inc.
|
|
3
|
+
* Distributed under the terms of the Modified BSD License.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
/* Loaded on demand from the agent spec's frontend_render_tools css field. */
|
|
7
|
+
/* display: contents keeps the wrapper transparent so it adds no padding or
|
|
8
|
+
box around the card and preserves the card's own margins. */
|
|
9
|
+
.dla-agui-render-haiku-card {
|
|
10
|
+
display: contents;
|
|
11
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025-2026 Datalayer, Inc.
|
|
3
|
+
* Distributed under the terms of the Modified BSD License.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
/* Loaded on demand from the agent spec's frontend_render_tools css field. */
|
|
7
|
+
/* display: contents keeps the wrapper transparent so it adds no padding or
|
|
8
|
+
box around the card and preserves the card's own margins. */
|
|
9
|
+
.dla-agui-render-weather-card {
|
|
10
|
+
display: contents;
|
|
11
|
+
}
|
|
@@ -64,10 +64,11 @@ function makeEntry(id, loader, description, tags) {
|
|
|
64
64
|
*/
|
|
65
65
|
export const EXAMPLE_ENTRIES = [
|
|
66
66
|
makeEntry('HomeExample', () => import('./HomeExample'), 'Browse all available examples with search and quick navigation.', ['home', 'navigation']),
|
|
67
|
-
makeEntry('
|
|
67
|
+
makeEntry('A2UiComponentsGalleryExample', () => import('./A2UiComponentsGalleryExample'), 'Consolidated A2UI components gallery with Primer-themed color modes.'),
|
|
68
68
|
makeEntry('A2UiContactCardExample', () => import('./A2UiContactCardExample'), 'A2UI example rendering contact card interactions.'),
|
|
69
69
|
makeEntry('A2UiRestaurantExample', () => import('./A2UiRestaurantExample'), 'A2UI restaurant flow example.'),
|
|
70
70
|
makeEntry('A2UiViewerExample', () => import('./A2UiViewerExample'), 'A2UI viewer integration example.'),
|
|
71
|
+
makeEntry('A2UiAgentExample', () => import('./A2UiAgentExample'), 'A2UI Agent with built-in chat component and Python A2UI extension surface.'),
|
|
71
72
|
makeEntry('AgUiAgenticExample', () => import('./AgUiAgenticExample'), 'AG-UI agentic workflow example.'),
|
|
72
73
|
makeEntry('AgUiBackendToolRenderingExample', () => import('./AgUiBackendToolRenderingExample'), 'AG-UI backend tool rendering example.'),
|
|
73
74
|
makeEntry('AgUiHaikuGenUiExample', () => import('./AgUiHaikuGenUiExample'), 'AG-UI generative UI Haiku example.'),
|
|
@@ -87,6 +88,7 @@ export const EXAMPLE_ENTRIES = [
|
|
|
87
88
|
makeEntry('AgentGuardrailsExample', () => import('./AgentGuardrailsExample'), 'Guardrails and safety checks for agent runs.'),
|
|
88
89
|
makeEntry('AgentHooksExample', () => import('./AgentHooksExample'), 'Pre-hooks and post-hooks lifecycle execution example.'),
|
|
89
90
|
makeEntry('AgentInferenceProviderExample', () => import('./AgentInferenceProviderExample'), 'Switch local and datalayer inference providers with live low-level provider events.', ['example', 'agent', 'inference', 'provider', 'runtime']),
|
|
91
|
+
makeEntry('AgentLoopExample', () => import('./AgentLoopExample'), 'Define and launch an agent execution loop (observe/think/act/evaluate) over a live notebook, driven by generic loop specs.', ['example', 'agent', 'loop', 'notebook', 'agentspecs']),
|
|
90
92
|
makeEntry('AgentToolApprovalsExample', () => import('./AgentToolApprovalsExample'), 'Tool approval workflows and manual decisions.'),
|
|
91
93
|
makeEntry('AgentMemoryExample', () => import('./AgentMemoryExample'), 'Memory-aware conversation and retrieval example.'),
|
|
92
94
|
makeEntry('AgentSkillsExample', () => import('./AgentSkillsExample'), 'Skills discovery, execution, and monitoring example.'),
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { AgentConfig } from '../../types/config';
|
|
2
|
+
interface UseExampleAgentRuntimeOptions {
|
|
3
|
+
exampleId: string;
|
|
4
|
+
agentName: string;
|
|
5
|
+
specId?: string;
|
|
6
|
+
environmentName?: string;
|
|
7
|
+
autoStart?: boolean;
|
|
8
|
+
autoCreateAgent?: boolean;
|
|
9
|
+
agentConfig?: AgentConfig;
|
|
10
|
+
}
|
|
11
|
+
interface UseExampleAgentRuntimeResult {
|
|
12
|
+
location: 'local' | 'cloud';
|
|
13
|
+
baseUrl: string;
|
|
14
|
+
agentId?: string;
|
|
15
|
+
agentBaseUrl?: string;
|
|
16
|
+
status: string;
|
|
17
|
+
isReady: boolean;
|
|
18
|
+
error: string | null;
|
|
19
|
+
createAgent: (config?: AgentConfig) => Promise<{
|
|
20
|
+
agentId?: string;
|
|
21
|
+
endpoint?: string;
|
|
22
|
+
isReady?: boolean;
|
|
23
|
+
}>;
|
|
24
|
+
/**
|
|
25
|
+
* Tear down the agent launched by this hook: delete it on the server and
|
|
26
|
+
* wipe in-process agent state so a fresh runtime can be launched.
|
|
27
|
+
*/
|
|
28
|
+
teardown: () => Promise<void>;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Connects examples to agent runtimes through shared hooks and supports
|
|
32
|
+
* both local and cloud execution modes.
|
|
33
|
+
*/
|
|
34
|
+
export declare function useExampleAgentRuntime(options: UseExampleAgentRuntimeOptions): UseExampleAgentRuntimeResult;
|
|
35
|
+
export {};
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025-2026 Datalayer, Inc.
|
|
3
|
+
* Distributed under the terms of the Modified BSD License.
|
|
4
|
+
*/
|
|
5
|
+
import { useEffect, useMemo } from 'react';
|
|
6
|
+
import { useAgentRuntimes } from '../../hooks/useAgentRuntimes';
|
|
7
|
+
import { useExampleAgentRuntimesUrl } from '../utils/useExampleAgentRuntimesUrl';
|
|
8
|
+
import { useRuntimeTargetStore } from '../utils/runtimeTargetStore';
|
|
9
|
+
import { agentSummaryStore } from '../utils/agentSummaryStore';
|
|
10
|
+
/**
|
|
11
|
+
* Connects examples to agent runtimes through shared hooks and supports
|
|
12
|
+
* both local and cloud execution modes.
|
|
13
|
+
*/
|
|
14
|
+
export function useExampleAgentRuntime(options) {
|
|
15
|
+
const { exampleId, agentName, specId, environmentName = 'local-agent-runtimes', autoStart = true, autoCreateAgent = true, agentConfig, } = options;
|
|
16
|
+
const location = useRuntimeTargetStore(state => state.target);
|
|
17
|
+
const baseUrl = useExampleAgentRuntimesUrl();
|
|
18
|
+
const isCloud = location === 'cloud';
|
|
19
|
+
const combinedConfig = useMemo(() => ({
|
|
20
|
+
name: agentName,
|
|
21
|
+
agentSpecId: specId,
|
|
22
|
+
...agentConfig,
|
|
23
|
+
}), [agentName, specId, agentConfig]);
|
|
24
|
+
const { runtime, status, isReady, error, connectToRuntime, createAgent, teardown, } = useAgentRuntimes({
|
|
25
|
+
agentSpecId: isCloud ? specId : undefined,
|
|
26
|
+
autoCreateAgent,
|
|
27
|
+
autoStart: isCloud ? autoStart : false,
|
|
28
|
+
runtimeCreationTarget: isCloud
|
|
29
|
+
? 'backend-services'
|
|
30
|
+
: 'local-agent-runtimes',
|
|
31
|
+
runtimeCreationBaseUrl: isCloud ? undefined : baseUrl,
|
|
32
|
+
agentConfig: combinedConfig,
|
|
33
|
+
});
|
|
34
|
+
useEffect(() => {
|
|
35
|
+
if (isCloud) {
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
connectToRuntime({
|
|
39
|
+
podName: agentName,
|
|
40
|
+
environmentName,
|
|
41
|
+
jupyterBaseUrl: baseUrl,
|
|
42
|
+
});
|
|
43
|
+
}, [isCloud, connectToRuntime, agentName, environmentName, baseUrl]);
|
|
44
|
+
useEffect(() => {
|
|
45
|
+
agentSummaryStore.getState().setActive({
|
|
46
|
+
exampleId,
|
|
47
|
+
agentName,
|
|
48
|
+
agentId: runtime?.agentId,
|
|
49
|
+
specId,
|
|
50
|
+
location,
|
|
51
|
+
baseUrl: runtime?.agentBaseUrl || baseUrl,
|
|
52
|
+
status,
|
|
53
|
+
isReady,
|
|
54
|
+
error: error || undefined,
|
|
55
|
+
});
|
|
56
|
+
return () => {
|
|
57
|
+
agentSummaryStore.getState().clearActive(exampleId);
|
|
58
|
+
};
|
|
59
|
+
}, [
|
|
60
|
+
exampleId,
|
|
61
|
+
agentName,
|
|
62
|
+
runtime?.agentId,
|
|
63
|
+
runtime?.agentBaseUrl,
|
|
64
|
+
specId,
|
|
65
|
+
location,
|
|
66
|
+
baseUrl,
|
|
67
|
+
status,
|
|
68
|
+
isReady,
|
|
69
|
+
error,
|
|
70
|
+
]);
|
|
71
|
+
return {
|
|
72
|
+
location,
|
|
73
|
+
baseUrl,
|
|
74
|
+
agentId: runtime?.agentId,
|
|
75
|
+
agentBaseUrl: runtime?.agentBaseUrl,
|
|
76
|
+
status,
|
|
77
|
+
isReady,
|
|
78
|
+
error,
|
|
79
|
+
createAgent,
|
|
80
|
+
teardown,
|
|
81
|
+
};
|
|
82
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import type { ToolCallRenderContext, RenderToolResult } from '../../types/chat';
|
|
3
|
+
import type { FrontendRenderToolSpec } from '../../types/tools';
|
|
4
|
+
/**
|
|
5
|
+
* Renderer function keyed by a spec's renderer id.
|
|
6
|
+
*
|
|
7
|
+
* Receives the tool call context plus the matching spec binding so the example
|
|
8
|
+
* can build presentation details (such as a CSS class) from the spec instead of
|
|
9
|
+
* hardcoding them.
|
|
10
|
+
*/
|
|
11
|
+
export type SpecRenderer = (context: ToolCallRenderContext, binding: FrontendRenderToolSpec) => ReactNode;
|
|
12
|
+
/**
|
|
13
|
+
* Builds a `renderToolResult` from an agent spec's `frontendRenderTools`.
|
|
14
|
+
*
|
|
15
|
+
* The example provides only a local map of renderer id to component; the tool
|
|
16
|
+
* name to match and the CSS file to load are read from the spec, so examples do
|
|
17
|
+
* not hardcode tool names or CSS filenames.
|
|
18
|
+
*
|
|
19
|
+
* @param specId - Agent spec id to read render bindings from.
|
|
20
|
+
* @param renderers - Local map of renderer id to renderer function.
|
|
21
|
+
* @returns A render function suitable for the chat components' renderToolResult.
|
|
22
|
+
*/
|
|
23
|
+
export declare function useSpecRenderToolResult(specId: string | undefined, renderers: Record<string, SpecRenderer>): RenderToolResult;
|
|
24
|
+
/**
|
|
25
|
+
* Derives the CSS class a spec renderer loads for its binding.
|
|
26
|
+
*
|
|
27
|
+
* @param binding - The frontend render binding from the spec.
|
|
28
|
+
* @returns A stable CSS class name based on the renderer id.
|
|
29
|
+
*/
|
|
30
|
+
export declare function specRendererClassName(binding: FrontendRenderToolSpec): string;
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025-2026 Datalayer, Inc.
|
|
3
|
+
* Distributed under the terms of the Modified BSD License.
|
|
4
|
+
*/
|
|
5
|
+
import { useEffect, useMemo } from 'react';
|
|
6
|
+
import { getAgentspecs } from '../../specs/agents';
|
|
7
|
+
// Lazy importers for example CSS files, resolved by filename from the spec.
|
|
8
|
+
const cssImporters = import.meta.glob('../components/**/*.css');
|
|
9
|
+
/**
|
|
10
|
+
* Builds a `renderToolResult` from an agent spec's `frontendRenderTools`.
|
|
11
|
+
*
|
|
12
|
+
* The example provides only a local map of renderer id to component; the tool
|
|
13
|
+
* name to match and the CSS file to load are read from the spec, so examples do
|
|
14
|
+
* not hardcode tool names or CSS filenames.
|
|
15
|
+
*
|
|
16
|
+
* @param specId - Agent spec id to read render bindings from.
|
|
17
|
+
* @param renderers - Local map of renderer id to renderer function.
|
|
18
|
+
* @returns A render function suitable for the chat components' renderToolResult.
|
|
19
|
+
*/
|
|
20
|
+
export function useSpecRenderToolResult(specId, renderers) {
|
|
21
|
+
const bindings = useMemo(() => {
|
|
22
|
+
if (!specId) {
|
|
23
|
+
return [];
|
|
24
|
+
}
|
|
25
|
+
return getAgentspecs(specId)?.frontendRenderTools ?? [];
|
|
26
|
+
}, [specId]);
|
|
27
|
+
// Load any CSS files named by the spec bindings.
|
|
28
|
+
useEffect(() => {
|
|
29
|
+
for (const binding of bindings) {
|
|
30
|
+
if (!binding.css) {
|
|
31
|
+
continue;
|
|
32
|
+
}
|
|
33
|
+
const match = Object.keys(cssImporters).find(path => path.endsWith(`/${binding.css}`));
|
|
34
|
+
if (match) {
|
|
35
|
+
void cssImporters[match]();
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}, [bindings]);
|
|
39
|
+
return useMemo(() => {
|
|
40
|
+
return (context) => {
|
|
41
|
+
const binding = bindings.find(b => b.tool === context.toolName);
|
|
42
|
+
if (!binding) {
|
|
43
|
+
return null;
|
|
44
|
+
}
|
|
45
|
+
const renderer = renderers[binding.renderer];
|
|
46
|
+
if (!renderer) {
|
|
47
|
+
return null;
|
|
48
|
+
}
|
|
49
|
+
return renderer(context, binding);
|
|
50
|
+
};
|
|
51
|
+
}, [bindings, renderers]);
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Derives the CSS class a spec renderer loads for its binding.
|
|
55
|
+
*
|
|
56
|
+
* @param binding - The frontend render binding from the spec.
|
|
57
|
+
* @returns A stable CSS class name based on the renderer id.
|
|
58
|
+
*/
|
|
59
|
+
export function specRendererClassName(binding) {
|
|
60
|
+
return `dla-agui-render-${binding.renderer}`;
|
|
61
|
+
}
|
package/lib/examples/index.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
export { default as AgentspecsExample } from './AgentspecsExample';
|
|
2
|
-
export { default as
|
|
2
|
+
export { default as A2UiComponentsGalleryExample } from './A2UiComponentsGalleryExample';
|
|
3
3
|
export { default as A2UiContactCardExample } from './A2UiContactCardExample';
|
|
4
4
|
export { default as A2UiRestaurantExample } from './A2UiRestaurantExample';
|
|
5
|
+
export { default as A2UiAgentExample } from './A2UiAgentExample';
|
|
5
6
|
export { default as A2UiViewerExample } from './A2UiViewerExample';
|
|
6
7
|
export { default as AgUiAgenticExample } from './AgUiAgenticExample';
|
|
7
8
|
export { default as AgUiBackendToolRenderingExample } from './AgUiBackendToolRenderingExample';
|
|
@@ -21,6 +22,7 @@ export { default as AgentEvalsExample } from './AgentEvalsExample';
|
|
|
21
22
|
export { default as AgentGuardrailsExample } from './AgentGuardrailsExample';
|
|
22
23
|
export { default as AgentHooksExample } from './AgentHooksExample';
|
|
23
24
|
export { default as AgentInferenceProviderExample } from './AgentInferenceProviderExample';
|
|
25
|
+
export { default as AgentLoopExample } from './AgentLoopExample';
|
|
24
26
|
export { default as AgentToolApprovalsExample } from './AgentToolApprovalsExample';
|
|
25
27
|
export { default as AgentMemoryExample } from './AgentMemoryExample';
|
|
26
28
|
export { default as AgentOtelExample } from './AgentOtelExample';
|
package/lib/examples/index.js
CHANGED
|
@@ -3,9 +3,10 @@
|
|
|
3
3
|
* Distributed under the terms of the Modified BSD License.
|
|
4
4
|
*/
|
|
5
5
|
export { default as AgentspecsExample } from './AgentspecsExample';
|
|
6
|
-
export { default as
|
|
6
|
+
export { default as A2UiComponentsGalleryExample } from './A2UiComponentsGalleryExample';
|
|
7
7
|
export { default as A2UiContactCardExample } from './A2UiContactCardExample';
|
|
8
8
|
export { default as A2UiRestaurantExample } from './A2UiRestaurantExample';
|
|
9
|
+
export { default as A2UiAgentExample } from './A2UiAgentExample';
|
|
9
10
|
export { default as A2UiViewerExample } from './A2UiViewerExample';
|
|
10
11
|
export { default as AgUiAgenticExample } from './AgUiAgenticExample';
|
|
11
12
|
export { default as AgUiBackendToolRenderingExample } from './AgUiBackendToolRenderingExample';
|
|
@@ -25,6 +26,7 @@ export { default as AgentEvalsExample } from './AgentEvalsExample';
|
|
|
25
26
|
export { default as AgentGuardrailsExample } from './AgentGuardrailsExample';
|
|
26
27
|
export { default as AgentHooksExample } from './AgentHooksExample';
|
|
27
28
|
export { default as AgentInferenceProviderExample } from './AgentInferenceProviderExample';
|
|
29
|
+
export { default as AgentLoopExample } from './AgentLoopExample';
|
|
28
30
|
export { default as AgentToolApprovalsExample } from './AgentToolApprovalsExample';
|
|
29
31
|
export { default as AgentMemoryExample } from './AgentMemoryExample';
|
|
30
32
|
export { default as AgentOtelExample } from './AgentOtelExample';
|