@datalayer/agent-runtimes 1.0.29 → 1.3.10

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.
Files changed (768) hide show
  1. package/lib/AgentDocument.js +5 -22
  2. package/lib/AgentNode.d.ts +1 -1
  3. package/lib/AgentNode.js +193 -23
  4. package/lib/AgentNotebook.js +1 -1
  5. package/lib/App.d.ts +1 -1
  6. package/lib/AppExamples2.d.ts +1 -1
  7. package/lib/agent-node/AgentNodeGallery.d.ts +14 -1
  8. package/lib/agent-node/AgentNodeGallery.js +19 -15
  9. package/lib/agent-node/themeStore.js +7 -6
  10. package/lib/agents/AgentDetails.d.ts +8 -2
  11. package/lib/agents/AgentDetails.js +41 -11
  12. package/lib/agents/AgentRuntimeChat.d.ts +3 -3
  13. package/lib/agents/AgentRuntimeChat.js +15 -15
  14. package/lib/api/agents.d.ts +10 -10
  15. package/lib/api/agents.js +15 -15
  16. package/lib/api/checkpoints.d.ts +40 -0
  17. package/lib/api/checkpoints.js +75 -0
  18. package/lib/api/index.d.ts +1 -0
  19. package/lib/api/index.js +2 -1
  20. package/lib/api/notifications.d.ts +21 -6
  21. package/lib/api/notifications.js +32 -14
  22. package/lib/api/runtimes/environments.d.ts +385 -4
  23. package/lib/api/runtimes/environments.js +610 -9
  24. package/lib/api/runtimes/runtimes.d.ts +19 -19
  25. package/lib/api/runtimes/runtimes.js +47 -46
  26. package/lib/api/spacer/notebooks.js +1 -1
  27. package/lib/chat/Chat.d.ts +16 -4
  28. package/lib/chat/Chat.js +18 -5
  29. package/lib/chat/ChatFloating.d.ts +13 -2
  30. package/lib/chat/ChatFloating.js +192 -117
  31. package/lib/chat/ChatInline.d.ts +15 -0
  32. package/lib/chat/ChatInline.js +0 -18
  33. package/lib/chat/ChatPopupStandalone.d.ts +1 -1
  34. package/lib/chat/ChatSidebar.d.ts +14 -2
  35. package/lib/chat/ChatSidebar.js +1 -1
  36. package/lib/chat/ChatStandalone.d.ts +1 -1
  37. package/lib/chat/EphemeralSurfaceControl.d.ts +30 -0
  38. package/lib/chat/EphemeralSurfaceControl.js +55 -0
  39. package/lib/chat/base/ChatAvailability.d.ts +34 -0
  40. package/lib/chat/base/ChatAvailability.js +18 -0
  41. package/lib/chat/base/ChatBase.d.ts +2 -1
  42. package/lib/chat/base/ChatBase.js +657 -28
  43. package/lib/chat/display/EmptyState.d.ts +15 -1
  44. package/lib/chat/display/EmptyState.js +78 -12
  45. package/lib/chat/display/FloatingBrandButton.d.ts +1 -1
  46. package/lib/chat/display/PoweredByTag.d.ts +1 -1
  47. package/lib/chat/display/groupSuggestions.d.ts +21 -0
  48. package/lib/chat/display/groupSuggestions.js +18 -0
  49. package/lib/chat/document/EphemeralDocument.d.ts +70 -6
  50. package/lib/chat/document/EphemeralDocument.js +154 -52
  51. package/lib/chat/header/ChatHeader.d.ts +1 -1
  52. package/lib/chat/header/ChatHeaderBase.d.ts +10 -1
  53. package/lib/chat/header/ChatHeaderBase.js +67 -96
  54. package/lib/chat/index.d.ts +4 -1
  55. package/lib/chat/index.js +8 -1
  56. package/lib/chat/indicators/McpStatusIndicator.d.ts +1 -1
  57. package/lib/chat/indicators/SandboxStatusIndicator.d.ts +1 -1
  58. package/lib/chat/indicators/SandboxStatusIndicator.js +1 -1
  59. package/lib/chat/indicators/SkillsStatusIndicator.d.ts +1 -1
  60. package/lib/chat/messages/ChatMessageList.d.ts +22 -1
  61. package/lib/chat/messages/ChatMessageList.js +370 -166
  62. package/lib/chat/messages/ChatMessages.d.ts +1 -1
  63. package/lib/chat/messages/NotebookToolSurfaces.d.ts +68 -0
  64. package/lib/chat/messages/NotebookToolSurfaces.js +302 -0
  65. package/lib/chat/messages/TurnFooter.d.ts +42 -0
  66. package/lib/chat/messages/TurnFooter.js +75 -0
  67. package/lib/chat/messages/assistantMarkdown.d.ts +22 -0
  68. package/lib/chat/messages/assistantMarkdown.js +56 -0
  69. package/lib/chat/notebook/EphemeralNotebook.d.ts +67 -6
  70. package/lib/chat/notebook/EphemeralNotebook.js +194 -61
  71. package/lib/chat/parts/DynamicToolPart.d.ts +1 -1
  72. package/lib/chat/parts/MessagePart.d.ts +1 -1
  73. package/lib/chat/parts/ReasoningPart.d.ts +8 -1
  74. package/lib/chat/parts/TextPart.d.ts +1 -1
  75. package/lib/chat/parts/ToolPart.d.ts +8 -1
  76. package/lib/chat/prompt/FloatingCard.d.ts +26 -0
  77. package/lib/chat/prompt/FloatingCard.js +80 -0
  78. package/lib/chat/prompt/InputPrompt.d.ts +206 -53
  79. package/lib/chat/prompt/InputPrompt.js +161 -80
  80. package/lib/chat/prompt/InputPromptBase.d.ts +112 -0
  81. package/lib/chat/prompt/InputPromptBase.js +225 -0
  82. package/lib/chat/prompt/InputPromptLexical.d.ts +18 -1
  83. package/lib/chat/prompt/InputPromptLexical.js +227 -30
  84. package/lib/chat/prompt/InputPromptText.d.ts +10 -2
  85. package/lib/chat/prompt/InputPromptText.js +35 -3
  86. package/lib/chat/prompt/footer/BelowPromptFooter.d.ts +25 -0
  87. package/lib/chat/prompt/footer/BelowPromptFooter.js +12 -0
  88. package/lib/chat/prompt/footer/InPromptFooter.d.ts +35 -0
  89. package/lib/chat/prompt/footer/InPromptFooter.js +16 -0
  90. package/lib/chat/prompt/footer/index.d.ts +7 -0
  91. package/lib/chat/prompt/footer/index.js +11 -0
  92. package/lib/chat/prompt/header/BelowPromptHeader.d.ts +23 -0
  93. package/lib/chat/prompt/header/BelowPromptHeader.js +12 -0
  94. package/lib/chat/prompt/header/InPromptHeader.d.ts +31 -0
  95. package/lib/chat/prompt/header/InPromptHeader.js +14 -0
  96. package/lib/chat/prompt/header/index.d.ts +7 -0
  97. package/lib/chat/prompt/header/index.js +11 -0
  98. package/lib/chat/prompt/index.d.ts +8 -4
  99. package/lib/chat/prompt/index.js +15 -3
  100. package/lib/chat/prompt/menus/AgentsMenu.d.ts +14 -0
  101. package/lib/chat/prompt/menus/AgentsMenu.js +42 -0
  102. package/lib/chat/prompt/menus/InlineAgentsMenu.d.ts +22 -0
  103. package/lib/chat/prompt/menus/InlineAgentsMenu.js +24 -0
  104. package/lib/chat/prompt/menus/ModelSelector.d.ts +7 -0
  105. package/lib/chat/prompt/menus/ModelSelector.js +27 -0
  106. package/lib/chat/prompt/menus/SkillsMenu.d.ts +10 -0
  107. package/lib/chat/prompt/menus/SkillsMenu.js +75 -0
  108. package/lib/chat/prompt/menus/SuggestionsMenu.d.ts +13 -0
  109. package/lib/chat/prompt/menus/SuggestionsMenu.js +31 -0
  110. package/lib/chat/prompt/menus/ToolsMenu.d.ts +13 -0
  111. package/lib/chat/prompt/menus/ToolsMenu.js +103 -0
  112. package/lib/chat/prompt/menus/index.d.ts +15 -0
  113. package/lib/chat/prompt/menus/index.js +19 -0
  114. package/lib/chat/prompt/plugins/AgentMentionPlugin.d.ts +54 -0
  115. package/lib/chat/prompt/plugins/AgentMentionPlugin.js +370 -0
  116. package/lib/chat/prompt/plugins/CommandPlugin.d.ts +52 -0
  117. package/lib/chat/prompt/plugins/CommandPlugin.js +359 -0
  118. package/lib/chat/prompt/plugins/MentionChip.d.ts +15 -0
  119. package/lib/chat/prompt/plugins/MentionChip.js +24 -0
  120. package/lib/chat/prompt/plugins/MentionNode.d.ts +66 -0
  121. package/lib/chat/prompt/plugins/MentionNode.js +77 -0
  122. package/lib/chat/prompt/promptHistory.d.ts +52 -0
  123. package/lib/chat/prompt/promptHistory.js +123 -0
  124. package/lib/chat/prompt/stack.d.ts +81 -0
  125. package/lib/chat/prompt/stack.js +41 -0
  126. package/lib/chat/prompt/useTypingPlaceholder.d.ts +52 -0
  127. package/lib/chat/prompt/useTypingPlaceholder.js +180 -0
  128. package/lib/chat/tools/A2AAgentDialog.d.ts +60 -0
  129. package/lib/chat/tools/A2AAgentDialog.js +265 -0
  130. package/lib/chat/tools/ToolApprovalBanner.d.ts +1 -1
  131. package/lib/chat/tools/ToolApprovalDialog.d.ts +1 -1
  132. package/lib/chat/tools/ToolCallDisplay.d.ts +8 -1
  133. package/lib/chat/tools/index.d.ts +1 -0
  134. package/lib/chat/tools/index.js +1 -0
  135. package/lib/chat/usage/ContextPie.d.ts +17 -0
  136. package/lib/chat/usage/{TokenUsageBar.js → ContextPie.js} +20 -14
  137. package/lib/chat/useViewportDrag.d.ts +11 -0
  138. package/lib/chat/useViewportDrag.js +61 -0
  139. package/lib/chat/viewModes.d.ts +51 -0
  140. package/lib/chat/viewModes.js +57 -0
  141. package/lib/client/AgentRuntimesClient.d.ts +10 -9
  142. package/lib/client/AgentRuntimesClient.js +1 -1
  143. package/lib/client/AgentRuntimesClientContext.d.ts +1 -0
  144. package/lib/client/AgentsMixin.d.ts +12 -12
  145. package/lib/client/AgentsMixin.js +31 -31
  146. package/lib/client/IAgentRuntimesClient.d.ts +10 -10
  147. package/lib/client/SdkAgentRuntimesClient.d.ts +10 -10
  148. package/lib/client/SdkAgentRuntimesClient.js +10 -10
  149. package/lib/client/mixins/RuntimesMixin.d.ts +37 -10
  150. package/lib/client/mixins/RuntimesMixin.js +54 -21
  151. package/lib/components/a2ui/A2uiSurfaceComposed.d.ts +1 -1
  152. package/lib/components/agents/AgentSummary.d.ts +13 -0
  153. package/lib/components/agents/AgentSummary.js +21 -4
  154. package/lib/components/cards/NotificationEventCard.d.ts +1 -1
  155. package/lib/components/cards/OutputCard.d.ts +1 -1
  156. package/lib/components/cards/ToolApprovalCard.d.ts +2 -2
  157. package/lib/components/cards/ToolApprovalCard.js +1 -0
  158. package/lib/components/code-sandboxes/CodeSandboxCellVariables.d.ts +1 -0
  159. package/lib/components/code-sandboxes/CodeSandboxCellVariables.js +0 -4
  160. package/lib/components/code-sandboxes/CodeSandboxCellVariablesDialog.d.ts +1 -0
  161. package/lib/components/code-sandboxes/CodeSandboxCellVariablesDialog.js +0 -4
  162. package/lib/components/code-sandboxes/CodeSandboxEnvironmentSelect.d.ts +35 -0
  163. package/lib/components/code-sandboxes/CodeSandboxEnvironmentSelect.js +27 -29
  164. package/lib/components/code-sandboxes/CodeSandboxLauncher.d.ts +1 -0
  165. package/lib/components/code-sandboxes/CodeSandboxLauncher.js +42 -19
  166. package/lib/components/code-sandboxes/CodeSandboxNames.js +7 -6
  167. package/lib/components/code-sandboxes/CodeSandboxPicker.js +89 -42
  168. package/lib/components/code-sandboxes/CodeSandboxPickerCell.d.ts +1 -0
  169. package/lib/components/code-sandboxes/CodeSandboxPickerCell.js +0 -4
  170. package/lib/components/code-sandboxes/CodeSandboxReservationControl.d.ts +1 -0
  171. package/lib/components/code-sandboxes/CodeSandboxReservationControl.js +5 -7
  172. package/lib/components/code-sandboxes/CodeSandboxTransfer.d.ts +5 -0
  173. package/lib/components/code-sandboxes/CodeSandboxUtils.d.ts +13 -1
  174. package/lib/components/code-sandboxes/CodeSandboxUtils.js +10 -4
  175. package/lib/components/code-sandboxes/NewCodeSandboxControls.d.ts +21 -15
  176. package/lib/components/code-sandboxes/NewCodeSandboxControls.js +28 -51
  177. package/lib/components/code-sandboxes/codeSandboxAllowance.d.ts +33 -0
  178. package/lib/components/code-sandboxes/codeSandboxAllowance.js +37 -0
  179. package/lib/components/code-sandboxes/codeSandboxEnvironments.d.ts +86 -0
  180. package/lib/components/code-sandboxes/codeSandboxEnvironments.js +147 -0
  181. package/lib/components/code-sandboxes/codeSandboxProviders.js +14 -5
  182. package/lib/components/code-sandboxes/index.d.ts +1 -0
  183. package/lib/components/code-sandboxes/index.js +1 -0
  184. package/lib/components/context/SpaceSelect.d.ts +1 -1
  185. package/lib/components/flashes/FlashDisclaimer.d.ts +1 -1
  186. package/lib/components/icons/ArtifactIcon.d.ts +1 -0
  187. package/lib/components/nbgrader/NbGradesDetails.d.ts +1 -1
  188. package/lib/components/progress/CreditsIndicator.d.ts +1 -0
  189. package/lib/components/progress/CreditsIndicator.js +0 -4
  190. package/lib/components/scheduler/ScheduleMenu.d.ts +1 -1
  191. package/lib/components/snapshots/SandboxSnapshotMenu.d.ts +3 -2
  192. package/lib/components/snapshots/SandboxSnapshotMenu.js +11 -15
  193. package/lib/components/snippets/SnippetDialog.d.ts +1 -0
  194. package/lib/components/snippets/SnippetDialog.js +0 -4
  195. package/lib/components/specs/SpecPayloadPreview.d.ts +34 -0
  196. package/lib/components/specs/SpecPayloadPreview.js +102 -0
  197. package/lib/components/tokens/SpaceVariantToken.d.ts +1 -1
  198. package/lib/context/ContextDistribution.d.ts +1 -1
  199. package/lib/context/ContextInspector.d.ts +2 -1
  200. package/lib/context/ContextPanel.d.ts +1 -1
  201. package/lib/context/ContextUsage.d.ts +1 -1
  202. package/lib/context/CostTracker.d.ts +1 -1
  203. package/lib/context/CostUsageChart.d.ts +1 -1
  204. package/lib/context/CostUsageChart.js +4 -4
  205. package/lib/context/MessageHistory.d.ts +3 -2
  206. package/lib/context/TokenUsageChart.d.ts +1 -1
  207. package/lib/context/TokenUsageChart.js +4 -4
  208. package/lib/examples/A2UiAgentExample.js +15 -6
  209. package/lib/examples/A2UiComponentsGalleryExample.d.ts +10 -0
  210. package/lib/examples/A2UiComponentsGalleryExample.js +24 -855
  211. package/lib/examples/A2UiContactCardExample.d.ts +10 -0
  212. package/lib/examples/A2UiContactCardExample.js +23 -170
  213. package/lib/examples/A2UiJupyterOutputExample.d.ts +3 -0
  214. package/lib/examples/A2UiJupyterOutputExample.js +792 -0
  215. package/lib/examples/A2UiRestaurantExample.d.ts +10 -0
  216. package/lib/examples/A2UiRestaurantExample.js +24 -179
  217. package/lib/examples/A2UiViewerExample.d.ts +10 -0
  218. package/lib/examples/A2UiViewerExample.js +24 -378
  219. package/lib/examples/AgUiAgenticExample.js +2 -4
  220. package/lib/examples/AgUiBackendToolRenderingExample.js +3 -5
  221. package/lib/examples/AgUiHaikuGenUiExample.js +2 -4
  222. package/lib/examples/AgUiHumanInTheLoopExample.js +2 -4
  223. package/lib/examples/AgUiSharedStateExample.js +2 -4
  224. package/lib/examples/AgUiToolsBasedGenUiExample.js +2 -4
  225. package/lib/examples/AgentA2AExample.d.ts +17 -0
  226. package/lib/examples/AgentA2AExample.js +56 -0
  227. package/lib/examples/AgentCheckpointsExample.d.ts +9 -10
  228. package/lib/examples/AgentCheckpointsExample.js +72 -54
  229. package/lib/examples/AgentCodeSandboxExample.d.ts +7 -7
  230. package/lib/examples/AgentCodeSandboxExample.js +93 -303
  231. package/lib/examples/AgentCodeSandboxesExample.d.ts +10 -0
  232. package/lib/examples/AgentCodeSandboxesExample.js +56 -162
  233. package/lib/examples/AgentCodemodeExample.d.ts +7 -2
  234. package/lib/examples/AgentCodemodeExample.js +60 -125
  235. package/lib/examples/AgentCompactionExample.js +19 -135
  236. package/lib/examples/AgentEvalsExample.js +34 -66
  237. package/lib/examples/AgentGuardrailsExample.js +64 -112
  238. package/lib/examples/AgentHooksExample.d.ts +11 -0
  239. package/lib/examples/AgentHooksExample.js +30 -67
  240. package/lib/examples/AgentInferenceProviderExample.js +8 -32
  241. package/lib/examples/AgentLoopExample.d.ts +4 -2
  242. package/lib/examples/AgentLoopExample.js +45 -93
  243. package/lib/examples/AgentMCPExample.js +30 -79
  244. package/lib/examples/AgentMemoryExample.js +21 -64
  245. package/lib/examples/AgentMonitoringExample.js +33 -94
  246. package/lib/examples/AgentNotificationsExample.js +56 -95
  247. package/lib/examples/AgentOtelExample.js +35 -88
  248. package/lib/examples/AgentOutputsExample.d.ts +2 -1
  249. package/lib/examples/AgentOutputsExample.js +16 -137
  250. package/lib/examples/AgentParametersExample.js +7 -17
  251. package/lib/examples/AgentSkillsExample.js +40 -154
  252. package/lib/examples/AgentSubagentsExample.d.ts +7 -6
  253. package/lib/examples/AgentSubagentsExample.js +80 -191
  254. package/lib/examples/AgentToolApprovalsExample.js +35 -91
  255. package/lib/examples/AgentTriggersExample.js +43 -59
  256. package/lib/examples/AgentspecsExample.js +4 -4
  257. package/lib/examples/CellExample.d.ts +1 -1
  258. package/lib/examples/ChatExample.d.ts +12 -5
  259. package/lib/examples/ChatExample.js +38 -13
  260. package/lib/examples/CopilotKitLexicalExample.d.ts +1 -0
  261. package/lib/examples/CopilotKitLexicalExample.js +4 -41
  262. package/lib/examples/CopilotKitNotebookExample.d.ts +10 -0
  263. package/lib/examples/CopilotKitNotebookExample.js +2 -14
  264. package/lib/examples/DecksAgent.d.ts +21 -0
  265. package/lib/examples/DecksAgent.js +23 -0
  266. package/lib/examples/DocumentPageAgent.d.ts +19 -0
  267. package/lib/examples/DocumentPageAgent.js +15 -0
  268. package/lib/examples/Lexical2Example.d.ts +2 -2
  269. package/lib/examples/Lexical2Example.js +17 -38
  270. package/lib/examples/LexicalAgentExample.d.ts +2 -1
  271. package/lib/examples/LexicalAgentExample.js +29 -102
  272. package/lib/examples/LexicalAgentSidebarExample.d.ts +16 -5
  273. package/lib/examples/LexicalAgentSidebarExample.js +99 -131
  274. package/lib/examples/LoopShellExample.d.ts +38 -0
  275. package/lib/examples/LoopShellExample.js +68 -0
  276. package/lib/examples/LoopWorkspaceEmbed.d.ts +50 -0
  277. package/lib/examples/LoopWorkspaceEmbed.js +73 -0
  278. package/lib/examples/LoopWorkspaceExample.d.ts +150 -0
  279. package/lib/examples/LoopWorkspaceExample.js +151 -0
  280. package/lib/examples/NotebookAgentExample.d.ts +13 -0
  281. package/lib/examples/NotebookAgentExample.js +36 -86
  282. package/lib/examples/NotebookAgentSidebarExample.d.ts +10 -4
  283. package/lib/examples/NotebookAgentSidebarExample.js +39 -83
  284. package/lib/examples/NotebookCollaborationExample.d.ts +1 -1
  285. package/lib/examples/NotebookCollaborationExample.js +108 -20
  286. package/lib/examples/NotebookExample.d.ts +1 -1
  287. package/lib/examples/NotebookExample.js +20 -10
  288. package/lib/examples/NotebookPageAgent.d.ts +23 -0
  289. package/lib/examples/NotebookPageAgent.js +17 -0
  290. package/lib/examples/components/ExampleWrapper.d.ts +5 -0
  291. package/lib/examples/components/ExampleWrapper.js +36 -28
  292. package/lib/examples/components/LexicalEditor.d.ts +1 -1
  293. package/lib/examples/components/LexicalEditor.js +4 -24
  294. package/lib/examples/components/haiku/HaikuDisplay.d.ts +1 -1
  295. package/lib/examples/components/haiku/InlineHaikuCard.d.ts +1 -1
  296. package/lib/examples/components/weather/InlineWeatherCard.d.ts +1 -1
  297. package/lib/examples/example-selector.js +26 -6
  298. package/lib/examples/hooks/useCreateAgentOnce.d.ts +41 -0
  299. package/lib/examples/hooks/useCreateAgentOnce.js +51 -0
  300. package/lib/examples/hooks/useExampleAgentProtocol.d.ts +35 -0
  301. package/lib/examples/hooks/useExampleAgentProtocol.js +63 -0
  302. package/lib/examples/hooks/useExampleAgentRuntime.d.ts +16 -16
  303. package/lib/examples/hooks/useExampleAgentRuntime.js +26 -25
  304. package/lib/examples/hooks/useExampleAgentRuntimes.js +45 -61
  305. package/lib/examples/hooks/useExampleJupyterAgent.d.ts +91 -0
  306. package/lib/examples/hooks/useExampleJupyterAgent.js +151 -0
  307. package/lib/examples/index.d.ts +4 -0
  308. package/lib/examples/index.js +6 -0
  309. package/lib/examples/lexical/editorConfig.d.ts +2 -75
  310. package/lib/examples/lexical/editorConfig.js +26 -48
  311. package/lib/examples/lexical/lexical-theme.css +65 -47
  312. package/lib/examples/main.js +450 -322
  313. package/lib/examples/scenes/A2UiComponentsGalleryScene.d.ts +3 -0
  314. package/lib/examples/scenes/A2UiComponentsGalleryScene.js +872 -0
  315. package/lib/examples/scenes/A2UiContactCardScene.d.ts +3 -0
  316. package/lib/examples/scenes/A2UiContactCardScene.js +188 -0
  317. package/lib/examples/scenes/A2UiRestaurantScene.d.ts +3 -0
  318. package/lib/examples/scenes/A2UiRestaurantScene.js +196 -0
  319. package/lib/examples/scenes/A2UiViewerScene.d.ts +3 -0
  320. package/lib/examples/scenes/A2UiViewerScene.js +395 -0
  321. package/lib/examples/utils/agentSummaryStore.d.ts +7 -1
  322. package/lib/examples/utils/agents/earthquake-detector.ipynb.json +1 -1
  323. package/lib/examples/utils/agents/earthquake-detector.lexical.json +1 -1
  324. package/lib/examples/utils/agents/sales-forecaster.ipynb.json +1 -1
  325. package/lib/examples/utils/agents/sales-forecaster.lexical.json +1 -1
  326. package/lib/examples/utils/agents/social-post-generator.ipynb.json +1 -1
  327. package/lib/examples/utils/agents/social-post-generator.lexical.json +1 -1
  328. package/lib/examples/utils/exampleSurfaces.d.ts +31 -0
  329. package/lib/examples/utils/exampleSurfaces.js +38 -0
  330. package/lib/examples/utils/jupyterSandboxUrl.d.ts +27 -0
  331. package/lib/examples/utils/jupyterSandboxUrl.js +55 -0
  332. package/lib/examples/utils/localUrl.d.ts +2 -0
  333. package/lib/examples/utils/localUrl.js +49 -0
  334. package/lib/examples/utils/notebookToolbarItems.d.ts +46 -0
  335. package/lib/examples/utils/notebookToolbarItems.js +129 -0
  336. package/lib/examples/utils/runtimeTargetStore.d.ts +40 -1
  337. package/lib/examples/utils/runtimeTargetStore.js +82 -1
  338. package/lib/examples/utils/themedProvider.d.ts +7 -0
  339. package/lib/examples/utils/themedProvider.js +57 -4
  340. package/lib/examples/utils/useExampleAgentRuntimesUrl.js +30 -5
  341. package/lib/examples/utils/waitForAgent.d.ts +23 -0
  342. package/lib/examples/utils/waitForAgent.js +24 -0
  343. package/lib/examples2/CellExample.d.ts +1 -1
  344. package/lib/examples2/DatalayerNotebookExample.d.ts +1 -1
  345. package/lib/examples2/NotebookExample.d.ts +1 -1
  346. package/lib/examples2/NotebookMutationsKernel.d.ts +1 -1
  347. package/lib/examples2/NotebookMutationsServiceManager.d.ts +1 -1
  348. package/lib/examples2/main.js +24 -4
  349. package/lib/extensions/A2UIExtension.d.ts +1 -1
  350. package/lib/hooks/index.d.ts +8 -5
  351. package/lib/hooks/index.js +20 -5
  352. package/lib/hooks/useAgentRuntimes.d.ts +49 -22
  353. package/lib/hooks/useAgentRuntimes.js +214 -90
  354. package/lib/hooks/useAgentsCatalog.js +32 -4
  355. package/lib/hooks/useBrowserAgent.d.ts +26 -0
  356. package/lib/hooks/useBrowserAgent.js +75 -0
  357. package/lib/hooks/useBrowserInference.d.ts +27 -0
  358. package/lib/hooks/useBrowserInference.js +67 -0
  359. package/lib/hooks/useCheckpoints.d.ts +8 -17
  360. package/lib/hooks/useCheckpoints.js +25 -59
  361. package/lib/hooks/useConfig.d.ts +1 -1
  362. package/lib/hooks/useConfig.js +5 -1
  363. package/lib/hooks/useContextSnapshot.d.ts +18 -7
  364. package/lib/hooks/useContextSnapshot.js +14 -10
  365. package/lib/hooks/useNotifications.d.ts +11 -11
  366. package/lib/hooks/useNotifications.js +1 -1
  367. package/lib/hooks/useProjects.d.ts +7 -19
  368. package/lib/hooks/useProjects.js +5 -5
  369. package/lib/hooks/useSkills.d.ts +0 -1
  370. package/lib/hooks/useSkills.js +6 -2
  371. package/lib/hooks/useToolApprovals.d.ts +8 -8
  372. package/lib/hooks/useToolApprovals.js +3 -3
  373. package/lib/identity/AgentIdentity.d.ts +9 -2
  374. package/lib/index.d.ts +1 -0
  375. package/lib/index.js +4 -0
  376. package/lib/jupyter/index.d.ts +2 -1
  377. package/lib/jupyter/index.js +2 -1
  378. package/lib/jupyter/serverExecution.d.ts +78 -0
  379. package/lib/jupyter/serverExecution.js +258 -0
  380. package/lib/jupyter/useResumeServerExecutions.d.ts +11 -0
  381. package/lib/jupyter/useResumeServerExecutions.js +64 -0
  382. package/lib/lexical/ChatInlinePlugin.d.ts +33 -0
  383. package/lib/lexical/ChatInlinePlugin.js +0 -36
  384. package/lib/loop/core/focusRequests.d.ts +10 -0
  385. package/lib/loop/core/focusRequests.js +46 -0
  386. package/lib/loop/core/index.d.ts +894 -0
  387. package/lib/loop/core/index.js +264 -0
  388. package/lib/loop/core/promptStore.d.ts +44 -0
  389. package/lib/loop/core/promptStore.js +63 -0
  390. package/lib/loop/core/surfaceRequests.d.ts +33 -0
  391. package/lib/loop/core/surfaceRequests.js +29 -0
  392. package/lib/loop/core/toolbar.d.ts +28 -0
  393. package/lib/loop/core/toolbar.js +59 -0
  394. package/lib/loop/embed/LoopEmbed.d.ts +57 -0
  395. package/lib/loop/embed/LoopEmbed.js +118 -0
  396. package/lib/loop/extensions.d.ts +10 -0
  397. package/lib/loop/extensions.js +49 -0
  398. package/lib/loop/index.d.ts +68 -0
  399. package/lib/loop/index.js +87 -0
  400. package/lib/loop/plugins/a2a-sidebar/A2ASidebar.d.ts +48 -0
  401. package/lib/loop/plugins/a2a-sidebar/A2ASidebar.js +190 -0
  402. package/lib/loop/plugins/a2a-sidebar/index.d.ts +5 -0
  403. package/lib/loop/plugins/a2a-sidebar/index.js +39 -0
  404. package/lib/loop/plugins/a2ui/A2uiView.d.ts +12 -0
  405. package/lib/loop/plugins/a2ui/A2uiView.js +97 -0
  406. package/lib/loop/plugins/a2ui/index.d.ts +3 -0
  407. package/lib/loop/plugins/a2ui/index.js +50 -0
  408. package/lib/loop/plugins/a2ui-scene/index.d.ts +36 -0
  409. package/lib/loop/plugins/a2ui-scene/index.js +28 -0
  410. package/lib/loop/plugins/agent-a2a/index.d.ts +3 -0
  411. package/lib/loop/plugins/agent-a2a/index.js +26 -0
  412. package/lib/loop/plugins/agent-a2ui/index.d.ts +3 -0
  413. package/lib/loop/plugins/agent-a2ui/index.js +42 -0
  414. package/lib/loop/plugins/agent-a2ui-jupyter-output/index.d.ts +3 -0
  415. package/lib/loop/plugins/agent-a2ui-jupyter-output/index.js +53 -0
  416. package/lib/loop/plugins/agent-capacity/index.d.ts +39 -0
  417. package/lib/loop/plugins/agent-capacity/index.js +52 -0
  418. package/lib/loop/plugins/agent-checkpoints/index.d.ts +3 -0
  419. package/lib/loop/plugins/agent-checkpoints/index.js +26 -0
  420. package/lib/loop/plugins/agent-code-sandbox/index.d.ts +3 -0
  421. package/lib/loop/plugins/agent-code-sandbox/index.js +24 -0
  422. package/lib/loop/plugins/agent-code-sandboxes/index.d.ts +13 -0
  423. package/lib/loop/plugins/agent-code-sandboxes/index.js +85 -0
  424. package/lib/loop/plugins/agent-codemode/index.d.ts +5 -0
  425. package/lib/loop/plugins/agent-codemode/index.js +41 -0
  426. package/lib/loop/plugins/agent-compaction/index.d.ts +10 -0
  427. package/lib/loop/plugins/agent-compaction/index.js +34 -0
  428. package/lib/loop/plugins/agent-evals/index.d.ts +3 -0
  429. package/lib/loop/plugins/agent-evals/index.js +25 -0
  430. package/lib/loop/plugins/agent-guardrails/index.d.ts +3 -0
  431. package/lib/loop/plugins/agent-guardrails/index.js +25 -0
  432. package/lib/loop/plugins/agent-hooks/index.d.ts +3 -0
  433. package/lib/loop/plugins/agent-hooks/index.js +28 -0
  434. package/lib/loop/plugins/agent-inference/index.d.ts +7 -0
  435. package/lib/loop/plugins/agent-inference/index.js +29 -0
  436. package/lib/loop/plugins/agent-mcp/index.d.ts +3 -0
  437. package/lib/loop/plugins/agent-mcp/index.js +25 -0
  438. package/lib/loop/plugins/agent-memory/index.d.ts +3 -0
  439. package/lib/loop/plugins/agent-memory/index.js +25 -0
  440. package/lib/loop/plugins/agent-monitoring/index.d.ts +3 -0
  441. package/lib/loop/plugins/agent-monitoring/index.js +25 -0
  442. package/lib/loop/plugins/agent-notifications/index.d.ts +3 -0
  443. package/lib/loop/plugins/agent-notifications/index.js +25 -0
  444. package/lib/loop/plugins/agent-otel/index.d.ts +3 -0
  445. package/lib/loop/plugins/agent-otel/index.js +25 -0
  446. package/lib/loop/plugins/agent-outputs/index.d.ts +3 -0
  447. package/lib/loop/plugins/agent-outputs/index.js +25 -0
  448. package/lib/loop/plugins/agent-parameters/index.d.ts +3 -0
  449. package/lib/loop/plugins/agent-parameters/index.js +25 -0
  450. package/lib/loop/plugins/agent-skills/index.d.ts +3 -0
  451. package/lib/loop/plugins/agent-skills/index.js +25 -0
  452. package/lib/loop/plugins/agent-subagents/index.d.ts +3 -0
  453. package/lib/loop/plugins/agent-subagents/index.js +25 -0
  454. package/lib/loop/plugins/agent-tool-approvals/index.d.ts +11 -0
  455. package/lib/loop/plugins/agent-tool-approvals/index.js +38 -0
  456. package/lib/loop/plugins/agent-triggers/index.d.ts +3 -0
  457. package/lib/loop/plugins/agent-triggers/index.js +26 -0
  458. package/lib/loop/plugins/agents/AgentSummaryPanel.d.ts +20 -0
  459. package/lib/loop/plugins/agents/AgentSummaryPanel.js +50 -0
  460. package/lib/loop/plugins/agents/AnonymousKeyBadge.d.ts +35 -0
  461. package/lib/loop/plugins/agents/AnonymousKeyBadge.js +53 -0
  462. package/lib/loop/plugins/agents/DatalayerAgentBridge.d.ts +24 -0
  463. package/lib/loop/plugins/agents/DatalayerAgentBridge.js +102 -0
  464. package/lib/loop/plugins/agents/DatalayerAgentMount.d.ts +18 -0
  465. package/lib/loop/plugins/agents/DatalayerAgentMount.js +12 -0
  466. package/lib/loop/plugins/agents/SandboxSelector.d.ts +18 -0
  467. package/lib/loop/plugins/agents/SandboxSelector.js +99 -0
  468. package/lib/loop/plugins/agents/SandboxStatusBridge.d.ts +19 -0
  469. package/lib/loop/plugins/agents/SandboxStatusBridge.js +23 -0
  470. package/lib/loop/plugins/agents/SandboxView.d.ts +11 -0
  471. package/lib/loop/plugins/agents/SandboxView.js +43 -0
  472. package/lib/loop/plugins/agents/TeamMemberPicker.d.ts +17 -0
  473. package/lib/loop/plugins/agents/TeamMemberPicker.js +60 -0
  474. package/lib/loop/plugins/agents/agentIcons.d.ts +23 -0
  475. package/lib/loop/plugins/agents/agentIcons.js +88 -0
  476. package/lib/loop/plugins/agents/browserService.d.ts +50 -0
  477. package/lib/loop/plugins/agents/browserService.js +233 -0
  478. package/lib/loop/plugins/agents/index.d.ts +13 -0
  479. package/lib/loop/plugins/agents/index.js +17 -0
  480. package/lib/loop/plugins/agents/plugin.d.ts +91 -0
  481. package/lib/loop/plugins/agents/plugin.js +201 -0
  482. package/lib/loop/plugins/agents/service.d.ts +99 -0
  483. package/lib/loop/plugins/agents/service.js +167 -0
  484. package/lib/loop/plugins/agents/specSubagents.d.ts +18 -0
  485. package/lib/loop/plugins/agents/specSubagents.js +33 -0
  486. package/lib/loop/plugins/agents/switchable.d.ts +107 -0
  487. package/lib/loop/plugins/agents/switchable.js +405 -0
  488. package/lib/loop/plugins/agents/team.d.ts +87 -0
  489. package/lib/loop/plugins/agents/team.js +143 -0
  490. package/lib/loop/plugins/agents/useSandboxService.d.ts +11 -0
  491. package/lib/loop/plugins/agents/useSandboxService.js +36 -0
  492. package/lib/loop/plugins/agents/useTeamSelection.d.ts +10 -0
  493. package/lib/loop/plugins/agents/useTeamSelection.js +27 -0
  494. package/lib/loop/plugins/agentspecs/AgentspecPicker.d.ts +15 -0
  495. package/lib/loop/plugins/agentspecs/AgentspecPicker.js +90 -0
  496. package/lib/loop/plugins/agentspecs/index.d.ts +6 -0
  497. package/lib/loop/plugins/agentspecs/index.js +63 -0
  498. package/lib/loop/plugins/chat/ChatView.d.ts +20 -0
  499. package/lib/loop/plugins/chat/ChatView.js +1670 -0
  500. package/lib/loop/plugins/chat/chatViewTools.d.ts +41 -0
  501. package/lib/loop/plugins/chat/chatViewTools.js +92 -0
  502. package/lib/loop/plugins/chat/index.d.ts +111 -0
  503. package/lib/loop/plugins/chat/index.js +143 -0
  504. package/lib/loop/plugins/chat/turnState.d.ts +41 -0
  505. package/lib/loop/plugins/chat/turnState.js +90 -0
  506. package/lib/loop/plugins/chat-extras/index.d.ts +14 -0
  507. package/lib/loop/plugins/chat-extras/index.js +51 -0
  508. package/lib/loop/plugins/chat-header/HeaderView.d.ts +13 -0
  509. package/lib/loop/plugins/chat-header/HeaderView.js +6 -0
  510. package/lib/loop/plugins/chat-header/index.d.ts +3 -0
  511. package/lib/loop/plugins/chat-header/index.js +21 -0
  512. package/lib/loop/plugins/chat-view/index.d.ts +10 -0
  513. package/lib/loop/plugins/chat-view/index.js +29 -0
  514. package/lib/loop/plugins/checkpoints-sidebar/CheckpointsSidebar.d.ts +27 -0
  515. package/lib/loop/plugins/checkpoints-sidebar/CheckpointsSidebar.js +174 -0
  516. package/lib/loop/plugins/checkpoints-sidebar/index.d.ts +5 -0
  517. package/lib/loop/plugins/checkpoints-sidebar/index.js +39 -0
  518. package/lib/loop/plugins/commands/index.d.ts +20 -0
  519. package/lib/loop/plugins/commands/index.js +148 -0
  520. package/lib/loop/plugins/decks/DeckSurface.d.ts +10 -0
  521. package/lib/loop/plugins/decks/DeckSurface.js +6 -0
  522. package/lib/loop/plugins/decks/DecksMenu.d.ts +11 -0
  523. package/lib/loop/plugins/decks/DecksMenu.js +42 -0
  524. package/lib/loop/plugins/decks/index.d.ts +19 -0
  525. package/lib/loop/plugins/decks/index.js +133 -0
  526. package/lib/loop/plugins/decks/surface.d.ts +7 -0
  527. package/lib/loop/plugins/decks/surface.js +11 -0
  528. package/lib/loop/plugins/document/DocumentView.d.ts +12 -0
  529. package/lib/loop/plugins/document/DocumentView.js +68 -0
  530. package/lib/loop/plugins/document/index.d.ts +3 -0
  531. package/lib/loop/plugins/document/index.js +86 -0
  532. package/lib/loop/plugins/document/openingDocument.d.ts +28 -0
  533. package/lib/loop/plugins/document/openingDocument.js +122 -0
  534. package/lib/loop/plugins/document-toolbar/SandboxStatusItem.d.ts +16 -0
  535. package/lib/loop/plugins/document-toolbar/SandboxStatusItem.js +31 -0
  536. package/lib/loop/plugins/document-toolbar/index.d.ts +4 -0
  537. package/lib/loop/plugins/document-toolbar/index.js +35 -0
  538. package/lib/loop/plugins/document-toolbar/names.d.ts +6 -0
  539. package/lib/loop/plugins/document-toolbar/names.js +10 -0
  540. package/lib/loop/plugins/document-toolbar/plugin.d.ts +2 -0
  541. package/lib/loop/plugins/document-toolbar/plugin.js +38 -0
  542. package/lib/loop/plugins/document-view/index.d.ts +10 -0
  543. package/lib/loop/plugins/document-view/index.js +28 -0
  544. package/lib/loop/plugins/graph/GraphToggle.d.ts +17 -0
  545. package/lib/loop/plugins/graph/GraphToggle.js +22 -0
  546. package/lib/loop/plugins/graph/GraphView.d.ts +16 -0
  547. package/lib/loop/plugins/graph/GraphView.js +6 -0
  548. package/lib/loop/plugins/graph/index.d.ts +5 -0
  549. package/lib/loop/plugins/graph/index.js +80 -0
  550. package/lib/loop/plugins/graph/viewType.d.ts +10 -0
  551. package/lib/loop/plugins/graph/viewType.js +14 -0
  552. package/lib/loop/plugins/input-prompt/ComposerView.d.ts +15 -0
  553. package/lib/loop/plugins/input-prompt/ComposerView.js +25 -0
  554. package/lib/loop/plugins/input-prompt/index.d.ts +25 -0
  555. package/lib/loop/plugins/input-prompt/index.js +26 -0
  556. package/lib/loop/plugins/models/index.d.ts +3 -0
  557. package/lib/loop/plugins/models/index.js +49 -0
  558. package/lib/loop/plugins/notebook/NotebookView.d.ts +9 -0
  559. package/lib/loop/plugins/notebook/NotebookView.js +189 -0
  560. package/lib/loop/plugins/notebook/index.d.ts +3 -0
  561. package/lib/loop/plugins/notebook/index.js +91 -0
  562. package/lib/loop/plugins/notebook/openingNotebook.d.ts +72 -0
  563. package/lib/loop/plugins/notebook/openingNotebook.js +90 -0
  564. package/lib/loop/plugins/notebook-toolbar/index.d.ts +4 -0
  565. package/lib/loop/plugins/notebook-toolbar/index.js +45 -0
  566. package/lib/loop/plugins/notebook-toolbar/items.d.ts +10 -0
  567. package/lib/loop/plugins/notebook-toolbar/items.js +45 -0
  568. package/lib/loop/plugins/notebook-toolbar/names.d.ts +9 -0
  569. package/lib/loop/plugins/notebook-toolbar/names.js +13 -0
  570. package/lib/loop/plugins/notebook-toolbar/plugin.d.ts +2 -0
  571. package/lib/loop/plugins/notebook-toolbar/plugin.js +24 -0
  572. package/lib/loop/plugins/notebook-view/index.d.ts +10 -0
  573. package/lib/loop/plugins/notebook-view/index.js +30 -0
  574. package/lib/loop/plugins/page-layout/TurnPanel.d.ts +25 -0
  575. package/lib/loop/plugins/page-layout/TurnPanel.js +126 -0
  576. package/lib/loop/plugins/page-layout/index.d.ts +35 -0
  577. package/lib/loop/plugins/page-layout/index.js +80 -0
  578. package/lib/loop/plugins/plugins-panel/index.d.ts +14 -0
  579. package/lib/loop/plugins/plugins-panel/index.js +74 -0
  580. package/lib/loop/plugins/prompt/NewChatAction.d.ts +19 -0
  581. package/lib/loop/plugins/prompt/NewChatAction.js +10 -0
  582. package/lib/loop/plugins/prompt/index.d.ts +11 -0
  583. package/lib/loop/plugins/prompt/index.js +73 -0
  584. package/lib/loop/plugins/shell/editorChoice.d.ts +31 -0
  585. package/lib/loop/plugins/shell/editorChoice.js +58 -0
  586. package/lib/loop/plugins/shell/index.d.ts +47 -0
  587. package/lib/loop/plugins/shell/index.js +142 -0
  588. package/lib/loop/plugins/shell/useEditorPreviews.d.ts +32 -0
  589. package/lib/loop/plugins/shell/useEditorPreviews.js +217 -0
  590. package/lib/loop/plugins/subagent-activity/SubagentPulse.d.ts +16 -0
  591. package/lib/loop/plugins/subagent-activity/SubagentPulse.js +45 -0
  592. package/lib/loop/plugins/subagent-activity/index.d.ts +12 -0
  593. package/lib/loop/plugins/subagent-activity/index.js +42 -0
  594. package/lib/loop/plugins/view-switch/index.d.ts +46 -0
  595. package/lib/loop/plugins/view-switch/index.js +68 -0
  596. package/lib/loop/plugins/window-frame/WindowFrame.d.ts +48 -0
  597. package/lib/loop/plugins/window-frame/WindowFrame.js +63 -0
  598. package/lib/loop/plugins/window-frame/index.d.ts +6 -0
  599. package/lib/loop/plugins/window-frame/index.js +79 -0
  600. package/lib/loop/plugins/window-frame/slots.d.ts +26 -0
  601. package/lib/loop/plugins/window-frame/slots.js +30 -0
  602. package/lib/loop/presets.d.ts +167 -0
  603. package/lib/loop/presets.js +139 -0
  604. package/lib/loop/shell/LoopWorkspace.d.ts +109 -0
  605. package/lib/loop/shell/LoopWorkspace.js +231 -0
  606. package/lib/loop/shell/PluginToggles.d.ts +21 -0
  607. package/lib/loop/shell/PluginToggles.js +41 -0
  608. package/lib/loop/shell/ViewSwitcher.d.ts +24 -0
  609. package/lib/loop/shell/ViewSwitcher.js +43 -0
  610. package/lib/loop/shell/WorkspaceFullScreenAction.d.ts +25 -0
  611. package/lib/loop/shell/WorkspaceFullScreenAction.js +24 -0
  612. package/lib/loop/shell/index.d.ts +10 -0
  613. package/lib/loop/shell/index.js +14 -0
  614. package/lib/loop/shell/useWorkspaceFullScreen.d.ts +93 -0
  615. package/lib/loop/shell/useWorkspaceFullScreen.js +167 -0
  616. package/lib/loop-example-main.d.ts +1 -0
  617. package/lib/loop-example-main.js +42 -0
  618. package/lib/loop-main.d.ts +1 -0
  619. package/lib/loop-main.js +138 -0
  620. package/lib/mcp/McpServerManager.d.ts +1 -1
  621. package/lib/models/CodeSandboxSnapshotDTO.d.ts +1 -1
  622. package/lib/models/CodeSandboxVariant.d.ts +13 -5
  623. package/lib/models/CodeSandboxVariant.js +17 -5
  624. package/lib/models/Content.d.ts +26 -0
  625. package/lib/models/Environment.d.ts +561 -5
  626. package/lib/models/Environment.js +12 -1
  627. package/lib/models/EnvironmentDTO.d.ts +24 -6
  628. package/lib/models/EnvironmentDTO.js +13 -2
  629. package/lib/models/Exercise.d.ts +0 -2
  630. package/lib/models/Library.d.ts +0 -2
  631. package/lib/models/Notebook.d.ts +0 -2
  632. package/lib/models/ProjectDTO.d.ts +2 -2
  633. package/lib/models/ProjectDTO.js +4 -4
  634. package/lib/models/Runtime.d.ts +11 -11
  635. package/lib/models/RuntimeDTO.d.ts +16 -7
  636. package/lib/models/RuntimeDTO.js +9 -9
  637. package/lib/models/Space.d.ts +10 -0
  638. package/lib/models/Space.js +1 -1
  639. package/lib/models/SpaceDTO.d.ts +1 -1
  640. package/lib/models/SpaceItem.d.ts +1 -2
  641. package/lib/models/environments.generated.d.ts +113 -0
  642. package/lib/models/environments.generated.js +13 -0
  643. package/lib/models/index.d.ts +0 -1
  644. package/lib/models/index.js +0 -1
  645. package/lib/protocols/A2AAdapter.d.ts +39 -6
  646. package/lib/protocols/A2AAdapter.js +180 -11
  647. package/lib/protocols/ACPAdapter.js +40 -37
  648. package/lib/protocols/AGUIAdapter.d.ts +14 -0
  649. package/lib/protocols/AGUIAdapter.js +34 -9
  650. package/lib/protocols/BrowserAgentAdapter.d.ts +117 -0
  651. package/lib/protocols/BrowserAgentAdapter.js +310 -0
  652. package/lib/protocols/VercelAIAdapter.d.ts +10 -0
  653. package/lib/protocols/VercelAIAdapter.js +27 -7
  654. package/lib/protocols/index.d.ts +1 -0
  655. package/lib/protocols/index.js +1 -0
  656. package/lib/runtimes/actions.d.ts +3 -3
  657. package/lib/runtimes/actions.js +27 -14
  658. package/lib/runtimes/apis.d.ts +13 -4
  659. package/lib/runtimes/browser/agent.d.ts +54 -0
  660. package/lib/runtimes/browser/agent.js +63 -0
  661. package/lib/runtimes/browser/anonymousToken.d.ts +121 -0
  662. package/lib/runtimes/browser/anonymousToken.js +300 -0
  663. package/lib/runtimes/browser/frontendTools.d.ts +61 -0
  664. package/lib/runtimes/browser/frontendTools.js +152 -0
  665. package/lib/runtimes/browser/index.d.ts +11 -0
  666. package/lib/runtimes/browser/index.js +20 -0
  667. package/lib/runtimes/browser/model.d.ts +52 -0
  668. package/lib/runtimes/browser/model.js +110 -0
  669. package/lib/runtimes/browser/protocol.d.ts +54 -0
  670. package/lib/runtimes/browser/protocol.js +35 -0
  671. package/lib/runtimes/browser/subagents.d.ts +131 -0
  672. package/lib/runtimes/browser/subagents.js +241 -0
  673. package/lib/runtimes/index.d.ts +3 -0
  674. package/lib/runtimes/index.js +3 -0
  675. package/lib/runtimes/lifecycle.d.ts +76 -0
  676. package/lib/runtimes/lifecycle.js +99 -0
  677. package/lib/runtimes/variants.d.ts +172 -0
  678. package/lib/runtimes/variants.js +187 -0
  679. package/lib/services/reconnectToRuntime.d.ts +2 -2
  680. package/lib/services/reconnectToRuntime.js +3 -3
  681. package/lib/services/sandboxServiceManagers.d.ts +2 -2
  682. package/lib/services/sandboxServiceManagers.js +11 -11
  683. package/lib/specs/agents/agents.d.ts +128 -112
  684. package/lib/specs/agents/agents.js +8024 -5052
  685. package/lib/specs/evals.js +9 -0
  686. package/lib/specs/frontendTools.d.ts +3 -0
  687. package/lib/specs/frontendTools.js +46 -3
  688. package/lib/specs/mcpServers.d.ts +1 -0
  689. package/lib/specs/mcpServers.js +25 -2
  690. package/lib/specs/models.d.ts +18 -0
  691. package/lib/specs/models.js +154 -0
  692. package/lib/specs/outputs.d.ts +2 -0
  693. package/lib/specs/outputs.js +22 -0
  694. package/lib/specs/personas.js +1 -1
  695. package/lib/specs/teams/teams.d.ts +2 -0
  696. package/lib/specs/teams/teams.js +628 -111
  697. package/lib/state/index.d.ts +1 -1
  698. package/lib/state/index.js +1 -1
  699. package/lib/state/substates/RuntimesState.d.ts +5 -5
  700. package/lib/state/substates/RuntimesState.js +14 -14
  701. package/lib/state/substates/index.d.ts +1 -1
  702. package/lib/state/substates/index.js +1 -1
  703. package/lib/stores/agentRuntimeStore.d.ts +43 -1
  704. package/lib/stores/agentRuntimeStore.js +100 -11
  705. package/lib/stores/index.d.ts +1 -1
  706. package/lib/stores/index.js +1 -1
  707. package/lib/stories/Button.d.ts +1 -1
  708. package/lib/stories/Button.stories.d.ts +1 -1
  709. package/lib/stories/Header.d.ts +1 -1
  710. package/lib/stories/Header.stories.d.ts +1 -1
  711. package/lib/test-setup.js +66 -0
  712. package/lib/tools/adapters/agent-runtimes/lexicalHooks.d.ts +15 -0
  713. package/lib/tools/adapters/agent-runtimes/lexicalHooks.js +43 -2
  714. package/lib/tools/adapters/agent-runtimes/notebookHooks.d.ts +9 -0
  715. package/lib/tools/adapters/agent-runtimes/notebookHooks.js +12 -0
  716. package/lib/tools/adapters/commands/frontendCommandTools.d.ts +11 -0
  717. package/lib/tools/adapters/commands/frontendCommandTools.js +60 -0
  718. package/lib/tools/adapters/commands/index.d.ts +1 -0
  719. package/lib/{models/Dataset.js → tools/adapters/commands/index.js} +1 -1
  720. package/lib/tools/adapters/copilotkit/lexicalHooks.js +7 -3
  721. package/lib/tools/index.d.ts +1 -0
  722. package/lib/tools/index.js +1 -0
  723. package/lib/types/a2a.d.ts +15 -1
  724. package/lib/types/agents-lifecycle.d.ts +11 -6
  725. package/lib/types/agents.d.ts +31 -6
  726. package/lib/types/agentspecs.d.ts +120 -4
  727. package/lib/types/chat.d.ts +251 -3
  728. package/lib/types/checkpoints.d.ts +20 -0
  729. package/lib/types/config.d.ts +13 -1
  730. package/lib/types/connection.d.ts +1 -1
  731. package/lib/types/evals.d.ts +2 -0
  732. package/lib/types/messages.d.ts +60 -0
  733. package/lib/types/models.d.ts +26 -0
  734. package/lib/types/notifications.d.ts +15 -6
  735. package/lib/types/protocol.d.ts +7 -2
  736. package/lib/types/stream.d.ts +48 -3
  737. package/lib/types/stream.js +5 -0
  738. package/lib/types/teams.d.ts +102 -4
  739. package/lib/types/tool-approvals.d.ts +1 -1
  740. package/lib/types/tools.d.ts +8 -2
  741. package/lib/utils/utils.js +7 -1
  742. package/package.json +376 -361
  743. package/scripts/codegen/__pycache__/compose.cpython-313.pyc +0 -0
  744. package/scripts/codegen/__pycache__/versioning.cpython-313.pyc +0 -0
  745. package/scripts/codegen/compose.py +208 -0
  746. package/scripts/codegen/generate_agents.py +202 -31
  747. package/scripts/codegen/generate_evals.py +2 -0
  748. package/scripts/codegen/generate_frontend_tools.py +35 -6
  749. package/scripts/codegen/generate_models.py +40 -15
  750. package/scripts/codegen/generate_sandbox_agents.py +76 -62
  751. package/scripts/codegen/generate_teams.py +178 -4
  752. package/scripts/codegen/generate_tools.py +6 -4
  753. package/scripts/gen_workers.py +278 -110
  754. package/scripts/generate-environments-types.py +404 -0
  755. package/lib/chat/prompt/InputFooter.d.ts +0 -58
  756. package/lib/chat/prompt/InputFooter.js +0 -194
  757. package/lib/chat/prompt/InputPromptFooter.d.ts +0 -27
  758. package/lib/chat/prompt/InputPromptFooter.js +0 -15
  759. package/lib/chat/prompt/InputPromptHeader.d.ts +0 -15
  760. package/lib/chat/prompt/InputPromptHeader.js +0 -15
  761. package/lib/chat/usage/TokenUsageBar.d.ts +0 -8
  762. package/lib/hooks/useRuntimes.d.ts +0 -5
  763. package/lib/hooks/useRuntimes.js +0 -34
  764. package/lib/jupyter/kernelsHandler.d.ts +0 -8
  765. package/lib/jupyter/kernelsHandler.js +0 -39
  766. package/lib/models/Dataset.d.ts +0 -16
  767. package/lib/utils/Cells.d.ts +0 -2
  768. package/lib/utils/Cells.js +0 -28
