From 99c2b3cb2f8bf2b065d3f6e2cca44008de2b4136 Mon Sep 17 00:00:00 2001 From: "doc-writer-bot[bot]" <275804336+doc-writer-bot[bot]@users.noreply.github.com> Date: Tue, 7 Jul 2026 20:43:25 +0000 Subject: [PATCH] docs: update for 0 changes (2026-07-07) --- agents/app-triggers.mdx | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/agents/app-triggers.mdx b/agents/app-triggers.mdx index 83c011b..4b0b2e6 100644 --- a/agents/app-triggers.mdx +++ b/agents/app-triggers.mdx @@ -39,6 +39,14 @@ Runs are asynchronous: `run()` returns right away and you poll `getAgentContent` | `getRunningInstancesOfAgent(agentId?)` | List currently live runs. | | `getAgentContent(chatThreadId, n?)` | Read the last `n` messages of a run. | +## Approving permission requests + +An agent an app started can reach a tool set to **Ask** (see [Tool Permissions](/agents/tool-permissions)) — for example a write or delete operation. On an app-triggered run there's no person in chat to approve it, so the run pauses with a pending permission request instead of prompting. + +The app that started the run can read those pending requests and approve or deny them, keeping an unattended run moving. As with other run management, an app can only respond to permission requests from runs it started. + + + ## Limits To prevent runaway costs, an app may have a limited number of live agent runs at once; further `run()` calls are rejected until some finish. An app can only manage the runs it started. Manual and scheduled runs aren't subject to this per-app cap.