@get-bb/plugin-sdk 0.5.24 → 0.5.27

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.
@@ -248,6 +248,8 @@ declare const appKeybindingOverridesSchema: z$1.ZodArray<z$1.ZodObject<{
248
248
  "panel.previousTab": "panel.previousTab";
249
249
  "panel.reopenClosedTab": "panel.reopenClosedTab";
250
250
  "panel.toggle": "panel.toggle";
251
+ "plugins.enterSafeMode": "plugins.enterSafeMode";
252
+ "plugins.exitSafeMode": "plugins.exitSafeMode";
251
253
  "question.select.1": "question.select.1";
252
254
  "question.select.2": "question.select.2";
253
255
  "question.select.3": "question.select.3";
@@ -476,6 +478,12 @@ declare const environmentSchema: z$1.ZodObject<{
476
478
  }, z$1.core.$strip>], "type">;
477
479
  }, z$1.core.$strip>>;
478
480
  hostId: z$1.ZodString;
481
+ hostLifecycle: z$1.ZodEnum<{
482
+ "cleanup-failed": "cleanup-failed";
483
+ active: "active";
484
+ removed: "removed";
485
+ removing: "removing";
486
+ }>;
479
487
  id: z$1.ZodString;
480
488
  isGitRepo: z$1.ZodBoolean;
481
489
  isWorktree: z$1.ZodBoolean;
@@ -547,6 +555,11 @@ declare const workspaceGitOperationSchema: z$1.ZodDiscriminatedUnion<[z$1.ZodObj
547
555
  }, z$1.core.$strip>], "kind">;
548
556
  type WorkspaceGitOperation = z$1.infer<typeof workspaceGitOperationSchema>;
549
557
 
