Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions docs/api/agent.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
Agent
=====

The ``Agent`` class represents an agent resource in the Runloop platform.

Asynchronous API
----------------

.. automodule:: runloop_api_client.sdk.async_agent
:members:

Synchronous API
---------------

.. automodule:: runloop_api_client.sdk.agent
:members:
21 changes: 21 additions & 0 deletions docs/api/axon.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
Axon
====

.. note::

Axon APIs are in beta and may change.

The ``Axon`` class provides event communication channels with support for
publish/subscribe messaging, server-sent events (SSE) streaming, and SQL operations.

Asynchronous API
----------------

.. automodule:: runloop_api_client.sdk.async_axon
:members:

Synchronous API
---------------

.. automodule:: runloop_api_client.sdk.axon
:members:
18 changes: 18 additions & 0 deletions docs/api/benchmark.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
Benchmark
=========

The ``Benchmark`` class manages benchmarks that group multiple scenarios for
systematic evaluation. Use benchmarks to run and compare agent performance
across a suite of scenarios.

Asynchronous API
----------------

.. automodule:: runloop_api_client.sdk.async_benchmark
:members:

Synchronous API
---------------

.. automodule:: runloop_api_client.sdk.benchmark
:members:
17 changes: 17 additions & 0 deletions docs/api/benchmark_run.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
Benchmark Run
=============

The ``BenchmarkRun`` class represents a running instance of a benchmark.
Use it to track progress, list scenario runs, and manage the benchmark lifecycle.

Asynchronous API
----------------

.. automodule:: runloop_api_client.sdk.async_benchmark_run
:members:

Synchronous API
---------------

.. automodule:: runloop_api_client.sdk.benchmark_run
:members:
17 changes: 17 additions & 0 deletions docs/api/blueprint.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
Blueprint
=========

The ``Blueprint`` class represents a reusable devbox configuration built from a Dockerfile
and optional setup commands. Use blueprints to create pre-configured devbox environments.

Asynchronous API
----------------

.. automodule:: runloop_api_client.sdk.async_blueprint
:members:

Synchronous API
---------------

.. automodule:: runloop_api_client.sdk.blueprint
:members:
33 changes: 33 additions & 0 deletions docs/api/core.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
Core Module
===========

The core module provides the main SDK entry points and operation manager classes.
Use :class:`~runloop_api_client.sdk.async_.AsyncRunloopSDK` for async/await code or
:class:`~runloop_api_client.sdk.sync.RunloopSDK` for synchronous code.

Asynchronous API
----------------

.. autoclass:: runloop_api_client.sdk.async_.AsyncRunloopSDK

.. automodule:: runloop_api_client.sdk.async_

Synchronous API
---------------

.. autoclass:: runloop_api_client.sdk.sync.RunloopSDK

.. automodule:: runloop_api_client.sdk.sync

Base REST Client
----------------

The SDK wraps the generated REST client. The ``api`` attribute on
:class:`~runloop_api_client.sdk.async_.AsyncRunloopSDK` /
:class:`~runloop_api_client.sdk.sync.RunloopSDK` provides direct access.

.. autoclass:: runloop_api_client.AsyncRunloop
:no-members:

.. autoclass:: runloop_api_client.Runloop
:no-members:
18 changes: 18 additions & 0 deletions docs/api/devbox.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
Devbox
======

The ``Devbox`` class provides methods for managing and interacting with a devbox instance,
including command execution, file operations, networking, and lifecycle management.
Devboxes support context manager usage for automatic cleanup.

Asynchronous API
----------------

.. automodule:: runloop_api_client.sdk.async_devbox
:members:

Synchronous API
---------------

.. automodule:: runloop_api_client.sdk.devbox
:members:
17 changes: 17 additions & 0 deletions docs/api/execution.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
Execution
=========

The ``Execution`` class represents an in-progress asynchronous command execution on a devbox.
Use it to track, wait for, or cancel long-running commands started with ``exec_async()``.

Asynchronous API
----------------

.. automodule:: runloop_api_client.sdk.async_execution
:members:

Synchronous API
---------------

.. automodule:: runloop_api_client.sdk.execution
:members:
17 changes: 17 additions & 0 deletions docs/api/execution_result.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
Execution Result
================

The ``ExecutionResult`` class wraps the output of a completed command execution,
providing access to stdout, stderr, exit codes, and output parsing utilities.

Asynchronous API
----------------

.. automodule:: runloop_api_client.sdk.async_execution_result
:members:

Synchronous API
---------------

.. automodule:: runloop_api_client.sdk.execution_result
:members:
17 changes: 17 additions & 0 deletions docs/api/gateway_config.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
Gateway Config
==============