@@ -0,0 +1,37 @@
1
+ /*
2
+ * Copyright (c) 2025-2026 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ /** What a reservation is offered before any credits are known. */
6
+ export const DEFAULT_MINUTES_FLOOR = 10;
7
+ export function codeSandboxAllowance({ available, includedRuns, currentRuns, burningRate, }) {
8
+ const hasKnownRunAllowance = typeof includedRuns === 'number';
9
+ const hasRemainingRuns = hasKnownRunAllowance &&
10
+ typeof currentRuns === 'number' &&
11
+ includedRuns > 0 &&
12
+ currentRuns < includedRuns;
13
+ /*
14
+ * Finite, not merely a number: `NaN` is a `number`, and reading it as a
15
+ * known balance is how an account holding thousands of credits was offered
16
+ * the ten-minute floor. Unknown is unknown, and says so.
17
+ */
18
+ const hasKnownCredits = Number.isFinite(available);
19
+ const maxFromCredits = burningRate && burningRate > 0 && hasKnownCredits
20
+ ? Math.floor((available ?? 0) / burningRate / 60.0)
21
+ : undefined;
22
+ const effectiveMaxMinutes = hasKnownCredits && hasKnownRunAllowance && !hasRemainingRuns
23
+ ? Math.max(1, maxFromCredits ?? 0)
24
+ : Math.max(DEFAULT_MINUTES_FLOOR, maxFromCredits && maxFromCredits > 0 ? maxFromCredits : 0);
25
+ const outOfCredits = hasKnownCredits &&
26
+ hasKnownRunAllowance &&
27
+ !hasRemainingRuns &&
28
+ ((available ?? 0) <= 0 || (maxFromCredits ?? 0) < Number.EPSILON);
29
+ return {
30
+ maxFromCredits,
31
+ effectiveMaxMinutes,
32
+ outOfCredits,
33
+ hasKnownCredits,
34
+ hasKnownRunAllowance,
35
+ hasRemainingRuns,
36
+ };
37
+ }
@@ -0,0 +1,86 @@
1
+ /**
2
+ * What the environment dropdown says about an environment, as rules.
3
+ *
4
+ * The listing now holds two kinds of thing: the platform's environments, which
5
+ * have always been there, and the environments people build (PLAN_ENV.md,
6
+ * E1-01). They are told apart, grouped, priced and — where a variant was never
7
+ * built — refused here rather than in the components, so the launcher and the
8
+ * picker cannot come to different conclusions about the same entry, and so the
9
+ * rules can be read and tested without a DOM.
10
+ *
11
+ * Nothing in this module writes a rate: the burning rate of a user environment
12
+ * is the rate of the size class its promoted version names, and the listing
13
+ * carries it (D-4, E1-19).
14
+ *
15
+ * @module components/code-sandboxes/codeSandboxEnvironments
16
+ */
17
+ import type { IDatalayerEnvironment } from '../../models';
18
+ import type { ICodeSandboxEnvironmentOption } from './CodeSandboxEnvironmentSelect';
19
+ /**
20
+ * The variant a sandbox of THIS platform starts on.
21
+ *
22
+ * A user environment may be built for Modal, Daytona or E2B as well; those
23
+ * sandboxes are launched at their provider, not from this dropdown, so what
24
+ * decides whether an entry can be launched here is the Datalayer artifact.
25
+ */
26
+ export declare const DATALAYER_LAUNCH_VARIANT = "datalayer";
27
+ /** Where an entry is listed. */
28
+ export type CodeSandboxEnvironmentGroup = 'yours' | 'organizations' | 'library' | 'platform';
29
+ /** The heading each group reads under. */
30
+ export declare const CODE_SANDBOX_ENVIRONMENT_GROUP_TITLES: Record<CodeSandboxEnvironmentGroup, string>;
31
+ /**
32
+ * The order the groups are offered in: what is yours first, then your
33
+ * organizations', then the environments you found in the Library, and the
34
+ * platform's own catalogue last, since it is the always-there fallback.
35
+ */
36
+ export declare const CODE_SANDBOX_ENVIRONMENT_GROUP_ORDER: CodeSandboxEnvironmentGroup[];
37
+ /** Who is looking: an account uid and a handle, as the IAM store holds them. */
38
+ export type ICodeSandboxEnvironmentViewer = {
39
+ uid?: string;
40
+ handle?: string;
41
+ };
42
+ /**
43
+ * Which group an entry belongs to.
44
+ *
45
+ * An entry that reached the picker through the public Library is a *library*
46
+ * entry, whoever owns it: a published environment is offered where a reader who
47
+ * came from its public page looks for it (D-12, E2-16). Otherwise a platform
48
+ * entry says so with its `origin`. A user environment is the caller's own when
49
+ * the account that owns it is theirs — by uid, or by the handle its name is
50
+ * written with, `ada/geo`, since that is all an entry carries when the uid is
51
+ * not at hand. Everything else a caller can see is an environment of one of
52
+ * their organizations: the listing only ever offers them their own accounts'
53
+ * (D-19).
54
+ */
55
+ export declare function codeSandboxEnvironmentGroupOf(environment: Pick<IDatalayerEnvironment, 'name' | 'origin' | 'owner' | 'fromLibrary'>, viewer?: ICodeSandboxEnvironmentViewer): CodeSandboxEnvironmentGroup;
56
+ /** The version a launch of this entry runs, when it is a version anyone pinned. */
57
+ export declare function codeSandboxEnvironmentVersion(environment: Pick<IDatalayerEnvironment, 'origin' | 'promotedVersion'>): number | undefined;
58
+ /** The address of a version's page (E1-21), where its builds are. */
59
+ export declare function environmentVersionHref(uid: string, version?: number): string;
60
+ /**
61
+ * Whether a sandbox of this entry can be started from here.
62
+ *
63
+ * A platform entry always can. A user environment can once a version is
64
+ * promoted AND that version has a Datalayer artifact: without one the Operator
65
+ * refuses the launch with `DL_ENV_ARTIFACT_MISSING`, so offering it would be
66
+ * offering a failure. A listing that does not say which variants are built —
67
+ * an older Runtimes — is believed rather than doubted: the entry stays
68
+ * offered, and the refusal, if any, comes from the platform as it did before.
69
+ */
70
+ export declare function isCodeSandboxEnvironmentLaunchable(environment: Pick<IDatalayerEnvironment, 'origin' | 'promotedVersion' | 'availableVariants' | 'burning_rate'>): boolean;
71
+ /**
72
+ * Where "Build for this variant" leads: the version's own page, which is where
73
+ * a build of it is started. Only offered for an entry that has a version to
74
+ * build, and only when the entry cannot be launched as it stands.
75
+ */
76
+ export declare function codeSandboxEnvironmentBuildHref(environment: Pick<IDatalayerEnvironment, 'uid' | 'origin' | 'promotedVersion' | 'availableVariants'>): string | undefined;
77
+ /** One entry as the dropdown shows it: what it is, what it costs, and whether it can run. */
78
+ export declare function codeSandboxEnvironmentOption(environment: IDatalayerEnvironment, viewer?: ICodeSandboxEnvironmentViewer, extra?: Partial<ICodeSandboxEnvironmentOption>): ICodeSandboxEnvironmentOption;
79
+ /**
80
+ * The entries of the dropdown, in the order they read: what is yours, then
81
+ * your organizations', then the platform's, each in the order the listing gave
82
+ * them.
83
+ */
84
+ export declare function codeSandboxEnvironmentOptions(environments: readonly IDatalayerEnvironment[], viewer?: ICodeSandboxEnvironmentViewer, decorate?: (environment: IDatalayerEnvironment) => Partial<ICodeSandboxEnvironmentOption>): ICodeSandboxEnvironmentOption[];
85
+ /** The first entry a launcher may open on: never one that cannot be launched. */
86
+ export declare function firstLaunchableCodeSandboxEnvironment(environments: readonly IDatalayerEnvironment[]): IDatalayerEnvironment | undefined;
@@ -0,0 +1,147 @@
1
+ /*
2
+ * Copyright (c) 2025-2026 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ /**
6
+ * The variant a sandbox of THIS platform starts on.
7
+ *
8
+ * A user environment may be built for Modal, Daytona or E2B as well; those
9
+ * sandboxes are launched at their provider, not from this dropdown, so what
10
+ * decides whether an entry can be launched here is the Datalayer artifact.
11
+ */
12
+ export const DATALAYER_LAUNCH_VARIANT = 'datalayer';
13
+ /** The heading each group reads under. */
14
+ export const CODE_SANDBOX_ENVIRONMENT_GROUP_TITLES = {
15
+ yours: 'Your environments',
16
+ organizations: "Your organizations' environments",
17
+ library: 'Library',
18
+ platform: 'Platform environments',
19
+ };
20
+ /**
21
+ * The order the groups are offered in: what is yours first, then your
22
+ * organizations', then the environments you found in the Library, and the
23
+ * platform's own catalogue last, since it is the always-there fallback.
24
+ */
25
+ export const CODE_SANDBOX_ENVIRONMENT_GROUP_ORDER = ['yours', 'organizations', 'library', 'platform'];
26
+ /**
27
+ * Which group an entry belongs to.
28
+ *
29
+ * An entry that reached the picker through the public Library is a *library*
30
+ * entry, whoever owns it: a published environment is offered where a reader who
31
+ * came from its public page looks for it (D-12, E2-16). Otherwise a platform
32
+ * entry says so with its `origin`. A user environment is the caller's own when
33
+ * the account that owns it is theirs — by uid, or by the handle its name is
34
+ * written with, `ada/geo`, since that is all an entry carries when the uid is
35
+ * not at hand. Everything else a caller can see is an environment of one of
36
+ * their organizations: the listing only ever offers them their own accounts'
37
+ * (D-19).
38
+ */
39
+ export function codeSandboxEnvironmentGroupOf(environment, viewer) {
40
+ if (environment.fromLibrary) {
41
+ return 'library';
42
+ }
43
+ if (environment.origin !== 'user') {
44
+ return 'platform';
45
+ }
46
+ const handle = viewer?.handle;
47
+ const mine = (!!viewer?.uid && environment.owner === viewer.uid) ||
48
+ (!!handle && environment.name.startsWith(`${handle}/`));
49
+ return mine ? 'yours' : 'organizations';
50
+ }
51
+ /** The version a launch of this entry runs, when it is a version anyone pinned. */
52
+ export function codeSandboxEnvironmentVersion(environment) {
53
+ if (environment.origin !== 'user') {
54
+ return undefined;
55
+ }
56
+ return environment.promotedVersion?.version;
57
+ }
58
+ /** The address of a version's page (E1-21), where its builds are. */
59
+ export function environmentVersionHref(uid, version) {
60
+ return version === undefined
61
+ ? `/environments/${uid}/versions`
62
+ : `/environments/${uid}/versions/${version}`;
63
+ }
64
+ /**
65
+ * Whether a sandbox of this entry can be started from here.
66
+ *
67
+ * A platform entry always can. A user environment can once a version is
68
+ * promoted AND that version has a Datalayer artifact: without one the Operator
69
+ * refuses the launch with `DL_ENV_ARTIFACT_MISSING`, so offering it would be
70
+ * offering a failure. A listing that does not say which variants are built —
71
+ * an older Runtimes — is believed rather than doubted: the entry stays
72
+ * offered, and the refusal, if any, comes from the platform as it did before.
73
+ */
74
+ export function isCodeSandboxEnvironmentLaunchable(environment) {
75
+ if (environment.origin !== 'user') {
76
+ return true;
77
+ }
78
+ if (!environment.promotedVersion) {
79
+ return false;
80
+ }
81
+ const available = environment.availableVariants;
82
+ if (available === undefined) {
83
+ return true;
84
+ }
85
+ if (!available.includes(DATALAYER_LAUNCH_VARIANT)) {
86
+ return false;
87
+ }
88
+ /*
89
+ * And it has to be priceable. A launch reserves credits before anything
90
+ * starts, so an entry whose size class carries no rate cannot be launched
91
+ * from here at all — offering it would reserve nothing and be refused by the
92
+ * platform, which reads to the user as the sandbox failing for no reason.
93
+ */
94
+ return !!environment.burning_rate;
95
+ }
96
+ /**
97
+ * Where "Build for this variant" leads: the version's own page, which is where
98
+ * a build of it is started. Only offered for an entry that has a version to
99
+ * build, and only when the entry cannot be launched as it stands.
100
+ */
101
+ export function codeSandboxEnvironmentBuildHref(environment) {
102
+ if (environment.origin !== 'user' || !environment.uid) {
103
+ return undefined;
104
+ }
105
+ const available = environment.availableVariants;
106
+ /*
107
+ * Only where a BUILD is the thing that is missing. An entry that has its
108
+ * artifact and cannot be launched for another reason — an unpriced size
109
+ * class — is not made better by building it again, and an older Runtimes,
110
+ * which says nothing about artifacts, is not second-guessed.
111
+ */
112
+ if (available === undefined || available.includes(DATALAYER_LAUNCH_VARIANT)) {
113
+ return undefined;
114
+ }
115
+ return environmentVersionHref(environment.uid, codeSandboxEnvironmentVersion(environment));
116
+ }
117
+ /** One entry as the dropdown shows it: what it is, what it costs, and whether it can run. */
118
+ export function codeSandboxEnvironmentOption(environment, viewer, extra = {}) {
119
+ const group = codeSandboxEnvironmentGroupOf(environment, viewer);
120
+ const version = codeSandboxEnvironmentVersion(environment);
121
+ return {
122
+ key: environment.name,
123
+ title: environment.title || environment.name,
124
+ name: environment.name,
125
+ group: CODE_SANDBOX_ENVIRONMENT_GROUP_TITLES[group],
126
+ version: version === undefined ? undefined : `v${version}`,
127
+ sizeClass: environment.sizeClass || undefined,
128
+ burningRate: environment.burning_rate,
129
+ gpu: environment.resources?.['nvidia.com/gpu'],
130
+ disabled: !isCodeSandboxEnvironmentLaunchable(environment),
131
+ buildHref: codeSandboxEnvironmentBuildHref(environment),
132
+ ...extra,
133
+ };
134
+ }
135
+ /**
136
+ * The entries of the dropdown, in the order they read: what is yours, then
137
+ * your organizations', then the platform's, each in the order the listing gave
138
+ * them.
139
+ */
140
+ export function codeSandboxEnvironmentOptions(environments, viewer, decorate) {
141
+ const options = environments.map(environment => codeSandboxEnvironmentOption(environment, viewer, decorate?.(environment) ?? {}));
142
+ return CODE_SANDBOX_ENVIRONMENT_GROUP_ORDER.flatMap(group => options.filter(option => option.group === CODE_SANDBOX_ENVIRONMENT_GROUP_TITLES[group]));
143
+ }
144
+ /** The first entry a launcher may open on: never one that cannot be launched. */
145
+ export function firstLaunchableCodeSandboxEnvironment(environments) {
146
+ return environments.find(isCodeSandboxEnvironmentLaunchable);
147
+ }
@@ -7,7 +7,8 @@
7
7
  *
