Skip to contents

A read-only snapshot of a saved approval, returned by approval_read() and agent$pending_approval(). Read fields with $. You rarely need to create one yourself; doing so doesn't save it or approve anything.

Usage

ApprovalContinuation(
  id,
  status,
  request,
  decision = NULL,
  context = list(),
  usage = AgentUsage(),
  usage_limits = UsageLimits(),
  budget_ceiling = UsageLimits(),
  permissions = list(),
  effects = list(),
  source = list()
)

Arguments

id

Approval ID.

status

One of "pending", "resuming", "executing", "continuing", "completed", "stopped" or "indeterminate".

request

List describing the paused call: tool_call_id, name, tool_input, reason, and kind ("tool", or "budget" when a usage limit caused the pause).

decision

The recorded decision (decision and tool_input), or NULL if there is none yet.

context

The run's run_context.

usage

AgentUsage so far, including work before the pause.

usage_limits

UsageLimits of the paused run. Resuming reuses them unless you pass others.

budget_ceiling

The agent's UsageLimits from the original run. Limits passed to resume_approval() can't go beyond these or the agent's current limits.

permissions

The saved permission policy, as a list. Resumed tool calls must be allowed by both it and the agent's current policy. callback_required says whether can_use_tool must be set again before resuming.

effects

Log of tool calls the run has executed, with their status.

source

IDs of the session, agent and run that paused. approval_read() adds path, the approval directory.

Value

An ApprovalContinuation object.