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.
- runloop_api_client-2.0.0/.release-please-manifest.json +3 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/CHANGELOG.md +45 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/CONTRIBUTING.md +12 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/PKG-INFO +2 -4
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/README-SDK.md +43 -3
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/README.md +1 -3
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/api.md +3 -125
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/pyproject.toml +1 -1
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/release-please-config.json +7 -2
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_client.py +0 -152
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_version.py +1 -1
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/pagination.py +0 -375
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/__init__.py +0 -56
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/axons/axons.py +26 -14
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/devboxes/devboxes.py +8 -4
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/devboxes/executions.py +12 -4
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/gateway_configs.py +6 -6
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/mcp_configs.py +4 -4
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/network_policies.py +4 -4
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/secrets.py +315 -21
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/__init__.py +4 -38
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/_types.py +1 -89
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_.py +9 -181
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_execution.py +33 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_secret.py +13 -7
- runloop_api_client-2.0.0/src/runloop_api_client/sdk/async_secret_by_id.py +44 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_storage_object.py +30 -5
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/execution.py +33 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/secret.py +14 -8
- runloop_api_client-2.0.0/src/runloop_api_client/sdk/secret_by_id.py +44 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/storage_object.py +30 -5
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/sync.py +9 -181
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/__init__.py +1 -40
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axon_view.py +3 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_create_params.py +15 -3
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_enable_tunnel_params.py +5 -1
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_view.py +1 -1
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/gateway_config_create_params.py +1 -1
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/gateway_config_update_params.py +1 -1
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/gateway_config_view.py +1 -4
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/mcp_config_create_params.py +1 -1
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/mcp_config_update_params.py +1 -1
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/mcp_config_view.py +1 -1
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/network_policy_create_params.py +1 -1
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/network_policy_view.py +1 -1
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/object_view.py +7 -1
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/scope_entry_view.py +0 -2
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/scope_entry_view_param.py +0 -2
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/secret_create_params.py +1 -1
- runloop_api_client-2.0.0/src/runloop_api_client/types/secret_update_by_id_params.py +16 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/secret_view.py +1 -4
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/__init__.py +0 -1
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/launch_parameters.py +1 -1
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/__init__.py +0 -1
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/launch_parameters.py +1 -1
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_secrets.py +236 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/conftest.py +2 -89
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/devbox/test_edge_cases.py +2 -2
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_async_ops.py +17 -264
- runloop_api_client-2.0.0/tests/sdk/test_async_secret.py +47 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_async_storage_object.py +0 -28
- runloop_api_client-2.0.0/tests/sdk/test_execution_stdin_transport.py +86 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_ops.py +17 -250
- runloop_api_client-2.0.0/tests/sdk/test_secret.py +47 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_storage_object.py +0 -69
- runloop_api_client-2.0.0/tests/sdk/test_storage_upload_transport.py +204 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/README.md +1 -1
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_async_devbox.py +16 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_async_sdk.py +0 -2
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_async_secret.py +42 -47
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_devbox.py +16 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_sdk.py +0 -2
- runloop_api_client-2.0.0/tests/smoketests/sdk/test_secret.py +125 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/uv.lock +1 -1
- runloop_api_client-1.32.0/.release-please-manifest.json +0 -3
- runloop_api_client-1.32.0/src/runloop_api_client/resources/benchmark_jobs.py +0 -412
- runloop_api_client-1.32.0/src/runloop_api_client/resources/benchmark_runs.py +0 -645
- runloop_api_client-1.32.0/src/runloop_api_client/resources/benchmarks.py +0 -1129
- runloop_api_client-1.32.0/src/runloop_api_client/resources/scenarios/__init__.py +0 -47
- runloop_api_client-1.32.0/src/runloop_api_client/resources/scenarios/runs.py +0 -991
- runloop_api_client-1.32.0/src/runloop_api_client/resources/scenarios/scenarios.py +0 -1253
- runloop_api_client-1.32.0/src/runloop_api_client/resources/scenarios/scorers.py +0 -527
- runloop_api_client-1.32.0/src/runloop_api_client/sdk/async_benchmark.py +0 -169
- runloop_api_client-1.32.0/src/runloop_api_client/sdk/async_benchmark_run.py +0 -127
- runloop_api_client-1.32.0/src/runloop_api_client/sdk/async_scenario.py +0 -118
- runloop_api_client-1.32.0/src/runloop_api_client/sdk/async_scenario_builder.py +0 -480
- runloop_api_client-1.32.0/src/runloop_api_client/sdk/async_scenario_run.py +0 -242
- runloop_api_client-1.32.0/src/runloop_api_client/sdk/async_scorer.py +0 -66
- runloop_api_client-1.32.0/src/runloop_api_client/sdk/benchmark.py +0 -167
- runloop_api_client-1.32.0/src/runloop_api_client/sdk/benchmark_run.py +0 -127
- runloop_api_client-1.32.0/src/runloop_api_client/sdk/scenario.py +0 -118
- runloop_api_client-1.32.0/src/runloop_api_client/sdk/scenario_builder.py +0 -480
- runloop_api_client-1.32.0/src/runloop_api_client/sdk/scenario_run.py +0 -242
- runloop_api_client-1.32.0/src/runloop_api_client/sdk/scorer.py +0 -66
- runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_create_params.py +0 -40
- runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_definitions_params.py +0 -15
- runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_job_create_params.py +0 -208
- runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_job_list_params.py +0 -27
- runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_job_list_view.py +0 -17
- runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_job_view.py +0 -335
- runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_list_params.py +0 -27
- runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_list_public_params.py +0 -27
- runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_run_list_params.py +0 -33
- runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_run_list_scenario_runs_params.py +0 -27
- runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_run_list_view.py +0 -17
- runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_run_view.py +0 -58
- runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_start_run_params.py +0 -29
- runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_update_params.py +0 -42
- runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_update_scenarios_params.py +0 -18
- runloop_api_client-1.32.0/src/runloop_api_client/types/benchmark_view.py +0 -56
- runloop_api_client-1.32.0/src/runloop_api_client/types/input_context.py +0 -19
- runloop_api_client-1.32.0/src/runloop_api_client/types/input_context_param.py +0 -20
- runloop_api_client-1.32.0/src/runloop_api_client/types/input_context_update_param.py +0 -16
- runloop_api_client-1.32.0/src/runloop_api_client/types/scenario_create_params.py +0 -59
- runloop_api_client-1.32.0/src/runloop_api_client/types/scenario_definition_list_view.py +0 -17
- runloop_api_client-1.32.0/src/runloop_api_client/types/scenario_environment.py +0 -33
- runloop_api_client-1.32.0/src/runloop_api_client/types/scenario_environment_param.py +0 -35
- runloop_api_client-1.32.0/src/runloop_api_client/types/scenario_list_params.py +0 -33
- runloop_api_client-1.32.0/src/runloop_api_client/types/scenario_list_public_params.py +0 -27
- runloop_api_client-1.32.0/src/runloop_api_client/types/scenario_run_list_view.py +0 -17
- runloop_api_client-1.32.0/src/runloop_api_client/types/scenario_run_view.py +0 -58
- runloop_api_client-1.32.0/src/runloop_api_client/types/scenario_start_run_params.py +0 -30
- runloop_api_client-1.32.0/src/runloop_api_client/types/scenario_update_params.py +0 -55
- runloop_api_client-1.32.0/src/runloop_api_client/types/scenario_view.py +0 -73
- runloop_api_client-1.32.0/src/runloop_api_client/types/scenarios/__init__.py +0 -12
- runloop_api_client-1.32.0/src/runloop_api_client/types/scenarios/run_list_params.py +0 -36
- runloop_api_client-1.32.0/src/runloop_api_client/types/scenarios/scorer_create_params.py +0 -18
- runloop_api_client-1.32.0/src/runloop_api_client/types/scenarios/scorer_create_response.py +0 -18
- runloop_api_client-1.32.0/src/runloop_api_client/types/scenarios/scorer_list_params.py +0 -24
- runloop_api_client-1.32.0/src/runloop_api_client/types/scenarios/scorer_list_response.py +0 -18
- runloop_api_client-1.32.0/src/runloop_api_client/types/scenarios/scorer_retrieve_response.py +0 -18
- runloop_api_client-1.32.0/src/runloop_api_client/types/scenarios/scorer_update_params.py +0 -18
- runloop_api_client-1.32.0/src/runloop_api_client/types/scenarios/scorer_update_response.py +0 -18
- runloop_api_client-1.32.0/src/runloop_api_client/types/scoring_contract.py +0 -17
- runloop_api_client-1.32.0/src/runloop_api_client/types/scoring_contract_param.py +0 -19
- runloop_api_client-1.32.0/src/runloop_api_client/types/scoring_contract_result_view.py +0 -20
- runloop_api_client-1.32.0/src/runloop_api_client/types/scoring_contract_update_param.py +0 -15
- runloop_api_client-1.32.0/src/runloop_api_client/types/scoring_function.py +0 -157
- runloop_api_client-1.32.0/src/runloop_api_client/types/scoring_function_param.py +0 -153
- runloop_api_client-1.32.0/src/runloop_api_client/types/scoring_function_result_view.py +0 -25
- runloop_api_client-1.32.0/src/runloop_api_client/types/shared/run_profile.py +0 -41
- runloop_api_client-1.32.0/src/runloop_api_client/types/shared_params/run_profile.py +0 -42
- runloop_api_client-1.32.0/tests/api_resources/scenarios/__init__.py +0 -1
- runloop_api_client-1.32.0/tests/api_resources/scenarios/test_runs.py +0 -527
- runloop_api_client-1.32.0/tests/api_resources/scenarios/test_scorers.py +0 -336
- runloop_api_client-1.32.0/tests/api_resources/test_benchmark_jobs.py +0 -247
- runloop_api_client-1.32.0/tests/api_resources/test_benchmark_runs.py +0 -432
- runloop_api_client-1.32.0/tests/api_resources/test_benchmarks.py +0 -803
- runloop_api_client-1.32.0/tests/api_resources/test_scenarios.py +0 -1012
- runloop_api_client-1.32.0/tests/sdk/test_async_benchmark.py +0 -130
- runloop_api_client-1.32.0/tests/sdk/test_async_benchmark_run.py +0 -120
- runloop_api_client-1.32.0/tests/sdk/test_async_scenario.py +0 -121
- runloop_api_client-1.32.0/tests/sdk/test_async_scenario_builder.py +0 -292
- runloop_api_client-1.32.0/tests/sdk/test_async_scenario_run.py +0 -162
- runloop_api_client-1.32.0/tests/sdk/test_async_scorer.py +0 -51
- runloop_api_client-1.32.0/tests/sdk/test_benchmark.py +0 -122
- runloop_api_client-1.32.0/tests/sdk/test_benchmark_run.py +0 -114
- runloop_api_client-1.32.0/tests/sdk/test_scenario.py +0 -121
- runloop_api_client-1.32.0/tests/sdk/test_scenario_builder.py +0 -287
- runloop_api_client-1.32.0/tests/sdk/test_scenario_run.py +0 -157
- runloop_api_client-1.32.0/tests/sdk/test_scorer.py +0 -51
- runloop_api_client-1.32.0/tests/smoketests/sdk/test_async_benchmark.py +0 -192
- runloop_api_client-1.32.0/tests/smoketests/sdk/test_async_scenario.py +0 -260
- runloop_api_client-1.32.0/tests/smoketests/sdk/test_async_scorer.py +0 -103
- runloop_api_client-1.32.0/tests/smoketests/sdk/test_benchmark.py +0 -190
- runloop_api_client-1.32.0/tests/smoketests/sdk/test_scenario.py +0 -259
- runloop_api_client-1.32.0/tests/smoketests/sdk/test_scorer.py +0 -103
- runloop_api_client-1.32.0/tests/smoketests/sdk/test_secret.py +0 -145
- runloop_api_client-1.32.0/tests/smoketests/test_scenarios_benchmarks.py +0 -82
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/.gitignore +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/AGENTS.md +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/CLAUDE.md +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/EXAMPLES.md +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/LICENSE +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/SECURITY.md +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/bin/check-release-environment +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/bin/publish-pypi +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/examples/__init__.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/examples/_harness.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/examples/blueprint_with_build_context.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/examples/devbox_from_blueprint_lifecycle.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/examples/devbox_snapshot_resume.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/examples/devbox_snapshots.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/examples/devbox_tunnel.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/examples/example_types.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/examples/mcp_github_tools.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/examples/registry.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/examples/secrets_with_devbox.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/requirements-dev.lock +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop/lib/.keep +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/__init__.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_base_client.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_compat.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_constants.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_exceptions.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_files.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_models.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_qs.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_resource.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_response.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_streaming.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_types.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/__init__.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_compat.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_datetime_parse.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_json.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_logs.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_path.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_proxy.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_reflection.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_resources_proxy.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_streams.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_sync.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_transform.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_typing.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_utils.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/_utils/_validation.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/lib/.keep +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/lib/__init__.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/lib/_ignore.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/lib/context_loader.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/lib/polling.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/lib/polling_async.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/lib/wait_for_status.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/py.typed +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/accounts.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/agents.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/apikeys.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/axons/__init__.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/axons/events.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/axons/sql.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/blueprints.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/devboxes/__init__.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/devboxes/disk_snapshots.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/devboxes/logs.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/objects.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/pty.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/resources/restricted_keys.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/_helpers.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/agent.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_agent.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_axon.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_blueprint.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_devbox.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_execution_result.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_gateway_config.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_mcp_config.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_network_policy.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/async_snapshot.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/axon.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/blueprint.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/devbox.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/execution_result.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/gateway_config.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/mcp_config.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/network_policy.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/sdk/snapshot.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/account_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/agent_create_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/agent_devbox_counts_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/agent_list_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/agent_list_public_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/agent_list_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/agent_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/allowed_cidr.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/allowed_cidr_param.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/api_key_created_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/apikey_create_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axon_create_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axon_event_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axon_list_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axon_list_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axon_publish_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axon_subscribe_sse_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axon_update_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axons/__init__.py +0 -0
- {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
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axons/event_list_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axons/sql_batch_params.py +0 -0
- {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
- {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
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axons/sql_query_params.py +0 -0
- {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
- {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
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/axons/sql_statement_params.py +0 -0
- {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
- {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
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/blueprint_build_log.py +0 -0
- {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
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/blueprint_build_parameters.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/blueprint_create_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/blueprint_list_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/blueprint_list_public_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/blueprint_list_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/blueprint_preview_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/blueprint_preview_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/blueprint_view.py +0 -0
- {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
- {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
- {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
- {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
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_download_file_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_eviction_event_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_execute_async_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_execute_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_execute_sync_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_execution_detail_view.py +0 -0
- {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
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_list_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_list_view.py +0 -0
- {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
- {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
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_resource_usage_view.py +0 -0
- {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
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_shutdown_params.py +0 -0
- {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
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_snapshot_disk_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_snapshot_list_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_snapshot_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_update_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devbox_upload_file_params.py +0 -0
- {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
- {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
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devboxes/__init__.py +0 -0
- {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
- {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
- {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
- {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
- {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
- {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
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devboxes/execution_kill_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devboxes/execution_retrieve_params.py +0 -0
- {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
- {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
- {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
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devboxes/execution_update_chunk.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/devboxes/log_list_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/gateway_config_list_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/gateway_config_list_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/gateway_token_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/mcp_config_list_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/mcp_config_list_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/mcp_token_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/network_policy_list_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/network_policy_list_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/network_policy_update_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/object_create_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/object_download_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/object_download_url_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/object_list_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/object_list_public_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/object_list_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/port_rule.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/port_rule_param.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/pty_connect_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/pty_connect_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/pty_control_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/pty_control_result_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/pty_tunnel_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/publish_result_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/restricted_key_create_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/restricted_key_created_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/secret_list_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/secret_list_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/secret_update_params.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/after_idle.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/agent_mount.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/agent_source.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/auth_mechanism.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/broker_mount.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/code_mount_parameters.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/custom_header.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/lifecycle_configuration.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/lifecycle_hooks.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/mount.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/object_mount.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared/resume_triggers.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/after_idle.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/agent_mount.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/agent_source.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/auth_mechanism.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/broker_mount.py +0 -0
- {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
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/custom_header.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/lifecycle_configuration.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/lifecycle_hooks.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/mount.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/object_mount.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/shared_params/resume_triggers.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/src/runloop_api_client/types/tunnel_view.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/__init__.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/__init__.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/axons/__init__.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/axons/test_events.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/axons/test_sql.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/devboxes/__init__.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/devboxes/test_disk_snapshots.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/devboxes/test_executions.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/devboxes/test_logs.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_accounts.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_agents.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_apikeys.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_axons.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_blueprints.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_devboxes.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_gateway_configs.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_mcp_configs.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_network_policies.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_objects.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_pty.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/api_resources/test_restricted_keys.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/conftest.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sample_file.txt +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/__init__.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/async_devbox/__init__.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/async_devbox/conftest.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/async_devbox/test_core.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/async_devbox/test_edge_cases.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/async_devbox/test_interfaces.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/async_devbox/test_streaming.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/devbox/__init__.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/devbox/conftest.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/devbox/test_core.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/devbox/test_interfaces.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/devbox/test_streaming.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_agent.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_async_agent.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_async_axon.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_async_blueprint.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_async_execution.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_async_execution_result.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_async_gateway_config.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_async_network_policy.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_async_snapshot.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_axon.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_blueprint.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_execution.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_execution_result.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_gateway_config.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_helpers.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_network_policy.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/sdk/test_snapshot.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/__init__.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/conftest.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/examples/__init__.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/examples/test_examples.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/README.md +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/__init__.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/conftest.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_agent.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_async_agent.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_async_axon.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_async_blueprint.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_async_gateway_config.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_async_network_policy.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_async_snapshot.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_async_storage_object.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_axon.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_blueprint.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_gateway_config.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_mcp_config.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_network_policy.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_snapshot.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/sdk/test_storage_object.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/test_blueprints.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/test_devboxes.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/test_executions.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/test_snapshots.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/smoketests/utils.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_client.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_command_id.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_extract_files.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_files.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_h2_bulkhead_integration.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_models.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_polling.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_qs.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_required_args.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_response.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_shared_pool.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_streaming.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_transfer_client.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_transform.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_utils/test_context_loader.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_utils/test_datetime_parse.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_utils/test_json.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_utils/test_path.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_utils/test_proxy.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/test_utils/test_typing.py +0 -0
- {runloop_api_client-1.32.0 → runloop_api_client-2.0.0}/tests/utils.py +0 -0
|
@@ -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:
|
|
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
|
|
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
|
|
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
|
|
|
@@ -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
|