@datalayer/agent-runtimes 1.0.10 → 1.0.18

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 (452) hide show
  1. package/README.md +82 -1
  2. package/lib/{AgentLexical.d.ts → AgentDocument.d.ts} +5 -5
  3. package/lib/{AgentLexical.js → AgentDocument.js} +156 -26
  4. package/lib/AgentNode.js +32 -31
  5. package/lib/AgentNotebook.js +172 -17
  6. package/lib/AppExamples2.css +47 -0
  7. package/lib/AppExamples2.d.ts +3 -0
  8. package/lib/AppExamples2.js +21 -0
  9. package/lib/{agent-lexical-main.js → agent-document-main.js} +2 -2
  10. package/lib/agents/AgentRuntimeChat.d.ts +73 -0
  11. package/lib/agents/AgentRuntimeChat.js +198 -0
  12. package/lib/api/index.d.ts +12 -0
  13. package/lib/api/index.js +46 -0
  14. package/lib/api/runtimes/checkpoints.d.ts +122 -0
  15. package/lib/api/runtimes/checkpoints.js +118 -0
  16. package/lib/api/runtimes/environments.d.ts +9 -0
  17. package/lib/api/runtimes/environments.js +29 -0
  18. package/lib/api/runtimes/healthz.d.ts +15 -0
  19. package/lib/api/runtimes/healthz.js +44 -0
  20. package/lib/api/runtimes/index.d.ts +12 -0
  21. package/lib/api/runtimes/index.js +16 -0
  22. package/lib/api/runtimes/runtimes.d.ts +138 -0
  23. package/lib/api/runtimes/runtimes.js +230 -0
  24. package/lib/api/runtimes/snapshots.d.ts +38 -0
  25. package/lib/api/runtimes/snapshots.js +82 -0
  26. package/lib/api/scheduler/index.d.ts +6 -0
  27. package/lib/api/scheduler/index.js +10 -0
  28. package/lib/api/scheduler/schedules.d.ts +85 -0
  29. package/lib/api/scheduler/schedules.js +78 -0
  30. package/lib/api/spacer/documents.d.ts +12 -0
  31. package/lib/api/spacer/documents.js +43 -0
  32. package/lib/api/spacer/healthz.d.ts +15 -0
  33. package/lib/api/spacer/healthz.js +44 -0
  34. package/lib/api/spacer/index.d.ts +15 -0
  35. package/lib/api/spacer/index.js +19 -0
  36. package/lib/api/spacer/items.d.ts +25 -0
  37. package/lib/api/spacer/items.js +55 -0
  38. package/lib/api/spacer/lexicals.d.ts +34 -0
  39. package/lib/api/spacer/lexicals.js +89 -0
  40. package/lib/api/spacer/notebooks.d.ts +34 -0
  41. package/lib/api/spacer/notebooks.js +89 -0
  42. package/lib/api/spacer/spaces.d.ts +84 -0
  43. package/lib/api/spacer/spaces.js +170 -0
  44. package/lib/api/spacer/users.d.ts +9 -0
  45. package/lib/api/spacer/users.js +29 -0
  46. package/lib/chat/Chat.d.ts +1 -1
  47. package/lib/chat/Chat.js +54 -54
  48. package/lib/chat/ChatFloating.d.ts +2 -2
  49. package/lib/chat/ChatFloating.js +136 -25
  50. package/lib/chat/ChatSidebar.js +20 -22
  51. package/lib/chat/base/ChatBase.js +429 -39
  52. package/lib/chat/display/EmptyState.js +21 -21
  53. package/lib/chat/document/EphemeralDocument.d.ts +23 -0
  54. package/lib/chat/document/EphemeralDocument.js +270 -0
  55. package/lib/chat/header/ChatHeaderBase.d.ts +12 -2
  56. package/lib/chat/header/ChatHeaderBase.js +78 -23
  57. package/lib/chat/index.d.ts +1 -0
  58. package/lib/chat/index.js +2 -0
  59. package/lib/chat/notebook/EphemeralNotebook.d.ts +24 -0
  60. package/lib/chat/notebook/EphemeralNotebook.js +252 -0
  61. package/lib/chat/prompt/InputFooter.js +4 -1
  62. package/lib/client/AgentRuntimesClient.d.ts +127 -0
  63. package/lib/client/AgentRuntimesClient.js +36 -0
  64. package/lib/client/AgentsMixin.js +28 -28
  65. package/lib/client/SdkAgentRuntimesClient.d.ts +1 -1
  66. package/lib/client/SdkAgentRuntimesClient.js +1 -1
  67. package/lib/client/mixins/RuntimesMixin.d.ts +93 -0
  68. package/lib/client/mixins/RuntimesMixin.js +229 -0
  69. package/lib/client/mixins/SpacerMixin.d.ts +210 -0
  70. package/lib/client/mixins/SpacerMixin.js +615 -0
  71. package/lib/client/utils/spacerUtils.d.ts +18 -0
  72. package/lib/client/utils/spacerUtils.js +32 -0
  73. package/lib/collaboration/DatalayerCollaboration.d.ts +13 -0
  74. package/lib/collaboration/DatalayerCollaboration.js +28 -0
  75. package/lib/collaboration/DatalayerCollaborationProvider.d.ts +58 -0
  76. package/lib/collaboration/DatalayerCollaborationProvider.js +148 -0
  77. package/lib/collaboration/index.d.ts +2 -0
  78. package/lib/collaboration/index.js +6 -0
  79. package/lib/components/AgentSummary.d.ts +19 -0
  80. package/lib/components/AgentSummary.js +89 -0
  81. package/lib/components/a2ui/A2uiSurfaceComposed.d.ts +13 -0
  82. package/lib/components/a2ui/A2uiSurfaceComposed.js +110 -0
  83. package/lib/components/a2ui/index.d.ts +2 -0
  84. package/lib/components/a2ui/index.js +6 -0
  85. package/lib/components/a2ui/styles.d.ts +14 -0
  86. package/lib/components/a2ui/styles.js +142 -0
  87. package/lib/components/context/SpaceSelect.d.ts +2 -0
  88. package/lib/components/context/SpaceSelect.js +42 -0
  89. package/lib/components/flashes/FlashDisclaimer.d.ts +2 -0
  90. package/lib/components/flashes/FlashDisclaimer.js +17 -0
  91. package/lib/components/icons/ArtifactIcon.d.ts +10 -0
  92. package/lib/components/icons/ArtifactIcon.js +58 -0
  93. package/lib/components/icons/index.d.ts +1 -0
  94. package/lib/components/icons/index.js +5 -0
  95. package/lib/components/index.d.ts +5 -0
  96. package/lib/components/index.js +5 -0
  97. package/lib/components/nbgrader/NbGradesDetails.d.ts +5 -0
  98. package/lib/components/nbgrader/NbGradesDetails.js +19 -0
  99. package/lib/components/nbgrader/index.d.ts +1 -0
  100. package/lib/components/nbgrader/index.js +5 -0
  101. package/lib/components/progress/CreditsIndicator.d.ts +33 -0
  102. package/lib/components/progress/CreditsIndicator.js +23 -0
  103. package/lib/components/progress/index.d.ts +2 -0
  104. package/lib/components/progress/index.js +6 -0
  105. package/lib/components/runtimes/RuntimeCellVariables.d.ts +39 -0
  106. package/lib/components/runtimes/RuntimeCellVariables.js +172 -0
  107. package/lib/components/runtimes/RuntimeCellVariablesDialog.d.ts +37 -0
  108. package/lib/components/runtimes/RuntimeCellVariablesDialog.js +101 -0
  109. package/lib/components/runtimes/RuntimeLauncherDialog.d.ts +57 -0
  110. package/lib/components/runtimes/RuntimeLauncherDialog.js +275 -0
  111. package/lib/components/runtimes/RuntimePickerBase.d.ts +69 -0
  112. package/lib/components/runtimes/RuntimePickerBase.js +122 -0
  113. package/lib/components/runtimes/RuntimePickerCell.d.ts +34 -0
  114. package/lib/components/runtimes/RuntimePickerCell.js +104 -0
  115. package/lib/components/runtimes/RuntimePickerNotebook.d.ts +42 -0
  116. package/lib/components/runtimes/RuntimePickerNotebook.js +232 -0
  117. package/lib/components/runtimes/RuntimeReservationControl.d.ts +47 -0
  118. package/lib/components/runtimes/RuntimeReservationControl.js +42 -0
  119. package/lib/components/runtimes/RuntimeSimplePicker.d.ts +38 -0
  120. package/lib/components/runtimes/RuntimeSimplePicker.js +155 -0
  121. package/lib/components/runtimes/RuntimeTransfer.d.ts +16 -0
  122. package/lib/components/runtimes/RuntimeTransfer.js +5 -0
  123. package/lib/components/runtimes/RuntimeUtils.d.ts +17 -0
  124. package/lib/components/runtimes/RuntimeUtils.js +178 -0
  125. package/lib/components/runtimes/RuntimeVariables.d.ts +38 -0
  126. package/lib/components/runtimes/RuntimeVariables.js +75 -0
  127. package/lib/components/runtimes/index.d.ts +11 -0
  128. package/lib/components/runtimes/index.js +15 -0
  129. package/lib/components/scheduler/ScheduleMenu.d.ts +54 -0
  130. package/lib/components/scheduler/ScheduleMenu.js +154 -0
  131. package/lib/components/scheduler/index.d.ts +1 -0
  132. package/lib/components/scheduler/index.js +5 -0
  133. package/lib/components/snapshots/SandboxSnapshotMenu.d.ts +33 -0
  134. package/lib/components/snapshots/SandboxSnapshotMenu.js +169 -0
  135. package/lib/components/snapshots/index.d.ts +1 -0
  136. package/lib/components/snapshots/index.js +5 -0
  137. package/lib/components/snippets/SnippetDialog.d.ts +42 -0
  138. package/lib/components/snippets/SnippetDialog.js +42 -0
  139. package/lib/components/students/StudentItemStatus.d.ts +7 -0
  140. package/lib/components/students/StudentItemStatus.js +68 -0
  141. package/lib/components/students/index.d.ts +1 -0
  142. package/lib/components/students/index.js +5 -0
  143. package/lib/components/tokens/SpaceVariantToken.d.ts +5 -0
  144. package/lib/components/tokens/SpaceVariantToken.js +23 -0
  145. package/lib/components/tokens/index.d.ts +1 -0
  146. package/lib/components/tokens/index.js +5 -0
  147. package/lib/components/toolbars/AssignmentEditorToolbar.d.ts +4 -0
  148. package/lib/components/toolbars/AssignmentEditorToolbar.js +18 -0
  149. package/lib/components/toolbars/DocumentEditorToolbar.d.ts +2 -0
  150. package/lib/components/toolbars/DocumentEditorToolbar.js +12 -0
  151. package/lib/components/toolbars/NotebookEditorToolbar.d.ts +29 -0
  152. package/lib/components/toolbars/NotebookEditorToolbar.js +30 -0
  153. package/lib/context/ContextInspector.d.ts +1 -14
  154. package/lib/context/ContextInspector.js +3 -73
  155. package/lib/context/CostUsageChart.d.ts +4 -3
  156. package/lib/context/CostUsageChart.js +236 -35
  157. package/lib/context/MessageHistory.d.ts +30 -0
  158. package/lib/context/MessageHistory.js +129 -0
  159. package/lib/context/TokenUsageChart.d.ts +4 -3
  160. package/lib/context/TokenUsageChart.js +180 -30
  161. package/lib/context/TurnGraphChart.d.ts +1 -1
  162. package/lib/context/TurnGraphChart.js +6 -6
  163. package/lib/examples/A2UiAgentExample.d.ts +22 -0
  164. package/lib/examples/A2UiAgentExample.js +442 -0
  165. package/lib/examples/A2UiComponentsGalleryExample.d.ts +3 -0
  166. package/lib/examples/A2UiComponentsGalleryExample.js +863 -0
  167. package/lib/examples/A2UiContactCardExample.js +9 -5
  168. package/lib/examples/A2UiRestaurantExample.js +23 -8
  169. package/lib/examples/A2UiViewerExample.js +75 -3
  170. package/lib/examples/AgUiAgenticExample.d.ts +1 -12
  171. package/lib/examples/AgUiAgenticExample.js +52 -8
  172. package/lib/examples/AgUiBackendToolRenderingExample.d.ts +1 -16
  173. package/lib/examples/AgUiBackendToolRenderingExample.js +32 -17
  174. package/lib/examples/AgUiHaikuGenUiExample.d.ts +1 -17
  175. package/lib/examples/AgUiHaikuGenUiExample.js +49 -33
  176. package/lib/examples/AgUiHumanInTheLoopExample.d.ts +1 -12
  177. package/lib/examples/AgUiHumanInTheLoopExample.js +21 -6
  178. package/lib/examples/AgUiSharedStateExample.d.ts +1 -14
  179. package/lib/examples/AgUiSharedStateExample.js +21 -6
  180. package/lib/examples/AgUiToolsBasedGenUiExample.d.ts +1 -14
  181. package/lib/examples/AgUiToolsBasedGenUiExample.js +21 -6
  182. package/lib/examples/AgentCheckpointsExample.d.ts +1 -1
  183. package/lib/examples/AgentCheckpointsExample.js +9 -10
  184. package/lib/examples/AgentCodeSandboxesExample.d.ts +3 -0
  185. package/lib/examples/AgentCodeSandboxesExample.js +192 -0
  186. package/lib/examples/AgentCodemodeExample.js +3 -3
  187. package/lib/examples/AgentEvalsExample.js +5 -5
  188. package/lib/examples/AgentGuardrailsExample.js +17 -12
  189. package/lib/examples/AgentHooksExample.js +14 -55
  190. package/lib/examples/AgentInferenceProviderExample.js +4 -4
  191. package/lib/examples/AgentLoopExample.d.ts +10 -0
  192. package/lib/examples/AgentLoopExample.js +304 -0
  193. package/lib/examples/AgentMCPExample.js +7 -7
  194. package/lib/examples/AgentMemoryExample.js +4 -4
  195. package/lib/examples/AgentMonitoringExample.js +114 -44
  196. package/lib/examples/AgentNotificationsExample.js +4 -4
  197. package/lib/examples/AgentOtelExample.d.ts +3 -3
  198. package/lib/examples/AgentOtelExample.js +15 -10
  199. package/lib/examples/AgentOutputsExample.js +6 -6
  200. package/lib/examples/AgentParametersExample.js +21 -33
  201. package/lib/examples/AgentSandboxExample.js +5 -5
  202. package/lib/examples/AgentSkillsExample.js +7 -7
  203. package/lib/examples/AgentSubagentsExample.js +4 -4
  204. package/lib/examples/AgentToolApprovalsExample.js +5 -5
  205. package/lib/examples/AgentTriggersExample.js +9 -9
  206. package/lib/examples/AgentspecsExample.js +63 -41
  207. package/lib/examples/ChatCustomExample.js +23 -77
  208. package/lib/examples/ChatExample.js +13 -44
  209. package/lib/examples/LexicalAgentExample.js +43 -91
  210. package/lib/examples/LexicalAgentSidebarExample.js +45 -73
  211. package/lib/examples/NotebookAgentExample.js +52 -81
  212. package/lib/examples/NotebookAgentSidebarExample.js +43 -71
  213. package/lib/examples/NotebookCollaborationExample.js +11 -9
  214. package/lib/examples/NotebookExample.js +5 -2
  215. package/lib/examples/components/AuthRequiredView.js +1 -1
  216. package/lib/examples/components/ExampleErrorBoundary.d.ts +46 -0
  217. package/lib/examples/components/ExampleErrorBoundary.js +67 -0
  218. package/lib/examples/components/haiku/haiku-card.css +11 -0
  219. package/lib/examples/components/weather/weather-card.css +11 -0
  220. package/lib/examples/example-selector.js +4 -1
  221. package/lib/examples/hooks/useExampleAgentRuntime.d.ts +35 -0
  222. package/lib/examples/hooks/useExampleAgentRuntime.js +82 -0
  223. package/lib/examples/hooks/useSpecRenderToolResult.d.ts +30 -0
  224. package/lib/examples/hooks/useSpecRenderToolResult.js +61 -0
  225. package/lib/examples/index.d.ts +4 -1
  226. package/lib/examples/index.js +4 -1
  227. package/lib/examples/main.js +340 -93
  228. package/lib/examples/utils/a2ui.d.ts +2 -0
  229. package/lib/examples/utils/a2ui.js +97 -2
  230. package/lib/examples/utils/agentSummaryStore.d.ts +21 -0
  231. package/lib/examples/utils/agentSummaryStore.js +23 -0
  232. package/lib/examples/utils/notebooks/Empty.ipynb.json +30 -30
  233. package/lib/examples/utils/runtimeTargetStore.d.ts +9 -0
  234. package/lib/examples/utils/runtimeTargetStore.js +27 -0
  235. package/lib/examples/utils/teardownAgents.d.ts +13 -0
  236. package/lib/examples/utils/teardownAgents.js +78 -0
  237. package/lib/examples/utils/useExampleAgentRuntimesUrl.d.ts +2 -0
  238. package/lib/examples/utils/useExampleAgentRuntimesUrl.js +26 -7
  239. package/lib/examples2/CellExample.d.ts +6 -0
  240. package/lib/examples2/CellExample.js +20 -0
  241. package/lib/examples2/DatalayerNotebookExample.d.ts +16 -0
  242. package/lib/examples2/DatalayerNotebookExample.js +109 -0
  243. package/lib/examples2/NativeNavigationExample.d.ts +8 -0
  244. package/lib/examples2/NativeNavigationExample.js +97 -0
  245. package/lib/examples2/NotebookExample.d.ts +6 -0
  246. package/lib/examples2/NotebookExample.js +19 -0
  247. package/lib/examples2/NotebookMutationsKernel.d.ts +2 -0
  248. package/lib/examples2/NotebookMutationsKernel.js +105 -0
  249. package/lib/examples2/NotebookMutationsServiceManager.d.ts +2 -0
  250. package/lib/examples2/NotebookMutationsServiceManager.js +109 -0
  251. package/lib/examples2/ReactRouterExample.d.ts +6 -0
  252. package/lib/examples2/ReactRouterExample.js +175 -0
  253. package/lib/examples2/example-selector.d.ts +22 -0
  254. package/lib/examples2/example-selector.js +45 -0
  255. package/lib/examples2/index.d.ts +2 -0
  256. package/lib/examples2/index.js +6 -0
  257. package/lib/examples2/lexical-theme.css +436 -0
  258. package/lib/examples2/main.d.ts +2 -0
  259. package/lib/examples2/main.js +330 -0
  260. package/lib/examples2/notebooks/IPyWidgetsExample.ipynb.json +101 -0
  261. package/lib/examples2/notebooks/IPyWidgetsExampleWithState.ipynb.json +112 -0
  262. package/lib/examples2/notebooks/Lite.ipynb.json +128 -0
  263. package/lib/examples2/notebooks/Matplotlib.ipynb.json +137 -0
  264. package/lib/examples2/notebooks/NotebookExample1.ipynb.json +126 -0
  265. package/lib/examples2/notebooks/NotebookExample2.ipynb.json +48 -0
  266. package/lib/examples2/notebooks/NotebookOutputs.ipynb.json +49 -0
  267. package/lib/examples2/notebooks/NotebookToCExample.ipynb.json +102 -0
  268. package/lib/examples2/notebooks/OutputIPyWidgetsExample.d.ts +145 -0
  269. package/lib/examples2/notebooks/OutputIPyWidgetsExample.js +153 -0
  270. package/lib/examples2/notebooks/PyGWalker.ipynb.json +55 -0
  271. package/lib/hooks/index.d.ts +9 -1
  272. package/lib/hooks/index.js +13 -1
  273. package/lib/hooks/useAIAgentsWebSocket.d.ts +1 -1
  274. package/lib/hooks/useAIAgentsWebSocket.js +39 -3
  275. package/lib/hooks/useAgentRuntimes.d.ts +15 -3
  276. package/lib/hooks/useAgentRuntimes.js +186 -27
  277. package/lib/hooks/useAgentsService.js +5 -5
  278. package/lib/hooks/useCellOutputshot.d.ts +4 -0
  279. package/lib/hooks/useCellOutputshot.js +25 -0
  280. package/lib/hooks/useCheckpoints.d.ts +8 -8
  281. package/lib/hooks/useCheckpoints.js +36 -26
  282. package/lib/hooks/useConfig.d.ts +1 -1
  283. package/lib/hooks/useMonitoring.d.ts +7 -5
  284. package/lib/hooks/useMonitoring.js +16 -10
  285. package/lib/hooks/useNotifications.d.ts +11 -11
  286. package/lib/hooks/useNotifications.js +1 -1
  287. package/lib/hooks/useProgressStore.d.ts +25 -0
  288. package/lib/hooks/useProgressStore.js +58 -0
  289. package/lib/hooks/useProgressTask.d.ts +9 -0
  290. package/lib/hooks/useProgressTask.js +41 -0
  291. package/lib/hooks/useProjects.d.ts +628 -0
  292. package/lib/hooks/useProjects.js +190 -0
  293. package/lib/hooks/useRuntimes.d.ts +5 -0
  294. package/lib/hooks/useRuntimes.js +34 -0
  295. package/lib/hooks/useToolApprovals.d.ts +6 -6
  296. package/lib/index.d.ts +1 -0
  297. package/lib/index.js +1 -0
  298. package/lib/jupyter/exec/Python.d.ts +5 -0
  299. package/lib/jupyter/exec/Python.js +100 -0
  300. package/lib/jupyter/exec/Snippets.d.ts +105 -0
  301. package/lib/jupyter/exec/Snippets.js +101 -0
  302. package/lib/jupyter/exec/index.d.ts +2 -0
  303. package/lib/jupyter/exec/index.js +6 -0
  304. package/lib/jupyter/index.d.ts +2 -0
  305. package/lib/jupyter/index.js +6 -0
  306. package/lib/jupyter/kernelsHandler.d.ts +8 -0
  307. package/lib/jupyter/kernelsHandler.js +39 -0
  308. package/lib/mocks/models/CourseMock.d.ts +6 -0
  309. package/lib/mocks/models/CourseMock.js +29 -0
  310. package/lib/mocks/models/SpaceMock.d.ts +6 -0
  311. package/lib/mocks/models/SpaceMock.js +25 -0
  312. package/lib/models/Assignment.d.ts +7 -0
  313. package/lib/models/Assignment.js +5 -0
  314. package/lib/models/Cell.d.ts +8 -0
  315. package/lib/models/Cell.js +5 -0
  316. package/lib/models/CodeBlock.d.ts +10 -0
  317. package/lib/models/CodeBlock.js +5 -0
  318. package/lib/models/CodeSandboxSnapshot.d.ts +92 -0
  319. package/lib/models/CodeSandboxSnapshot.js +13 -0
  320. package/lib/models/CodeSandboxSnapshotDTO.d.ts +173 -0
  321. package/lib/models/CodeSandboxSnapshotDTO.js +139 -0
  322. package/lib/models/CodefeedBlocks.d.ts +7 -0
  323. package/lib/models/CodefeedBlocks.js +5 -0
  324. package/lib/models/Content.d.ts +5 -0
  325. package/lib/models/Content.js +5 -0
  326. package/lib/models/Course.d.ts +17 -0
  327. package/lib/models/Course.js +5 -0
  328. package/lib/models/Dataset.d.ts +16 -0
  329. package/lib/models/Dataset.js +5 -0
  330. package/lib/models/Document.d.ts +8 -0
  331. package/lib/models/Document.js +5 -0
  332. package/lib/models/Environment.d.ts +86 -0
  333. package/lib/models/Environment.js +5 -0
  334. package/lib/models/EnvironmentDTO.d.ts +125 -0
  335. package/lib/models/EnvironmentDTO.js +88 -0
  336. package/lib/models/Exercise.d.ts +16 -0
  337. package/lib/models/Exercise.js +5 -0
  338. package/lib/models/Item.d.ts +20 -0
  339. package/lib/models/Item.js +5 -0
  340. package/lib/models/ItemDTO.d.ts +74 -0
  341. package/lib/models/ItemDTO.js +186 -0
  342. package/lib/models/ItemType.d.ts +2 -0
  343. package/lib/models/ItemType.js +5 -0
  344. package/lib/models/Lesson.d.ts +5 -0
  345. package/lib/models/Lesson.js +5 -0
  346. package/lib/models/LexicalDTO.d.ts +155 -0
  347. package/lib/models/LexicalDTO.js +157 -0
  348. package/lib/models/Library.d.ts +10 -0
  349. package/lib/models/Library.js +5 -0
  350. package/lib/models/Notebook.d.ts +11 -0
  351. package/lib/models/Notebook.js +5 -0
  352. package/lib/models/NotebookDTO.d.ts +96 -0
  353. package/lib/models/NotebookDTO.js +153 -0
  354. package/lib/models/Page.d.ts +41 -0
  355. package/lib/models/Page.js +25 -0
  356. package/lib/models/PageTag.d.ts +19 -0
  357. package/lib/models/PageTag.js +94 -0
  358. package/lib/models/ProjectDTO.d.ts +89 -0
  359. package/lib/models/ProjectDTO.js +131 -0
  360. package/lib/models/Runtime.d.ts +160 -0
  361. package/lib/models/Runtime.js +18 -0
  362. package/lib/models/RuntimeDTO.d.ts +172 -0
  363. package/lib/models/RuntimeDTO.js +204 -0
  364. package/lib/models/Space.d.ts +35 -0
  365. package/lib/models/Space.js +66 -0
  366. package/lib/models/SpaceDTO.d.ts +334 -0
  367. package/lib/models/SpaceDTO.js +244 -0
  368. package/lib/models/SpaceItem.d.ts +10 -0
  369. package/lib/models/SpaceItem.js +5 -0
  370. package/lib/models/SpaceMember.d.ts +6 -0
  371. package/lib/models/SpaceMember.js +5 -0
  372. package/lib/models/StudentItem.d.ts +21 -0
  373. package/lib/models/StudentItem.js +5 -0
  374. package/lib/models/index.d.ts +32 -0
  375. package/lib/models/index.js +39 -0
  376. package/lib/protocols/AGUIAdapter.js +1 -1
  377. package/lib/runtimes/actions.d.ts +102 -0
  378. package/lib/runtimes/actions.js +249 -0
  379. package/lib/runtimes/apis.d.ts +273 -0
  380. package/lib/runtimes/apis.js +5 -0
  381. package/lib/runtimes/index.d.ts +5 -0
  382. package/lib/runtimes/index.js +9 -0
  383. package/lib/runtimes/settings.d.ts +15 -0
  384. package/lib/runtimes/settings.js +31 -0
  385. package/lib/runtimes/snapshots.d.ts +25 -0
  386. package/lib/runtimes/snapshots.js +150 -0
  387. package/lib/runtimes/utils.d.ts +7 -0
  388. package/lib/runtimes/utils.js +14 -0
  389. package/lib/services/DatalayerServiceManager.d.ts +23 -0
  390. package/lib/services/DatalayerServiceManager.js +90 -0
  391. package/lib/services/reconnectToRuntime.d.ts +32 -0
  392. package/lib/services/reconnectToRuntime.js +59 -0
  393. package/lib/services/sandboxServiceManagers.d.ts +31 -0
  394. package/lib/services/sandboxServiceManagers.js +57 -0
  395. package/lib/specs/agents/agents.d.ts +78 -26
  396. package/lib/specs/agents/agents.js +4434 -1639
  397. package/lib/specs/index.d.ts +1 -0
  398. package/lib/specs/index.js +1 -0
  399. package/lib/specs/loops.d.ts +34 -0
  400. package/lib/specs/loops.js +188 -0
  401. package/lib/specs/mcpServers.d.ts +1 -0
  402. package/lib/specs/mcpServers.js +17 -0
  403. package/lib/specs/models.d.ts +4 -0
  404. package/lib/specs/models.js +30 -0
  405. package/lib/specs/skills.d.ts +1 -0
  406. package/lib/specs/skills.js +18 -0
  407. package/lib/specs/tools.d.ts +15 -0
  408. package/lib/specs/tools.js +285 -0
  409. package/lib/state/index.d.ts +4 -0
  410. package/lib/state/index.js +10 -0
  411. package/lib/state/substates/CellState.d.ts +12 -0
  412. package/lib/state/substates/CellState.js +22 -0
  413. package/lib/state/substates/DocumentState.d.ts +10 -0
  414. package/lib/state/substates/DocumentState.js +14 -0
  415. package/lib/state/substates/GradeState.d.ts +10 -0
  416. package/lib/state/substates/GradeState.js +14 -0
  417. package/lib/state/substates/JupyterLabState.d.ts +16 -0
  418. package/lib/state/substates/JupyterLabState.js +17 -0
  419. package/lib/state/substates/NbformatState.d.ts +13 -0
  420. package/lib/state/substates/NbformatState.js +16 -0
  421. package/lib/state/substates/RuntimesState.d.ts +87 -0
  422. package/lib/state/substates/RuntimesState.js +192 -0
  423. package/lib/state/substates/SpaceState.d.ts +11 -0
  424. package/lib/state/substates/SpaceState.js +16 -0
  425. package/lib/state/substates/index.d.ts +8 -0
  426. package/lib/state/substates/index.js +14 -0
  427. package/lib/stores/agentRuntimeStore.d.ts +25 -2
  428. package/lib/stores/agentRuntimeStore.js +114 -19
  429. package/lib/stories/Button.stories.d.ts +1 -1
  430. package/lib/stories/Header.stories.d.ts +3 -3
  431. package/lib/test-setup.js +10 -0
  432. package/lib/types/agents-lifecycle.d.ts +5 -5
  433. package/lib/types/agents.d.ts +3 -3
  434. package/lib/types/agentspecs.d.ts +4 -2
  435. package/lib/types/chat.d.ts +135 -3
  436. package/lib/types/config.d.ts +19 -1
  437. package/lib/types/index.d.ts +1 -0
  438. package/lib/types/index.js +1 -0
  439. package/lib/types/loops.d.ts +64 -0
  440. package/lib/types/loops.js +5 -0
  441. package/lib/types/tools.d.ts +16 -0
  442. package/lib/utils/Cells.d.ts +2 -0
  443. package/lib/utils/Cells.js +28 -0
  444. package/package.json +24 -18
  445. package/scripts/codegen/__pycache__/generate_sandbox_agents.cpython-313.pyc +0 -0
  446. package/scripts/codegen/__pycache__/versioning.cpython-313.pyc +0 -0
  447. package/scripts/codegen/generate_agents.py +21 -4
  448. package/scripts/codegen/generate_loops.py +443 -0
  449. package/scripts/codegen/generate_sandbox_agents.py +145 -0
  450. package/lib/examples/A2UiComponentGalleryExample.d.ts +0 -3
  451. package/lib/examples/A2UiComponentGalleryExample.js +0 -361
  452. /package/lib/{agent-lexical-main.d.ts → agent-document-main.d.ts} +0 -0
