doctl harness-runtime exec

Generated on 1 Oct 2026 from doctl version v1.177.0

Usage

doctl harness-runtime exec <session> -- <command> [args...] [flags]

Description

Run one command in a session’s sandbox and print its output.

Drives the sandbox directly rather than through its agent, so it works on a bare sandbox created with --template sandbox as well as on a managed-agent session.

Separate the guest command from doctl’s own flags with --, or flags meant for the guest (ls -la) are parsed as doctl flags.

Guest stdout and stderr pass through unchanged and the guest’s exit code becomes doctl’s, so this composes in pipelines and && chains. Each call is independent: there is no shell session between calls, so cd does not carry over — use --workdir, or run a shell explicitly (-- sh -c 'cd src && make').

Output is buffered until the command finishes, and capped at 1 MiB per stream. With -o json the full response is emitted instead of the raw streams.

Example

doctl harness-runtime exec sess_abc123 -- ls -la;

Flags

Option Description
--format Columns for output in a comma-separated list. Possible values: ExitCode, Stdout, Stderr.
--help, -h Help for this command
--no-header Return raw data with no headers
Default: false
--timeout Maximum seconds the command may run (0 uses the server default)
Default: 0
--workdir Absolute guest directory to run in (defaults to the workspace root)
Command Description
doctl harness-runtime Managed Agents Runtime Services (M.A.R.S)

Global Flags

Option Description
--access-token, -t API V2 access token
--api-url, -u Override default API endpoint
--config, -c Specify a custom config file
Default:
    --context Specify a custom authentication context name
    --http-retry-max Set maximum number of retries for requests that fail with a 429 or 500-level error
    Default: 5
    --http-retry-wait-max Set the minimum number of seconds to wait before retrying a failed request
    Default: 30
    --http-retry-wait-min Set the maximum number of seconds to wait before retrying a failed request
    Default: 1
    --interactive Enable interactive behavior. Defaults to true if the terminal supports it (default false)
    Default: false
    --output, -o Desired output format [text|json]
    Default: text
    --trace Show a log of network activity while performing a command
    Default: false
    --verbose, -v Enable verbose output
    Default: false

    We can't find any results for your search.

    Try using different keywords or simplifying your search terms.