runloop-api-client 1.32.0__tar.gz → 2.0.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 (490) hide show
  1. runloop_api_client-2.0.0/.release-please-manifest.json +3 -0
  2. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/CHANGELOG.md +45 -0
  3. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/CONTRIBUTING.md +12 -0
  4. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/PKG-INFO +2 -4
  5. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/README-SDK.md +43 -3
  6. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/README.md +1 -3
  7. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/api.md +3 -125
  8. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/pyproject.toml +1 -1
  9. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/release-please-config.json +7 -2
  10. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_client.py +0 -152
  11. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_version.py +1 -1
  12. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/pagination.py +0 -375
  13. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/__init__.py +0 -56
  14. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/axons/axons.py +26 -14
  15. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/devboxes/devboxes.py +8 -4
  16. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/devboxes/executions.py +12 -4
  17. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/gateway_configs.py +6 -6
  18. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/mcp_configs.py +4 -4
  19. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/network_policies.py +4 -4
  20. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/secrets.py +315 -21
  21. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/__init__.py +4 -38
  22. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/_types.py +1 -89
  23. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_.py +9 -181
  24. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_execution.py +33 -0
  25. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_secret.py +13 -7
  26. runloop_api_client-2.0.0/src/runloop_api_client/sdk/async_secret_by_id.py +44 -0
  27. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_storage_object.py +30 -5
  28. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/execution.py +33 -0
  29. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/secret.py +14 -8
  30. runloop_api_client-2.0.0/src/runloop_api_client/sdk/secret_by_id.py +44 -0
  31. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/storage_object.py +30 -5
  32. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/sync.py +9 -181
  33. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/__init__.py +1 -40
  34. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axon_view.py +3 -0
  35. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_create_params.py +15 -3
  36. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_enable_tunnel_params.py +5 -1
  37. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_view.py +1 -1
  38. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/gateway_config_create_params.py +1 -1
  39. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/gateway_config_update_params.py +1 -1
  40. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/gateway_config_view.py +1 -4
  41. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/mcp_config_create_params.py +1 -1
  42. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/mcp_config_update_params.py +1 -1
  43. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/mcp_config_view.py +1 -1
  44. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/network_policy_create_params.py +1 -1
  45. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/network_policy_view.py +1 -1
  46. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/object_view.py +7 -1
  47. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/scope_entry_view.py +0 -2
  48. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/scope_entry_view_param.py +0 -2
  49. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/secret_create_params.py +1 -1
  50. runloop_api_client-2.0.0/src/runloop_api_client/types/secret_update_by_id_params.py +16 -0
  51. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/secret_view.py +1 -4
  52. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/__init__.py +0 -1
  53. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/launch_parameters.py +1 -1
  54. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/__init__.py +0 -1
  55. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/launch_parameters.py +1 -1
  56. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_secrets.py +236 -0
  57. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/conftest.py +2 -89
  58. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/devbox/test_edge_cases.py +2 -2
  59. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_async_ops.py +17 -264
  60. runloop_api_client-2.0.0/tests/sdk/test_async_secret.py +47 -0
  61. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_async_storage_object.py +0 -28
  62. runloop_api_client-2.0.0/tests/sdk/test_execution_stdin_transport.py +86 -0
  63. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_ops.py +17 -250
  64. runloop_api_client-2.0.0/tests/sdk/test_secret.py +47 -0
  65. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_storage_object.py +0 -69
  66. runloop_api_client-2.0.0/tests/sdk/test_storage_upload_transport.py +204 -0
  67. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/README.md +1 -1
  68. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_async_devbox.py +16 -0
  69. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_async_sdk.py +0 -2
  70. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_async_secret.py +42 -47
  71. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_devbox.py +16 -0
  72. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_sdk.py +0 -2
  73. runloop_api_client-2.0.0/tests/smoketests/sdk/test_secret.py +125 -0
  74. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/uv.lock +1 -1
  75. runloop_api_client-1.32.0/.release-please-manifest.json +0 -3
  76. runloop_api_client-1.32.0/src/runloop_api_client/resources/benchmark_jobs.py +0 -412
  77. runloop_api_client-1.32.0/src/runloop_api_client/resources/benchmark_runs.py +0 -645
  78. runloop_api_client-1.32.0/src/runloop_api_client/resources/benchmarks.py +0 -1129
  79. runloop_api_client-1.32.0/src/runloop_api_client/resources/scenarios/__init__.py +0 -47
  80. runloop_api_client-1.32.0/src/runloop_api_client/resources/scenarios/runs.py +0 -991
  81. runloop_api_client-1.32.0/src/runloop_api_client/resources/scenarios/scenarios.py +0 -1253
  82. runloop_api_client-1.32.0/src/runloop_api_client/resources/scenarios/scorers.py +0 -527
  83. runloop_api_client-1.32.0/src/runloop_api_client/sdk/async_benchmark.py +0 -169
  84. runloop_api_client-1.32.0/src/runloop_api_client/sdk/async_benchmark_run.py +0 -127
  85. runloop_api_client-1.32.0/src/runloop_api_client/sdk/async_scenario.py +0 -118
  86. runloop_api_client-1.32.0/src/runloop_api_client/sdk/async_scenario_builder.py +0 -480
  87. runloop_api_client-1.32.0/src/runloop_api_client/sdk/async_scenario_run.py +0 -242
  88. runloop_api_client-1.32.0/src/runloop_api_client/sdk/async_scorer.py +0 -66
  89. runloop_api_client-1.32.0/src/runloop_api_client/sdk/benchmark.py +0 -167
  90. runloop_api_client-1.32.0/src/runloop_api_client/sdk/benchmark_run.py +0 -127
  91. runloop_api_client-1.32.0/src/runloop_api_client/sdk/scenario.py +0 -118
  92. runloop_api_client-1.32.0/src/runloop_api_client/sdk/scenario_builder.py +0 -480
  93. runloop_api_client-1.32.0/src/runloop_api_client/sdk/scenario_run.py +0 -242
  94. runloop_api_client-1.32.0/src/runloop_api_client/sdk/scorer.py +0 -66
  95. runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_create_params.py +0 -40
  96. runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_definitions_params.py +0 -15
  97. runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_job_create_params.py +0 -208
  98. runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_job_list_params.py +0 -27
  99. runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_job_list_view.py +0 -17
  100. runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_job_view.py +0 -335
  101. runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_list_params.py +0 -27
  102. runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_list_public_params.py +0 -27
  103. runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_run_list_params.py +0 -33
  104. runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_run_list_scenario_runs_params.py +0 -27
  105. runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_run_list_view.py +0 -17
  106. runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_run_view.py +0 -58
  107. runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_start_run_params.py +0 -29
  108. runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_update_params.py +0 -42
  109. runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_update_scenarios_params.py +0 -18
  110. runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_view.py +0 -56
  111. runloop_api_client-1.32.0/src/runloop_api_client/types/input_context.py +0 -19
  112. runloop_api_client-1.32.0/src/runloop_api_client/types/input_context_param.py +0 -20
  113. runloop_api_client-1.32.0/src/runloop_api_client/types/input_context_update_param.py +0 -16
  114. runloop_api_client-1.32.0/src/runloop_api_client/types/scenario_create_params.py +0 -59
  115. runloop_api_client-1.32.0/src/runloop_api_client/types/scenario_definition_list_view.py +0 -17
  116. runloop_api_client-1.32.0/src/runloop_api_client/types/scenario_environment.py +0 -33
  117. runloop_api_client-1.32.0/src/runloop_api_client/types/scenario_environment_param.py +0 -35
  118. runloop_api_client-1.32.0/src/runloop_api_client/types/scenario_list_params.py +0 -33
  119. runloop_api_client-1.32.0/src/runloop_api_client/types/scenario_list_public_params.py +0 -27
  120. runloop_api_client-1.32.0/src/runloop_api_client/types/scenario_run_list_view.py +0 -17
  121. runloop_api_client-1.32.0/src/runloop_api_client/types/scenario_run_view.py +0 -58
  122. runloop_api_client-1.32.0/src/runloop_api_client/types/scenario_start_run_params.py +0 -30
  123. runloop_api_client-1.32.0/src/runloop_api_client/types/scenario_update_params.py +0 -55
  124. runloop_api_client-1.32.0/src/runloop_api_client/types/scenario_view.py +0 -73
  125. runloop_api_client-1.32.0/src/runloop_api_client/types/scenarios/__init__.py +0 -12
  126. runloop_api_client-1.32.0/src/runloop_api_client/types/scenarios/run_list_params.py +0 -36
  127. runloop_api_client-1.32.0/src/runloop_api_client/types/scenarios/scorer_create_params.py +0 -18
  128. runloop_api_client-1.32.0/src/runloop_api_client/types/scenarios/scorer_create_response.py +0 -18
  129. runloop_api_client-1.32.0/src/runloop_api_client/types/scenarios/scorer_list_params.py +0 -24
  130. runloop_api_client-1.32.0/src/runloop_api_client/types/scenarios/scorer_list_response.py +0 -18
  131. runloop_api_client-1.32.0/src/runloop_api_client/types/scenarios/scorer_retrieve_response.py +0 -18
  132. runloop_api_client-1.32.0/src/runloop_api_client/types/scenarios/scorer_update_params.py +0 -18
  133. runloop_api_client-1.32.0/src/runloop_api_client/types/scenarios/scorer_update_response.py +0 -18
  134. runloop_api_client-1.32.0/src/runloop_api_client/types/scoring_contract.py +0 -17
  135. runloop_api_client-1.32.0/src/runloop_api_client/types/scoring_contract_param.py +0 -19
  136. runloop_api_client-1.32.0/src/runloop_api_client/types/scoring_contract_result_view.py +0 -20
  137. runloop_api_client-1.32.0/src/runloop_api_client/types/scoring_contract_update_param.py +0 -15
  138. runloop_api_client-1.32.0/src/runloop_api_client/types/scoring_function.py +0 -157
  139. runloop_api_client-1.32.0/src/runloop_api_client/types/scoring_function_param.py +0 -153
  140. runloop_api_client-1.32.0/src/runloop_api_client/types/scoring_function_result_view.py +0 -25
  141. runloop_api_client-1.32.0/src/runloop_api_client/types/shared/run_profile.py +0 -41
  142. runloop_api_client-1.32.0/src/runloop_api_client/types/shared_params/run_profile.py +0 -42
  143. runloop_api_client-1.32.0/tests/api_resources/scenarios/__init__.py +0 -1
  144. runloop_api_client-1.32.0/tests/api_resources/scenarios/test_runs.py +0 -527
  145. runloop_api_client-1.32.0/tests/api_resources/scenarios/test_scorers.py +0 -336
  146. runloop_api_client-1.32.0/tests/api_resources/test_benchmark_jobs.py +0 -247
  147. runloop_api_client-1.32.0/tests/api_resources/test_benchmark_runs.py +0 -432
  148. runloop_api_client-1.32.0/tests/api_resources/test_benchmarks.py +0 -803
  149. runloop_api_client-1.32.0/tests/api_resources/test_scenarios.py +0 -1012
  150. runloop_api_client-1.32.0/tests/sdk/test_async_benchmark.py +0 -130
  151. runloop_api_client-1.32.0/tests/sdk/test_async_benchmark_run.py +0 -120
  152. runloop_api_client-1.32.0/tests/sdk/test_async_scenario.py +0 -121
  153. runloop_api_client-1.32.0/tests/sdk/test_async_scenario_builder.py +0 -292
  154. runloop_api_client-1.32.0/tests/sdk/test_async_scenario_run.py +0 -162
  155. runloop_api_client-1.32.0/tests/sdk/test_async_scorer.py +0 -51
  156. runloop_api_client-1.32.0/tests/sdk/test_benchmark.py +0 -122
  157. runloop_api_client-1.32.0/tests/sdk/test_benchmark_run.py +0 -114
  158. runloop_api_client-1.32.0/tests/sdk/test_scenario.py +0 -121
  159. runloop_api_client-1.32.0/tests/sdk/test_scenario_builder.py +0 -287
  160. runloop_api_client-1.32.0/tests/sdk/test_scenario_run.py +0 -157
  161. runloop_api_client-1.32.0/tests/sdk/test_scorer.py +0 -51
  162. runloop_api_client-1.32.0/tests/smoketests/sdk/test_async_benchmark.py +0 -192
  163. runloop_api_client-1.32.0/tests/smoketests/sdk/test_async_scenario.py +0 -260
  164. runloop_api_client-1.32.0/tests/smoketests/sdk/test_async_scorer.py +0 -103
  165. runloop_api_client-1.32.0/tests/smoketests/sdk/test_benchmark.py +0 -190
  166. runloop_api_client-1.32.0/tests/smoketests/sdk/test_scenario.py +0 -259
  167. runloop_api_client-1.32.0/tests/smoketests/sdk/test_scorer.py +0 -103
  168. runloop_api_client-1.32.0/tests/smoketests/sdk/test_secret.py +0 -145
  169. runloop_api_client-1.32.0/tests/smoketests/test_scenarios_benchmarks.py +0 -82
  170. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/.gitignore +0 -0
  171. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/AGENTS.md +0 -0
  172. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/CLAUDE.md +0 -0
  173. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/EXAMPLES.md +0 -0
  174. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/LICENSE +0 -0
  175. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/SECURITY.md +0 -0
  176. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/bin/check-release-environment +0 -0
  177. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/bin/publish-pypi +0 -0
  178. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/examples/__init__.py +0 -0
  179. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/examples/_harness.py +0 -0
  180. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/examples/blueprint_with_build_context.py +0 -0
  181. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/examples/devbox_from_blueprint_lifecycle.py +0 -0
  182. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/examples/devbox_snapshot_resume.py +0 -0
  183. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/examples/devbox_snapshots.py +0 -0
  184. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/examples/devbox_tunnel.py +0 -0
  185. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/examples/example_types.py +0 -0
  186. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/examples/mcp_github_tools.py +0 -0
  187. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/examples/registry.py +0 -0
  188. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/examples/secrets_with_devbox.py +0 -0
  189. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/requirements-dev.lock +0 -0
  190. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop/lib/.keep +0 -0
  191. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/__init__.py +0 -0
  192. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_base_client.py +0 -0
  193. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_compat.py +0 -0
  194. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_constants.py +0 -0
  195. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_exceptions.py +0 -0
  196. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_files.py +0 -0
  197. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_models.py +0 -0
  198. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_qs.py +0 -0
  199. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_resource.py +0 -0
  200. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_response.py +0 -0
  201. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_streaming.py +0 -0
  202. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_types.py +0 -0
  203. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/__init__.py +0 -0
  204. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_compat.py +0 -0
  205. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_datetime_parse.py +0 -0
  206. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_json.py +0 -0
  207. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_logs.py +0 -0
  208. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_path.py +0 -0
  209. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_proxy.py +0 -0
  210. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_reflection.py +0 -0
  211. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_resources_proxy.py +0 -0
  212. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_streams.py +0 -0
  213. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_sync.py +0 -0
  214. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_transform.py +0 -0
  215. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_typing.py +0 -0
  216. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_utils.py +0 -0
  217. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_validation.py +0 -0
  218. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/lib/.keep +0 -0
  219. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/lib/__init__.py +0 -0
  220. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/lib/_ignore.py +0 -0
  221. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/lib/context_loader.py +0 -0
  222. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/lib/polling.py +0 -0
  223. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/lib/polling_async.py +0 -0
  224. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/lib/wait_for_status.py +0 -0
  225. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/py.typed +0 -0
  226. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/accounts.py +0 -0
  227. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/agents.py +0 -0
  228. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/apikeys.py +0 -0
  229. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/axons/__init__.py +0 -0
  230. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/axons/events.py +0 -0
  231. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/axons/sql.py +0 -0
  232. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/blueprints.py +0 -0
  233. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/devboxes/__init__.py +0 -0
  234. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/devboxes/disk_snapshots.py +0 -0
  235. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/devboxes/logs.py +0 -0
  236. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/objects.py +0 -0
  237. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/pty.py +0 -0
  238. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/restricted_keys.py +0 -0
  239. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/_helpers.py +0 -0
  240. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/agent.py +0 -0
  241. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_agent.py +0 -0
  242. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_axon.py +0 -0
  243. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_blueprint.py +0 -0
  244. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_devbox.py +0 -0
  245. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_execution_result.py +0 -0
  246. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_gateway_config.py +0 -0
  247. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_mcp_config.py +0 -0
  248. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_network_policy.py +0 -0
  249. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_snapshot.py +0 -0
  250. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/axon.py +0 -0
  251. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/blueprint.py +0 -0
  252. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/devbox.py +0 -0
  253. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/execution_result.py +0 -0
  254. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/gateway_config.py +0 -0
  255. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/mcp_config.py +0 -0
  256. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/network_policy.py +0 -0
  257. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/snapshot.py +0 -0
  258. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/account_view.py +0 -0
  259. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/agent_create_params.py +0 -0
  260. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/agent_devbox_counts_view.py +0 -0
  261. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/agent_list_params.py +0 -0
  262. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/agent_list_public_params.py +0 -0
  263. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/agent_list_view.py +0 -0
  264. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/agent_view.py +0 -0
  265. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/allowed_cidr.py +0 -0
  266. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/allowed_cidr_param.py +0 -0
  267. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/api_key_created_view.py +0 -0
  268. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/apikey_create_params.py +0 -0
  269. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axon_create_params.py +0 -0
  270. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axon_event_view.py +0 -0
  271. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axon_list_params.py +0 -0
  272. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axon_list_view.py +0 -0
  273. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axon_publish_params.py +0 -0
  274. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axon_subscribe_sse_params.py +0 -0
  275. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axon_update_params.py +0 -0
  276. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axons/__init__.py +0 -0
  277. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axons/axon_event_list_view.py +0 -0
  278. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axons/event_list_params.py +0 -0
  279. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axons/sql_batch_params.py +0 -0
  280. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axons/sql_batch_result_view.py +0 -0
  281. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axons/sql_column_meta_view.py +0 -0
  282. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axons/sql_query_params.py +0 -0
  283. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axons/sql_query_result_view.py +0 -0
  284. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axons/sql_result_meta_view.py +0 -0
  285. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axons/sql_statement_params.py +0 -0
  286. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axons/sql_step_error_view.py +0 -0
  287. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axons/sql_step_result_view.py +0 -0
  288. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/blueprint_build_log.py +0 -0
  289. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/blueprint_build_logs_list_view.py +0 -0
  290. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/blueprint_build_parameters.py +0 -0
  291. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/blueprint_create_params.py +0 -0
  292. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/blueprint_list_params.py +0 -0
  293. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/blueprint_list_public_params.py +0 -0
  294. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/blueprint_list_view.py +0 -0
  295. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/blueprint_preview_params.py +0 -0
  296. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/blueprint_preview_view.py +0 -0
  297. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/blueprint_view.py +0 -0
  298. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_async_execution_detail_view.py +0 -0
  299. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_create_gateway_token_params.py +0 -0
  300. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_create_mcp_token_params.py +0 -0
  301. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_create_ssh_key_response.py +0 -0
  302. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_download_file_params.py +0 -0
  303. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_eviction_event_view.py +0 -0
  304. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_execute_async_params.py +0 -0
  305. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_execute_params.py +0 -0
  306. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_execute_sync_params.py +0 -0
  307. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_execution_detail_view.py +0 -0
  308. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_list_disk_snapshots_params.py +0 -0
  309. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_list_params.py +0 -0
  310. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_list_view.py +0 -0
  311. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_read_file_contents_params.py +0 -0
  312. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_read_file_contents_response.py +0 -0
  313. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_resource_usage_view.py +0 -0
  314. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_send_std_in_result.py +0 -0
  315. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_shutdown_params.py +0 -0
  316. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_snapshot_disk_async_params.py +0 -0
  317. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_snapshot_disk_params.py +0 -0
  318. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_snapshot_list_view.py +0 -0
  319. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_snapshot_view.py +0 -0
  320. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_update_params.py +0 -0
  321. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_upload_file_params.py +0 -0
  322. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_wait_for_command_params.py +0 -0
  323. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_write_file_contents_params.py +0 -0
  324. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devboxes/__init__.py +0 -0
  325. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devboxes/devbox_logs_list_view.py +0 -0
  326. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devboxes/devbox_snapshot_async_status_view.py +0 -0
  327. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devboxes/disk_snapshot_list_params.py +0 -0
  328. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devboxes/disk_snapshot_update_params.py +0 -0
  329. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devboxes/execution_execute_async_params.py +0 -0
  330. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devboxes/execution_execute_sync_params.py +0 -0
  331. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devboxes/execution_kill_params.py +0 -0
  332. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devboxes/execution_retrieve_params.py +0 -0
  333. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devboxes/execution_send_std_in_params.py +0 -0
  334. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devboxes/execution_stream_stderr_updates_params.py +0 -0
  335. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devboxes/execution_stream_stdout_updates_params.py +0 -0
  336. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devboxes/execution_update_chunk.py +0 -0
  337. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devboxes/log_list_params.py +0 -0
  338. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/gateway_config_list_params.py +0 -0
  339. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/gateway_config_list_view.py +0 -0
  340. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/gateway_token_view.py +0 -0
  341. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/mcp_config_list_params.py +0 -0
  342. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/mcp_config_list_view.py +0 -0
  343. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/mcp_token_view.py +0 -0
  344. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/network_policy_list_params.py +0 -0
  345. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/network_policy_list_view.py +0 -0
  346. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/network_policy_update_params.py +0 -0
  347. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/object_create_params.py +0 -0
  348. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/object_download_params.py +0 -0
  349. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/object_download_url_view.py +0 -0
  350. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/object_list_params.py +0 -0
  351. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/object_list_public_params.py +0 -0
  352. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/object_list_view.py +0 -0
  353. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/port_rule.py +0 -0
  354. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/port_rule_param.py +0 -0
  355. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/pty_connect_params.py +0 -0
  356. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/pty_connect_view.py +0 -0
  357. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/pty_control_params.py +0 -0
  358. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/pty_control_result_view.py +0 -0
  359. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/pty_tunnel_view.py +0 -0
  360. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/publish_result_view.py +0 -0
  361. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/restricted_key_create_params.py +0 -0
  362. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/restricted_key_created_view.py +0 -0
  363. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/secret_list_params.py +0 -0
  364. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/secret_list_view.py +0 -0
  365. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/secret_update_params.py +0 -0
  366. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/after_idle.py +0 -0
  367. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/agent_mount.py +0 -0
  368. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/agent_source.py +0 -0
  369. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/auth_mechanism.py +0 -0
  370. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/broker_mount.py +0 -0
  371. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/code_mount_parameters.py +0 -0
  372. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/custom_header.py +0 -0
  373. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/lifecycle_configuration.py +0 -0
  374. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/lifecycle_hooks.py +0 -0
  375. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/mount.py +0 -0
  376. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/object_mount.py +0 -0
  377. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/resume_triggers.py +0 -0
  378. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/after_idle.py +0 -0
  379. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/agent_mount.py +0 -0
  380. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/agent_source.py +0 -0
  381. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/auth_mechanism.py +0 -0
  382. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/broker_mount.py +0 -0
  383. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/code_mount_parameters.py +0 -0
  384. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/custom_header.py +0 -0
  385. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/lifecycle_configuration.py +0 -0
  386. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/lifecycle_hooks.py +0 -0
  387. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/mount.py +0 -0
  388. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/object_mount.py +0 -0
  389. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/resume_triggers.py +0 -0
  390. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/tunnel_view.py +0 -0
  391. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/__init__.py +0 -0
  392. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/__init__.py +0 -0
  393. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/axons/__init__.py +0 -0
  394. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/axons/test_events.py +0 -0
  395. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/axons/test_sql.py +0 -0
  396. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/devboxes/__init__.py +0 -0
  397. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/devboxes/test_disk_snapshots.py +0 -0
  398. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/devboxes/test_executions.py +0 -0
  399. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/devboxes/test_logs.py +0 -0
  400. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_accounts.py +0 -0
  401. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_agents.py +0 -0
  402. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_apikeys.py +0 -0
  403. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_axons.py +0 -0
  404. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_blueprints.py +0 -0
  405. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_devboxes.py +0 -0
  406. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_gateway_configs.py +0 -0
  407. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_mcp_configs.py +0 -0
  408. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_network_policies.py +0 -0
  409. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_objects.py +0 -0
  410. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_pty.py +0 -0
  411. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_restricted_keys.py +0 -0
  412. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/conftest.py +0 -0
  413. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sample_file.txt +0 -0
  414. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/__init__.py +0 -0
  415. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/async_devbox/__init__.py +0 -0
  416. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/async_devbox/conftest.py +0 -0
  417. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/async_devbox/test_core.py +0 -0
  418. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/async_devbox/test_edge_cases.py +0 -0
  419. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/async_devbox/test_interfaces.py +0 -0
  420. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/async_devbox/test_streaming.py +0 -0
  421. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/devbox/__init__.py +0 -0
  422. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/devbox/conftest.py +0 -0
  423. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/devbox/test_core.py +0 -0
  424. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/devbox/test_interfaces.py +0 -0
  425. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/devbox/test_streaming.py +0 -0
  426. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_agent.py +0 -0
  427. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_async_agent.py +0 -0
  428. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_async_axon.py +0 -0
  429. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_async_blueprint.py +0 -0
  430. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_async_execution.py +0 -0
  431. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_async_execution_result.py +0 -0
  432. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_async_gateway_config.py +0 -0
  433. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_async_network_policy.py +0 -0
  434. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_async_snapshot.py +0 -0
  435. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_axon.py +0 -0
  436. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_blueprint.py +0 -0
  437. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_execution.py +0 -0
  438. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_execution_result.py +0 -0
  439. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_gateway_config.py +0 -0
  440. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_helpers.py +0 -0
  441. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_network_policy.py +0 -0
  442. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_snapshot.py +0 -0
  443. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/__init__.py +0 -0
  444. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/conftest.py +0 -0
  445. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/examples/__init__.py +0 -0
  446. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/examples/test_examples.py +0 -0
  447. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/README.md +0 -0
  448. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/__init__.py +0 -0
  449. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/conftest.py +0 -0
  450. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_agent.py +0 -0
  451. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_async_agent.py +0 -0
  452. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_async_axon.py +0 -0
  453. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_async_blueprint.py +0 -0
  454. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_async_gateway_config.py +0 -0
  455. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_async_network_policy.py +0 -0
  456. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_async_snapshot.py +0 -0
  457. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_async_storage_object.py +0 -0
  458. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_axon.py +0 -0
  459. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_blueprint.py +0 -0
  460. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_gateway_config.py +0 -0
  461. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_mcp_config.py +0 -0
  462. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_network_policy.py +0 -0
  463. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_snapshot.py +0 -0
  464. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_storage_object.py +0 -0
  465. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/test_blueprints.py +0 -0
  466. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/test_devboxes.py +0 -0
  467. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/test_executions.py +0 -0
  468. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/test_snapshots.py +0 -0
  469. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/utils.py +0 -0
  470. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_client.py +0 -0
  471. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_command_id.py +0 -0
  472. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_extract_files.py +0 -0
  473. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_files.py +0 -0
  474. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_h2_bulkhead_integration.py +0 -0
  475. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_models.py +0 -0
  476. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_polling.py +0 -0
  477. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_qs.py +0 -0
  478. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_required_args.py +0 -0
  479. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_response.py +0 -0
  480. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_shared_pool.py +0 -0
  481. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_streaming.py +0 -0
  482. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_transfer_client.py +0 -0
  483. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_transform.py +0 -0
  484. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_utils/test_context_loader.py +0 -0
  485. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_utils/test_datetime_parse.py +0 -0
  486. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_utils/test_json.py +0 -0
  487. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_utils/test_path.py +0 -0
  488. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_utils/test_proxy.py +0 -0
  489. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_utils/test_typing.py +0 -0
  490. {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/utils.py +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "2.0.0"
3
+ }
@@ -1,5 +1,50 @@
1
1
  # Changelog