@@ -0,0 +1,249 @@
1
+ /*
2
+ * Copyright (c) 2025-2026 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ /**
6
+ * Runtimes APIs.
7
+ */
8
+ import { URLExt } from '@jupyterlab/coreutils';
9
+ import { PromiseDelegate } from '@lumino/coreutils';
10
+ import { Upload } from 'tus-js-client';
11
+ import { requestDatalayerAPI } from '@datalayer/core/lib/api';
12
+ import { asCodeSandboxSnapshot } from '../models';
13
+ import { iamStore, runtimesStore } from '../state/substates';
14
+ /**
15
+ * Get available Environments.
16
+ */
17
+ export async function getEnvironments() {
18
+ const data = await requestDatalayerAPI({
19
+ url: URLExt.join(runtimesStore.getState().runtimesUrl, 'api/runtimes/v1/environments'),
20
+ token: iamStore.getState().token,
21
+ });
22
+ if (!data.success) {
23
+ console.error('Failed to fetch available environments.', data);
24
+ return [];
25
+ }
26
+ return data.environments ?? [];
27
+ }
28
+ /**
29
+ * Create a Runtime.
30
+ */
31
+ export async function createRuntime(options) {
32
+ const { externalToken, token } = iamStore.getState();
33
+ if (typeof options.creditsLimit !== 'number' ||
34
+ !Number.isFinite(options.creditsLimit) ||
35
+ options.creditsLimit <= 0) {
36
+ throw new Error(`Invalid runtime creditsLimit for environment ${options.environmentName}. ` +
37
+ 'A positive number is required.');
38
+ }
39
+ const body = {
40
+ environment_name: options.environmentName,
41
+ type: options.type ?? 'notebook',
42
+ given_name: options.givenName,
43
+ credits_limit: options.creditsLimit,
44
+ };
45
+ if (options.capabilities) {
46
+ body['capabilities'] = options.capabilities;
47
+ }
48
+ if (options.snapshot) {
49
+ body['from'] = options.snapshot;
50
+ }
51
+ const data = await requestDatalayerAPI({
52
+ url: URLExt.join(runtimesStore.getState().runtimesUrl, `api/runtimes/v1/runtimes`),
53
+ method: 'POST',
54
+ body,
55
+ token: token,
56
+ // externalToken may be needed for addons (like credits...).
57
+ headers: externalToken
58
+ ? {
59
+ 'X-External-Token': externalToken,
60
+ }
61
+ : undefined,
62
+ });
63
+ if (!data.success || !data.runtime) {
64
+ const msg = `Failed to create a kernel for the environment ${options.environmentName}.`;
65
+ console.error(msg, data);
66
+ throw new Error(msg);
67
+ }
68
+ return data.runtime;
69
+ }
70
+ /**
71
+ * Get the Runtimes.
72
+ */
73
+ export async function getRuntimes() {
74
+ const data = await requestDatalayerAPI({
75
+ url: URLExt.join(runtimesStore.getState().runtimesUrl, 'api/runtimes/v1/runtimes'),
76
+ token: iamStore.getState().token,
77
+ });
78
+ if (!data.success) {
79
+ const msg = 'Failed to list the running kernels.';
80
+ console.error(msg, data);
81
+ throw new Error(msg);
82
+ }
83
+ return data.runtimes ?? [];
84
+ }
85
+ /**
86
+ * Delete a Runtime
87
+ */
88
+ export async function deleteRuntime(options) {
89
+ const externalToken = iamStore.getState().externalToken;
90
+ await requestDatalayerAPI({
91
+ url: URLExt.join(runtimesStore.getState().runtimesUrl, `api/runtimes/v1/runtimes/${options.id}`) +
92
+ URLExt.objectToQueryString(options.reason ? { reason: options.reason } : {}),
93
+ method: 'DELETE',
94
+ token: iamStore.getState().token,
95
+ // externalToken may be needed for addons (like credits...).
96
+ headers: externalToken
97
+ ? {
98
+ 'X-External-Token': externalToken,
99
+ }
100
+ : undefined,
101
+ });
102
+ }
103
+ /**
104
+ * Snapshot a Runtime.
105
+ */
106
+ export async function snapshotRuntime(options) {
107
+ const data = await requestDatalayerAPI({
108
+ url: URLExt.join(runtimesStore.getState().runtimesUrl, 'api/runtimes/v1/sandbox-snapshots'),
109
+ method: 'POST',
110
+ body: {
111
+ pod_name: options.id,
112
+ name: options.name,
113
+ description: options.description,
114
+ stop: options.stop,
115
+ },
116
+ token: iamStore.getState().token,
117
+ });
118
+ if (!data.success) {
119
+ throw new Error(`Failed to take the code sandbox snapshot ${options.id} - ${data}`);
120
+ }
121
+ // Runtimes service can return 202 Accepted without inline snapshot payload
122
+ // while the snapshot lifecycle completes asynchronously via pub-sub events.
123
+ if (!data.snapshot) {
124
+ return undefined;
125
+ }
126
+ return asCodeSandboxSnapshot(data.snapshot);
127
+ }
128
+ /**
129
+ * Get Code Sandbox Snapshots.
130
+ */
131
+ export async function getSandboxSnapshots() {
132
+ const data = await requestDatalayerAPI({
133
+ url: URLExt.join(runtimesStore.getState().runtimesUrl, 'api/runtimes/v1/sandbox-snapshots'),
134
+ token: iamStore.getState().token,
135
+ });
136
+ if (!data.success) {
137
+ console.error('Failed to fetch code sandbox snapshots.', data);
138
+ return [];
139
+ }
140
+ return (data.snapshots ?? []).map(asCodeSandboxSnapshot);
141
+ }
142
+ /**
143
+ * Load a Code Sandbox Snapshot within a Runtime.
144
+ */
145
+ export async function loadSandboxSnapshot(options) {
146
+ const data = await requestDatalayerAPI({
147
+ url: URLExt.join(runtimesStore.getState().runtimesUrl, 'api/runtimes/v1/runtimes', options.id),
148
+ method: 'PUT',
149
+ body: {
150
+ from: options.from,
151
+ },
152
+ token: iamStore.getState().token,
153
+ });
154
+ if (!data.success) {
155
+ throw new Error(`Failed to load the code sandbox snapshot; ${data.message}`);
156
+ }
157
+ }
158
+ /**
159
+ * Returns the Code Sandbox Snapshot download URL.
160
+ *
161
+ * @param id Snapshot UID to download
162
+ * @returns The download URL
163
+ */
164
+ export function createSandboxSnapshotDownloadURL(id) {
165
+ return (URLExt.join(runtimesStore.getState().runtimesUrl, `api/runtimes/v1/sandbox-snapshots/${id}`) +
166
+ URLExt.objectToQueryString({
167
+ download: '1',
168
+ token: iamStore.getState().token ?? '',
169
+ }));
170
+ }
171
+ /**
172
+ * Export a Code Sandbox Snapshot.
173
+ *
174
+ * @param id Code Sandbox snapshot UID to download
175
+ */
176
+ export function exportCodeSandboxSnapshot(id) {
177
+ const url = createSandboxSnapshotDownloadURL(id);
178
+ const element = document.createElement('a');
179
+ element.href = url;
180
+ element.download = '';
181
+ document.body.appendChild(element);
182
+ element.click();
183
+ document.body.removeChild(element);
184
+ }
185
+ /**
186
+ * Delete a Code Sandbox Snapshot.
187
+ */
188
+ export async function deleteCodeSandboxSnapshot(id) {
189
+ await requestDatalayerAPI({
190
+ url: URLExt.join(runtimesStore.getState().runtimesUrl, `api/runtimes/v1/sandbox-snapshots/${id}`),
191
+ method: 'DELETE',
192
+ token: iamStore.getState().token,
193
+ });
194
+ }
195
+ /**
196
+ * Update Code Sandbox Snapshot metadata.
197
+ */
198
+ export async function updateCodeSandboxSnapshot(id, metadata) {
199
+ if (metadata.name || metadata.description) {
200
+ await requestDatalayerAPI({
201
+ url: URLExt.join(runtimesStore.getState().runtimesUrl, `api/runtimes/v1/sandbox-snapshots/${id}`),
202
+ method: 'PATCH',
203
+ body: { ...metadata },
204
+ token: iamStore.getState().token,
205
+ });
206
+ }
207
+ }
208
+ /**
209
+ * Upload a Code Sandbox Snapshot.
210
+ *
211
+ * Note: The promise will be rejected if the runtime state is empty.
212
+ */
213
+ export async function uploadCodeSandboxSnapshot(options) {
214
+ if (options.file.size === 0) {
215
+ return Promise.reject('Empty Code Sandbox Snapshot.');
216
+ }
217
+ const tracker = new PromiseDelegate();
218
+ // Create a new tus upload.
219
+ const upload = new Upload(options.file, {
220
+ // Endpoint is the upload creation URL from your tus server.
221
+ endpoint: `${runtimesStore.getState().runtimesUrl}/api/runtimes/v1/sandbox-snapshots/upload`,
222
+ headers: { Authorization: `Bearer ${iamStore.getState().token}` },
223
+ // Retry delays will enable tus-js-client to automatically retry on errors.
224
+ // retryDelays: [0, 3000, 5000, 10000, 20000],
225
+ retryDelays: null,
226
+ // Attach additional meta data about the file for the server.
227
+ metadata: options.metadata,
228
+ // Callback for errors which cannot be fixed using retries.
229
+ onError: error => {
230
+ console.error(`Failed to upload ${options.metadata.filename}.`, error);
231
+ tracker.reject(error);
232
+ },
233
+ // Callback for reporting upload progress.
234
+ onProgress: options.onProgress,
235
+ // Callback for once the upload is completed.
236
+ onSuccess: () => {
237
+ tracker.resolve();
238
+ },
239
+ });
240
+ // Check if there are any previous uploads to continue then start the upload.
241
+ const previousUploads = await upload.findPreviousUploads();
242
+ // Found previous uploads so we select the first one.
243
+ if (previousUploads.length) {
244
+ upload.resumeFromPreviousUpload(previousUploads[0]);
245
+ }
246
+ // Start the upload.
247
+ upload.start();
248
+ return tracker.promise;
249
+ }
@@ -0,0 +1,273 @@
1
+ /**
2
+ * Runtimes APIs.
3
+ */
4
+ import { ISessionContext } from '@jupyterlab/apputils';
5
+ import { ServiceManager, Kernel, ServerConnection } from '@jupyterlab/services';
6
+ import { IDisposable } from '@lumino/disposable';
7
+ import { ISignal } from '@lumino/signaling';
8
+ import type { ICodeSandboxSnapshot, IRuntimeCapabilities, IRuntimeModel, IDatalayerEnvironment, IRuntimeType, IRuntimeLocation } from '../models';
9
+ /**
10
+ * Abstract interface for the Datalayer session context.
11
+ * It extends the JupyterLab session context
12
+ * to include the runtime location.
13
+ */
14
+ export interface IDatalayerSessionContext extends ISessionContext {
15
+ get location(): IRuntimeLocation;
16
+ }
17
+ /**
18
+ * Runtime creation options
19
+ */
20
+ export interface IRuntimeOptions {
21
+ /**
22
+ * Environment name
23
+ */
24
+ environmentName: string;
25
+ /**
26
+ * Credits limit to be consumed by the kernel
27
+ */
28
+ creditsLimit: number;
29
+ /**
30
+ * Runtime type
31
+ */
32
+ type?: IRuntimeType;
33
+ /**
34
+ * Runtime given name
35
+ */
36
+ givenName?: string;
37
+ /**
38
+ * Kernel capabilities
39
+ */
40
+ capabilities?: IRuntimeCapabilities[];
41
+ /**
42
+ * Kernel snapshot to restore
43
+ */
44
+ snapshot?: string;
45
+ }
46
+ /**
47
+ * Interface for the Environments Manager
48
+ */
49
+ export interface IEnvironmentsManager extends IDisposable {
50
+ /**
51
+ * Signal emitted when the environments changes.
52
+ */
53
+ readonly changed: ISignal<IEnvironmentsManager, readonly IDatalayerEnvironment[]>;
54
+ /**
55
+ * A signal emitted when there is a connection failure.
56
+ */
57
+ readonly connectionFailure: ISignal<IEnvironmentsManager, Error>;
58
+ /**
59
+ * Test whether the manager is ready.
60
+ */
61
+ readonly isReady: boolean;
62
+ /**
63
+ * A promise that fulfills when the manager is ready.
64
+ */
65
+ readonly ready: Promise<void>;
66
+ /**
67
+ * Get the list of environments.
68
+ */
69
+ get(): readonly IDatalayerEnvironment[];
70
+ /**
71
+ * Refresh the environment list.
72
+ */
73
+ refresh(): Promise<void>;
74
+ /**
75
+ * Refresh the environments.
76
+ */
77
+ refreshEnvironments(): Promise<void>;
78
+ }
79
+ /**
80
+ * Interface for the Remote Runtimes Manager
81
+ */
82
+ export interface IRemoteRuntimesManager extends IDisposable {
83
+ /**
84
+ * A signal emitted when there is a connection failure.
85
+ */
86
+ readonly connectionFailure: ISignal<IRemoteRuntimesManager, Error>;
87
+ /**
88
+ * Test whether the manager is ready.
89
+ */
90
+ readonly isReady: boolean;
91
+ /**
92
+ * A promise that fulfills when the manager is ready.
93
+ */
94
+ readonly ready: Promise<void>;
95
+ /**
96
+ * Remote kernels changed
97
+ */
98
+ readonly changed: ISignal<IRemoteRuntimesManager, readonly IRuntimeModel[]>;
99
+ /**
100
+ * The server settings.
101
+ */
102
+ readonly serverSettings: ServerConnection.ISettings;
103
+ /**
104
+ * Get the list of remote kernels.
105
+ */
106
+ get(): readonly IRuntimeModel[];
107
+ /**
108
+ * Get the service manager for a remote server
109
+ *
110
+ * @param serverName Remote kernel server name
111
+ * @returns Service manager for the remote server
112
+ */
113
+ getServices(serverName: string): any | undefined;
114
+ /**
115
+ * Refresh the environment list
116
+ */
117
+ refresh(): Promise<void>;
118
+ /**
119
+ * Launch a Kernel.
120
+ *
121
+ * @param createOptions - The kernel creation options
122
+ *
123
+ * @param connectOptions - The kernel connection options
124
+ *
125
+ * @returns A promise that resolves with the kernel connection.
126
+ */
127
+ startNew(createOptions: IRuntimeOptions, connectOptions?: Omit<Kernel.IKernelConnection.IOptions, 'model' | 'serverSettings'>): Promise<Kernel.IKernelConnection>;
128
+ /**
129
+ * Find a kernel by id.
130
+ *
131
+ * @param id - The id of the target kernel.
132
+ *
133
+ * @returns A promise that resolves with the kernel's model, or undefined if not found.
134
+ */
135
+ findById(id: string): Promise<IRuntimeModel | undefined>;
136
+ /**
137
+ * Connect to an existing kernel.
138
+ *
139
+ * @param options - The connection options.
140
+ *
141
+ * @returns A promise that resolves with the new kernel instance.
142
+ */
143
+ connectTo(options: Kernel.IKernelConnection.IOptions): Kernel.IKernelConnection;
144
+ /**
145
+ * Shut down a kernel by id.
146
+ *
147
+ * @param id - The id of the target kernel.
148
+ *
149
+ * @returns A promise that resolves when the operation is complete.
150
+ */
151
+ shutdown(id: string): Promise<void>;
152
+ /**
153
+ * Shut down all kernels.
154
+ *
155
+ * @returns A promise that resolves when all of the kernels are shut down.
156
+ */
157
+ shutdownAll(): Promise<void>;
158
+ /**
159
+ * @deprecated Use {@link refresh} instead.
160
+ */
161
+ refreshKernels(): Promise<void>;
162
+ /**
163
+ * Snapshot a runtime
164
+ *
165
+ * The runtime may be given by its `id` or `podName`.
166
+ * A custom description for the snapshot can be provided.
167
+ *
168
+ * @returns The snapshot description
169
+ */
170
+ snapshotRuntime(options: {
171
+ /**
172
+ * The runtime id to snapshot
173
+ */
174
+ id?: string;
175
+ /**
176
+ * The kernel pod name to snapshot
177
+ */
178
+ podName?: string;
179
+ /**
180
+ * The snapshot name
181
+ */
182
+ name?: string;
183
+ /**
184
+ * The snapshot description
185
+ */
186
+ description?: string;
187
+ /**
188
+ * Whether to stop the kernel after the snapshot completion or not.
189
+ */
190
+ stop?: boolean;
191
+ }): Promise<ICodeSandboxSnapshot | undefined>;
192
+ /**
193
+ * Load a snapshot within a runtim
194
+ *
195
+ * The runtime may be given by its `id` or `podName`.
196
+ */
197
+ loadSandboxSnapshot(options: {
198
+ /**
199
+ * The kernel id
200
+ */
201
+ id?: string;
202
+ /**
203
+ * The kernel pod name
204
+ */
205
+ podName?: string;
206
+ /**
207
+ * The snapshot UID
208
+ */
209
+ snapshot: string;
210
+ }): Promise<void>;
211
+ }
212
+ /**
213
+ * Interface for the Remote Services Manager
214
+ */
215
+ export interface IRemoteServicesManager extends IDisposable {
216
+ /**
217
+ * The environments manager.
218
+ */
219
+ readonly environments: IEnvironmentsManager;
220
+ /**
221
+ * The remote runtimes manager.
222
+ */
223
+ readonly runtimesManager: IRemoteRuntimesManager;
224
+ /**
225
+ * The server settings.
226
+ */
227
+ readonly serverSettings: ServerConnection.ISettings;
228
+ /**
229
+ * A signal emitted when there is a connection failure with the kernel.
230
+ */
231
+ readonly connectionFailure: ISignal<IRemoteServicesManager, Error>;
232
+ /**
233
+ * Test whether the service manager is disposed.
234
+ */
235
+ readonly isDisposed: boolean;
236
+ /**
237
+ * Whether the remote manager is ready or not.
238
+ */
239
+ readonly isReady: boolean;
240
+ /**
241
+ * Wait for the remote manager to be ready.
242
+ */
243
+ readonly ready: Promise<void>;
244
+ }
245
+ /**
246
+ * Interface for the Service Manager that manages multiple Jupyter service managers.
247
+ */
248
+ export interface IMultiServiceManager extends ServiceManager.IManager {
249
+ /**
250
+ * Service manager for browser kernels.
251
+ *
252
+ * The kernels managed by this service manager
253
+ * are fully executed in a service worker with
254
+ * browser.
255
+ */
256
+ browser: ServiceManager.IManager | undefined;
257
+ /**
258
+ * Signal emitted when the browser services changes.
259
+ */
260
+ readonly browserChanged: ISignal<ServiceManager.IManager, ServiceManager.IManager | undefined>;
261
+ /**
262
+ * Classical Service manager on the Local Jupyter server.
263
+ */
264
+ readonly local: ServiceManager.IManager;
265
+ /**
266
+ * Service manager on a Remote Jupyter server.
267
+ */
268
+ remote: IRemoteServicesManager | undefined;
269
+ /**
270
+ * Signal emitted when the remote services changes.
271
+ */
272
+ readonly remoteChanged: ISignal<ServiceManager.IManager, IRemoteServicesManager | undefined>;
273
+ }
@@ -0,0 +1,5 @@
1
+ /*
2
+ * Copyright (c) 2025-2026 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ export {};
@@ -0,0 +1,5 @@
1
+ export * from './actions';
2
+ export * from './apis';
3
+ export * from './settings';
4
+ export * from './snapshots';
5
+ export * from './utils';
@@ -0,0 +1,9 @@
1
+ /*
2
+ * Copyright (c) 2025-2026 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ export * from './actions';
6
+ export * from './apis';
7
+ export * from './settings';
8
+ export * from './snapshots';
9
+ export * from './utils';
@@ -0,0 +1,15 @@
1
+ import { ServerConnection } from '@jupyterlab/services';
2
+ /**
3
+ * Create a settings object given a subset of options.
4
+ *
5
+ * TODO This is already present somewhere else?
6
+ *
7
+ * @param options - An optional partial set of options.
8
+ *
9
+ * @returns The full settings object.
10
+ */
11
+ export declare function makeDatalayerSettings(baseUrl: string, token: string, wsUrl?: string): ServerConnection.ISettings;
12
+ declare const _default: {
13
+ makeDatalayerSettings: typeof makeDatalayerSettings;
14
+ };
15
+ export default _default;
@@ -0,0 +1,31 @@
1
+ /*
2
+ * Copyright (c) 2025-2026 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ import { ServerConnection } from '@jupyterlab/services';
6
+ /**
7
+ * Create a settings object given a subset of options.
8
+ *
9
+ * TODO This is already present somewhere else?
10
+ *
11
+ * @param options - An optional partial set of options.
12
+ *
13
+ * @returns The full settings object.
14
+ */
15
+ export function makeDatalayerSettings(baseUrl, token, wsUrl) {
16
+ const serverSettings = ServerConnection.makeSettings({
17
+ baseUrl,
18
+ wsUrl: wsUrl || baseUrl.replace(/^http/, 'ws'),
19
+ token,
20
+ appendToken: true,
21
+ init: {
22
+ mode: 'cors',
23
+ credentials: 'include',
24
+ cache: 'no-store',
25
+ },
26
+ });
27
+ return serverSettings;
28
+ }
29
+ export default {
30
+ makeDatalayerSettings,
31
+ };
@@ -0,0 +1,25 @@
1
+ import { Kernel } from '@jupyterlab/services';
2
+ type Props = {
3
+ connection: Kernel.IKernelConnection;
4
+ metadata: {
5
+ filename: string;
6
+ [key: string]: string;
7
+ };
8
+ onUploadProgress?: (bytesUploaded: number, bytesTotal: number) => void;
9
+ };
10
+ /**
11
+ * Snapshot a runtime through the frontend and upload it to the cloud.
12
+ *
13
+ * Note: You should use this only for browser runtimes.
14
+ */
15
+ export declare function createSandboxSnapshot(props: Props): Promise<void>;
16
+ /**
17
+ * Load a snapshot within a browser kernel.
18
+ *
19
+ * Note: You should use this only for browser kernels.
20
+ */
21
+ export declare function loadBrowserSandboxSnapshot({ connection, id, }: {
22
+ connection: Kernel.IKernelConnection;
23
+ id: string;
24
+ }): Promise<void>;
25
+ export {};