558
+ declare const hostTypeSchema: z$1.ZodEnum<{
559
+ ephemeral: "ephemeral";
560
+ persistent: "persistent";
561
+ }>;
562
+ type HostType = z$1.infer<typeof hostTypeSchema>;
550
563
  declare const hostSchema: z$1.ZodObject<{
551
564
  createdAt: z$1.ZodNumber;
552
565
  id: z$1.ZodString;
@@ -3092,6 +3105,7 @@ declare const threadEventSchema: z$1.ZodPipe<z$1.ZodUnknown, z$1.ZodUnion<readon
3092
3105
  cause: z$1.ZodOptional<z$1.ZodLiteral<"host-connection-lost">>;
3093
3106
  reason: z$1.ZodEnum<{
3094
3107
  "host-daemon-restarted": "host-daemon-restarted";
3108
+ "host-removed": "host-removed";
3095
3109
  "manual-stop": "manual-stop";
3096
3110
  "provider-turn-idle": "provider-turn-idle";
3097
3111
  }>;
@@ -9462,6 +9476,15 @@ declare const pluginSettingsResponseSchema: z$1.ZodObject<{
9462
9476
  values: z$1.ZodRecord<z$1.ZodString, z$1.ZodType<JsonValue, unknown, z$1.core.$ZodTypeInternals<JsonValue, unknown>>>;
9463
9477
  }, z$1.core.$strip>;
9464
9478
  type PluginSettingsResponse = z$1.infer<typeof pluginSettingsResponseSchema>;
9479
+ declare const pluginSafeModeResponseSchema: z$1.ZodObject<{
9480
+ enabled: z$1.ZodBoolean;
9481
+ }, z$1.core.$strip>;
9482
+ type PluginSafeModeResponse = z$1.infer<typeof pluginSafeModeResponseSchema>;
9483
+ declare const pluginSafeModeUpdateResponseSchema: z$1.ZodObject<{
9484
+ enabled: z$1.ZodBoolean;
9485
+ problems: z$1.ZodArray<z$1.ZodString>;
9486
+ }, z$1.core.$strip>;
9487
+ type PluginSafeModeUpdateResponse = z$1.infer<typeof pluginSafeModeUpdateResponseSchema>;
9465
9488
  declare const pluginTokenResponseSchema: z$1.ZodObject<{
9466
9489
  ok: z$1.ZodLiteral<true>;
9467
9490
  token: z$1.ZodString;
@@ -10017,6 +10040,8 @@ declare const systemConfigResponseSchema: z$1.ZodObject<{
10017
10040
  "panel.previousTab": "panel.previousTab";
10018
10041
  "panel.reopenClosedTab": "panel.reopenClosedTab";
10019
10042
  "panel.toggle": "panel.toggle";
10043
+ "plugins.enterSafeMode": "plugins.enterSafeMode";
10044
+ "plugins.exitSafeMode": "plugins.exitSafeMode";
10020
10045
  "question.select.1": "question.select.1";
10021
10046
  "question.select.2": "question.select.2";
10022
10047
  "question.select.3": "question.select.3";
@@ -10160,6 +10185,8 @@ declare const systemConfigResponseSchema: z$1.ZodObject<{
10160
10185
  "panel.previousTab": "panel.previousTab";
10161
10186
  "panel.reopenClosedTab": "panel.reopenClosedTab";
10162
10187
  "panel.toggle": "panel.toggle";
10188
+ "plugins.enterSafeMode": "plugins.enterSafeMode";
10189
+ "plugins.exitSafeMode": "plugins.exitSafeMode";
10163
10190
  "question.select.1": "question.select.1";
10164
10191
  "question.select.2": "question.select.2";
10165
10192
  "question.select.3": "question.select.3";
@@ -10245,6 +10272,8 @@ declare const systemConfigResponseSchema: z$1.ZodObject<{
10245
10272
  "panel.previousTab": "panel.previousTab";
10246
10273
  "panel.reopenClosedTab": "panel.reopenClosedTab";
10247
10274
  "panel.toggle": "panel.toggle";
10275
+ "plugins.enterSafeMode": "plugins.enterSafeMode";
10276
+ "plugins.exitSafeMode": "plugins.exitSafeMode";
10248
10277
  "question.select.1": "question.select.1";
10249
10278
  "question.select.2": "question.select.2";
10250
10279
  "question.select.3": "question.select.3";
@@ -13520,6 +13549,12 @@ declare const threadWithIncludesResponseSchema: z$1.ZodObject<{
13520
13549
  }, z$1.core.$strip>], "type">;
13521
13550
  }, z$1.core.$strip>>;
13522
13551
  hostId: z$1.ZodString;
13552
+ hostLifecycle: z$1.ZodEnum<{
13553
+ "cleanup-failed": "cleanup-failed";
13554
+ active: "active";
13555
+ removed: "removed";
13556
+ removing: "removing";
13557
+ }>;
13523
13558
  id: z$1.ZodString;
13524
13559
  isGitRepo: z$1.ZodBoolean;
13525
13560
  isWorktree: z$1.ZodBoolean;
@@ -13560,6 +13595,7 @@ declare const threadWithIncludesResponseSchema: z$1.ZodObject<{
13560
13595
  unmanaged: "unmanaged";
13561
13596
  }>>;
13562
13597
  }, z$1.core.$strip>>>;
13598
+ environmentHostName: z$1.ZodOptional<z$1.ZodNullable<z$1.ZodString>>;
13563
13599
  environmentId: z$1.ZodNullable<z$1.ZodString>;
13564
13600
  host: z$1.ZodOptional<z$1.ZodNullable<z$1.ZodObject<{
13565
13601
  createdAt: z$1.ZodNumber;
@@ -14173,6 +14209,7 @@ declare const threadListQuerySchema: z$1.ZodObject<{
14173
14209
  false: "false";
14174
14210
  true: "true";
14175
14211
  }>>;
14212
+ hostId: z$1.ZodOptional<z$1.ZodString>;
14176
14213
  includeHidden: z$1.ZodOptional<z$1.ZodEnum<{
14177
14214
  false: "false";
14178
14215
  true: "true";
@@ -15481,6 +15518,7 @@ interface HostProviderCliInstallArgs extends HostProviderCliInstallRequest {
15481
15518
  }
15482
15519
  interface HostListArgs {
15483
15520
  includeCreating?: boolean;
15521
+ type?: HostType;
15484
15522
  signal?: AbortSignal;
15485
15523
  }
15486
15524
  interface MachineCreateArgs extends CreateMachineRequest {
@@ -15821,6 +15859,12 @@ interface PluginListArgs {
15821
15859
  interface PluginListUpdateResultsArgs {
15822
15860
  signal?: AbortSignal;
15823
15861
  }
15862
+ interface PluginGetSafeModeArgs {
15863
+ signal?: AbortSignal;
15864
+ }
15865
+ interface PluginSetSafeModeArgs {
15866
+ enabled: boolean;
15867
+ }
15824
15868
  type PluginDisableResult = InstalledPlugin;
15825
15869
  type PluginEnableResult = InstalledPlugin;
15826
15870
  type PluginGetSettingsResult = PluginSettingsResponse;
@@ -15828,6 +15872,8 @@ type PluginInstallResult = InstalledPlugin;
15828
15872
  type PluginListResult = PluginListResponse;
15829
15873
  type PluginReloadResult = PluginReloadResponse;
15830
15874
  type PluginRemoveResult = PluginRemoveResponse;
15875
+ type PluginSafeModeResult = PluginSafeModeResponse;
15876
+ type PluginSetSafeModeResult = PluginSafeModeUpdateResponse;
15831
15877
  type PluginTokenResult = PluginTokenResponse;
15832
15878
  type PluginUpdateSettingsResult = PluginSettingsResponse;
15833
15879
  type PluginGetSourceResult = PluginSourceDetail;
@@ -15856,6 +15902,8 @@ interface PluginMarketplacesArea {
15856
15902
  }
15857
15903
  interface PluginsArea {
15858
15904
  experimental_discoverRpc(args?: PluginRpcDiscoveryQuery): Promise<PublishedPluginRpcMethod[]>;
15905
+ experimental_getSafeMode(args?: PluginGetSafeModeArgs): Promise<PluginSafeModeResult>;
15906
+ experimental_setSafeMode(args: PluginSetSafeModeArgs): Promise<PluginSetSafeModeResult>;
15859
15907
  applyUpdate(args: PluginIdArgs): Promise<PluginApplyUpdateResult>;
15860
15908
  callRpc<TOutput>(args: PluginRpcArgs<TOutput>): Promise<TOutput>;
15861
15909
  checkUpdates(args?: PluginCheckUpdatesArgs): Promise<PluginCheckUpdatesResult>;
@@ -16259,6 +16307,7 @@ interface TerminalsArea {
16259
16307
  interface ThreadListArgs {
16260
16308
  archived?: boolean;
16261
16309
  environmentId?: string;
16310
+ hostId?: string;
16262
16311
  sectionId?: string;
16263
16312
  hasParent?: boolean;
16264
16313
  includeHidden?: boolean;
@@ -18104,12 +18153,13 @@ interface PluginSidebarThreadSplit {
18104
18153
  * Replace the sidebar's thread list with a plugin component.
18105
18154
  *
18106
18155
  * Unlike every other slot, this one is EXCLUSIVE: two lists cannot share one
18107
- * scroll area. Registering activates the replacement while the plugin is
18108
- * enabled. If multiple plugins register one, the first in deterministic slot
18109
- * order is active by default; removing it reveals the next. The user can pin
18110
- * BB's list or a specific provider under Settings → Appearance. A plugin can
18111
- * also use its own setting and render `Original` conditionally.
18112
- * An absent or crashing replacement falls back to BB's list rather than
18156
+ * scroll area. bb ships its own list as the bundled Thread list plugin
18157
+ * (`thread-list/thread-list`). Registering activates the replacement while the
18158
+ * plugin is enabled: by default the first registered list other than the
18159
+ * bundled one, in deterministic slot order, is active, falling back to the
18160
+ * bundled list; removing it reveals the next. The user can pin a specific
18161
+ * provider, including the bundled one, under Settings → Appearance → Sidebar.
18162
+ * A missing pinned provider or a crashing list shows a placeholder rather than
18113
18163
  * leaving the user with no sidebar.
18114
18164
  *
18115
18165
  * The plugin gets the scrolling list and nothing else. The New-thread button,
@@ -18128,11 +18178,12 @@ interface PluginThreadListRegistration {
18128
18178
  }
18129
18179
  /**
18130
18180
  * Replace the navigation controls above the sidebar thread list. Exclusive:
18131
- * the user picks one provider under Settings → Appearance → Navigation, and
18132
18181
  * bb ships its own rows as the bundled Navigation plugin
18133
- * (`navigation/navigation`, the default). A picked provider that is disabled
18134
- * or removed falls back to Navigation; a crashing provider is replaced by a
18135
- * placeholder with a Reload button.
18182
+ * (`navigation/navigation`). By default the first registered provider other
18183
+ * than Navigation is active, falling back to Navigation; the user can pin one
18184
+ * provider under Settings → Appearance → Navigation. A pinned provider that is
18185
+ * disabled or removed falls back to Navigation; a crashing provider is
18186
+ * replaced by a placeholder with a Reload button.
18136
18187
  */
18137
18188
  interface ExperimentalSidebarNavigationRegistration {
18138
18189
  /** Unique within the plugin; letters, digits, `-`, `_`. */
@@ -32,6 +32,12 @@ declare const environmentSchema: z.ZodObject<{
32
32
  }, z.core.$strip>], "type">;
33
33
  }, z.core.$strip>>;
34
34
  hostId: z.ZodString;
35
+ hostLifecycle: z.ZodEnum<{
36
+ "cleanup-failed": "cleanup-failed";
37
+ active: "active";
38
+ removed: "removed";
39
+ removing: "removing";
40
+ }>;
35
41
  id: z.ZodString;
36
42
  isGitRepo: z.ZodBoolean;
37
43
  isWorktree: z.ZodBoolean;
@@ -85,6 +85,12 @@ declare const environmentSchema: z.ZodObject<{
85
85
  }, z.core.$strip>], "type">;
86
86
  }, z.core.$strip>>;
87
87
  hostId: z.ZodString;
88
+ hostLifecycle: z.ZodEnum<{
89
+ "cleanup-failed": "cleanup-failed";
90
+ active: "active";
91
+ removed: "removed";
92
+ removing: "removing";
93
+ }>;
88
94
  id: z.ZodString;
89
95
  isGitRepo: z.ZodBoolean;
90
96
  isWorktree: z.ZodBoolean;
@@ -3661,6 +3661,7 @@ declare const threadEventSchema: z.ZodPipe<z.ZodUnknown, z.ZodUnion<readonly [z.
3661
3661
  cause: z.ZodOptional<z.ZodLiteral<"host-connection-lost">>;
3662
3662
  reason: z.ZodEnum<{
3663
3663
  "host-daemon-restarted": "host-daemon-restarted";
3664
+ "host-removed": "host-removed";
3664
3665
  "manual-stop": "manual-stop";
3665
3666
  "provider-turn-idle": "provider-turn-idle";
3666
3667
  }>;
@@ -160,6 +160,12 @@ declare const environmentSchema: z.ZodObject<{
160
160
  }, z.core.$strip>], "type">;
161
161
  }, z.core.$strip>>;
162
162
  hostId: z.ZodString;
163
+ hostLifecycle: z.ZodEnum<{
164
+ "cleanup-failed": "cleanup-failed";
165
+ active: "active";
166
+ removed: "removed";
167
+ removing: "removing";
168
+ }>;
163
169
  id: z.ZodString;
164
170
  isGitRepo: z.ZodBoolean;
165
171
  isWorktree: z.ZodBoolean;
@@ -197,6 +197,8 @@ declare const appKeybindingOverridesSchema: z$1.ZodArray<z$1.ZodObject<{
197
197
  "panel.previousTab": "panel.previousTab";
198
198
  "panel.reopenClosedTab": "panel.reopenClosedTab";
199
199
  "panel.toggle": "panel.toggle";
200
+ "plugins.enterSafeMode": "plugins.enterSafeMode";
201
+ "plugins.exitSafeMode": "plugins.exitSafeMode";
200
202
  "question.select.1": "question.select.1";
201
203
  "question.select.2": "question.select.2";
202
204
  "question.select.3": "question.select.3";
@@ -431,6 +433,12 @@ declare const environmentSchema: z$1.ZodObject<{
431
433
  }, z$1.core.$strip>], "type">;
432
434
  }, z$1.core.$strip>>;
433
435
  hostId: z$1.ZodString;
436
+ hostLifecycle: z$1.ZodEnum<{
437
+ "cleanup-failed": "cleanup-failed";
438
+ active: "active";
439
+ removed: "removed";
440
+ removing: "removing";
441
+ }>;
434
442
  id: z$1.ZodString;
435
443
  isGitRepo: z$1.ZodBoolean;
436
444
  isWorktree: z$1.ZodBoolean;
@@ -502,6 +510,11 @@ declare const workspaceGitOperationSchema: z$1.ZodDiscriminatedUnion<[z$1.ZodObj
502
510
  }, z$1.core.$strip>], "kind">;
503
511
  type WorkspaceGitOperation = z$1.infer<typeof workspaceGitOperationSchema>;
504
512
 
513
+ declare const hostTypeSchema: z$1.ZodEnum<{
514
+ ephemeral: "ephemeral";
515
+ persistent: "persistent";
516
+ }>;
517
+ type HostType = z$1.infer<typeof hostTypeSchema>;
505
518
  declare const hostSchema: z$1.ZodObject<{
506
519
  createdAt: z$1.ZodNumber;
507
520
  id: z$1.ZodString;
@@ -3108,6 +3121,7 @@ declare const threadEventSchema: z$1.ZodPipe<z$1.ZodUnknown, z$1.ZodUnion<readon
3108
3121
  cause: z$1.ZodOptional<z$1.ZodLiteral<"host-connection-lost">>;
3109
3122
  reason: z$1.ZodEnum<{
3110
3123
  "host-daemon-restarted": "host-daemon-restarted";
3124
+ "host-removed": "host-removed";
3111
3125
  "manual-stop": "manual-stop";
3112
3126
  "provider-turn-idle": "provider-turn-idle";
3113
3127
  }>;
@@ -9513,6 +9527,15 @@ declare const pluginSettingsResponseSchema: z$1.ZodObject<{
9513
9527
  values: z$1.ZodRecord<z$1.ZodString, z$1.ZodType<JsonValue$1, unknown, z$1.core.$ZodTypeInternals<JsonValue$1, unknown>>>;
9514
9528
  }, z$1.core.$strip>;
9515
9529
  type PluginSettingsResponse = z$1.infer<typeof pluginSettingsResponseSchema>;
9530
+ declare const pluginSafeModeResponseSchema: z$1.ZodObject<{
9531
+ enabled: z$1.ZodBoolean;
9532
+ }, z$1.core.$strip>;
9533
+ type PluginSafeModeResponse = z$1.infer<typeof pluginSafeModeResponseSchema>;
9534
+ declare const pluginSafeModeUpdateResponseSchema: z$1.ZodObject<{
9535
+ enabled: z$1.ZodBoolean;
9536
+ problems: z$1.ZodArray<z$1.ZodString>;
9537
+ }, z$1.core.$strip>;
9538
+ type PluginSafeModeUpdateResponse = z$1.infer<typeof pluginSafeModeUpdateResponseSchema>;
9516
9539
  declare const pluginTokenResponseSchema: z$1.ZodObject<{
9517
9540
  ok: z$1.ZodLiteral<true>;
9518
9541
  token: z$1.ZodString;
@@ -10068,6 +10091,8 @@ declare const systemConfigResponseSchema: z$1.ZodObject<{
10068
10091
  "panel.previousTab": "panel.previousTab";
10069
10092
  "panel.reopenClosedTab": "panel.reopenClosedTab";
10070
10093
  "panel.toggle": "panel.toggle";
10094
+ "plugins.enterSafeMode": "plugins.enterSafeMode";
10095
+ "plugins.exitSafeMode": "plugins.exitSafeMode";
10071
10096
  "question.select.1": "question.select.1";
10072
10097
  "question.select.2": "question.select.2";
10073
10098
  "question.select.3": "question.select.3";
@@ -10211,6 +10236,8 @@ declare const systemConfigResponseSchema: z$1.ZodObject<{
10211
10236
  "panel.previousTab": "panel.previousTab";
10212
10237
  "panel.reopenClosedTab": "panel.reopenClosedTab";
10213
10238
  "panel.toggle": "panel.toggle";
10239
+ "plugins.enterSafeMode": "plugins.enterSafeMode";
10240
+ "plugins.exitSafeMode": "plugins.exitSafeMode";
10214
10241
  "question.select.1": "question.select.1";
10215
10242
  "question.select.2": "question.select.2";
10216
10243
  "question.select.3": "question.select.3";
@@ -10296,6 +10323,8 @@ declare const systemConfigResponseSchema: z$1.ZodObject<{
10296
10323
  "panel.previousTab": "panel.previousTab";
10297
10324
  "panel.reopenClosedTab": "panel.reopenClosedTab";
10298
10325
  "panel.toggle": "panel.toggle";
10326
+ "plugins.enterSafeMode": "plugins.enterSafeMode";
10327
+ "plugins.exitSafeMode": "plugins.exitSafeMode";
10299
10328
  "question.select.1": "question.select.1";
10300
10329
  "question.select.2": "question.select.2";
10301
10330
  "question.select.3": "question.select.3";
@@ -13572,6 +13601,12 @@ declare const threadWithIncludesResponseSchema: z$1.ZodObject<{
13572
13601
  }, z$1.core.$strip>], "type">;
13573
13602
  }, z$1.core.$strip>>;
13574
13603
  hostId: z$1.ZodString;
13604
+ hostLifecycle: z$1.ZodEnum<{
13605
+ "cleanup-failed": "cleanup-failed";
13606
+ active: "active";
13607
+ removed: "removed";
13608
+ removing: "removing";
13609
+ }>;
13575
13610
  id: z$1.ZodString;
13576
13611
  isGitRepo: z$1.ZodBoolean;
13577
13612
  isWorktree: z$1.ZodBoolean;
@@ -13612,6 +13647,7 @@ declare const threadWithIncludesResponseSchema: z$1.ZodObject<{
13612
13647
  unmanaged: "unmanaged";
13613
13648
  }>>;
13614
13649
  }, z$1.core.$strip>>>;
13650
+ environmentHostName: z$1.ZodOptional<z$1.ZodNullable<z$1.ZodString>>;
13615
13651
  environmentId: z$1.ZodNullable<z$1.ZodString>;
13616
13652
  host: z$1.ZodOptional<z$1.ZodNullable<z$1.ZodObject<{
13617
13653
  createdAt: z$1.ZodNumber;
@@ -14225,6 +14261,7 @@ declare const threadListQuerySchema: z$1.ZodObject<{
14225
14261
  false: "false";
14226
14262
  true: "true";
14227
14263
  }>>;
14264
+ hostId: z$1.ZodOptional<z$1.ZodString>;
14228
14265
  includeHidden: z$1.ZodOptional<z$1.ZodEnum<{
14229
14266
  false: "false";
14230
14267
  true: "true";
@@ -15544,6 +15581,7 @@ interface HostProviderCliInstallArgs extends HostProviderCliInstallRequest {
15544
15581
  }
15545
15582
  interface HostListArgs {
15546
15583
  includeCreating?: boolean;
15584
+ type?: HostType;
15547
15585
  signal?: AbortSignal;
15548
15586
  }
15549
15587
  interface MachineCreateArgs extends CreateMachineRequest {
@@ -15884,6 +15922,12 @@ interface PluginListArgs {
15884
15922
  interface PluginListUpdateResultsArgs {
15885
15923
  signal?: AbortSignal;
15886
15924
  }
15925
+ interface PluginGetSafeModeArgs {
15926
+ signal?: AbortSignal;
15927
+ }
15928
+ interface PluginSetSafeModeArgs {
15929
+ enabled: boolean;
15930
+ }
15887
15931
  type PluginDisableResult = InstalledPlugin;
15888
15932
  type PluginEnableResult = InstalledPlugin;
15889
15933
  type PluginGetSettingsResult = PluginSettingsResponse;
@@ -15891,6 +15935,8 @@ type PluginInstallResult = InstalledPlugin;
15891
15935
  type PluginListResult = PluginListResponse;
15892
15936
  type PluginReloadResult = PluginReloadResponse;
15893
15937
  type PluginRemoveResult = PluginRemoveResponse;
15938
+ type PluginSafeModeResult = PluginSafeModeResponse;
15939
+ type PluginSetSafeModeResult = PluginSafeModeUpdateResponse;
15894
15940
  type PluginTokenResult = PluginTokenResponse;
15895
15941
  type PluginUpdateSettingsResult = PluginSettingsResponse;
15896
15942
  type PluginGetSourceResult = PluginSourceDetail;
@@ -15919,6 +15965,8 @@ interface PluginMarketplacesArea {
15919
15965
  }
15920
15966
  interface PluginsArea {
15921
15967
  experimental_discoverRpc(args?: PluginRpcDiscoveryQuery): Promise<PublishedPluginRpcMethod[]>;
15968
+ experimental_getSafeMode(args?: PluginGetSafeModeArgs): Promise<PluginSafeModeResult>;
15969
+ experimental_setSafeMode(args: PluginSetSafeModeArgs): Promise<PluginSetSafeModeResult>;
15922
15970
  applyUpdate(args: PluginIdArgs): Promise<PluginApplyUpdateResult>;
15923
15971
  callRpc<TOutput>(args: PluginRpcArgs<TOutput>): Promise<TOutput>;
15924
15972
  checkUpdates(args?: PluginCheckUpdatesArgs): Promise<PluginCheckUpdatesResult>;
@@ -16322,6 +16370,7 @@ interface TerminalsArea {
16322
16370
  interface ThreadListArgs {
16323
16371
  archived?: boolean;
16324
16372
  environmentId?: string;
16373
+ hostId?: string;
16325
16374
  sectionId?: string;
16326
16375
  hasParent?: boolean;
16327
16376
  includeHidden?: boolean;
@@ -18256,12 +18305,13 @@ interface PluginSidebarThreadSplit {
18256
18305
  * Replace the sidebar's thread list with a plugin component.
18257
18306
  *
18258
18307
  * Unlike every other slot, this one is EXCLUSIVE: two lists cannot share one
18259
- * scroll area. Registering activates the replacement while the plugin is
18260
- * enabled. If multiple plugins register one, the first in deterministic slot
18261
- * order is active by default; removing it reveals the next. The user can pin
18262
- * BB's list or a specific provider under Settings → Appearance. A plugin can
18263
- * also use its own setting and render `Original` conditionally.
18264
- * An absent or crashing replacement falls back to BB's list rather than
18308
+ * scroll area. bb ships its own list as the bundled Thread list plugin
18309
+ * (`thread-list/thread-list`). Registering activates the replacement while the
18310
+ * plugin is enabled: by default the first registered list other than the
18311
+ * bundled one, in deterministic slot order, is active, falling back to the
18312
+ * bundled list; removing it reveals the next. The user can pin a specific
18313
+ * provider, including the bundled one, under Settings → Appearance → Sidebar.
18314
+ * A missing pinned provider or a crashing list shows a placeholder rather than
18265
18315
  * leaving the user with no sidebar.
18266
18316
  *
18267
18317
  * The plugin gets the scrolling list and nothing else. The New-thread button,
@@ -18280,11 +18330,12 @@ interface PluginThreadListRegistration {
18280
18330
  }
18281
18331
  /**
18282
18332
  * Replace the navigation controls above the sidebar thread list. Exclusive:
18283
- * the user picks one provider under Settings → Appearance → Navigation, and
18284
18333
  * bb ships its own rows as the bundled Navigation plugin
18285
- * (`navigation/navigation`, the default). A picked provider that is disabled
18286
- * or removed falls back to Navigation; a crashing provider is replaced by a
18287
- * placeholder with a Reload button.
18334
+ * (`navigation/navigation`). By default the first registered provider other
18335
+ * than Navigation is active, falling back to Navigation; the user can pin one
18336
+ * provider under Settings → Appearance → Navigation. A pinned provider that is
18337
+ * disabled or removed falls back to Navigation; a crashing provider is
18338
+ * replaced by a placeholder with a Reload button.
18288
18339
  */
18289
18340
  interface ExperimentalSidebarNavigationRegistration {
18290
18341
  /** Unique within the plugin; letters, digits, `-`, `_`. */
@@ -20478,6 +20529,15 @@ interface PluginThreadEventPayloads {
20478
20529
  "experimental_terminal.input": {
20479
20530
  terminal: TerminalSession;
20480
20531
  };
20532
+ /**
20533
+ * Fired once after a machine is removed, whether a user removed it or its
20534
+ * machine provider finished tearing it down. `host` is the record as it was
20535
+ * when it was removed; `bb.sdk.hosts.get` answers 404 for it from now on, so
20536
+ * this is the moment to drop anything the plugin keeps per host.
20537
+ */
20538
+ "experimental_host.deleted": {
20539
+ host: Host;
20540
+ };
20481
20541
  /** Fired after a thread row is created. */
20482
20542
  "thread.created": {
20483
20543
  thread: ThreadResponse;
@@ -1876,6 +1876,7 @@ var systemUserQuestionLifecycleEventDataSchema = z13.object({
1876
1876
  var systemThreadInterruptedReasonValues = [
1877
1877
  "manual-stop",
1878
1878
  "host-daemon-restarted",
1879
+ "host-removed",
1879
1880
  "provider-turn-idle"
1880
1881
  ];
1881
1882
  var systemThreadInterruptedReasonSchema = z13.enum(
@@ -965,6 +965,7 @@ var systemUserQuestionLifecycleEventDataSchema = z11.object({
965
965
  var systemThreadInterruptedReasonValues = [
966
966
  "manual-stop",
967
967
  "host-daemon-restarted",
968
+ "host-removed",
968
969
  "provider-turn-idle"
969
970
  ];
970
971
  var systemThreadInterruptedReasonSchema = z11.enum(
@@ -2403,6 +2403,7 @@ var systemUserQuestionLifecycleEventDataSchema = z15.object({
2403
2403
  var systemThreadInterruptedReasonValues = [
2404
2404
  "manual-stop",
2405
2405
  "host-daemon-restarted",
2406
+ "host-removed",
2406
2407
  "provider-turn-idle"
2407
2408
  ];
2408
2409
  var systemThreadInterruptedReasonSchema = z15.enum(
@@ -3295,6 +3295,7 @@ function createFakePluginHostInternal(options, sharedState) {
3295
3295
  const threadEventHandlers = {
3296
3296
  "experimental_thread.events": [],
3297
3297
  "experimental_terminal.input": [],
3298
+ "experimental_host.deleted": [],
3298
3299
  "thread.created": [],
3299
3300
  "thread.active": [],
3300
3301
  "thread.idle": [],
@@ -3732,6 +3733,7 @@ function createFakePluginHostInternal(options, sharedState) {
3732
3733
  return {
3733
3734
  "experimental_thread.events": threadEventHandlers["experimental_thread.events"].length,
3734
3735
  "experimental_terminal.input": threadEventHandlers["experimental_terminal.input"].length,
3736
+ "experimental_host.deleted": threadEventHandlers["experimental_host.deleted"].length,
3735
3737
  "thread.created": threadEventHandlers["thread.created"].length,
3736
3738
  "thread.active": threadEventHandlers["thread.active"].length,
3737
3739
  "thread.idle": threadEventHandlers["thread.idle"].length,
@@ -4357,6 +4359,7 @@ function makeMessageDispatchHookContext(overrides = {}) {
4357
4359
  environmentProviderSelection: null,
4358
4360
  environmentProviderInstanceKey: null,
4359
4361
  lifecycle: { phase: "active", retireAt: null, teardown: null },
4362
+ hostLifecycle: "active",
4360
4363
  managed: false,
4361
4364
  workspaceProvisionType: null,
4362
4365
  status: "ready",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@get-bb/plugin-sdk",
3
- "version": "0.5.24",
3
+ "version": "0.5.27",
4
4
  "homepage": "https://github.com/get-bb/bb#readme",
5
5
  "bugs": {
6
6
  "url": "https://github.com/get-bb/bb/issues"