northrays 0.1.0__py3-none-any.whl

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 (711) hide show
  1. northrays/__init__.py +245 -0
  2. northrays/_async/__init__.py +2 -0
  3. northrays/_async/code_interpreter.py +302 -0
  4. northrays/_async/computer_use.py +930 -0
  5. northrays/_async/filesystem.py +1240 -0
  6. northrays/_async/git.py +391 -0
  7. northrays/_async/lsp_server.py +256 -0
  8. northrays/_async/northrays.py +819 -0
  9. northrays/_async/object_storage.py +190 -0
  10. northrays/_async/process.py +781 -0
  11. northrays/_async/sandbox.py +904 -0
  12. northrays/_async/snapshot.py +262 -0
  13. northrays/_async/volume.py +94 -0
  14. northrays/_sync/__init__.py +2 -0
  15. northrays/_sync/code_interpreter.py +271 -0
  16. northrays/_sync/computer_use.py +929 -0
  17. northrays/_sync/filesystem.py +1063 -0
  18. northrays/_sync/git.py +389 -0
  19. northrays/_sync/lsp_server.py +256 -0
  20. northrays/_sync/northrays.py +704 -0
  21. northrays/_sync/object_storage.py +184 -0
  22. northrays/_sync/process.py +778 -0
  23. northrays/_sync/sandbox.py +919 -0
  24. northrays/_sync/snapshot.py +262 -0
  25. northrays/_sync/volume.py +94 -0
  26. northrays/_utils/__init__.py +2 -0
  27. northrays/_utils/deprecation.py +95 -0
  28. northrays/_utils/docs_ignore.py +11 -0
  29. northrays/_utils/enum.py +27 -0
  30. northrays/_utils/env.py +38 -0
  31. northrays/_utils/environment.py +23 -0
  32. northrays/_utils/errors.py +298 -0
  33. northrays/_utils/otel_decorator.py +331 -0
  34. northrays/_utils/stream.py +368 -0
  35. northrays/_utils/timeout.py +484 -0
  36. northrays/_utils/types.py +16 -0
  37. northrays/common/__init__.py +2 -0
  38. northrays/common/charts.py +118 -0
  39. northrays/common/code_interpreter.py +44 -0
  40. northrays/common/computer_use.py +44 -0
  41. northrays/common/errors.py +187 -0
  42. northrays/common/file_transfer.py +69 -0
  43. northrays/common/filesystem.py +177 -0
  44. northrays/common/git.py +13 -0
  45. northrays/common/image.py +700 -0
  46. northrays/common/lsp_server.py +45 -0
  47. northrays/common/northrays.py +202 -0
  48. northrays/common/process.py +140 -0
  49. northrays/common/protocols.py +14 -0
  50. northrays/common/pty.py +65 -0
  51. northrays/common/sandbox.py +99 -0
  52. northrays/common/snapshot.py +84 -0
  53. northrays/common/volume.py +39 -0
  54. northrays/handle/async_pty_handle.py +323 -0
  55. northrays/handle/pty_handle.py +341 -0
  56. northrays/internal/__init__.py +2 -0
  57. northrays/internal/api_client_proxy.py +22 -0
  58. northrays/internal/http_client.py +99 -0
  59. northrays/internal/pool_tracker.py +44 -0
  60. northrays/internal/shared_session.py +262 -0
  61. northrays/internal/toolbox_api_client_proxy.py +114 -0
  62. northrays/internal/urllib3_retry.py +53 -0
  63. northrays/py.typed +0 -0
  64. northrays-0.1.0.dist-info/METADATA +211 -0
  65. northrays-0.1.0.dist-info/RECORD +711 -0
  66. northrays-0.1.0.dist-info/WHEEL +5 -0
  67. northrays-0.1.0.dist-info/licenses/LICENSE +191 -0
  68. northrays-0.1.0.dist-info/licenses/NOTICE +46 -0
  69. northrays-0.1.0.dist-info/top_level.txt +5 -0
  70. northrays_api_client/__init__.py +684 -0
  71. northrays_api_client/api/__init__.py +64 -0
  72. northrays_api_client/api/admin_api.py +5998 -0
  73. northrays_api_client/api/api_keys_api.py +1672 -0
  74. northrays_api_client/api/audit_api.py +402 -0
  75. northrays_api_client/api/config_api.py +278 -0
  76. northrays_api_client/api/docker_registry_api.py +1707 -0
  77. northrays_api_client/api/health_api.py +517 -0
  78. northrays_api_client/api/jobs_api.py +1185 -0
  79. northrays_api_client/api/object_storage_api.py +298 -0
  80. northrays_api_client/api/organizations_api.py +10857 -0
  81. northrays_api_client/api/preview_api.py +1104 -0
  82. northrays_api_client/api/regions_api.py +279 -0
  83. northrays_api_client/api/runners_api.py +2987 -0
  84. northrays_api_client/api/sandbox_api.py +12813 -0
  85. northrays_api_client/api/snapshots_api.py +2331 -0
  86. northrays_api_client/api/toolbox_api.py +20758 -0
  87. northrays_api_client/api/users_api.py +1304 -0
  88. northrays_api_client/api/volumes_api.py +1421 -0
  89. northrays_api_client/api/webhooks_api.py +1135 -0
  90. northrays_api_client/api_client.py +810 -0
  91. northrays_api_client/api_response.py +21 -0
  92. northrays_api_client/configuration.py +607 -0
  93. northrays_api_client/exceptions.py +219 -0
  94. northrays_api_client/models/__init__.py +405 -0
  95. northrays_api_client/models/account_provider.py +105 -0
  96. northrays_api_client/models/admin_create_runner.py +131 -0
  97. northrays_api_client/models/admin_get_webhook_status200_response.py +103 -0
  98. northrays_api_client/models/announcement.py +105 -0
  99. northrays_api_client/models/api_key_list.py +126 -0
  100. northrays_api_client/models/api_key_response.py +117 -0
  101. northrays_api_client/models/audit_log.py +134 -0
  102. northrays_api_client/models/build_info.py +112 -0
  103. northrays_api_client/models/command.py +107 -0
  104. northrays_api_client/models/completion_context.py +105 -0
  105. northrays_api_client/models/completion_item.py +115 -0
  106. northrays_api_client/models/completion_list.py +113 -0
  107. northrays_api_client/models/compressed_screenshot_response.py +107 -0
  108. northrays_api_client/models/computer_use_start_response.py +105 -0
  109. northrays_api_client/models/computer_use_status_response.py +103 -0
  110. northrays_api_client/models/computer_use_stop_response.py +105 -0
  111. northrays_api_client/models/create_api_key.py +113 -0
  112. northrays_api_client/models/create_build_info.py +105 -0
  113. northrays_api_client/models/create_docker_registry.py +111 -0
  114. northrays_api_client/models/create_linked_account.py +105 -0
  115. northrays_api_client/models/create_organization.py +105 -0
  116. northrays_api_client/models/create_organization_invitation.py +110 -0
  117. northrays_api_client/models/create_organization_quota.py +119 -0
  118. northrays_api_client/models/create_organization_region_quota.py +169 -0
  119. northrays_api_client/models/create_organization_role.py +107 -0
  120. northrays_api_client/models/create_region.py +124 -0
  121. northrays_api_client/models/create_region_response.py +131 -0
  122. northrays_api_client/models/create_runner.py +107 -0
  123. northrays_api_client/models/create_runner_response.py +105 -0
  124. northrays_api_client/models/create_sandbox.py +156 -0
  125. northrays_api_client/models/create_sandbox_snapshot.py +105 -0
  126. northrays_api_client/models/create_session_request.py +103 -0
  127. northrays_api_client/models/create_snapshot.py +129 -0
  128. northrays_api_client/models/create_user.py +119 -0
  129. northrays_api_client/models/create_volume.py +103 -0
  130. northrays_api_client/models/display_info_response.py +103 -0
  131. northrays_api_client/models/docker_registry.py +118 -0
  132. northrays_api_client/models/download_files.py +103 -0
  133. northrays_api_client/models/execute_request.py +107 -0
  134. northrays_api_client/models/execute_response.py +105 -0
  135. northrays_api_client/models/file_info.py +117 -0
  136. northrays_api_client/models/file_status.py +109 -0
  137. northrays_api_client/models/fork_sandbox.py +103 -0
  138. northrays_api_client/models/git_add_request.py +105 -0
  139. northrays_api_client/models/git_branch_request.py +105 -0
  140. northrays_api_client/models/git_checkout_request.py +105 -0
  141. northrays_api_client/models/git_clone_request.py +113 -0
  142. northrays_api_client/models/git_commit_info.py +111 -0
  143. northrays_api_client/models/git_commit_request.py +111 -0
  144. northrays_api_client/models/git_commit_response.py +103 -0
  145. northrays_api_client/models/git_delete_branch_request.py +105 -0
  146. northrays_api_client/models/git_repo_request.py +107 -0
  147. northrays_api_client/models/git_status.py +119 -0
  148. northrays_api_client/models/gpu_type.py +43 -0
  149. northrays_api_client/models/health_controller_check200_response.py +156 -0
  150. northrays_api_client/models/health_controller_check200_response_info_value.py +103 -0
  151. northrays_api_client/models/health_controller_check503_response.py +156 -0
  152. northrays_api_client/models/job.py +123 -0
  153. northrays_api_client/models/job_status.py +45 -0
  154. northrays_api_client/models/job_type.py +56 -0
  155. northrays_api_client/models/keyboard_hotkey_request.py +103 -0
  156. northrays_api_client/models/keyboard_press_request.py +105 -0
  157. northrays_api_client/models/keyboard_type_request.py +105 -0
  158. northrays_api_client/models/list_branch_response.py +103 -0
  159. northrays_api_client/models/list_sandboxes_response.py +118 -0
  160. northrays_api_client/models/log_entry.py +119 -0
  161. northrays_api_client/models/lsp_completion_params.py +119 -0
  162. northrays_api_client/models/lsp_document_request.py +107 -0
  163. northrays_api_client/models/lsp_location.py +109 -0
  164. northrays_api_client/models/lsp_server_request.py +105 -0
  165. northrays_api_client/models/lsp_symbol.py +111 -0
  166. northrays_api_client/models/match.py +107 -0
  167. northrays_api_client/models/metric_data_point.py +105 -0
  168. northrays_api_client/models/metric_series.py +113 -0
  169. northrays_api_client/models/metrics_response.py +111 -0
  170. northrays_api_client/models/mouse_click_request.py +109 -0
  171. northrays_api_client/models/mouse_click_response.py +105 -0
  172. northrays_api_client/models/mouse_drag_request.py +111 -0
  173. northrays_api_client/models/mouse_drag_response.py +105 -0
  174. northrays_api_client/models/mouse_move_request.py +105 -0
  175. northrays_api_client/models/mouse_move_response.py +105 -0
  176. northrays_api_client/models/mouse_position.py +105 -0
  177. northrays_api_client/models/mouse_scroll_request.py +109 -0
  178. northrays_api_client/models/mouse_scroll_response.py +103 -0
  179. northrays_api_client/models/northrays_configuration.py +162 -0
  180. northrays_api_client/models/oidc_config.py +107 -0
  181. northrays_api_client/models/organization.py +191 -0
  182. northrays_api_client/models/organization_invitation.py +132 -0
  183. northrays_api_client/models/organization_role.py +116 -0
  184. northrays_api_client/models/organization_sandbox_default_limited_network_egress.py +103 -0
  185. northrays_api_client/models/organization_suspension.py +109 -0
  186. northrays_api_client/models/organization_usage_overview.py +119 -0
  187. northrays_api_client/models/organization_user.py +126 -0
  188. northrays_api_client/models/otel_config.py +110 -0
  189. northrays_api_client/models/paginated_audit_logs.py +119 -0
  190. northrays_api_client/models/paginated_jobs.py +117 -0
  191. northrays_api_client/models/paginated_logs.py +117 -0
  192. northrays_api_client/models/paginated_sandboxes_deprecated.py +117 -0
  193. northrays_api_client/models/paginated_snapshots.py +117 -0
  194. northrays_api_client/models/paginated_traces.py +117 -0
  195. northrays_api_client/models/poll_jobs_response.py +111 -0
  196. northrays_api_client/models/port_preview_url.py +107 -0
  197. northrays_api_client/models/position.py +105 -0
  198. northrays_api_client/models/posthog_config.py +105 -0
  199. northrays_api_client/models/process_errors_response.py +105 -0
  200. northrays_api_client/models/process_logs_response.py +105 -0
  201. northrays_api_client/models/process_restart_response.py +105 -0
  202. northrays_api_client/models/process_status_response.py +105 -0
  203. northrays_api_client/models/project_dir_response.py +103 -0
  204. northrays_api_client/models/pty_create_request.py +113 -0
  205. northrays_api_client/models/pty_create_response.py +103 -0
  206. northrays_api_client/models/pty_list_response.py +111 -0
  207. northrays_api_client/models/pty_resize_request.py +105 -0
  208. northrays_api_client/models/pty_session_info.py +117 -0
  209. northrays_api_client/models/range.py +112 -0
  210. northrays_api_client/models/rate_limit_config.py +122 -0
  211. northrays_api_client/models/rate_limit_entry.py +105 -0
  212. northrays_api_client/models/regenerate_api_key_response.py +103 -0
  213. northrays_api_client/models/region.py +140 -0
  214. northrays_api_client/models/region_quota.py +168 -0
  215. northrays_api_client/models/region_screenshot_response.py +107 -0
  216. northrays_api_client/models/region_type.py +44 -0
  217. northrays_api_client/models/region_usage_overview.py +174 -0
  218. northrays_api_client/models/registry_push_access_dto.py +113 -0
  219. northrays_api_client/models/replace_request.py +107 -0
  220. northrays_api_client/models/replace_result.py +107 -0
  221. northrays_api_client/models/resize_sandbox.py +108 -0
  222. northrays_api_client/models/runner.py +166 -0
  223. northrays_api_client/models/runner_class.py +42 -0
  224. northrays_api_client/models/runner_full.py +171 -0
  225. northrays_api_client/models/runner_health_metrics.py +129 -0
  226. northrays_api_client/models/runner_healthcheck.py +125 -0
  227. northrays_api_client/models/runner_service_health.py +107 -0
  228. northrays_api_client/models/runner_snapshot_dto.py +107 -0
  229. northrays_api_client/models/runner_state.py +46 -0
  230. northrays_api_client/models/sandbox.py +188 -0
  231. northrays_api_client/models/sandbox_class.py +45 -0
  232. northrays_api_client/models/sandbox_desired_state.py +47 -0
  233. northrays_api_client/models/sandbox_labels.py +103 -0
  234. northrays_api_client/models/sandbox_list_item.py +161 -0
  235. northrays_api_client/models/sandbox_list_sort_direction.py +43 -0
  236. northrays_api_client/models/sandbox_list_sort_field.py +47 -0
  237. northrays_api_client/models/sandbox_state.py +63 -0
  238. northrays_api_client/models/sandbox_volume.py +107 -0
  239. northrays_api_client/models/screenshot_response.py +107 -0
  240. northrays_api_client/models/search_files_response.py +103 -0
  241. northrays_api_client/models/send_webhook_dto.py +108 -0
  242. northrays_api_client/models/session.py +118 -0
  243. northrays_api_client/models/session_execute_request.py +107 -0
  244. northrays_api_client/models/session_execute_response.py +107 -0
  245. northrays_api_client/models/set_snapshot_general_status_dto.py +103 -0
  246. northrays_api_client/models/signed_port_preview_url.py +109 -0
  247. northrays_api_client/models/snapshot_dto.py +172 -0
  248. northrays_api_client/models/snapshot_manager_credentials.py +105 -0
  249. northrays_api_client/models/snapshot_state.py +49 -0
  250. northrays_api_client/models/ssh_access_dto.py +116 -0
  251. northrays_api_client/models/ssh_access_validation_dto.py +105 -0
  252. northrays_api_client/models/storage_access_dto.py +113 -0
  253. northrays_api_client/models/toolbox_proxy_url.py +103 -0
  254. northrays_api_client/models/trace_span.py +119 -0
  255. northrays_api_client/models/trace_summary.py +115 -0
  256. northrays_api_client/models/update_docker_registry.py +111 -0
  257. northrays_api_client/models/update_job_status.py +108 -0
  258. northrays_api_client/models/update_organization_default_region.py +103 -0
  259. northrays_api_client/models/update_organization_invitation.py +108 -0
  260. northrays_api_client/models/update_organization_member_access.py +105 -0
  261. northrays_api_client/models/update_organization_quota.py +192 -0
  262. northrays_api_client/models/update_organization_region_quota.py +189 -0
  263. northrays_api_client/models/update_organization_role.py +107 -0
  264. northrays_api_client/models/update_region.py +122 -0
  265. northrays_api_client/models/update_sandbox_network_settings.py +107 -0
  266. northrays_api_client/models/update_sandbox_state_dto.py +107 -0
  267. northrays_api_client/models/url.py +103 -0
  268. northrays_api_client/models/user.py +120 -0
  269. northrays_api_client/models/user_home_dir_response.py +103 -0
  270. northrays_api_client/models/user_public_key.py +105 -0
  271. northrays_api_client/models/volume_dto.py +128 -0
  272. northrays_api_client/models/volume_state.py +48 -0
  273. northrays_api_client/models/webhook_app_portal_access.py +105 -0
  274. northrays_api_client/models/webhook_event.py +48 -0
  275. northrays_api_client/models/webhook_initialization_status.py +123 -0
  276. northrays_api_client/models/windows_response.py +105 -0
  277. northrays_api_client/models/work_dir_response.py +103 -0
  278. northrays_api_client/py.typed +0 -0
  279. northrays_api_client/rest.py +264 -0
  280. northrays_api_client_async/__init__.py +684 -0
  281. northrays_api_client_async/api/__init__.py +64 -0
  282. northrays_api_client_async/api/admin_api.py +5998 -0
  283. northrays_api_client_async/api/api_keys_api.py +1672 -0
  284. northrays_api_client_async/api/audit_api.py +402 -0
  285. northrays_api_client_async/api/config_api.py +278 -0
  286. northrays_api_client_async/api/docker_registry_api.py +1707 -0
  287. northrays_api_client_async/api/health_api.py +517 -0
  288. northrays_api_client_async/api/jobs_api.py +1185 -0
  289. northrays_api_client_async/api/object_storage_api.py +298 -0
  290. northrays_api_client_async/api/organizations_api.py +10857 -0
  291. northrays_api_client_async/api/preview_api.py +1104 -0
  292. northrays_api_client_async/api/regions_api.py +279 -0
  293. northrays_api_client_async/api/runners_api.py +2987 -0
  294. northrays_api_client_async/api/sandbox_api.py +12813 -0
  295. northrays_api_client_async/api/snapshots_api.py +2331 -0
  296. northrays_api_client_async/api/toolbox_api.py +20758 -0
  297. northrays_api_client_async/api/users_api.py +1304 -0
  298. northrays_api_client_async/api/volumes_api.py +1421 -0
  299. northrays_api_client_async/api/webhooks_api.py +1135 -0
  300. northrays_api_client_async/api_client.py +813 -0
  301. northrays_api_client_async/api_response.py +21 -0
  302. northrays_api_client_async/configuration.py +605 -0
  303. northrays_api_client_async/exceptions.py +219 -0
  304. northrays_api_client_async/models/__init__.py +405 -0
  305. northrays_api_client_async/models/account_provider.py +105 -0
  306. northrays_api_client_async/models/admin_create_runner.py +131 -0
  307. northrays_api_client_async/models/admin_get_webhook_status200_response.py +103 -0
  308. northrays_api_client_async/models/announcement.py +105 -0
  309. northrays_api_client_async/models/api_key_list.py +126 -0
  310. northrays_api_client_async/models/api_key_response.py +117 -0
  311. northrays_api_client_async/models/audit_log.py +134 -0
  312. northrays_api_client_async/models/build_info.py +112 -0
  313. northrays_api_client_async/models/command.py +107 -0
  314. northrays_api_client_async/models/completion_context.py +105 -0
  315. northrays_api_client_async/models/completion_item.py +115 -0
  316. northrays_api_client_async/models/completion_list.py +113 -0
  317. northrays_api_client_async/models/compressed_screenshot_response.py +107 -0
  318. northrays_api_client_async/models/computer_use_start_response.py +105 -0
  319. northrays_api_client_async/models/computer_use_status_response.py +103 -0
  320. northrays_api_client_async/models/computer_use_stop_response.py +105 -0
  321. northrays_api_client_async/models/create_api_key.py +113 -0
  322. northrays_api_client_async/models/create_build_info.py +105 -0
  323. northrays_api_client_async/models/create_docker_registry.py +111 -0
  324. northrays_api_client_async/models/create_linked_account.py +105 -0
  325. northrays_api_client_async/models/create_organization.py +105 -0
  326. northrays_api_client_async/models/create_organization_invitation.py +110 -0
  327. northrays_api_client_async/models/create_organization_quota.py +119 -0
  328. northrays_api_client_async/models/create_organization_region_quota.py +169 -0
  329. northrays_api_client_async/models/create_organization_role.py +107 -0
  330. northrays_api_client_async/models/create_region.py +124 -0
  331. northrays_api_client_async/models/create_region_response.py +131 -0
  332. northrays_api_client_async/models/create_runner.py +107 -0
  333. northrays_api_client_async/models/create_runner_response.py +105 -0
  334. northrays_api_client_async/models/create_sandbox.py +156 -0
  335. northrays_api_client_async/models/create_sandbox_snapshot.py +105 -0
  336. northrays_api_client_async/models/create_session_request.py +103 -0
  337. northrays_api_client_async/models/create_snapshot.py +129 -0
  338. northrays_api_client_async/models/create_user.py +119 -0
  339. northrays_api_client_async/models/create_volume.py +103 -0
  340. northrays_api_client_async/models/display_info_response.py +103 -0
  341. northrays_api_client_async/models/docker_registry.py +118 -0
  342. northrays_api_client_async/models/download_files.py +103 -0
  343. northrays_api_client_async/models/execute_request.py +107 -0
  344. northrays_api_client_async/models/execute_response.py +105 -0
  345. northrays_api_client_async/models/file_info.py +117 -0
  346. northrays_api_client_async/models/file_status.py +109 -0
  347. northrays_api_client_async/models/fork_sandbox.py +103 -0
  348. northrays_api_client_async/models/git_add_request.py +105 -0
  349. northrays_api_client_async/models/git_branch_request.py +105 -0
  350. northrays_api_client_async/models/git_checkout_request.py +105 -0
  351. northrays_api_client_async/models/git_clone_request.py +113 -0
  352. northrays_api_client_async/models/git_commit_info.py +111 -0
  353. northrays_api_client_async/models/git_commit_request.py +111 -0
  354. northrays_api_client_async/models/git_commit_response.py +103 -0
  355. northrays_api_client_async/models/git_delete_branch_request.py +105 -0
  356. northrays_api_client_async/models/git_repo_request.py +107 -0
  357. northrays_api_client_async/models/git_status.py +119 -0
  358. northrays_api_client_async/models/gpu_type.py +43 -0
  359. northrays_api_client_async/models/health_controller_check200_response.py +156 -0
  360. northrays_api_client_async/models/health_controller_check200_response_info_value.py +103 -0
  361. northrays_api_client_async/models/health_controller_check503_response.py +156 -0
  362. northrays_api_client_async/models/job.py +123 -0
  363. northrays_api_client_async/models/job_status.py +45 -0
  364. northrays_api_client_async/models/job_type.py +56 -0
  365. northrays_api_client_async/models/keyboard_hotkey_request.py +103 -0
  366. northrays_api_client_async/models/keyboard_press_request.py +105 -0
  367. northrays_api_client_async/models/keyboard_type_request.py +105 -0
  368. northrays_api_client_async/models/list_branch_response.py +103 -0
  369. northrays_api_client_async/models/list_sandboxes_response.py +118 -0
  370. northrays_api_client_async/models/log_entry.py +119 -0
  371. northrays_api_client_async/models/lsp_completion_params.py +119 -0
  372. northrays_api_client_async/models/lsp_document_request.py +107 -0
  373. northrays_api_client_async/models/lsp_location.py +109 -0
  374. northrays_api_client_async/models/lsp_server_request.py +105 -0
  375. northrays_api_client_async/models/lsp_symbol.py +111 -0
  376. northrays_api_client_async/models/match.py +107 -0
  377. northrays_api_client_async/models/metric_data_point.py +105 -0
  378. northrays_api_client_async/models/metric_series.py +113 -0
  379. northrays_api_client_async/models/metrics_response.py +111 -0
  380. northrays_api_client_async/models/mouse_click_request.py +109 -0
  381. northrays_api_client_async/models/mouse_click_response.py +105 -0
  382. northrays_api_client_async/models/mouse_drag_request.py +111 -0
  383. northrays_api_client_async/models/mouse_drag_response.py +105 -0
  384. northrays_api_client_async/models/mouse_move_request.py +105 -0
  385. northrays_api_client_async/models/mouse_move_response.py +105 -0
  386. northrays_api_client_async/models/mouse_position.py +105 -0
  387. northrays_api_client_async/models/mouse_scroll_request.py +109 -0
  388. northrays_api_client_async/models/mouse_scroll_response.py +103 -0
  389. northrays_api_client_async/models/northrays_configuration.py +162 -0
  390. northrays_api_client_async/models/oidc_config.py +107 -0
  391. northrays_api_client_async/models/organization.py +191 -0
  392. northrays_api_client_async/models/organization_invitation.py +132 -0
  393. northrays_api_client_async/models/organization_role.py +116 -0
  394. northrays_api_client_async/models/organization_sandbox_default_limited_network_egress.py +103 -0
  395. northrays_api_client_async/models/organization_suspension.py +109 -0
  396. northrays_api_client_async/models/organization_usage_overview.py +119 -0
  397. northrays_api_client_async/models/organization_user.py +126 -0
  398. northrays_api_client_async/models/otel_config.py +110 -0
  399. northrays_api_client_async/models/paginated_audit_logs.py +119 -0
  400. northrays_api_client_async/models/paginated_jobs.py +117 -0
  401. northrays_api_client_async/models/paginated_logs.py +117 -0
  402. northrays_api_client_async/models/paginated_sandboxes_deprecated.py +117 -0
  403. northrays_api_client_async/models/paginated_snapshots.py +117 -0
  404. northrays_api_client_async/models/paginated_traces.py +117 -0
  405. northrays_api_client_async/models/poll_jobs_response.py +111 -0
  406. northrays_api_client_async/models/port_preview_url.py +107 -0
  407. northrays_api_client_async/models/position.py +105 -0
  408. northrays_api_client_async/models/posthog_config.py +105 -0
  409. northrays_api_client_async/models/process_errors_response.py +105 -0
  410. northrays_api_client_async/models/process_logs_response.py +105 -0
  411. northrays_api_client_async/models/process_restart_response.py +105 -0
  412. northrays_api_client_async/models/process_status_response.py +105 -0
  413. northrays_api_client_async/models/project_dir_response.py +103 -0
  414. northrays_api_client_async/models/pty_create_request.py +113 -0
  415. northrays_api_client_async/models/pty_create_response.py +103 -0
  416. northrays_api_client_async/models/pty_list_response.py +111 -0
  417. northrays_api_client_async/models/pty_resize_request.py +105 -0
  418. northrays_api_client_async/models/pty_session_info.py +117 -0
  419. northrays_api_client_async/models/range.py +112 -0
  420. northrays_api_client_async/models/rate_limit_config.py +122 -0
  421. northrays_api_client_async/models/rate_limit_entry.py +105 -0
  422. northrays_api_client_async/models/regenerate_api_key_response.py +103 -0
  423. northrays_api_client_async/models/region.py +140 -0
  424. northrays_api_client_async/models/region_quota.py +168 -0
  425. northrays_api_client_async/models/region_screenshot_response.py +107 -0
  426. northrays_api_client_async/models/region_type.py +44 -0
  427. northrays_api_client_async/models/region_usage_overview.py +174 -0
  428. northrays_api_client_async/models/registry_push_access_dto.py +113 -0
  429. northrays_api_client_async/models/replace_request.py +107 -0
  430. northrays_api_client_async/models/replace_result.py +107 -0
  431. northrays_api_client_async/models/resize_sandbox.py +108 -0
  432. northrays_api_client_async/models/runner.py +166 -0
  433. northrays_api_client_async/models/runner_class.py +42 -0
  434. northrays_api_client_async/models/runner_full.py +171 -0
  435. northrays_api_client_async/models/runner_health_metrics.py +129 -0
  436. northrays_api_client_async/models/runner_healthcheck.py +125 -0
  437. northrays_api_client_async/models/runner_service_health.py +107 -0
  438. northrays_api_client_async/models/runner_snapshot_dto.py +107 -0
  439. northrays_api_client_async/models/runner_state.py +46 -0
  440. northrays_api_client_async/models/sandbox.py +188 -0
  441. northrays_api_client_async/models/sandbox_class.py +45 -0
  442. northrays_api_client_async/models/sandbox_desired_state.py +47 -0
  443. northrays_api_client_async/models/sandbox_labels.py +103 -0
  444. northrays_api_client_async/models/sandbox_list_item.py +161 -0
  445. northrays_api_client_async/models/sandbox_list_sort_direction.py +43 -0
  446. northrays_api_client_async/models/sandbox_list_sort_field.py +47 -0
  447. northrays_api_client_async/models/sandbox_state.py +63 -0
  448. northrays_api_client_async/models/sandbox_volume.py +107 -0
  449. northrays_api_client_async/models/screenshot_response.py +107 -0
  450. northrays_api_client_async/models/search_files_response.py +103 -0
  451. northrays_api_client_async/models/send_webhook_dto.py +108 -0
  452. northrays_api_client_async/models/session.py +118 -0
  453. northrays_api_client_async/models/session_execute_request.py +107 -0
  454. northrays_api_client_async/models/session_execute_response.py +107 -0
  455. northrays_api_client_async/models/set_snapshot_general_status_dto.py +103 -0
  456. northrays_api_client_async/models/signed_port_preview_url.py +109 -0
  457. northrays_api_client_async/models/snapshot_dto.py +172 -0
  458. northrays_api_client_async/models/snapshot_manager_credentials.py +105 -0
  459. northrays_api_client_async/models/snapshot_state.py +49 -0
  460. northrays_api_client_async/models/ssh_access_dto.py +116 -0
  461. northrays_api_client_async/models/ssh_access_validation_dto.py +105 -0
  462. northrays_api_client_async/models/storage_access_dto.py +113 -0
  463. northrays_api_client_async/models/toolbox_proxy_url.py +103 -0
  464. northrays_api_client_async/models/trace_span.py +119 -0
  465. northrays_api_client_async/models/trace_summary.py +115 -0
  466. northrays_api_client_async/models/update_docker_registry.py +111 -0
  467. northrays_api_client_async/models/update_job_status.py +108 -0
  468. northrays_api_client_async/models/update_organization_default_region.py +103 -0
  469. northrays_api_client_async/models/update_organization_invitation.py +108 -0
  470. northrays_api_client_async/models/update_organization_member_access.py +105 -0
  471. northrays_api_client_async/models/update_organization_quota.py +192 -0
  472. northrays_api_client_async/models/update_organization_region_quota.py +189 -0
  473. northrays_api_client_async/models/update_organization_role.py +107 -0
  474. northrays_api_client_async/models/update_region.py +122 -0
  475. northrays_api_client_async/models/update_sandbox_network_settings.py +107 -0
  476. northrays_api_client_async/models/update_sandbox_state_dto.py +107 -0
  477. northrays_api_client_async/models/url.py +103 -0
  478. northrays_api_client_async/models/user.py +120 -0
  479. northrays_api_client_async/models/user_home_dir_response.py +103 -0
  480. northrays_api_client_async/models/user_public_key.py +105 -0
  481. northrays_api_client_async/models/volume_dto.py +128 -0
  482. northrays_api_client_async/models/volume_state.py +48 -0
  483. northrays_api_client_async/models/webhook_app_portal_access.py +105 -0
  484. northrays_api_client_async/models/webhook_event.py +48 -0
  485. northrays_api_client_async/models/webhook_initialization_status.py +123 -0
  486. northrays_api_client_async/models/windows_response.py +105 -0
  487. northrays_api_client_async/models/work_dir_response.py +103 -0
  488. northrays_api_client_async/py.typed +0 -0
  489. northrays_api_client_async/rest.py +227 -0
  490. northrays_toolbox_api_client/__init__.py +386 -0
  491. northrays_toolbox_api_client/api/__init__.py +46 -0
  492. northrays_toolbox_api_client/api/computer_use_api.py +9075 -0
  493. northrays_toolbox_api_client/api/file_system_api.py +3583 -0
  494. northrays_toolbox_api_client/api/git_api.py +2969 -0
  495. northrays_toolbox_api_client/api/info_api.py +773 -0
  496. northrays_toolbox_api_client/api/interpreter_api.py +1075 -0
  497. northrays_toolbox_api_client/api/lsp_api.py +1971 -0
  498. northrays_toolbox_api_client/api/port_api.py +543 -0
  499. northrays_toolbox_api_client/api/process_api.py +4865 -0
  500. northrays_toolbox_api_client/api/server_api.py +298 -0
  501. northrays_toolbox_api_client/api_client.py +809 -0
  502. northrays_toolbox_api_client/api_response.py +21 -0
  503. northrays_toolbox_api_client/configuration.py +626 -0
  504. northrays_toolbox_api_client/exceptions.py +218 -0
  505. northrays_toolbox_api_client/models/__init__.py +224 -0
  506. northrays_toolbox_api_client/models/accessibility_bounds.py +108 -0
  507. northrays_toolbox_api_client/models/accessibility_invoke_request.py +104 -0
  508. northrays_toolbox_api_client/models/accessibility_node_request.py +102 -0
  509. northrays_toolbox_api_client/models/accessibility_nodes_response.py +112 -0
  510. northrays_toolbox_api_client/models/accessibility_set_value_request.py +104 -0
  511. northrays_toolbox_api_client/models/accessibility_tree_response.py +108 -0
  512. northrays_toolbox_api_client/models/chart.py +132 -0
  513. northrays_toolbox_api_client/models/chart_element.py +134 -0
  514. northrays_toolbox_api_client/models/code_run_artifacts.py +110 -0
  515. northrays_toolbox_api_client/models/code_run_request.py +110 -0
  516. northrays_toolbox_api_client/models/code_run_response.py +110 -0
  517. northrays_toolbox_api_client/models/command.py +106 -0
  518. northrays_toolbox_api_client/models/completion_context.py +104 -0
  519. northrays_toolbox_api_client/models/completion_item.py +114 -0
  520. northrays_toolbox_api_client/models/completion_list.py +112 -0
  521. northrays_toolbox_api_client/models/computer_use_accessibility_node.py +129 -0
  522. northrays_toolbox_api_client/models/computer_use_start_response.py +117 -0
  523. northrays_toolbox_api_client/models/computer_use_status_response.py +102 -0
  524. northrays_toolbox_api_client/models/computer_use_stop_response.py +117 -0
  525. northrays_toolbox_api_client/models/create_context_request.py +104 -0
  526. northrays_toolbox_api_client/models/create_session_request.py +102 -0
  527. northrays_toolbox_api_client/models/display_info.py +112 -0
  528. northrays_toolbox_api_client/models/display_info_response.py +110 -0
  529. northrays_toolbox_api_client/models/execute_request.py +108 -0
  530. northrays_toolbox_api_client/models/execute_response.py +104 -0
  531. northrays_toolbox_api_client/models/file_info.py +118 -0
  532. northrays_toolbox_api_client/models/file_status.py +109 -0
  533. northrays_toolbox_api_client/models/files_download_request.py +102 -0
  534. northrays_toolbox_api_client/models/find_accessibility_nodes_request.py +114 -0
  535. northrays_toolbox_api_client/models/git_add_request.py +104 -0
  536. northrays_toolbox_api_client/models/git_branch_request.py +104 -0
  537. northrays_toolbox_api_client/models/git_checkout_request.py +104 -0
  538. northrays_toolbox_api_client/models/git_clone_request.py +114 -0
  539. northrays_toolbox_api_client/models/git_commit_info.py +110 -0
  540. northrays_toolbox_api_client/models/git_commit_request.py +110 -0
  541. northrays_toolbox_api_client/models/git_commit_response.py +102 -0
  542. northrays_toolbox_api_client/models/git_delete_branch_request.py +104 -0
  543. northrays_toolbox_api_client/models/git_repo_request.py +106 -0
  544. northrays_toolbox_api_client/models/git_status.py +118 -0
  545. northrays_toolbox_api_client/models/initialize_request.py +102 -0
  546. northrays_toolbox_api_client/models/interpreter_context.py +110 -0
  547. northrays_toolbox_api_client/models/is_port_in_use_response.py +102 -0
  548. northrays_toolbox_api_client/models/keyboard_hotkey_request.py +102 -0
  549. northrays_toolbox_api_client/models/keyboard_press_request.py +104 -0
  550. northrays_toolbox_api_client/models/keyboard_type_request.py +104 -0
  551. northrays_toolbox_api_client/models/list_branch_response.py +102 -0
  552. northrays_toolbox_api_client/models/list_contexts_response.py +110 -0
  553. northrays_toolbox_api_client/models/list_recordings_response.py +110 -0
  554. northrays_toolbox_api_client/models/lsp_completion_params.py +118 -0
  555. northrays_toolbox_api_client/models/lsp_document_request.py +106 -0
  556. northrays_toolbox_api_client/models/lsp_location.py +108 -0
  557. northrays_toolbox_api_client/models/lsp_position.py +104 -0
  558. northrays_toolbox_api_client/models/lsp_range.py +111 -0
  559. northrays_toolbox_api_client/models/lsp_server_request.py +104 -0
  560. northrays_toolbox_api_client/models/lsp_symbol.py +110 -0
  561. northrays_toolbox_api_client/models/match.py +106 -0
  562. northrays_toolbox_api_client/models/mouse_click_request.py +108 -0
  563. northrays_toolbox_api_client/models/mouse_click_response.py +104 -0
  564. northrays_toolbox_api_client/models/mouse_drag_request.py +110 -0
  565. northrays_toolbox_api_client/models/mouse_drag_response.py +104 -0
  566. northrays_toolbox_api_client/models/mouse_move_request.py +104 -0
  567. northrays_toolbox_api_client/models/mouse_position_response.py +104 -0
  568. northrays_toolbox_api_client/models/mouse_scroll_request.py +109 -0
  569. northrays_toolbox_api_client/models/port_list.py +102 -0
  570. northrays_toolbox_api_client/models/position.py +104 -0
  571. northrays_toolbox_api_client/models/process_errors_response.py +104 -0
  572. northrays_toolbox_api_client/models/process_logs_response.py +104 -0
  573. northrays_toolbox_api_client/models/process_restart_response.py +104 -0
  574. northrays_toolbox_api_client/models/process_status.py +108 -0
  575. northrays_toolbox_api_client/models/process_status_response.py +104 -0
  576. northrays_toolbox_api_client/models/pty_create_request.py +112 -0
  577. northrays_toolbox_api_client/models/pty_create_response.py +102 -0
  578. northrays_toolbox_api_client/models/pty_list_response.py +110 -0
  579. northrays_toolbox_api_client/models/pty_resize_request.py +105 -0
  580. northrays_toolbox_api_client/models/pty_session_info.py +116 -0
  581. northrays_toolbox_api_client/models/recording.py +116 -0
  582. northrays_toolbox_api_client/models/replace_request.py +106 -0
  583. northrays_toolbox_api_client/models/replace_result.py +106 -0
  584. northrays_toolbox_api_client/models/screenshot_response.py +110 -0
  585. northrays_toolbox_api_client/models/scroll_response.py +102 -0
  586. northrays_toolbox_api_client/models/search_files_response.py +102 -0
  587. northrays_toolbox_api_client/models/session.py +112 -0
  588. northrays_toolbox_api_client/models/session_command_logs_response.py +106 -0
  589. northrays_toolbox_api_client/models/session_execute_request.py +108 -0
  590. northrays_toolbox_api_client/models/session_execute_response.py +110 -0
  591. northrays_toolbox_api_client/models/session_send_input_request.py +102 -0
  592. northrays_toolbox_api_client/models/start_recording_request.py +102 -0
  593. northrays_toolbox_api_client/models/status.py +48 -0
  594. northrays_toolbox_api_client/models/stop_recording_request.py +102 -0
  595. northrays_toolbox_api_client/models/user_home_dir_response.py +102 -0
  596. northrays_toolbox_api_client/models/window_info.py +114 -0
  597. northrays_toolbox_api_client/models/windows_response.py +110 -0
  598. northrays_toolbox_api_client/models/work_dir_response.py +102 -0
  599. northrays_toolbox_api_client/py.typed +0 -0
  600. northrays_toolbox_api_client/rest.py +263 -0
  601. northrays_toolbox_api_client_async/__init__.py +386 -0
  602. northrays_toolbox_api_client_async/api/__init__.py +46 -0
  603. northrays_toolbox_api_client_async/api/computer_use_api.py +9075 -0
  604. northrays_toolbox_api_client_async/api/file_system_api.py +3583 -0
  605. northrays_toolbox_api_client_async/api/git_api.py +2969 -0
  606. northrays_toolbox_api_client_async/api/info_api.py +773 -0
  607. northrays_toolbox_api_client_async/api/interpreter_api.py +1075 -0
  608. northrays_toolbox_api_client_async/api/lsp_api.py +1971 -0
  609. northrays_toolbox_api_client_async/api/port_api.py +543 -0
  610. northrays_toolbox_api_client_async/api/process_api.py +4865 -0
  611. northrays_toolbox_api_client_async/api/server_api.py +298 -0
  612. northrays_toolbox_api_client_async/api_client.py +812 -0
  613. northrays_toolbox_api_client_async/api_response.py +21 -0
  614. northrays_toolbox_api_client_async/configuration.py +624 -0
  615. northrays_toolbox_api_client_async/exceptions.py +218 -0
  616. northrays_toolbox_api_client_async/models/__init__.py +224 -0
  617. northrays_toolbox_api_client_async/models/accessibility_bounds.py +108 -0
  618. northrays_toolbox_api_client_async/models/accessibility_invoke_request.py +104 -0
  619. northrays_toolbox_api_client_async/models/accessibility_node_request.py +102 -0
  620. northrays_toolbox_api_client_async/models/accessibility_nodes_response.py +112 -0
  621. northrays_toolbox_api_client_async/models/accessibility_set_value_request.py +104 -0
  622. northrays_toolbox_api_client_async/models/accessibility_tree_response.py +108 -0
  623. northrays_toolbox_api_client_async/models/chart.py +132 -0
  624. northrays_toolbox_api_client_async/models/chart_element.py +134 -0
  625. northrays_toolbox_api_client_async/models/code_run_artifacts.py +110 -0
  626. northrays_toolbox_api_client_async/models/code_run_request.py +110 -0
  627. northrays_toolbox_api_client_async/models/code_run_response.py +110 -0
  628. northrays_toolbox_api_client_async/models/command.py +106 -0
  629. northrays_toolbox_api_client_async/models/completion_context.py +104 -0
  630. northrays_toolbox_api_client_async/models/completion_item.py +114 -0
  631. northrays_toolbox_api_client_async/models/completion_list.py +112 -0
  632. northrays_toolbox_api_client_async/models/computer_use_accessibility_node.py +129 -0
  633. northrays_toolbox_api_client_async/models/computer_use_start_response.py +117 -0
  634. northrays_toolbox_api_client_async/models/computer_use_status_response.py +102 -0
  635. northrays_toolbox_api_client_async/models/computer_use_stop_response.py +117 -0
  636. northrays_toolbox_api_client_async/models/create_context_request.py +104 -0
  637. northrays_toolbox_api_client_async/models/create_session_request.py +102 -0
  638. northrays_toolbox_api_client_async/models/display_info.py +112 -0
  639. northrays_toolbox_api_client_async/models/display_info_response.py +110 -0
  640. northrays_toolbox_api_client_async/models/execute_request.py +108 -0
  641. northrays_toolbox_api_client_async/models/execute_response.py +104 -0
  642. northrays_toolbox_api_client_async/models/file_info.py +118 -0
  643. northrays_toolbox_api_client_async/models/file_status.py +109 -0
  644. northrays_toolbox_api_client_async/models/files_download_request.py +102 -0
  645. northrays_toolbox_api_client_async/models/find_accessibility_nodes_request.py +114 -0
  646. northrays_toolbox_api_client_async/models/git_add_request.py +104 -0
  647. northrays_toolbox_api_client_async/models/git_branch_request.py +104 -0
  648. northrays_toolbox_api_client_async/models/git_checkout_request.py +104 -0
  649. northrays_toolbox_api_client_async/models/git_clone_request.py +114 -0
  650. northrays_toolbox_api_client_async/models/git_commit_info.py +110 -0
  651. northrays_toolbox_api_client_async/models/git_commit_request.py +110 -0
  652. northrays_toolbox_api_client_async/models/git_commit_response.py +102 -0
  653. northrays_toolbox_api_client_async/models/git_delete_branch_request.py +104 -0
  654. northrays_toolbox_api_client_async/models/git_repo_request.py +106 -0
  655. northrays_toolbox_api_client_async/models/git_status.py +118 -0
  656. northrays_toolbox_api_client_async/models/initialize_request.py +102 -0
  657. northrays_toolbox_api_client_async/models/interpreter_context.py +110 -0
  658. northrays_toolbox_api_client_async/models/is_port_in_use_response.py +102 -0
  659. northrays_toolbox_api_client_async/models/keyboard_hotkey_request.py +102 -0
  660. northrays_toolbox_api_client_async/models/keyboard_press_request.py +104 -0
  661. northrays_toolbox_api_client_async/models/keyboard_type_request.py +104 -0
  662. northrays_toolbox_api_client_async/models/list_branch_response.py +102 -0
  663. northrays_toolbox_api_client_async/models/list_contexts_response.py +110 -0
  664. northrays_toolbox_api_client_async/models/list_recordings_response.py +110 -0
  665. northrays_toolbox_api_client_async/models/lsp_completion_params.py +118 -0
  666. northrays_toolbox_api_client_async/models/lsp_document_request.py +106 -0
  667. northrays_toolbox_api_client_async/models/lsp_location.py +108 -0
  668. northrays_toolbox_api_client_async/models/lsp_position.py +104 -0
  669. northrays_toolbox_api_client_async/models/lsp_range.py +111 -0
  670. northrays_toolbox_api_client_async/models/lsp_server_request.py +104 -0
  671. northrays_toolbox_api_client_async/models/lsp_symbol.py +110 -0
  672. northrays_toolbox_api_client_async/models/match.py +106 -0
  673. northrays_toolbox_api_client_async/models/mouse_click_request.py +108 -0
  674. northrays_toolbox_api_client_async/models/mouse_click_response.py +104 -0
  675. northrays_toolbox_api_client_async/models/mouse_drag_request.py +110 -0
  676. northrays_toolbox_api_client_async/models/mouse_drag_response.py +104 -0
  677. northrays_toolbox_api_client_async/models/mouse_move_request.py +104 -0
  678. northrays_toolbox_api_client_async/models/mouse_position_response.py +104 -0
  679. northrays_toolbox_api_client_async/models/mouse_scroll_request.py +109 -0
  680. northrays_toolbox_api_client_async/models/port_list.py +102 -0
  681. northrays_toolbox_api_client_async/models/position.py +104 -0
  682. northrays_toolbox_api_client_async/models/process_errors_response.py +104 -0
  683. northrays_toolbox_api_client_async/models/process_logs_response.py +104 -0
  684. northrays_toolbox_api_client_async/models/process_restart_response.py +104 -0
  685. northrays_toolbox_api_client_async/models/process_status.py +108 -0
  686. northrays_toolbox_api_client_async/models/process_status_response.py +104 -0
  687. northrays_toolbox_api_client_async/models/pty_create_request.py +112 -0
  688. northrays_toolbox_api_client_async/models/pty_create_response.py +102 -0
  689. northrays_toolbox_api_client_async/models/pty_list_response.py +110 -0
  690. northrays_toolbox_api_client_async/models/pty_resize_request.py +105 -0
  691. northrays_toolbox_api_client_async/models/pty_session_info.py +116 -0
  692. northrays_toolbox_api_client_async/models/recording.py +116 -0
  693. northrays_toolbox_api_client_async/models/replace_request.py +106 -0
  694. northrays_toolbox_api_client_async/models/replace_result.py +106 -0
  695. northrays_toolbox_api_client_async/models/screenshot_response.py +110 -0
  696. northrays_toolbox_api_client_async/models/scroll_response.py +102 -0
  697. northrays_toolbox_api_client_async/models/search_files_response.py +102 -0
  698. northrays_toolbox_api_client_async/models/session.py +112 -0
  699. northrays_toolbox_api_client_async/models/session_command_logs_response.py +106 -0
  700. northrays_toolbox_api_client_async/models/session_execute_request.py +108 -0
  701. northrays_toolbox_api_client_async/models/session_execute_response.py +110 -0
  702. northrays_toolbox_api_client_async/models/session_send_input_request.py +102 -0
  703. northrays_toolbox_api_client_async/models/start_recording_request.py +102 -0
  704. northrays_toolbox_api_client_async/models/status.py +48 -0
  705. northrays_toolbox_api_client_async/models/stop_recording_request.py +102 -0
  706. northrays_toolbox_api_client_async/models/user_home_dir_response.py +102 -0
  707. northrays_toolbox_api_client_async/models/window_info.py +114 -0
  708. northrays_toolbox_api_client_async/models/windows_response.py +110 -0
  709. northrays_toolbox_api_client_async/models/work_dir_response.py +102 -0
  710. northrays_toolbox_api_client_async/py.typed +0 -0
  711. northrays_toolbox_api_client_async/rest.py +226 -0
