DaytonaRuntime

class DaytonaRuntime(BaseRuntime):

A runtime that executes functions in a Daytona sandbox environment. Requires the Daytona server to be running and an API key configured.

Parameters:

  • api_key (Optional[str]): The Daytona API key for authentication. If not provided, it will try to use the DAYTONA_API_KEY environment variable. (default: :obj: None)
  • api_url (Optional[str]): The URL of the Daytona server. If not provided, it will try to use the DAYTONA_API_URL environment variable. If none is provided, it will use “http://localhost:8000”. (default: :obj: None)
  • language (Optional[str]): The programming language for the sandbox. (default: :obj: "python")

init

def __init__(
    self,
    api_key: Optional[str] = None,
    api_url: Optional[str] = None,
    language: Optional[str] = 'python'
):

build

def build(self):

Returns:

DaytonaRuntime: The current runtime.

_cleanup

def _cleanup(self):

Clean up the sandbox when exiting.

add

def add(
    self,
    funcs: Union[FunctionTool, List[FunctionTool]],
    entrypoint: str,
    arguments: Optional[Dict[str, Any]] = None
):

Add a function or list of functions to the runtime.

Parameters:

  • funcs (Union[FunctionTool, List[FunctionTool]]): The function or list of functions to add.
  • entrypoint (str): The entrypoint for the function.
  • arguments (Optional[Dict[str, Any]]): The arguments for the function. (default: :obj: None)

Returns:

DaytonaRuntime: The current runtime.

info

def info(self):

Returns:

str: Information about the sandbox.

del

def __del__(self):

Clean up the sandbox when the object is deleted.

stop

def stop(self):

Returns:

DaytonaRuntime: The current runtime.

reset

def reset(self):

Returns:

DaytonaRuntime: The current runtime.

docs

def docs(self):

Returns:

str: The URL for the API documentation.