@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,230 @@
1
+ /*
2
+ * Copyright (c) 2025-2026 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ /**
6
+ * Runtime instances API functions for the Datalayer platform.
7
+ *
8
+ * Provides functions for managing runtime instances (active compute containers).
9
+ *
10
+ * @module api/runtimes/runtimes
11
+ */
12
+ import { requestDatalayerAPI } from '@datalayer/core/lib/api/DatalayerApi';
13
+ import { API_BASE_PATHS, DEFAULT_SERVICE_URLS, } from '@datalayer/core/lib/api/constants';
14
+ import { validateToken, validateRequiredString, } from '@datalayer/core/lib/api/utils/validation';
15
+ /**
16
+ * Create a new runtime instance.
17
+ * @param token - Authentication token
18
+ * @param data - Runtime creation configuration
19
+ * @param baseUrl - Base URL for the API (defaults to production Runtimes URL)
20
+ * @returns Promise resolving to the created runtime details
21
+ * @throws {Error} If authentication token is missing or invalid
22
+ * @throws {Error} With status 404 if the environment is not found
23
+ * @throws {Error} With status 503 if no runtime is available
24
+ */
25
+ export const createRuntime = async (token, data, baseUrl = DEFAULT_SERVICE_URLS.RUNTIMES) => {
26
+ validateToken(token);
27
+ try {
28
+ return await requestDatalayerAPI({
29
+ url: `${baseUrl}${API_BASE_PATHS.RUNTIMES}/runtimes`,
30
+ method: 'POST',
31
+ body: data,
32
+ token,
33
+ });
34
+ }
35
+ catch (error) {
36
+ // Handle specific error cases
37
+ if (error.response) {
38
+ const status = error.response.status;
39
+ const responseData = error.response.data || {};
40
+ if (status === 404) {
41
+ // Environment not found
42
+ throw new Error(`Environment '${data.environment_name}' not found. ${responseData.message || 'Please check the environment name and try again.'}`);
43
+ }
44
+ else if (status === 503) {
45
+ // No runtime available
46
+ throw new Error(`No runtime available. ${responseData.message || 'The service is temporarily unavailable or at capacity. Please try again later.'}`);
47
+ }
48
+ }
49
+ // Re-throw the original error for other cases
50
+ throw error;
51
+ }
52
+ };
53
+ /**
54
+ * List all runtime instances.
55
+ * @param token - Authentication token
56
+ * @param baseUrl - Base URL for the API (defaults to production Runtimes URL)
57
+ * @returns Promise resolving to list of runtime instances
58
+ * @throws {Error} If authentication token is missing or invalid
59
+ */
60
+ export const listRuntimes = async (token, baseUrl = DEFAULT_SERVICE_URLS.RUNTIMES) => {
61
+ validateToken(token);
62
+ const response = await requestDatalayerAPI({
63
+ url: `${baseUrl}${API_BASE_PATHS.RUNTIMES}/runtimes`,
64
+ method: 'GET',
65
+ token,
66
+ });
67
+ // The API returns { success: true, message: string, runtimes: Runtime[] }
68
+ // The response already has the correct structure, just return it
69
+ return response;
70
+ };
71
+ /**
72
+ * Get details for a specific runtime instance.
73
+ * @param token - Authentication token
74
+ * @param podName - The unique pod name of the runtime
75
+ * @param baseUrl - Base URL for the API (defaults to production Runtimes URL)
76
+ * @returns Promise resolving to runtime details
77
+ * @throws {Error} If authentication token is missing or invalid
78
+ * @throws {Error} If pod name is missing or invalid
79
+ * @throws {Error} With status 404 if the runtime is not found
80
+ */
81
+ export const getRuntime = async (token, podName, baseUrl = DEFAULT_SERVICE_URLS.RUNTIMES) => {
82
+ validateToken(token);
83
+ validateRequiredString(podName, 'Pod name');
84
+ try {
85
+ const response = await requestDatalayerAPI({
86
+ url: `${baseUrl}${API_BASE_PATHS.RUNTIMES}/runtimes/${podName}`,
87
+ method: 'GET',
88
+ token,
89
+ });
90
+ // The API returns { success: true, message: string, runtime: Runtime }
91
+ // (Previously used 'kernel' field, now uses 'runtime')
92
+ // Try 'runtime' field first (current API)
93
+ if (response.runtime) {
94
+ return {
95
+ ...response.runtime,
96
+ pod_name: response.runtime.pod_name || podName,
97
+ };
98
+ }
99
+ // Fallback to 'kernel' field (old API)
100
+ if (response.kernel) {
101
+ return {
102
+ ...response.kernel,
103
+ pod_name: response.kernel.pod_name || podName,
104
+ };
105
+ }
106
+ // Fallback if response structure is different
107
+ return response;
108
+ }
109
+ catch (error) {
110
+ // Handle specific error cases
111
+ if (error.response && error.response.status === 404) {
112
+ // Runtime not found
113
+ throw new Error(`Runtime with pod name '${podName}' not found. Please check the pod name and try again.`);
114
+ }
115
+ // Re-throw the original error for other cases
116
+ throw error;
117
+ }
118
+ };
119
+ /**
120
+ * Delete a runtime instance.
121
+ * @param token - Authentication token
122
+ * @param podName - The unique pod name of the runtime to delete
123
+ * @param baseUrl - Base URL for the API (defaults to production Runtimes URL)
124
+ * @returns Promise resolving when deletion is complete
125
+ * @throws {Error} If authentication token is missing or invalid
126
+ * @throws {Error} If pod name is missing or invalid
127
+ * @throws {Error} With status 404 if the runtime is not found
128
+ */
129
+ export const deleteRuntime = async (token, podName, baseUrl = DEFAULT_SERVICE_URLS.RUNTIMES) => {
130
+ validateToken(token);
131
+ validateRequiredString(podName, 'Pod name');
132
+ try {
133
+ return await requestDatalayerAPI({
134
+ url: `${baseUrl}${API_BASE_PATHS.RUNTIMES}/runtimes/${podName}`,
135
+ method: 'DELETE',
136
+ token,
137
+ });
138
+ }
139
+ catch (error) {
140
+ // Handle specific error cases
141
+ if (error.response && error.response.status === 404) {
142
+ // Runtime not found
143
+ throw new Error(`Runtime with pod name '${podName}' not found. Cannot delete a non-existent runtime.`);
144
+ }
145
+ // Re-throw the original error for other cases
146
+ throw error;
147
+ }
148
+ };
149
+ /**
150
+ * Update a runtime instance.
151
+ * @param token - Authentication token
152
+ * @param podName - The unique pod name of the runtime
153
+ * @param from - The source to update from
154
+ * @param baseUrl - Base URL for the API (defaults to production Runtimes URL)
155
+ * @returns Promise resolving to updated runtime details
156
+ * @throws {Error} If authentication token is missing or invalid
157
+ * @throws {Error} If pod name is missing or invalid
158
+ * @throws {Error} With status 404 if the runtime is not found
159
+ */
160
+ export const updateRuntime = async (token, podName, from, baseUrl = DEFAULT_SERVICE_URLS.RUNTIMES) => {
161
+ validateToken(token);
162
+ validateRequiredString(podName, 'Pod name');
163
+ try {
164
+ return await requestDatalayerAPI({
165
+ url: `${baseUrl}${API_BASE_PATHS.RUNTIMES}/runtimes/${podName}`,
166
+ method: 'PUT',
167
+ token,
168
+ body: { from },
169
+ });
170
+ }
171
+ catch (error) {
172
+ // Handle specific error cases
173
+ if (error.response && error.response.status === 404) {
174
+ // Runtime not found
175
+ throw new Error(`Runtime with pod name '${podName}' not found. Cannot update a non-existent runtime.`);
176
+ }
177
+ // Re-throw the original error for other cases
178
+ throw error;
179
+ }
180
+ };
181
+ /**
182
+ * Pause a runtime by creating a checkpoint (async, light mode by default).
183
+ *
184
+ * Returns immediately with a 202 Accepted response. The actual checkpoint
185
+ * process runs in the background. Use the returned `checkpoint_id` to
186
+ * poll for status via the runtime-checkpoints API.
187
+ *
188
+ * @param token - Authentication token
189
+ * @param podName - The unique pod name of the runtime to pause
190
+ * @param baseUrl - Base URL for the API (defaults to production Runtimes URL)
191
+ * @param body - Optional metadata to store in the checkpoint record
192
+ * @returns Promise resolving with the checkpoint ID for status tracking
193
+ * @throws {Error} If authentication token is missing or invalid
194
+ * @throws {Error} If pod name is missing or invalid
195
+ */
196
+ export const pauseRuntime = async (token, podName, baseUrl = DEFAULT_SERVICE_URLS.RUNTIMES, body) => {
197
+ validateToken(token);
198
+ validateRequiredString(podName, 'Pod name');
199
+ return await requestDatalayerAPI({
200
+ url: `${baseUrl}${API_BASE_PATHS.RUNTIMES}/runtimes/${encodeURIComponent(podName)}/pause`,
201
+ method: 'POST',
202
+ token,
203
+ ...(body ? { body } : {}),
204
+ });
205
+ };
206
+ /**
207
+ * Resume a paused runtime by restoring from a checkpoint (async).
208
+ *
209
+ * Returns immediately with a 202 Accepted response. The actual restore
210
+ * process runs in the background. Use the returned `checkpoint_id` to
211
+ * poll for status.
212
+ *
213
+ * @param token - Authentication token
214
+ * @param podName - The unique pod name of the runtime to resume
215
+ * @param baseUrl - Base URL for the API (defaults to production Runtimes URL)
216
+ * @param body - Optional body with agent_spec_id and restore options
217
+ * @returns Promise resolving with the checkpoint ID for status tracking
218
+ * @throws {Error} If authentication token is missing or invalid
219
+ * @throws {Error} If pod name is missing or invalid
220
+ */
221
+ export const resumeRuntime = async (token, podName, baseUrl = DEFAULT_SERVICE_URLS.RUNTIMES, body) => {
222
+ validateToken(token);
223
+ validateRequiredString(podName, 'Pod name');
224
+ return await requestDatalayerAPI({
225
+ url: `${baseUrl}${API_BASE_PATHS.RUNTIMES}/runtimes/${encodeURIComponent(podName)}/resume`,
226
+ method: 'POST',
227
+ token,
228
+ ...(body ? { body } : {}),
229
+ });
230
+ };
@@ -0,0 +1,38 @@
1
+ import { CreateCodeSandboxSnapshotRequest, ListCodeSandboxSnapshotsResponse, GetCodeSandboxSnapshotResponse, CreateCodeSandboxSnapshotResponse } from '../../models/CodeSandboxSnapshotDTO';
2
+ /**
3
+ * Create a snapshot of a runtime instance.
4
+ * @param token - Authentication token
5
+ * @param data - Snapshot creation configuration
6
+ * @param baseUrl - Base URL for the API (defaults to production Runtimes URL)
7
+ * @returns Promise resolving to the created snapshot response
8
+ * @throws {Error} If authentication token is missing or invalid
9
+ */
10
+ export declare const createSnapshot: (token: string, data: CreateCodeSandboxSnapshotRequest, baseUrl?: string) => Promise<CreateCodeSandboxSnapshotResponse>;
11
+ /**
12
+ * List all code sandbox snapshots.
13
+ * @param token - Authentication token
14
+ * @param baseUrl - Base URL for the API (defaults to production Runtimes URL)
15
+ * @returns Promise resolving to list of snapshots
16
+ * @throws {Error} If authentication token is missing or invalid
17
+ */
18
+ export declare const listSnapshots: (token: string, baseUrl?: string) => Promise<ListCodeSandboxSnapshotsResponse>;
19
+ /**
20
+ * Get details for a specific code sandbox snapshot.
21
+ * @param token - Authentication token
22
+ * @param snapshotId - The unique identifier of the snapshot
23
+ * @param baseUrl - Base URL for the API (defaults to production Runtimes URL)
24
+ * @returns Promise resolving to snapshot details wrapped in response
25
+ * @throws {Error} If authentication token is missing or invalid
26
+ * @throws {Error} If snapshot ID is missing or invalid
27
+ */
28
+ export declare const getSnapshot: (token: string, snapshotId: string, baseUrl?: string) => Promise<GetCodeSandboxSnapshotResponse>;
29
+ /**
30
+ * Delete a code sandbox snapshot.
31
+ * @param token - Authentication token
32
+ * @param snapshotId - The unique identifier of the snapshot to delete
33
+ * @param baseUrl - Base URL for the API (defaults to production Runtimes URL)
34
+ * @returns Promise resolving when deletion is complete
35
+ * @throws {Error} If authentication token is missing or invalid
36
+ * @throws {Error} If snapshot ID is missing or invalid
37
+ */
38
+ export declare const deleteSnapshot: (token: string, snapshotId: string, baseUrl?: string) => Promise<void>;
@@ -0,0 +1,82 @@
1
+ /*
2
+ * Copyright (c) 2025-2026 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ /**
6
+ * Code Sandbox snapshots API functions for the Datalayer platform.
7
+ *
8
+ * Provides functions for managing code sandbox snapshots (saved runtime states).
9
+ *
10
+ * @module api/runtimes/snapshots
11
+ */
12
+ import { requestDatalayerAPI } from '@datalayer/core/lib/api/DatalayerApi';
13
+ import { API_BASE_PATHS, DEFAULT_SERVICE_URLS, } from '@datalayer/core/lib/api/constants';
14
+ import { validateToken, validateRequiredString, } from '@datalayer/core/lib/api/utils/validation';
15
+ /**
16
+ * Create a snapshot of a runtime instance.
17
+ * @param token - Authentication token
18
+ * @param data - Snapshot creation configuration
19
+ * @param baseUrl - Base URL for the API (defaults to production Runtimes URL)
20
+ * @returns Promise resolving to the created snapshot response
21
+ * @throws {Error} If authentication token is missing or invalid
22
+ */
23
+ export const createSnapshot = async (token, data, baseUrl = DEFAULT_SERVICE_URLS.RUNTIMES) => {
24
+ validateToken(token);
25
+ return requestDatalayerAPI({
26
+ url: `${baseUrl}${API_BASE_PATHS.RUNTIMES}/sandbox-snapshots`,
27
+ method: 'POST',
28
+ token,
29
+ body: data,
30
+ });
31
+ };
32
+ /**
33
+ * List all code sandbox snapshots.
34
+ * @param token - Authentication token
35
+ * @param baseUrl - Base URL for the API (defaults to production Runtimes URL)
36
+ * @returns Promise resolving to list of snapshots
37
+ * @throws {Error} If authentication token is missing or invalid
38
+ */
39
+ export const listSnapshots = async (token, baseUrl = DEFAULT_SERVICE_URLS.RUNTIMES) => {
40
+ validateToken(token);
41
+ return requestDatalayerAPI({
42
+ url: `${baseUrl}${API_BASE_PATHS.RUNTIMES}/sandbox-snapshots`,
43
+ method: 'GET',
44
+ token,
45
+ });
46
+ };
47
+ /**
48
+ * Get details for a specific code sandbox snapshot.
49
+ * @param token - Authentication token
50
+ * @param snapshotId - The unique identifier of the snapshot
51
+ * @param baseUrl - Base URL for the API (defaults to production Runtimes URL)
52
+ * @returns Promise resolving to snapshot details wrapped in response
53
+ * @throws {Error} If authentication token is missing or invalid
54
+ * @throws {Error} If snapshot ID is missing or invalid
55
+ */
56
+ export const getSnapshot = async (token, snapshotId, baseUrl = DEFAULT_SERVICE_URLS.RUNTIMES) => {
57
+ validateToken(token);
58
+ validateRequiredString(snapshotId, 'Snapshot ID');
59
+ return requestDatalayerAPI({
60
+ url: `${baseUrl}${API_BASE_PATHS.RUNTIMES}/sandbox-snapshots/${snapshotId}`,
61
+ method: 'GET',
62
+ token,
63
+ });
64
+ };
65
+ /**
66
+ * Delete a code sandbox snapshot.
67
+ * @param token - Authentication token
68
+ * @param snapshotId - The unique identifier of the snapshot to delete
69
+ * @param baseUrl - Base URL for the API (defaults to production Runtimes URL)
70
+ * @returns Promise resolving when deletion is complete
71
+ * @throws {Error} If authentication token is missing or invalid
72
+ * @throws {Error} If snapshot ID is missing or invalid
73
+ */
74
+ export const deleteSnapshot = async (token, snapshotId, baseUrl = DEFAULT_SERVICE_URLS.RUNTIMES) => {
75
+ validateToken(token);
76
+ validateRequiredString(snapshotId, 'Snapshot ID');
77
+ return requestDatalayerAPI({
78
+ url: `${baseUrl}${API_BASE_PATHS.RUNTIMES}/sandbox-snapshots/${snapshotId}`,
79
+ method: 'DELETE',
80
+ token,
81
+ });
82
+ };
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Scheduler API module for the Datalayer platform.
3
+ *
4
+ * @module api/scheduler
5
+ */
6
+ export * from './schedules';
@@ -0,0 +1,10 @@
1
+ /*
2
+ * Copyright (c) 2025-2026 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ /**
6
+ * Scheduler API module for the Datalayer platform.
7
+ *
8
+ * @module api/scheduler
9
+ */
10
+ export * from './schedules';
@@ -0,0 +1,85 @@
1
+ /**
2
+ * Raw schedule document as returned by the scheduler service.
3
+ *
4
+ * Fields follow the Solr suffix convention (`_s`, `_b`, `_dt`, `_i`).
5
+ */
6
+ export interface ScheduleDoc {
7
+ uid?: string;
8
+ type_s?: string;
9
+ notebook_uid_s?: string;
10
+ owner_uid_s?: string;
11
+ cron_expression_s?: string;
12
+ preset_s?: string;
13
+ enabled_b?: boolean;
14
+ [key: string]: unknown;
15
+ }
16
+ /**
17
+ * Request payload to create or update a notebook schedule.
18
+ */
19
+ export interface UpsertScheduleRequest {
20
+ /** Target notebook uid. */
21
+ notebookUid: string;
22
+ /** Cron expression (e.g. `* * * * *`). */
23
+ cronExpression: string;
24
+ /** Optional preset identifier (e.g. `every-minute`, `hourly`, `daily`, `custom`). */
25
+ preset?: string;
26
+ /** Whether the schedule is enabled. Defaults to `true`. */
27
+ enabled?: boolean;
28
+ }
29
+ /**
30
+ * Request payload to update an existing schedule by uid.
31
+ */
32
+ export interface UpdateScheduleRequest {
33
+ cronExpression?: string;
34
+ preset?: string;
35
+ enabled?: boolean;
36
+ }
37
+ /**
38
+ * Response shape for listing schedules.
39
+ */
40
+ export interface ListSchedulesResponse {
41
+ success: boolean;
42
+ message: string;
43
+ schedules: ScheduleDoc[];
44
+ }
45
+ /**
46
+ * Response shape for a single schedule mutation.
47
+ */
48
+ export interface ScheduleResponse {
49
+ success: boolean;
50
+ message: string;
51
+ schedule: ScheduleDoc;
52
+ }
53
+ /**
54
+ * List the schedules owned by the authenticated user.
55
+ * @param token - Authentication token
56
+ * @param baseUrl - Base URL for the scheduler service (defaults to production)
57
+ * @param includeDisabled - Include disabled schedules in the result
58
+ * @returns Promise resolving to the list of schedules
59
+ */
60
+ export declare const listSchedules: (token: string, baseUrl?: string, includeDisabled?: boolean) => Promise<ListSchedulesResponse>;
61
+ /**
62
+ * Create or update the schedule for a notebook.
63
+ * @param token - Authentication token
64
+ * @param data - Schedule configuration
65
+ * @param baseUrl - Base URL for the scheduler service (defaults to production)
66
+ * @returns Promise resolving to the upserted schedule
67
+ */
68
+ export declare const upsertSchedule: (token: string, data: UpsertScheduleRequest, baseUrl?: string) => Promise<ScheduleResponse>;
69
+ /**
70
+ * Update an existing schedule by uid.
71
+ * @param token - Authentication token
72
+ * @param scheduleUid - The schedule uid
73
+ * @param data - Fields to update
74
+ * @param baseUrl - Base URL for the scheduler service (defaults to production)
75
+ * @returns Promise resolving to the updated schedule
76
+ */
77
+ export declare const updateSchedule: (token: string, scheduleUid: string, data: UpdateScheduleRequest, baseUrl?: string) => Promise<ScheduleResponse>;
78
+ /**
79
+ * Disable a schedule by uid.
80
+ * @param token - Authentication token
81
+ * @param scheduleUid - The schedule uid
82
+ * @param baseUrl - Base URL for the scheduler service (defaults to production)
83
+ * @returns Promise resolving to the disabled schedule
84
+ */
85
+ export declare const disableSchedule: (token: string, scheduleUid: string, baseUrl?: string) => Promise<ScheduleResponse>;
@@ -0,0 +1,78 @@
1
+ /*
2
+ * Copyright (c) 2025-2026 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ /**
6
+ * Scheduler schedules API functions for the Datalayer platform.
7
+ *
8
+ * Provides functions for listing, creating, and updating cron schedules that
9
+ * trigger automated notebook executions.
10
+ *
11
+ * @module api/scheduler/schedules
12
+ */
13
+ import { requestDatalayerAPI } from '@datalayer/core/lib/api/DatalayerApi';
14
+ import { API_BASE_PATHS, DEFAULT_SERVICE_URLS, } from '@datalayer/core/lib/api/constants';
15
+ /**
16
+ * List the schedules owned by the authenticated user.
17
+ * @param token - Authentication token
18
+ * @param baseUrl - Base URL for the scheduler service (defaults to production)
19
+ * @param includeDisabled - Include disabled schedules in the result
20
+ * @returns Promise resolving to the list of schedules
21
+ */
22
+ export const listSchedules = async (token, baseUrl = DEFAULT_SERVICE_URLS.SCHEDULER, includeDisabled = false) => {
23
+ const query = includeDisabled ? '?includeDisabled=true' : '';
24
+ return requestDatalayerAPI({
25
+ url: `${baseUrl}${API_BASE_PATHS.SCHEDULER}/schedules${query}`,
26
+ method: 'GET',
27
+ token,
28
+ });
29
+ };
30
+ /**
31
+ * Create or update the schedule for a notebook.
32
+ * @param token - Authentication token
33
+ * @param data - Schedule configuration
34
+ * @param baseUrl - Base URL for the scheduler service (defaults to production)
35
+ * @returns Promise resolving to the upserted schedule
36
+ */
37
+ export const upsertSchedule = async (token, data, baseUrl = DEFAULT_SERVICE_URLS.SCHEDULER) => {
38
+ return requestDatalayerAPI({
39
+ url: `${baseUrl}${API_BASE_PATHS.SCHEDULER}/schedules`,
40
+ method: 'POST',
41
+ token,
42
+ body: {
43
+ enabled: true,
44
+ preset: 'custom',
45
+ ...data,
46
+ },
47
+ });
48
+ };
49
+ /**
50
+ * Update an existing schedule by uid.
51
+ * @param token - Authentication token
52
+ * @param scheduleUid - The schedule uid
53
+ * @param data - Fields to update
54
+ * @param baseUrl - Base URL for the scheduler service (defaults to production)
55
+ * @returns Promise resolving to the updated schedule
56
+ */
57
+ export const updateSchedule = async (token, scheduleUid, data, baseUrl = DEFAULT_SERVICE_URLS.SCHEDULER) => {
58
+ return requestDatalayerAPI({
59
+ url: `${baseUrl}${API_BASE_PATHS.SCHEDULER}/schedules/${scheduleUid}`,
60
+ method: 'PUT',
61
+ token,
62
+ body: data,
63
+ });
64
+ };
65
+ /**
66
+ * Disable a schedule by uid.
67
+ * @param token - Authentication token
68
+ * @param scheduleUid - The schedule uid
69
+ * @param baseUrl - Base URL for the scheduler service (defaults to production)
70
+ * @returns Promise resolving to the disabled schedule
71
+ */
72
+ export const disableSchedule = async (token, scheduleUid, baseUrl = DEFAULT_SERVICE_URLS.SCHEDULER) => {
73
+ return requestDatalayerAPI({
74
+ url: `${baseUrl}${API_BASE_PATHS.SCHEDULER}/schedules/${scheduleUid}/disable`,
75
+ method: 'POST',
76
+ token,
77
+ });
78
+ };
@@ -0,0 +1,12 @@
1
+ import { CollaborationSessionResponse } from '../../models/SpaceDTO';
2
+ /**
3
+ * Get collaboration session ID for a document.
4
+ *
5
+ * This function attempts to retrieve the collaboration session ID from the document API.
6
+ *
7
+ * @param token - Authentication token
8
+ * @param documentId - Document UID
9
+ * @param baseUrl - Base URL for the API (defaults to production)
10
+ * @returns Promise resolving to collaboration session response
11
+ */
12
+ export declare const getCollaborationSessionId: (token: string, documentId: string, baseUrl?: string) => Promise<CollaborationSessionResponse>;
@@ -0,0 +1,43 @@
1
+ /*
2
+ * Copyright (c) 2025-2026 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ /**
6
+ * Documents API functions for the Datalayer platform.
7
+ *
8
+ * Provides functions for document operations including collaboration session management.
9
+ *
10
+ * @module api/spacer/documents
11
+ */
12
+ import { requestDatalayerAPI } from '@datalayer/core/lib/api/DatalayerApi';
13
+ import { API_BASE_PATHS, DEFAULT_SERVICE_URLS, } from '@datalayer/core/lib/api/constants';
14
+ /**
15
+ * Get collaboration session ID for a document.
16
+ *
17
+ * This function attempts to retrieve the collaboration session ID from the document API.
18
+ *
19
+ * @param token - Authentication token
20
+ * @param documentId - Document UID
21
+ * @param baseUrl - Base URL for the API (defaults to production)
22
+ * @returns Promise resolving to collaboration session response
23
+ */
24
+ export const getCollaborationSessionId = async (token, documentId, baseUrl = DEFAULT_SERVICE_URLS.SPACER) => {
25
+ try {
26
+ const response = await requestDatalayerAPI({
27
+ url: `${baseUrl}${API_BASE_PATHS.SPACER}/documents/${documentId}`,
28
+ method: 'GET',
29
+ token,
30
+ });
31
+ return {
32
+ success: true,
33
+ sessionId: response.sessionId || documentId, // FIXME: is this ok?
34
+ };
35
+ }
36
+ catch (error) {
37
+ // FIXME: is this ok?
38
+ return {
39
+ success: true,
40
+ sessionId: documentId,
41
+ };
42
+ }
43
+ };
@@ -0,0 +1,15 @@
1
+ import type { HealthzPingResponse } from '@datalayer/core/lib/models/Common';
2
+ /**
3
+ * Health check ping endpoint for Spacer service
4
+ * @param baseUrl - Base URL for the API (defaults to production Spacer URL)
5
+ * @returns Health check response
6
+ * @throws {Error} If the health check fails
7
+ *
8
+ * @remarks
9
+ * This endpoint provides a basic health check for the Spacer service.
10
+ * It returns the current status of the service.
11
+ *
12
+ * Expected status codes:
13
+ * - 200: Service is healthy
14
+ */
15
+ export declare const ping: (baseUrl?: string) => Promise<HealthzPingResponse>;
@@ -0,0 +1,44 @@
1
+ /*
2
+ * Copyright (c) 2025-2026 Datalayer, Inc.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ /**
6
+ * Health check API functions for the Datalayer Spacer service.
7
+ *
8
+ * Provides functions for checking the health status of the Spacer service.
9
+ *
10
+ * @module api/spacer/healthz
11
+ */
12
+ import { requestDatalayerAPI } from '@datalayer/core/lib/api/DatalayerApi';
13
+ import { API_BASE_PATHS, DEFAULT_SERVICE_URLS, } from '@datalayer/core/lib/api/constants';
14
+ /**
15
+ * Health check ping endpoint for Spacer service
16
+ * @param baseUrl - Base URL for the API (defaults to production Spacer URL)
17
+ * @returns Health check response
18
+ * @throws {Error} If the health check fails
19
+ *
20
+ * @remarks
21
+ * This endpoint provides a basic health check for the Spacer service.
22
+ * It returns the current status of the service.
23
+ *
24
+ * Expected status codes:
25
+ * - 200: Service is healthy
26
+ */
27
+ export const ping = async (baseUrl = DEFAULT_SERVICE_URLS.SPACER) => {
28
+ try {
29
+ const response = await requestDatalayerAPI({
30
+ url: `${baseUrl}${API_BASE_PATHS.SPACER}/ping`,
31
+ method: 'GET',
32
+ });
33
+ return response;
34
+ }
35
+ catch (error) {
36
+ // Check if it's a response error with status code information
37
+ if (error.response) {
38
+ const status = error.response.status;
39
+ throw new Error(`Health check failed: Service unhealthy (status ${status}) - ${error.message}`);
40
+ }
41
+ // Re-throw other errors (network errors, etc.)
42
+ throw new Error(`Health check failed: ${error.message}`);
43
+ }
44
+ };
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Spacer API exports.
3
+ *
4
+ * Provides organized access to spacer functionality including
5
+ * spaces, notebooks, cells, lexical documents, and agent runtimes.
6
+ *
7
+ * @module api/spacer
8
+ */
9
+ export * as documents from './documents';
10
+ export * as healthz from './healthz';
11
+ export * as items from './items';
12
+ export * as lexicals from './lexicals';
13
+ export * as notebooks from './notebooks';
14
+ export * as spaces from './spaces';
15
+ export * as users from './users';