8
8
  * A sandbox is not one kind of thing: it is a runtime of the platform, a
9
9
  * kernel of a Jupyter Server, a kernel of the browser — and, on the Python
10
- * side, a Kaggle session or a Modal container as well. Each of those is a
10
+ * side, a Kaggle session, a Modal or CoreWeave container, an E2B microVM, a
11
+ * Daytona sandbox or a Cloudflare edge container as well. Each of those is a
11
12
  * PROVIDER, each ships the environments it offers (the platform ships
12
13
  * `ai-agents-env`, Kaggle a CPU and a GPU session), and each is usable only
13
14
  * where what it needs is at hand.
@@ -23,6 +24,14 @@
23
24
  * answer the same question — which providers can be used from here — so the
24
25
  * CLI, the web application and JupyterLab offer the same thing.
25
26
  *
27
+ * The clouds of that registry — Kaggle, Modal, Cloudflare, CoreWeave,
28
+ * Daytona, E2B — are deliberately absent from the list below. Nothing on this
29
+ * page holds their credentials, and nothing here should: the operator holds
30
+ * them, decides which of them an account may use, and serves what they offer
31
+ * as environments of the platform, each tagged with its provider through
32
+ * `owner`. So they reach this page under `remote`, one provider as far as the
33
+ * services are concerned, and `CodeSandboxVariant` is what tells them apart.
34
+ *
26
35
  * @module components/code-sandboxes/codeSandboxProviders
