runloop-api-client 0.63.0__tar.gz → 0.65.0__tar.gz

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 (258) hide show
  1. runloop_api_client-0.65.0/.release-please-manifest.json +3 -0
  2. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/CHANGELOG.md +23 -0
  3. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/PKG-INFO +1 -1
  4. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/api.md +4 -0
  5. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/pyproject.toml +5 -1
  6. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_version.py +1 -1
  7. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/resources/devboxes/devboxes.py +62 -2
  8. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/resources/devboxes/disk_snapshots.py +8 -0
  9. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/resources/devboxes/executions.py +153 -4
  10. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/resources/repositories.py +97 -8
  11. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/__init__.py +1 -0
  12. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_execute_async_params.py +6 -0
  13. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_execute_params.py +3 -0
  14. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_execute_sync_params.py +6 -0
  15. runloop_api_client-0.65.0/src/runloop_api_client/types/devbox_send_std_in_result.py +16 -0
  16. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_snapshot_disk_async_params.py +3 -0
  17. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_snapshot_disk_params.py +3 -0
  18. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_snapshot_view.py +3 -0
  19. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_wait_for_command_params.py +3 -0
  20. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/__init__.py +1 -0
  21. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/disk_snapshot_update_params.py +3 -0
  22. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/execution_execute_async_params.py +6 -0
  23. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/execution_execute_sync_params.py +6 -0
  24. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/execution_retrieve_params.py +1 -1
  25. runloop_api_client-0.65.0/src/runloop_api_client/types/devboxes/execution_send_std_in_params.py +18 -0
  26. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/object_view.py +3 -0
  27. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/api_resources/devboxes/test_disk_snapshots.py +2 -0
  28. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/api_resources/devboxes/test_executions.py +121 -1
  29. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/api_resources/test_devboxes.py +12 -0
  30. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/api_resources/test_repositories.py +126 -34
  31. runloop_api_client-0.63.0/.release-please-manifest.json +0 -3
  32. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/.gitignore +0 -0
  33. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/CONTRIBUTING.md +0 -0
  34. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/LICENSE +0 -0
  35. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/README.md +0 -0
  36. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/SECURITY.md +0 -0
  37. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/bin/check-release-environment +0 -0
  38. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/bin/publish-pypi +0 -0
  39. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/examples/.keep +0 -0
  40. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/release-please-config.json +0 -0
  41. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/requirements-dev.lock +0 -0
  42. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop/lib/.keep +0 -0
  43. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/__init__.py +0 -0
  44. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_base_client.py +0 -0
  45. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_client.py +0 -0
  46. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_compat.py +0 -0
  47. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_constants.py +0 -0
  48. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_exceptions.py +0 -0
  49. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_files.py +0 -0
  50. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_models.py +0 -0
  51. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_qs.py +0 -0
  52. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_resource.py +0 -0
  53. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_response.py +0 -0
  54. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_streaming.py +0 -0
  55. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_types.py +0 -0
  56. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_utils/__init__.py +0 -0
  57. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_utils/_compat.py +0 -0
  58. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_utils/_datetime_parse.py +0 -0
  59. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_utils/_logs.py +0 -0
  60. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_utils/_proxy.py +0 -0
  61. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_utils/_reflection.py +0 -0
  62. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_utils/_resources_proxy.py +0 -0
  63. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_utils/_streams.py +0 -0
  64. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_utils/_sync.py +0 -0
  65. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_utils/_transform.py +0 -0
  66. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_utils/_typing.py +0 -0
  67. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/_utils/_utils.py +0 -0
  68. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/lib/.keep +0 -0
  69. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/lib/polling.py +0 -0
  70. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/lib/polling_async.py +0 -0
  71. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/pagination.py +0 -0
  72. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/py.typed +0 -0
  73. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/resources/__init__.py +0 -0
  74. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/resources/benchmarks/__init__.py +0 -0
  75. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/resources/benchmarks/benchmarks.py +0 -0
  76. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/resources/benchmarks/runs.py +0 -0
  77. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/resources/blueprints.py +0 -0
  78. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/resources/devboxes/__init__.py +0 -0
  79. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/resources/devboxes/browsers.py +0 -0
  80. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/resources/devboxes/computers.py +0 -0
  81. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/resources/devboxes/logs.py +0 -0
  82. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/resources/objects.py +0 -0
  83. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/resources/scenarios/__init__.py +0 -0
  84. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/resources/scenarios/runs.py +0 -0
  85. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/resources/scenarios/scenarios.py +0 -0
  86. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/resources/scenarios/scorers.py +0 -0
  87. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/resources/secrets.py +0 -0
  88. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/benchmark_create_params.py +0 -0
  89. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/benchmark_definitions_params.py +0 -0
  90. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/benchmark_list_params.py +0 -0
  91. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/benchmark_list_public_params.py +0 -0
  92. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/benchmark_run_list_view.py +0 -0
  93. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/benchmark_run_view.py +0 -0
  94. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/benchmark_start_run_params.py +0 -0
  95. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/benchmark_update_params.py +0 -0
  96. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/benchmark_view.py +0 -0
  97. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/benchmarks/__init__.py +0 -0
  98. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/benchmarks/run_list_params.py +0 -0
  99. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/benchmarks/run_list_scenario_runs_params.py +0 -0
  100. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/blueprint_build_log.py +0 -0
  101. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/blueprint_build_logs_list_view.py +0 -0
  102. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/blueprint_build_parameters.py +0 -0
  103. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/blueprint_create_from_inspection_params.py +0 -0
  104. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/blueprint_create_params.py +0 -0
  105. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/blueprint_list_params.py +0 -0
  106. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/blueprint_list_public_params.py +0 -0
  107. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/blueprint_list_view.py +0 -0
  108. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/blueprint_preview_params.py +0 -0
  109. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/blueprint_preview_view.py +0 -0
  110. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/blueprint_view.py +0 -0
  111. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_async_execution_detail_view.py +0 -0
  112. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_create_params.py +0 -0
  113. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_create_ssh_key_response.py +0 -0
  114. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_create_tunnel_params.py +0 -0
  115. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_download_file_params.py +0 -0
  116. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_execution_detail_view.py +0 -0
  117. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_list_disk_snapshots_params.py +0 -0
  118. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_list_params.py +0 -0
  119. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_list_view.py +0 -0
  120. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_read_file_contents_params.py +0 -0
  121. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_read_file_contents_response.py +0 -0
  122. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_remove_tunnel_params.py +0 -0
  123. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_snapshot_list_view.py +0 -0
  124. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_tunnel_view.py +0 -0
  125. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_update_params.py +0 -0
  126. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_upload_file_params.py +0 -0
  127. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_view.py +0 -0
  128. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devbox_write_file_contents_params.py +0 -0
  129. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/browser_create_params.py +0 -0
  130. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/browser_view.py +0 -0
  131. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/computer_create_params.py +0 -0
  132. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/computer_keyboard_interaction_params.py +0 -0
  133. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/computer_keyboard_interaction_response.py +0 -0
  134. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/computer_mouse_interaction_params.py +0 -0
  135. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/computer_mouse_interaction_response.py +0 -0
  136. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/computer_screen_interaction_params.py +0 -0
  137. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/computer_screen_interaction_response.py +0 -0
  138. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/computer_view.py +0 -0
  139. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/devbox_logs_list_view.py +0 -0
  140. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/devbox_snapshot_async_status_view.py +0 -0
  141. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/disk_snapshot_list_params.py +0 -0
  142. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/execution_kill_params.py +0 -0
  143. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/execution_stream_stderr_updates_params.py +0 -0
  144. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/execution_stream_stdout_updates_params.py +0 -0
  145. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/execution_update_chunk.py +0 -0
  146. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/devboxes/log_list_params.py +0 -0
  147. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/input_context.py +0 -0
  148. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/input_context_param.py +0 -0
  149. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/input_context_update_param.py +0 -0
  150. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/inspection_source_param.py +0 -0
  151. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/object_create_params.py +0 -0
  152. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/object_download_params.py +0 -0
  153. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/object_download_url_view.py +0 -0
  154. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/object_list_params.py +0 -0
  155. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/object_list_public_params.py +0 -0
  156. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/object_list_view.py +0 -0
  157. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/repository_connection_list_view.py +0 -0
  158. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/repository_connection_view.py +0 -0
  159. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/repository_create_params.py +0 -0
  160. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/repository_inspect_params.py +0 -0
  161. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/repository_inspection_details.py +0 -0
  162. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/repository_inspection_list_view.py +0 -0
  163. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/repository_list_params.py +0 -0
  164. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/repository_manifest_view.py +0 -0
  165. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/repository_refresh_params.py +0 -0
  166. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scenario_create_params.py +0 -0
  167. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scenario_definition_list_view.py +0 -0
  168. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scenario_environment.py +0 -0
  169. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scenario_environment_param.py +0 -0
  170. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scenario_list_params.py +0 -0
  171. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scenario_list_public_params.py +0 -0
  172. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scenario_run_list_view.py +0 -0
  173. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scenario_run_view.py +0 -0
  174. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scenario_start_run_params.py +0 -0
  175. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scenario_update_params.py +0 -0
  176. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scenario_view.py +0 -0
  177. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scenarios/__init__.py +0 -0
  178. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scenarios/run_list_params.py +0 -0
  179. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scenarios/scorer_create_params.py +0 -0
  180. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scenarios/scorer_create_response.py +0 -0
  181. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scenarios/scorer_list_params.py +0 -0
  182. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scenarios/scorer_list_response.py +0 -0
  183. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scenarios/scorer_retrieve_response.py +0 -0
  184. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scenarios/scorer_update_params.py +0 -0
  185. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scenarios/scorer_update_response.py +0 -0
  186. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scenarios/scorer_validate_params.py +0 -0
  187. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scenarios/scorer_validate_response.py +0 -0
  188. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scoring_contract.py +0 -0
  189. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scoring_contract_param.py +0 -0
  190. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scoring_contract_result_view.py +0 -0
  191. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scoring_contract_update_param.py +0 -0
  192. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scoring_function.py +0 -0
  193. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scoring_function_param.py +0 -0
  194. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/scoring_function_result_view.py +0 -0
  195. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/secret_create_params.py +0 -0
  196. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/secret_list_params.py +0 -0
  197. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/secret_list_view.py +0 -0
  198. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/secret_update_params.py +0 -0
  199. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/secret_view.py +0 -0
  200. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/shared/__init__.py +0 -0
  201. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/shared/after_idle.py +0 -0
  202. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/shared/agent_mount_parameters.py +0 -0
  203. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/shared/code_mount_parameters.py +0 -0
  204. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/shared/launch_parameters.py +0 -0
  205. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/shared/mount.py +0 -0
  206. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/shared/object_mount_parameters.py +0 -0
  207. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/shared/run_profile.py +0 -0
  208. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/shared_params/__init__.py +0 -0
  209. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/shared_params/after_idle.py +0 -0
  210. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/shared_params/agent_mount_parameters.py +0 -0
  211. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/shared_params/code_mount_parameters.py +0 -0
  212. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/shared_params/launch_parameters.py +0 -0
  213. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/shared_params/mount.py +0 -0
  214. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/shared_params/object_mount_parameters.py +0 -0
  215. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/src/runloop_api_client/types/shared_params/run_profile.py +0 -0
  216. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/__init__.py +0 -0
  217. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/api_resources/__init__.py +0 -0
  218. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/api_resources/benchmarks/__init__.py +0 -0
  219. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/api_resources/benchmarks/test_runs.py +0 -0
  220. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/api_resources/devboxes/__init__.py +0 -0
  221. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/api_resources/devboxes/test_browsers.py +0 -0
  222. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/api_resources/devboxes/test_computers.py +0 -0
  223. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/api_resources/devboxes/test_logs.py +0 -0
  224. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/api_resources/scenarios/__init__.py +0 -0
  225. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/api_resources/scenarios/test_runs.py +0 -0
  226. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/api_resources/scenarios/test_scorers.py +0 -0
  227. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/api_resources/test_benchmarks.py +0 -0
  228. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/api_resources/test_blueprints.py +0 -0
  229. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/api_resources/test_objects.py +0 -0
  230. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/api_resources/test_scenarios.py +0 -0
  231. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/api_resources/test_secrets.py +0 -0
  232. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/conftest.py +0 -0
  233. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/sample_file.txt +0 -0
  234. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/smoketests/README.md +0 -0
  235. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/smoketests/__init__.py +0 -0
  236. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/smoketests/conftest.py +0 -0
  237. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/smoketests/test_blueprints.py +0 -0
  238. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/smoketests/test_devboxes.py +0 -0
  239. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/smoketests/test_executions.py +0 -0
  240. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/smoketests/test_scenarios_benchmarks.py +0 -0
  241. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/smoketests/test_snapshots.py +0 -0
  242. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/smoketests/utils.py +0 -0
  243. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/test_client.py +0 -0
  244. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/test_deepcopy.py +0 -0
  245. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/test_extract_files.py +0 -0
  246. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/test_files.py +0 -0
  247. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/test_models.py +0 -0
  248. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/test_polling.py +0 -0
  249. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/test_qs.py +0 -0
  250. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/test_required_args.py +0 -0
  251. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/test_response.py +0 -0
  252. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/test_streaming.py +0 -0
  253. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/test_transform.py +0 -0
  254. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/test_utils/test_datetime_parse.py +0 -0
  255. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/test_utils/test_proxy.py +0 -0
  256. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/test_utils/test_typing.py +0 -0
  257. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/tests/utils.py +0 -0
  258. {runloop_api_client-0.63.0 → runloop_api_client-0.65.0}/uv.lock +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.65.0"
