@anthropic-ai/claude-agent-sdk 0.3.197 → 0.3.199

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/manifest.json CHANGED
@@ -1,47 +1,47 @@
1
1
  {
2
- "version": "2.1.197",
3
- "commit": "c8fd8048f30950a21d28734718275aa7e97f5143",
4
- "buildDate": "2026-06-29T19:16:30Z",
2
+ "version": "2.1.199",
3
+ "commit": "968b0c4118bde7c998acd97511e68daecacd8507",
4
+ "buildDate": "2026-07-02T01:58:04Z",
5
5
  "platforms": {
6
6
  "darwin-arm64": {
7
7
  "binary": "claude",
8
- "checksum": "8cc0c4d1e4eb1dca3b0cc92ab02ee3505de764e023f8c901761c167b72041fb8",
9
- "size": 227251472
8
+ "checksum": "e3cb61abc8a2ec7b98976cee1ffdde5a3fa755c9990bc8d688cd89290e0dcec0",
9
+ "size": 232155536
10
10
  },
11
11
  "darwin-x64": {
12
12
  "binary": "claude",
13
- "checksum": "5e8a57cc7a92377f0744fa4c79191cf93d4b26c79cb919b07a407511fed1be26",
14
- "size": 235288016
13
+ "checksum": "e64853ff3bc2ae6ed8115581c851e1176762d445d0b8b9e0dd37d0d560224a88",
14
+ "size": 240192080
15
15
  },
16
16
  "linux-arm64": {
17
17
  "binary": "claude",
18
- "checksum": "fb48473c467c27615ac799a754f4ef0b68c363e4596cefbb59c3815d51a0cc8a",
19
- "size": 242334448
18
+ "checksum": "14851b5170b154b01baca09bba970172e70cdd768b5a012bf347ba0f594b4ad3",
19
+ "size": 247184112
20
20
  },
21
21
  "linux-x64": {
22
22
  "binary": "claude",
23
- "checksum": "f54e69cbc89b2da61a415700af7ff52a147e862517d4f1b0eecf768448cf7f83",
24
- "size": 245517112
23
+ "checksum": "b31dfd5e3dee23b51c42e0d8ddb405148978237d3aabc8cbbf77c5cf83367e27",
24
+ "size": 250383160
25
25
  },
26
26
  "linux-arm64-musl": {
27
27
  "binary": "claude",
28
- "checksum": "acb885610ba06d90c46206ded9b14121bc30e96affecbfb3c37d511bf02af2bd",
29
- "size": 235582648
28
+ "checksum": "4115c07bc6dfa71affff595400599032b70b4ab25b7a2dae982341ef4da47b38",
29
+ "size": 240432312
30
30
  },
31
31
  "linux-x64-musl": {
32
32
  "binary": "claude",
33
- "checksum": "2f610c0f81341052426981b5dc59277a33e6ec3df924071b24edbc05e6a096dc",
34
- "size": 240202112
33
+ "checksum": "22c8b0861078cef1b572023e7eda4ce0dda7e12cc2e3060858eaa3de010bee21",
34
+ "size": 245068160
35
35
  },
36
36
  "win32-x64": {
37
37
  "binary": "claude.exe",
38
- "checksum": "038bd9fe90c60304601e19751269a50d62925c541dd6a2b3da5274549e9416ee",
39
- "size": 236121248
38
+ "checksum": "63de670613bb74594564a2125cb54e0e2e78192c5696e396adfae093b9132eec",
39
+ "size": 240716448
40
40
  },
41
41
  "win32-arm64": {
42
42
  "binary": "claude.exe",
43
- "checksum": "8d2baeaf77b0e79ea33cf5ce78a37e64804c3a26d63d35355a830fda404a4f61",
44
- "size": 230588064
43
+ "checksum": "7e4900b1ce5588003e0ade6caa0aaef1e2b8efd903c5a86c671d0de258b7a4d4",
44
+ "size": 235182752
45
45
  }
46
46
  }
47
47
  }