2
2
 
3
+ ## [2.0.0](https://github.com/runloopai/api-client-python/compare/v1.32.0...v2.0.0) (2026-10-08)
4
+
5
+
6
+ ### ⚠ BREAKING CHANGES
7
+
8
+ * remove benchmark identities and shared provisioning behavior
9
+ * **api:** remove the benchmark and scenario APIs
10
+ * **sdk:** drop InputContextPreview
11
+ * **sdk:** drop custom edits to generated benchmark and scenario files
12
+ * **sdk:** remove hosted benchmark and scenario wrappers
13
+
14
+ ### Features
15
+
16
+ * **api:** remove the benchmark and scenario APIs ([fe3aca1](https://github.com/runloopai/api-client-python/commit/fe3aca1d53f2f5ad3dc48da321bbb0d01c7a03f7))
17
+ * implement Azure storage, runtime secrets, and service lifecycle coverage ([6d46b7b](https://github.com/runloopai/api-client-python/commit/6d46b7b58c770af8fe548cb270530cd083d0f5b4))
18
+ * remove benchmark identities and shared provisioning behavior ([9922030](https://github.com/runloopai/api-client-python/commit/9922030a5057e3b01c656eb1ab708d1cff4d41e8))
19
+ * **sdk:** add sync and async execution stdin helpers ([#15](https://github.com/runloopai/api-client-python/issues/15)) ([3388fd6](https://github.com/runloopai/api-client-python/commit/3388fd659e62a4fa61ac9b120b4047555600175c))
20
+ * **sdk:** remove hosted benchmark and scenario wrappers ([f14c4c2](https://github.com/runloopai/api-client-python/commit/f14c4c2aad5ec0e76a21538fac5fab58d08f1964))
21
+ * **secrets:** add ID endpoints and latest-name updates ([9e3d9bd](https://github.com/runloopai/api-client-python/commit/9e3d9bd2fffb506151ddd4281a307037dd4525b8))
22
+ * **secrets:** add sync and async exact ID handles ([#11](https://github.com/runloopai/api-client-python/issues/11)) ([a930959](https://github.com/runloopai/api-client-python/commit/a9309592d5ede888cd8222c60bc10087d9ff41af))
23
+
24
+
25
+ ### Bug Fixes
26
+
27
+ * **api:** allow CUSTOM_SIZE with 0.5 CPU cores ([4c0df1f](https://github.com/runloopai/api-client-python/commit/4c0df1f95fa7f4d1d10bb72b3ed274333139ef61))
28
+ * **api:** require a body when sending execution stdin ([0b5c51d](https://github.com/runloopai/api-client-python/commit/0b5c51d9037d51e31e8bacbd24943bee1ad69c72))
29
+ * **axon:** keep deleted axons readable and reject writes ([c95f902](https://github.com/runloopai/api-client-python/commit/c95f902f58844cc879c8e2a65d7aea7d6aa9ffdd))
30
+ * **mux:** return client errors for malformed entity ids ([aff1b73](https://github.com/runloopai/api-client-python/commit/aff1b7331d9acac55eab9bb304cb8fcee129d1a0))
31
+ * **mux:** validate scenario custom scorer references ([a3b50f5](https://github.com/runloopai/api-client-python/commit/a3b50f5b6e42753d497686818a72f484b0987811))
32
+ * **release:** keep the Python lockfile version consistent ([#12](https://github.com/runloopai/api-client-python/issues/12)) ([0369ef5](https://github.com/runloopai/api-client-python/commit/0369ef5d0cd1dceb619f1ad5fdf8b6fa460b76c9))
33
+ * require scoped handles in backend workflows ([e666db1](https://github.com/runloopai/api-client-python/commit/e666db1d07eaac7d39bc66368a4cdd9a16b74e19))
34
+ * **sdk:** drop custom edits to generated benchmark and scenario files ([a01ed98](https://github.com/runloopai/api-client-python/commit/a01ed98a7eedc32834528923a246450be3839745))
35
+ * **sdk:** drop InputContextPreview ([ed06423](https://github.com/runloopai/api-client-python/commit/ed064233c4b228b2a30b846414e22a9ca95ac91f))
36
+ * **storage:** preserve signed upload headers and isolate credentials ([#13](https://github.com/runloopai/api-client-python/issues/13)) ([386bd06](https://github.com/runloopai/api-client-python/commit/386bd06fc4dd5738f486a1fd808ef2fb6f3261eb))
37
+
38
+
39
+ ### Chores
40
+
41
+ * **security:** Improve security docs and tighten JWT audience ([53adee2](https://github.com/runloopai/api-client-python/commit/53adee2578b0040853a9d1a13e8c14b48b9738a8))
42
+
43
+
44
+ ### Documentation
45
+
46
+ * **sdk:** clarify that axon lists include deleted entries ([#14](https://github.com/runloopai/api-client-python/issues/14)) ([b9cdcc7](https://github.com/runloopai/api-client-python/commit/b9cdcc75fe73aa0543a31a0f9c5c1eafe923fdf5))
47
+
3
48
  ## [1.32.0](https://github.com/runloopai/api-client-python/compare/v1.31.0...v1.32.0) (2026-09-08)
4
49
 
5
50
 
@@ -150,6 +150,18 @@ $ ./scripts/format
150
150
 
151
151
  ## Publishing and releases
152
152
 
153
+ The checked-in `uv.lock` must match `pyproject.toml` before dependency installation.
154
+ CI checks this with its pinned uv version (0.10.2). Refresh with that version of
155
+ `uv lock`, without upgrading dependencies, when changing package metadata.
156
+
157
+ Release Please updates the editable root package in `uv.lock` through its TOML
158
+ extra-file updater. The name filter uses `name.value` because the pinned
159
+ Release Please 17.3.0 parser represents TOML strings as tagged values. When upgrading
160
+ the release action, verify a simulated version bump changes only the root package's
161
+ version and that `uv lock --check` still succeeds; never target a positional package
162
+ index or apply a version replacement to all dependencies.
163
+
164
+
153
165
  Changes made to this repository via the automated release PR pipeline should publish to PyPI automatically. If
154
166
  the changes aren't made through the automated pipeline, you may want to make releases manually.
155
167
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: runloop_api_client
3
- Version: 1.32.0
3
+ Version: 2.0.0
4
4
  Summary: Official Python SDK for Runloop — secure Linux sandboxes (Devboxes) where AI agents run code, edit files, and expose ports
5
5
  Project-URL: Homepage, https://runloop.ai
6
6
  Project-URL: Repository, https://github.com/runloopai/api-client-python
@@ -58,8 +58,6 @@ Why teams pick Runloop:
58
58
  instead of installing tooling every run.
59
59
  - **Ready for production.** Secrets injection, AI gateways, network policies, and VPC deployment are
60
60
  part of the platform.
61
- - **Measurable.** Built-in benchmarks and evaluations score agent runs so you can tell whether a
62
- change actually helped.
63
61
 
64
62
  ## Installation
65
63
 
@@ -90,7 +88,7 @@ with runloop.devbox.create(name="my-devbox") as devbox:
90
88
 
91
89
  ## Documentation
92
90
 
93
- - [Platform documentation](https://docs.runloop.ai) — devboxes, blueprints, snapshots, tunnels, agents, benchmarks
91
+ - [Platform documentation](https://docs.runloop.ai) — devboxes, blueprints, snapshots, tunnels, agents
94
92
  - [`RunloopSDK` reference](README-SDK.md) — the high-level, object-oriented Python interface
95
93
  - [api.md](https://github.com/runloopai/api-client-python/blob/main/api.md) — the full generated REST surface
96
94
  - [examples/](examples) — runnable end-to-end scripts
@@ -10,6 +10,7 @@ The `RunloopSDK` builds on top of the underlying REST client and provides a Pyth
10
10
  - [Core Concepts](#core-concepts)
11
11
  - [RunloopSDK](#runloopsdk)
12
12
  - [Available Resources](#available-resources)
13
+ - [Secrets: names and exact IDs](#secrets-names-and-exact-ids)
13
14
  - [Devbox](#devbox)
14
15
  - [Command Execution](#command-execution)
15
16
  - [Execution Management](#execution-management)
@@ -122,15 +123,26 @@ The SDK provides object-oriented interfaces for all major Runloop resources:
122
123
  - **`runloop.storage_object`** - Storage object management (upload, download, list objects)
123
124
  - **`runloop.agent`** - Agent management (create, list agents from npm/pip/git)
124
125
  - **`runloop.axon`** - [Beta] Axon management (create, publish events, subscribe to SSE streams, SQL queries)
125
- - **`runloop.scenario`** - Scenario management (list scenarios, start runs)
126
- - **`runloop.scorer`** - Scorer management (create, list, update)
127
- - **`runloop.benchmark`** - Benchmark management (create, list, run benchmarks)
128
126
  - **`runloop.network_policy`** - Network policy management (create, list, update egress rules)
129
127
  - **`runloop.gateway_config`** - Gateway config management (create, list API proxy configurations)
130
128
  - **`runloop.mcp_config`** - MCP config management (create, list MCP server configurations)
131
129
  - **`runloop.secret`** - Secret management (create, update, list, delete encrypted key-value pairs)
132
130
  - **`runloop.api`** - Direct access to the underlying REST API client
133
131
 
132
+ ### Secrets: names and exact IDs
133
+
134
+ `Secret` / `AsyncSecret` objects from `create()`, `list()`, and `from_name()` always operate by name, even when they carry a captured `.id`. Use a separate `SecretById` / `AsyncSecretById` handle for one exact row:
135
+
136
+ ```python
137
+ created = runloop.secret.create(name="API_TOKEN", value="synthetic-example")
138
+ assert created.id is not None
139
+ exact = runloop.secret.from_id(created.id) # Lazy; never falls back to a name.
140
+ exact.update("synthetic-rotated") # Returns SecretView, as do get_info() and delete().
141
+ exact.delete() # Deletes only this row.
142
+ ```
143
+
144
+ For `AsyncRunloopSDK`, await the operations but not `from_id()`. The handle types are exported from `runloop_api_client.sdk`. ID handles have `.id`, not `.name`; use their instance methods rather than name-only manager helpers. Environment-secret maps still take names; pass `exact.id` explicitly for an ID-based gateway/MCP binding. Name reads/updates select the greatest ID; name deletion removes selected matches nonatomically. IDs identify mutable rows, not value versions, and existing retries can replay writes. Rotation does not rewrite running devbox environments or issued tokens. Avoid debug request logging with real credentials.
145
+
134
146
  ### Devbox
135
147
 
136
148
  Object-oriented interface for working with devboxes. Created via `runloop.devbox.create()`, `runloop.devbox.create_from_blueprint_id()`, `runloop.devbox.create_from_blueprint_name()`, `runloop.devbox.create_from_snapshot()`, or `runloop.devbox.from_id()`:
@@ -221,6 +233,23 @@ print("Errors:", result.stderr())
221
233
  execution.kill()
222
234
  ```
223
235
 
236
+ To send input, start the execution with stdin attached:
237
+
238
+ ```python
239
+ execution = devbox.cmd.exec_async("cat", attach_stdin=True)
240
+ execution.send_std_in("first\n")
241
+ execution.send_std_in("second\n")
242
+ execution.close_std_in()
243
+ result = execution.result()
244
+ assert result.stdout() == "first\nsecond\n"
245
+ ```
246
+
247
+ The async SDK exposes the same helpers with `await`. Send nonempty text, finish each
248
+ send before the next, and wait for pending sends before closing stdin. Concurrent
249
+ calls are not serialized. These helpers preserve the generated client's retry policy;
250
+ a retry after an ambiguous connection failure can replay input (not exactly-once
251
+ execution).
252
+
224
253
  **Key methods:**
225
254
 
226
255
  - `execution.get_state()` - Get current execution state (status, exit_code, etc.)
@@ -556,6 +585,17 @@ snapshot.delete()
556
585
 
557
586
  ### StorageObject
558
587
 
588
+ Uploads retain the create response's signed URL **and** required headers (including
589
+ Azure's `x-ms-blob-type`). All upload helpers use those instructions before marking
590
+ the object complete. Treat both as credentials; retrieval does not refresh them.
591
+
592
+ Signed uploads reuse the configured HTTP transport but exclude client-level default
593
+ headers, cookies, and authentication. Custom HTTP transports and event hooks must
594
+ not add API credentials to storage requests. Redirects and SDK-level upload retries
595
+ are disabled. Upload exception messages omit signed credentials and storage response
596
+ bodies; HTTPX request/response objects and third-party debug logging can still contain
597
+ sensitive data and must not be logged indiscriminately.
598
+
559
599
  Object-oriented interface for working with storage objects. Created via `runloop.storage_object.create()` or `runloop.storage_object.from_id()`:
560
600
 
561
601
  ```python
@@ -18,8 +18,6 @@ Why teams pick Runloop:
18
18
  instead of installing tooling every run.
19
19
  - **Ready for production.** Secrets injection, AI gateways, network policies, and VPC deployment are
20
20
  part of the platform.
21
- - **Measurable.** Built-in benchmarks and evaluations score agent runs so you can tell whether a
22
- change actually helped.
23
21
 
24
22
  ## Installation
25
23
 
@@ -50,7 +48,7 @@ with runloop.devbox.create(name="my-devbox") as devbox:
50
48
 
51
49
  ## Documentation
52
50
 
53
- - [Platform documentation](https://docs.runloop.ai) — devboxes, blueprints, snapshots, tunnels, agents, benchmarks
51
+ - [Platform documentation](https://docs.runloop.ai) — devboxes, blueprints, snapshots, tunnels, agents
54
52
  - [`RunloopSDK` reference](README-SDK.md) — the high-level, object-oriented Python interface
55
53
  - [api.md](https://github.com/runloopai/api-client-python/blob/main/api.md) — the full generated REST surface
56
54
  - [examples/](examples) — runnable end-to-end scripts
@@ -15,7 +15,6 @@ from runloop_api_client.types import (
15
15
  Mount,
16
16
  ObjectMount,
17
17
  ResumeTriggers,
18
- RunProfile,
19
18
  )
20
19
  ```
21
20
 
@@ -31,66 +30,6 @@ Methods:
31
30
 
32
31
  - <code title="get /v1/accounts/me">client.accounts.<a href="./src/runloop_api_client/resources/accounts.py">me</a>() -> <a href="./src/runloop_api_client/types/account_view.py">AccountView</a></code>
33
32
 
34
- # Benchmarks
35
-
36
- Types:
37
-
38
- ```python
39
- from runloop_api_client.types import (
40
- BenchmarkCreateParameters,
41
- BenchmarkScenarioUpdateParameters,
42
- BenchmarkUpdateParameters,
43
- BenchmarkView,
44
- ScenarioDefinitionListView,
45
- StartBenchmarkRunParameters,
46
- )
47
- ```
48
-
49
- Methods:
50
-
51
- - <code title="post /v1/benchmarks">client.benchmarks.<a href="./src/runloop_api_client/resources/benchmarks.py">create</a>(\*\*<a href="src/runloop_api_client/types/benchmark_create_params.py">params</a>) -> <a href="./src/runloop_api_client/types/benchmark_view.py">BenchmarkView</a></code>
52
- - <code title="get /v1/benchmarks/{id}">client.benchmarks.<a href="./src/runloop_api_client/resources/benchmarks.py">retrieve</a>(id) -> <a href="./src/runloop_api_client/types/benchmark_view.py">BenchmarkView</a></code>
53
- - <code title="post /v1/benchmarks/{id}">client.benchmarks.<a href="./src/runloop_api_client/resources/benchmarks.py">update</a>(id, \*\*<a href="src/runloop_api_client/types/benchmark_update_params.py">params</a>) -> <a href="./src/runloop_api_client/types/benchmark_view.py">BenchmarkView</a></code>
54
- - <code title="get /v1/benchmarks">client.benchmarks.<a href="./src/runloop_api_client/resources/benchmarks.py">list</a>(\*\*<a href="src/runloop_api_client/types/benchmark_list_params.py">params</a>) -> <a href="./src/runloop_api_client/types/benchmark_view.py">SyncBenchmarksCursorIDPage[BenchmarkView]</a></code>
55
- - <code title="get /v1/benchmarks/{id}/definitions">client.benchmarks.<a href="./src/runloop_api_client/resources/benchmarks.py">definitions</a>(id, \*\*<a href="src/runloop_api_client/types/benchmark_definitions_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenario_definition_list_view.py">ScenarioDefinitionListView</a></code>
56
- - <code title="get /v1/benchmarks/list_public">client.benchmarks.<a href="./src/runloop_api_client/resources/benchmarks.py">list_public</a>(\*\*<a href="src/runloop_api_client/types/benchmark_list_public_params.py">params</a>) -> <a href="./src/runloop_api_client/types/benchmark_view.py">SyncBenchmarksCursorIDPage[BenchmarkView]</a></code>
57
- - <code title="post /v1/benchmarks/start_run">client.benchmarks.<a href="./src/runloop_api_client/resources/benchmarks.py">start_run</a>(\*\*<a href="src/runloop_api_client/types/benchmark_start_run_params.py">params</a>) -> <a href="./src/runloop_api_client/types/benchmark_run_view.py">BenchmarkRunView</a></code>
58
- - <code title="post /v1/benchmarks/{id}/scenarios">client.benchmarks.<a href="./src/runloop_api_client/resources/benchmarks.py">update_scenarios</a>(id, \*\*<a href="src/runloop_api_client/types/benchmark_update_scenarios_params.py">params</a>) -> <a href="./src/runloop_api_client/types/benchmark_view.py">BenchmarkView</a></code>
59
-
60
- # BenchmarkRuns
61
-
62
- Types:
63
-
64
- ```python
65
- from runloop_api_client.types import BenchmarkRunListView, BenchmarkRunView
66
- ```
67
-
68
- Methods:
69
-
70
- - <code title="get /v1/benchmark_runs/{id}">client.benchmark_runs.<a href="./src/runloop_api_client/resources/benchmark_runs.py">retrieve</a>(id) -> <a href="./src/runloop_api_client/types/benchmark_run_view.py">BenchmarkRunView</a></code>
71
- - <code title="get /v1/benchmark_runs">client.benchmark_runs.<a href="./src/runloop_api_client/resources/benchmark_runs.py">list</a>(\*\*<a href="src/runloop_api_client/types/benchmark_run_list_params.py">params</a>) -> <a href="./src/runloop_api_client/types/benchmark_run_view.py">SyncBenchmarkRunsCursorIDPage[BenchmarkRunView]</a></code>
72
- - <code title="post /v1/benchmark_runs/{id}/cancel">client.benchmark_runs.<a href="./src/runloop_api_client/resources/benchmark_runs.py">cancel</a>(id) -> <a href="./src/runloop_api_client/types/benchmark_run_view.py">BenchmarkRunView</a></code>
73
- - <code title="post /v1/benchmark_runs/{id}/complete">client.benchmark_runs.<a href="./src/runloop_api_client/resources/benchmark_runs.py">complete</a>(id) -> <a href="./src/runloop_api_client/types/benchmark_run_view.py">BenchmarkRunView</a></code>
74
- - <code title="get /v1/benchmark_runs/{id}/scenario_runs">client.benchmark_runs.<a href="./src/runloop_api_client/resources/benchmark_runs.py">list_scenario_runs</a>(id, \*\*<a href="src/runloop_api_client/types/benchmark_run_list_scenario_runs_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenario_run_view.py">SyncBenchmarkRunsCursorIDPage[ScenarioRunView]</a></code>
75
-
76
- # BenchmarkJobs
77
-
78
- Types:
79
-
80
- ```python
81
- from runloop_api_client.types import (
82
- BenchmarkJobCreateParameters,
83
- BenchmarkJobListView,
84
- BenchmarkJobView,
85
- )
86
- ```
87
-
88
- Methods:
89
-
90
- - <code title="post /v1/benchmark_jobs">client.benchmark_jobs.<a href="./src/runloop_api_client/resources/benchmark_jobs.py">create</a>(\*\*<a href="src/runloop_api_client/types/benchmark_job_create_params.py">params</a>) -> <a href="./src/runloop_api_client/types/benchmark_job_view.py">BenchmarkJobView</a></code>
91
- - <code title="get /v1/benchmark_jobs/{id}">client.benchmark_jobs.<a href="./src/runloop_api_client/resources/benchmark_jobs.py">retrieve</a>(id) -> <a href="./src/runloop_api_client/types/benchmark_job_view.py">BenchmarkJobView</a></code>
92
- - <code title="get /v1/benchmark_jobs">client.benchmark_jobs.<a href="./src/runloop_api_client/resources/benchmark_jobs.py">list</a>(\*\*<a href="src/runloop_api_client/types/benchmark_job_list_params.py">params</a>) -> <a href="./src/runloop_api_client/types/benchmark_job_list_view.py">BenchmarkJobListView</a></code>
93
-
94
33
  # Agents
95
34
 
96
35
  Types:
@@ -316,70 +255,6 @@ Methods:
316
255
  - <code title="get /pty/{session_name}">client.pty.<a href="./src/runloop_api_client/resources/pty.py">connect</a>(session_name, \*\*<a href="src/runloop_api_client/types/pty_connect_params.py">params</a>) -> <a href="./src/runloop_api_client/types/pty_connect_view.py">PtyConnectView</a></code>
317
256
  - <code title="post /pty/{session_name}/control">client.pty.<a href="./src/runloop_api_client/resources/pty.py">control</a>(session_name, \*\*<a href="src/runloop_api_client/types/pty_control_params.py">params</a>) -> <a href="./src/runloop_api_client/types/pty_control_result_view.py">PtyControlResultView</a></code>
318
257
 
319
- # Scenarios
320
-
321
- Types:
322
-
323
- ```python
324
- from runloop_api_client.types import (
325
- InputContext,
326
- InputContextUpdate,
327
- ScenarioCreateParameters,
328
- ScenarioEnvironment,
329
- ScenarioRunListView,
330
- ScenarioRunView,
331
- ScenarioUpdateParameters,
332
- ScenarioView,
333
- ScoringContract,
334
- ScoringContractResultView,
335
- ScoringContractUpdate,
336
- ScoringFunction,
337
- ScoringFunctionResultView,
338
- StartScenarioRunParameters,
339
- )
340
- ```
341
-
342
- Methods:
343
-
344
- - <code title="post /v1/scenarios">client.scenarios.<a href="./src/runloop_api_client/resources/scenarios/scenarios.py">create</a>(\*\*<a href="src/runloop_api_client/types/scenario_create_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenario_view.py">ScenarioView</a></code>
345
- - <code title="get /v1/scenarios/{id}">client.scenarios.<a href="./src/runloop_api_client/resources/scenarios/scenarios.py">retrieve</a>(id) -> <a href="./src/runloop_api_client/types/scenario_view.py">ScenarioView</a></code>
346
- - <code title="post /v1/scenarios/{id}">client.scenarios.<a href="./src/runloop_api_client/resources/scenarios/scenarios.py">update</a>(id, \*\*<a href="src/runloop_api_client/types/scenario_update_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenario_view.py">ScenarioView</a></code>
347
- - <code title="get /v1/scenarios">client.scenarios.<a href="./src/runloop_api_client/resources/scenarios/scenarios.py">list</a>(\*\*<a href="src/runloop_api_client/types/scenario_list_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenario_view.py">SyncScenariosCursorIDPage[ScenarioView]</a></code>
348
- - <code title="post /v1/scenarios/{id}/archive">client.scenarios.<a href="./src/runloop_api_client/resources/scenarios/scenarios.py">archive</a>(id) -> <a href="./src/runloop_api_client/types/scenario_view.py">ScenarioView</a></code>
349
- - <code title="get /v1/scenarios/list_public">client.scenarios.<a href="./src/runloop_api_client/resources/scenarios/scenarios.py">list_public</a>(\*\*<a href="src/runloop_api_client/types/scenario_list_public_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenario_view.py">SyncScenariosCursorIDPage[ScenarioView]</a></code>
350
- - <code title="post /v1/scenarios/start_run">client.scenarios.<a href="./src/runloop_api_client/resources/scenarios/scenarios.py">start_run</a>(\*\*<a href="src/runloop_api_client/types/scenario_start_run_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenario_run_view.py">ScenarioRunView</a></code>
351
-
352
- ## Runs
353
-
354
- Methods:
355
-
356
- - <code title="get /v1/scenarios/runs/{id}">client.scenarios.runs.<a href="./src/runloop_api_client/resources/scenarios/runs.py">retrieve</a>(id) -> <a href="./src/runloop_api_client/types/scenario_run_view.py">ScenarioRunView</a></code>
357
- - <code title="get /v1/scenarios/runs">client.scenarios.runs.<a href="./src/runloop_api_client/resources/scenarios/runs.py">list</a>(\*\*<a href="src/runloop_api_client/types/scenarios/run_list_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenario_run_view.py">SyncBenchmarkRunsCursorIDPage[ScenarioRunView]</a></code>
358
- - <code title="post /v1/scenarios/runs/{id}/cancel">client.scenarios.runs.<a href="./src/runloop_api_client/resources/scenarios/runs.py">cancel</a>(id) -> <a href="./src/runloop_api_client/types/scenario_run_view.py">ScenarioRunView</a></code>
359
- - <code title="post /v1/scenarios/runs/{id}/complete">client.scenarios.runs.<a href="./src/runloop_api_client/resources/scenarios/runs.py">complete</a>(id) -> <a href="./src/runloop_api_client/types/scenario_run_view.py">ScenarioRunView</a></code>
360
- - <code title="post /v1/scenarios/runs/{id}/download_logs">client.scenarios.runs.<a href="./src/runloop_api_client/resources/scenarios/runs.py">download_logs</a>(id) -> BinaryAPIResponse</code>
361
- - <code title="post /v1/scenarios/runs/{id}/score">client.scenarios.runs.<a href="./src/runloop_api_client/resources/scenarios/runs.py">score</a>(id) -> <a href="./src/runloop_api_client/types/scenario_run_view.py">ScenarioRunView</a></code>
362
-
363
- ## Scorers
364
-
365
- Types:
366
-
367
- ```python
368
- from runloop_api_client.types.scenarios import (
369
- ScorerCreateResponse,
370
- ScorerRetrieveResponse,
371
- ScorerUpdateResponse,
372
- ScorerListResponse,
373
- )
374
- ```
375
-
376
- Methods:
377
-
378
- - <code title="post /v1/scenarios/scorers">client.scenarios.scorers.<a href="./src/runloop_api_client/resources/scenarios/scorers.py">create</a>(\*\*<a href="src/runloop_api_client/types/scenarios/scorer_create_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenarios/scorer_create_response.py">ScorerCreateResponse</a></code>
379
- - <code title="get /v1/scenarios/scorers/{id}">client.scenarios.scorers.<a href="./src/runloop_api_client/resources/scenarios/scorers.py">retrieve</a>(id) -> <a href="./src/runloop_api_client/types/scenarios/scorer_retrieve_response.py">ScorerRetrieveResponse</a></code>
380
- - <code title="post /v1/scenarios/scorers/{id}">client.scenarios.scorers.<a href="./src/runloop_api_client/resources/scenarios/scorers.py">update</a>(id, \*\*<a href="src/runloop_api_client/types/scenarios/scorer_update_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenarios/scorer_update_response.py">ScorerUpdateResponse</a></code>
381
- - <code title="get /v1/scenarios/scorers">client.scenarios.scorers.<a href="./src/runloop_api_client/resources/scenarios/scorers.py">list</a>(\*\*<a href="src/runloop_api_client/types/scenarios/scorer_list_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenarios/scorer_list_response.py">SyncScenarioScorersCursorIDPage[ScorerListResponse]</a></code>
382
-
383
258
  # Objects
384
259
 
385
260
  Types:
@@ -423,6 +298,9 @@ Methods:
423
298
  - <code title="post /v1/secrets/{name}">client.secrets.<a href="./src/runloop_api_client/resources/secrets.py">update</a>(name, \*\*<a href="src/runloop_api_client/types/secret_update_params.py">params</a>) -> <a href="./src/runloop_api_client/types/secret_view.py">SecretView</a></code>
424
299
  - <code title="get /v1/secrets">client.secrets.<a href="./src/runloop_api_client/resources/secrets.py">list</a>(\*\*<a href="src/runloop_api_client/types/secret_list_params.py">params</a>) -> <a href="./src/runloop_api_client/types/secret_list_view.py">SecretListView</a></code>
425
300
  - <code title="post /v1/secrets/{name}/delete">client.secrets.<a href="./src/runloop_api_client/resources/secrets.py">delete</a>(name) -> <a href="./src/runloop_api_client/types/secret_view.py">SecretView</a></code>
301
+ - <code title="post /v1/secrets/id/{id}/delete">client.secrets.<a href="./src/runloop_api_client/resources/secrets.py">delete_by_id</a>(id) -> <a href="./src/runloop_api_client/types/secret_view.py">SecretView</a></code>
302
+ - <code title="get /v1/secrets/id/{id}">client.secrets.<a href="./src/runloop_api_client/resources/secrets.py">retrieve_by_id</a>(id) -> <a href="./src/runloop_api_client/types/secret_view.py">SecretView</a></code>
303
+ - <code title="post /v1/secrets/id/{id}/update">client.secrets.<a href="./src/runloop_api_client/resources/secrets.py">update_by_id</a>(id, \*\*<a href="src/runloop_api_client/types/secret_update_by_id_params.py">params</a>) -> <a href="./src/runloop_api_client/types/secret_view.py">SecretView</a></code>
426
304
 
427
305
  # NetworkPolicies
428
306
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "runloop_api_client"
3
- version = "1.32.0"
3
+ version = "2.0.0"
4
4
  description = "Official Python SDK for Runloop — secure Linux sandboxes (Devboxes) where AI agents run code, edit files, and expose ports"
5
5
  dynamic = ["readme"]
6
6
  keywords = [
@@ -61,6 +61,11 @@
61
61
  ],
62
62
  "release-type": "python",
63
63
  "extra-files": [
64
- "src/runloop_api_client/_version.py"
64
+ "src/runloop_api_client/_version.py",
65
+ {
66
+ "type": "toml",
67
+ "path": "uv.lock",
68
+ "jsonpath": "$.package[?(@.name.value == \"runloop-api-client\")].version"
69
+ }
65
70
  ]
66
- }
71
+ }
@@ -45,12 +45,8 @@ if TYPE_CHECKING:
45
45
  secrets,
46
46
  accounts,
47
47
  devboxes,
48
- scenarios,
49
- benchmarks,
50
48
  blueprints,
51
49
  mcp_configs,
52
- benchmark_jobs,
53
- benchmark_runs,
54
50
  gateway_configs,
55
51
  restricted_keys,
56
52
  network_policies,
@@ -61,17 +57,13 @@ if TYPE_CHECKING:
61
57
  from .resources.objects import ObjectsResource, AsyncObjectsResource
62
58
  from .resources.secrets import SecretsResource, AsyncSecretsResource
63
59
  from .resources.accounts import AccountsResource, AsyncAccountsResource
64
- from .resources.benchmarks import BenchmarksResource, AsyncBenchmarksResource
65
60
  from .resources.blueprints import BlueprintsResource, AsyncBlueprintsResource
66
61
  from .resources.axons.axons import AxonsResource, AsyncAxonsResource
67
62
  from .resources.mcp_configs import McpConfigsResource, AsyncMcpConfigsResource
68
- from .resources.benchmark_jobs import BenchmarkJobsResource, AsyncBenchmarkJobsResource
69
- from .resources.benchmark_runs import BenchmarkRunsResource, AsyncBenchmarkRunsResource
70
63
  from .resources.gateway_configs import GatewayConfigsResource, AsyncGatewayConfigsResource
71
64
  from .resources.restricted_keys import RestrictedKeysResource, AsyncRestrictedKeysResource
72
65
  from .resources.network_policies import NetworkPoliciesResource, AsyncNetworkPoliciesResource
73
66
  from .resources.devboxes.devboxes import DevboxesResource, AsyncDevboxesResource
74
- from .resources.scenarios.scenarios import ScenariosResource, AsyncScenariosResource
75
67
 
76
68
  __all__ = ["Timeout", "Transport", "ProxiesTypes", "RequestOptions", "Runloop", "AsyncRunloop", "Client", "AsyncClient"]
77
69
 
@@ -161,24 +153,6 @@ class Runloop(SyncAPIClient):
161
153
 
162
154
  return AccountsResource(self)
163
155
 
164
- @cached_property
165
- def benchmarks(self) -> BenchmarksResource:
166
- from .resources.benchmarks import BenchmarksResource
167
-
168
- return BenchmarksResource(self)
169
-
170
- @cached_property
171
- def benchmark_runs(self) -> BenchmarkRunsResource:
172
- from .resources.benchmark_runs import BenchmarkRunsResource
173
-
174
- return BenchmarkRunsResource(self)
175
-
176
- @cached_property
177
- def benchmark_jobs(self) -> BenchmarkJobsResource:
178
- from .resources.benchmark_jobs import BenchmarkJobsResource
179
-
180
- return BenchmarkJobsResource(self)
181
-
182
156
  @cached_property
183
157
  def agents(self) -> AgentsResource:
184
158
  from .resources.agents import AgentsResource
@@ -209,12 +183,6 @@ class Runloop(SyncAPIClient):
209
183
 
210
184
  return PtyResource(self)
211
185
 
212
- @cached_property
213
- def scenarios(self) -> ScenariosResource:
214
- from .resources.scenarios import ScenariosResource
215
-
216
- return ScenariosResource(self)
217
-
218
186
  @cached_property
219
187
  def objects(self) -> ObjectsResource:
220
188
  from .resources.objects import ObjectsResource
@@ -473,24 +441,6 @@ class AsyncRunloop(AsyncAPIClient):
473
441
 
474
442
  return AsyncAccountsResource(self)
475
443
 
476
- @cached_property
477
- def benchmarks(self) -> AsyncBenchmarksResource:
478
- from .resources.benchmarks import AsyncBenchmarksResource
479
-
480
- return AsyncBenchmarksResource(self)
481
-
482
- @cached_property
483
- def benchmark_runs(self) -> AsyncBenchmarkRunsResource:
484
- from .resources.benchmark_runs import AsyncBenchmarkRunsResource
485
-
486
- return AsyncBenchmarkRunsResource(self)
487
-
488
- @cached_property
489
- def benchmark_jobs(self) -> AsyncBenchmarkJobsResource:
490
- from .resources.benchmark_jobs import AsyncBenchmarkJobsResource
491
-
492
- return AsyncBenchmarkJobsResource(self)
493
-
494
444
  @cached_property
495
445
  def agents(self) -> AsyncAgentsResource:
496
446
  from .resources.agents import AsyncAgentsResource
@@ -521,12 +471,6 @@ class AsyncRunloop(AsyncAPIClient):
521
471
 
522
472
  return AsyncPtyResource(self)
523
473
 
524
- @cached_property
525
- def scenarios(self) -> AsyncScenariosResource:
526
- from .resources.scenarios import AsyncScenariosResource
527
-
528
- return AsyncScenariosResource(self)
529
-
530
474
  @cached_property
531
475
  def objects(self) -> AsyncObjectsResource:
532
476
  from .resources.objects import AsyncObjectsResource
@@ -712,24 +656,6 @@ class RunloopWithRawResponse:
712
656
 
713
657
  return AccountsResourceWithRawResponse(self._client.accounts)
714
658
 
715
- @cached_property
716
- def benchmarks(self) -> benchmarks.BenchmarksResourceWithRawResponse:
717
- from .resources.benchmarks import BenchmarksResourceWithRawResponse
718
-
719
- return BenchmarksResourceWithRawResponse(self._client.benchmarks)
720
-
721
- @cached_property
722
- def benchmark_runs(self) -> benchmark_runs.BenchmarkRunsResourceWithRawResponse:
723
- from .resources.benchmark_runs import BenchmarkRunsResourceWithRawResponse
724
-
725
- return BenchmarkRunsResourceWithRawResponse(self._client.benchmark_runs)
726
-
727
- @cached_property
728
- def benchmark_jobs(self) -> benchmark_jobs.BenchmarkJobsResourceWithRawResponse:
729
- from .resources.benchmark_jobs import BenchmarkJobsResourceWithRawResponse
730
-
731
- return BenchmarkJobsResourceWithRawResponse(self._client.benchmark_jobs)
732
-
733
659
  @cached_property
734
660
  def agents(self) -> agents.AgentsResourceWithRawResponse:
735
661
  from .resources.agents import AgentsResourceWithRawResponse
@@ -760,12 +686,6 @@ class RunloopWithRawResponse:
760
686
 
761
687
  return PtyResourceWithRawResponse(self._client.pty)
762
688
 
763
- @cached_property
764
- def scenarios(self) -> scenarios.ScenariosResourceWithRawResponse:
765
- from .resources.scenarios import ScenariosResourceWithRawResponse
766
-
767
- return ScenariosResourceWithRawResponse(self._client.scenarios)
768
-
769
689
  @cached_property
770
690
  def objects(self) -> objects.ObjectsResourceWithRawResponse:
771
691
  from .resources.objects import ObjectsResourceWithRawResponse
@@ -821,24 +741,6 @@ class AsyncRunloopWithRawResponse:
821
741
 
822
742
  return AsyncAccountsResourceWithRawResponse(self._client.accounts)
823
743
 
824
- @cached_property
825
- def benchmarks(self) -> benchmarks.AsyncBenchmarksResourceWithRawResponse:
826
- from .resources.benchmarks import AsyncBenchmarksResourceWithRawResponse
827
-
828
- return AsyncBenchmarksResourceWithRawResponse(self._client.benchmarks)
829
-
830
- @cached_property
831
- def benchmark_runs(self) -> benchmark_runs.AsyncBenchmarkRunsResourceWithRawResponse:
832
- from .resources.benchmark_runs import AsyncBenchmarkRunsResourceWithRawResponse
833
-
834
- return AsyncBenchmarkRunsResourceWithRawResponse(self._client.benchmark_runs)
835
-
836
- @cached_property
837
- def benchmark_jobs(self) -> benchmark_jobs.AsyncBenchmarkJobsResourceWithRawResponse:
838
- from .resources.benchmark_jobs import AsyncBenchmarkJobsResourceWithRawResponse
839
-
840
- return AsyncBenchmarkJobsResourceWithRawResponse(self._client.benchmark_jobs)
841
-
842
744
  @cached_property
843
745
  def agents(self) -> agents.AsyncAgentsResourceWithRawResponse:
844
746
  from .resources.agents import AsyncAgentsResourceWithRawResponse
@@ -869,12 +771,6 @@ class AsyncRunloopWithRawResponse:
869
771
 
870
772
  return AsyncPtyResourceWithRawResponse(self._client.pty)
871
773
 
872
- @cached_property
873
- def scenarios(self) -> scenarios.AsyncScenariosResourceWithRawResponse:
874
- from .resources.scenarios import AsyncScenariosResourceWithRawResponse
875
-
876
- return AsyncScenariosResourceWithRawResponse(self._client.scenarios)
877
-
878
774
  @cached_property
879
775
  def objects(self) -> objects.AsyncObjectsResourceWithRawResponse:
880
776
  from .resources.objects import AsyncObjectsResourceWithRawResponse
@@ -930,24 +826,6 @@ class RunloopWithStreamedResponse:
930
826
 
931
827
  return AccountsResourceWithStreamingResponse(self._client.accounts)
932
828
 
933
- @cached_property
934
- def benchmarks(self) -> benchmarks.BenchmarksResourceWithStreamingResponse:
935
- from .resources.benchmarks import BenchmarksResourceWithStreamingResponse
936
-
937
- return BenchmarksResourceWithStreamingResponse(self._client.benchmarks)
938
-
939
- @cached_property
940
- def benchmark_runs(self) -> benchmark_runs.BenchmarkRunsResourceWithStreamingResponse:
941
- from .resources.benchmark_runs import BenchmarkRunsResourceWithStreamingResponse
942
-
943
- return BenchmarkRunsResourceWithStreamingResponse(self._client.benchmark_runs)
944
-
945
- @cached_property
946
- def benchmark_jobs(self) -> benchmark_jobs.BenchmarkJobsResourceWithStreamingResponse:
947
- from .resources.benchmark_jobs import BenchmarkJobsResourceWithStreamingResponse
948
-
949
- return BenchmarkJobsResourceWithStreamingResponse(self._client.benchmark_jobs)
950
-
951
829
  @cached_property
952
830
  def agents(self) -> agents.AgentsResourceWithStreamingResponse:
953
831
  from .resources.agents import AgentsResourceWithStreamingResponse
@@ -978,12 +856,6 @@ class RunloopWithStreamedResponse:
978
856
 
979
857
  return PtyResourceWithStreamingResponse(self._client.pty)
980
858
 
981
- @cached_property
982
- def scenarios(self) -> scenarios.ScenariosResourceWithStreamingResponse:
983
- from .resources.scenarios import ScenariosResourceWithStreamingResponse
984
-
985
- return ScenariosResourceWithStreamingResponse(self._client.scenarios)
986
-
987
859
  @cached_property
988
860
  def objects(self) -> objects.ObjectsResourceWithStreamingResponse:
989
861
  from .resources.objects import ObjectsResourceWithStreamingResponse
@@ -1039,24 +911,6 @@ class AsyncRunloopWithStreamedResponse:
1039
911
 
1040
912
  return AsyncAccountsResourceWithStreamingResponse(self._client.accounts)
1041
913
 
1042
- @cached_property
1043
- def benchmarks(self) -> benchmarks.AsyncBenchmarksResourceWithStreamingResponse:
1044
- from .resources.benchmarks import AsyncBenchmarksResourceWithStreamingResponse
1045
-
1046
- return AsyncBenchmarksResourceWithStreamingResponse(self._client.benchmarks)
1047
-
1048
- @cached_property
1049
- def benchmark_runs(self) -> benchmark_runs.AsyncBenchmarkRunsResourceWithStreamingResponse:
1050
- from .resources.benchmark_runs import AsyncBenchmarkRunsResourceWithStreamingResponse
1051
-
1052
- return AsyncBenchmarkRunsResourceWithStreamingResponse(self._client.benchmark_runs)
1053
-
1054
- @cached_property
1055
- def benchmark_jobs(self) -> benchmark_jobs.AsyncBenchmarkJobsResourceWithStreamingResponse:
1056
- from .resources.benchmark_jobs import AsyncBenchmarkJobsResourceWithStreamingResponse
1057
-
1058
- return AsyncBenchmarkJobsResourceWithStreamingResponse(self._client.benchmark_jobs)
1059
-
1060
914
  @cached_property
1061
915
  def agents(self) -> agents.AsyncAgentsResourceWithStreamingResponse:
1062
916
  from .resources.agents import AsyncAgentsResourceWithStreamingResponse
@@ -1087,12 +941,6 @@ class AsyncRunloopWithStreamedResponse:
1087
941
 
1088
942
  return AsyncPtyResourceWithStreamingResponse(self._client.pty)
1089
943
 
1090
- @cached_property
1091
- def scenarios(self) -> scenarios.AsyncScenariosResourceWithStreamingResponse:
1092
- from .resources.scenarios import AsyncScenariosResourceWithStreamingResponse
1093
-
1094
- return AsyncScenariosResourceWithStreamingResponse(self._client.scenarios)
1095
-
1096
944
  @cached_property
1097
945
  def objects(self) -> objects.AsyncObjectsResourceWithStreamingResponse:
1098
946
  from .resources.objects import AsyncObjectsResourceWithStreamingResponse