3
+ }
@@ -1,5 +1,28 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.65.0 (2025-10-15)
4
+
5
+ Full Changelog: [v0.64.0...v0.65.0](https://github.com/runloopai/api-client-python/compare/v0.64.0...v0.65.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** api update ([e6de5c0](https://github.com/runloopai/api-client-python/commit/e6de5c068a75512dd89a9240c281f46c69f14f07))
10
+
11
+
12
+ ### Chores
13
+
14
+ * **internal:** detect missing future annotations with ruff ([e8914e3](https://github.com/runloopai/api-client-python/commit/e8914e3d40f6bbed2175d39f25e3b1da1c350225))
15
+
16
+ ## 0.64.0 (2025-10-06)
17
+
18
+ Full Changelog: [v0.63.0...v0.64.0](https://github.com/runloopai/api-client-python/compare/v0.63.0...v0.64.0)
19
+
20
+ ### Features
21
+
22
+ * **api:** api update ([b13e49f](https://github.com/runloopai/api-client-python/commit/b13e49f006c45d3e10c0383825fbe2054b31b351))
23
+ * **api:** api update ([736c122](https://github.com/runloopai/api-client-python/commit/736c122c5a350ba081eb495786e94ad6b999b121))
24
+ * **api:** api update ([c4dbcf3](https://github.com/runloopai/api-client-python/commit/c4dbcf33822da8045def9617948e7b30f617fe51))
25
+
3
26
  ## 0.63.0 (2025-10-02)
4
27
 
5
28
  Full Changelog: [v0.62.0...v0.63.0](https://github.com/runloopai/api-client-python/compare/v0.62.0...v0.63.0)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: runloop_api_client
3
- Version: 0.63.0
3
+ Version: 0.65.0
4
4
  Summary: The official Python library for the runloop API
5
5
  Project-URL: Homepage, https://github.com/runloopai/api-client-python
6
6
  Project-URL: Repository, https://github.com/runloopai/api-client-python
@@ -86,6 +86,8 @@ from runloop_api_client.types import (
86
86
  DevboxExecutionDetailView,
87
87
  DevboxKillExecutionRequest,
88
88
  DevboxListView,
89
+ DevboxSendStdInRequest,
90
+ DevboxSendStdInResult,
89
91
  DevboxSnapshotListView,
90
92
  DevboxSnapshotView,
91
93
  DevboxTunnelView,
@@ -198,6 +200,7 @@ Methods:
198
200
  - <code title="post /v1/devboxes/{id}/execute_async">client.devboxes.executions.<a href="./src/runloop_api_client/resources/devboxes/executions.py">execute_async</a>(id, \*\*<a href="src/runloop_api_client/types/devboxes/execution_execute_async_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_async_execution_detail_view.py">DevboxAsyncExecutionDetailView</a></code>
199
201
  - <code title="post /v1/devboxes/{id}/execute_sync">client.devboxes.executions.<a href="./src/runloop_api_client/resources/devboxes/executions.py">execute_sync</a>(id, \*\*<a href="src/runloop_api_client/types/devboxes/execution_execute_sync_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_execution_detail_view.py">DevboxExecutionDetailView</a></code>
200
202
  - <code title="post /v1/devboxes/{devbox_id}/executions/{execution_id}/kill">client.devboxes.executions.<a href="./src/runloop_api_client/resources/devboxes/executions.py">kill</a>(execution_id, \*, devbox_id, \*\*<a href="src/runloop_api_client/types/devboxes/execution_kill_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_async_execution_detail_view.py">DevboxAsyncExecutionDetailView</a></code>
203
+ - <code title="post /v1/devboxes/{devbox_id}/executions/{execution_id}/send_std_in">client.devboxes.executions.<a href="./src/runloop_api_client/resources/devboxes/executions.py">send_std_in</a>(execution_id, \*, devbox_id, \*\*<a href="src/runloop_api_client/types/devboxes/execution_send_std_in_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_send_std_in_result.py">DevboxSendStdInResult</a></code>
201
204
  - <code title="get /v1/devboxes/{devbox_id}/executions/{execution_id}/stream_stderr_updates">client.devboxes.executions.<a href="./src/runloop_api_client/resources/devboxes/executions.py">stream_stderr_updates</a>(execution_id, \*, devbox_id, \*\*<a href="src/runloop_api_client/types/devboxes/execution_stream_stderr_updates_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devboxes/execution_update_chunk.py">ExecutionUpdateChunk</a></code>
202
205
  - <code title="get /v1/devboxes/{devbox_id}/executions/{execution_id}/stream_stdout_updates">client.devboxes.executions.<a href="./src/runloop_api_client/resources/devboxes/executions.py">stream_stdout_updates</a>(execution_id, \*, devbox_id, \*\*<a href="src/runloop_api_client/types/devboxes/execution_stream_stdout_updates_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devboxes/execution_update_chunk.py">ExecutionUpdateChunk</a></code>
203
206
 
@@ -312,6 +315,7 @@ Methods:
312
315
  - <code title="post /v1/repositories/{id}/inspect">client.repositories.<a href="./src/runloop_api_client/resources/repositories.py">inspect</a>(id, \*\*<a href="src/runloop_api_client/types/repository_inspect_params.py">params</a>) -> <a href="./src/runloop_api_client/types/repository_inspection_details.py">RepositoryInspectionDetails</a></code>
313
316
  - <code title="get /v1/repositories/{id}/inspections">client.repositories.<a href="./src/runloop_api_client/resources/repositories.py">list_inspections</a>(id) -> <a href="./src/runloop_api_client/types/repository_inspection_list_view.py">RepositoryInspectionListView</a></code>
314
317
  - <code title="post /v1/repositories/{id}/refresh">client.repositories.<a href="./src/runloop_api_client/resources/repositories.py">refresh</a>(id, \*\*<a href="src/runloop_api_client/types/repository_refresh_params.py">params</a>) -> object</code>
318
+ - <code title="get /v1/repositories/inspections/{id}">client.repositories.<a href="./src/runloop_api_client/resources/repositories.py">retrieve_inspection</a>(id) -> <a href="./src/runloop_api_client/types/repository_inspection_details.py">RepositoryInspectionDetails</a></code>
315
319
 
316
320
  # Secrets
317
321
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "runloop_api_client"
3
- version = "0.63.0"
3
+ version = "0.65.0"
4
4
  description = "The official Python library for the runloop API"
5
5
  dynamic = ["readme"]
6
6
  license = "MIT"
@@ -234,6 +234,8 @@ select = [
234
234
  "B",
235
235
  # remove unused imports
236
236
  "F401",
237
+ # check for missing future annotations
238
+ "FA102",
237
239
  # bare except statements
238
240
  "E722",
239
241
  # unused arguments
@@ -256,6 +258,8 @@ unfixable = [
256
258
  "T203",
257
259
  ]
258
260
 
261
+ extend-safe-fixes = ["FA102"]
262
+
259
263
  [tool.ruff.lint.flake8-tidy-imports.banned-api]
260
264
  "functools.lru_cache".msg = "This function does not retain type information for the wrapped function's arguments; The `lru_cache` function from `_utils` should be used instead"
261
265
 
@@ -1,4 +1,4 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  __title__ = "runloop_api_client"
4
- __version__ = "0.63.0" # x-release-please-version
4
+ __version__ = "0.65.0" # x-release-please-version
@@ -724,6 +724,7 @@ class DevboxesResource(SyncAPIResource):
724
724
  *,
725
725
  command: str,
726
726
  command_id: str = str(uuid7()),
727
+ last_n: str | Omit = omit,
727
728
  optimistic_timeout: Optional[int] | Omit = omit,
728
729
  shell_name: Optional[str] | Omit = omit,
729
730
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
@@ -738,6 +739,8 @@ class DevboxesResource(SyncAPIResource):
738
739
  Execute a command with a known command ID on a devbox, optimistically waiting
739
740
  for it to complete within the specified timeout. If it completes in time, return
740
741
  the result. If not, return a status indicating the command is still running.
742
+ Note: attach_stdin parameter is not supported; use execute_async for stdin
743
+ support.
741
744
 
742
745
  Args:
743
746
  command: The command to execute via the Devbox shell. By default, commands are run from
@@ -747,6 +750,8 @@ class DevboxesResource(SyncAPIResource):
747
750
 
748
751
  command_id: The command ID in UUIDv7 string format for idempotency and tracking
749
752
 
753
+ last_n: Last n lines of standard error / standard out to return (default: 100)
754
+
750
755
  optimistic_timeout: Timeout in seconds to wait for command completion. Operation is not killed. Max
751
756
  is 600 seconds.
752
757
 
@@ -785,6 +790,7 @@ class DevboxesResource(SyncAPIResource):
785
790
  extra_body=extra_body,
786
791
  timeout=timeout,
787
792
  idempotency_key=idempotency_key,
793
+ query=maybe_transform({"last_n": last_n}, devbox_execute_params.DevboxExecuteParams),
788
794
  ),
789
795
  cast_to=DevboxAsyncExecutionDetailView,
790
796
  )
@@ -847,6 +853,7 @@ class DevboxesResource(SyncAPIResource):
847
853
  id: str,
848
854
  *,
849
855
  command: str,
856
+ attach_stdin: Optional[bool] | Omit = omit,
850
857
  shell_name: Optional[str] | Omit = omit,
851
858
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
852
859
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -866,6 +873,9 @@ class DevboxesResource(SyncAPIResource):
866
873
  specified the command is run from the directory based on the recent state of the
867
874
  persistent shell.
868
875
 
876
+ attach_stdin: Whether to attach stdin streaming for async commands. Not valid for execute_sync
877
+ endpoint. Defaults to false if not specified.
878
+
869
879
  shell_name: The name of the persistent shell to create or use if already created. When using
870
880
  a persistent shell, the command will run from the directory at the end of the
871
881
  previous command and environment variables will be preserved.
@@ -887,6 +897,7 @@ class DevboxesResource(SyncAPIResource):
887
897
  body=maybe_transform(
888
898
  {
889
899
  "command": command,
900
+ "attach_stdin": attach_stdin,
890
901
  "shell_name": shell_name,
891
902
  },
892
903
  devbox_execute_async_params.DevboxExecuteAsyncParams,
@@ -908,6 +919,7 @@ class DevboxesResource(SyncAPIResource):
908
919
  id: str,
909
920
  *,
910
921
  command: str,
922
+ attach_stdin: Optional[bool] | Omit = omit,
911
923
  shell_name: Optional[str] | Omit = omit,
912
924
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
913
925
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -919,7 +931,8 @@ class DevboxesResource(SyncAPIResource):
919
931
  ) -> DevboxExecutionDetailView:
920
932
  """
921
933
  Execute a bash command in the Devbox shell, await the command completion and
922
- return the output.
934
+ return the output. Note: attach_stdin parameter is not supported for synchronous
935
+ execution.
923
936
 
924
937
  .. deprecated::
925
938
  Use execute, executeAsync, or executeAndAwaitCompletion instead.
@@ -930,6 +943,9 @@ class DevboxesResource(SyncAPIResource):
930
943
  specified the command is run from the directory based on the recent state of the
931
944
  persistent shell.
932
945
 
946
+ attach_stdin: Whether to attach stdin streaming for async commands. Not valid for execute_sync
947
+ endpoint. Defaults to false if not specified.
948
+
933
949
  shell_name: The name of the persistent shell to create or use if already created. When using
934
950
  a persistent shell, the command will run from the directory at the end of the
935
951
  previous command and environment variables will be preserved.
@@ -953,6 +969,7 @@ class DevboxesResource(SyncAPIResource):
953
969
  body=maybe_transform(
954
970
  {
955
971
  "command": command,
972
+ "attach_stdin": attach_stdin,
956
973
  "shell_name": shell_name,
957
974
  },
958
975
  devbox_execute_sync_params.DevboxExecuteSyncParams,
@@ -1256,6 +1273,7 @@ class DevboxesResource(SyncAPIResource):
1256
1273
  self,
1257
1274
  id: str,
1258
1275
  *,
1276
+ commit_message: Optional[str] | Omit = omit,
1259
1277
  metadata: Optional[Dict[str, str]] | Omit = omit,
1260
1278
  name: Optional[str] | Omit = omit,
1261
1279
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
@@ -1271,6 +1289,8 @@ class DevboxesResource(SyncAPIResource):
1271
1289
  enable launching future Devboxes with the same disk state.
1272
1290
 
1273
1291
  Args:
1292
+ commit_message: (Optional) Commit message associated with the snapshot (max 1000 characters)
1293
+
1274
1294
  metadata: (Optional) Metadata used to describe the snapshot
1275
1295
 
1276
1296
  name: (Optional) A user specified name to give the snapshot
@@ -1293,6 +1313,7 @@ class DevboxesResource(SyncAPIResource):
1293
1313
  f"/v1/devboxes/{id}/snapshot_disk",
1294
1314
  body=maybe_transform(
1295
1315
  {
1316
+ "commit_message": commit_message,
1296
1317
  "metadata": metadata,
1297
1318
  "name": name,
1298
1319
  },
@@ -1312,6 +1333,7 @@ class DevboxesResource(SyncAPIResource):
1312
1333
  self,
1313
1334
  id: str,
1314
1335
  *,
1336
+ commit_message: Optional[str] | Omit = omit,
1315
1337
  metadata: Optional[Dict[str, str]] | Omit = omit,
1316
1338
  name: Optional[str] | Omit = omit,
1317
1339
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
@@ -1328,6 +1350,8 @@ class DevboxesResource(SyncAPIResource):
1328
1350
  monitored using the query endpoint.
1329
1351
 
1330
1352
  Args:
1353
+ commit_message: (Optional) Commit message associated with the snapshot (max 1000 characters)
1354
+
1331
1355
  metadata: (Optional) Metadata used to describe the snapshot
1332
1356
 
1333
1357
  name: (Optional) A user specified name to give the snapshot
@@ -1348,6 +1372,7 @@ class DevboxesResource(SyncAPIResource):
1348
1372
  f"/v1/devboxes/{id}/snapshot_disk_async",
1349
1373
  body=maybe_transform(
1350
1374
  {
1375
+ "commit_message": commit_message,
1351
1376
  "metadata": metadata,
1352
1377
  "name": name,
1353
1378
  },
@@ -1474,6 +1499,7 @@ class DevboxesResource(SyncAPIResource):
1474
1499
  *,
1475
1500
  devbox_id: str,
1476
1501
  statuses: List[Literal["queued", "running", "completed"]],
1502
+ last_n: str | Omit = omit,
1477
1503
  timeout_seconds: Optional[int] | Omit = omit,
1478
1504
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1479
1505
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -1492,6 +1518,8 @@ class DevboxesResource(SyncAPIResource):
1492
1518
  provided. The command will be returned as soon as it reaches any of the provided
1493
1519
  statuses.
1494
1520
 
1521
+ last_n: Last n lines of standard error / standard out to return (default: 100)
1522
+
1495
1523
  timeout_seconds: (Optional) Timeout in seconds to wait for the status, up to 60 seconds. Defaults
1496
1524
  to 60 seconds.
1497
1525
 
@@ -1524,6 +1552,7 @@ class DevboxesResource(SyncAPIResource):
1524
1552
  extra_body=extra_body,
1525
1553
  timeout=timeout,
1526
1554
  idempotency_key=idempotency_key,
1555
+ query=maybe_transform({"last_n": last_n}, devbox_wait_for_command_params.DevboxWaitForCommandParams),
1527
1556
  ),
1528
1557
  cast_to=DevboxAsyncExecutionDetailView,
1529
1558
  )
@@ -2175,6 +2204,7 @@ class AsyncDevboxesResource(AsyncAPIResource):
2175
2204
  *,
2176
2205
  command: str,
2177
2206
  command_id: str = str(uuid7()),
2207
+ last_n: str | Omit = omit,
2178
2208
  optimistic_timeout: Optional[int] | Omit = omit,
2179
2209
  shell_name: Optional[str] | Omit = omit,
2180
2210
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
@@ -2189,6 +2219,8 @@ class AsyncDevboxesResource(AsyncAPIResource):
2189
2219
  Execute a command with a known command ID on a devbox, optimistically waiting
2190
2220
  for it to complete within the specified timeout. If it completes in time, return
2191
2221
  the result. If not, return a status indicating the command is still running.
2222
+ Note: attach_stdin parameter is not supported; use execute_async for stdin
2223
+ support.
2192
2224
 
2193
2225
  Args:
2194
2226
  command: The command to execute via the Devbox shell. By default, commands are run from
@@ -2198,6 +2230,8 @@ class AsyncDevboxesResource(AsyncAPIResource):
2198
2230
 
2199
2231
  command_id: The command ID in UUIDv7 string format for idempotency and tracking
2200
2232
 
2233
+ last_n: Last n lines of standard error / standard out to return (default: 100)
2234
+
2201
2235
  optimistic_timeout: Timeout in seconds to wait for command completion. Operation is not killed. Max
2202
2236
  is 600 seconds.
2203
2237
 
@@ -2236,6 +2270,7 @@ class AsyncDevboxesResource(AsyncAPIResource):
2236
2270
  extra_body=extra_body,
2237
2271
  timeout=timeout,
2238
2272
  idempotency_key=idempotency_key,
2273
+ query=await async_maybe_transform({"last_n": last_n}, devbox_execute_params.DevboxExecuteParams),
2239
2274
  ),
2240
2275
  cast_to=DevboxAsyncExecutionDetailView,
2241
2276
  )
@@ -2299,6 +2334,7 @@ class AsyncDevboxesResource(AsyncAPIResource):
2299
2334
  id: str,
2300
2335
  *,
2301
2336
  command: str,
2337
+ attach_stdin: Optional[bool] | Omit = omit,
2302
2338
  shell_name: Optional[str] | Omit = omit,
2303
2339
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
2304
2340
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -2318,6 +2354,9 @@ class AsyncDevboxesResource(AsyncAPIResource):
2318
2354
  specified the command is run from the directory based on the recent state of the
2319
2355
  persistent shell.
2320
2356
 
2357
+ attach_stdin: Whether to attach stdin streaming for async commands. Not valid for execute_sync
2358
+ endpoint. Defaults to false if not specified.
2359
+
2321
2360
  shell_name: The name of the persistent shell to create or use if already created. When using
2322
2361
  a persistent shell, the command will run from the directory at the end of the
2323
2362
  previous command and environment variables will be preserved.
@@ -2339,6 +2378,7 @@ class AsyncDevboxesResource(AsyncAPIResource):
2339
2378
  body=await async_maybe_transform(
2340
2379
  {
2341
2380
  "command": command,
2381
+ "attach_stdin": attach_stdin,
2342
2382
  "shell_name": shell_name,
2343
2383
  },
2344
2384
  devbox_execute_async_params.DevboxExecuteAsyncParams,
@@ -2360,6 +2400,7 @@ class AsyncDevboxesResource(AsyncAPIResource):
2360
2400
  id: str,
2361
2401
  *,
2362
2402
  command: str,
2403
+ attach_stdin: Optional[bool] | Omit = omit,
2363
2404
  shell_name: Optional[str] | Omit = omit,
2364
2405
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
2365
2406
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -2371,7 +2412,8 @@ class AsyncDevboxesResource(AsyncAPIResource):
2371
2412
  ) -> DevboxExecutionDetailView:
2372
2413
  """
2373
2414
  Execute a bash command in the Devbox shell, await the command completion and
2374
- return the output.
2415
+ return the output. Note: attach_stdin parameter is not supported for synchronous
2416
+ execution.
2375
2417
 
2376
2418
  .. deprecated::
2377
2419
  Use execute, executeAsync, or executeAndAwaitCompletion instead.
@@ -2382,6 +2424,9 @@ class AsyncDevboxesResource(AsyncAPIResource):
2382
2424
  specified the command is run from the directory based on the recent state of the
2383
2425
  persistent shell.
2384
2426
 
2427
+ attach_stdin: Whether to attach stdin streaming for async commands. Not valid for execute_sync
2428
+ endpoint. Defaults to false if not specified.
2429
+
2385
2430
  shell_name: The name of the persistent shell to create or use if already created. When using
2386
2431
  a persistent shell, the command will run from the directory at the end of the
2387
2432
  previous command and environment variables will be preserved.
@@ -2405,6 +2450,7 @@ class AsyncDevboxesResource(AsyncAPIResource):
2405
2450
  body=await async_maybe_transform(
2406
2451
  {
2407
2452
  "command": command,
2453
+ "attach_stdin": attach_stdin,
2408
2454
  "shell_name": shell_name,
2409
2455
  },
2410
2456
  devbox_execute_sync_params.DevboxExecuteSyncParams,
@@ -2708,6 +2754,7 @@ class AsyncDevboxesResource(AsyncAPIResource):
2708
2754
  self,
2709
2755
  id: str,
2710
2756
  *,
2757
+ commit_message: Optional[str] | Omit = omit,
2711
2758
  metadata: Optional[Dict[str, str]] | Omit = omit,
2712
2759
  name: Optional[str] | Omit = omit,
2713
2760
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
@@ -2723,6 +2770,8 @@ class AsyncDevboxesResource(AsyncAPIResource):
2723
2770
  enable launching future Devboxes with the same disk state.
2724
2771
 
2725
2772
  Args:
2773
+ commit_message: (Optional) Commit message associated with the snapshot (max 1000 characters)
2774
+
2726
2775
  metadata: (Optional) Metadata used to describe the snapshot
2727
2776
 
2728
2777
  name: (Optional) A user specified name to give the snapshot
@@ -2745,6 +2794,7 @@ class AsyncDevboxesResource(AsyncAPIResource):
2745
2794
  f"/v1/devboxes/{id}/snapshot_disk",
2746
2795
  body=await async_maybe_transform(
2747
2796
  {
2797
+ "commit_message": commit_message,
2748
2798
  "metadata": metadata,
2749
2799
  "name": name,
2750
2800
  },
@@ -2764,6 +2814,7 @@ class AsyncDevboxesResource(AsyncAPIResource):
2764
2814
  self,
2765
2815
  id: str,
2766
2816
  *,
2817
+ commit_message: Optional[str] | Omit = omit,
2767
2818
  metadata: Optional[Dict[str, str]] | Omit = omit,
2768
2819
  name: Optional[str] | Omit = omit,
2769
2820
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
@@ -2780,6 +2831,8 @@ class AsyncDevboxesResource(AsyncAPIResource):
2780
2831
  monitored using the query endpoint.
2781
2832
 
2782
2833
  Args:
2834
+ commit_message: (Optional) Commit message associated with the snapshot (max 1000 characters)
2835
+
2783
2836
  metadata: (Optional) Metadata used to describe the snapshot
2784
2837
 
2785
2838
  name: (Optional) A user specified name to give the snapshot
@@ -2800,6 +2853,7 @@ class AsyncDevboxesResource(AsyncAPIResource):
2800
2853
  f"/v1/devboxes/{id}/snapshot_disk_async",
2801
2854
  body=await async_maybe_transform(
2802
2855
  {
2856
+ "commit_message": commit_message,
2803
2857
  "metadata": metadata,
2804
2858
  "name": name,
2805
2859
  },
@@ -2926,6 +2980,7 @@ class AsyncDevboxesResource(AsyncAPIResource):
2926
2980
  *,
2927
2981
  devbox_id: str,
2928
2982
  statuses: List[Literal["queued", "running", "completed"]],
2983
+ last_n: str | Omit = omit,
2929
2984
  timeout_seconds: Optional[int] | Omit = omit,
2930
2985
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
2931
2986
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -2944,6 +2999,8 @@ class AsyncDevboxesResource(AsyncAPIResource):
2944
2999
  provided. The command will be returned as soon as it reaches any of the provided
2945
3000
  statuses.
2946
3001
 
3002
+ last_n: Last n lines of standard error / standard out to return (default: 100)
3003
+
2947
3004
  timeout_seconds: (Optional) Timeout in seconds to wait for the status, up to 60 seconds. Defaults
2948
3005
  to 60 seconds.
2949
3006
 
@@ -2976,6 +3033,9 @@ class AsyncDevboxesResource(AsyncAPIResource):
2976
3033
  extra_body=extra_body,
2977
3034
  timeout=timeout,
2978
3035
  idempotency_key=idempotency_key,
3036
+ query=await async_maybe_transform(
3037
+ {"last_n": last_n}, devbox_wait_for_command_params.DevboxWaitForCommandParams
3038
+ ),
2979
3039
  ),
2980
3040
  cast_to=DevboxAsyncExecutionDetailView,
2981
3041
  )
@@ -49,6 +49,7 @@ class DiskSnapshotsResource(SyncAPIResource):
49
49
  self,
50
50
  id: str,
51
51
  *,
52
+ commit_message: Optional[str] | Omit = omit,
52
53
  metadata: Optional[Dict[str, str]] | Omit = omit,
53
54
  name: Optional[str] | Omit = omit,
54
55
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
@@ -65,6 +66,8 @@ class DiskSnapshotsResource(SyncAPIResource):
65
66
  replaced.
66
67
 
67
68
  Args:
69
+ commit_message: (Optional) Commit message associated with the snapshot (max 1000 characters)
70
+
68
71
  metadata: (Optional) Metadata used to describe the snapshot
69
72
 
70
73
  name: (Optional) A user specified name to give the snapshot
@@ -85,6 +88,7 @@ class DiskSnapshotsResource(SyncAPIResource):
85
88
  f"/v1/devboxes/disk_snapshots/{id}",
86
89
  body=maybe_transform(
87
90
  {
91
+ "commit_message": commit_message,
88
92
  "metadata": metadata,
89
93
  "name": name,
90
94
  },
@@ -260,6 +264,7 @@ class AsyncDiskSnapshotsResource(AsyncAPIResource):
260
264
  self,
261
265
  id: str,
262
266
  *,
267
+ commit_message: Optional[str] | Omit = omit,
263
268
  metadata: Optional[Dict[str, str]] | Omit = omit,
264
269
  name: Optional[str] | Omit = omit,
265
270
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
@@ -276,6 +281,8 @@ class AsyncDiskSnapshotsResource(AsyncAPIResource):
276
281
  replaced.
277
282
 
278
283
  Args:
284
+ commit_message: (Optional) Commit message associated with the snapshot (max 1000 characters)
285
+
279
286
  metadata: (Optional) Metadata used to describe the snapshot
280
287
 
281
288
  name: (Optional) A user specified name to give the snapshot
@@ -296,6 +303,7 @@ class AsyncDiskSnapshotsResource(AsyncAPIResource):
296
303
  f"/v1/devboxes/disk_snapshots/{id}",
297
304
  body=await async_maybe_transform(
298
305
  {
306
+ "commit_message": commit_message,
299
307
  "metadata": metadata,
300
308
  "name": name,
301
309
  },