@anthropic-ai/claude-agent-sdk 0.3.246 → 0.3.248

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,53 +1,51 @@
1
1
  {
2
- "version": "2.1.246",
3
- "commit": "1ba9d2211ae14e591bd1d60451c217c51f415e86",
4
- "buildDate": "2026-08-25T18:46:33Z",
2
+ "version": "2.1.248",
3
+ "commit": "8c9482ad0510ad5e3c88f0ebe6f035ec148f73e2",
4
+ "buildDate": "2026-08-27T19:38:50Z",
5
5
  "platforms": {
6
6
  "darwin-arm64": {
7
7
  "binary": "claude",
8
- "checksum": "7b09f01cb76a38e0e3a7c47c5d698d382162a5ff26538fc778683770caf9218b",
9
- "size": 230824016
8
+ "checksum": "a3f276daa51919f378bcd797d44f8e3d09653c2858123157d272de38952efeef",
9
+ "size": 206463136
10
10
  },
11
11
  "darwin-x64": {
12
12
  "binary": "claude",
13
- "checksum": "336625850986371487de7ece776d583f36cc3b3bc7178fcfbde3656d010289fb",
14
- "size": 239710512
13
+ "checksum": "35c21b09d049a4d040c511cd9f73de01df83aa1d4b35a43ae1353bde413b42bc",
14
+ "size": 215124048
15
15
  },
16
16
  "linux-arm64": {
17
17
  "binary": "claude",
18
- "checksum": "f98296e6e61c507589d1a973b262976b734700ec4e055cb64afdbf6d9a337db7",
19
- "size": 247389632
18
+ "checksum": "76655a3731274f36236632b9acbcb9bef7055de20041c411b761856043fbc0df",
19
+ "size": 223141128
20
20
  },
21
21
  "linux-x64": {
22
22
  "binary": "claude",
23
- "checksum": "1a0a662dc1bb938eaec38545abce9a4a69113d7d7f7c5e1a553ea276617b906a",
24
- "size": 247905800
23
+ "checksum": "3edee3cb054bd6823674fd60d5c0e442825b28ee8fbf815af2d16bf0de072e16",
24
+ "size": 223599960
25
25
  },
26
26
  "linux-arm64-musl": {
27
27
  "binary": "claude",
28
- "checksum": "8f7d77a91b95dbeda31393463b2ac7d2b490c577486829b732ce1ac41a747034",
29
- "size": 240072248
28
+ "checksum": "ca9cabd7c636889de73c399d31be4f115fd2737c64482ada7bf4b1c0d51448f3",
29
+ "size": 215889472
30
30
  },
31
31
  "linux-x64-musl": {
32
32
  "binary": "claude",
33
- "checksum": "81de46c50d987b99d2a1b4f3b11f3acf8c6deb57bef2a41f8e770837ddcf52fb",
34
- "size": 241667960
33
+ "checksum": "155e1aa56d0c7e2aaae92788c414e7c43315220289bbd38f7a89ba33d07ff48f",
34
+ "size": 217575288
35
35
  },
36
36
  "win32-x64": {
37
37
  "binary": "claude.exe",
38
- "checksum": "9f07f1ecaf26231fc2fac489e7c5214140d38fd14764938a2c8c46f31931d204",
39
- "size": 250948768
38
+ "checksum": "c322169422b45ec4bbfeae3aae6cfd6367a622b0d12f06ba9766e18bb8eca2af",
39
+ "size": 226708128
40
40
  },
41
41
  "win32-arm64": {
42
42
  "binary": "claude.exe",
43
- "checksum": "911036439b49e81c5801092764e803207fc56b4e690afadb743f51220c2f8201",
44
- "size": 242062496
43
+ "checksum": "d3ee9756700a4e7642216e04f1a57baba9633732de9d85a4b7918c4731e4b572",
44
+ "size": 217812640
45
45
  }
46
46
  },
47
47
  "sdkCompat": {
48
48
  "testedWrapperVersions": [
49
- "0.3.209",
50
- "0.3.210",
51
49
  "0.3.211",
52
50
  "0.3.212",
53
51
  "0.3.214",
package/manifest.zst.json CHANGED
@@ -1,61 +1,59 @@
1
1
  {
2
- "version": "2.1.246",
3
- "commit": "1ba9d2211ae14e591bd1d60451c217c51f415e86",
4
- "buildDate": "2026-08-25T18:47:52Z",
2
+ "version": "2.1.248",
3
+ "commit": "8c9482ad0510ad5e3c88f0ebe6f035ec148f73e2",
4
+ "buildDate": "2026-08-27T19:40:05Z",
5
5
  "platforms": {
6
6
  "darwin-arm64": {
7
7
  "binary": "claude.zst",
8
- "checksum": "1978b0b0167e7c077ae2536ed757a4dc22226540e3390bbc0884dc2ed3b9a0e3",
9
- "size": 68186320,
8
+ "checksum": "b29c2c80dd0e93a692fdfd910204b04b61cc98983634bfb7d7ee3882809b4568",
9
+ "size": 63732872,
10
10
  "bundle": {
11
- "checksum": "beec443ec1fc0f6989e5ddcf25b032cdccceb8ca76e86b4ce90808ce88aacc89",
12
- "size": 68190259
11
+ "checksum": "19cdcfee1314ed0958a7805ce4dd000b4651d0cecca5f6bbcd9ef68976628a32",
12
+ "size": 63735676
13
13
  }
14
14
  },
15
15
  "darwin-x64": {
16
16
  "binary": "claude.zst",
17
- "checksum": "b6269818f05c61f86029a018c39ed0903a5d69ad0eed6c0f05df7a79dd10c6ae",
18
- "size": 72456477,
17
+ "checksum": "bb04d8fa542d01b96b6ddee76560667c50eeefb4cfb3b7ad5b9dc58d36dbfa5f",
18
+ "size": 67819333,
19
19
  "bundle": {
20
- "checksum": "0f2691f9212e25422ed694d2eb6890030f27d1574b46af7d92d8b239127d3cba",
21
- "size": 72465121
20
+ "checksum": "2db3fd3b76a70a421703ebfc23afee17cb40dfbf8b0bd46a5288dc041723e3d6",
21
+ "size": 67817366
22
22
  }
23
23
  },
24
24
  "linux-arm64": {
25
25
  "binary": "claude.zst",
26
- "checksum": "68915f3c07ad0090466282d580df4f4a11b339cee26888ed25f9446bbbef5c91",
27
- "size": 77461718
26
+ "checksum": "eb1343b9092ddfbaf39bc44afeaf596e0d62516aadcf00c32626753c267cd90d",
27
+ "size": 73072310
28
28
  },
29
29
  "linux-x64": {
30
30
  "binary": "claude.zst",
31
- "checksum": "7fb5cc4ea9eb02c777a4d6363907957253fec6ee79617d145a142fbcc7e8c438",
32
- "size": 78105392
31
+ "checksum": "c6e7e88189b5c8319e32b92ea53813eec683dcdfe187257d502b7e57d8e0f33a",
32
+ "size": 73704780
33
33
  },
34
34
  "linux-arm64-musl": {
35
35
  "binary": "claude.zst",
36
- "checksum": "74583317118d09d3a263593b18420e7c67cd49844f59cc6b403377b2bf27bbe6",
37
- "size": 75912733
36
+ "checksum": "68ef3296006335ab24a0eca03332e97d2e0e92909773c6629b559f2bb5d04503",
37
+ "size": 71555622
38
38
  },
39
39
  "linux-x64-musl": {
40
40
  "binary": "claude.zst",
41
- "checksum": "8527572efb30d0e23a84f0871cc61d586f21400fcd3ca9e82f30c754bf6dfa10",
42
- "size": 76577839
41
+ "checksum": "28dee5aabacf56bd7d0a984c89da642fae2e37e6782951efadcebe160fba00e5",
42
+ "size": 72211859
43
43
  },
44
44
  "win32-x64": {
45
45
  "binary": "claude.exe.zst",
46
- "checksum": "4b49b5f1c4227009a57886d94f41fa887dafe0eaa4cb36252aed3954da663418",
47
- "size": 80499903
46
+ "checksum": "efd339adce351a3406b9583c1ce1c2cace7c2745000d8adcb420477459edfc83",
47
+ "size": 76106262
48
48
  },
49
49
  "win32-arm64": {
50
50
  "binary": "claude.exe.zst",
51
- "checksum": "d01182540877177cdf600be238069a11479f31b2fb4f76b736108b38e0e1ccd0",
52
- "size": 77290190
51
+ "checksum": "d11e5d07414acaa8afd744bcc042da56406091a1b6ed9783591abeddd9f32272",
52
+ "size": 72889557
53
53
  }
54
54
  },
55
55
  "sdkCompat": {
56
56
  "testedWrapperVersions": [
57
- "0.3.209",
58
- "0.3.210",
59
57
  "0.3.211",
60
58
  "0.3.212",
61
59
  "0.3.214",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@anthropic-ai/claude-agent-sdk",
3
- "version": "0.3.246",
3
+ "version": "0.3.248",
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.246",
61
- "@anthropic-ai/claude-agent-sdk-linux-arm64": "0.3.246",
62
- "@anthropic-ai/claude-agent-sdk-linux-x64-musl": "0.3.246",
63
- "@anthropic-ai/claude-agent-sdk-linux-arm64-musl": "0.3.246",
64
- "@anthropic-ai/claude-agent-sdk-darwin-x64": "0.3.246",
65
- "@anthropic-ai/claude-agent-sdk-darwin-arm64": "0.3.246",
66
- "@anthropic-ai/claude-agent-sdk-win32-x64": "0.3.246",
67
- "@anthropic-ai/claude-agent-sdk-win32-arm64": "0.3.246"
60
+ "@anthropic-ai/claude-agent-sdk-linux-x64": "0.3.248",
61
+ "@anthropic-ai/claude-agent-sdk-linux-arm64": "0.3.248",
62
+ "@anthropic-ai/claude-agent-sdk-linux-x64-musl": "0.3.248",
63
+ "@anthropic-ai/claude-agent-sdk-linux-arm64-musl": "0.3.248",
64
+ "@anthropic-ai/claude-agent-sdk-darwin-x64": "0.3.248",
65
+ "@anthropic-ai/claude-agent-sdk-darwin-arm64": "0.3.248",
66
+ "@anthropic-ai/claude-agent-sdk-win32-x64": "0.3.248",
67
+ "@anthropic-ai/claude-agent-sdk-win32-arm64": "0.3.248"
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.246"
83
+ "claudeCodeVersion": "2.1.248"
84
84
  }
package/sdk-tools.d.ts CHANGED
@@ -103,22 +103,6 @@ export type ToolOutputSchemas =
103
103
  export type AgentOutput =
104
104
  | {
105
105
  agentId: string;
106
- /**
107
- * @internal Count of leading harness-authored content blocks (hand-back provenance bookkeeping; not a stable consumer field)
108
- */
109
- harnessNoteCount?: number;
110
- /**
111
- * @internal Count of trailing harness-authored content blocks (hand-back provenance bookkeeping; not a stable consumer field)
112
- */
113
- harnessTailCount?: number;
114
- /**
115
- * @internal Fingerprint binding the harness section counts to the exact content they were computed against; a hook rewrite invalidates the counts rather than misplacing rewritten bytes
116
- */
117
- harnessSectionHash?: string;
118
- /**
119
- * @internal The handoff review was skipped because the provenance frame covers this delivery (tengu_auto_mode_config.classifyHandoff: false); the tool_result mapper MUST compose the frame when set, regardless of a fresh flag read
120
- */
121
- handoffReviewSkipped?: boolean;
122
106
  agentType?: string;
123
107
  content: {
124
108
  type: "text";
@@ -464,6 +448,7 @@ export type ArtifactOutput =
464
448
  artifacts: {
465
449
  title: string;
466
450
  url: string;
451
+ favicon?: string;
467
452
  updatedAt?: string;
468
453
  rel?: "mine" | "shared";
469
454
  }[];
@@ -3078,7 +3063,7 @@ export interface ArtifactInput {
3078
3063
  */
3079
3064
  file_path?: string;
3080
3065
  /**
3081
- * Browser-tab icon: one or two emoji (e.g. "📊"). No markup. Required to publish. Keep stable across redeploys; change only on a hard topic pivot.
3066
+ * Browser-tab icon: one or two emoji (e.g. "📊"). No markup. Required on a page's first publish; omit on a redeploy (same file path this session, or `url`) to keep the artifact's icon — pass a new one only when the user asks.
3082
3067
  */
3083
3068
  favicon?: string;
3084
3069
  /**
@@ -3237,7 +3222,7 @@ export interface BashOutput {
3237
3222
  */
3238
3223
  ghRateLimitHint?: string;
3239
3224
  /**
3240
- * @internal Structured classification of git/gh operations detected in this command (commit/push/merge/rebase/PR). Client-facing — lets clients render git activity without re-parsing stdout; not surfaced to the model.
3225
+ * Structured classification of git/gh operations detected in this command (commit/push/merge/rebase/PR). Client-facing — lets clients render git activity without re-parsing stdout; not surfaced to the model.
3241
3226
  */
3242
3227
  gitOperation?: {
3243
3228
  commit?: {
package/sdk.d.ts CHANGED
@@ -499,8 +499,9 @@ declare namespace coreTypes {
499
499
  * Creates an MCP server instance that can be used with the SDK transport.
500
500
  * This allows SDK users to define custom tools that run in the same process.
501
501
  *
502
- * Tool calls are bounded by the MCP tool-call timeout — the MCP_TOOL_TIMEOUT
503
- * env var (ms), effectively unbounded by default.
502
+ * Tool calls are bounded by the MCP tool-call timeout — `options.timeout`
503
+ * (ms) for this server, else the MCP_TOOL_TIMEOUT env var, effectively
504
+ * unbounded by default.
504
505
  */
505
506
  export declare function createSdkMcpServer(_options: CreateSdkMcpServerOptions): McpSdkServerConfigWithInstance;
506
507
 
@@ -523,6 +524,15 @@ declare type CreateSdkMcpServerOptions = {
523
524
  * works and is OR'd with this.
524
525
  */
525
526
  alwaysLoad?: boolean;
527
+ /**
528
+ * Per-server tool-call timeout in milliseconds. Overrides the
529
+ * MCP_TOOL_TIMEOUT environment variable for this server. Hard wall-clock
530
+ * limit per call; progress notifications do not extend it. Values below
531
+ * 1000ms are ignored (falls through to MCP_TOOL_TIMEOUT or the default).
532
+ * Applies when the server is first registered; changing it for an
533
+ * already-registered server has no effect until it is removed and re-added.
534
+ */
535
+ timeout?: number;
526
536
  };
527
537
 
528
538
  export declare type CwdChangedHookInput = BaseHookInput & {
@@ -1075,6 +1085,10 @@ export declare type McpHttpServerConfig = {
1075
1085
  export declare type McpSdkServerConfig = {
1076
1086
  type: 'sdk';
1077
1087
  name: string;
1088
+ /**
1089
+ * 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). Applies when the server is first registered; changing it for an already-registered server has no effect until it is removed and re-added.
1090
+ */
1091
+ timeout?: number;
1078
1092
  };
1079
1093
 
1080
1094
  /**
@@ -3154,7 +3168,7 @@ export declare type SDKAuthStatusMessage = {
3154
3168
  };
3155
3169
 
3156
3170
  /**
3157
- * The full set of live background tasks, emitted whenever membership changes (start, completion, kill, a foreground agent being backgrounded). A level signal, unlike the task_started/task_notification edge bookends: consumers that only need 'is background work running' should replace their set with each payload rather than pairing edges, so a missed bookend cannot wedge a stale running indicator. Ordering relative to the bookends for the same transition is unspecified (in practice the level precedes them) and the payload carries ids only, so do not correlate it with the edge stream. The level is per-process: nothing is emitted at startup, so consumers must reset to the empty set whenever the session's CLI process (re)starts and let the next membership change repopulate it. A host that re-initializes an already-running process (a repeated `initialize` control request, e.g. after reconnecting) is sent a snapshot of the current set right behind the success response to that request, even when it is empty, so it need not wait for a change; CLIs that predate this send nothing there.
3171
+ * The full set of live background tasks, emitted whenever membership changes (start, completion, kill, a foreground agent being backgrounded) or an entry's `ambient` flag flips. A level signal, unlike the task_started/task_notification edge bookends: consumers that only need 'is background work running' should replace their set with each payload rather than pairing edges, so a missed bookend cannot wedge a stale running indicator. Ordering relative to the bookends for the same transition is unspecified (in practice the level precedes them) and the payload carries ids only, so do not correlate it with the edge stream. The level is per-process: nothing is emitted at startup, so consumers must reset to the empty set whenever the session's CLI process (re)starts and let the next membership change repopulate it. A host that re-initializes an already-running process (a repeated `initialize` control request, e.g. after reconnecting) is sent a snapshot of the current set right behind the success response to that request, even when it is empty, so it need not wait for a change; CLIs that predate this send nothing there.
3158
3172
  */
3159
3173
  export declare type SDKBackgroundTasksChangedMessage = {
3160
3174
  type: 'system';
@@ -3166,6 +3180,10 @@ export declare type SDKBackgroundTasksChangedMessage = {
3166
3180
  task_id: string;
3167
3181
  task_type: string;
3168
3182
  description: string;
3183
+ /**
3184
+ * True for housekeeping tasks the CLI does not surface as user work (every skip_transcript task, plus auto-started live-update watchers); hosts should exclude them from activity indicators.
3185
+ */
3186
+ ambient?: boolean;
3169
3187
  }[];
3170
3188
  uuid: UUID;
3171
3189
  session_id: string;
@@ -3721,6 +3739,15 @@ declare type SDKControlInitializeRequest = {
3721
3739
  subtype: 'initialize';
3722
3740
  hooks?: Partial<Record<coreTypes.HookEvent, SDKHookCallbackMatcher[]>>;
3723
3741
  sdkMcpServers?: string[];
3742
+ /**
3743
+ * Settings for the SDK-hosted MCP servers named in sdkMcpServers, keyed by server name. Sent as a separate field so a CLI that predates it ignores it; entries whose name is not in sdkMcpServers, and values that do not match this shape, are ignored rather than rejected. Applied when the server is first registered.
3744
+ */
3745
+ sdkMcpServerConfigs?: Record<string, {
3746
+ /**
3747
+ * 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). Applies when the server is first registered; changing it for an already-registered server has no effect until it is removed and re-added.
3748
+ */
3749
+ timeout?: number;
3750
+ }>;
3724
3751
  jsonSchema?: Record<string, unknown>;
3725
3752
  systemPrompt?: string[];
3726
3753
  appendSystemPrompt?: string;
@@ -3793,6 +3820,7 @@ export declare type SDKControlInitializeResponse = {
3793
3820
 
3794
3821
 
3795
3822
 
3823
+
3796
3824
  };
3797
3825
 
3798
3826
  /**
@@ -4864,6 +4892,7 @@ export declare type SDKSystemMessage = {
4864
4892
 
4865
4893
  fast_mode_state?: FastModeState;
4866
4894
  fast_mode_disabled_reason?: FastModeDisabledReason;
4895
+
4867
4896
  /**
4868
4897
  * The effort level the session will send on its next request — after env overrides, session state, org caps and model-support downgrades; the same value get_settings reports as applied.effort. null when no effort parameter will be sent (a model without effort, CLAUDE_CODE_EFFORT_LEVEL=unset, or an internal numeric budget). Present on Remote Control bridge init frames (terminal- and Desktop/VS Code-hosted sessions); absent on hosts that do not publish it and on CLIs that predate the field. Re-emitted inits carry the current value — the newest frame wins.
4869
4898
  */
@@ -4877,6 +4906,8 @@ export declare type SDKSystemMessage = {
4877
4906
 
4878
4907
 
4879
4908
 
4909
+
4910
+
4880
4911
  uuid: UUID;
4881
4912
  session_id: string;
4882
4913
  };
@@ -4895,6 +4926,10 @@ export declare type SDKTaskNotificationMessage = {
4895
4926
  duration_ms: number;
4896
4927
  };
4897
4928
  skip_transcript?: boolean;
4929
+ /**
4930
+ * True for housekeeping tasks the CLI does not surface as user work (every skip_transcript task, plus auto-started live-update watchers); hosts should exclude them from activity indicators.
4931
+ */
4932
+ ambient?: boolean;
4898
4933
  uuid: UUID;
4899
4934
  session_id: string;
4900
4935
  };
@@ -4949,6 +4984,10 @@ export declare type SDKTaskStartedMessage = {
4949
4984
  * Ambient/housekeeping task. Consumers should hide this from the inline transcript; it may still appear in a tasks panel.
4950
4985
  */
4951
4986
  skip_transcript?: boolean;
4987
+ /**
4988
+ * True for housekeeping tasks the CLI does not surface as user work (every skip_transcript task, plus auto-started live-update watchers); hosts should exclude them from activity indicators.
4989
+ */
4990
+ ambient?: boolean;
4952
4991
  uuid: UUID;
4953
4992
  session_id: string;
4954
4993
  };
@@ -5055,6 +5094,7 @@ export declare type SDKUserMessage = {
5055
5094
 
5056
5095
 
5057
5096
 
5097
+
5058
5098
  uuid?: UUID;
5059
5099
  session_id?: string;
5060
5100
  /**
@@ -5105,6 +5145,7 @@ export declare type SDKUserMessageReplay = {
5105
5145
 
5106
5146
 
5107
5147
 
5148
+
5108
5149
  uuid: UUID;
5109
5150
  session_id: string;
5110
5151
  isReplay: true;
@@ -5440,6 +5481,10 @@ export declare interface Settings {
5440
5481
  * Number of days to retain chat transcripts before automatic cleanup (default: 30). Minimum 1. Use a large value for long retention; use --no-session-persistence to disable transcript writes entirely.
5441
5482
  */
5442
5483
  cleanupPeriodDays?: number;
5484
+ /**
5485
+ * Retention ceiling in days for session transcripts created or last written by a desktop-host surface (Claude Desktop, Cowork), which are otherwise exempt from the cleanupPeriodDays sweep. 0 (the default) means no ceiling: such transcripts are kept until deleted another way. Unlike cleanupPeriodDays, 0 is allowed because this setting never disables writes — it only bounds an exemption from deletion. The ceiling is a hard cap: it also bounds an active archive grace, so the grace window of a release marker never keeps files past the ceiling. Ignored when cleanupPeriodDays is managed by org policy. A ceiling at or below cleanupPeriodDays effectively disables the exemption: those transcripts age out on the regular cleanupPeriodDays schedule, so the effective retention is whichever of the two periods is longer.
5486
+ */
5487
+ desktopSessionCleanupPeriodDays?: number;
5443
5488
  /**
5444
5489
  * Set to false to turn off syncing of the skills you have enabled on claude.ai. In your user settings (or managed settings): nothing more is downloaded, previously synced skills (~/.claude/skills/synced) can no longer be run, are hidden from every session started afterwards, and are moved to ~/.claude/skills/.trash at the next launch (deleted after cleanupPeriodDays; re-downloaded, not restored, if you re-enable). In .claude/settings.local.json or --settings: downloads stop and synced skills are blocked and hidden for sessions in that workspace or invocation only (nothing is moved). Not read from project settings (.claude/settings.json). Only false is honored — the feature is enabled server-side for your account, so setting true does not turn it on early. While it is on, synced skills are available in every session, re-synced every 10 minutes, and removed when you disable them on claude.ai. Only applies when signed in with your Claude account.
5445
5490
  */
@@ -7469,11 +7514,22 @@ export declare interface Settings {
7469
7514
  verbs: string[];
7470
7515
  };
7471
7516
  /**
7472
- * Override spinner tips. tips: array of tip strings. excludeDefault: if true, only show custom tips (default: false).
7517
+ * Add your organization's own tips to the spinner tip rotation. tips: strings or {id, text, cooldownSessions?, priority?} objects; tipsFile: a JSON file of the same; label: prefix shown before your tips; excludeDefault: if true, only show your tips (default: false).
7473
7518
  */
7474
7519
  spinnerTipsOverride?: {
7475
7520
  excludeDefault?: boolean;
7476
- tips: string[];
7521
+ tips?: (string | {
7522
+ [k: string]: unknown;
7523
+ })[];
7524
+ /**
7525
+ * Absolute or ~/ local path to a JSON file holding an array of tips (same shapes as `tips`); honored from user, --settings and on-disk managed settings only. Read once per CLI process (restart to pick up edits).
7526
+ */
7527
+ tipsFile?: string;
7528
+ /**
7529
+ * Prefix shown before your tips in the spinner (default "Tip")
7530
+ */
7531
+ label?: string;
7532
+ [k: string]: unknown;
7477
7533
  };
7478
7534
  /**
7479
7535
  * Whether to disable syntax highlighting in diffs