The ``GatewayConfig`` class manages API gateway configurations that proxy
requests through devboxes with credential management and authentication.

Asynchronous API
----------------

.. automodule:: runloop_api_client.sdk.async_gateway_config
:members:

Synchronous API
---------------

.. automodule:: runloop_api_client.sdk.gateway_config
:members:
51 changes: 51 additions & 0 deletions docs/api/index.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
API Reference
=============

The Runloop Python SDK provides both synchronous and asynchronous variants for every resource.
Each page below documents both variants together. The async API mirrors the sync API exactly,
with ``await`` required on all methods.

.. toctree::
:maxdepth: 1
:caption: Compute & Execution

core
devbox
execution
execution_result
blueprint
snapshot
storage_object

.. toctree::
:maxdepth: 1
:caption: Agents & Evaluation

agent
scorer
scenario
scenario_builder
scenario_run
benchmark
benchmark_run

.. toctree::
:maxdepth: 1
:caption: Communication

axon

.. toctree::
:maxdepth: 1
:caption: Security & Configuration

secret
mcp_config
gateway_config
network_policy

.. toctree::
:maxdepth: 1
:caption: Type Reference

types
17 changes: 17 additions & 0 deletions docs/api/mcp_config.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
MCP Config
==========

The ``McpConfig`` class manages Model Context Protocol (MCP) server configurations
that can be attached to devboxes, defining which MCP servers and tools are available.

Asynchronous API
----------------

.. automodule:: runloop_api_client.sdk.async_mcp_config
:members:

Synchronous API
---------------

.. automodule:: runloop_api_client.sdk.mcp_config
:members:
17 changes: 17 additions & 0 deletions docs/api/network_policy.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
Network Policy
==============

The ``NetworkPolicy`` class manages network access policies for devboxes,
controlling which hostnames and services a devbox can communicate with.

Asynchronous API
----------------

.. automodule:: runloop_api_client.sdk.async_network_policy
:members:

Synchronous API
---------------

.. automodule:: runloop_api_client.sdk.network_policy
:members:
17 changes: 17 additions & 0 deletions docs/api/scenario.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
Scenario
========

The ``Scenario`` class represents a scenario for evaluating agent performance.
Scenarios define environments, problem statements, and scoring criteria.

Asynchronous API
----------------

.. automodule:: runloop_api_client.sdk.async_scenario
:members:

Synchronous API
---------------

.. automodule:: runloop_api_client.sdk.scenario
:members:
18 changes: 18 additions & 0 deletions docs/api/scenario_builder.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
Scenario Builder
================

The ``ScenarioBuilder`` class provides a fluent API for constructing scenarios.
Chain methods to configure the environment, problem statement, and scoring criteria
before building or pushing the scenario.

Asynchronous API
----------------

.. automodule:: runloop_api_client.sdk.async_scenario_builder
:members:

Synchronous API
---------------

.. automodule:: runloop_api_client.sdk.scenario_builder
:members:
17 changes: 17 additions & 0 deletions docs/api/scenario_run.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
Scenario Run
============

The ``ScenarioRun`` class represents a running instance of a scenario.
Use it to manage the run lifecycle, retrieve scores, and download logs.

Asynchronous API
----------------

.. automodule:: runloop_api_client.sdk.async_scenario_run
:members:

Synchronous API
---------------

.. automodule:: runloop_api_client.sdk.scenario_run
:members:
17 changes: 17 additions & 0 deletions docs/api/scorer.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
Scorer
======

The ``Scorer`` class defines custom scoring logic for evaluating scenario outputs.
Scorers produce a score in the range [0.0, 1.0] for scenario runs.

Asynchronous API
----------------

.. automodule:: runloop_api_client.sdk.async_scorer
:members:

Synchronous API
---------------

.. automodule:: runloop_api_client.sdk.scorer
:members:
17 changes: 17 additions & 0 deletions docs/api/secret.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
Secret
======

The ``Secret`` class manages encrypted key-value pairs that can be injected
into devbox environments as environment variables.

Asynchronous API
----------------

.. automodule:: runloop_api_client.sdk.async_secret
:members:

Synchronous API
---------------

.. automodule:: runloop_api_client.sdk.secret
:members:
17 changes: 17 additions & 0 deletions docs/api/snapshot.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
Snapshot
========

The ``Snapshot`` class represents a point-in-time disk snapshot of a devbox.
Use snapshots to save and restore devbox state.

Asynchronous API
----------------

.. automodule:: runloop_api_client.sdk.async_snapshot
:members:

Synchronous API
---------------

.. automodule:: runloop_api_client.sdk.snapshot
:members:
Loading