Interface: AgentPermissionRequest
Defined in: packages/sdk/src/agents-service.ts:929
Beta
The agent is blocked on the user: it wants permission to run a tool and the turn will not proceed until AgentPermissionRequest.respond is called. Delivered to AgentSessionHandle.onPermission.
This is not a safety boundary. An agent routes a request through here only if it chooses to; nothing stops it touching the filesystem directly (recon Finding 1). Do not present this as Silo gating the agent's actions.
If no onPermission listener is registered, Silo answers cancelled on the extension's behalf so the agent is never left hanging.
Properties
toolCallId
readonly toolCallId: string;Defined in: packages/sdk/src/agents-service.ts:932
Beta
The tool call this permission is for — the same id as the matching AgentToolCall.toolCallId in the update stream.
title
readonly title: string;Defined in: packages/sdk/src/agents-service.ts:934
Beta
A human-readable description of what the agent wants to do.
options
readonly options: readonly AgentPermissionOption[];Defined in: packages/sdk/src/agents-service.ts:936
Beta
The choices to present. Always at least one; order is the agent's.
toolCall?
readonly optional toolCall?: AgentToolCall;Defined in: packages/sdk/src/agents-service.ts:943
Beta
The call the agent is asking to make, when it sent one — the protocol's toolCall params, the same shape the update stream carries. It is how a Chat UI can show the diff before the user answers rather than only the title; claude-agent-acp 0.75.1 sends a full one including content.
raw
readonly raw: Readonly<Record<string, unknown>>;Defined in: packages/sdk/src/agents-service.ts:945
Beta
The raw Agent Client Protocol session/request_permission params.
Methods
respond()
respond(optionId): void;Defined in: packages/sdk/src/agents-service.ts:951
Beta
Answer the request with one of AgentPermissionRequest.options. Idempotent — the first call wins, later calls are ignored. Passing an optionId that is not in options answers cancelled.
Parameters
optionId
string
Returns
void