Follow Discord
Sweep 22 Oct 2026 · 21:04Z Build v2.1.309 528 read Stable v2.1.308 Latest v2.1.309 Next v2.1.309 Feeds RSS JSON llms.txt llms-full.txt Unofficial
One change · api

permission-policies changedmanaged-agents/permission-policies

Nearest release: v2.1.309, published 3 hours before this site recorded the change. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.

Recorded here
Lines+10added
Lines−10removed
From line 1,045 where the diff opens
First seen 14 Aug 2026 this site's first read of the page
Recorded edits22to this page, all time

The whole hunk

from line 1045, old and new numbered
/
lines
from line 1045
10451045 
10461046<CodeGroup>
10471047 ```bash cURL
1048 # Allow the tool to execute
1048 # Allow the tool to run
10491049 curl -fsSL "https://api.anthropic.com/v1/sessions/$SESSION_ID/events" \
10501050 -H "x-api-key: $ANTHROPIC_API_KEY" \
10511051 -H "anthropic-version: 2023-06-01" \
from line 1080
10801080 ```
10811081 
10821082 ```bash CLI
1083 # Allow the tool to execute
1083 # Allow the tool to run
10841084 ant beta:sessions:events send \
10851085 --session-id "$SESSION_ID" \
10861086 --event "{type: user.tool_confirmation, tool_use_id: $AGENT_TOOL_USE_EVENT_ID, result: allow}"
from line 1093
10931093 ```
10941094 
10951095 ```python Python
1096 # Allow the tool to execute
1096 # Allow the tool to run
10971097 client.beta.sessions.events.send(
10981098 session.id,
10991099 events=[
from line 1120
11201120 ```
11211121 
11221122 ```typescript TypeScript
1123 // Allow the tool to execute
1123 // Allow the tool to run
11241124 await client.beta.sessions.events.send(session.id, {
11251125 events: [
11261126 {
from line 1145
11451145 ```
11461146 
11471147 ```csharp C#
1148 // Allow the tool to execute
1148 // Allow the tool to run
11491149 await client.Beta.Sessions.Events.Send(session.ID, new()
11501150 {
11511151 Events =
from line 1174
11741174 ```
11751175 
11761176 ```go Go
1177 // Allow the tool to execute
1177 // Allow the tool to run
11781178 _, err = client.Beta.Sessions.Events.Send(ctx, session.ID, anthropic.BetaSessionEventSendParams{
11791179 Events: []anthropic.BetaManagedAgentsEventParamsUnion{{
11801180 OfUserToolConfirmation: &anthropic.BetaManagedAgentsUserToolConfirmationEventParams{
from line 1203
12031203 ```
12041204 
12051205 ```java Java
1206 // Allow the tool to execute
1206 // Allow the tool to run
12071207 client.beta().sessions().events().send(
12081208 session.id(),
12091209 EventSendParams.builder()
from line 1234
12341234 ```php PHP
12351235 use Anthropic\Beta\Sessions\Events\ManagedAgentsUserToolConfirmationEventParams;
12361236 
1237 // Allow the tool to execute
1237 // Allow the tool to run
12381238 $client->beta->sessions->events->send(
12391239 $session->id,
12401240 events: [
from line 1259
12591259 ```
12601260 
12611261 ```ruby Ruby
1262 # Allow the tool to execute
1262 # Allow the tool to run
12631263 client.beta.sessions.events.send_(
12641264 session.id,
12651265 events: [
from line 1288
12881288 
12891289## Custom tools
12901290 
1291Permission policies do not apply to custom tools. When the agent calls a custom tool, your application receives an `agent.custom_tool_use` event and is responsible for deciding whether to run it before sending back a `user.custom_tool_result`. See [Answer tool calls that pause the session](https://platform.claude.com/docs/en/managed-agents/events-and-streaming#answer-tool-calls-that-pause-the-session) for the full flow.
1291Permission policies do not apply to custom tools. When the agent calls a custom tool, your application receives an `agent.custom_tool_use` event and is responsible for determining whether to run it before sending back a `user.custom_tool_result`. See [Answer tool calls that pause the session](https://platform.claude.com/docs/en/managed-agents/events-and-streaming#answer-tool-calls-that-pause-the-session) for the full flow.
12921292 
12931293## Next steps
12941294 
Feedback