package/manifest.zst.json CHANGED
@@ -1,55 +1,55 @@
1
1
  {
2
- "version": "2.1.197",
3
- "commit": "c8fd8048f30950a21d28734718275aa7e97f5143",
4
- "buildDate": "2026-06-29T19:18:17Z",
2
+ "version": "2.1.199",
3
+ "commit": "968b0c4118bde7c998acd97511e68daecacd8507",
4
+ "buildDate": "2026-07-02T01:59:55Z",
5
5
  "platforms": {
6
6
  "darwin-arm64": {
7
7
  "binary": "claude.zst",
8
- "checksum": "9b11f0d6c9ce73434bf75440eb19f339c47e099da6d53c481cda1a9c6e693a7d",
9
- "size": 47889227,
8
+ "checksum": "6ee8d7ed4bfd7e0dd2d4f20d694cdade31df5b32cd9c667c8c1ed807832ebb00",
9
+ "size": 48610501,
10
10
  "bundle": {
11
- "checksum": "c921aa65eb8f10a3f387a86526f97b94dee721f26b741dadf0d2357ac376c437",
12
- "size": 47903450
11
+ "checksum": "bffd78fbb26dcc00be341109772da068ada6ad38ef0826531c6595d295b5f5a2",
12
+ "size": 48620700
13
13
  }
14
14
  },
15
15
  "darwin-x64": {
16
16
  "binary": "claude.zst",
17
- "checksum": "a1dc9d160ae29aff4373dec60623111080fe2c645a21f25c96dd2b443ee184e6",
18
- "size": 50919995,
17
+ "checksum": "c41a93c21b86a6e6ec5bf385732aa0594d522e3edcd82264a2b6d36185945237",
18
+ "size": 51631685,
19
19
  "bundle": {
20
- "checksum": "f2d6011db80732e4f0850d5c27e0ce83bb4d2c4a66374072134232214dddedab",
21
- "size": 50915693
20
+ "checksum": "cebf0ccc7298485d13d635decbbc43bff1e513a34fbef666dc539542e70486eb",
21
+ "size": 51645139
22
22
  }
23
23
  },
24
24
  "linux-arm64": {
25
25
  "binary": "claude.zst",
26
- "checksum": "e5f4307ad01f9720878ce4088331f33722cdd610aaa1d0026260ca9ced498030",
27
- "size": 55692187
26
+ "checksum": "c615bb15e71949249c3c2ee85d66a62a118c071be691a9f534e6f232a3b1151b",
27
+ "size": 56363665
28
28
  },
29
29
  "linux-x64": {
30
30
  "binary": "claude.zst",
31
- "checksum": "bbb773dbaaa24c20d564ae83ce906d9b676c3ccb8f092176722bcbc5016d957b",
32
- "size": 56956227
31
+ "checksum": "0c3f4f2a2f9dc653da2e6acc1a45967d504e8577a64b675ba8e9fcb2dcb0d24c",
32
+ "size": 57645371
33
33
  },
34
34
  "linux-arm64-musl": {
35
35
  "binary": "claude.zst",
36
- "checksum": "55464849825a33e23de886656a1b7e2bdaa0edc21854c88f9e5468ac97997f1d",
37
- "size": 54362236
36
+ "checksum": "85c2e1a6877beaa247a85555e0b815165d5060d8365893103aefb1dd5e9fd717",
37
+ "size": 55048686
38
38
  },
39
39
  "linux-x64-musl": {
40
40
  "binary": "claude.zst",
41
- "checksum": "506a64a81005e1cd7b4b540061b10f6de62297a456a47070894faa994e1cf5eb",
42
- "size": 55764001
41
+ "checksum": "b264b1b400162a528623cb93b5275d0cdcea5a7da7af09a33c9a4b101917a0c0",
42
+ "size": 56449012
43
43
  },
44
44
  "win32-x64": {
45
45
  "binary": "claude.exe.zst",
46
- "checksum": "e5a97e820e244ddfef2f3fd61e7dbc15daed49615ab9ec7f7946256aca565456",
47
- "size": 57090391
46
+ "checksum": "d14fc2cd93ec55e9b2d97b391be53497ce3398ed816c129a60fd617d01ab58db",
47
+ "size": 57765508
48
48
  },
49
49
  "win32-arm64": {
50
50
  "binary": "claude.exe.zst",
51
- "checksum": "e75b4797151ea6eba808d353759b28a22d6c1cf12cc327f349fdeef414607ecc",
52
- "size": 55093687
51
+ "checksum": "d3557e13095e4b0cb61486a861023d1235cb1f1d81c422cc69fc545d5403304e",
52
+ "size": 55778042
53
53
  }
54
54
  }
55
55
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@anthropic-ai/claude-agent-sdk",
3
- "version": "0.3.197",
3
+ "version": "0.3.199",
4
4
  "main": "sdk.mjs",
5
5
  "types": "sdk.d.ts",
6
6
  "exports": {
@@ -57,14 +57,14 @@
57
57
  "zod": "^4.0.0"
58
58
  },
59
59
  "optionalDependencies": {
60
- "@anthropic-ai/claude-agent-sdk-linux-x64": "0.3.197",
61
- "@anthropic-ai/claude-agent-sdk-linux-arm64": "0.3.197",
62
- "@anthropic-ai/claude-agent-sdk-linux-x64-musl": "0.3.197",
63
- "@anthropic-ai/claude-agent-sdk-linux-arm64-musl": "0.3.197",
64
- "@anthropic-ai/claude-agent-sdk-darwin-x64": "0.3.197",
65
- "@anthropic-ai/claude-agent-sdk-darwin-arm64": "0.3.197",
66
- "@anthropic-ai/claude-agent-sdk-win32-x64": "0.3.197",
67
- "@anthropic-ai/claude-agent-sdk-win32-arm64": "0.3.197"
60
+ "@anthropic-ai/claude-agent-sdk-linux-x64": "0.3.199",
61
+ "@anthropic-ai/claude-agent-sdk-linux-arm64": "0.3.199",
62
+ "@anthropic-ai/claude-agent-sdk-linux-x64-musl": "0.3.199",
63
+ "@anthropic-ai/claude-agent-sdk-linux-arm64-musl": "0.3.199",
64
+ "@anthropic-ai/claude-agent-sdk-darwin-x64": "0.3.199",
65
+ "@anthropic-ai/claude-agent-sdk-darwin-arm64": "0.3.199",
66
+ "@anthropic-ai/claude-agent-sdk-win32-x64": "0.3.199",
67
+ "@anthropic-ai/claude-agent-sdk-win32-arm64": "0.3.199"
68
68
  },
69
69
  "files": [
70
70
  "sdk.mjs",
@@ -80,5 +80,5 @@
80
80
  "manifest.json",
81
81
  "manifest.zst.json"
82
82
  ],
83
- "claudeCodeVersion": "2.1.197"
83
+ "claudeCodeVersion": "2.1.199"
84
84
  }