27
36
  */
28
37
  import { loadJupyterConfig } from '@datalayer/jupyter-react';
@@ -49,7 +58,7 @@ export function codeSandboxProviders(multiServiceManager) {
49
58
  available: Boolean(multiServiceManager?.remote),
50
59
  unavailableReason: multiServiceManager?.remote
51
60
  ? undefined
52
- : 'Sign in to Datalayer to launch a sandbox on the platform.'
61
+ : 'Sign in to Datalayer to launch a sandbox on the platform.',
53
62
  },
54
63
  {
55
64
  name: 'local',
@@ -57,7 +66,7 @@ export function codeSandboxProviders(multiServiceManager) {
57
66
  available: insideJupyterLab && Boolean(multiServiceManager?.local),
58
67
  unavailableReason: insideJupyterLab
59
68
  ? undefined
60
- : 'The kernels of a Jupyter Server are offered inside JupyterLab.'
69
+ : 'The kernels of a Jupyter Server are offered inside JupyterLab.',
61
70
  },
62
71
  {
63
72
  name: 'browser',
@@ -65,8 +74,8 @@ export function codeSandboxProviders(multiServiceManager) {
65
74
  available: Boolean(multiServiceManager?.browser),
66
75
  unavailableReason: multiServiceManager?.browser
67
76
  ? undefined
68
- : 'No kernel runs in this browser.'
69
- }
77
+ : 'No kernel runs in this browser.',
78
+ },
70
79
  ];