northrays/__init__.py ADDED
@@ -0,0 +1,245 @@
1
+ # Copyright 2025 Daytona Platforms Inc.
2
+ # SPDX-License-Identifier: Apache-2.0
3
+
4
+ from __future__ import annotations
5
+
6
+ import importlib
7
+ from typing import TYPE_CHECKING
8
+
9
+ if TYPE_CHECKING:
10
+ from northrays_api_client import SandboxListSortDirection, SandboxListSortField, SandboxState
11
+ from northrays_api_client_async import GpuType, SandboxClass
12
+ from northrays_toolbox_api_client import SessionExecuteResponse
13
+
14
+ from ._async.computer_use import AsyncComputerUse, AsyncDisplay, AsyncKeyboard, AsyncMouse, AsyncScreenshot
15
+ from ._async.northrays import AsyncNorthrays
16
+ from ._async.sandbox import AsyncSandbox
17
+ from ._sync.northrays import Northrays
18
+ from ._sync.sandbox import Sandbox
19
+ from .common.charts import (
20
+ BarChart,
21
+ BoxAndWhiskerChart,
22
+ Chart,
23
+ ChartType,
24
+ CompositeChart,
25
+ LineChart,
26
+ PieChart,
27
+ ScatterChart,
28
+ )
29
+ from .common.code_interpreter import ExecutionError, ExecutionResult, OutputMessage
30
+ from .common.computer_use import ScreenshotOptions, ScreenshotRegion
31
+ from .common.northrays import (
32
+ CodeLanguage,
33
+ CreateSandboxBaseParams,
34
+ CreateSandboxFromImageParams,
35
+ CreateSandboxFromSnapshotParams,
36
+ NorthraysConfig,
37
+ )
38
+ from .common.errors import (
39
+ NorthraysAuthenticationError,
40
+ NorthraysAuthorizationError,
41
+ NorthraysConflictError,
42
+ NorthraysConnectionError,
43
+ NorthraysError,
44
+ NorthraysNotFoundError,
45
+ NorthraysRateLimitError,
46
+ NorthraysTimeoutError,
47
+ NorthraysValidationError,
48
+ )
49
+ from .common.filesystem import (
50
+ CancelEvent,
51
+ DownloadProgress,
52
+ FileDownloadErrorDetails,
53
+ FileDownloadRequest,
54
+ FileDownloadResponse,
55
+ FileUpload,
56
+ UploadProgress,
57
+ )
58
+ from .common.image import Image
59
+ from .common.lsp_server import LspCompletionPosition, LspLanguageId
60
+ from .common.process import CodeRunParams, ExecuteResponse, ExecutionArtifacts, OutputHandler, SessionExecuteRequest
61
+ from .common.pty import PtySize
62
+ from .common.sandbox import ListSandboxesQuery, Resources
63
+ from .common.snapshot import CreateSnapshotParams
64
+ from .common.volume import VolumeMount
65
+
66
+ __all__ = [
67
+ "Northrays",
68
+ "NorthraysConfig",
69
+ "CodeLanguage",
70
+ "SessionExecuteRequest",
71
+ "SessionExecuteResponse",
72
+ "NorthraysError",
73
+ "NorthraysNotFoundError",
74
+ "NorthraysRateLimitError",
75
+ "LspLanguageId",
76
+ "CodeRunParams",
77
+ "Sandbox",
78
+ "Resources",
79
+ "GpuType",
80
+ "SandboxClass",
81
+ "SandboxState",
82
+ "SandboxListSortField",
83
+ "SandboxListSortDirection",
84
+ "ChartType",
85
+ "Chart",
86
+ "LineChart",
87
+ "ScatterChart",
88
+ "BarChart",
89
+ "PieChart",
90
+ "BoxAndWhiskerChart",
91
+ "CompositeChart",
92
+ "FileDownloadRequest",
93
+ "FileDownloadResponse",
94
+ "FileDownloadErrorDetails",
95
+ "DownloadProgress",
96
+ "UploadProgress",
97
+ "CancelEvent",
98
+ "FileUpload",
99
+ "VolumeMount",
100
+ "ListSandboxesQuery",
101
+ "AsyncNorthrays",
102
+ "AsyncSandbox",
103
+ "AsyncComputerUse",
104
+ "AsyncMouse",
105
+ "AsyncKeyboard",
106
+ "AsyncScreenshot",
107
+ "AsyncDisplay",
108
+ "ScreenshotRegion",
109
+ "ScreenshotOptions",
110
+ "Image",
111
+ "CreateSandboxBaseParams",
112
+ "CreateSandboxFromImageParams",
113
+ "CreateSandboxFromSnapshotParams",
114
+ "CreateSnapshotParams",
115
+ "PtySize",
116
+ "LspCompletionPosition",
117
+ "ExecutionArtifacts",
118
+ "ExecuteResponse",
119
+ "ExecutionResult",
120
+ "ExecutionError",
121
+ "OutputMessage",
122
+ "OutputHandler",
123
+ "NorthraysTimeoutError",
124
+ "NorthraysAuthenticationError",
125
+ "NorthraysAuthorizationError",
126
+ "NorthraysConflictError",
127
+ "NorthraysValidationError",
128
+ "NorthraysConnectionError",
129
+ ]
130
+
131
+ # Mapping of symbol name -> (absolute module path, attribute name) for external packages
132
+ _EXTERNAL_IMPORTS: dict[str, tuple[str, str]] = {
133
+ "GpuType": ("northrays_api_client_async.models.gpu_type", "GpuType"),
134
+ "SandboxClass": ("northrays_api_client_async.models.sandbox_class", "SandboxClass"),
135
+ "SandboxState": ("northrays_api_client.models.sandbox_state", "SandboxState"),
136
+ "SandboxListSortField": ("northrays_api_client.models.sandbox_list_sort_field", "SandboxListSortField"),
137
+ "SandboxListSortDirection": (
138
+ "northrays_api_client.models.sandbox_list_sort_direction",
139
+ "SandboxListSortDirection",
140
+ ),
141
+ "SessionExecuteResponse": (
142
+ "northrays_toolbox_api_client.models.session_execute_response",
143
+ "SessionExecuteResponse",
144
+ ),
145
+ }
146
+
147
+ # Mapping of symbol name -> relative submodule path (within the northrays package)
148
+ _DYNAMIC_IMPORTS: dict[str, str] = {
149
+ # _sync
150
+ "Northrays": "_sync.northrays",
151
+ "Sandbox": "_sync.sandbox",
152
+ # _async
153
+ "AsyncNorthrays": "_async.northrays",
154
+ "AsyncSandbox": "_async.sandbox",
155
+ "AsyncComputerUse": "_async.computer_use",
156
+ "AsyncMouse": "_async.computer_use",
157
+ "AsyncKeyboard": "_async.computer_use",
158
+ "AsyncScreenshot": "_async.computer_use",
159
+ "AsyncDisplay": "_async.computer_use",
160
+ # common.charts
161
+ "BarChart": "common.charts",
162
+ "BoxAndWhiskerChart": "common.charts",
163
+ "Chart": "common.charts",
164
+ "ChartType": "common.charts",
165
+ "CompositeChart": "common.charts",
166
+ "LineChart": "common.charts",
167
+ "PieChart": "common.charts",
168
+ "ScatterChart": "common.charts",
169
+ # common.code_interpreter
170
+ "ExecutionError": "common.code_interpreter",
171
+ "ExecutionResult": "common.code_interpreter",
172
+ "OutputMessage": "common.code_interpreter",
173
+ # common.computer_use
174
+ "ScreenshotOptions": "common.computer_use",
175
+ "ScreenshotRegion": "common.computer_use",
176
+ # common.northrays
177
+ "CodeLanguage": "common.northrays",
178
+ "CreateSandboxBaseParams": "common.northrays",
179
+ "CreateSandboxFromImageParams": "common.northrays",
180
+ "CreateSandboxFromSnapshotParams": "common.northrays",
181
+ "NorthraysConfig": "common.northrays",
182
+ # common.errors
183
+ "NorthraysError": "common.errors",
184
+ "NorthraysNotFoundError": "common.errors",
185
+ "NorthraysRateLimitError": "common.errors",
186
+ "NorthraysTimeoutError": "common.errors",
187
+ "NorthraysAuthenticationError": "common.errors",
188
+ "NorthraysAuthorizationError": "common.errors",
189
+ "NorthraysConflictError": "common.errors",
190
+ "NorthraysValidationError": "common.errors",
191
+ "NorthraysConnectionError": "common.errors",
192
+ # common.filesystem
193
+ "FileDownloadErrorDetails": "common.filesystem",
194
+ "DownloadProgress": "common.filesystem",
195
+ "UploadProgress": "common.filesystem",
196
+ "CancelEvent": "common.filesystem",
197
+ "FileDownloadRequest": "common.filesystem",
198
+ "FileDownloadResponse": "common.filesystem",
199
+ "FileUpload": "common.filesystem",
200
+ # common.image
201
+ "Image": "common.image",
202
+ # common.lsp_server
203
+ "LspCompletionPosition": "common.lsp_server",
204
+ "LspLanguageId": "common.lsp_server",
205
+ # common.process
206
+ "CodeRunParams": "common.process",
207
+ "ExecuteResponse": "common.process",
208
+ "ExecutionArtifacts": "common.process",
209
+ "OutputHandler": "common.process",
210
+ "SessionExecuteRequest": "common.process",
211
+ # common.pty
212
+ "PtySize": "common.pty",
213
+ # common.sandbox
214
+ "ListSandboxesQuery": "common.sandbox",
215
+ "Resources": "common.sandbox",
216
+ # common.snapshot
217
+ "CreateSnapshotParams": "common.snapshot",
218
+ # common.volume
219
+ "VolumeMount": "common.volume",
220
+ }
221
+
222
+
223
+ def __getattr__(attr_name: str) -> object:
224
+ # Check external package imports first
225
+ external = _EXTERNAL_IMPORTS.get(attr_name)
226
+ if external is not None:
227
+ module_path, name = external
228
+ mod = importlib.import_module(module_path)
229
+ value = getattr(mod, name)
230
+ globals()[attr_name] = value
231
+ return value
232
+
233
+ # Check internal submodule imports
234
+ submodule = _DYNAMIC_IMPORTS.get(attr_name)
235
+ if submodule is not None:
236
+ mod = importlib.import_module(f".{submodule}", __name__)
237
+ value = getattr(mod, attr_name)
238
+ globals()[attr_name] = value
239
+ return value
240
+
241
+ raise AttributeError(f"module {__name__!r} has no attribute {attr_name!r}")
242
+
243
+
244
+ def __dir__() -> list[str]:
245
+ return list(__all__)
@@ -0,0 +1,2 @@
1
+ # Copyright 2025 Daytona Platforms Inc.
2
+ # SPDX-License-Identifier: Apache-2.0
@@ -0,0 +1,302 @@
1
+ # Copyright 2025 Daytona Platforms Inc.
2
+ # SPDX-License-Identifier: Apache-2.0
3
+
4
+ from __future__ import annotations
5
+
6
+ import json
7
+ import re
8
+ from typing import cast
9
+
10
+ import aiohttp
11
+
12
+ from northrays_toolbox_api_client_async import CreateContextRequest, InterpreterApi, InterpreterContext
13
+
14
+ from .._utils.errors import intercept_errors
15
+ from ..common.code_interpreter import ExecutionError, ExecutionResult, OutputMessage
16
+ from ..common.errors import NorthraysConnectionError, NorthraysTimeoutError
17
+ from ..common.process import OutputHandler
18
+ from ..internal.shared_session import http_session_of
19
+
20
+ WEBSOCKET_TIMEOUT_CODE = 4008
21
+
22
+
23
+ class AsyncCodeInterpreter:
24
+ """Handles code interpretation and execution within a Sandbox. Currently supports only Python.
25
+
26
+ This class provides methods to execute code in isolated interpreter contexts,
27
+ manage contexts, and stream execution output via callbacks. If subsequent code executions
28
+ are performed in the same context, the variables, imports, and functions defined in
29
+ the previous execution will be available.
30
+
31
+ For other languages, use the `code_run` method from the `AsyncProcess` interface,
32
+ or execute the appropriate command directly in the sandbox terminal.
33
+ """
34
+
35
+ def __init__(
36
+ self,
37
+ api_client: InterpreterApi,
38
+ ):
39
+ """Initialize a new AsyncCodeInterpreter instance.
40
+
41
+ Args:
42
+ api_client: API client for interpreter operations.
43
+ """
44
+ self._api_client: InterpreterApi = api_client
45
+
46
+ @intercept_errors(message_prefix="Failed to run code: ")
47
+ async def run_code(
48
+ self,
49
+ code: str,
50
+ *,
51
+ context: InterpreterContext | None = None,
52
+ on_stdout: OutputHandler[OutputMessage] | None = None,
53
+ on_stderr: OutputHandler[OutputMessage] | None = None,
54
+ on_error: OutputHandler[ExecutionError] | None = None,
55
+ envs: dict[str, str] | None = None,
56
+ timeout: int | None = None,
57
+ ) -> ExecutionResult:
58
+ """Execute Python code in the sandbox.
59
+
60
+ By default, code runs in the default shared context which persists variables,
61
+ imports, and functions across executions. To run in an isolated context,
62
+ create a new context with `create_context()` and pass it as `context` argument.
63
+
64
+ Args:
65
+ code (str): Code to execute.
66
+ context (InterpreterContext | None): Context to run code in. If not provided, uses default context.
67
+ on_stdout (OutputHandler[OutputMessage] | None): Callback for stdout messages.
68
+ on_stderr (OutputHandler[OutputMessage] | None): Callback for stderr messages.
69
+ on_error (OutputHandler[ExecutionError] | None): Callback for execution errors
70
+ (e.g., syntax errors, runtime errors).
71
+ envs (dict[str, str] | None): Environment variables for this execution.
72
+ timeout (int | None): Timeout in seconds. 0 means no timeout. Default is 10 minutes.
73
+
74
+ Returns:
75
+ ExecutionResult: Result object containing stdout, stderr and error if any.
76
+
77
+ Raises:
78
+ NorthraysTimeoutError: If execution times out.
79
+ NorthraysError: If execution fails due to communication or other SDK errors.
80
+
81
+ Examples:
82
+ ```python
83
+ def handle_stdout(msg: OutputMessage):
84
+ print(f"STDOUT: {msg.output}", end="")
85
+
86
+ def handle_stderr(msg: OutputMessage):
87
+ print(f"STDERR: {msg.output}", end="")
88
+
89
+ def handle_error(err: ExecutionError):
90
+ print(f"ERROR: {err.name}: {err.value}")
91
+
92
+ code = '''
93
+ import sys
94
+ import time
95
+ for i in range(5):
96
+ print(i)
97
+ time.sleep(1)
98
+ sys.stderr.write("Counting done!")
99
+ '''
100
+ result = await sandbox.code_interpreter.run_code(
101
+ code=code,
102
+ on_stdout=handle_stdout,
103
+ on_stderr=handle_stderr,
104
+ on_error=handle_error,
105
+ timeout=10
106
+ )
107
+ ```
108
+ """
109
+ _, url, headers, *_ = self._api_client._execute_interpreter_code_serialize(
110
+ _request_auth=None,
111
+ _content_type=None,
112
+ _headers=None,
113
+ _host_index=None,
114
+ )
115
+ url = re.sub(r"^http", "ws", url)
116
+
117
+ result = ExecutionResult()
118
+
119
+ ws = await http_session_of(self._api_client.api_client).ws_connect(url, headers=headers)
120
+ try:
121
+ request: dict[str, str | int | dict[str, str]] = {"code": code}
122
+ if context is not None:
123
+ request["contextId"] = context.id
124
+ if envs is not None:
125
+ request["envs"] = envs
126
+ if timeout is not None:
127
+ request["timeout"] = timeout
128
+
129
+ await ws.send_str(json.dumps(request))
130
+
131
+ while True:
132
+ msg = await ws.receive()
133
+
134
+ if msg.type == aiohttp.WSMsgType.TEXT:
135
+ chunk = json.loads(cast(str, msg.data))
136
+ chunk_type = chunk.get("type")
137
+
138
+ if chunk_type == "stdout":
139
+ stdout = chunk.get("text", "")
140
+ if on_stdout:
141
+ _ = on_stdout(OutputMessage(output=stdout))
142
+ result.stdout += stdout
143
+
144
+ elif chunk_type == "stderr":
145
+ stderr = chunk.get("text", "")
146
+ if on_stderr:
147
+ _ = on_stderr(OutputMessage(output=stderr))
148
+ result.stderr += stderr
149
+
150
+ elif chunk_type == "error":
151
+ error = ExecutionError(
152
+ name=chunk.get("name", ""),
153
+ value=chunk.get("value", ""),
154
+ traceback=chunk.get("traceback", ""),
155
+ )
156
+ result.error = error
157
+ if on_error:
158
+ _ = on_error(error)
159
+ continue
160
+
161
+ if msg.type == aiohttp.WSMsgType.BINARY:
162
+ chunk = json.loads(cast(bytes, msg.data).decode("utf-8"))
163
+ chunk_type = chunk.get("type")
164
+ if chunk_type == "stdout":
165
+ stdout = chunk.get("text", "")
166
+ if on_stdout:
167
+ _ = on_stdout(OutputMessage(output=stdout))
168
+ result.stdout += stdout
169
+ elif chunk_type == "stderr":
170
+ stderr = chunk.get("text", "")
171
+ if on_stderr:
172
+ _ = on_stderr(OutputMessage(output=stderr))
173
+ result.stderr += stderr
174
+ elif chunk_type == "error":
175
+ error = ExecutionError(
176
+ name=chunk.get("name", ""),
177
+ value=chunk.get("value", ""),
178
+ traceback=chunk.get("traceback", ""),
179
+ )
180
+ result.error = error
181
+ if on_error:
182
+ _ = on_error(error)
183
+ continue
184
+
185
+ if msg.type == aiohttp.WSMsgType.CLOSE:
186
+ close_code = cast(int, msg.data) if msg.data is not None else None
187
+ close_reason = msg.extra if msg.extra else None
188
+ self._maybe_raise_from_ws_close(close_code, close_reason)
189
+ return result
190
+
191
+ if msg.type in (aiohttp.WSMsgType.CLOSED, aiohttp.WSMsgType.CLOSING):
192
+ self._maybe_raise_from_ws_close(ws.close_code, None)
193
+ return result
194
+
195
+ if msg.type == aiohttp.WSMsgType.ERROR:
196
+ exc = ws.exception()
197
+ raise NorthraysConnectionError(f"WebSocket error: {exc}") from exc
198
+ finally:
199
+ if not ws.closed:
200
+ _ = await ws.close()
201
+
202
+ @intercept_errors(message_prefix="Failed to create interpreter context: ")
203
+ async def create_context(
204
+ self,
205
+ cwd: str | None = None,
206
+ ) -> InterpreterContext:
207
+ """Create a new isolated interpreter context.
208
+
209
+ Contexts provide isolated execution environments with their own global namespace.
210
+ Variables, imports, and functions defined in one context don't affect others.
211
+
212
+ Args:
213
+ cwd (str | None): Working directory for the context. If not specified, uses sandbox working directory.
214
+
215
+ Returns:
216
+ InterpreterContext: The created context with its ID and metadata.
217
+
218
+ Raises:
219
+ NorthraysError: If context creation fails.
220
+
221
+ Examples:
222
+ ```python
223
+ # Create isolated context
224
+ ctx = await sandbox.code_interpreter.create_context()
225
+
226
+ # Execute code in this context
227
+ await sandbox.code_interpreter.run_code("x = 100", context=ctx)
228
+
229
+ # Variable only exists in this context
230
+ result = await sandbox.code_interpreter.run_code("print(x)", context=ctx) # OK
231
+
232
+ # Won't see the variable in default context
233
+ result = await sandbox.code_interpreter.run_code("print(x)") # NameError
234
+
235
+ # Clean up
236
+ await sandbox.code_interpreter.delete_context(ctx)
237
+ ```
238
+ """
239
+ return await self._api_client.create_interpreter_context(request=CreateContextRequest(cwd=cwd))
240
+
241
+ @intercept_errors(message_prefix="Failed to list interpreter contexts: ")
242
+ async def list_contexts(self) -> list[InterpreterContext]:
243
+ """List all user-created interpreter contexts.
244
+
245
+ The default context is not included in this list. Only contexts created
246
+ via `create_context()` are returned.
247
+
248
+ Returns:
249
+ list[InterpreterContext]: List of context objects.
250
+
251
+ Raises:
252
+ NorthraysError: If listing fails.
253
+
254
+ Examples:
255
+ ```python
256
+ contexts = await sandbox.code_interpreter.list_contexts()
257
+ for ctx in contexts:
258
+ print(f"Context {ctx.id}: {ctx.language} at {ctx.cwd}")
259
+ ```
260
+ """
261
+ return (await self._api_client.list_interpreter_contexts()).contexts or []
262
+
263
+ @intercept_errors(message_prefix="Failed to delete interpreter context: ")
264
+ async def delete_context(self, context: InterpreterContext) -> None:
265
+ """Delete an interpreter context and shut down all associated processes.
266
+
267
+ This permanently removes the context and all its state (variables, imports, etc.).
268
+ The default context cannot be deleted.
269
+
270
+ Args:
271
+ context (InterpreterContext): Context to delete.
272
+
273
+ Raises:
274
+ NorthraysError: If deletion fails or context not found.
275
+
276
+ Examples:
277
+ ```python
278
+ ctx = await sandbox.code_interpreter.create_context()
279
+ # ... use context ...
280
+ await sandbox.code_interpreter.delete_context(ctx)
281
+ ```
282
+ """
283
+ _ = await self._api_client.delete_interpreter_context(id=context.id)
284
+
285
+ def _maybe_raise_from_ws_close(self, close_code: int | None, close_reason: str | None) -> None:
286
+ """Translate a websocket close into a Northrays error when it indicates failure.
287
+
288
+ The interpreter daemon emits close code 4008 to signal a per-execution timeout.
289
+ Other non-1000 close codes are treated as connection errors. Code 1000 / unknown
290
+ means clean completion and produces no exception.
291
+ """
292
+ if close_code == WEBSOCKET_TIMEOUT_CODE:
293
+ raise NorthraysTimeoutError(
294
+ "Execution timed out: operation exceeded the configured `timeout`. Provide a larger value if needed."
295
+ )
296
+
297
+ if close_code in (None, 1000):
298
+ return
299
+
300
+ detail = close_reason or "WebSocket connection closed unexpectedly"
301
+ detail = f"{detail} (close code {close_code})"
302
+ raise NorthraysConnectionError(detail)