package/sdk-tools.d.ts CHANGED
@@ -29,6 +29,7 @@ export type ToolInputSchemas =
29
29
  | WebFetchInput
30
30
  | WebSearchInput
31
31
  | AskUserQuestionInput
32
+ | ClaudeDesignInput
32
33
  | ProjectsInput
33
34
  | EnterPlanModeInput
34
35
  | TaskCreateInput
@@ -87,6 +88,7 @@ export type ToolOutputSchemas =
87
88
  | CronDeleteOutput
88
89
  | CronListOutput
89
90
  | PushNotificationOutput
91
+ | ClaudeDesignOutput
90
92
  | ProjectsOutput;
91
93
  export type AgentOutput =
92
94
  | {
@@ -304,6 +306,10 @@ export type FileReadOutput =
304
306
  */
305
307
  filePath: string;
306
308
  };
309
+ /**
310
+ * Set when the dedup matched a startup-seeded entry (CLAUDE.md / nested memory) rather than a prior Read tool_result
311
+ */
312
+ source?: "seeded";
307
313
  };
308
314
  export type ListMcpResourcesOutput = {
309
315
  /**
@@ -364,9 +370,6 @@ export type ProjectsOutput =
364
370
  knowledge: {
365
371
  knowledge_size: number;
366
372
  max_knowledge_size: number;
367
- search_threshold: number | null;
368
- rag_active: boolean;
369
- remaining_budget: number | null;
370
373
  };
371
374
  }
372
375
  | {
@@ -395,13 +398,6 @@ export type ProjectsOutput =
395
398
  path: string;
396
399
  doc_uuid: string;
397
400
  replaced: boolean;
398
- knowledge: {
399
- knowledge_size: number;
400
- max_knowledge_size: number;
401
- search_threshold: number | null;
402
- rag_active: boolean;
403
- remaining_budget: number | null;
404
- };
405
401
  }
406
402
  | {
407
403
  method: "project_delete";
@@ -428,7 +424,7 @@ export interface AgentInput {
428
424
  */
429
425
  model?: "sonnet" | "opus" | "haiku" | "fable";
430
426
  /**
431
- * Set to true to run this agent in the background. You will be notified when it completes.
427
+ * Agents run in the background by default; you will be notified when one completes. Set to false to run this agent synchronously when you need its result before continuing.
432
428
  */
433
429
  run_in_background?: boolean;
434
430
  /**
@@ -630,7 +626,7 @@ export interface GrepInput {
630
626
  }
631
627
  export interface TaskStopInput {
632
628
  /**
633
- * The ID of the background task to stop
629
+ * The ID of the background task to stop. Agent-team teammates and named background agents are also accepted by agent ID or name.
634
630
  */
635
631
  task_id?: string;
636
632
  /**
@@ -716,6 +712,10 @@ export interface ReportFindingsInput {
716
712
  * Concrete inputs/state → wrong output/crash
717
713
  */
718
714
  failure_scenario: string;
715
+ /**
716
+ * Short kebab-case slug of the finding type, e.g. "correctness", "simplification", "efficiency", "test-coverage"
717
+ */
718
+ category?: string;
719
719
  /**
720
720
  * Set when a verify pass ran; absent on inline-only reviews
721
721
  */
@@ -2337,6 +2337,18 @@ export interface AskUserQuestionInput {
2337
2337
  source?: string;
2338
2338
  };
2339
2339
  }