71
80
  }
72
81
  /**
@@ -11,6 +11,7 @@
11
11
  */
12
12
  export * from './CodeSandboxCellVariables';
13
13
  export * from './CodeSandboxCellVariablesDialog';
14
+ export * from './codeSandboxEnvironments';
14
15
  export * from './CodeSandboxEnvironmentSelect';
15
16
  export * from './CodeSandboxLauncher';
16
17
  export * from './CodeSandboxPicker';
@@ -15,6 +15,7 @@
15
15
  */
16
16
  export * from './CodeSandboxCellVariables';
17
17
  export * from './CodeSandboxCellVariablesDialog';
18
+ export * from './codeSandboxEnvironments';
18
19
  export * from './CodeSandboxEnvironmentSelect';
19
20
  export * from './CodeSandboxLauncher';
20
21
  export * from './CodeSandboxPicker';
@@ -1,2 +1,2 @@
1
- export declare const SpaceSelect: () => import("react/jsx-runtime").JSX.Element;
1
+ export declare const SpaceSelect: () => import("react").JSX.Element;
2
2
  export default SpaceSelect;
@@ -1,2 +1,2 @@
1
- export declare const FlashDisclaimer: () => import("react/jsx-runtime").JSX.Element;
1
+ export declare const FlashDisclaimer: () => import("react").JSX.Element;
2
2
  export default FlashDisclaimer;
