@get-bb/plugin-sdk 0.4.8 → 0.4.9

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.
@@ -22,7 +22,6 @@ declare const appSettingsSchema: z$1.ZodObject<{
22
22
  claudeCodeWorkflowsDisabled: z$1.ZodBoolean;
23
23
  codexMemoryEnabled: z$1.ZodBoolean;
24
24
  codexSubagentsDisabled: z$1.ZodBoolean;
25
- onboardingCompletedAt: z$1.ZodNullable<z$1.ZodString>;
26
25
  showKeyboardHints: z$1.ZodBoolean;
27
26
  showUnhandledProviderEvents: z$1.ZodBoolean;
28
27
  steerActiveThreadOnEnter: z$1.ZodBoolean;
@@ -31,6 +30,7 @@ type AppSettings = z$1.infer<typeof appSettingsSchema>;
31
30
 
32
31
  declare const appKeybindingOverridesSchema: z$1.ZodArray<z$1.ZodObject<{
33
32
  command: z$1.ZodEnum<{
33
+ "browser.find": "browser.find";
34
34
  "browser.focusLocation": "browser.focusLocation";
35
35
  "browser.reload": "browser.reload";
36
36
  "composer.focus": "composer.focus";
@@ -252,9 +252,9 @@ declare const environmentSchema: z$1.ZodObject<{
252
252
  type Environment = z$1.infer<typeof environmentSchema>;
253
253
 
254
254
  declare const experimentsSchema: z$1.ZodRecord<z$1.ZodEnum<{
255
- claudeCodeMockCliTraffic: "claudeCodeMockCliTraffic";
255
+ changelogPreview: "changelogPreview";
256
256
  editMessages: "editMessages";
257
- newOnboarding: "newOnboarding";
257
+ mobileApp: "mobileApp";
258
258
  providerSessionReaping: "providerSessionReaping";
259
259
  }>, z$1.ZodBoolean>;
260
260
  type Experiments = z$1.infer<typeof experimentsSchema>;
@@ -891,6 +891,7 @@ declare const threadEventSchema: z$1.ZodPipe<z$1.ZodUnknown, z$1.ZodUnion<readon
891
891
  }, z$1.core.$strip>, z$1.ZodObject<{
892
892
  description: z$1.ZodString;
893
893
  error: z$1.ZodOptional<z$1.ZodString>;
894
+ familyId: z$1.ZodOptional<z$1.ZodString>;
894
895
  id: z$1.ZodString;
895
896
  outputFile: z$1.ZodOptional<z$1.ZodString>;
896
897
  parentToolCallId: z$1.ZodOptional<z$1.ZodString>;
@@ -1123,6 +1124,7 @@ declare const threadEventSchema: z$1.ZodPipe<z$1.ZodUnknown, z$1.ZodUnion<readon
1123
1124
  }, z$1.core.$strip>, z$1.ZodObject<{
1124
1125
  description: z$1.ZodString;
1125
1126
  error: z$1.ZodOptional<z$1.ZodString>;
1127
+ familyId: z$1.ZodOptional<z$1.ZodString>;
1126
1128
  id: z$1.ZodString;
1127
1129
  outputFile: z$1.ZodOptional<z$1.ZodString>;
1128
1130
  parentToolCallId: z$1.ZodOptional<z$1.ZodString>;
@@ -1252,6 +1254,7 @@ declare const threadEventSchema: z$1.ZodPipe<z$1.ZodUnknown, z$1.ZodUnion<readon
1252
1254
  item: z$1.ZodObject<{
1253
1255
  description: z$1.ZodString;
1254
1256
  error: z$1.ZodOptional<z$1.ZodString>;
1257
+ familyId: z$1.ZodOptional<z$1.ZodString>;
1255
1258
  id: z$1.ZodString;
1256
1259
  outputFile: z$1.ZodOptional<z$1.ZodString>;
1257
1260
  parentToolCallId: z$1.ZodOptional<z$1.ZodString>;
@@ -1324,6 +1327,7 @@ declare const threadEventSchema: z$1.ZodPipe<z$1.ZodUnknown, z$1.ZodUnion<readon
1324
1327
  item: z$1.ZodObject<{
1325
1328
  description: z$1.ZodString;
1326
1329
  error: z$1.ZodOptional<z$1.ZodString>;
1330
+ familyId: z$1.ZodOptional<z$1.ZodString>;
1327
1331
  id: z$1.ZodString;
1328
1332
  outputFile: z$1.ZodOptional<z$1.ZodString>;
1329
1333
  parentToolCallId: z$1.ZodOptional<z$1.ZodString>;
@@ -1554,7 +1558,7 @@ declare const threadEventSchema: z$1.ZodPipe<z$1.ZodUnknown, z$1.ZodUnion<readon
1554
1558
  kind: z$1.ZodLiteral<"turn">;
1555
1559
  turnId: z$1.ZodString;
1556
1560
  }, z$1.core.$strip>], "kind">;
1557
- }, z$1.core.$strip>>, z$1.ZodIntersection<z$1.ZodUnion<readonly [z$1.ZodObject<{
1561
+ }, z$1.core.$strip>>, z$1.ZodIntersection<z$1.ZodDiscriminatedUnion<[z$1.ZodObject<{
1558
1562
  direction: z$1.ZodLiteral<"outbound">;
1559
1563
  initiator: z$1.ZodEnum<{
1560
1564
  agent: "agent";
@@ -2001,7 +2005,7 @@ declare const threadEventSchema: z$1.ZodPipe<z$1.ZodUnknown, z$1.ZodUnion<readon
2001
2005
  threadId: z$1.ZodString;
2002
2006
  thresholdMs: z$1.ZodNumber;
2003
2007
  type: z$1.ZodLiteral<"system/provider-turn-watchdog">;
2004
- }, z$1.core.$strip>]>, z$1.ZodObject<{
2008
+ }, z$1.core.$strip>], "type">, z$1.ZodObject<{
2005
2009
  scope: z$1.ZodDiscriminatedUnion<[z$1.ZodObject<{
2006
2010
  kind: z$1.ZodLiteral<"thread">;
2007
2011
  }, z$1.core.$strip>, z$1.ZodObject<{
@@ -2735,6 +2739,229 @@ declare const projectWithThreadsResponseSchema: z$1.ZodObject<{
2735
2739
  updatedAt: z$1.ZodNumber;
2736
2740
  }, z$1.core.$strip>;
2737
2741
  type ProjectWithThreadsResponse = z$1.infer<typeof projectWithThreadsResponseSchema>;
2742
+ declare const sidebarBootstrapResponseSchema: z$1.ZodObject<{
2743
+ personalProject: z$1.ZodObject<{
2744
+ createdAt: z$1.ZodNumber;
2745
+ defaultExecutionOptions: z$1.ZodNullable<z$1.ZodObject<{
2746
+ model: z$1.ZodString;
2747
+ permissionMode: z$1.ZodEnum<{
2748
+ "accept-edits": "accept-edits";
2749
+ auto: "auto";
2750
+ full: "full";
2751
+ }>;
2752
+ providerId: z$1.ZodString;
2753
+ reasoningLevel: z$1.ZodEnum<{
2754
+ high: "high";
2755
+ low: "low";
2756
+ max: "max";
2757
+ medium: "medium";
2758
+ none: "none";
2759
+ ultra: "ultra";
2760
+ ultracode: "ultracode";
2761
+ xhigh: "xhigh";
2762
+ }>;
2763
+ serviceTier: z$1.ZodEnum<{
2764
+ default: "default";
2765
+ fast: "fast";
2766
+ }>;
2767
+ }, z$1.core.$strip>>;
2768
+ gitRemoteUrl: z$1.ZodNullable<z$1.ZodString>;
2769
+ id: z$1.ZodString;
2770
+ kind: z$1.ZodEnum<{
2771
+ personal: "personal";
2772
+ standard: "standard";
2773
+ }>;
2774
+ name: z$1.ZodString;
2775
+ sources: z$1.ZodArray<z$1.ZodObject<{
2776
+ createdAt: z$1.ZodNumber;
2777
+ hostId: z$1.ZodString;
2778
+ id: z$1.ZodString;
2779
+ isDefault: z$1.ZodBoolean;
2780
+ path: z$1.ZodString;
2781
+ projectId: z$1.ZodString;
2782
+ type: z$1.ZodLiteral<"local_path">;
2783
+ updatedAt: z$1.ZodNumber;
2784
+ }, z$1.core.$strip>>;
2785
+ threads: z$1.ZodArray<z$1.ZodObject<{
2786
+ activity: z$1.ZodObject<{
2787
+ activeBackgroundAgentCount: z$1.ZodNumber;
2788
+ activeBackgroundCommandCount: z$1.ZodNumber;
2789
+ activeGoalCount: z$1.ZodNumber;
2790
+ activePlanModeCount: z$1.ZodNumber;
2791
+ activeWorkflowCount: z$1.ZodNumber;
2792
+ }, z$1.core.$strip>;
2793
+ archivedAt: z$1.ZodNullable<z$1.ZodNumber>;
2794
+ createdAt: z$1.ZodNumber;
2795
+ deletedAt: z$1.ZodNullable<z$1.ZodNumber>;
2796
+ environmentBranchName: z$1.ZodNullable<z$1.ZodString>;
2797
+ environmentHostId: z$1.ZodNullable<z$1.ZodString>;
2798
+ environmentId: z$1.ZodNullable<z$1.ZodString>;
2799
+ environmentName: z$1.ZodNullable<z$1.ZodString>;
2800
+ environmentWorkspaceDisplayKind: z$1.ZodEnum<{
2801
+ "managed-worktree": "managed-worktree";
2802
+ "unmanaged-worktree": "unmanaged-worktree";
2803
+ other: "other";
2804
+ }>;
2805
+ hasPendingInteraction: z$1.ZodBoolean;
2806
+ id: z$1.ZodString;
2807
+ lastReadAt: z$1.ZodNullable<z$1.ZodNumber>;
2808
+ latestAttentionAt: z$1.ZodNumber;
2809
+ originKind: z$1.ZodNullable<z$1.ZodEnum<{
2810
+ fork: "fork";
2811
+ }>>;
2812
+ originPluginId: z$1.ZodNullable<z$1.ZodString>;
2813
+ parentThreadId: z$1.ZodNullable<z$1.ZodString>;
2814
+ pinSortKey: z$1.ZodNullable<z$1.ZodString>;
2815
+ pinnedAt: z$1.ZodNullable<z$1.ZodNumber>;
2816
+ projectId: z$1.ZodString;
2817
+ providerId: z$1.ZodString;
2818
+ runtime: z$1.ZodObject<{
2819
+ displayStatus: z$1.ZodEnum<{
2820
+ "host-reconnecting": "host-reconnecting";
2821
+ "waiting-for-host": "waiting-for-host";
2822
+ active: "active";
2823
+ error: "error";
2824
+ idle: "idle";
2825
+ provisioning: "provisioning";
2826
+ starting: "starting";
2827
+ stopping: "stopping";
2828
+ }>;
2829
+ hostReconnectGraceExpiresAt: z$1.ZodNullable<z$1.ZodNumber>;
2830
+ }, z$1.core.$strip>;
2831
+ sectionId: z$1.ZodNullable<z$1.ZodString>;
2832
+ sourceThreadId: z$1.ZodNullable<z$1.ZodString>;
2833
+ status: z$1.ZodEnum<{
2834
+ active: "active";
2835
+ error: "error";
2836
+ idle: "idle";
2837
+ starting: "starting";
2838
+ stopping: "stopping";
2839
+ }>;
2840
+ title: z$1.ZodNullable<z$1.ZodString>;
2841
+ titleFallback: z$1.ZodNullable<z$1.ZodString>;
2842
+ updatedAt: z$1.ZodNumber;
2843
+ visibility: z$1.ZodEnum<{
2844
+ hidden: "hidden";
2845
+ visible: "visible";
2846
+ }>;
2847
+ }, z$1.core.$strip>>;
2848
+ updatedAt: z$1.ZodNumber;
2849
+ }, z$1.core.$strip>;
2850
+ projects: z$1.ZodArray<z$1.ZodObject<{
2851
+ createdAt: z$1.ZodNumber;
2852
+ defaultExecutionOptions: z$1.ZodNullable<z$1.ZodObject<{
2853
+ model: z$1.ZodString;
2854
+ permissionMode: z$1.ZodEnum<{
2855
+ "accept-edits": "accept-edits";
2856
+ auto: "auto";
2857
+ full: "full";
2858
+ }>;
2859
+ providerId: z$1.ZodString;
2860
+ reasoningLevel: z$1.ZodEnum<{
2861
+ high: "high";
2862
+ low: "low";
2863
+ max: "max";
2864
+ medium: "medium";
2865
+ none: "none";
2866
+ ultra: "ultra";
2867
+ ultracode: "ultracode";
2868
+ xhigh: "xhigh";
2869
+ }>;
2870
+ serviceTier: z$1.ZodEnum<{
2871
+ default: "default";
2872
+ fast: "fast";
2873
+ }>;
2874
+ }, z$1.core.$strip>>;
2875
+ gitRemoteUrl: z$1.ZodNullable<z$1.ZodString>;
2876
+ id: z$1.ZodString;
2877
+ kind: z$1.ZodEnum<{
2878
+ personal: "personal";
2879
+ standard: "standard";
2880
+ }>;
2881
+ name: z$1.ZodString;
2882
+ sources: z$1.ZodArray<z$1.ZodObject<{
2883
+ createdAt: z$1.ZodNumber;
2884
+ hostId: z$1.ZodString;
2885
+ id: z$1.ZodString;
2886
+ isDefault: z$1.ZodBoolean;
2887
+ path: z$1.ZodString;
2888
+ projectId: z$1.ZodString;
2889
+ type: z$1.ZodLiteral<"local_path">;
2890
+ updatedAt: z$1.ZodNumber;
2891
+ }, z$1.core.$strip>>;
2892
+ threads: z$1.ZodArray<z$1.ZodObject<{
2893
+ activity: z$1.ZodObject<{
2894
+ activeBackgroundAgentCount: z$1.ZodNumber;
2895
+ activeBackgroundCommandCount: z$1.ZodNumber;
2896
+ activeGoalCount: z$1.ZodNumber;
2897
+ activePlanModeCount: z$1.ZodNumber;
2898
+ activeWorkflowCount: z$1.ZodNumber;
2899
+ }, z$1.core.$strip>;
2900
+ archivedAt: z$1.ZodNullable<z$1.ZodNumber>;
2901
+ createdAt: z$1.ZodNumber;
2902
+ deletedAt: z$1.ZodNullable<z$1.ZodNumber>;
2903
+ environmentBranchName: z$1.ZodNullable<z$1.ZodString>;
2904
+ environmentHostId: z$1.ZodNullable<z$1.ZodString>;
2905
+ environmentId: z$1.ZodNullable<z$1.ZodString>;
2906
+ environmentName: z$1.ZodNullable<z$1.ZodString>;
2907
+ environmentWorkspaceDisplayKind: z$1.ZodEnum<{
2908
+ "managed-worktree": "managed-worktree";
2909
+ "unmanaged-worktree": "unmanaged-worktree";
2910
+ other: "other";
2911
+ }>;
2912
+ hasPendingInteraction: z$1.ZodBoolean;
2913
+ id: z$1.ZodString;
2914
+ lastReadAt: z$1.ZodNullable<z$1.ZodNumber>;
2915
+ latestAttentionAt: z$1.ZodNumber;
2916
+ originKind: z$1.ZodNullable<z$1.ZodEnum<{
2917
+ fork: "fork";
2918
+ }>>;
2919
+ originPluginId: z$1.ZodNullable<z$1.ZodString>;
2920
+ parentThreadId: z$1.ZodNullable<z$1.ZodString>;
2921
+ pinSortKey: z$1.ZodNullable<z$1.ZodString>;
2922
+ pinnedAt: z$1.ZodNullable<z$1.ZodNumber>;
2923
+ projectId: z$1.ZodString;
2924
+ providerId: z$1.ZodString;
2925
+ runtime: z$1.ZodObject<{
2926
+ displayStatus: z$1.ZodEnum<{
2927
+ "host-reconnecting": "host-reconnecting";
2928
+ "waiting-for-host": "waiting-for-host";
2929
+ active: "active";
2930
+ error: "error";
2931
+ idle: "idle";
2932
+ provisioning: "provisioning";
2933
+ starting: "starting";
2934
+ stopping: "stopping";
2935
+ }>;
2936
+ hostReconnectGraceExpiresAt: z$1.ZodNullable<z$1.ZodNumber>;
2937
+ }, z$1.core.$strip>;
2938
+ sectionId: z$1.ZodNullable<z$1.ZodString>;
2939
+ sourceThreadId: z$1.ZodNullable<z$1.ZodString>;
2940
+ status: z$1.ZodEnum<{
2941
+ active: "active";
2942
+ error: "error";
2943
+ idle: "idle";
2944
+ starting: "starting";
2945
+ stopping: "stopping";
2946
+ }>;
2947
+ title: z$1.ZodNullable<z$1.ZodString>;
2948
+ titleFallback: z$1.ZodNullable<z$1.ZodString>;
2949
+ updatedAt: z$1.ZodNumber;
2950
+ visibility: z$1.ZodEnum<{
2951
+ hidden: "hidden";
2952
+ visible: "visible";
2953
+ }>;
2954
+ }, z$1.core.$strip>>;
2955
+ updatedAt: z$1.ZodNumber;
2956
+ }, z$1.core.$strip>>;
2957
+ sections: z$1.ZodArray<z$1.ZodObject<{
2958
+ createdAt: z$1.ZodNumber;
2959
+ id: z$1.ZodString;
2960
+ name: z$1.ZodString;
2961
+ updatedAt: z$1.ZodNumber;
2962
+ }, z$1.core.$strict>>;
2963
+ }, z$1.core.$strip>;
2964
+ type SidebarBootstrapResponse = z$1.infer<typeof sidebarBootstrapResponseSchema>;
2738
2965
  declare const uploadedPromptAttachmentSchema: z$1.ZodObject<{
2739
2966
  mimeType: z$1.ZodOptional<z$1.ZodString>;
2740
2967
  name: z$1.ZodString;
@@ -3416,18 +3643,6 @@ declare const providerUsageResponseSchema: z$1.ZodObject<{
3416
3643
  }, z$1.core.$strip>], "status">;
3417
3644
  }, z$1.core.$strip>;
3418
3645
  type ProviderUsageResponse = z$1.infer<typeof providerUsageResponseSchema>;
3419
- declare const discoverReposResultSchema: z$1.ZodObject<{
3420
- repos: z$1.ZodArray<z$1.ZodObject<{
3421
- agentSeen: z$1.ZodBoolean;
3422
- agentSeenAt: z$1.ZodNullable<z$1.ZodString>;
3423
- lastActivityAt: z$1.ZodString;
3424
- name: z$1.ZodString;
3425
- originUrl: z$1.ZodNullable<z$1.ZodString>;
3426
- path: z$1.ZodString;
3427
- }, z$1.core.$strict>>;
3428
- truncated: z$1.ZodBoolean;
3429
- }, z$1.core.$strict>;
3430
- type DiscoverReposResult = z$1.infer<typeof discoverReposResultSchema>;
3431
3646
  type HostDaemonCommandTransport = "onlineRpc" | "settled";
3432
3647
  type HostDaemonCommandEnvironmentLane = "read" | "write";
3433
3648
  type HostDaemonFlushEventsBeforeResult = boolean | "when-initiated";
@@ -3612,10 +3827,6 @@ declare const hostDaemonCommandRegistry: {
3612
3827
  instructions: z$1.ZodString;
3613
3828
  leaseId: z$1.ZodString;
3614
3829
  options: z$1.ZodIntersection<z$1.ZodObject<{
3615
- claudeCodeMockCliTraffic: z$1.ZodOptional<z$1.ZodObject<{
3616
- enabled: z$1.ZodBoolean;
3617
- endpoint: z$1.ZodString;
3618
- }, z$1.core.$strict>>;
3619
3830
  claudeCodePermissionMode: z$1.ZodOptional<z$1.ZodLiteral<"plan">>;
3620
3831
  memoryEnabled: z$1.ZodOptional<z$1.ZodBoolean>;
3621
3832
  model: z$1.ZodString;
@@ -4003,10 +4214,6 @@ declare const hostDaemonCommandRegistry: {
4003
4214
  }>;
4004
4215
  instructions: z$1.ZodString;
4005
4216
  options: z$1.ZodIntersection<z$1.ZodObject<{
4006
- claudeCodeMockCliTraffic: z$1.ZodOptional<z$1.ZodObject<{
4007
- enabled: z$1.ZodBoolean;
4008
- endpoint: z$1.ZodString;
4009
- }, z$1.core.$strict>>;
4010
4217
  claudeCodePermissionMode: z$1.ZodOptional<z$1.ZodLiteral<"plan">>;
4011
4218
  memoryEnabled: z$1.ZodOptional<z$1.ZodBoolean>;
4012
4219
  model: z$1.ZodString;
@@ -4352,10 +4559,6 @@ declare const hostDaemonCommandRegistry: {
4352
4559
  }>>;
4353
4560
  }, z$1.core.$strip>], "type">>>>;
4354
4561
  options: z$1.ZodIntersection<z$1.ZodObject<{
4355
- claudeCodeMockCliTraffic: z$1.ZodOptional<z$1.ZodObject<{
4356
- enabled: z$1.ZodBoolean;
4357
- endpoint: z$1.ZodString;
4358
- }, z$1.core.$strict>>;
4359
4562
  claudeCodePermissionMode: z$1.ZodOptional<z$1.ZodLiteral<"plan">>;
4360
4563
  memoryEnabled: z$1.ZodOptional<z$1.ZodBoolean>;
4361
4564
  model: z$1.ZodString;
@@ -4725,10 +4928,6 @@ declare const hostDaemonCommandRegistry: {
4725
4928
  }, z$1.core.$strict>;
4726
4929
  environmentId: z$1.ZodString;
4727
4930
  options: z$1.ZodIntersection<z$1.ZodObject<{
4728
- claudeCodeMockCliTraffic: z$1.ZodOptional<z$1.ZodObject<{
4729
- enabled: z$1.ZodBoolean;
4730
- endpoint: z$1.ZodString;
4731
- }, z$1.core.$strict>>;
4732
4931
  claudeCodePermissionMode: z$1.ZodOptional<z$1.ZodLiteral<"plan">>;
4733
4932
  memoryEnabled: z$1.ZodOptional<z$1.ZodBoolean>;
4734
4933
  model: z$1.ZodString;
@@ -5914,22 +6113,6 @@ declare const hostDaemonCommandRegistry: {
5914
6113
  status: z$1.ZodLiteral<"error">;
5915
6114
  }, z$1.core.$strip>], "status">;
5916
6115
  }, z$1.core.$strip>, "onlineRpc", true>;
5917
- "workspace.discover_repos": HostDaemonCommandDescriptor<"workspace.discover_repos", z$1.ZodObject<{
5918
- limit: z$1.ZodNumber;
5919
- maxDepth: z$1.ZodNumber;
5920
- sinceDays: z$1.ZodNumber;
5921
- type: z$1.ZodLiteral<"workspace.discover_repos">;
5922
- }, z$1.core.$strict>, z$1.ZodObject<{
5923
- repos: z$1.ZodArray<z$1.ZodObject<{
5924
- agentSeen: z$1.ZodBoolean;
5925
- agentSeenAt: z$1.ZodNullable<z$1.ZodString>;
5926
- lastActivityAt: z$1.ZodString;
5927
- name: z$1.ZodString;
5928
- originUrl: z$1.ZodNullable<z$1.ZodString>;
5929
- path: z$1.ZodString;
5930
- }, z$1.core.$strict>>;
5931
- truncated: z$1.ZodBoolean;
5932
- }, z$1.core.$strict>, "onlineRpc", true>;
5933
6116
  "provider_cli.status": HostDaemonCommandDescriptor<"provider_cli.status", z$1.ZodObject<{
5934
6117
  type: z$1.ZodLiteral<"provider_cli.status">;
5935
6118
  }, z$1.core.$strict>, z$1.ZodRecord<z$1.ZodEnum<{
@@ -6628,6 +6811,7 @@ declare const installedPluginSchema: z$1.ZodObject<{
6628
6811
  compatible: z$1.ZodBoolean;
6629
6812
  cssUrl: z$1.ZodNullable<z$1.ZodString>;
6630
6813
  hash: z$1.ZodString;
6814
+ jsBytes: z$1.ZodNumber;
6631
6815
  jsUrl: z$1.ZodString;
6632
6816
  sdkMajor: z$1.ZodNumber;
6633
6817
  sdkVersion: z$1.ZodString;
@@ -6735,6 +6919,7 @@ declare const pluginListResponseSchema: z$1.ZodObject<{
6735
6919
  compatible: z$1.ZodBoolean;
6736
6920
  cssUrl: z$1.ZodNullable<z$1.ZodString>;
6737
6921
  hash: z$1.ZodString;
6922
+ jsBytes: z$1.ZodNumber;
6738
6923
  jsUrl: z$1.ZodString;
6739
6924
  sdkMajor: z$1.ZodNumber;
6740
6925
  sdkVersion: z$1.ZodString;
@@ -6844,6 +7029,7 @@ declare const pluginReloadResponseSchema: z$1.ZodObject<{
6844
7029
  compatible: z$1.ZodBoolean;
6845
7030
  cssUrl: z$1.ZodNullable<z$1.ZodString>;
6846
7031
  hash: z$1.ZodString;
7032
+ jsBytes: z$1.ZodNumber;
6847
7033
  jsUrl: z$1.ZodString;
6848
7034
  sdkMajor: z$1.ZodNumber;
6849
7035
  sdkVersion: z$1.ZodString;
@@ -6999,6 +7185,7 @@ declare const pluginCatalogSearchResultSchema: z$1.ZodObject<{
6999
7185
  displayName: z$1.ZodString;
7000
7186
  entryId: z$1.ZodString;
7001
7187
  icon: z$1.ZodNullable<z$1.ZodString>;
7188
+ iconTinted: z$1.ZodDefault<z$1.ZodBoolean>;
7002
7189
  iconUrl: z$1.ZodNullable<z$1.ZodString>;
7003
7190
  incompatibleReason: z$1.ZodNullable<z$1.ZodString>;
7004
7191
  installed: z$1.ZodBoolean;
@@ -7008,6 +7195,7 @@ declare const pluginCatalogSearchResultSchema: z$1.ZodObject<{
7008
7195
  pluginId: z$1.ZodString;
7009
7196
  publisherKey: z$1.ZodString;
7010
7197
  publisherLabel: z$1.ZodString;
7198
+ repositoryUrl: z$1.ZodDefault<z$1.ZodNullable<z$1.ZodString>>;
7011
7199
  source: z$1.ZodString;
7012
7200
  }, z$1.core.$strip>;
7013
7201
  type PluginCatalogSearchResult$1 = z$1.infer<typeof pluginCatalogSearchResultSchema>;
@@ -7294,53 +7482,6 @@ declare const onboardingAgentOverviewSchema: z$1.ZodObject<{
7294
7482
  }, z$1.core.$strip>>;
7295
7483
  }, z$1.core.$strip>;
7296
7484
  type OnboardingAgentOverview = z$1.infer<typeof onboardingAgentOverviewSchema>;
7297
- /** Omission reads the primary machine, matching the usage-limits route. */
7298
- declare const systemOnboardingReposQuerySchema: z$1.ZodObject<{
7299
- hostId: z$1.ZodOptional<z$1.ZodString>;
7300
- }, z$1.core.$strip>;
7301
- type SystemOnboardingReposQuery = z$1.infer<typeof systemOnboardingReposQuerySchema>;
7302
- /**
7303
- * Onboarding funnel events, reported by the app and forwarded to the server's
7304
- * anonymous telemetry. Categorical or counts only — never paths, project names,
7305
- * or account emails.
7306
- */
7307
- declare const onboardingTelemetryEventSchema: z$1.ZodDiscriminatedUnion<[z$1.ZodObject<{
7308
- agentState: z$1.ZodEnum<{
7309
- connected: "connected";
7310
- none: "none";
7311
- signed_out: "signed_out";
7312
- }>;
7313
- detectedAgentCount: z$1.ZodNumber;
7314
- name: z$1.ZodLiteral<"onboarding_started">;
7315
- }, z$1.core.$strip>, z$1.ZodObject<{
7316
- name: z$1.ZodLiteral<"onboarding_step_completed">;
7317
- step: z$1.ZodEnum<{
7318
- agents: "agents";
7319
- projects: "projects";
7320
- }>;
7321
- }, z$1.core.$strip>, z$1.ZodObject<{
7322
- name: z$1.ZodLiteral<"onboarding_step_skipped">;
7323
- step: z$1.ZodEnum<{
7324
- agents: "agents";
7325
- projects: "projects";
7326
- }>;
7327
- }, z$1.core.$strip>, z$1.ZodObject<{
7328
- agentState: z$1.ZodEnum<{
7329
- connected: "connected";
7330
- none: "none";
7331
- signed_out: "signed_out";
7332
- }>;
7333
- durationMs: z$1.ZodNumber;
7334
- name: z$1.ZodLiteral<"onboarding_completed">;
7335
- projectsAdded: z$1.ZodNumber;
7336
- }, z$1.core.$strip>, z$1.ZodObject<{
7337
- name: z$1.ZodLiteral<"onboarding_dismissed">;
7338
- step: z$1.ZodEnum<{
7339
- agents: "agents";
7340
- projects: "projects";
7341
- }>;
7342
- }, z$1.core.$strip>], "name">;
7343
- type OnboardingTelemetryEvent = z$1.infer<typeof onboardingTelemetryEventSchema>;
7344
7485
  declare const systemConfigResponseSchema: z$1.ZodObject<{
7345
7486
  appearance: z$1.ZodObject<{
7346
7487
  customCss: z$1.ZodNullable<z$1.ZodString>;
@@ -7366,6 +7507,7 @@ declare const systemConfigResponseSchema: z$1.ZodObject<{
7366
7507
  dataDir: z$1.ZodString;
7367
7508
  defaultKeybindings: z$1.ZodArray<z$1.ZodObject<{
7368
7509
  command: z$1.ZodEnum<{
7510
+ "browser.find": "browser.find";
7369
7511
  "browser.focusLocation": "browser.focusLocation";
7370
7512
  "browser.reload": "browser.reload";
7371
7513
  "composer.focus": "composer.focus";
@@ -7463,9 +7605,9 @@ declare const systemConfigResponseSchema: z$1.ZodObject<{
7463
7605
  }, z$1.core.$strict>;
7464
7606
  }, z$1.core.$strict>>;
7465
7607
  experiments: z$1.ZodRecord<z$1.ZodEnum<{
7466
- claudeCodeMockCliTraffic: "claudeCodeMockCliTraffic";
7608
+ changelogPreview: "changelogPreview";
7467
7609
  editMessages: "editMessages";
7468
- newOnboarding: "newOnboarding";
7610
+ mobileApp: "mobileApp";
7469
7611
  providerSessionReaping: "providerSessionReaping";
7470
7612
  }>, z$1.ZodBoolean>;
7471
7613
  featureFlags: z$1.ZodObject<{
@@ -7478,7 +7620,6 @@ declare const systemConfigResponseSchema: z$1.ZodObject<{
7478
7620
  claudeCodeWorkflowsDisabled: z$1.ZodBoolean;
7479
7621
  codexMemoryEnabled: z$1.ZodBoolean;
7480
7622
  codexSubagentsDisabled: z$1.ZodBoolean;
7481
- onboardingCompletedAt: z$1.ZodNullable<z$1.ZodString>;
7482
7623
  showKeyboardHints: z$1.ZodBoolean;
7483
7624
  showUnhandledProviderEvents: z$1.ZodBoolean;
7484
7625
  steerActiveThreadOnEnter: z$1.ZodBoolean;
@@ -7486,6 +7627,7 @@ declare const systemConfigResponseSchema: z$1.ZodObject<{
7486
7627
  hostDaemonPort: z$1.ZodNullable<z$1.ZodNumber>;
7487
7628
  keybindingOverrides: z$1.ZodArray<z$1.ZodObject<{
7488
7629
  command: z$1.ZodEnum<{
7630
+ "browser.find": "browser.find";
7489
7631
  "browser.focusLocation": "browser.focusLocation";
7490
7632
  "browser.reload": "browser.reload";
7491
7633
  "composer.focus": "composer.focus";
@@ -7555,6 +7697,7 @@ declare const systemConfigResponseSchema: z$1.ZodObject<{
7555
7697
  }, z$1.core.$strict>>;
7556
7698
  keybindings: z$1.ZodArray<z$1.ZodObject<{
7557
7699
  command: z$1.ZodEnum<{
7700
+ "browser.find": "browser.find";
7558
7701
  "browser.focusLocation": "browser.focusLocation";
7559
7702
  "browser.reload": "browser.reload";
7560
7703
  "composer.focus": "composer.focus";
@@ -7651,6 +7794,7 @@ declare const systemConfigResponseSchema: z$1.ZodObject<{
7651
7794
  }>>;
7652
7795
  }, z$1.core.$strict>;
7653
7796
  }, z$1.core.$strict>>;
7797
+ localHelperPorts: z$1.ZodArray<z$1.ZodNumber>;
7654
7798
  pluginThemes: z$1.ZodArray<z$1.ZodObject<{
7655
7799
  description: z$1.ZodNullable<z$1.ZodString>;
7656
7800
  id: z$1.ZodString;
@@ -8142,6 +8286,9 @@ declare const timelineCommandWorkRowSchema: z$1.ZodObject<{
8142
8286
  id: z$1.ZodString;
8143
8287
  kind: z$1.ZodLiteral<"work">;
8144
8288
  output: z$1.ZodString;
8289
+ outputPreview: z$1.ZodOptional<z$1.ZodObject<{
8290
+ totalChars: z$1.ZodNumber;
8291
+ }, z$1.core.$strip>>;
8145
8292
  source: z$1.ZodNullable<z$1.ZodString>;
8146
8293
  sourceSeqEnd: z$1.ZodNumber;
8147
8294
  sourceSeqStart: z$1.ZodNumber;
@@ -8186,6 +8333,9 @@ declare const timelineToolWorkRowSchema: z$1.ZodObject<{
8186
8333
  id: z$1.ZodString;
8187
8334
  kind: z$1.ZodLiteral<"work">;
8188
8335
  output: z$1.ZodString;
8336
+ outputPreview: z$1.ZodOptional<z$1.ZodObject<{
8337
+ totalChars: z$1.ZodNumber;
8338
+ }, z$1.core.$strip>>;
8189
8339
  sourceSeqEnd: z$1.ZodNumber;
8190
8340
  sourceSeqStart: z$1.ZodNumber;
8191
8341
  startedAt: z$1.ZodNumber;
@@ -11099,6 +11249,96 @@ interface PluginFileOpenerProps {
11099
11249
  */
11100
11250
  experimental_Original: ComponentType;
11101
11251
  }
11252
+ /** How a code line longer than the viewport is presented. */
11253
+ type CodeOverflowMode = "scroll" | "wrap";
11254
+ /** How a diff presents its two sides. */
11255
+ type DiffViewMode = "split" | "unified";
11256
+ /** A 1-based, inclusive line range. */
11257
+ interface SourceCodeLineRange {
11258
+ start: number;
11259
+ end: number;
11260
+ }
11261
+ /**
11262
+ * Props of the host-owned `experimental_SourceCode` component — BB's source
11263
+ * viewer. The host owns syntax highlighting, gutters, wrapping, line-selection
11264
+ * presentation, and the live BB code theme; the caller owns loading the text
11265
+ * and any surrounding chrome.
11266
+ */
11267
+ interface SourceCodeProps {
11268
+ /** The complete source text to render. */
11269
+ content: string;
11270
+ /** File path or name. Drives language detection and the a11y label. */
11271
+ path: string;
11272
+ /** Long-line presentation. Defaults to `"scroll"`. */
11273
+ overflow?: CodeOverflowMode;
11274
+ /**
11275
+ * Lines to highlight and scroll into view (1-based, inclusive). Defaults to
11276
+ * `null` — nothing highlighted.
11277
+ */
11278
+ highlightedLines?: SourceCodeLineRange | null;
11279
+ /** Applied to the renderer's root element. */
11280
+ className?: string;
11281
+ }
11282
+ /**
11283
+ * Props of the host-owned `experimental_Diff` component — BB's diff viewer.
11284
+ * The host owns patch normalization (a patch without a `diff --git` header is
11285
+ * completed from `path`), syntax highlighting, unified/split presentation,
11286
+ * gutters, line-selection presentation, and the live BB code theme. Content
11287
+ * that cannot be parsed as a patch degrades to plain monospace text.
11288
+ */
11289
+ interface DiffProps {
11290
+ /** Unified patch text for exactly ONE file. */
11291
+ patch: string;
11292
+ /**
11293
+ * The file the patch applies to. Used to complete a patch that arrives
11294
+ * without a `diff --git` header (GitHub's REST patches, single `@@` hunks)
11295
+ * and for language detection.
11296
+ */
11297
+ path: string;
11298
+ /** Side-by-side or inline. Defaults to `"unified"`. */
11299
+ view?: DiffViewMode;
11300
+ /** Long-line presentation. Defaults to `"scroll"`. */
11301
+ overflow?: CodeOverflowMode;
11302
+ /** Whether the gutter shows line numbers. Defaults to `true`. */
11303
+ showLineNumbers?: boolean;
11304
+ /** Applied to the renderer's root element. */
11305
+ className?: string;
11306
+ }
11307
+ /**
11308
+ * Props passed to an `experimental_sourceCodeRenderer` component. Every value
11309
+ * is already resolved — the replacement never re-applies a host default.
11310
+ */
11311
+ interface PluginSourceCodeRendererProps {
11312
+ content: string;
11313
+ path: string;
11314
+ overflow: CodeOverflowMode;
11315
+ highlightedLines: SourceCodeLineRange | null;
11316
+ /**
11317
+ * BB's source renderer, bound to this request. Render it to delegate
11318
+ * conditionally without re-entering plugin replacement resolution.
11319
+ *
11320
+ * @experimental Audit before relying on this as a stable contract.
11321
+ */
11322
+ experimental_Original: ComponentType;
11323
+ }
11324
+ /**
11325
+ * Props passed to an `experimental_diffRenderer` component. `patch` is always
11326
+ * a complete single-file unified patch, whatever shape the caller supplied.
11327
+ */
11328
+ interface PluginDiffRendererProps {
11329
+ patch: string;
11330
+ path: string;
11331
+ view: DiffViewMode;
11332
+ overflow: CodeOverflowMode;
11333
+ showLineNumbers: boolean;
11334
+ /**
11335
+ * BB's diff renderer, bound to this request. Render it to delegate
11336
+ * conditionally without re-entering plugin replacement resolution.
11337
+ *
11338
+ * @experimental Audit before relying on this as a stable contract.
11339
+ */
11340
+ experimental_Original: ComponentType;
11341
+ }
11102
11342
  /**
11103
11343
  * Message context passed to a `messageDirective` component — the assistant
11104
11344
  * (or nested agent) message that contained the directive.
@@ -11595,6 +11835,41 @@ interface PluginFileOpenerRegistration {
11595
11835
  extensions: readonly string[];
11596
11836
  component: ComponentType<PluginFileOpenerProps>;
11597
11837
  }
11838
+ /**
11839
+ * Replace BB's source-code renderer everywhere it renders supplied source
11840
+ * text — the native file preview and every plugin that calls
11841
+ * `experimental_SourceCode`. Like `experimental_threadList` this slot is
11842
+ * **exclusive**: one renderer at a time. Registering activates it while the
11843
+ * plugin is enabled; if several are registered the first in deterministic slot
11844
+ * order wins. A missing, disabled, or crashing replacement falls back to BB's
11845
+ * renderer, and a replacement can render `experimental_Original` to delegate
11846
+ * per call (behind its own setting, by language, by size — whatever it needs).
11847
+ */
11848
+ interface PluginSourceCodeRendererRegistration {
11849
+ /** Unique within the plugin; letters, digits, `-`, `_`. */
11850
+ id: string;
11851
+ /** Label shown in capability details. */
11852
+ title: string;
11853
+ /** Optional one-line description shown with the provider choice. */
11854
+ description?: string;
11855
+ component: ComponentType<PluginSourceCodeRendererProps>;
11856
+ }
11857
+ /**
11858
+ * Replace BB's diff renderer everywhere it renders supplied diff content — the
11859
+ * timeline file diffs, the environment diff panel's text bodies, and every
11860
+ * plugin that calls `experimental_Diff`. Exclusive, with the same activation,
11861
+ * fallback, and `experimental_Original` delegation rules as
11862
+ * {@link PluginSourceCodeRendererRegistration}.
11863
+ */
11864
+ interface PluginDiffRendererRegistration {
11865
+ /** Unique within the plugin; letters, digits, `-`, `_`. */
11866
+ id: string;
11867
+ /** Label shown in capability details. */
11868
+ title: string;
11869
+ /** Optional one-line description shown with the provider choice. */
11870
+ description?: string;
11871
+ component: ComponentType<PluginDiffRendererProps>;
11872
+ }
11598
11873
  /**
11599
11874
  * Register a leaf message directive rendered inside assistant (and nested
11600
11875
  * agent) message Markdown. `id` is the directive name: `inline-vis` matches
@@ -11728,6 +12003,18 @@ interface PluginAppSlots {
11728
12003
  */
11729
12004
  experimental_threadHeaderAction(registration: PluginThreadHeaderActionRegistration): void;
11730
12005
  fileOpener(registration: PluginFileOpenerRegistration): void;
12006
+ /**
12007
+ * Replace BB's source-code renderer (see
12008
+ * {@link PluginSourceCodeRendererRegistration}). Experimental: see
12009
+ * docs/api_to_audit.md.
12010
+ */
12011
+ experimental_sourceCodeRenderer(registration: PluginSourceCodeRendererRegistration): void;
12012
+ /**
12013
+ * Replace BB's diff renderer (see
12014
+ * {@link PluginDiffRendererRegistration}). Experimental: see
12015
+ * docs/api_to_audit.md.
12016
+ */
12017
+ experimental_diffRenderer(registration: PluginDiffRendererRegistration): void;
11731
12018
  messageDirective(registration: PluginMessageDirectiveRegistration): void;
11732
12019
  messageAction(registration: PluginMessageActionRegistration): void;
11733
12020
  /**
@@ -12263,6 +12550,13 @@ interface PluginSdkApp {
12263
12550
  * The sidebar's live thread view (see {@link PluginSidebarThreadsState}).
12264
12551
  * Reads the host's own cache and realtime subscriptions, so it costs no
12265
12552
  * extra request and updates exactly when the built-in sidebar does.
12553
+ *
12554
+ * `threads` is one array of every visible thread and is not capped. Thread
12555
+ * objects keep their identity across updates while the underlying entry is
12556
+ * unchanged, so a memoized row re-renders only when its own thread changed;
12557
+ * the array itself is new on every update. Window your rows (render only
12558
+ * what is on screen) as the built-in sidebar does — a list that mounts one
12559
+ * row per thread is slow on phones with many threads.
12266
12560
  * Experimental: see docs/api_to_audit.md.
12267
12561
  */
12268
12562
  experimental_useSidebarThreads(): PluginSidebarThreadsState;
@@ -12307,6 +12601,21 @@ interface PluginSdkApp {
12307
12601
  * docs/api_to_audit.md for what to audit before the prefix drops.
12308
12602
  */
12309
12603
  experimental_NewThreadComposer: ComponentType<NewThreadComposerProps>;
12604
+ /**
12605
+ * The host-owned source viewer (see {@link SourceCodeProps}). Renders
12606
+ * supplied source text with BB's syntax highlighting, gutters, and live code
12607
+ * theme, and honours an active `experimental_sourceCodeRenderer`
12608
+ * replacement. Experimental: see docs/api_to_audit.md.
12609
+ */
12610
+ experimental_SourceCode: ComponentType<SourceCodeProps>;
12611
+ /**
12612
+ * The host-owned diff viewer (see {@link DiffProps}). Renders supplied patch
12613
+ * content with BB's normalization, syntax highlighting, unified/split
12614
+ * presentation, and live code theme, and honours an active
12615
+ * `experimental_diffRenderer` replacement. Experimental: see
12616
+ * docs/api_to_audit.md.
12617
+ */
12618
+ experimental_Diff: ComponentType<DiffProps>;
12310
12619
  useComposerView(): ComposerView;
12311
12620
  }
12312
12621
 
@@ -12618,6 +12927,9 @@ interface ProjectDefaultExecutionOptionsArgs {
12618
12927
  projectId: string;
12619
12928
  signal?: AbortSignal;
12620
12929
  }
12930
+ interface ProjectSidebarBootstrapArgs {
12931
+ signal?: AbortSignal;
12932
+ }
12621
12933
  interface ProjectAttachmentFileLike {
12622
12934
  arrayBuffer(): Promise<ArrayBuffer>;
12623
12935
  readonly name: string;
@@ -12684,6 +12996,7 @@ type ProjectListResult = ProjectResponse[] | ProjectWithThreadsResponse[];
12684
12996
  type ProjectPathsResult = WorkspacePathListResponse;
12685
12997
  type ProjectPromptHistoryResult = PromptHistoryResponse;
12686
12998
  type ProjectReorderResult = ProjectResponse[];
12999
+ type ProjectSidebarBootstrapResult = SidebarBootstrapResponse;
12687
13000
  type ProjectSourceAddResult = ProjectSource;
12688
13001
  type ProjectSourceDeleteResult = {
12689
13002
  ok: true;
@@ -12714,6 +13027,12 @@ interface ProjectsArea {
12714
13027
  paths(args: ProjectPathsArgs): Promise<ProjectPathsResult>;
12715
13028
  promptHistory(args: ProjectPromptHistoryArgs): Promise<ProjectPromptHistoryResult>;
12716
13029
  reorder(args: ProjectReorderArgs): Promise<ProjectReorderResult>;
13030
+ /**
13031
+ * One round-trip navigation snapshot: thread sections, every project with
13032
+ * its live threads and resolved thread-creation defaults, and the personal
13033
+ * project. Backs the sidebar of the web and native apps.
13034
+ */
13035
+ sidebarBootstrap(args?: ProjectSidebarBootstrapArgs): Promise<ProjectSidebarBootstrapResult>;
12717
13036
  sources: ProjectSourcesArea;
12718
13037
  update(args: ProjectUpdateArgs): Promise<ProjectUpdateResult>;
12719
13038
  }
@@ -13151,11 +13470,7 @@ type SystemUsageLimitsResult = ProviderUsageResponse;
13151
13470
  interface SystemOnboardingArgs extends SystemProvidersQuery {
13152
13471
  signal?: AbortSignal;
13153
13472
  }
13154
- interface SystemOnboardingReposArgs extends SystemOnboardingReposQuery {
13155
- signal?: AbortSignal;
13156
- }
13157
13473
  type SystemOnboardingAgentsResult = OnboardingAgentOverview;
13158
- type SystemOnboardingReposResult = DiscoverReposResult;
13159
13474
  type SystemVersionResult = SystemVersionResponse;
13160
13475
  interface SystemArea {
13161
13476
  attention(args?: SystemAttentionArgs): Promise<SystemAttentionResult>;
@@ -13174,14 +13489,8 @@ interface SystemArea {
13174
13489
  updateExperiments(args: Experiments): Promise<SystemUpdateExperimentsResult>;
13175
13490
  updateGeneralSettings(args: AppSettings): Promise<SystemUpdateGeneralSettingsResult>;
13176
13491
  updateKeyboardSettings(args: AppKeybindingOverrides): Promise<SystemUpdateKeyboardSettingsResult>;
13177
- /** Report one onboarding funnel event to anonymous telemetry. */
13178
- onboardingEvent(args: OnboardingTelemetryEvent): Promise<{
13179
- ok: true;
13180
- }>;
13181
13492
  /** Live agent state for onboarding: install, auth, and plan per provider. */
13182
13493
  onboardingAgents(args?: SystemOnboardingArgs): Promise<SystemOnboardingAgentsResult>;
13183
- /** Candidate projects discovered on the host, ranked for onboarding. */
13184
- onboardingRepos(args?: SystemOnboardingReposArgs): Promise<SystemOnboardingReposResult>;
13185
13494
  usageLimits(args?: SystemUsageLimitsArgs): Promise<SystemUsageLimitsResult>;
13186
13495
  version(args?: SystemVersionArgs): Promise<SystemVersionResult>;
13187
13496
  }
@@ -13614,10 +13923,14 @@ interface ThreadSectionsArea {
13614
13923
  update(args: UpdateThreadSectionRequest): Promise<ThreadSectionUpdateResult>;
13615
13924
  }
13616
13925
 
13617
- interface BbSdk extends BbRealtime {
13926
+ /**
13927
+ * Every server-backed SDK area. The Node SDK adds the local `guide` area on
13928
+ * top of this; the browser SDK omits it so the generated guide templates
13929
+ * (~112 KB of markdown) stay out of the web app's boot chunk.
13930
+ */
13931
+ interface BbSdkAreas extends BbRealtime {
13618
13932
  environments: EnvironmentsArea;
13619
13933
  files: FilesArea;
13620
- guide: GuideArea;
13621
13934
  hosts: HostsArea;
13622
13935
  projects: ProjectsArea;
13623
13936
  plugins: PluginsArea;
@@ -13630,6 +13943,9 @@ interface BbSdk extends BbRealtime {
13630
13943
  threadSections: ThreadSectionsArea;
13631
13944
  threads: ThreadsArea;
13632
13945
  }
13946
+ interface BbSdk extends BbSdkAreas {
13947
+ guide: GuideArea;
13948
+ }
13633
13949
 
13634
13950
  interface ExperimentalHostSignalContract<PayloadSchema extends StandardSchemaV1 = StandardSchemaV1> {
13635
13951
  readonly payload: PayloadSchema;
@@ -13810,9 +14126,11 @@ interface PluginStorage {
13810
14126
  /** Namespaced JSON key-value rows in bb.db; values ≤256KB each. */
13811
14127
  kv: PluginKvStorage;
13812
14128
  /**
13813
- * Open (or reuse the path of) the plugin's own SQLite database at
13814
- * <dataDir>/plugins/<id>/data.db — the server's better-sqlite3, WAL mode,
13815
- * busy_timeout 5000. Handles are host-tracked and closed on
14129
+ * The plugin's own SQLite database at <dataDir>/plugins/<id>/data.db — the
14130
+ * server's better-sqlite3, WAL mode, busy_timeout 5000. Returns the same
14131
+ * open handle for the whole plugin load, so calling it per request is
14132
+ * cheap; a new handle is opened only on the first call or after the
14133
+ * plugin closed the previous one. The host closes handles on
13816
14134
  * dispose/reload; a closed handle throws on use.
13817
14135
  */
13818
14136
  database(): Database.Database;
@@ -14458,4 +14776,4 @@ interface BbPluginApi {
14458
14776
  }
14459
14777
 
14460
14778
  export { PLUGIN_CLI_OUTPUT_MAX_BYTES, defineRpcContract, experimental_defineHostEntry };
14461
- export type { BbContext, BbNavigate, BbPluginApi, ComposerCustomization, ComposerPlusMenuItem, ComposerRichTextSpec, ComposerStructuredDraft, ComposerView, ExperimentalHostCallOptions, ExperimentalHostClient, ExperimentalHostEntry, ExperimentalHostPaths, ExperimentalHostRpcContext, ExperimentalHostRpcHandlers, ExperimentalHostSignalContract, ExperimentalHostSignalEvent, ExperimentalHostSignals, ExperimentalHostWatchChange, ExperimentalHostWatchChangeType, ExperimentalHostWatchEvent, ExperimentalHostWatchListener, ExperimentalHostWatchOptions, ExperimentalHostWatchSubscription, ExperimentalHostWorkerLease, JsonValue, MarkdownProps, NewThreadComposerProps, NewThreadRequest, PluginAgentConfiguration, PluginAgentConfigurationContext, PluginAgentToolContentPart, PluginAgentToolContext, PluginAgentToolExperimentalStatusLabels, PluginAgentToolRegistrationBase, PluginAgentToolResult, PluginAgentToolSelection, PluginAgents, PluginAppBuilder, PluginAppComposer, PluginAppContentScripts, PluginAppDefinition, PluginAppSetup, PluginAppSlots, PluginBackground, PluginCli, PluginCliCommandInfo, PluginCliContext, PluginCliExecutionResult, PluginCliOutputLimitError, PluginCliRegistration, PluginCliResult, PluginComposerApi, PluginComposerMention, PluginComposerScope, PluginComposerTextEffect, PluginComposerThreadRowStatus, PluginContentScriptContext, PluginContentScriptDisposer, PluginContentScriptRegistration, PluginEvents, PluginFileOpenerProps, PluginFileOpenerRegistration, PluginFileOpenerSource, PluginHomepageSectionProps, PluginHomepageSectionRegistration, PluginHosts, PluginHttp, PluginHttpAuthMode, PluginHttpHandler, PluginInteractionCancelReason, PluginInteractionRequest, PluginInteractionResult, PluginKvStorage, PluginLogger, PluginMentionItem, PluginMentionProviderRegistration, PluginMentionSearchContext, PluginMentionTrigger, PluginMessageActionContext, PluginMessageActionRegistration, PluginMessageDirectiveMessage, PluginMessageDirectiveOpenWorkspaceFile, PluginMessageDirectiveProps, PluginMessageDirectiveRegistration, PluginNavPanelProps, PluginNavPanelRegistration, PluginNewThreadPanelActionContext, PluginNewThreadPanelActionRegistration, PluginNewThreadPanelProps, PluginPanelActionOpenOptions, PluginPendingInteractionProps, PluginPendingInteractionRegistration, PluginPendingInteractionView, PluginProviderCapabilities, PluginProviderComposerAction, PluginProviderDeclaration, PluginProviderIconRegistration, PluginProviderPermissionMode, PluginProviderReasoningLevel, PluginRealtime, PluginRealtimeConnectionState, PluginRpc, PluginRpcCallArgs, PluginRpcClient, PluginRpcContract, PluginRpcError, PluginRpcErrorCode, PluginRpcHandlers, PluginRpcIssuePathSegment, PluginRpcMethodContract, PluginRpcResult, PluginRpcValidationIssue, PluginSdkApp, PluginServerApi, PluginSettingDescriptor, PluginSettingDescriptors, PluginSettingValue, PluginSettings, PluginSettingsHandle, PluginSettingsSectionProps, PluginSettingsSectionRegistration, PluginSettingsState, PluginSettingsValues, PluginSharedPortTunnelIdentity, PluginSidebarFooterActionContext, PluginSidebarFooterActionProps, PluginSidebarFooterActionRegistration, PluginSidebarProject, PluginSidebarPullRequest, PluginSidebarSplitPane, PluginSidebarThread, PluginSidebarThreadActions, PluginSidebarThreadActivity, PluginSidebarThreadIndicator, PluginSidebarThreadPullRequestState, PluginSidebarThreadSplit, PluginSidebarThreadsState, PluginSidebarWorkspaceKind, PluginStatusApi, PluginStorage, PluginTargetedPanelActionOpenOptions, PluginThreadEventHandler, PluginThreadEventName, PluginThreadEventPayloads, PluginThreadHeaderActionProps, PluginThreadHeaderActionRegistration, PluginThreadListProps, PluginThreadListRegistration, PluginThreadPanelActionContext, PluginThreadPanelActionRegistration, PluginThreadPanelProps, PluginUi, StandardSchemaV1, StandardSchemaV1InferInput, StandardSchemaV1InferOutput, StandardSchemaV1Issue, StandardSchemaV1Result, ThreadChatMessageAction, ThreadChatMessageReference, ThreadChatProps };
14779
+ export type { BbContext, BbNavigate, BbPluginApi, CodeOverflowMode, ComposerCustomization, ComposerPlusMenuItem, ComposerRichTextSpec, ComposerStructuredDraft, ComposerView, DiffProps, DiffViewMode, ExperimentalHostCallOptions, ExperimentalHostClient, ExperimentalHostEntry, ExperimentalHostPaths, ExperimentalHostRpcContext, ExperimentalHostRpcHandlers, ExperimentalHostSignalContract, ExperimentalHostSignalEvent, ExperimentalHostSignals, ExperimentalHostWatchChange, ExperimentalHostWatchChangeType, ExperimentalHostWatchEvent, ExperimentalHostWatchListener, ExperimentalHostWatchOptions, ExperimentalHostWatchSubscription, ExperimentalHostWorkerLease, JsonValue, MarkdownProps, NewThreadComposerProps, NewThreadRequest, PluginAgentConfiguration, PluginAgentConfigurationContext, PluginAgentToolContentPart, PluginAgentToolContext, PluginAgentToolExperimentalStatusLabels, PluginAgentToolRegistrationBase, PluginAgentToolResult, PluginAgentToolSelection, PluginAgents, PluginAppBuilder, PluginAppComposer, PluginAppContentScripts, PluginAppDefinition, PluginAppSetup, PluginAppSlots, PluginBackground, PluginCli, PluginCliCommandInfo, PluginCliContext, PluginCliExecutionResult, PluginCliOutputLimitError, PluginCliRegistration, PluginCliResult, PluginComposerApi, PluginComposerMention, PluginComposerScope, PluginComposerTextEffect, PluginComposerThreadRowStatus, PluginContentScriptContext, PluginContentScriptDisposer, PluginContentScriptRegistration, PluginDiffRendererProps, PluginDiffRendererRegistration, PluginEvents, PluginFileOpenerProps, PluginFileOpenerRegistration, PluginFileOpenerSource, PluginHomepageSectionProps, PluginHomepageSectionRegistration, PluginHosts, PluginHttp, PluginHttpAuthMode, PluginHttpHandler, PluginInteractionCancelReason, PluginInteractionRequest, PluginInteractionResult, PluginKvStorage, PluginLogger, PluginMentionItem, PluginMentionProviderRegistration, PluginMentionSearchContext, PluginMentionTrigger, PluginMessageActionContext, PluginMessageActionRegistration, PluginMessageDirectiveMessage, PluginMessageDirectiveOpenWorkspaceFile, PluginMessageDirectiveProps, PluginMessageDirectiveRegistration, PluginNavPanelProps, PluginNavPanelRegistration, PluginNewThreadPanelActionContext, PluginNewThreadPanelActionRegistration, PluginNewThreadPanelProps, PluginPanelActionOpenOptions, PluginPendingInteractionProps, PluginPendingInteractionRegistration, PluginPendingInteractionView, PluginProviderCapabilities, PluginProviderComposerAction, PluginProviderDeclaration, PluginProviderIconRegistration, PluginProviderPermissionMode, PluginProviderReasoningLevel, PluginRealtime, PluginRealtimeConnectionState, PluginRpc, PluginRpcCallArgs, PluginRpcClient, PluginRpcContract, PluginRpcError, PluginRpcErrorCode, PluginRpcHandlers, PluginRpcIssuePathSegment, PluginRpcMethodContract, PluginRpcResult, PluginRpcValidationIssue, PluginSdkApp, PluginServerApi, PluginSettingDescriptor, PluginSettingDescriptors, PluginSettingValue, PluginSettings, PluginSettingsHandle, PluginSettingsSectionProps, PluginSettingsSectionRegistration, PluginSettingsState, PluginSettingsValues, PluginSharedPortTunnelIdentity, PluginSidebarFooterActionContext, PluginSidebarFooterActionProps, PluginSidebarFooterActionRegistration, PluginSidebarProject, PluginSidebarPullRequest, PluginSidebarSplitPane, PluginSidebarThread, PluginSidebarThreadActions, PluginSidebarThreadActivity, PluginSidebarThreadIndicator, PluginSidebarThreadPullRequestState, PluginSidebarThreadSplit, PluginSidebarThreadsState, PluginSidebarWorkspaceKind, PluginSourceCodeRendererProps, PluginSourceCodeRendererRegistration, PluginStatusApi, PluginStorage, PluginTargetedPanelActionOpenOptions, PluginThreadEventHandler, PluginThreadEventName, PluginThreadEventPayloads, PluginThreadHeaderActionProps, PluginThreadHeaderActionRegistration, PluginThreadListProps, PluginThreadListRegistration, PluginThreadPanelActionContext, PluginThreadPanelActionRegistration, PluginThreadPanelProps, PluginUi, SourceCodeLineRange, SourceCodeProps, StandardSchemaV1, StandardSchemaV1InferInput, StandardSchemaV1InferOutput, StandardSchemaV1Issue, StandardSchemaV1Result, ThreadChatMessageAction, ThreadChatMessageReference, ThreadChatProps };