2340
+ export interface ClaudeDesignInput {
2341
+ /**
2342
+ * Claude Design action to perform. Call with "list" first to discover the available operations and their argument schemas.
2343
+ */
2344
+ operation: string;
2345
+ /**
2346
+ * Action input object (server-validated). Pass {} for operations that take no input.
2347
+ */
2348
+ arguments: {
2349
+ [k: string]: unknown;
2350
+ };
2351
+ }
2340
2352
  export interface ProjectsInput {
2341
2353
  method: "project_info" | "project_read" | "project_search" | "project_write" | "project_delete";
2342
2354
  /**
@@ -2351,10 +2363,6 @@ export interface ProjectsInput {
2351
2363
  * project_write: a file inside the working directory to upload. The tool reads, encodes, and uploads directly — contents never enter your context. Mutually exclusive with content.
2352
2364
  */
2353
2365
  local_path?: string;
2354
- /**
2355
- * project_write: bypass the chat-injection budget guard. Set only when the write is genuinely worth degrading chat to retrieval mode for everyone in the project.
2356
- */
2357
- force?: boolean;
2358
2366
  /**
2359
2367
  * project_search: knowledge-base query
2360
2368
  */
@@ -2992,6 +3000,10 @@ export interface ReportFindingsOutput {
2992
3000
  * Concrete inputs/state → wrong output/crash
2993
3001
  */
2994
3002
  failure_scenario: string;
3003
+ /**
3004
+ * Short kebab-case slug of the finding type, e.g. "correctness", "simplification", "efficiency", "test-coverage"
3005
+ */
3006
+ category?: string;
2995
3007
  /**
2996
3008
  * Set when a verify pass ran; absent on inline-only reviews
2997
3009
  */
@@ -3271,6 +3283,10 @@ export interface AskUserQuestionOutput {
3271
3283
  notes?: string;
3272
3284
  };
3273
3285
  };
3286
+ /**
3287
+ * Set when the dialog auto-resolved after this many milliseconds of idle (user away from keyboard). Absent on every human-resolved path.
3288
+ */
3289
+ afkTimeoutMs?: number;
3274
3290
  }
