id: String

The unique ID of the shell call output. Populated when this item is returned via API.

call_id: String

The unique ID of the shell tool call generated by the model.

max_output_length: Integer

The maximum length of the shell command output. This is generated by the model and should be passed back with the raw output.

output: Array[Output{ outcome, stderr, stdout, created_by}]

An array of shell call output contents

outcome: Timeout{ type} | Exit{ exit_code, type}

Represents either an exit outcome (with an exit code) or a timeout outcome for a shell call output chunk.

One of the following:
class Timeout { type }

Indicates that the shell call exceeded its configured time limit.

type: :timeout

The outcome type. Always timeout.

class Exit { exit_code, type }

Indicates that the shell commands finished and returned an exit code.

exit_code: Integer

Exit code from the shell process.

type: :exit

The outcome type. Always exit.

stderr: String

The standard error output that was captured.

stdout: String

The standard output that was captured.

created_by: String

The identifier of the actor that created the item.

status: :in_progress | :completed | :incomplete

The status of the shell call output. One of in_progress, completed, or incomplete.

One of the following:
:in_progress
:completed
:incomplete
type: :shell_call_output

The type of the shell call output. Always shell_call_output.

agent: Agent{ agent_name}

The agent that produced this item.

agent_name: String

The canonical name of the agent that produced this item.

caller_: Direct{ type} | Program{ caller_id, type}

The execution context that produced this tool call.

One of the following:
class Direct { type }
type: :direct
class Program { caller_id, type }
caller_id: String

The call ID of the program item that produced this tool call.

type: :program
created_by: String

The identifier of the actor that created the item.