@@ -1,3 +1,4 @@
1
+ import type { JSX } from 'react';
1
2
  import { Icon } from '@primer/octicons-react';
2
3
  import { IAnyItem, IItemType } from '../../models';
3
4
  type IArtifactIconClassProp = {
@@ -1,5 +1,5 @@
1
1
  import { IStudentItem } from '../../models';
2
2
  export declare const NbGradesDetails: (props: {
3
3
  studentItem?: IStudentItem;
4
- }) => import("react/jsx-runtime").JSX.Element;
4
+ }) => import("react").JSX.Element;
5
5
  export default NbGradesDetails;
@@ -1,3 +1,4 @@
1
+ import type { JSX } from 'react';
1
2
  import type { IRemoteServicesManager } from '../../runtimes';
2
3
  type ICreditsIndicatorProps = {
3
4
  /**
@@ -1,8 +1,4 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
- /*
3
- * Copyright (c) 2025-2026 Datalayer, Inc.
4
- * Distributed under the terms of the Modified BSD License.
5
- */
6
2
  import { useState, useEffect } from 'react';
7
3
  import { Box } from '@datalayer/primer-addons';
8
4
  import { ConsumptionBar } from '@datalayer/core/lib/components/progress/ConsumptionBar';
@@ -50,5 +50,5 @@ export type ScheduleMenuProps = {
50
50
  * anchor icon while a save request is in flight. The scheduler service URL is
51
51
  * configurable through the `baseUrl` prop.
52
52
  */
53
- export declare const ScheduleMenu: ({ notebookUid, scheduleUid, token, baseUrl, enabled, icon, iconColor, ariaLabel, initialPreset, initialCronExpression, onSaved, onDeleted, onError, }: ScheduleMenuProps) => import("react/jsx-runtime").JSX.Element;
53
+ export declare const ScheduleMenu: ({ notebookUid, scheduleUid, token, baseUrl, enabled, icon, iconColor, ariaLabel, initialPreset, initialCronExpression, onSaved, onDeleted, onError, }: ScheduleMenuProps) => import("react").JSX.Element;
54
54
  export default ScheduleMenu;
@@ -1,3 +1,4 @@
1
+ import type { JSX } from 'react';
1
2
  import { type PropsWithChildren } from 'react';
2
3
  import { Kernel } from '@jupyterlab/services';
3
4
  import { IMultiServiceManager } from '../../runtimes';
@@ -20,7 +21,7 @@ type ICodeSandboxSnapshotMenu = {
20
21
  *
21
22
  * It is needed for remote kernels.
22
23
  */
23
- podName?: string;
24
+ runtimeName?: string;
24
25
  /**
25
26
  * Whether the menu is disabled.
26
27
  */
@@ -29,5 +30,5 @@ type ICodeSandboxSnapshotMenu = {
29
30
  /**
30
31
  * Code Sandbox Snapshot menu component.
31
32
  */
32
- export declare function SandboxSnapshotMenu({ children, connection, podName, multiServiceManager, disabled, }: PropsWithChildren<ICodeSandboxSnapshotMenu>): JSX.Element;
33
+ export declare function SandboxSnapshotMenu({ children, connection, runtimeName, multiServiceManager, disabled, }: PropsWithChildren<ICodeSandboxSnapshotMenu>): JSX.Element;
33
34
  export {};
@@ -1,8 +1,4 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- /*
3
- * Copyright (c) 2025-2026 Datalayer, Inc.
4
- * Distributed under the terms of the Modified BSD License.
5
- */
6
2
  import { useCallback, useEffect, useState, } from 'react';
7
3
  import { DeviceCameraIcon } from '@primer/octicons-react';
8
4
  import { ActionList, ActionMenu, Flash, FormControl, Select, Spinner, } from '@primer/react';
@@ -15,7 +11,7 @@ import { createSandboxSnapshotName } from '@datalayer/core/lib/utils';
15
11
  /**
16
12
  * Code Sandbox Snapshot menu component.
17
13
  */
18
- export function SandboxSnapshotMenu({ children, connection, podName, multiServiceManager, disabled = false, }) {
14
+ export function SandboxSnapshotMenu({ children, connection, runtimeName, multiServiceManager, disabled = false, }) {
19
15
  const { addSandboxSnapshot, runtimesUrl, runtimeSnapshots, setSandboxSnapshots, } = useRuntimesStore();
20
16
  const { enqueueToast, trackAsyncTask } = useToast();
21
17
  const [openLoadDialog, setOpenLoadDialog] = useState(false);
@@ -42,10 +38,10 @@ export function SandboxSnapshotMenu({ children, connection, podName, multiServic
42
38
  const onSandboxSnapshotChanged = useCallback(event => {
43
39
  setSelection(event.target.value);
44
40
  }, []);
45
- const onLoadSandboxSnapshotSubmit = useCallback(async ({ id, connection, podName, }) => {
46
- if (podName) {
47
- await loadSandboxSnapshot({ id: podName, from: id });
48
- enqueueToast(`Code Sandbox snapshot ${podName} is loaded.`, {
41
+ const onLoadSandboxSnapshotSubmit = useCallback(async ({ id, connection, runtimeName, }) => {
42
+ if (runtimeName) {
43
+ await loadSandboxSnapshot({ id: runtimeName, from: id });
44
+ enqueueToast(`Code Sandbox snapshot ${runtimeName} is loaded.`, {
49
45
  variant: 'success',
50
46
  });
51
47
  }
@@ -63,15 +59,15 @@ export function SandboxSnapshotMenu({ children, connection, podName, multiServic
63
59
  let task;
64
60
  let ref = '';
65
61
  let snapshotName = '';
66
- if (podName && multiServiceManager?.remote) {
62
+ if (runtimeName && multiServiceManager?.remote) {
67
63
  snapshotName = createSandboxSnapshotName('cloud');
68
64
  task = multiServiceManager.remote.runtimesManager.snapshotRuntime({
69
- podName,
65
+ runtimeName,
70
66
  name: snapshotName,
71
67
  description: snapshotName,
72
68
  stop: false,
73
69
  });
74
- ref = podName.split('-', 2).reverse()[0];
70
+ ref = runtimeName.split('-', 2).reverse()[0];
75
71
  task.then(s => {
76
72
  snapshot = s;
77
73
  });
@@ -121,7 +117,7 @@ export function SandboxSnapshotMenu({ children, connection, podName, multiServic
121
117
  finally {
122
118
  setTakingSandboxSnapshot(false);
123
119
  }
124
- }, [connection, podName, multiServiceManager]);
120
+ }, [connection, runtimeName, multiServiceManager]);
125
121
  return (_jsxs(_Fragment, { children: [_jsxs(ActionMenu, { children: [_jsx(ActionMenu.Button, { leadingVisual: DeviceCameraIcon, variant: "invisible", size: "small", disabled: loadingSandboxSnapshot || takingSandboxSnapshot || disabled, children: children }), _jsx(ActionMenu.Overlay, { children: _jsxs(ActionList, { children: [_jsx(ActionList.Item, { onSelect: onLoadSandboxSnapshot, disabled: loadingSandboxSnapshot || runtimeSnapshots.length === 0, children: "Load a code sandbox snapshot\u2026" }), _jsx(ActionList.Item, { onSelect: onTakeSandboxSnapshot, disabled: takingSandboxSnapshot, children: "Take a code sandbox snapshot" })] }) })] }), openLoadDialog && (_jsx(Dialog, { title: _jsx("span", { style: { color: 'var(--fgColor-default)' }, children: "Choose a code sandbox snapshot to load" }), onClose: () => {
126
122
  setOpenLoadDialog(false);
127
123
  }, footerButtons: [
@@ -146,11 +142,11 @@ export function SandboxSnapshotMenu({ children, connection, podName, multiServic
146
142
  try {
147
143
  setError(undefined);
148
144
  const snapshot = runtimeSnapshots.find(s => s.id === selection);
149
- if (snapshot && (connection || podName)) {
145
+ if (snapshot && (connection || runtimeName)) {
150
146
  await onLoadSandboxSnapshotSubmit({
151
147
  connection,
152
148
  id: snapshot.id,
153
- podName,
149
+ runtimeName,
154
150
  });
155
151
  }
156
152
  else {
@@ -1,3 +1,4 @@
1
+ import type { JSX } from 'react';
1
2
  import { CodeCellModel } from '@jupyterlab/cells';
2
3
  import type { IMarkdownParser, IRenderMime } from '@jupyterlab/rendermime';
3
4
  import { ITranslator } from '@jupyterlab/translation';
@@ -1,8 +1,4 @@
1
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
2
  import { useCallback, useMemo, useState } from 'react';
7
3
  import { nullTranslator } from '@jupyterlab/translation';
8
4
  import { FormControl, Select, Text } from '@primer/react';
@@ -0,0 +1,34 @@
1
+ /**
2
+ * A spec, as the YAML somebody would have written.
3
+ *
4
+ * The agentspecs example grew this to show what it was about to launch, and
5
+ * the agent details pane wants the same thing for what is already running —
6
+ * "here is the spec, in the form it is written in" is one question, and two
7
+ * renderings of it would drift.
8
+ *
9
+ * The serialiser is deliberately small and local. A YAML library would be a
10
+ * dependency for a read-only preview of data this application produced itself,
11
+ * and the shapes here are plain objects, arrays, strings and numbers.
12
+ *
13
+ * @module components/specs/SpecPayloadPreview
14
+ */
15
+ import type { JSX } from 'react';
16
+ /** A spec rendered as YAML. Exported for callers that only want the text. */
17
+ export declare function specToYaml(value: unknown): string;
18
+ export type SpecPayloadPreviewProps = {
19
+ /** The spec to render. */
20
+ spec: unknown;
21
+ /** Called when the reader dismisses it. */
22
+ onClose: () => void;
23
+ /** What the panel calls itself. */
24
+ title?: string;
25
+ };
26
+ /**
27
+ * The preview, as a panel over whatever is behind it.
28
+ *
29
+ * Escape closes it as well as the button, because a panel that covers the
30
+ * view and can only be dismissed by finding one control is a panel people
31
+ * feel trapped in.
32
+ */
33
+ export declare function SpecPayloadPreview({ spec, onClose, title, }: SpecPayloadPreviewProps): JSX.Element;
34
+ export default SpecPayloadPreview;
@@ -0,0 +1,102 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect } from 'react';
3
+ import { IconButton, Text } from '@primer/react';
4
+ import { XIcon } from '@primer/octicons-react';
5
+ import { Box } from '@datalayer/primer-addons';
6
+ const isPlainObject = (value) => typeof value === 'object' && value !== null && !Array.isArray(value);
7
+ const yamlScalar = (value) => {
8
+ if (value === null || value === undefined) {
9
+ return 'null';
10
+ }
11
+ if (typeof value === 'number' || typeof value === 'boolean') {
12
+ return String(value);
13
+ }
14
+ const str = String(value);
15
+ if (str === '') {
16
+ return "''";
17
+ }
18
+ if (/^[a-zA-Z0-9._/-]+$/.test(str)) {
19
+ return str;
20
+ }
21
+ return JSON.stringify(str);
22
+ };
23
+ const toYaml = (value, indent = 0) => {
24
+ const pad = ' '.repeat(indent);
25
+ if (Array.isArray(value)) {
26
+ if (value.length === 0) {
27
+ return '[]';
28
+ }
29
+ return value
30
+ .map(item => {
31
+ if (isPlainObject(item) || Array.isArray(item)) {
32
+ return `${pad}-\n${toYaml(item, indent + 1)}`;
33
+ }
34
+ return `${pad}- ${yamlScalar(item)}`;
35
+ })
36
+ .join('\n');
37
+ }
38
+ if (isPlainObject(value)) {
39
+ const entries = Object.entries(value).filter(([, v]) => v !== undefined);
40
+ if (entries.length === 0) {
41
+ return '{}';
42
+ }
43
+ return entries
44
+ .map(([key, val]) => {
45
+ if (isPlainObject(val) || Array.isArray(val)) {
46
+ return `${pad}${key}:\n${toYaml(val, indent + 1)}`;
47
+ }
48
+ return `${pad}${key}: ${yamlScalar(val)}`;
49
+ })
50
+ .join('\n');
51
+ }
52
+ return `${pad}${yamlScalar(value)}`;
53
+ };
54
+ /** A spec rendered as YAML. Exported for callers that only want the text. */
55
+ export function specToYaml(value) {
56
+ return toYaml(value);
57
+ }
58
+ /**
59
+ * The preview, as a panel over whatever is behind it.
60
+ *
61
+ * Escape closes it as well as the button, because a panel that covers the
62
+ * view and can only be dismissed by finding one control is a panel people
63
+ * feel trapped in.
64
+ */
65
+ export function SpecPayloadPreview({ spec, onClose, title = 'Spec Payload Preview (YAML)', }) {
66
+ useEffect(() => {
67
+ const onKeyDown = (event) => {
68
+ if (event.key === 'Escape') {
69
+ onClose();
70
+ }
71
+ };
72
+ document.addEventListener('keydown', onKeyDown);
73
+ return () => document.removeEventListener('keydown', onKeyDown);
74
+ }, [onClose]);
75
+ return (_jsxs(Box, { role: "dialog", "aria-label": title, "aria-modal": "true", sx: {
76
+ position: 'fixed',
77
+ inset: 24,
78
+ zIndex: 300,
79
+ bg: 'canvas.default',
80
+ border: '1px solid',
81
+ borderColor: 'border.default',
82
+ borderRadius: 1,
83
+ boxShadow: 'shadow.large',
84
+ display: 'flex',
85
+ flexDirection: 'column',
86
+ }, children: [_jsxs(Box, { sx: {
87
+ display: 'flex',
88
+ alignItems: 'center',
89
+ justifyContent: 'space-between',
90
+ px: 3,
91
+ py: 2,
92
+ borderBottom: '1px solid',
93
+ borderColor: 'border.default',
94
+ }, children: [_jsx(Text, { sx: { fontWeight: 'bold' }, children: title }), _jsx(IconButton, { icon: XIcon, "aria-label": "Close spec preview", size: "small", variant: "invisible", onClick: onClose })] }), _jsx(Box, { sx: { p: 3, overflow: 'auto', flex: 1 }, children: _jsx(Box, { as: "pre", sx: {
95
+ m: 0,
96
+ whiteSpace: 'pre',
97
+ fontFamily: 'monospace',
98
+ fontSize: 0,
99
+ lineHeight: '20px',
100
+ }, children: specToYaml(spec) }) })] }));
101
+ }
102
+ export default SpecPayloadPreview;
@@ -1,5 +1,5 @@
1
1
  import { ISpaceVariant } from '../../models';
2
2
  export declare const SpaceVariantToken: (props: {
3
3
  variant: ISpaceVariant | string;
4
- }) => import("react/jsx-runtime").JSX.Element;
4
+ }) => import("react").JSX.Element;
5
5
  export default SpaceVariantToken;