3275
3291
  export interface EnterWorktreeOutput {
3276
3292
  worktreePath: string;
@@ -3327,7 +3343,13 @@ export interface ArtifactOutput {
3327
3343
  path: string;
3328
3344
  title?: string;
3329
3345
  version?: string;
3330
- mcpDropped?: string;
3346
+ capabilities?: unknown;
3347
+ stored?: {
3348
+ contract: string;
3349
+ capabilities?: {
3350
+ [k: string]: unknown;
3351
+ };
3352
+ };
3331
3353
  }
3332
3354
  export interface RemoteTriggerOutput {
3333
3355
  status: number;
@@ -3474,10 +3496,15 @@ export interface PushNotificationOutput {
3474
3496
  pushSent?: boolean;
3475
3497
  localSent?: boolean;
3476
3498
  disabledReason?: "config_off" | "user_present" | "no_transport";
3477
- idleSec?: number;
3478
- hasFocus?: boolean;
3479
3499
  /**
3480
3500
  * ISO timestamp captured at tool execution on the emitting process. Optional — resumed sessions replay pre-sentAt outputs verbatim.
3481
3501
  */
3482
3502
  sentAt?: string;
3483
3503
  }
3504
+ export interface ClaudeDesignOutput {
3505
+ operation: string;
3506
+ content: {
3507
+ [k: string]: unknown;
3508
+ }[];
3509
+ isError?: boolean;
3510
+ }
package/sdk.d.ts CHANGED
@@ -188,6 +188,12 @@ export declare type BaseOutputFormat = {
188
188
  /**
189
189
  * Permission callback function for controlling tool usage.
190
190
  * Called before each tool execution to determine if it should be allowed.
191
+ *
192
+ * Return `null` ONLY after the consumer has already sent the
193
+ * control_response out-of-band (e.g. a signed HTTP POST echoing
194
+ * `requestId`); the SDK will skip its own transport write. Fail-closed: an
195
+ * accidental null means no control_response is sent and the tool stays
196
+ * blocked indefinitely — permission prompts have no park deadline.
191
197
  */
192
198
  export declare type CanUseTool = (toolName: string, input: Record<string, unknown>, options: {
193
199
  /** Signaled if the operation should be aborted. */
@@ -231,7 +237,13 @@ export declare type CanUseTool = (toolName: string, input: Record<string, unknow
231
237
  toolUseID: string;
232
238
  /** If running within the context of a sub-agent, the sub-agent's ID. */
233
239
  agentID?: string;
234
- }) => Promise<PermissionResult>;
240
+ /**
241
+ * The control_request envelope's `request_id`. A control_response sent
242
+ * out-of-band (e.g. a signed HTTP POST instead of the SDK's WS write)
243
+ * must echo this value for the worker to match it.
244
+ */
245
+ requestId: string;
246
+ }) => Promise<PermissionResult | null>;
235
247
 
236
248
  export declare type ConfigChangeHookInput = BaseHookInput & {
237
249
  hook_event_name: 'ConfigChange';
@@ -985,6 +997,7 @@ export declare type McpHttpServerConfig = {
985
997
  * Per-server tool-call timeout in milliseconds. Overrides the MCP_TOOL_TIMEOUT environment variable for this server. Hard wall-clock limit per call; progress notifications do not extend it. Values below 1000ms are ignored (falls through to MCP_TOOL_TIMEOUT or the default).
986
998
  */
987
999
  timeout?: number;
1000
+
988
1001
  /**
989
1002
  * When true, all tools from this server are always included in the prompt and never deferred behind tool search. Equivalent to setting defer_loading: false on the API. Default: tools are deferred when tool search is enabled. As a side effect this also blocks startup until the server is connected (capped at the standard 5s connect timeout) even though MCP startup is otherwise non-blocking by default, since the tools must be present when the turn-1 prompt is built.
990
1003
  */
@@ -1099,6 +1112,7 @@ export declare type McpSSEServerConfig = {
1099
1112
  * Per-server tool-call timeout in milliseconds. Overrides the MCP_TOOL_TIMEOUT environment variable for this server. Hard wall-clock limit per call; progress notifications do not extend it. Values below 1000ms are ignored (falls through to MCP_TOOL_TIMEOUT or the default).
1100
1113
  */
1101
1114
  timeout?: number;
1115
+
1102
1116
  /**
1103
1117
  * When true, all tools from this server are always included in the prompt and never deferred behind tool search. Equivalent to setting defer_loading: false on the API. Default: tools are deferred when tool search is enabled. As a side effect this also blocks startup until the server is connected (capped at the standard 5s connect timeout) even though MCP startup is otherwise non-blocking by default, since the tools must be present when the turn-1 prompt is built.
1104
1118
  */
@@ -2615,8 +2629,13 @@ declare const SandboxCredentialsConfigSchema: () => z.ZodOptional<z.ZodObject<{
2615
2629
  }, z.core.$strip>>>;
2616
2630
  envVars: z.ZodOptional<z.ZodArray<z.ZodObject<{
2617
2631
  name: z.ZodString;
2618
- mode: z.ZodLiteral<"deny">;
2632
+ mode: z.ZodEnum<{
2633
+ deny: "deny";
2634
+ mask: "mask";
2635
+ }>;
2636
+ injectHosts: z.ZodOptional<z.ZodArray<z.ZodString>>;
2619
2637
  }, z.core.$strip>>>;
2638
+ allowPlaintextInject: z.ZodOptional<z.ZodBoolean>;
2620
2639
  }, z.core.$strip>>;
2621
2640
 
2622
2641
  export declare type SandboxFilesystemConfig = NonNullable<z.infer<ReturnType<typeof SandboxFilesystemConfigSchema>>>;
@@ -2694,8 +2713,13 @@ declare const SandboxSettingsSchema: () => z.ZodObject<{
2694
2713
  }, z.core.$strip>>>;
2695
2714
  envVars: z.ZodOptional<z.ZodArray<z.ZodObject<{
2696
2715
  name: z.ZodString;
2697
- mode: z.ZodLiteral<"deny">;
2716
+ mode: z.ZodEnum<{
2717
+ deny: "deny";
2718
+ mask: "mask";
2719
+ }>;
2720
+ injectHosts: z.ZodOptional<z.ZodArray<z.ZodString>>;
2698
2721
  }, z.core.$strip>>>;
2722
+ allowPlaintextInject: z.ZodOptional<z.ZodBoolean>;
2699
2723
  }, z.core.$strip>>;
2700
2724
  ignoreViolations: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>;
2701
2725
  enableWeakerNestedSandbox: z.ZodOptional<z.ZodBoolean>;
@@ -3302,6 +3326,13 @@ declare type SDKControlInterruptRequest = {
3302
3326
 
3303
3327
  };
3304
3328
 
3329
+ /**
3330
+ * Requests the worker's selectable model catalog. Fulfills the caps.modelCatalog capability: in a remote thin-client session the worker's provider, settings cascade, and enforcement policy decide which models the session can run, so the thin client must ask rather than read its own getModelOptions().
3331
+ */
3332
+ declare type SDKControlListModelsRequest = {
3333
+ subtype: 'list_models';
3334
+ };
3335
+
3305
3336
  /**
3306
3337
  * Invokes an MCP tool via the subprocess MCP client without a model turn. No permission check (control channel is trusted, same as other subtypes). SDK-type MCP servers (config.type === "sdk") are rejected — they are caller-provided, so the caller can invoke them directly without the subprocess round-trip. Result content passes through the same processing as model-turn MCP calls. Session expiry is not retried automatically; callers can mcp_reconnect and retry. UrlElicitationRequired (-32042) tries Elicitation hooks; if no hook resolves, the call errors with the URL in the message — open it out-of-band, then retry mcp_call.
3307
3338
  */
@@ -3378,6 +3409,10 @@ declare type SDKControlPermissionRequest = {
3378
3409
  tool_use_id: string;
3379
3410
  agent_id?: string;
3380
3411
  description?: string;
3412
+ /**
3413
+ * True when the tool's approval card IS the user-interaction surface (Tool.requiresUserInteraction()). SDK hosts must not offer one-tap Approve/Deny for these — the user has to open the session and respond on the card itself.
3414
+ */
3415
+ requires_user_interaction?: boolean;
3381
3416
  };
3382
3417
 
3383
3418
  /**
@@ -3467,7 +3502,7 @@ export declare type SDKControlRequest = {
3467
3502
  request: SDKControlRequestInner;
3468
3503
  };
3469
3504
 
3470
- declare type SDKControlRequestInner = SDKControlInterruptRequest | SDKControlPermissionRequest | SDKControlInitializeRequest | SDKControlSetPermissionModeRequest | SDKControlSetModelRequest | SDKControlSetMaxThinkingTokensRequest | SDKControlRenameSessionRequest | SDKControlSetColorRequest | SDKControlMcpStatusRequest | SDKControlGetContextUsageRequest | SDKControlGetSessionCostRequest | SDKControlGetUsageRequest | SDKControlGetBinaryVersionRequest | SDKControlMcpCallRequest | SDKControlFileSuggestionsRequest | SDKHookCallbackRequest | SDKControlMcpMessageRequest | SDKControlRewindFilesRequest | SDKControlCancelAsyncMessageRequest | SDKControlReadFileRequest | SDKControlSeedReadStateRequest | SDKControlMcpSetServersRequest | SDKControlRegisterRepoRootRequest | SDKControlReloadPluginsRequest | SDKControlReloadSkillsRequest | SDKControlMcpReconnectRequest | SDKControlMcpToggleRequest | SDKControlSetMcpPermissionModeOverrideRequest | SDKControlRewindConversationRequest | SDKControlChannelEnableRequest | SDKControlEndSessionRequest | SDKControlMcpAuthenticateRequest | SDKControlMcpClearAuthRequest | SDKControlMcpOAuthCallbackUrlRequest | SDKControlClaudeAuthenticateRequest | SDKControlClaudeOAuthCallbackRequest | SDKControlClaudeOAuthWaitForCompletionRequest | SDKControlRemoteControlRequest | SDKControlGenerateSessionTitleRequest | SDKControlSideQuestionRequest | SDKControlUltrareviewLaunchRequest | SDKControlStageFileRequest | SDKControlAddDirectoryRequest | SDKControlMessageRatedRequest | SDKControlOAuthTokenRefreshRequest | SDKControlHostAuthTokenRefreshRequest | SDKControlStopTaskRequest | SDKControlBackgroundTasksRequest | SDKControlApplyFlagSettingsRequest | SDKControlGetSettingsRequest | SDKControlElicitationRequest | SDKControlRequestUserDialogRequest | SDKControlSubmitFeedbackRequest;
3505
+ declare type SDKControlRequestInner = SDKControlInterruptRequest | SDKControlPermissionRequest | SDKControlInitializeRequest | SDKControlSetPermissionModeRequest | SDKControlSetModelRequest | SDKControlSetMaxThinkingTokensRequest | SDKControlRenameSessionRequest | SDKControlSetColorRequest | SDKControlMcpStatusRequest | SDKControlGetContextUsageRequest | SDKControlGetSessionCostRequest | SDKControlListModelsRequest | SDKControlGetUsageRequest | SDKControlGetBinaryVersionRequest | SDKControlMcpCallRequest | SDKControlFileSuggestionsRequest | SDKHookCallbackRequest | SDKControlMcpMessageRequest | SDKControlRewindFilesRequest | SDKControlCancelAsyncMessageRequest | SDKControlReadFileRequest | SDKControlGetWorkspaceDiffRequest | SDKControlGetPlanRequest | SDKControlSeedReadStateRequest | SDKControlMcpSetServersRequest | SDKControlRegisterRepoRootRequest | SDKControlReloadPluginsRequest | SDKControlReloadSkillsRequest | SDKControlMcpReconnectRequest | SDKControlMcpToggleRequest | SDKControlSetMcpPermissionModeOverrideRequest | SDKControlRewindConversationRequest | SDKControlChannelEnableRequest | SDKControlEndSessionRequest | SDKControlMcpAuthenticateRequest | SDKControlMcpClearAuthRequest | SDKControlMcpOAuthCallbackUrlRequest | SDKControlClaudeAuthenticateRequest | SDKControlClaudeOAuthCallbackRequest | SDKControlClaudeOAuthWaitForCompletionRequest | SDKControlRemoteControlRequest | SDKControlGenerateSessionTitleRequest | SDKControlSideQuestionRequest | SDKControlUltrareviewLaunchRequest | SDKControlStageFileRequest | SDKControlAddDirectoryRequest | SDKControlMessageRatedRequest | SDKControlOAuthTokenRefreshRequest | SDKControlHostAuthTokenRefreshRequest | SDKControlStopTaskRequest | SDKControlBackgroundTasksRequest | SDKControlApplyFlagSettingsRequest | SDKControlGetSettingsRequest | SDKControlElicitationRequest | SDKControlRequestUserDialogRequest | SDKControlSubmitFeedbackRequest;
3471
3506
 
3472
3507
  /**
3473
3508
  * Requests the SDK consumer to render a tool-driven blocking dialog and return the user choice. Used by tools that previously rendered Ink JSX via setToolJSX with an onDone callback.
@@ -3724,7 +3759,7 @@ export declare type SDKMemoryRecallMessage = {
3724
3759
  session_id: string;
3725
3760
  };
3726
3761
 
3727
- export declare type SDKMessage = SDKAssistantMessage | SDKUserMessage | SDKUserMessageReplay | SDKResultMessage | SDKSystemMessage | SDKPartialAssistantMessage | SDKCompactBoundaryMessage | SDKStatusMessage | SDKAPIRetryMessage | SDKModelRefusalFallbackMessage | SDKModelRefusalNoFallbackMessage | SDKLocalCommandOutputMessage | SDKHookStartedMessage | SDKHookProgressMessage | SDKHookResponseMessage | SDKPluginInstallMessage | SDKToolProgressMessage | SDKAuthStatusMessage | SDKTaskNotificationMessage | SDKTaskStartedMessage | SDKTaskUpdatedMessage | SDKTaskProgressMessage | SDKThinkingTokensMessage | SDKSessionStateChangedMessage | SDKWorkerShuttingDownMessage | SDKCommandsChangedMessage | SDKNotificationMessage | SDKFilesPersistedEvent | SDKToolUseSummaryMessage | SDKMemoryRecallMessage | SDKRateLimitEvent | SDKElicitationCompleteMessage | SDKPermissionDeniedMessage | SDKPromptSuggestionMessage | SDKMirrorErrorMessage | SDKInformationalMessage;
3762
+ export declare type SDKMessage = SDKAssistantMessage | SDKUserMessage | SDKUserMessageReplay | SDKResultMessage | SDKSystemMessage | SDKPartialAssistantMessage | SDKCompactBoundaryMessage | SDKStatusMessage | SDKAPIRetryMessage | SDKControlRequestProgressMessage | SDKModelRefusalFallbackMessage | SDKModelRefusalNoFallbackMessage | SDKLocalCommandOutputMessage | SDKHookStartedMessage | SDKHookProgressMessage | SDKHookResponseMessage | SDKPluginInstallMessage | SDKToolProgressMessage | SDKAuthStatusMessage | SDKTaskNotificationMessage | SDKTaskStartedMessage | SDKTaskUpdatedMessage | SDKTaskProgressMessage | SDKThinkingTokensMessage | SDKSessionStateChangedMessage | SDKWorkerShuttingDownMessage | SDKCommandsChangedMessage | SDKNotificationMessage | SDKFilesPersistedEvent | SDKToolUseSummaryMessage | SDKMemoryRecallMessage | SDKRateLimitEvent | SDKElicitationCompleteMessage | SDKPermissionDeniedMessage | SDKPromptSuggestionMessage | SDKMirrorErrorMessage | SDKInformationalMessage | SDKConversationResetMessage;
3728
3763
 
3729
3764
  /**
3730
3765
  * Provenance of a user-role message (peer session, team lead, channel). Absent or `human` means keyboard input from the user.
@@ -5023,7 +5058,7 @@ export declare interface Settings {
5023
5058
  */
5024
5059
  disableArtifact?: boolean;
5025
5060
  /**
5026
- * Enable or disable the Artifact tool for this user. Unset = default by plan once the feature is available.
5061
+ * Enable or disable the Artifact tool for this user. Unset defaults to enabled once the feature is available.
5027
5062
  */
5028
5063
  enableArtifact?: boolean;
5029
5064
  /**
@@ -5804,7 +5839,7 @@ export declare interface Settings {
5804
5839
  httpProxyPort?: number;
5805
5840
  socksProxyPort?: number;
5806
5841
  /**
5807
- * [EXPERIMENTAL] Enable in-process TLS termination so the per-request filter can see HTTPS request bodies. Provide a CA cert+key, or omit both to have sandbox-runtime generate an ephemeral one for the session.
5842
+ * [EXPERIMENTAL] Enable in-process TLS termination so the per-request filter can see HTTPS request bodies. Provide a CA cert+key, or omit both to have sandbox-runtime generate an ephemeral one for the session. Only honored from user, managed/policy, or CLI (`--settings`) settings — project settings (.claude/settings.json and .claude/settings.local.json) are ignored.
5808
5843
  */
5809
5844
  tlsTerminate?: {
5810
5845
  caCertPath?: string;
@@ -5848,7 +5883,7 @@ export declare interface Settings {
5848
5883
  mode: 'deny';
5849
5884
  }[];
5850
5885
  /**
5851
- * Environment variables to protect. `deny` unsets the variable for sandboxed commands.
5886
+ * Environment variables to protect. `deny` unsets the variable for sandboxed commands; `mask` substitutes a sentinel inside the sandbox and injects the real value at the proxy.
5852
5887
  */
5853
5888
  envVars?: {
5854
5889
  /**
@@ -5856,10 +5891,18 @@ export declare interface Settings {
5856
5891
  */
5857
5892
  name: string;
5858
5893
  /**
5859
- * Access mode for this environment variable. Only `deny` is supported.
5894
+ * Access mode for this environment variable. `deny` unsets the variable for sandboxed commands; `mask` shows sandboxed commands a sentinel value and the host proxy swaps sentinel→real on egress to `injectHosts`.
5860
5895
  */
5861
- mode: 'deny';
5896
+ mode: 'deny' | 'mask';
5897
+ /**
5898
+ * Optional narrowing of where the proxy substitutes this credential. Only meaningful when mode is `mask`; accepted but ignored for `deny`. If unset, defaults to `network.allowedDomains` — the credential is injected at every reachable host. Each entry must be reachable via `network.allowedDomains` (sandbox-runtime validates this).
5899
+ */
5900
+ injectHosts?: string[];
5862
5901
  }[];
5902
+ /**
5903
+ * Allow sentinel→real substitution on the plain-HTTP proxy path. Defaults to false: without TLS termination the upstream identity is unverified and the credential travels in cleartext. Set only for trusted-network test fixtures. Only honored from user, managed/policy, or CLI (`--settings`) settings — project settings (.claude/settings.json and .claude/settings.local.json) are ignored.
5904
+ */
5905
+ allowPlaintextInject?: boolean;
5863
5906
  };
5864
5907
  ignoreViolations?: {
5865
5908
  [k: string]: string[];
@@ -6340,7 +6383,7 @@ export declare function startup(_params?: {
6340
6383
  initializeTimeoutMs?: number;
6341
6384
  }): Promise<WarmQuery>;
6342
6385
 
6343
- declare type StdoutMessage = coreTypes.SDKMessage | coreTypes.SDKPostTurnSummaryMessage | coreTypes.SDKTaskSummaryMessage | coreTypes.SDKTranscriptMirrorMessage | SDKControlResponse | SDKControlRequest | SDKControlCancelRequest | SDKKeepAliveMessage;
6386
+ declare type StdoutMessage = coreTypes.SDKMessage | coreTypes.SDKPostTurnSummaryMessage | coreTypes.SDKTaskSummaryMessage | coreTypes.SDKTranscriptMirrorMessage | coreTypes.SDKActiveGoalMessage | SDKControlResponse | SDKControlRequest | SDKControlCancelRequest | SDKKeepAliveMessage;
6344
6387
 
6345
6388
  export declare type StopFailureHookInput = BaseHookInput & {
6346
6389
  hook_event_name: 'StopFailure';