@vellumai/plugin-api 0.10.12-dev.202607250140.9979030 → 0.10.12-staging.2

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.
Files changed (3) hide show
  1. package/index.d.ts +2241 -1363
  2. package/index.js +0 -1
  3. package/package.json +1 -1
package/index.d.ts CHANGED
@@ -1,6 +1,82 @@
1
1
  /// <reference path="./app.d.ts" />
2
2
  import { z } from 'zod';
3
3
 
4
+ declare type _AcpServerMessages = AcpSessionSpawnedEvent | AcpSessionUpdateEvent | AcpSessionCompletedEvent | AcpSessionErrorEvent | AcpSessionUsageEvent;
5
+
6
+ declare type AcpSessionCompletedEvent = z.infer<typeof AcpSessionCompletedEventSchema>;
7
+
8
+ declare const AcpSessionCompletedEventSchema: z.ZodObject<{
9
+ type: z.ZodLiteral<"acp_session_completed">;
10
+ acpSessionId: z.ZodString;
11
+ stopReason: z.ZodEnum<{
12
+ cancelled: "cancelled";
13
+ end_turn: "end_turn";
14
+ max_tokens: "max_tokens";
15
+ max_turn_requests: "max_turn_requests";
16
+ refusal: "refusal";
17
+ }>;
18
+ }, z.core.$strict>;
19
+
20
+ declare type AcpSessionErrorEvent = z.infer<typeof AcpSessionErrorEventSchema>;
21
+
22
+ declare const AcpSessionErrorEventSchema: z.ZodObject<{
23
+ type: z.ZodLiteral<"acp_session_error">;
24
+ acpSessionId: z.ZodString;
25
+ error: z.ZodString;
26
+ }, z.core.$strict>;
27
+
28
+ declare type AcpSessionSpawnedEvent = z.infer<typeof AcpSessionSpawnedEventSchema>;
29
+
30
+ declare const AcpSessionSpawnedEventSchema: z.ZodObject<{
31
+ type: z.ZodLiteral<"acp_session_spawned">;
32
+ acpSessionId: z.ZodString;
33
+ agent: z.ZodString;
34
+ parentConversationId: z.ZodString;
35
+ parentToolUseId: z.ZodOptional<z.ZodString>;
36
+ task: z.ZodOptional<z.ZodString>;
37
+ }, z.core.$strict>;
38
+
39
+ declare type AcpSessionUpdateEvent = z.infer<typeof AcpSessionUpdateEventSchema>;
40
+
41
+ declare const AcpSessionUpdateEventSchema: z.ZodObject<{
42
+ type: z.ZodLiteral<"acp_session_update">;
43
+ acpSessionId: z.ZodString;
44
+ updateType: z.ZodEnum<{
45
+ agent_message_chunk: "agent_message_chunk";
46
+ agent_thought_chunk: "agent_thought_chunk";
47
+ user_message_chunk: "user_message_chunk";
48
+ tool_call: "tool_call";
49
+ tool_call_update: "tool_call_update";
50
+ plan: "plan";
51
+ }>;
52
+ content: z.ZodOptional<z.ZodString>;
53
+ toolCallId: z.ZodOptional<z.ZodString>;
54
+ toolTitle: z.ZodOptional<z.ZodString>;
55
+ toolKind: z.ZodOptional<z.ZodString>;
56
+ toolStatus: z.ZodOptional<z.ZodString>;
57
+ rawInput: z.ZodOptional<z.ZodUnknown>;
58
+ rawOutput: z.ZodOptional<z.ZodUnknown>;
59
+ locations: z.ZodOptional<z.ZodArray<z.ZodObject<{
60
+ path: z.ZodString;
61
+ line: z.ZodOptional<z.ZodNumber>;
62
+ }, z.core.$strip>>>;
63
+ messageId: z.ZodOptional<z.ZodString>;
64
+ seq: z.ZodOptional<z.ZodNumber>;
65
+ }, z.core.$strict>;
66
+
67
+ declare type AcpSessionUsageEvent = z.infer<typeof AcpSessionUsageEventSchema>;
68
+
69
+ declare const AcpSessionUsageEventSchema: z.ZodObject<{
70
+ type: z.ZodLiteral<"acp_session_usage">;
71
+ acpSessionId: z.ZodString;
72
+ usedTokens: z.ZodNumber;
73
+ contextSize: z.ZodNumber;
74
+ inputTokens: z.ZodOptional<z.ZodNumber>;
75
+ outputTokens: z.ZodOptional<z.ZodNumber>;
76
+ costAmount: z.ZodOptional<z.ZodNumber>;
77
+ costCurrency: z.ZodOptional<z.ZodString>;
78
+ }, z.core.$strict>;
79
+
4
80
  /**
5
81
  * Append a message to a conversation. This is the low-level insert: it
6
82
  * persists and indexes the row only — it does not project the message into
@@ -76,6 +152,15 @@ export declare type AgentLoopExitReason =
76
152
  /** An unhandled error ended the turn. */
77
153
  | "error";
78
154
 
155
+ declare type AppFilesChangedEvent = z.infer<typeof AppFilesChangedEventSchema>;
156
+
157
+ declare const AppFilesChangedEventSchema: z.ZodObject<{
158
+ type: z.ZodLiteral<"app_files_changed">;
159
+ appId: z.ZodString;
160
+ }, z.core.$strip>;
161
+
162
+ declare type _AppsServerMessages = AppFilesChangedEvent;
163
+
79
164
  /**
80
165
  * How {@link listConversations} (and friends) treats archived rows.
81
166
  *
@@ -89,16 +174,64 @@ export declare type AgentLoopExitReason =
89
174
  */
90
175
  declare type ArchiveStatusFilter = "active" | "archived" | "all";
91
176
 
177
+ declare type AssistantActivityStateEvent = z.infer<typeof AssistantActivityStateEventSchema>;
178
+
179
+ declare const AssistantActivityStateEventSchema: z.ZodObject<{
180
+ type: z.ZodLiteral<"assistant_activity_state">;
181
+ conversationId: z.ZodString;
182
+ activityVersion: z.ZodNumber;
183
+ phase: z.ZodEnum<{
184
+ thinking: "thinking";
185
+ idle: "idle";
186
+ streaming: "streaming";
187
+ tool_running: "tool_running";
188
+ awaiting_confirmation: "awaiting_confirmation";
189
+ }>;
190
+ anchor: z.ZodEnum<{
191
+ assistant_turn: "assistant_turn";
192
+ user_turn: "user_turn";
193
+ global: "global";
194
+ }>;
195
+ reason: z.ZodEnum<{
196
+ thinking_delta: "thinking_delta";
197
+ generation_cancelled: "generation_cancelled";
198
+ message_dequeued: "message_dequeued";
199
+ first_text_delta: "first_text_delta";
200
+ tool_use_start: "tool_use_start";
201
+ preview_start: "preview_start";
202
+ tool_result_received: "tool_result_received";
203
+ confirmation_requested: "confirmation_requested";
204
+ confirmation_resolved: "confirmation_resolved";
205
+ context_compacting: "context_compacting";
206
+ message_complete: "message_complete";
207
+ error_terminal: "error_terminal";
208
+ }>;
209
+ requestId: z.ZodOptional<z.ZodString>;
210
+ statusText: z.ZodOptional<z.ZodString>;
211
+ }, z.core.$strip>;
212
+
213
+ /** Attention state metadata for a conversation's latest assistant message. */
214
+ declare interface AssistantAttention {
215
+ hasUnseenLatestAssistantMessage: boolean;
216
+ latestAssistantMessageAt?: number;
217
+ lastSeenAssistantMessageAt?: number;
218
+ lastSeenConfidence?: string;
219
+ lastSeenSignalType?: string;
220
+ }
221
+
92
222
  declare type AssistantConfig = z.infer<typeof AssistantConfigSchema>;
93
223
 
94
224
  declare const AssistantConfigSchema: z.ZodObject<{
95
225
  services: z.ZodDefault<z.ZodObject<{
96
226
  inference: z.ZodDefault<z.ZodObject<{}, z.core.$strip>>;
97
227
  "image-generation": z.ZodDefault<z.ZodObject<{
228
+ mode: z.ZodDefault<z.ZodEnum<{
229
+ managed: "managed";
230
+ "your-own": "your-own";
231
+ }>>;
98
232
  provider: z.ZodDefault<z.ZodEnum<{
99
233
  openai: "openai";
100
234
  gemini: "gemini";
101
- vellum: "vellum";
102
235
  }>>;
103
236
  model: z.ZodDefault<z.ZodString>;
104
237
  }, z.core.$strip>>;
@@ -439,7 +572,6 @@ declare const AssistantConfigSchema: z.ZodObject<{
439
572
  needleK: z.ZodDefault<z.ZodNumber>;
440
573
  denseK: z.ZodDefault<z.ZodNumber>;
441
574
  replyQueryK: z.ZodDefault<z.ZodNumber>;
442
- spanQueryK: z.ZodDefault<z.ZodNumber>;
443
575
  selectorEnabled: z.ZodDefault<z.ZodBoolean>;
444
576
  selectorPromptPath: z.ZodDefault<z.ZodNullable<z.ZodString>>;
445
577
  edge: z.ZodDefault<z.ZodObject<{
@@ -1128,1364 +1260,197 @@ declare const AssistantConfigSchema: z.ZodObject<{
1128
1260
  maxStepsPerSession: z.ZodDefault<z.ZodNumber>;
1129
1261
  }, z.core.$strip>;
1130
1262
 
1131
- export declare type AssistantEventCallback = (event: AssistantEventEnvelope) => void | Promise<void>;
1263
+ /** Daemon-side specialization of the generic event envelope. */
1264
+ export declare type AssistantEvent = BaseAssistantEvent<ServerMessage>;
1265
+
1266
+ export declare type AssistantEventCallback = (event: AssistantEvent) => void | Promise<void>;
1132
1267
 
1133
- declare type AssistantEventEnvelope = z.infer<typeof AssistantEventEnvelopeSchema>;
1134
- export { AssistantEventEnvelope as AssistantEvent }
1135
- export { AssistantEventEnvelope }
1268
+ /** Filter that determines which events a subscriber receives. */
1269
+ export declare type AssistantEventFilter = {
1270
+ /** When set, restrict delivery to events for this conversation. */
1271
+ conversationId?: string;
1272
+ };
1136
1273
 
1137
1274
  /**
1138
- * SSE wire envelope wrapping every outbound event from the daemon.
1275
+ * Lightweight pub/sub hub for `AssistantEvent` messages.
1276
+ *
1277
+ * Filtering is applied at subscription level:
1278
+ * - `conversationId`: scoped events match subscribers with same conversationId
1279
+ * or no conversationId filter (broadcast to all).
1280
+ * - `targetCapability` (on publish): targeted events only reach subscribers
1281
+ * whose capabilities include the target. Untargeted events fan out to all.
1139
1282
  *
1140
- * Transport-level metadata (`id`, `seq`, `emittedAt`, `conversationId`)
1141
- * surrounds the semantic event payload in `message`.
1283
+ * Client connections register as subscribers with metadata and are queryable
1284
+ * via `listClients()`, `getMostRecentClientByCapability()`, etc.
1142
1285
  */
1143
- declare const AssistantEventEnvelopeSchema: z.ZodObject<{
1144
- id: z.ZodString;
1286
+ export declare class AssistantEventHub {
1287
+ private readonly subscribers;
1288
+ private readonly maxSubscribers;
1289
+ /** Monotonic source for per-connection ids, scoped to this hub. */
1290
+ private connectionCounter;
1291
+ constructor(options?: {
1292
+ maxSubscribers?: number;
1293
+ });
1294
+ /**
1295
+ * Register a subscriber that will be called for each matching event.
1296
+ *
1297
+ * **Client deduplication:** When a client subscriber is registered with a
1298
+ * `clientId` that already exists, all stale entries for that clientId are
1299
+ * disposed first. This prevents subscriber stacking when clients reconnect
1300
+ * (e.g. Chrome extension reload, SSE token refresh) before the old
1301
+ * connection's abort signal fires.
1302
+ *
1303
+ * When the subscriber cap (`maxSubscribers`) has been reached, the **oldest**
1304
+ * subscriber is evicted to make room: its `onEvict` callback is invoked (so
1305
+ * it can close its SSE stream) and its entry is removed from the hub.
1306
+ */
1307
+ subscribe(subscriber: SubscriberInput): AssistantEventSubscription;
1308
+ /**
1309
+ * Publish an event to all matching subscribers.
1310
+ *
1311
+ * Matching rules:
1312
+ * - if `excludeClientId` is set, the subscriber with that clientId is
1313
+ * skipped regardless of every other rule (self-echo suppression — the
1314
+ * client that originated the mutation does not receive its own
1315
+ * invalidation back through the hub).
1316
+ * - if `targetClientId` is set, deliver only to the subscriber with that
1317
+ * clientId, bypassing the conversation-id filter entirely (the web-origin
1318
+ * event's conversationId differs from the macOS client's subscribed
1319
+ * conversation).
1320
+ * - if `filter.conversationId` is set (and `targetClientId` is not), the
1321
+ * `event.conversationId` must equal it
1322
+ * - if `targetCapability` is set, only subscribers whose capabilities include
1323
+ * it receive the event; untargeted events go to all
1324
+ * - if `targetInterfaceId` is set, only client subscribers whose
1325
+ * `interfaceId` matches receive the event; process subscribers and
1326
+ * non-matching clients are skipped. Used to narrow legacy
1327
+ * broadcasts (e.g. `conversation_list_invalidated`) to a specific
1328
+ * client surface during a migration window.
1329
+ *
1330
+ * Fanout is isolated: a throwing or rejecting subscriber does not abort
1331
+ * delivery to remaining subscribers.
1332
+ */
1333
+ publish(event: AssistantEvent, options?: {
1334
+ targetCapability?: HostProxyCapability;
1335
+ targetClientId?: string;
1336
+ targetInterfaceId?: InterfaceId;
1337
+ /**
1338
+ * Skip the subscriber with this `clientId`. Used for self-echo
1339
+ * suppression on `sync_changed`: the route handler echoes the
1340
+ * originating tab's `X-Vellum-Client-Id` back on the event, and the
1341
+ * hub uses it here to avoid re-delivering the invalidation to the
1342
+ * tab that already mutated its own optimistic state.
1343
+ */
1344
+ excludeClientId?: string;
1345
+ }): Promise<void>;
1346
+ /**
1347
+ * Return the active client subscriber with the given clientId, or
1348
+ * `undefined` if no such subscriber exists.
1349
+ */
1350
+ getClientById(clientId: string): ClientEntry | undefined;
1351
+ /**
1352
+ * Return the verified actor principal id captured at SSE subscription time
1353
+ * for the given client, or `undefined` if the client is unknown or
1354
+ * connected without a principal (e.g. legacy/service tokens).
1355
+ *
1356
+ * Used by host proxies to bind cross-client targeted execution to the same
1357
+ * authenticated user identity that opened the target client's SSE stream.
1358
+ */
1359
+ getActorPrincipalIdForClient(clientId: string): string | undefined;
1360
+ /**
1361
+ * Returns true when at least one active subscriber would receive the given
1362
+ * event based on the same conversation matching rules as publish().
1363
+ */
1364
+ hasSubscribersForEvent(event: Pick<AssistantEvent, "conversationId">): boolean;
1365
+ private clientEntries;
1366
+ /**
1367
+ * Return all active client subscribers, sorted by `lastActiveAt` descending.
1368
+ */
1369
+ listClients(): ClientEntry[];
1370
+ /**
1371
+ * Return all client subscribers that support the given capability,
1372
+ * sorted by `lastActiveAt` descending.
1373
+ */
1374
+ listClientsByCapability(capability: HostProxyCapability): ClientEntry[];
1375
+ /**
1376
+ * Return the most recently active client that supports the given
1377
+ * capability, or `undefined` if none exists.
1378
+ */
1379
+ getMostRecentClientByCapability(capability: HostProxyCapability): ClientEntry | undefined;
1380
+ /**
1381
+ * Return all client subscribers with the given interface type,
1382
+ * sorted by `lastActiveAt` descending.
1383
+ */
1384
+ listClientsByInterface(interfaceId: InterfaceId): ClientEntry[];
1385
+ /**
1386
+ * Touch a client subscriber — update `lastActiveAt`. Used by heartbeat.
1387
+ */
1388
+ touchClient(clientId: string): void;
1389
+ /**
1390
+ * Force-disconnect a client by disposing all subscribers for the given
1391
+ * `clientId`. Returns the number of disposed entries.
1392
+ *
1393
+ * Used by `assistant clients disconnect <clientId>` to forcibly remove
1394
+ * stale or unwanted client connections.
1395
+ */
1396
+ disposeClient(clientId: string): number;
1397
+ /** Number of currently active subscribers (useful for tests and caps). */
1398
+ subscriberCount(): number;
1399
+ /** Returns true if the hub can accept a subscriber without evicting anyone. */
1400
+ hasCapacity(): boolean;
1401
+ }
1402
+
1403
+ /** The plugin-facing event hub. See module docs. */
1404
+ export declare const assistantEventHub: PluginEventHub;
1405
+
1406
+ /** Opaque handle returned by `subscribe`. Call `dispose()` to remove the subscription. */
1407
+ export declare interface AssistantEventSubscription {
1408
+ dispose(): void;
1409
+ /** True until `dispose()` has been called. */
1410
+ readonly active: boolean;
1411
+ /**
1412
+ * Per-connection identifier, unique within the hub instance. Distinguishes
1413
+ * connections that share a `clientId` (e.g. an old connection and the new
1414
+ * one that replaced it on reconnect) so subscribe / dispose / shed log
1415
+ * lines can be attributed to a specific connection.
1416
+ */
1417
+ readonly connectionId: string;
1418
+ }
1419
+
1420
+ declare type AssistantStatusEvent = z.infer<typeof AssistantStatusEventSchema>;
1421
+
1422
+ declare const AssistantStatusEventSchema: z.ZodObject<{
1423
+ type: z.ZodLiteral<"assistant_status">;
1424
+ version: z.ZodOptional<z.ZodString>;
1425
+ keyFingerprint: z.ZodOptional<z.ZodString>;
1426
+ }, z.core.$strip>;
1427
+
1428
+ declare type AssistantTextDeltaEvent = z.infer<typeof AssistantTextDeltaEventSchema>;
1429
+
1430
+ declare const AssistantTextDeltaEventSchema: z.ZodObject<{
1431
+ type: z.ZodLiteral<"assistant_text_delta">;
1432
+ text: z.ZodString;
1433
+ messageId: z.ZodOptional<z.ZodString>;
1145
1434
  conversationId: z.ZodOptional<z.ZodString>;
1146
- seq: z.ZodOptional<z.ZodNumber>;
1147
- emittedAt: z.ZodString;
1148
- message: z.ZodDiscriminatedUnion<[z.ZodObject<{
1149
- type: z.ZodLiteral<"acp_session_completed">;
1150
- acpSessionId: z.ZodString;
1151
- stopReason: z.ZodEnum<{
1152
- cancelled: "cancelled";
1153
- end_turn: "end_turn";
1154
- max_tokens: "max_tokens";
1155
- max_turn_requests: "max_turn_requests";
1156
- refusal: "refusal";
1157
- }>;
1158
- }, z.core.$strict>, z.ZodObject<{
1159
- type: z.ZodLiteral<"acp_session_error">;
1160
- acpSessionId: z.ZodString;
1161
- error: z.ZodString;
1162
- }, z.core.$strict>, z.ZodObject<{
1163
- type: z.ZodLiteral<"acp_session_spawned">;
1164
- acpSessionId: z.ZodString;
1165
- agent: z.ZodString;
1166
- parentConversationId: z.ZodString;
1167
- parentToolUseId: z.ZodOptional<z.ZodString>;
1168
- task: z.ZodOptional<z.ZodString>;
1169
- }, z.core.$strict>, z.ZodObject<{
1170
- type: z.ZodLiteral<"acp_session_update">;
1171
- acpSessionId: z.ZodString;
1172
- updateType: z.ZodEnum<{
1173
- agent_message_chunk: "agent_message_chunk";
1174
- agent_thought_chunk: "agent_thought_chunk";
1175
- user_message_chunk: "user_message_chunk";
1176
- tool_call: "tool_call";
1177
- tool_call_update: "tool_call_update";
1178
- plan: "plan";
1179
- }>;
1180
- content: z.ZodOptional<z.ZodString>;
1181
- toolCallId: z.ZodOptional<z.ZodString>;
1182
- toolTitle: z.ZodOptional<z.ZodString>;
1183
- toolKind: z.ZodOptional<z.ZodString>;
1184
- toolStatus: z.ZodOptional<z.ZodString>;
1185
- rawInput: z.ZodOptional<z.ZodUnknown>;
1186
- rawOutput: z.ZodOptional<z.ZodUnknown>;
1187
- locations: z.ZodOptional<z.ZodArray<z.ZodObject<{
1188
- path: z.ZodString;
1189
- line: z.ZodOptional<z.ZodNumber>;
1190
- }, z.core.$strip>>>;
1191
- messageId: z.ZodOptional<z.ZodString>;
1192
- seq: z.ZodOptional<z.ZodNumber>;
1193
- }, z.core.$strict>, z.ZodObject<{
1194
- type: z.ZodLiteral<"acp_session_usage">;
1195
- acpSessionId: z.ZodString;
1196
- usedTokens: z.ZodNumber;
1197
- contextSize: z.ZodNumber;
1198
- inputTokens: z.ZodOptional<z.ZodNumber>;
1199
- outputTokens: z.ZodOptional<z.ZodNumber>;
1200
- costAmount: z.ZodOptional<z.ZodNumber>;
1201
- costCurrency: z.ZodOptional<z.ZodString>;
1202
- }, z.core.$strict>, z.ZodObject<{
1203
- type: z.ZodLiteral<"app_files_changed">;
1204
- appId: z.ZodString;
1205
- }, z.core.$strip>, z.ZodObject<{
1206
- type: z.ZodLiteral<"assistant_activity_state">;
1207
- conversationId: z.ZodString;
1208
- activityVersion: z.ZodNumber;
1209
- phase: z.ZodEnum<{
1210
- thinking: "thinking";
1211
- idle: "idle";
1212
- streaming: "streaming";
1213
- tool_running: "tool_running";
1214
- awaiting_confirmation: "awaiting_confirmation";
1215
- }>;
1216
- anchor: z.ZodEnum<{
1217
- assistant_turn: "assistant_turn";
1218
- user_turn: "user_turn";
1219
- global: "global";
1220
- }>;
1221
- reason: z.ZodEnum<{
1222
- thinking_delta: "thinking_delta";
1223
- message_dequeued: "message_dequeued";
1224
- first_text_delta: "first_text_delta";
1225
- tool_use_start: "tool_use_start";
1226
- preview_start: "preview_start";
1227
- tool_result_received: "tool_result_received";
1228
- confirmation_requested: "confirmation_requested";
1229
- confirmation_resolved: "confirmation_resolved";
1230
- context_compacting: "context_compacting";
1231
- message_complete: "message_complete";
1232
- generation_cancelled: "generation_cancelled";
1233
- error_terminal: "error_terminal";
1234
- }>;
1235
- requestId: z.ZodOptional<z.ZodString>;
1236
- statusText: z.ZodOptional<z.ZodString>;
1237
- }, z.core.$strip>, z.ZodObject<{
1238
- type: z.ZodLiteral<"assistant_status">;
1239
- version: z.ZodOptional<z.ZodString>;
1240
- keyFingerprint: z.ZodOptional<z.ZodString>;
1241
- }, z.core.$strip>, z.ZodObject<{
1242
- type: z.ZodLiteral<"assistant_text_delta">;
1243
- text: z.ZodString;
1244
- messageId: z.ZodOptional<z.ZodString>;
1245
- conversationId: z.ZodOptional<z.ZodString>;
1246
- }, z.core.$strip>, z.ZodObject<{
1247
- type: z.ZodLiteral<"assistant_thinking_delta">;
1248
- thinking: z.ZodString;
1249
- messageId: z.ZodOptional<z.ZodString>;
1250
- conversationId: z.ZodOptional<z.ZodString>;
1251
- timestampMs: z.ZodOptional<z.ZodNumber>;
1252
- }, z.core.$strip>, z.ZodObject<{
1253
- type: z.ZodLiteral<"assistant_turn_start">;
1254
- messageId: z.ZodString;
1255
- conversationId: z.ZodOptional<z.ZodString>;
1256
- }, z.core.$strip>, z.ZodObject<{
1257
- type: z.ZodLiteral<"avatar_updated">;
1258
- avatarPath: z.ZodString;
1259
- }, z.core.$strip>, z.ZodObject<{
1260
- type: z.ZodLiteral<"background_tool_completed">;
1261
- id: z.ZodString;
1262
- conversationId: z.ZodString;
1263
- status: z.ZodEnum<{
1264
- cancelled: "cancelled";
1265
- completed: "completed";
1266
- failed: "failed";
1267
- }>;
1268
- exitCode: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1269
- output: z.ZodOptional<z.ZodString>;
1270
- completedAt: z.ZodNumber;
1271
- }, z.core.$strip>, z.ZodObject<{
1272
- type: z.ZodLiteral<"background_tool_started">;
1273
- id: z.ZodString;
1274
- toolName: z.ZodString;
1275
- conversationId: z.ZodString;
1276
- command: z.ZodString;
1277
- startedAt: z.ZodNumber;
1278
- }, z.core.$strip>, z.ZodObject<{
1279
- type: z.ZodLiteral<"bookmark.created">;
1280
- bookmark: z.ZodObject<{
1281
- id: z.ZodString;
1282
- messageId: z.ZodString;
1283
- conversationId: z.ZodString;
1284
- conversationTitle: z.ZodNullable<z.ZodString>;
1285
- messagePreview: z.ZodString;
1286
- messageRole: z.ZodString;
1287
- messageCreatedAt: z.ZodNumber;
1288
- createdAt: z.ZodNumber;
1289
- }, z.core.$strip>;
1290
- }, z.core.$strip>, z.ZodObject<{
1291
- type: z.ZodLiteral<"bookmark.deleted">;
1292
- messageId: z.ZodString;
1293
- }, z.core.$strip>, z.ZodObject<{
1294
- type: z.ZodLiteral<"client_settings_update">;
1295
- key: z.ZodString;
1296
- value: z.ZodString;
1297
- }, z.core.$strip>, z.ZodObject<{
1298
- type: z.ZodLiteral<"compaction_circuit_closed">;
1299
- conversationId: z.ZodString;
1300
- }, z.core.$strip>, z.ZodObject<{
1301
- type: z.ZodLiteral<"compaction_circuit_open">;
1302
- conversationId: z.ZodString;
1303
- reason: z.ZodLiteral<"3_consecutive_failures">;
1304
- openUntil: z.ZodNumber;
1305
- }, z.core.$strip>, z.ZodObject<{
1306
- type: z.ZodLiteral<"config_changed">;
1307
- }, z.core.$strip>, z.ZodObject<{
1308
- type: z.ZodLiteral<"confirmation_request">;
1309
- requestId: z.ZodString;
1310
- toolName: z.ZodString;
1311
- input: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1312
- riskLevel: z.ZodString;
1313
- riskReason: z.ZodOptional<z.ZodString>;
1314
- isContainerized: z.ZodOptional<z.ZodBoolean>;
1315
- executionTarget: z.ZodOptional<z.ZodEnum<{
1316
- sandbox: "sandbox";
1317
- host: "host";
1318
- }>>;
1319
- allowlistOptions: z.ZodArray<z.ZodObject<{
1320
- label: z.ZodString;
1321
- description: z.ZodString;
1322
- pattern: z.ZodString;
1323
- }, z.core.$strip>>;
1324
- scopeOptions: z.ZodArray<z.ZodObject<{
1325
- label: z.ZodString;
1326
- scope: z.ZodString;
1327
- }, z.core.$strip>>;
1328
- directoryScopeOptions: z.ZodOptional<z.ZodArray<z.ZodObject<{
1329
- label: z.ZodString;
1330
- scope: z.ZodString;
1331
- }, z.core.$strip>>>;
1332
- diff: z.ZodOptional<z.ZodObject<{
1333
- filePath: z.ZodString;
1334
- oldContent: z.ZodString;
1335
- newContent: z.ZodString;
1336
- isNewFile: z.ZodBoolean;
1337
- }, z.core.$strip>>;
1338
- conversationId: z.ZodOptional<z.ZodString>;
1339
- persistentDecisionsAllowed: z.ZodOptional<z.ZodBoolean>;
1340
- toolUseId: z.ZodOptional<z.ZodString>;
1341
- acpToolKind: z.ZodOptional<z.ZodString>;
1342
- acpOptions: z.ZodOptional<z.ZodArray<z.ZodObject<{
1343
- optionId: z.ZodString;
1344
- name: z.ZodString;
1345
- kind: z.ZodEnum<{
1346
- allow_once: "allow_once";
1347
- allow_always: "allow_always";
1348
- reject_once: "reject_once";
1349
- reject_always: "reject_always";
1350
- }>;
1351
- }, z.core.$strip>>>;
1352
- }, z.core.$strip>, z.ZodObject<{
1353
- type: z.ZodLiteral<"confirmation_state_changed">;
1354
- conversationId: z.ZodString;
1355
- requestId: z.ZodString;
1356
- state: z.ZodEnum<{
1357
- timed_out: "timed_out";
1358
- pending: "pending";
1359
- approved: "approved";
1360
- denied: "denied";
1361
- resolved_stale: "resolved_stale";
1362
- }>;
1363
- source: z.ZodEnum<{
1364
- button: "button";
1365
- inline_nl: "inline_nl";
1366
- auto_deny: "auto_deny";
1367
- timeout: "timeout";
1368
- system: "system";
1369
- }>;
1370
- causedByRequestId: z.ZodOptional<z.ZodString>;
1371
- decisionText: z.ZodOptional<z.ZodString>;
1372
- toolUseId: z.ZodOptional<z.ZodString>;
1373
- }, z.core.$strip>, z.ZodObject<{
1374
- type: z.ZodLiteral<"contact_request">;
1375
- requestId: z.ZodString;
1376
- channel: z.ZodOptional<z.ZodString>;
1377
- placeholder: z.ZodOptional<z.ZodString>;
1378
- label: z.ZodOptional<z.ZodString>;
1379
- description: z.ZodOptional<z.ZodString>;
1380
- role: z.ZodOptional<z.ZodString>;
1381
- }, z.core.$strip>, z.ZodObject<{
1382
- type: z.ZodLiteral<"contacts_changed">;
1383
- }, z.core.$strip>, z.ZodObject<{
1384
- type: z.ZodLiteral<"context_compacted">;
1385
- conversationId: z.ZodString;
1386
- previousEstimatedInputTokens: z.ZodNumber;
1387
- estimatedInputTokens: z.ZodNumber;
1388
- maxInputTokens: z.ZodNumber;
1389
- thresholdTokens: z.ZodNumber;
1390
- compactedMessages: z.ZodNumber;
1391
- summaryCalls: z.ZodNumber;
1392
- summaryInputTokens: z.ZodNumber;
1393
- summaryOutputTokens: z.ZodNumber;
1394
- summaryModel: z.ZodString;
1395
- summaryCharCount: z.ZodOptional<z.ZodNumber>;
1396
- summaryHeaderCount: z.ZodOptional<z.ZodNumber>;
1397
- summaryHadMemoryEcho: z.ZodOptional<z.ZodBoolean>;
1398
- }, z.core.$strip>, z.ZodObject<{
1399
- type: z.ZodLiteral<"conversation_error">;
1400
- conversationId: z.ZodString;
1401
- code: z.ZodEnum<{
1402
- PROVIDER_NETWORK: "PROVIDER_NETWORK";
1403
- PROVIDER_RATE_LIMIT: "PROVIDER_RATE_LIMIT";
1404
- MANAGED_USAGE_LIMIT: "MANAGED_USAGE_LIMIT";
1405
- PROVIDER_OVERLOADED: "PROVIDER_OVERLOADED";
1406
- PROVIDER_API: "PROVIDER_API";
1407
- IMAGE_TOO_LARGE: "IMAGE_TOO_LARGE";
1408
- PROVIDER_BILLING: "PROVIDER_BILLING";
1409
- PROVIDER_ORDERING: "PROVIDER_ORDERING";
1410
- PROVIDER_WEB_SEARCH: "PROVIDER_WEB_SEARCH";
1411
- PROVIDER_NOT_CONFIGURED: "PROVIDER_NOT_CONFIGURED";
1412
- PROVIDER_INVALID_KEY: "PROVIDER_INVALID_KEY";
1413
- MANAGED_KEY_INVALID: "MANAGED_KEY_INVALID";
1414
- CONTEXT_TOO_LARGE: "CONTEXT_TOO_LARGE";
1415
- BUDGET_YIELD_UNRECOVERED: "BUDGET_YIELD_UNRECOVERED";
1416
- MAX_TOKENS_REACHED: "MAX_TOKENS_REACHED";
1417
- CONVERSATION_ABORTED: "CONVERSATION_ABORTED";
1418
- CONVERSATION_PROCESSING_FAILED: "CONVERSATION_PROCESSING_FAILED";
1419
- DISK_SPACE_CRITICAL: "DISK_SPACE_CRITICAL";
1420
- UNKNOWN: "UNKNOWN";
1421
- }>;
1422
- userMessage: z.ZodString;
1423
- retryable: z.ZodBoolean;
1424
- debugDetails: z.ZodOptional<z.ZodString>;
1425
- errorCategory: z.ZodOptional<z.ZodString>;
1426
- connectionName: z.ZodOptional<z.ZodString>;
1427
- profileName: z.ZodOptional<z.ZodString>;
1428
- }, z.core.$strip>, z.ZodObject<{
1429
- type: z.ZodLiteral<"conversation_inference_profile_updated">;
1430
- conversationId: z.ZodString;
1431
- profile: z.ZodNullable<z.ZodString>;
1432
- sessionId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1433
- expiresAt: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1434
- }, z.core.$strip>, z.ZodObject<{
1435
- type: z.ZodLiteral<"conversation_list_invalidated">;
1436
- reason: z.ZodEnum<{
1437
- created: "created";
1438
- renamed: "renamed";
1439
- deleted: "deleted";
1440
- reordered: "reordered";
1441
- seen_changed: "seen_changed";
1442
- }>;
1443
- }, z.core.$strip>, z.ZodObject<{
1444
- type: z.ZodLiteral<"conversation_notice">;
1445
- conversationId: z.ZodString;
1446
- source: z.ZodEnum<{
1447
- memory_v3: "memory_v3";
1448
- }>;
1449
- code: z.ZodEnum<{
1450
- PROVIDER_NETWORK: "PROVIDER_NETWORK";
1451
- PROVIDER_RATE_LIMIT: "PROVIDER_RATE_LIMIT";
1452
- MANAGED_USAGE_LIMIT: "MANAGED_USAGE_LIMIT";
1453
- PROVIDER_OVERLOADED: "PROVIDER_OVERLOADED";
1454
- PROVIDER_API: "PROVIDER_API";
1455
- IMAGE_TOO_LARGE: "IMAGE_TOO_LARGE";
1456
- PROVIDER_BILLING: "PROVIDER_BILLING";
1457
- PROVIDER_ORDERING: "PROVIDER_ORDERING";
1458
- PROVIDER_WEB_SEARCH: "PROVIDER_WEB_SEARCH";
1459
- PROVIDER_NOT_CONFIGURED: "PROVIDER_NOT_CONFIGURED";
1460
- PROVIDER_INVALID_KEY: "PROVIDER_INVALID_KEY";
1461
- MANAGED_KEY_INVALID: "MANAGED_KEY_INVALID";
1462
- CONTEXT_TOO_LARGE: "CONTEXT_TOO_LARGE";
1463
- BUDGET_YIELD_UNRECOVERED: "BUDGET_YIELD_UNRECOVERED";
1464
- MAX_TOKENS_REACHED: "MAX_TOKENS_REACHED";
1465
- CONVERSATION_ABORTED: "CONVERSATION_ABORTED";
1466
- CONVERSATION_PROCESSING_FAILED: "CONVERSATION_PROCESSING_FAILED";
1467
- DISK_SPACE_CRITICAL: "DISK_SPACE_CRITICAL";
1468
- UNKNOWN: "UNKNOWN";
1469
- }>;
1470
- userMessage: z.ZodString;
1471
- errorCategory: z.ZodOptional<z.ZodString>;
1472
- }, z.core.$strip>, z.ZodObject<{
1473
- type: z.ZodLiteral<"conversation_title_updated">;
1474
- conversationId: z.ZodString;
1475
- title: z.ZodString;
1476
- }, z.core.$strip>, z.ZodObject<{
1477
- type: z.ZodLiteral<"disk_pressure_status_changed">;
1478
- status: z.ZodObject<{
1479
- enabled: z.ZodBoolean;
1480
- state: z.ZodEnum<{
1481
- unknown: "unknown";
1482
- disabled: "disabled";
1483
- critical: "critical";
1484
- ok: "ok";
1485
- warning: "warning";
1486
- }>;
1487
- locked: z.ZodBoolean;
1488
- acknowledged: z.ZodBoolean;
1489
- overrideActive: z.ZodBoolean;
1490
- effectivelyLocked: z.ZodBoolean;
1491
- lockId: z.ZodNullable<z.ZodString>;
1492
- usagePercent: z.ZodNullable<z.ZodNumber>;
1493
- thresholdPercent: z.ZodNumber;
1494
- path: z.ZodNullable<z.ZodString>;
1495
- lastCheckedAt: z.ZodNullable<z.ZodString>;
1496
- blockedCapabilities: z.ZodArray<z.ZodEnum<{
1497
- "agent-turns": "agent-turns";
1498
- "background-work": "background-work";
1499
- "remote-ingress": "remote-ingress";
1500
- }>>;
1501
- error: z.ZodNullable<z.ZodString>;
1502
- }, z.core.$strip>;
1503
- }, z.core.$strip>, z.ZodObject<{
1504
- type: z.ZodLiteral<"document_comment_created">;
1505
- conversationId: z.ZodString;
1506
- surfaceId: z.ZodString;
1507
- comment: z.ZodObject<{
1508
- id: z.ZodString;
1509
- surfaceId: z.ZodString;
1510
- author: z.ZodString;
1511
- content: z.ZodString;
1512
- anchorStart: z.ZodOptional<z.ZodNumber>;
1513
- anchorEnd: z.ZodOptional<z.ZodNumber>;
1514
- anchorText: z.ZodOptional<z.ZodString>;
1515
- parentCommentId: z.ZodOptional<z.ZodString>;
1516
- status: z.ZodString;
1517
- createdAt: z.ZodNumber;
1518
- updatedAt: z.ZodNumber;
1519
- }, z.core.$strip>;
1520
- }, z.core.$strip>, z.ZodObject<{
1521
- type: z.ZodLiteral<"document_comment_deleted">;
1522
- conversationId: z.ZodString;
1523
- surfaceId: z.ZodString;
1524
- commentId: z.ZodString;
1525
- }, z.core.$strip>, z.ZodObject<{
1526
- type: z.ZodLiteral<"document_comment_reopened">;
1527
- conversationId: z.ZodString;
1528
- surfaceId: z.ZodString;
1529
- commentId: z.ZodString;
1530
- }, z.core.$strip>, z.ZodObject<{
1531
- type: z.ZodLiteral<"document_comment_resolved">;
1532
- conversationId: z.ZodString;
1533
- surfaceId: z.ZodString;
1534
- commentId: z.ZodString;
1535
- resolvedBy: z.ZodString;
1536
- }, z.core.$strip>, z.ZodObject<{
1537
- type: z.ZodLiteral<"document_editor_show">;
1538
- conversationId: z.ZodString;
1539
- surfaceId: z.ZodString;
1540
- title: z.ZodString;
1541
- initialContent: z.ZodString;
1542
- }, z.core.$strip>, z.ZodObject<{
1543
- type: z.ZodLiteral<"document_editor_update">;
1544
- conversationId: z.ZodString;
1545
- surfaceId: z.ZodString;
1546
- markdown: z.ZodString;
1547
- mode: z.ZodString;
1548
- }, z.core.$strip>, z.ZodObject<{
1549
- type: z.ZodLiteral<"error">;
1550
- message: z.ZodString;
1551
- code: z.ZodOptional<z.ZodString>;
1552
- category: z.ZodOptional<z.ZodString>;
1553
- errorCategory: z.ZodOptional<z.ZodString>;
1554
- requestId: z.ZodOptional<z.ZodString>;
1555
- conversationId: z.ZodOptional<z.ZodString>;
1556
- }, z.core.$strip>, z.ZodObject<{
1557
- type: z.ZodLiteral<"generation_cancelled">;
1558
- conversationId: z.ZodOptional<z.ZodString>;
1559
- }, z.core.$strip>, z.ZodObject<{
1560
- type: z.ZodLiteral<"generation_handoff">;
1561
- conversationId: z.ZodOptional<z.ZodString>;
1562
- requestId: z.ZodOptional<z.ZodString>;
1563
- queuedCount: z.ZodNumber;
1564
- messageId: z.ZodOptional<z.ZodString>;
1565
- attachments: z.ZodOptional<z.ZodArray<z.ZodObject<{
1566
- id: z.ZodOptional<z.ZodString>;
1567
- filename: z.ZodString;
1568
- mimeType: z.ZodString;
1569
- data: z.ZodString;
1570
- sourceType: z.ZodOptional<z.ZodEnum<{
1571
- host_file: "host_file";
1572
- sandbox_file: "sandbox_file";
1573
- tool_block: "tool_block";
1574
- }>>;
1575
- sizeBytes: z.ZodOptional<z.ZodNumber>;
1576
- thumbnailData: z.ZodOptional<z.ZodString>;
1577
- fileBacked: z.ZodOptional<z.ZodBoolean>;
1578
- filePath: z.ZodOptional<z.ZodString>;
1579
- }, z.core.$strip>>>;
1580
- attachmentWarnings: z.ZodOptional<z.ZodArray<z.ZodString>>;
1581
- }, z.core.$strip>, z.ZodObject<{
1582
- type: z.ZodLiteral<"heartbeat_alert">;
1583
- title: z.ZodString;
1584
- body: z.ZodString;
1585
- }, z.core.$strip>, z.ZodObject<{
1586
- type: z.ZodLiteral<"heartbeat_conversation_created">;
1587
- conversationId: z.ZodString;
1588
- title: z.ZodString;
1589
- }, z.core.$strip>, z.ZodObject<{
1590
- type: z.ZodLiteral<"home_feed_updated">;
1591
- updatedAt: z.ZodString;
1592
- newItemCount: z.ZodNumber;
1593
- }, z.core.$strip>, z.ZodObject<{
1594
- type: z.ZodLiteral<"hook_event">;
1595
- conversationId: z.ZodOptional<z.ZodString>;
1596
- hookName: z.ZodString;
1597
- owner: z.ZodObject<{
1598
- kind: z.ZodEnum<{
1599
- plugin: "plugin";
1600
- workspace: "workspace";
1601
- }>;
1602
- id: z.ZodString;
1603
- }, z.core.$strip>;
1604
- detail: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1605
- }, z.core.$strip>, z.ZodObject<{
1606
- type: z.ZodLiteral<"host_app_control_cancel">;
1607
- requestId: z.ZodString;
1608
- conversationId: z.ZodString;
1609
- }, z.core.$strip>, z.ZodObject<{
1610
- type: z.ZodLiteral<"host_app_control_request">;
1611
- requestId: z.ZodString;
1612
- conversationId: z.ZodString;
1613
- toolName: z.ZodString;
1614
- input: z.ZodDiscriminatedUnion<[z.ZodObject<{
1615
- tool: z.ZodLiteral<"start">;
1616
- app: z.ZodString;
1617
- args: z.ZodOptional<z.ZodArray<z.ZodString>>;
1618
- }, z.core.$strip>, z.ZodObject<{
1619
- tool: z.ZodLiteral<"observe">;
1620
- app: z.ZodString;
1621
- settle_ms: z.ZodOptional<z.ZodNumber>;
1622
- }, z.core.$strip>, z.ZodObject<{
1623
- tool: z.ZodLiteral<"press">;
1624
- app: z.ZodString;
1625
- key: z.ZodString;
1626
- modifiers: z.ZodOptional<z.ZodArray<z.ZodString>>;
1627
- duration_ms: z.ZodOptional<z.ZodNumber>;
1628
- }, z.core.$strip>, z.ZodObject<{
1629
- tool: z.ZodLiteral<"combo">;
1630
- app: z.ZodString;
1631
- keys: z.ZodArray<z.ZodString>;
1632
- duration_ms: z.ZodOptional<z.ZodNumber>;
1633
- }, z.core.$strip>, z.ZodObject<{
1634
- tool: z.ZodLiteral<"sequence">;
1635
- app: z.ZodString;
1636
- steps: z.ZodArray<z.ZodObject<{
1637
- key: z.ZodString;
1638
- modifiers: z.ZodOptional<z.ZodArray<z.ZodString>>;
1639
- duration_ms: z.ZodOptional<z.ZodNumber>;
1640
- gap_ms: z.ZodOptional<z.ZodNumber>;
1641
- }, z.core.$strip>>;
1642
- }, z.core.$strip>, z.ZodObject<{
1643
- tool: z.ZodLiteral<"type">;
1644
- app: z.ZodString;
1645
- text: z.ZodString;
1646
- }, z.core.$strip>, z.ZodObject<{
1647
- tool: z.ZodLiteral<"click">;
1648
- app: z.ZodString;
1649
- x: z.ZodNumber;
1650
- y: z.ZodNumber;
1651
- button: z.ZodOptional<z.ZodEnum<{
1652
- left: "left";
1653
- right: "right";
1654
- middle: "middle";
1655
- }>>;
1656
- double: z.ZodOptional<z.ZodBoolean>;
1657
- }, z.core.$strip>, z.ZodObject<{
1658
- tool: z.ZodLiteral<"drag">;
1659
- app: z.ZodString;
1660
- from_x: z.ZodNumber;
1661
- from_y: z.ZodNumber;
1662
- to_x: z.ZodNumber;
1663
- to_y: z.ZodNumber;
1664
- button: z.ZodOptional<z.ZodEnum<{
1665
- left: "left";
1666
- right: "right";
1667
- middle: "middle";
1668
- }>>;
1669
- }, z.core.$strip>, z.ZodObject<{
1670
- tool: z.ZodLiteral<"stop">;
1671
- app: z.ZodOptional<z.ZodString>;
1672
- reason: z.ZodOptional<z.ZodString>;
1673
- }, z.core.$strip>], "tool">;
1674
- }, z.core.$strip>, z.ZodObject<{
1675
- type: z.ZodLiteral<"host_bash_cancel">;
1676
- requestId: z.ZodString;
1677
- conversationId: z.ZodString;
1678
- targetClientId: z.ZodOptional<z.ZodString>;
1679
- }, z.core.$strip>, z.ZodObject<{
1680
- type: z.ZodLiteral<"host_bash_request">;
1681
- requestId: z.ZodString;
1682
- conversationId: z.ZodString;
1683
- command: z.ZodString;
1684
- working_dir: z.ZodOptional<z.ZodString>;
1685
- timeout_seconds: z.ZodOptional<z.ZodNumber>;
1686
- env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1687
- targetClientId: z.ZodOptional<z.ZodString>;
1688
- }, z.core.$strip>, z.ZodObject<{
1689
- type: z.ZodLiteral<"host_browser_cancel">;
1690
- requestId: z.ZodString;
1691
- }, z.core.$strip>, z.ZodObject<{
1692
- type: z.ZodLiteral<"host_browser_request">;
1693
- requestId: z.ZodString;
1694
- conversationId: z.ZodString;
1695
- cdpMethod: z.ZodString;
1696
- cdpParams: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1697
- cdpSessionId: z.ZodOptional<z.ZodString>;
1698
- timeout_seconds: z.ZodOptional<z.ZodNumber>;
1699
- }, z.core.$strip>, z.ZodObject<{
1700
- type: z.ZodLiteral<"host_cu_cancel">;
1701
- requestId: z.ZodString;
1702
- conversationId: z.ZodString;
1703
- targetClientId: z.ZodOptional<z.ZodString>;
1704
- }, z.core.$strip>, z.ZodObject<{
1705
- type: z.ZodLiteral<"host_cu_request">;
1706
- requestId: z.ZodString;
1707
- conversationId: z.ZodString;
1708
- targetClientId: z.ZodOptional<z.ZodString>;
1709
- toolName: z.ZodString;
1710
- input: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1711
- stepNumber: z.ZodNumber;
1712
- reasoning: z.ZodOptional<z.ZodString>;
1713
- }, z.core.$strip>, z.ZodObject<{
1714
- type: z.ZodLiteral<"host_file_cancel">;
1715
- requestId: z.ZodString;
1716
- conversationId: z.ZodString;
1717
- targetClientId: z.ZodOptional<z.ZodString>;
1718
- }, z.core.$strip>, z.ZodDiscriminatedUnion<[z.ZodObject<{
1719
- type: z.ZodLiteral<"host_file_request">;
1720
- requestId: z.ZodString;
1721
- conversationId: z.ZodString;
1722
- targetClientId: z.ZodOptional<z.ZodString>;
1723
- operation: z.ZodLiteral<"read">;
1724
- path: z.ZodString;
1725
- offset: z.ZodOptional<z.ZodNumber>;
1726
- limit: z.ZodOptional<z.ZodNumber>;
1727
- }, z.core.$strip>, z.ZodObject<{
1728
- type: z.ZodLiteral<"host_file_request">;
1729
- requestId: z.ZodString;
1730
- conversationId: z.ZodString;
1731
- targetClientId: z.ZodOptional<z.ZodString>;
1732
- operation: z.ZodLiteral<"write">;
1733
- path: z.ZodString;
1734
- content: z.ZodString;
1735
- }, z.core.$strip>, z.ZodObject<{
1736
- type: z.ZodLiteral<"host_file_request">;
1737
- requestId: z.ZodString;
1738
- conversationId: z.ZodString;
1739
- targetClientId: z.ZodOptional<z.ZodString>;
1740
- operation: z.ZodLiteral<"edit">;
1741
- path: z.ZodString;
1742
- old_string: z.ZodString;
1743
- new_string: z.ZodString;
1744
- replace_all: z.ZodOptional<z.ZodBoolean>;
1745
- }, z.core.$strip>], "operation">, z.ZodObject<{
1746
- type: z.ZodLiteral<"host_transfer_cancel">;
1747
- requestId: z.ZodString;
1748
- conversationId: z.ZodString;
1749
- targetClientId: z.ZodOptional<z.ZodString>;
1750
- }, z.core.$strip>, z.ZodDiscriminatedUnion<[z.ZodObject<{
1751
- type: z.ZodLiteral<"host_transfer_request">;
1752
- requestId: z.ZodString;
1753
- conversationId: z.ZodString;
1754
- targetClientId: z.ZodOptional<z.ZodString>;
1755
- direction: z.ZodLiteral<"to_host">;
1756
- transferId: z.ZodString;
1757
- destPath: z.ZodString;
1758
- sizeBytes: z.ZodNumber;
1759
- sha256: z.ZodString;
1760
- overwrite: z.ZodBoolean;
1761
- }, z.core.$strip>, z.ZodObject<{
1762
- type: z.ZodLiteral<"host_transfer_request">;
1763
- requestId: z.ZodString;
1764
- conversationId: z.ZodString;
1765
- targetClientId: z.ZodOptional<z.ZodString>;
1766
- direction: z.ZodLiteral<"to_sandbox">;
1767
- transferId: z.ZodString;
1768
- sourcePath: z.ZodString;
1769
- }, z.core.$strip>], "direction">, z.ZodObject<{
1770
- type: z.ZodLiteral<"host_ui_snapshot_cancel">;
1771
- requestId: z.ZodString;
1772
- }, z.core.$strip>, z.ZodObject<{
1773
- type: z.ZodLiteral<"host_ui_snapshot_request">;
1774
- requestId: z.ZodString;
1775
- view: z.ZodEnum<{
1776
- sampler: "sampler";
1777
- chat: "chat";
1778
- }>;
1779
- tokens: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1780
- }, z.core.$strip>, z.ZodObject<{
1781
- type: z.ZodLiteral<"identity_changed">;
1782
- name: z.ZodString;
1783
- role: z.ZodString;
1784
- personality: z.ZodString;
1785
- emoji: z.ZodString;
1786
- home: z.ZodString;
1787
- }, z.core.$strip>, z.ZodObject<{
1788
- type: z.ZodLiteral<"interaction_resolved">;
1789
- requestId: z.ZodString;
1790
- conversationId: z.ZodString;
1791
- state: z.ZodEnum<{
1792
- cancelled: "cancelled";
1793
- superseded: "superseded";
1794
- approved: "approved";
1795
- rejected: "rejected";
1796
- answered: "answered";
1797
- }>;
1798
- kind: z.ZodString;
1799
- }, z.core.$strip>, z.ZodObject<{
1800
- type: z.ZodLiteral<"memory_recalled">;
1801
- provider: z.ZodString;
1802
- model: z.ZodString;
1803
- degradation: z.ZodOptional<z.ZodObject<{
1804
- semanticUnavailable: z.ZodBoolean;
1805
- reason: z.ZodString;
1806
- fallbackSources: z.ZodArray<z.ZodString>;
1807
- }, z.core.$strip>>;
1808
- semanticHits: z.ZodNumber;
1809
- tier1Count: z.ZodNumber;
1810
- tier2Count: z.ZodNumber;
1811
- hybridSearchLatencyMs: z.ZodNumber;
1812
- sparseVectorUsed: z.ZodBoolean;
1813
- mergedCount: z.ZodNumber;
1814
- selectedCount: z.ZodNumber;
1815
- injectedTokens: z.ZodNumber;
1816
- latencyMs: z.ZodNumber;
1817
- topCandidates: z.ZodArray<z.ZodObject<{
1818
- key: z.ZodString;
1819
- type: z.ZodString;
1820
- kind: z.ZodString;
1821
- finalScore: z.ZodNumber;
1822
- semantic: z.ZodNumber;
1823
- recency: z.ZodNumber;
1824
- }, z.core.$strip>>;
1825
- }, z.core.$strip>, z.ZodObject<{
1826
- type: z.ZodLiteral<"memory_status">;
1827
- enabled: z.ZodBoolean;
1828
- degraded: z.ZodBoolean;
1829
- degradation: z.ZodOptional<z.ZodObject<{
1830
- semanticUnavailable: z.ZodBoolean;
1831
- reason: z.ZodString;
1832
- fallbackSources: z.ZodArray<z.ZodString>;
1833
- }, z.core.$strip>>;
1834
- reason: z.ZodOptional<z.ZodString>;
1835
- provider: z.ZodOptional<z.ZodString>;
1836
- model: z.ZodOptional<z.ZodString>;
1837
- }, z.core.$strip>, z.ZodObject<{
1838
- type: z.ZodLiteral<"message_complete">;
1839
- messageId: z.ZodOptional<z.ZodString>;
1840
- conversationId: z.ZodOptional<z.ZodString>;
1841
- source: z.ZodOptional<z.ZodEnum<{
1842
- main: "main";
1843
- aux: "aux";
1844
- }>>;
1845
- attachments: z.ZodOptional<z.ZodArray<z.ZodObject<{
1846
- id: z.ZodOptional<z.ZodString>;
1847
- filename: z.ZodString;
1848
- mimeType: z.ZodString;
1849
- data: z.ZodString;
1850
- sourceType: z.ZodOptional<z.ZodEnum<{
1851
- host_file: "host_file";
1852
- sandbox_file: "sandbox_file";
1853
- tool_block: "tool_block";
1854
- }>>;
1855
- sizeBytes: z.ZodOptional<z.ZodNumber>;
1856
- thumbnailData: z.ZodOptional<z.ZodString>;
1857
- fileBacked: z.ZodOptional<z.ZodBoolean>;
1858
- filePath: z.ZodOptional<z.ZodString>;
1859
- }, z.core.$strip>>>;
1860
- attachmentWarnings: z.ZodOptional<z.ZodArray<z.ZodString>>;
1861
- }, z.core.$strip>, z.ZodObject<{
1862
- type: z.ZodLiteral<"message_dequeued">;
1863
- conversationId: z.ZodString;
1864
- requestId: z.ZodString;
1865
- }, z.core.$strip>, z.ZodObject<{
1866
- type: z.ZodLiteral<"message_queued">;
1867
- conversationId: z.ZodString;
1868
- requestId: z.ZodString;
1869
- position: z.ZodNumber;
1870
- }, z.core.$strip>, z.ZodObject<{
1871
- type: z.ZodLiteral<"message_queued_deleted">;
1872
- conversationId: z.ZodString;
1873
- requestId: z.ZodString;
1874
- }, z.core.$strip>, z.ZodObject<{
1875
- type: z.ZodLiteral<"message_request_complete">;
1876
- conversationId: z.ZodString;
1877
- requestId: z.ZodString;
1878
- runStillActive: z.ZodOptional<z.ZodBoolean>;
1879
- }, z.core.$strip>, z.ZodObject<{
1880
- type: z.ZodLiteral<"message_steered">;
1881
- conversationId: z.ZodString;
1882
- requestId: z.ZodString;
1883
- }, z.core.$strip>, z.ZodObject<{
1884
- type: z.ZodLiteral<"model_info">;
1885
- conversationId: z.ZodOptional<z.ZodString>;
1886
- model: z.ZodString;
1887
- provider: z.ZodString;
1888
- configuredProviders: z.ZodOptional<z.ZodArray<z.ZodString>>;
1889
- availableModels: z.ZodOptional<z.ZodArray<z.ZodObject<{
1890
- id: z.ZodString;
1891
- displayName: z.ZodString;
1892
- }, z.core.$strip>>>;
1893
- allProviders: z.ZodOptional<z.ZodArray<z.ZodObject<{
1894
- id: z.ZodString;
1895
- displayName: z.ZodString;
1896
- models: z.ZodArray<z.ZodObject<{
1897
- id: z.ZodString;
1898
- displayName: z.ZodString;
1899
- }, z.core.$strip>>;
1900
- defaultModel: z.ZodString;
1901
- apiKeyUrl: z.ZodOptional<z.ZodString>;
1902
- apiKeyPlaceholder: z.ZodOptional<z.ZodString>;
1903
- }, z.core.$strip>>>;
1904
- }, z.core.$strip>, z.ZodObject<{
1905
- type: z.ZodLiteral<"navigate_settings">;
1906
- tab: z.ZodString;
1907
- }, z.core.$strip>, z.ZodObject<{
1908
- type: z.ZodLiteral<"notification_conversation_created">;
1909
- conversationId: z.ZodString;
1910
- title: z.ZodString;
1911
- sourceEventName: z.ZodString;
1912
- targetGuardianPrincipalId: z.ZodOptional<z.ZodString>;
1913
- groupId: z.ZodOptional<z.ZodString>;
1914
- source: z.ZodOptional<z.ZodString>;
1915
- silent: z.ZodOptional<z.ZodBoolean>;
1916
- }, z.core.$strip>, z.ZodObject<{
1917
- type: z.ZodLiteral<"notification_intent">;
1918
- sourceEventName: z.ZodString;
1919
- title: z.ZodString;
1920
- body: z.ZodString;
1921
- deliveryId: z.ZodOptional<z.ZodString>;
1922
- deepLinkMetadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1923
- targetGuardianPrincipalId: z.ZodOptional<z.ZodString>;
1924
- silent: z.ZodOptional<z.ZodBoolean>;
1925
- }, z.core.$strip>, z.ZodObject<{
1926
- type: z.ZodLiteral<"oauth_connect_result">;
1927
- success: z.ZodBoolean;
1928
- service: z.ZodOptional<z.ZodString>;
1929
- grantedScopes: z.ZodOptional<z.ZodArray<z.ZodString>>;
1930
- accountInfo: z.ZodOptional<z.ZodString>;
1931
- error: z.ZodOptional<z.ZodString>;
1932
- }, z.core.$strip>, z.ZodObject<{
1933
- type: z.ZodLiteral<"open_conversation">;
1934
- conversationId: z.ZodString;
1935
- title: z.ZodOptional<z.ZodString>;
1936
- anchorMessageId: z.ZodOptional<z.ZodString>;
1937
- focus: z.ZodOptional<z.ZodBoolean>;
1938
- }, z.core.$strip>, z.ZodObject<{
1939
- type: z.ZodLiteral<"open_panel">;
1940
- panelType: z.ZodString;
1941
- data: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1942
- conversationId: z.ZodOptional<z.ZodString>;
1943
- surfaceId: z.ZodOptional<z.ZodString>;
1944
- }, z.core.$strip>, z.ZodObject<{
1945
- type: z.ZodLiteral<"open_url">;
1946
- url: z.ZodString;
1947
- title: z.ZodOptional<z.ZodString>;
1948
- conversationId: z.ZodOptional<z.ZodString>;
1949
- }, z.core.$strip>, z.ZodObject<{
1950
- type: z.ZodLiteral<"platform_disconnected">;
1951
- }, z.core.$strip>, z.ZodObject<{
1952
- type: z.ZodLiteral<"question_request">;
1953
- requestId: z.ZodString;
1954
- questions: z.ZodArray<z.ZodObject<{
1955
- id: z.ZodString;
1956
- question: z.ZodString;
1957
- description: z.ZodOptional<z.ZodString>;
1958
- options: z.ZodArray<z.ZodObject<{
1959
- id: z.ZodString;
1960
- label: z.ZodString;
1961
- description: z.ZodOptional<z.ZodString>;
1962
- }, z.core.$strip>>;
1963
- freeTextPlaceholder: z.ZodOptional<z.ZodString>;
1964
- }, z.core.$strip>>;
1965
- question: z.ZodString;
1966
- description: z.ZodOptional<z.ZodString>;
1967
- options: z.ZodArray<z.ZodObject<{
1968
- id: z.ZodString;
1969
- label: z.ZodString;
1970
- description: z.ZodOptional<z.ZodString>;
1971
- }, z.core.$strip>>;
1972
- freeTextPlaceholder: z.ZodOptional<z.ZodString>;
1973
- conversationId: z.ZodOptional<z.ZodString>;
1974
- toolUseId: z.ZodOptional<z.ZodString>;
1975
- }, z.core.$strip>, z.ZodObject<{
1976
- type: z.ZodLiteral<"recording_pause">;
1977
- recordingId: z.ZodString;
1978
- }, z.core.$strip>, z.ZodObject<{
1979
- type: z.ZodLiteral<"recording_resume">;
1980
- recordingId: z.ZodString;
1981
- }, z.core.$strip>, z.ZodObject<{
1982
- type: z.ZodLiteral<"recording_start">;
1983
- recordingId: z.ZodString;
1984
- attachToConversationId: z.ZodOptional<z.ZodString>;
1985
- options: z.ZodOptional<z.ZodObject<{
1986
- captureScope: z.ZodOptional<z.ZodEnum<{
1987
- display: "display";
1988
- window: "window";
1989
- }>>;
1990
- displayId: z.ZodOptional<z.ZodString>;
1991
- windowId: z.ZodOptional<z.ZodNumber>;
1992
- includeAudio: z.ZodOptional<z.ZodBoolean>;
1993
- includeMicrophone: z.ZodOptional<z.ZodBoolean>;
1994
- promptForSource: z.ZodOptional<z.ZodBoolean>;
1995
- }, z.core.$strip>>;
1996
- operationToken: z.ZodOptional<z.ZodString>;
1997
- }, z.core.$strip>, z.ZodObject<{
1998
- type: z.ZodLiteral<"recording_stop">;
1999
- recordingId: z.ZodString;
2000
- }, z.core.$strip>, z.ZodObject<{
2001
- type: z.ZodLiteral<"relationship_state_updated">;
2002
- updatedAt: z.ZodString;
2003
- }, z.core.$strip>, z.ZodObject<{
2004
- type: z.ZodLiteral<"schedule_conversation_created">;
2005
- conversationId: z.ZodString;
2006
- scheduleJobId: z.ZodString;
2007
- title: z.ZodString;
2008
- }, z.core.$strip>, z.ZodObject<{
2009
- type: z.ZodLiteral<"secret_request">;
2010
- requestId: z.ZodString;
2011
- service: z.ZodString;
2012
- field: z.ZodString;
2013
- label: z.ZodString;
2014
- description: z.ZodOptional<z.ZodString>;
2015
- placeholder: z.ZodOptional<z.ZodString>;
2016
- conversationId: z.ZodOptional<z.ZodString>;
2017
- purpose: z.ZodOptional<z.ZodString>;
2018
- allowedTools: z.ZodOptional<z.ZodArray<z.ZodString>>;
2019
- allowedDomains: z.ZodOptional<z.ZodArray<z.ZodString>>;
2020
- allowOneTimeSend: z.ZodOptional<z.ZodBoolean>;
2021
- }, z.core.$strip>, z.ZodObject<{
2022
- type: z.ZodLiteral<"service_group_update_complete">;
2023
- installedVersion: z.ZodString;
2024
- success: z.ZodBoolean;
2025
- rolledBackToVersion: z.ZodOptional<z.ZodString>;
2026
- }, z.core.$strip>, z.ZodObject<{
2027
- type: z.ZodLiteral<"service_group_update_progress">;
2028
- statusMessage: z.ZodString;
2029
- }, z.core.$strip>, z.ZodObject<{
2030
- type: z.ZodLiteral<"service_group_update_starting">;
2031
- targetVersion: z.ZodString;
2032
- expectedDowntimeSeconds: z.ZodNumber;
2033
- }, z.core.$strip>, z.ZodObject<{
2034
- type: z.ZodLiteral<"show_platform_login">;
2035
- }, z.core.$strip>, z.ZodObject<{
2036
- type: z.ZodLiteral<"skills_state_changed">;
2037
- name: z.ZodString;
2038
- state: z.ZodEnum<{
2039
- enabled: "enabled";
2040
- disabled: "disabled";
2041
- installed: "installed";
2042
- uninstalled: "uninstalled";
2043
- }>;
2044
- }, z.core.$strip>, z.ZodObject<{
2045
- type: z.ZodLiteral<"sounds_config_updated">;
2046
- }, z.core.$strip>, z.ZodObject<{
2047
- type: z.ZodLiteral<"subagent_event">;
2048
- conversationId: z.ZodString;
2049
- subagentId: z.ZodString;
2050
- event: z.ZodObject<{
2051
- type: z.ZodString;
2052
- content: z.ZodOptional<z.ZodString>;
2053
- text: z.ZodOptional<z.ZodString>;
2054
- result: z.ZodOptional<z.ZodString>;
2055
- input: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2056
- toolName: z.ZodOptional<z.ZodString>;
2057
- isError: z.ZodOptional<z.ZodBoolean>;
2058
- toolUseId: z.ZodOptional<z.ZodString>;
2059
- }, z.core.$loose>;
2060
- }, z.core.$strict>, z.ZodObject<{
2061
- type: z.ZodLiteral<"subagent_spawned">;
2062
- subagentId: z.ZodString;
2063
- parentConversationId: z.ZodString;
2064
- label: z.ZodString;
2065
- objective: z.ZodString;
2066
- isFork: z.ZodOptional<z.ZodBoolean>;
2067
- parentToolUseId: z.ZodOptional<z.ZodString>;
2068
- }, z.core.$strict>, z.ZodObject<{
2069
- type: z.ZodLiteral<"subagent_status_changed">;
2070
- subagentId: z.ZodString;
2071
- status: z.ZodEnum<{
2072
- completed: "completed";
2073
- failed: "failed";
2074
- pending: "pending";
2075
- running: "running";
2076
- awaiting_input: "awaiting_input";
2077
- aborted: "aborted";
2078
- interrupted: "interrupted";
2079
- }>;
2080
- error: z.ZodOptional<z.ZodString>;
2081
- usage: z.ZodOptional<z.ZodObject<{
2082
- inputTokens: z.ZodNumber;
2083
- outputTokens: z.ZodNumber;
2084
- estimatedCost: z.ZodNumber;
2085
- }, z.core.$strict>>;
2086
- }, z.core.$strict>, z.ZodObject<{
2087
- type: z.ZodLiteral<"sync_changed">;
2088
- tags: z.ZodArray<z.ZodString>;
2089
- originClientId: z.ZodOptional<z.ZodString>;
2090
- }, z.core.$strip>, z.ZodObject<{
2091
- type: z.ZodLiteral<"tool_input_delta">;
2092
- toolName: z.ZodString;
2093
- content: z.ZodString;
2094
- conversationId: z.ZodOptional<z.ZodString>;
2095
- toolUseId: z.ZodOptional<z.ZodString>;
2096
- messageId: z.ZodOptional<z.ZodString>;
2097
- }, z.core.$strip>, z.ZodObject<{
2098
- type: z.ZodLiteral<"tool_output_chunk">;
2099
- chunk: z.ZodString;
2100
- conversationId: z.ZodOptional<z.ZodString>;
2101
- toolUseId: z.ZodOptional<z.ZodString>;
2102
- subType: z.ZodOptional<z.ZodEnum<{
2103
- status: "status";
2104
- tool_start: "tool_start";
2105
- tool_complete: "tool_complete";
2106
- }>>;
2107
- subToolName: z.ZodOptional<z.ZodString>;
2108
- subToolInput: z.ZodOptional<z.ZodString>;
2109
- subToolIsError: z.ZodOptional<z.ZodBoolean>;
2110
- subToolId: z.ZodOptional<z.ZodString>;
2111
- messageId: z.ZodOptional<z.ZodString>;
2112
- }, z.core.$strip>, z.ZodObject<{
2113
- type: z.ZodLiteral<"tool_result">;
2114
- toolName: z.ZodString;
2115
- result: z.ZodString;
2116
- isError: z.ZodOptional<z.ZodBoolean>;
2117
- diff: z.ZodOptional<z.ZodObject<{
2118
- filePath: z.ZodString;
2119
- oldContent: z.ZodString;
2120
- newContent: z.ZodString;
2121
- isNewFile: z.ZodBoolean;
2122
- }, z.core.$strip>>;
2123
- status: z.ZodOptional<z.ZodString>;
2124
- conversationId: z.ZodOptional<z.ZodString>;
2125
- imageData: z.ZodOptional<z.ZodString>;
2126
- imageDataList: z.ZodOptional<z.ZodArray<z.ZodString>>;
2127
- toolUseId: z.ZodOptional<z.ZodString>;
2128
- messageId: z.ZodOptional<z.ZodString>;
2129
- riskLevel: z.ZodOptional<z.ZodString>;
2130
- riskReason: z.ZodOptional<z.ZodString>;
2131
- matchedTrustRuleId: z.ZodOptional<z.ZodString>;
2132
- isContainerized: z.ZodOptional<z.ZodBoolean>;
2133
- riskScopeOptions: z.ZodOptional<z.ZodArray<z.ZodObject<{
2134
- pattern: z.ZodString;
2135
- label: z.ZodString;
2136
- }, z.core.$strip>>>;
2137
- riskAllowlistOptions: z.ZodOptional<z.ZodArray<z.ZodObject<{
2138
- label: z.ZodString;
2139
- description: z.ZodString;
2140
- pattern: z.ZodString;
2141
- }, z.core.$strip>>>;
2142
- riskDirectoryScopeOptions: z.ZodOptional<z.ZodArray<z.ZodObject<{
2143
- label: z.ZodString;
2144
- scope: z.ZodString;
2145
- }, z.core.$strip>>>;
2146
- approvalMode: z.ZodOptional<z.ZodString>;
2147
- approvalReason: z.ZodOptional<z.ZodString>;
2148
- riskThreshold: z.ZodOptional<z.ZodString>;
2149
- activityMetadata: z.ZodOptional<z.ZodObject<{
2150
- webSearch: z.ZodOptional<z.ZodObject<{
2151
- query: z.ZodString;
2152
- provider: z.ZodEnum<{
2153
- "anthropic-native": "anthropic-native";
2154
- brave: "brave";
2155
- perplexity: "perplexity";
2156
- tavily: "tavily";
2157
- firecrawl: "firecrawl";
2158
- }>;
2159
- resultCount: z.ZodNumber;
2160
- durationMs: z.ZodNumber;
2161
- results: z.ZodArray<z.ZodObject<{
2162
- rank: z.ZodNumber;
2163
- title: z.ZodString;
2164
- url: z.ZodString;
2165
- domain: z.ZodString;
2166
- faviconUrl: z.ZodOptional<z.ZodString>;
2167
- snippet: z.ZodOptional<z.ZodString>;
2168
- age: z.ZodOptional<z.ZodString>;
2169
- score: z.ZodOptional<z.ZodNumber>;
2170
- }, z.core.$strip>>;
2171
- errorMessage: z.ZodOptional<z.ZodString>;
2172
- }, z.core.$strip>>;
2173
- webFetch: z.ZodOptional<z.ZodObject<{
2174
- url: z.ZodString;
2175
- finalUrl: z.ZodString;
2176
- provider: z.ZodOptional<z.ZodEnum<{
2177
- default: "default";
2178
- firecrawl: "firecrawl";
2179
- }>>;
2180
- status: z.ZodNumber;
2181
- contentType: z.ZodOptional<z.ZodString>;
2182
- byteCount: z.ZodNumber;
2183
- charCount: z.ZodNumber;
2184
- truncated: z.ZodBoolean;
2185
- title: z.ZodOptional<z.ZodString>;
2186
- domain: z.ZodString;
2187
- faviconUrl: z.ZodOptional<z.ZodString>;
2188
- redirectCount: z.ZodNumber;
2189
- durationMs: z.ZodNumber;
2190
- errorMessage: z.ZodOptional<z.ZodString>;
2191
- mayRequireJavaScript: z.ZodOptional<z.ZodBoolean>;
2192
- }, z.core.$strip>>;
2193
- }, z.core.$strip>>;
2194
- errorCode: z.ZodOptional<z.ZodString>;
2195
- completedAt: z.ZodOptional<z.ZodNumber>;
2196
- }, z.core.$strip>, z.ZodObject<{
2197
- type: z.ZodLiteral<"tool_use_preview_start">;
2198
- toolUseId: z.ZodString;
2199
- toolName: z.ZodString;
2200
- conversationId: z.ZodOptional<z.ZodString>;
2201
- messageId: z.ZodOptional<z.ZodString>;
2202
- previewStartedAt: z.ZodOptional<z.ZodNumber>;
2203
- }, z.core.$strip>, z.ZodObject<{
2204
- type: z.ZodLiteral<"tool_use_start">;
2205
- toolName: z.ZodString;
2206
- input: z.ZodRecord<z.ZodString, z.ZodUnknown>;
2207
- toolUseId: z.ZodOptional<z.ZodString>;
2208
- messageId: z.ZodOptional<z.ZodString>;
2209
- conversationId: z.ZodOptional<z.ZodString>;
2210
- startedAt: z.ZodOptional<z.ZodNumber>;
2211
- previewStartedAt: z.ZodOptional<z.ZodNumber>;
2212
- }, z.core.$strip>, z.ZodObject<{
2213
- type: z.ZodLiteral<"ui_surface_complete">;
2214
- conversationId: z.ZodString;
2215
- surfaceId: z.ZodString;
2216
- summary: z.ZodString;
2217
- submittedData: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2218
- }, z.core.$strip>, z.ZodObject<{
2219
- type: z.ZodLiteral<"ui_surface_dismiss">;
2220
- conversationId: z.ZodString;
2221
- surfaceId: z.ZodString;
2222
- }, z.core.$strip>, z.ZodObject<{
2223
- type: z.ZodLiteral<"ui_surface_show">;
2224
- conversationId: z.ZodString;
2225
- surfaceId: z.ZodString;
2226
- surfaceType: z.ZodString;
2227
- title: z.ZodOptional<z.ZodString>;
2228
- data: z.ZodRecord<z.ZodString, z.ZodUnknown>;
2229
- actions: z.ZodOptional<z.ZodArray<z.ZodObject<{
2230
- id: z.ZodString;
2231
- label: z.ZodString;
2232
- style: z.ZodOptional<z.ZodEnum<{
2233
- primary: "primary";
2234
- secondary: "secondary";
2235
- destructive: "destructive";
2236
- }>>;
2237
- data: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2238
- }, z.core.$strip>>>;
2239
- display: z.ZodOptional<z.ZodEnum<{
2240
- inline: "inline";
2241
- panel: "panel";
2242
- }>>;
2243
- messageId: z.ZodOptional<z.ZodString>;
2244
- persistent: z.ZodOptional<z.ZodBoolean>;
2245
- toolCallId: z.ZodOptional<z.ZodString>;
2246
- }, z.core.$strip>, z.ZodObject<{
2247
- type: z.ZodLiteral<"ui_surface_undo_result">;
2248
- conversationId: z.ZodString;
2249
- surfaceId: z.ZodString;
2250
- success: z.ZodBoolean;
2251
- remainingUndos: z.ZodNumber;
2252
- }, z.core.$strip>, z.ZodObject<{
2253
- type: z.ZodLiteral<"ui_surface_update">;
2254
- conversationId: z.ZodString;
2255
- surfaceId: z.ZodString;
2256
- data: z.ZodRecord<z.ZodString, z.ZodUnknown>;
2257
- }, z.core.$strip>, z.ZodObject<{
2258
- type: z.ZodLiteral<"usage_progress">;
2259
- conversationId: z.ZodString;
2260
- inputTokens: z.ZodNumber;
2261
- outputTokens: z.ZodNumber;
2262
- estimatedCost: z.ZodNumber;
2263
- model: z.ZodString;
2264
- }, z.core.$strip>, z.ZodObject<{
2265
- type: z.ZodLiteral<"usage_update">;
2266
- conversationId: z.ZodString;
2267
- inputTokens: z.ZodNumber;
2268
- outputTokens: z.ZodNumber;
2269
- cacheCreationInputTokens: z.ZodOptional<z.ZodNumber>;
2270
- cacheReadInputTokens: z.ZodOptional<z.ZodNumber>;
2271
- totalInputTokens: z.ZodNumber;
2272
- totalOutputTokens: z.ZodNumber;
2273
- estimatedCost: z.ZodNumber;
2274
- model: z.ZodString;
2275
- contextWindowTokens: z.ZodOptional<z.ZodNumber>;
2276
- contextWindowMaxTokens: z.ZodOptional<z.ZodNumber>;
2277
- }, z.core.$strip>, z.ZodObject<{
2278
- type: z.ZodLiteral<"user_message_echo">;
2279
- text: z.ZodString;
2280
- conversationId: z.ZodOptional<z.ZodString>;
2281
- messageId: z.ZodOptional<z.ZodString>;
2282
- requestId: z.ZodOptional<z.ZodString>;
2283
- clientMessageId: z.ZodOptional<z.ZodString>;
2284
- }, z.core.$strict>, z.ZodObject<{
2285
- type: z.ZodLiteral<"workflow_completed">;
2286
- runId: z.ZodString;
2287
- conversationId: z.ZodOptional<z.ZodString>;
2288
- status: z.ZodEnum<{
2289
- completed: "completed";
2290
- failed: "failed";
2291
- running: "running";
2292
- aborted: "aborted";
2293
- interrupted: "interrupted";
2294
- cap_exceeded: "cap_exceeded";
2295
- }>;
2296
- agentsSpawned: z.ZodNumber;
2297
- inputTokens: z.ZodNumber;
2298
- outputTokens: z.ZodNumber;
2299
- summary: z.ZodOptional<z.ZodString>;
2300
- }, z.core.$strict>, z.ZodObject<{
2301
- type: z.ZodLiteral<"workflow_leaf_finished">;
2302
- runId: z.ZodString;
2303
- conversationId: z.ZodString;
2304
- seq: z.ZodNumber;
2305
- status: z.ZodEnum<{
2306
- completed: "completed";
2307
- failed: "failed";
2308
- }>;
2309
- label: z.ZodOptional<z.ZodString>;
2310
- inputTokens: z.ZodOptional<z.ZodNumber>;
2311
- outputTokens: z.ZodOptional<z.ZodNumber>;
2312
- resultSummary: z.ZodOptional<z.ZodString>;
2313
- }, z.core.$strict>, z.ZodObject<{
2314
- type: z.ZodLiteral<"workflow_leaf_started">;
2315
- runId: z.ZodString;
2316
- conversationId: z.ZodString;
2317
- seq: z.ZodNumber;
2318
- label: z.ZodOptional<z.ZodString>;
2319
- phase: z.ZodOptional<z.ZodString>;
2320
- promptSummary: z.ZodOptional<z.ZodString>;
2321
- }, z.core.$strict>, z.ZodObject<{
2322
- type: z.ZodLiteral<"workflow_progress">;
2323
- runId: z.ZodString;
2324
- conversationId: z.ZodOptional<z.ZodString>;
2325
- agentsSpawned: z.ZodNumber;
2326
- phase: z.ZodOptional<z.ZodString>;
2327
- label: z.ZodOptional<z.ZodString>;
2328
- message: z.ZodOptional<z.ZodString>;
2329
- }, z.core.$strict>, z.ZodObject<{
2330
- type: z.ZodLiteral<"workflow_started">;
2331
- runId: z.ZodString;
2332
- conversationId: z.ZodString;
2333
- toolUseId: z.ZodOptional<z.ZodString>;
2334
- label: z.ZodOptional<z.ZodString>;
2335
- }, z.core.$strict>], "type">;
2336
1435
  }, z.core.$strip>;
2337
1436
 
2338
- /** Filter that determines which events a subscriber receives. */
2339
- export declare type AssistantEventFilter = {
2340
- /** When set, restrict delivery to events for this conversation. */
2341
- conversationId?: string;
2342
- };
1437
+ declare type AssistantThinkingDeltaEvent = z.infer<typeof AssistantThinkingDeltaEventSchema>;
2343
1438
 
2344
- /**
2345
- * Lightweight pub/sub hub for `AssistantEventEnvelope` messages.
2346
- *
2347
- * Filtering is applied at subscription level:
2348
- * - `conversationId`: scoped events match subscribers with same conversationId
2349
- * or no conversationId filter (broadcast to all).
2350
- * - `targetCapability` (on publish): targeted events only reach subscribers
2351
- * whose capabilities include the target. Untargeted events fan out to all.
2352
- *
2353
- * Client connections register as subscribers with metadata and are queryable
2354
- * via `listClients()`, `getMostRecentClientByCapability()`, etc.
2355
- */
2356
- export declare class AssistantEventHub {
2357
- private readonly subscribers;
2358
- private readonly maxSubscribers;
2359
- /** Monotonic source for per-connection ids, scoped to this hub. */
2360
- private connectionCounter;
2361
- constructor(options?: {
2362
- maxSubscribers?: number;
2363
- });
2364
- /**
2365
- * Register a subscriber that will be called for each matching event.
2366
- *
2367
- * **Client deduplication:** When a client subscriber is registered with a
2368
- * `clientId` that already exists, all stale entries for that clientId are
2369
- * disposed first. This prevents subscriber stacking when clients reconnect
2370
- * (e.g. Chrome extension reload, SSE token refresh) before the old
2371
- * connection's abort signal fires.
2372
- *
2373
- * When the subscriber cap (`maxSubscribers`) has been reached, the **oldest**
2374
- * subscriber is evicted to make room: its `onEvict` callback is invoked (so
2375
- * it can close its SSE stream) and its entry is removed from the hub.
2376
- */
2377
- subscribe(subscriber: SubscriberInput): AssistantEventSubscription;
2378
- /**
2379
- * Publish an event to all matching subscribers.
2380
- *
2381
- * Matching rules:
2382
- * - if `excludeClientId` is set, the subscriber with that clientId is
2383
- * skipped regardless of every other rule (self-echo suppression — the
2384
- * client that originated the mutation does not receive its own
2385
- * invalidation back through the hub).
2386
- * - if `targetClientId` is set, deliver only to the subscriber with that
2387
- * clientId, bypassing the conversation-id filter entirely (the web-origin
2388
- * event's conversationId differs from the macOS client's subscribed
2389
- * conversation).
2390
- * - if `filter.conversationId` is set (and `targetClientId` is not), the
2391
- * `event.conversationId` must equal it
2392
- * - if `targetCapability` is set, only subscribers whose capabilities include
2393
- * it receive the event; untargeted events go to all
2394
- * - if `targetInterfaceId` is set, only client subscribers whose
2395
- * `interfaceId` matches receive the event; process subscribers and
2396
- * non-matching clients are skipped. Used to narrow legacy
2397
- * broadcasts (e.g. `conversation_list_invalidated`) to a specific
2398
- * client surface during a migration window.
2399
- *
2400
- * Fanout is isolated: a throwing or rejecting subscriber does not abort
2401
- * delivery to remaining subscribers.
2402
- */
2403
- publish(event: AssistantEventEnvelope, options?: {
2404
- targetCapability?: HostProxyCapability;
2405
- targetClientId?: string;
2406
- targetInterfaceId?: InterfaceId;
2407
- /**
2408
- * Skip the subscriber with this `clientId`. Used for self-echo
2409
- * suppression on `sync_changed`: the route handler echoes the
2410
- * originating tab's `X-Vellum-Client-Id` back on the event, and the
2411
- * hub uses it here to avoid re-delivering the invalidation to the
2412
- * tab that already mutated its own optimistic state.
2413
- */
2414
- excludeClientId?: string;
2415
- }): Promise<void>;
2416
- /**
2417
- * Return the active client subscriber with the given clientId, or
2418
- * `undefined` if no such subscriber exists.
2419
- */
2420
- getClientById(clientId: string): ClientEntry | undefined;
2421
- /**
2422
- * Return the verified actor principal id captured at SSE subscription time
2423
- * for the given client, or `undefined` if the client is unknown or
2424
- * connected without a principal (e.g. legacy/service tokens).
2425
- *
2426
- * Used by host proxies to bind cross-client targeted execution to the same
2427
- * authenticated user identity that opened the target client's SSE stream.
2428
- */
2429
- getActorPrincipalIdForClient(clientId: string): string | undefined;
2430
- /**
2431
- * Returns true when at least one active subscriber would receive the given
2432
- * event based on the same conversation matching rules as publish().
2433
- */
2434
- hasSubscribersForEvent(event: Pick<AssistantEventEnvelope, "conversationId">): boolean;
2435
- private clientEntries;
2436
- /**
2437
- * Return all active client subscribers, sorted by `lastActiveAt` descending.
2438
- */
2439
- listClients(): ClientEntry[];
2440
- /**
2441
- * Return all client subscribers that support the given capability,
2442
- * sorted by `lastActiveAt` descending.
2443
- */
2444
- listClientsByCapability(capability: HostProxyCapability): ClientEntry[];
2445
- /**
2446
- * Return the most recently active client that supports the given
2447
- * capability, or `undefined` if none exists.
2448
- */
2449
- getMostRecentClientByCapability(capability: HostProxyCapability): ClientEntry | undefined;
2450
- /**
2451
- * Return all client subscribers with the given interface type,
2452
- * sorted by `lastActiveAt` descending.
2453
- */
2454
- listClientsByInterface(interfaceId: InterfaceId): ClientEntry[];
2455
- /**
2456
- * Touch a client subscriber — update `lastActiveAt`. Used by heartbeat.
2457
- */
2458
- touchClient(clientId: string): void;
2459
- /**
2460
- * Force-disconnect a client by disposing all subscribers for the given
2461
- * `clientId`. Returns the number of disposed entries.
2462
- *
2463
- * Used by `assistant clients disconnect <clientId>` to forcibly remove
2464
- * stale or unwanted client connections.
2465
- */
2466
- disposeClient(clientId: string): number;
2467
- /** Number of currently active subscribers (useful for tests and caps). */
2468
- subscriberCount(): number;
2469
- /** Returns true if the hub can accept a subscriber without evicting anyone. */
2470
- hasCapacity(): boolean;
2471
- }
1439
+ declare const AssistantThinkingDeltaEventSchema: z.ZodObject<{
1440
+ type: z.ZodLiteral<"assistant_thinking_delta">;
1441
+ thinking: z.ZodString;
1442
+ messageId: z.ZodOptional<z.ZodString>;
1443
+ conversationId: z.ZodOptional<z.ZodString>;
1444
+ timestampMs: z.ZodOptional<z.ZodNumber>;
1445
+ }, z.core.$strip>;
2472
1446
 
2473
- /** The plugin-facing event hub. See module docs. */
2474
- export declare const assistantEventHub: PluginEventHub;
1447
+ declare type AssistantTurnStartEvent = z.infer<typeof AssistantTurnStartEventSchema>;
2475
1448
 
2476
- /** Opaque handle returned by `subscribe`. Call `dispose()` to remove the subscription. */
2477
- export declare interface AssistantEventSubscription {
2478
- dispose(): void;
2479
- /** True until `dispose()` has been called. */
2480
- readonly active: boolean;
2481
- /**
2482
- * Per-connection identifier, unique within the hub instance. Distinguishes
2483
- * connections that share a `clientId` (e.g. an old connection and the new
2484
- * one that replaced it on reconnect) so subscribe / dispose / shed log
2485
- * lines can be attributed to a specific connection.
2486
- */
2487
- readonly connectionId: string;
2488
- }
1449
+ declare const AssistantTurnStartEventSchema: z.ZodObject<{
1450
+ type: z.ZodLiteral<"assistant_turn_start">;
1451
+ messageId: z.ZodString;
1452
+ conversationId: z.ZodOptional<z.ZodString>;
1453
+ }, z.core.$strip>;
2489
1454
 
2490
1455
  declare interface AudioEmbeddingInput {
2491
1456
  type: "audio";
@@ -2493,6 +1458,42 @@ declare interface AudioEmbeddingInput {
2493
1458
  mimeType: string;
2494
1459
  }
2495
1460
 
1461
+ declare type AvatarUpdatedEvent = z.infer<typeof AvatarUpdatedEventSchema>;
1462
+
1463
+ declare const AvatarUpdatedEventSchema: z.ZodObject<{
1464
+ type: z.ZodLiteral<"avatar_updated">;
1465
+ avatarPath: z.ZodString;
1466
+ }, z.core.$strip>;
1467
+
1468
+ declare type BackgroundToolCompletedEvent = z.infer<typeof BackgroundToolCompletedEventSchema>;
1469
+
1470
+ declare const BackgroundToolCompletedEventSchema: z.ZodObject<{
1471
+ type: z.ZodLiteral<"background_tool_completed">;
1472
+ id: z.ZodString;
1473
+ conversationId: z.ZodString;
1474
+ status: z.ZodEnum<{
1475
+ cancelled: "cancelled";
1476
+ completed: "completed";
1477
+ failed: "failed";
1478
+ }>;
1479
+ exitCode: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1480
+ output: z.ZodOptional<z.ZodString>;
1481
+ completedAt: z.ZodNumber;
1482
+ }, z.core.$strip>;
1483
+
1484
+ declare type _BackgroundToolsServerMessages = BackgroundToolStartedEvent | BackgroundToolCompletedEvent;
1485
+
1486
+ declare type BackgroundToolStartedEvent = z.infer<typeof BackgroundToolStartedEventSchema>;
1487
+
1488
+ declare const BackgroundToolStartedEventSchema: z.ZodObject<{
1489
+ type: z.ZodLiteral<"background_tool_started">;
1490
+ id: z.ZodString;
1491
+ toolName: z.ZodString;
1492
+ conversationId: z.ZodString;
1493
+ command: z.ZodString;
1494
+ startedAt: z.ZodNumber;
1495
+ }, z.core.$strip>;
1496
+
2496
1497
  /**
2497
1498
  * Media payload for an image or file content block. One unified type covers
2498
1499
  * both blocks and both storage forms:
@@ -2520,6 +1521,31 @@ declare interface Base64MediaSource {
2520
1521
  filename?: string;
2521
1522
  }
2522
1523
 
1524
+ /**
1525
+ * A single assistant event wrapping an outbound message payload.
1526
+ *
1527
+ * Generic over the payload type. The `TMessage` default of `unknown` keeps
1528
+ * the envelope nameable without a type argument when the caller does not
1529
+ * care about message narrowing.
1530
+ */
1531
+ declare interface BaseAssistantEvent<TMessage = unknown> {
1532
+ /** Globally unique event identifier (UUID). */
1533
+ id: string;
1534
+ /** Resolved conversation id when available. */
1535
+ conversationId?: string;
1536
+ /**
1537
+ * Monotonic per-conversation sequence number. Assigned by the daemon at
1538
+ * publish time for conversation-scoped events; absent for unscoped
1539
+ * broadcasts. Clients track the highest observed `seq` per conversation
1540
+ * and pass it back on reconnect to request replay of missed events.
1541
+ */
1542
+ seq?: number;
1543
+ /** ISO-8601 timestamp of when the event was emitted. */
1544
+ emittedAt: string;
1545
+ /** Outbound message payload. */
1546
+ message: TMessage;
1547
+ }
1548
+
2523
1549
  /**
2524
1550
  * Capabilities shared by every chain-hook context (`user-prompt-submit`,
2525
1551
  * `post-compact`, `post-tool-use`, `stop`, `pre-model-call`,
@@ -2560,6 +1586,31 @@ declare interface BaseSubscriberEntry {
2560
1586
  connectionId: string;
2561
1587
  }
2562
1588
 
1589
+ declare type BookmarkCreatedEvent = z.infer<typeof BookmarkCreatedEventSchema>;
1590
+
1591
+ declare const BookmarkCreatedEventSchema: z.ZodObject<{
1592
+ type: z.ZodLiteral<"bookmark.created">;
1593
+ bookmark: z.ZodObject<{
1594
+ id: z.ZodString;
1595
+ messageId: z.ZodString;
1596
+ conversationId: z.ZodString;
1597
+ conversationTitle: z.ZodNullable<z.ZodString>;
1598
+ messagePreview: z.ZodString;
1599
+ messageRole: z.ZodString;
1600
+ messageCreatedAt: z.ZodNumber;
1601
+ createdAt: z.ZodNumber;
1602
+ }, z.core.$strip>;
1603
+ }, z.core.$strip>;
1604
+
1605
+ declare type BookmarkDeletedEvent = z.infer<typeof BookmarkDeletedEventSchema>;
1606
+
1607
+ declare const BookmarkDeletedEventSchema: z.ZodObject<{
1608
+ type: z.ZodLiteral<"bookmark.deleted">;
1609
+ messageId: z.ZodString;
1610
+ }, z.core.$strip>;
1611
+
1612
+ declare type _BookmarksServerMessages = BookmarkCreatedEvent | BookmarkDeletedEvent;
1613
+
2563
1614
  /**
2564
1615
  * Build a model-facing excerpt of stored message content around a query,
2565
1616
  * preserving external-content envelopes so third-party boundaries stay
@@ -2567,6 +1618,94 @@ declare interface BaseSubscriberEntry {
2567
1618
  */
2568
1619
  export declare function buildMessageExcerpt(rawContent: string, query: string): Promise<string>;
2569
1620
 
1621
+ /**
1622
+ * Canonical channel-id vocabulary shared between the assistant daemon and the
1623
+ * gateway.
1624
+ *
1625
+ * A "channel" is an external messaging surface an actor can reach the
1626
+ * assistant through (Slack, Telegram, WhatsApp, phone, …) plus a couple of
1627
+ * internal ids (`vellum` for native app conversations, `platform` for the
1628
+ * internal control plane). This is the single source of truth for that set:
1629
+ * the assistant adopts it wholesale as its `ChannelId`, and the gateway
1630
+ * asserts its own (narrower) inbound list is a subset of it so the two sides
1631
+ * cannot silently drift.
1632
+ *
1633
+ * Both packages depend on `@vellumai/service-contracts`, so hoisting the set
1634
+ * here (rather than maintaining a copy on each side) means adding or renaming
1635
+ * a channel happens in exactly one place.
1636
+ *
1637
+ * Note that a consumer may legitimately handle only a *subset* of these — the
1638
+ * gateway, for example, never ingresses `platform`. Use a local list guarded
1639
+ * by `satisfies readonly ChannelId[]` for those cases rather than redefining
1640
+ * the union.
1641
+ */
1642
+ declare const CHANNEL_IDS: readonly ["telegram", "phone", "vellum", "whatsapp", "slack", "email", "platform", "a2a"];
1643
+
1644
+ /** Channel binding metadata exposed in conversation list APIs. */
1645
+ declare interface ChannelBinding {
1646
+ sourceChannel: ChannelId;
1647
+ externalChatId: string;
1648
+ externalChatName?: string | null;
1649
+ externalThreadId?: string | null;
1650
+ externalUserId?: string | null;
1651
+ displayName?: string | null;
1652
+ username?: string | null;
1653
+ slackThread?: {
1654
+ channelId: string;
1655
+ threadTs: string;
1656
+ link?: {
1657
+ appUrl?: string;
1658
+ webUrl?: string;
1659
+ };
1660
+ };
1661
+ slackChannel?: {
1662
+ channelId: string;
1663
+ name?: string;
1664
+ link?: {
1665
+ webUrl?: string;
1666
+ };
1667
+ };
1668
+ }
1669
+
1670
+ declare type ChannelId = (typeof CHANNEL_IDS)[number];
1671
+
1672
+ declare interface ChannelVerificationSessionResponse {
1673
+ type: "channel_verification_session_response";
1674
+ success: boolean;
1675
+ secret?: string;
1676
+ instruction?: string;
1677
+ /** Present when action is 'status'. */
1678
+ bound?: boolean;
1679
+ guardianExternalUserId?: string;
1680
+ /** The channel this status pertains to (e.g. "telegram", "phone"). Present when action is 'status'. */
1681
+ channel?: ChannelId;
1682
+ /** The assistant ID scoped to this status. Present when action is 'status'. */
1683
+ assistantId?: string;
1684
+ /** The delivery chat ID for the guardian (e.g. Telegram chat ID). Present when action is 'status' and bound is true. */
1685
+ guardianDeliveryChatId?: string;
1686
+ /** Optional channel username/handle for the bound guardian (for UI display). */
1687
+ guardianUsername?: string;
1688
+ /** Optional display name for the bound guardian (for UI display). */
1689
+ guardianDisplayName?: string;
1690
+ /** Whether a pending verification challenge exists for this (assistantId, channel). Used by relay setup to detect active voice verification sessions. */
1691
+ hasPendingChallenge?: boolean;
1692
+ error?: string;
1693
+ /** Human-readable error detail (e.g. for already_bound failures). */
1694
+ message?: string;
1695
+ /** Conversation ID for outbound verification flows. */
1696
+ verificationSessionId?: string;
1697
+ /** Epoch ms when the verification session expires. */
1698
+ expiresAt?: number;
1699
+ /** Epoch ms after which a resend is allowed. */
1700
+ nextResendAt?: number;
1701
+ /** Number of sends for this session. */
1702
+ sendCount?: number;
1703
+ /** Telegram deep-link URL for bootstrap (M3 placeholder). */
1704
+ telegramBootstrapUrl?: string;
1705
+ /** True when the outbound session is still in pending_bootstrap state (Telegram handle flow). Prevents the client from clearing the bootstrap URL during status polling. */
1706
+ pendingBootstrap?: boolean;
1707
+ }
1708
+
2570
1709
  export declare const CLI_COMMAND_HELP: readonly CliCommandHelp[];
2571
1710
 
2572
1711
  declare interface CliArgumentHelp {
@@ -2624,6 +1763,14 @@ declare interface ClientEntry extends BaseSubscriberEntry {
2624
1763
  actorPrincipalId?: string;
2625
1764
  }
2626
1765
 
1766
+ declare type ClientSettingsUpdateEvent = z.infer<typeof ClientSettingsUpdateEventSchema>;
1767
+
1768
+ declare const ClientSettingsUpdateEventSchema: z.ZodObject<{
1769
+ type: z.ZodLiteral<"client_settings_update">;
1770
+ key: z.ZodString;
1771
+ value: z.ZodString;
1772
+ }, z.core.$strip>;
1773
+
2627
1774
  declare interface CliOptionHelp {
2628
1775
  /** Commander flag spec, e.g. `"--path <file>"` or `"-l, --limit <n>"`. */
2629
1776
  flags: string;
@@ -2657,10 +1804,147 @@ declare interface CliSubcommandHelp {
2657
1804
  subcommands?: CliSubcommandHelp[];
2658
1805
  }
2659
1806
 
1807
+ declare type CompactionCircuitClosedEvent = z.infer<typeof CompactionCircuitClosedEventSchema>;
1808
+
1809
+ declare const CompactionCircuitClosedEventSchema: z.ZodObject<{
1810
+ type: z.ZodLiteral<"compaction_circuit_closed">;
1811
+ conversationId: z.ZodString;
1812
+ }, z.core.$strip>;
1813
+
1814
+ declare type CompactionCircuitOpenEvent = z.infer<typeof CompactionCircuitOpenEventSchema>;
1815
+
1816
+ declare const CompactionCircuitOpenEventSchema: z.ZodObject<{
1817
+ type: z.ZodLiteral<"compaction_circuit_open">;
1818
+ conversationId: z.ZodString;
1819
+ reason: z.ZodLiteral<"3_consecutive_failures">;
1820
+ openUntil: z.ZodNumber;
1821
+ }, z.core.$strip>;
1822
+
1823
+ declare type _ComputerUseServerMessages = RecordingStartEvent | RecordingStopEvent | RecordingPauseEvent | RecordingResumeEvent;
1824
+
1825
+ declare type ConfigChangedEvent = z.infer<typeof ConfigChangedEventSchema>;
1826
+
1827
+ declare const ConfigChangedEventSchema: z.ZodObject<{
1828
+ type: z.ZodLiteral<"config_changed">;
1829
+ }, z.core.$strip>;
1830
+
2660
1831
  declare type ConfiguredProviderOptions = Pick<ResolveCallSiteOpts, "overrideProfile" | "forceOverrideProfile" | "selectionSeed">;
2661
1832
 
1833
+ declare type ConfirmationRequestEvent = z.infer<typeof ConfirmationRequestEventSchema>;
1834
+
1835
+ declare const ConfirmationRequestEventSchema: z.ZodObject<{
1836
+ type: z.ZodLiteral<"confirmation_request">;
1837
+ requestId: z.ZodString;
1838
+ toolName: z.ZodString;
1839
+ input: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1840
+ riskLevel: z.ZodString;
1841
+ riskReason: z.ZodOptional<z.ZodString>;
1842
+ isContainerized: z.ZodOptional<z.ZodBoolean>;
1843
+ executionTarget: z.ZodOptional<z.ZodEnum<{
1844
+ sandbox: "sandbox";
1845
+ host: "host";
1846
+ }>>;
1847
+ allowlistOptions: z.ZodArray<z.ZodObject<{
1848
+ label: z.ZodString;
1849
+ description: z.ZodString;
1850
+ pattern: z.ZodString;
1851
+ }, z.core.$strip>>;
1852
+ scopeOptions: z.ZodArray<z.ZodObject<{
1853
+ label: z.ZodString;
1854
+ scope: z.ZodString;
1855
+ }, z.core.$strip>>;
1856
+ directoryScopeOptions: z.ZodOptional<z.ZodArray<z.ZodObject<{
1857
+ label: z.ZodString;
1858
+ scope: z.ZodString;
1859
+ }, z.core.$strip>>>;
1860
+ diff: z.ZodOptional<z.ZodObject<{
1861
+ filePath: z.ZodString;
1862
+ oldContent: z.ZodString;
1863
+ newContent: z.ZodString;
1864
+ isNewFile: z.ZodBoolean;
1865
+ }, z.core.$strip>>;
1866
+ conversationId: z.ZodOptional<z.ZodString>;
1867
+ persistentDecisionsAllowed: z.ZodOptional<z.ZodBoolean>;
1868
+ toolUseId: z.ZodOptional<z.ZodString>;
1869
+ acpToolKind: z.ZodOptional<z.ZodString>;
1870
+ acpOptions: z.ZodOptional<z.ZodArray<z.ZodObject<{
1871
+ optionId: z.ZodString;
1872
+ name: z.ZodString;
1873
+ kind: z.ZodEnum<{
1874
+ allow_once: "allow_once";
1875
+ allow_always: "allow_always";
1876
+ reject_once: "reject_once";
1877
+ reject_always: "reject_always";
1878
+ }>;
1879
+ }, z.core.$strip>>>;
1880
+ }, z.core.$strip>;
1881
+
1882
+ declare type ConfirmationStateChangedEvent = z.infer<typeof ConfirmationStateChangedEventSchema>;
1883
+
1884
+ declare const ConfirmationStateChangedEventSchema: z.ZodObject<{
1885
+ type: z.ZodLiteral<"confirmation_state_changed">;
1886
+ conversationId: z.ZodString;
1887
+ requestId: z.ZodString;
1888
+ state: z.ZodEnum<{
1889
+ timed_out: "timed_out";
1890
+ pending: "pending";
1891
+ approved: "approved";
1892
+ denied: "denied";
1893
+ resolved_stale: "resolved_stale";
1894
+ }>;
1895
+ source: z.ZodEnum<{
1896
+ button: "button";
1897
+ inline_nl: "inline_nl";
1898
+ auto_deny: "auto_deny";
1899
+ timeout: "timeout";
1900
+ system: "system";
1901
+ }>;
1902
+ causedByRequestId: z.ZodOptional<z.ZodString>;
1903
+ decisionText: z.ZodOptional<z.ZodString>;
1904
+ toolUseId: z.ZodOptional<z.ZodString>;
1905
+ }, z.core.$strip>;
1906
+
1907
+ declare type ContactRequestEvent = z.infer<typeof ContactRequestEventSchema>;
1908
+
1909
+ declare const ContactRequestEventSchema: z.ZodObject<{
1910
+ type: z.ZodLiteral<"contact_request">;
1911
+ requestId: z.ZodString;
1912
+ channel: z.ZodOptional<z.ZodString>;
1913
+ placeholder: z.ZodOptional<z.ZodString>;
1914
+ label: z.ZodOptional<z.ZodString>;
1915
+ description: z.ZodOptional<z.ZodString>;
1916
+ role: z.ZodOptional<z.ZodString>;
1917
+ }, z.core.$strip>;
1918
+
1919
+ declare type ContactsChangedEvent = z.infer<typeof ContactsChangedEventSchema>;
1920
+
1921
+ declare const ContactsChangedEventSchema: z.ZodObject<{
1922
+ type: z.ZodLiteral<"contacts_changed">;
1923
+ }, z.core.$strip>;
1924
+
1925
+ declare type _ContactsServerMessages = ContactsChangedEvent | ContactRequestEvent;
1926
+
2662
1927
  export declare type ContentBlock = TextContent | ThinkingContent | RedactedThinkingContent | ImageContent | FileContent | ToolUseContent | ToolResultContent | ServerToolUseContent | WebSearchToolResultContent;
2663
1928
 
1929
+ declare type ContextCompactedEvent = z.infer<typeof ContextCompactedEventSchema>;
1930
+
1931
+ declare const ContextCompactedEventSchema: z.ZodObject<{
1932
+ type: z.ZodLiteral<"context_compacted">;
1933
+ conversationId: z.ZodString;
1934
+ previousEstimatedInputTokens: z.ZodNumber;
1935
+ estimatedInputTokens: z.ZodNumber;
1936
+ maxInputTokens: z.ZodNumber;
1937
+ thresholdTokens: z.ZodNumber;
1938
+ compactedMessages: z.ZodNumber;
1939
+ summaryCalls: z.ZodNumber;
1940
+ summaryInputTokens: z.ZodNumber;
1941
+ summaryOutputTokens: z.ZodNumber;
1942
+ summaryModel: z.ZodString;
1943
+ summaryCharCount: z.ZodOptional<z.ZodNumber>;
1944
+ summaryHeaderCount: z.ZodOptional<z.ZodNumber>;
1945
+ summaryHadMemoryEcho: z.ZodOptional<z.ZodBoolean>;
1946
+ }, z.core.$strip>;
1947
+
2664
1948
  /** How a conversation was created / its execution mode. */
2665
1949
  declare type ConversationCreateType = "standard" | "background" | "scheduled";
2666
1950
 
@@ -2691,6 +1975,142 @@ declare interface ConversationDeletedInputContext {
2691
1975
  readonly conversationId: string;
2692
1976
  }
2693
1977
 
1978
+ declare type ConversationErrorEvent = z.infer<typeof ConversationErrorEventSchema>;
1979
+
1980
+ declare const ConversationErrorEventSchema: z.ZodObject<{
1981
+ type: z.ZodLiteral<"conversation_error">;
1982
+ conversationId: z.ZodString;
1983
+ code: z.ZodEnum<{
1984
+ PROVIDER_NETWORK: "PROVIDER_NETWORK";
1985
+ PROVIDER_RATE_LIMIT: "PROVIDER_RATE_LIMIT";
1986
+ MANAGED_USAGE_LIMIT: "MANAGED_USAGE_LIMIT";
1987
+ PROVIDER_OVERLOADED: "PROVIDER_OVERLOADED";
1988
+ PROVIDER_API: "PROVIDER_API";
1989
+ IMAGE_TOO_LARGE: "IMAGE_TOO_LARGE";
1990
+ PROVIDER_BILLING: "PROVIDER_BILLING";
1991
+ PROVIDER_ORDERING: "PROVIDER_ORDERING";
1992
+ PROVIDER_WEB_SEARCH: "PROVIDER_WEB_SEARCH";
1993
+ PROVIDER_NOT_CONFIGURED: "PROVIDER_NOT_CONFIGURED";
1994
+ PROVIDER_INVALID_KEY: "PROVIDER_INVALID_KEY";
1995
+ MANAGED_KEY_INVALID: "MANAGED_KEY_INVALID";
1996
+ CONTEXT_TOO_LARGE: "CONTEXT_TOO_LARGE";
1997
+ BUDGET_YIELD_UNRECOVERED: "BUDGET_YIELD_UNRECOVERED";
1998
+ MAX_TOKENS_REACHED: "MAX_TOKENS_REACHED";
1999
+ CONVERSATION_ABORTED: "CONVERSATION_ABORTED";
2000
+ CONVERSATION_PROCESSING_FAILED: "CONVERSATION_PROCESSING_FAILED";
2001
+ DISK_SPACE_CRITICAL: "DISK_SPACE_CRITICAL";
2002
+ UNKNOWN: "UNKNOWN";
2003
+ }>;
2004
+ userMessage: z.ZodString;
2005
+ retryable: z.ZodBoolean;
2006
+ debugDetails: z.ZodOptional<z.ZodString>;
2007
+ errorCategory: z.ZodOptional<z.ZodString>;
2008
+ connectionName: z.ZodOptional<z.ZodString>;
2009
+ profileName: z.ZodOptional<z.ZodString>;
2010
+ }, z.core.$strip>;
2011
+
2012
+ declare interface ConversationForkParent {
2013
+ conversationId: string;
2014
+ messageId: string;
2015
+ title: string;
2016
+ }
2017
+
2018
+ declare type ConversationInferenceProfileUpdatedEvent = z.infer<typeof ConversationInferenceProfileUpdatedEventSchema>;
2019
+
2020
+ declare const ConversationInferenceProfileUpdatedEventSchema: z.ZodObject<{
2021
+ type: z.ZodLiteral<"conversation_inference_profile_updated">;
2022
+ conversationId: z.ZodString;
2023
+ profile: z.ZodNullable<z.ZodString>;
2024
+ sessionId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2025
+ expiresAt: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2026
+ }, z.core.$strip>;
2027
+
2028
+ declare interface ConversationInfo {
2029
+ type: "conversation_info";
2030
+ conversationId: string;
2031
+ title: string;
2032
+ correlationId?: string;
2033
+ conversationType?: ConversationType;
2034
+ /**
2035
+ * Per-conversation override for the LLM inference profile. `undefined`
2036
+ * means the conversation inherits the workspace `llm.activeProfile`.
2037
+ */
2038
+ inferenceProfile?: string;
2039
+ }
2040
+
2041
+ declare type ConversationListInvalidatedEvent = z.infer<typeof ConversationListInvalidatedEventSchema>;
2042
+
2043
+ declare const ConversationListInvalidatedEventSchema: z.ZodObject<{
2044
+ type: z.ZodLiteral<"conversation_list_invalidated">;
2045
+ reason: z.ZodEnum<{
2046
+ created: "created";
2047
+ renamed: "renamed";
2048
+ deleted: "deleted";
2049
+ reordered: "reordered";
2050
+ seen_changed: "seen_changed";
2051
+ }>;
2052
+ }, z.core.$strip>;
2053
+
2054
+ declare interface ConversationListResponse {
2055
+ type: "conversation_list_response";
2056
+ conversations: Array<{
2057
+ id: string;
2058
+ title: string;
2059
+ createdAt?: number;
2060
+ updatedAt: number;
2061
+ conversationType?: ConversationType;
2062
+ source?: string;
2063
+ scheduleJobId?: string;
2064
+ channelBinding?: ChannelBinding;
2065
+ conversationOriginChannel?: ChannelId;
2066
+ conversationOriginInterface?: InterfaceId;
2067
+ assistantAttention?: AssistantAttention;
2068
+ displayOrder?: number;
2069
+ isPinned?: boolean;
2070
+ forkParent?: ConversationForkParent;
2071
+ /**
2072
+ * Per-conversation override for the LLM inference profile. Omitted when
2073
+ * the conversation inherits the workspace `llm.activeProfile`.
2074
+ */
2075
+ inferenceProfile?: string;
2076
+ }>;
2077
+ /** Whether more conversations exist beyond the returned page. */
2078
+ hasMore?: boolean;
2079
+ }
2080
+
2081
+ declare type ConversationNoticeEvent = z.infer<typeof ConversationNoticeEventSchema>;
2082
+
2083
+ declare const ConversationNoticeEventSchema: z.ZodObject<{
2084
+ type: z.ZodLiteral<"conversation_notice">;
2085
+ conversationId: z.ZodString;
2086
+ source: z.ZodEnum<{
2087
+ memory_v3: "memory_v3";
2088
+ }>;
2089
+ code: z.ZodEnum<{
2090
+ PROVIDER_NETWORK: "PROVIDER_NETWORK";
2091
+ PROVIDER_RATE_LIMIT: "PROVIDER_RATE_LIMIT";
2092
+ MANAGED_USAGE_LIMIT: "MANAGED_USAGE_LIMIT";
2093
+ PROVIDER_OVERLOADED: "PROVIDER_OVERLOADED";
2094
+ PROVIDER_API: "PROVIDER_API";
2095
+ IMAGE_TOO_LARGE: "IMAGE_TOO_LARGE";
2096
+ PROVIDER_BILLING: "PROVIDER_BILLING";
2097
+ PROVIDER_ORDERING: "PROVIDER_ORDERING";
2098
+ PROVIDER_WEB_SEARCH: "PROVIDER_WEB_SEARCH";
2099
+ PROVIDER_NOT_CONFIGURED: "PROVIDER_NOT_CONFIGURED";
2100
+ PROVIDER_INVALID_KEY: "PROVIDER_INVALID_KEY";
2101
+ MANAGED_KEY_INVALID: "MANAGED_KEY_INVALID";
2102
+ CONTEXT_TOO_LARGE: "CONTEXT_TOO_LARGE";
2103
+ BUDGET_YIELD_UNRECOVERED: "BUDGET_YIELD_UNRECOVERED";
2104
+ MAX_TOKENS_REACHED: "MAX_TOKENS_REACHED";
2105
+ CONVERSATION_ABORTED: "CONVERSATION_ABORTED";
2106
+ CONVERSATION_PROCESSING_FAILED: "CONVERSATION_PROCESSING_FAILED";
2107
+ DISK_SPACE_CRITICAL: "DISK_SPACE_CRITICAL";
2108
+ UNKNOWN: "UNKNOWN";
2109
+ }>;
2110
+ userMessage: z.ZodString;
2111
+ errorCategory: z.ZodOptional<z.ZodString>;
2112
+ }, z.core.$strip>;
2113
+
2694
2114
  export declare interface ConversationRow {
2695
2115
  id: string;
2696
2116
  title: string | null;
@@ -2735,8 +2155,20 @@ export declare interface ConversationRow {
2735
2155
  */
2736
2156
  export declare type ConversationsClearedContext = BaseHookContext;
2737
2157
 
2158
+ declare type _ConversationsServerMessages = AssistantStatusEvent | GenerationCancelledEvent | GenerationHandoffEvent | ModelInfoEvent | HistoryResponse | UndoComplete | UsageUpdateEvent | UsageProgressEvent | UsageResponse | ContextCompactedEvent | CompactionCircuitOpenEvent | CompactionCircuitClosedEvent | ConversationErrorEvent | ConversationNoticeEvent | ConversationInfo | ConversationTitleUpdatedEvent | ConversationListResponse | ConversationListInvalidatedEvent | ScheduleConversationCreatedEvent | OpenConversationEvent;
2159
+
2160
+ declare type ConversationTitleUpdatedEvent = z.infer<typeof ConversationTitleUpdatedEventSchema>;
2161
+
2162
+ declare const ConversationTitleUpdatedEventSchema: z.ZodObject<{
2163
+ type: z.ZodLiteral<"conversation_title_updated">;
2164
+ conversationId: z.ZodString;
2165
+ title: z.ZodString;
2166
+ }, z.core.$strip>;
2167
+
2168
+ declare type ConversationType = "standard" | "background" | "scheduled";
2169
+
2738
2170
  /** Read-side alias of {@link ConversationCreateType}. */
2739
- declare type ConversationType = ConversationCreateType;
2171
+ declare type ConversationType_2 = ConversationCreateType;
2740
2172
 
2741
2173
  /** Create a live voice connection bound to the caller's `send` transport. */
2742
2174
  export declare function createLiveVoiceConnection(options: {
@@ -2787,9 +2219,113 @@ declare interface DiffInfo {
2787
2219
  isNewFile: boolean;
2788
2220
  }
2789
2221
 
2222
+ declare type DiskPressureStatusChangedEvent = z.infer<typeof DiskPressureStatusChangedEventSchema>;
2223
+
2224
+ declare const DiskPressureStatusChangedEventSchema: z.ZodObject<{
2225
+ type: z.ZodLiteral<"disk_pressure_status_changed">;
2226
+ status: z.ZodObject<{
2227
+ enabled: z.ZodBoolean;
2228
+ state: z.ZodEnum<{
2229
+ unknown: "unknown";
2230
+ disabled: "disabled";
2231
+ critical: "critical";
2232
+ warning: "warning";
2233
+ ok: "ok";
2234
+ }>;
2235
+ locked: z.ZodBoolean;
2236
+ acknowledged: z.ZodBoolean;
2237
+ overrideActive: z.ZodBoolean;
2238
+ effectivelyLocked: z.ZodBoolean;
2239
+ lockId: z.ZodNullable<z.ZodString>;
2240
+ usagePercent: z.ZodNullable<z.ZodNumber>;
2241
+ thresholdPercent: z.ZodNumber;
2242
+ path: z.ZodNullable<z.ZodString>;
2243
+ lastCheckedAt: z.ZodNullable<z.ZodString>;
2244
+ blockedCapabilities: z.ZodArray<z.ZodEnum<{
2245
+ "agent-turns": "agent-turns";
2246
+ "background-work": "background-work";
2247
+ "remote-ingress": "remote-ingress";
2248
+ }>>;
2249
+ error: z.ZodNullable<z.ZodString>;
2250
+ }, z.core.$strip>;
2251
+ }, z.core.$strip>;
2252
+
2790
2253
  /** Distributive Omit that preserves union discrimination. */
2791
2254
  declare type DistributiveOmit<T, K extends PropertyKey> = T extends unknown ? Omit<T, K> : never;
2792
2255
 
2256
+ declare type DocumentCommentCreatedEvent = z.infer<typeof DocumentCommentCreatedEventSchema>;
2257
+
2258
+ declare const DocumentCommentCreatedEventSchema: z.ZodObject<{
2259
+ type: z.ZodLiteral<"document_comment_created">;
2260
+ conversationId: z.ZodString;
2261
+ surfaceId: z.ZodString;
2262
+ comment: z.ZodObject<{
2263
+ id: z.ZodString;
2264
+ surfaceId: z.ZodString;
2265
+ author: z.ZodString;
2266
+ content: z.ZodString;
2267
+ anchorStart: z.ZodOptional<z.ZodNumber>;
2268
+ anchorEnd: z.ZodOptional<z.ZodNumber>;
2269
+ anchorText: z.ZodOptional<z.ZodString>;
2270
+ parentCommentId: z.ZodOptional<z.ZodString>;
2271
+ status: z.ZodString;
2272
+ createdAt: z.ZodNumber;
2273
+ updatedAt: z.ZodNumber;
2274
+ }, z.core.$strip>;
2275
+ }, z.core.$strip>;
2276
+
2277
+ declare type DocumentCommentDeletedEvent = z.infer<typeof DocumentCommentDeletedEventSchema>;
2278
+
2279
+ declare const DocumentCommentDeletedEventSchema: z.ZodObject<{
2280
+ type: z.ZodLiteral<"document_comment_deleted">;
2281
+ conversationId: z.ZodString;
2282
+ surfaceId: z.ZodString;
2283
+ commentId: z.ZodString;
2284
+ }, z.core.$strip>;
2285
+
2286
+ declare type DocumentCommentReopenedEvent = z.infer<typeof DocumentCommentReopenedEventSchema>;
2287
+
2288
+ declare const DocumentCommentReopenedEventSchema: z.ZodObject<{
2289
+ type: z.ZodLiteral<"document_comment_reopened">;
2290
+ conversationId: z.ZodString;
2291
+ surfaceId: z.ZodString;
2292
+ commentId: z.ZodString;
2293
+ }, z.core.$strip>;
2294
+
2295
+ declare type DocumentCommentResolvedEvent = z.infer<typeof DocumentCommentResolvedEventSchema>;
2296
+
2297
+ declare const DocumentCommentResolvedEventSchema: z.ZodObject<{
2298
+ type: z.ZodLiteral<"document_comment_resolved">;
2299
+ conversationId: z.ZodString;
2300
+ surfaceId: z.ZodString;
2301
+ commentId: z.ZodString;
2302
+ resolvedBy: z.ZodString;
2303
+ }, z.core.$strip>;
2304
+
2305
+ declare type _DocumentCommentsServerMessages = DocumentCommentCreatedEvent | DocumentCommentResolvedEvent | DocumentCommentReopenedEvent | DocumentCommentDeletedEvent;
2306
+
2307
+ declare type DocumentEditorShowEvent = z.infer<typeof DocumentEditorShowEventSchema>;
2308
+
2309
+ declare const DocumentEditorShowEventSchema: z.ZodObject<{
2310
+ type: z.ZodLiteral<"document_editor_show">;
2311
+ conversationId: z.ZodString;
2312
+ surfaceId: z.ZodString;
2313
+ title: z.ZodString;
2314
+ initialContent: z.ZodString;
2315
+ }, z.core.$strip>;
2316
+
2317
+ declare type DocumentEditorUpdateEvent = z.infer<typeof DocumentEditorUpdateEventSchema>;
2318
+
2319
+ declare const DocumentEditorUpdateEventSchema: z.ZodObject<{
2320
+ type: z.ZodLiteral<"document_editor_update">;
2321
+ conversationId: z.ZodString;
2322
+ surfaceId: z.ZodString;
2323
+ markdown: z.ZodString;
2324
+ mode: z.ZodString;
2325
+ }, z.core.$strip>;
2326
+
2327
+ declare type _DocumentsServerMessages = DocumentEditorShowEvent | DocumentEditorUpdateEvent;
2328
+
2793
2329
  /**
2794
2330
  * Whether the given model or profile can process image input.
2795
2331
  *
@@ -2821,6 +2357,18 @@ declare type EmbeddingInput = string | MultimodalEmbeddingInput;
2821
2357
  */
2822
2358
  declare type EmbeddingTargetType = Parameters<embedAndUpsert_2>[1];
2823
2359
 
2360
+ declare type ErrorEvent_2 = z.infer<typeof ErrorEventSchema>;
2361
+
2362
+ declare const ErrorEventSchema: z.ZodObject<{
2363
+ type: z.ZodLiteral<"error">;
2364
+ message: z.ZodString;
2365
+ code: z.ZodOptional<z.ZodString>;
2366
+ category: z.ZodOptional<z.ZodString>;
2367
+ errorCategory: z.ZodOptional<z.ZodString>;
2368
+ requestId: z.ZodOptional<z.ZodString>;
2369
+ conversationId: z.ZodOptional<z.ZodString>;
2370
+ }, z.core.$strip>;
2371
+
2824
2372
  export declare function extractTextFromStoredMessageContent(raw: string | ContentBlock[]): string;
2825
2373
 
2826
2374
  export declare interface FileContent {
@@ -2838,6 +2386,39 @@ export declare interface FileContent {
2838
2386
  _attachmentId?: string;
2839
2387
  }
2840
2388
 
2389
+ declare type GenerationCancelledEvent = z.infer<typeof GenerationCancelledEventSchema>;
2390
+
2391
+ declare const GenerationCancelledEventSchema: z.ZodObject<{
2392
+ type: z.ZodLiteral<"generation_cancelled">;
2393
+ conversationId: z.ZodOptional<z.ZodString>;
2394
+ }, z.core.$strip>;
2395
+
2396
+ declare type GenerationHandoffEvent = z.infer<typeof GenerationHandoffEventSchema>;
2397
+
2398
+ declare const GenerationHandoffEventSchema: z.ZodObject<{
2399
+ type: z.ZodLiteral<"generation_handoff">;
2400
+ conversationId: z.ZodOptional<z.ZodString>;
2401
+ requestId: z.ZodOptional<z.ZodString>;
2402
+ queuedCount: z.ZodNumber;
2403
+ messageId: z.ZodOptional<z.ZodString>;
2404
+ attachments: z.ZodOptional<z.ZodArray<z.ZodObject<{
2405
+ id: z.ZodOptional<z.ZodString>;
2406
+ filename: z.ZodString;
2407
+ mimeType: z.ZodString;
2408
+ data: z.ZodString;
2409
+ sourceType: z.ZodOptional<z.ZodEnum<{
2410
+ host_file: "host_file";
2411
+ sandbox_file: "sandbox_file";
2412
+ tool_block: "tool_block";
2413
+ }>>;
2414
+ sizeBytes: z.ZodOptional<z.ZodNumber>;
2415
+ thumbnailData: z.ZodOptional<z.ZodString>;
2416
+ fileBacked: z.ZodOptional<z.ZodBoolean>;
2417
+ filePath: z.ZodOptional<z.ZodString>;
2418
+ }, z.core.$strip>>>;
2419
+ attachmentWarnings: z.ZodOptional<z.ZodArray<z.ZodString>>;
2420
+ }, z.core.$strip>;
2421
+
2841
2422
  /** Read the assistant's name from IDENTITY.md for personalized responses. */
2842
2423
  export declare function getAssistantName(): string | null;
2843
2424
 
@@ -2909,6 +2490,125 @@ declare interface GraphNodeSweepResult {
2909
2490
  /** Whether the text tokenizes to at least one lexical search token. */
2910
2491
  export declare function hasLexicalTokens(text: string): Promise<boolean>;
2911
2492
 
2493
+ declare type HeartbeatAlertEvent = z.infer<typeof HeartbeatAlertEventSchema>;
2494
+
2495
+ declare const HeartbeatAlertEventSchema: z.ZodObject<{
2496
+ type: z.ZodLiteral<"heartbeat_alert">;
2497
+ title: z.ZodString;
2498
+ body: z.ZodString;
2499
+ }, z.core.$strip>;
2500
+
2501
+ declare type HeartbeatConversationCreatedEvent = z.infer<typeof HeartbeatConversationCreatedEventSchema>;
2502
+
2503
+ declare const HeartbeatConversationCreatedEventSchema: z.ZodObject<{
2504
+ type: z.ZodLiteral<"heartbeat_conversation_created">;
2505
+ conversationId: z.ZodString;
2506
+ title: z.ZodString;
2507
+ }, z.core.$strip>;
2508
+
2509
+ declare interface HistoryResponse {
2510
+ type: "history_response";
2511
+ conversationId: string;
2512
+ messages: Array<{
2513
+ /** Database ID used by clients for the rendered message. */
2514
+ id?: string;
2515
+ role: string;
2516
+ text: string;
2517
+ timestamp: number;
2518
+ toolCalls?: HistoryResponseToolCall[];
2519
+ /** True when tool_use blocks appeared before any text block in the original content. */
2520
+ toolCallsBeforeText?: boolean;
2521
+ attachments?: UserMessageAttachment[];
2522
+ /** Text segments split by tool-call boundaries. Preserves interleaving order. */
2523
+ textSegments?: string[];
2524
+ /** Content block ordering using "text:N", "tool:N", "surface:N" encoding. */
2525
+ contentOrder?: string[];
2526
+ /** UI surfaces (widgets) embedded in the message. */
2527
+ surfaces?: HistoryResponseSurface[];
2528
+ /** Present when this message is a subagent lifecycle notification (running/completed/failed/aborted). */
2529
+ subagentNotification?: {
2530
+ subagentId: string;
2531
+ label: string;
2532
+ status: "running" | "completed" | "failed" | "aborted";
2533
+ error?: string;
2534
+ conversationId?: string;
2535
+ objective?: string;
2536
+ };
2537
+ /** True when text or tool result content was truncated due to maxTextChars/maxToolResultChars. */
2538
+ wasTruncated?: boolean;
2539
+ }>;
2540
+ /** Whether older messages exist beyond the returned page. */
2541
+ hasMore: boolean;
2542
+ /** Timestamp of the oldest message in the response (client uses as next pagination cursor). */
2543
+ oldestTimestamp?: number;
2544
+ /** ID of the oldest message in the response (tie-breaker for same-millisecond cursors). */
2545
+ oldestMessageId?: string;
2546
+ }
2547
+
2548
+ declare interface HistoryResponseSurface {
2549
+ surfaceId: string;
2550
+ surfaceType: string;
2551
+ title?: string;
2552
+ data: Record<string, unknown>;
2553
+ actions?: Array<{
2554
+ id: string;
2555
+ label: string;
2556
+ style?: string;
2557
+ data?: Record<string, unknown>;
2558
+ }>;
2559
+ display?: string;
2560
+ /** True when the surface was completed (e.g. form submitted, action taken). */
2561
+ completed?: boolean;
2562
+ /** Human-readable summary shown in the completion chip. */
2563
+ completionSummary?: string;
2564
+ }
2565
+
2566
+ declare interface HistoryResponseToolCall {
2567
+ name: string;
2568
+ input: Record<string, unknown>;
2569
+ result?: string;
2570
+ isError?: boolean;
2571
+ /** Base64-encoded image data from tool contentBlocks (e.g. browser_screenshot). @deprecated Use imageDataList. */
2572
+ imageData?: string;
2573
+ /** Base64-encoded image data from tool contentBlocks (e.g. browser_screenshot, image generation). */
2574
+ imageDataList?: string[];
2575
+ /** Workspace attachment ids for tool-result images persisted as references; clients fetch bytes by id on render instead of embedding base64. */
2576
+ imageAttachmentIds?: string[];
2577
+ /** Unix ms when the tool started executing. */
2578
+ startedAt?: number;
2579
+ /** Unix ms when the tool completed. */
2580
+ completedAt?: number;
2581
+ /** Confirmation decision for this tool call: "approved" | "denied" | "timed_out". */
2582
+ confirmationDecision?: string;
2583
+ /** Friendly label for the confirmation (e.g. "Edit File", "Run Command"). */
2584
+ confirmationLabel?: string;
2585
+ /** Risk level at the time of invocation ("low" | "medium" | "high" | "unknown"). */
2586
+ riskLevel?: string;
2587
+ /** Human-readable reason for the risk classification. */
2588
+ riskReason?: string;
2589
+ /**
2590
+ * @deprecated Use `approvalMode` and `approvalReason` instead.
2591
+ * Kept for backward compatibility during the migration window.
2592
+ */
2593
+ autoApproved?: boolean;
2594
+ /** How the approval decision was reached: prompted, auto, blocked, or unknown (legacy). */
2595
+ approvalMode?: string;
2596
+ /** Why the approval decision was reached (stable enum for client display). */
2597
+ approvalReason?: string;
2598
+ /** Snapshot of the auto-approve threshold at execution time. */
2599
+ riskThreshold?: string;
2600
+ }
2601
+
2602
+ declare type HomeFeedUpdatedEvent = z.infer<typeof HomeFeedUpdatedEventSchema>;
2603
+
2604
+ declare const HomeFeedUpdatedEventSchema: z.ZodObject<{
2605
+ type: z.ZodLiteral<"home_feed_updated">;
2606
+ updatedAt: z.ZodString;
2607
+ newItemCount: z.ZodNumber;
2608
+ }, z.core.$strip>;
2609
+
2610
+ declare type _HomeServerMessages = RelationshipStateUpdatedEvent | HomeFeedUpdatedEvent;
2611
+
2912
2612
  /**
2913
2613
  * Emit a `hook_event` to any UI watching the conversation the hook runs in —
2914
2614
  * e.g. progress while the hook does work the user can feel (memory
@@ -2923,6 +2623,22 @@ export declare function hasLexicalTokens(text: string): Promise<boolean>;
2923
2623
  */
2924
2624
  export declare type HookBroadcast = (detail: Record<string, unknown>) => void;
2925
2625
 
2626
+ declare type HookEvent = z.infer<typeof HookEventSchema>;
2627
+
2628
+ declare const HookEventSchema: z.ZodObject<{
2629
+ type: z.ZodLiteral<"hook_event">;
2630
+ conversationId: z.ZodOptional<z.ZodString>;
2631
+ hookName: z.ZodString;
2632
+ owner: z.ZodObject<{
2633
+ kind: z.ZodEnum<{
2634
+ plugin: "plugin";
2635
+ workspace: "workspace";
2636
+ }>;
2637
+ id: z.ZodString;
2638
+ }, z.core.$strip>;
2639
+ detail: z.ZodRecord<z.ZodString, z.ZodUnknown>;
2640
+ }, z.core.$strip>;
2641
+
2926
2642
  /**
2927
2643
  * A plugin lifecycle hook. Receives a per-lifecycle context shape and may
2928
2644
  * either mutate `ctx` in place (returning `void`) or return a *partial*
@@ -2999,8 +2715,279 @@ export declare const HOOKS: {
2999
2715
  */
3000
2716
  declare const HOST_PROXY_CAPABILITIES: readonly ["host_bash", "host_file", "host_cu", "host_browser", "host_app_control", "host_ui_snapshot"];
3001
2717
 
2718
+ declare type HostAppControlCancelEvent = z.infer<typeof HostAppControlCancelEventSchema>;
2719
+
2720
+ declare const HostAppControlCancelEventSchema: z.ZodObject<{
2721
+ type: z.ZodLiteral<"host_app_control_cancel">;
2722
+ requestId: z.ZodString;
2723
+ conversationId: z.ZodString;
2724
+ }, z.core.$strip>;
2725
+
2726
+ declare type HostAppControlRequestEvent = z.infer<typeof HostAppControlRequestEventSchema>;
2727
+
2728
+ declare const HostAppControlRequestEventSchema: z.ZodObject<{
2729
+ type: z.ZodLiteral<"host_app_control_request">;
2730
+ requestId: z.ZodString;
2731
+ conversationId: z.ZodString;
2732
+ toolName: z.ZodString;
2733
+ input: z.ZodDiscriminatedUnion<[z.ZodObject<{
2734
+ tool: z.ZodLiteral<"start">;
2735
+ app: z.ZodString;
2736
+ args: z.ZodOptional<z.ZodArray<z.ZodString>>;
2737
+ }, z.core.$strip>, z.ZodObject<{
2738
+ tool: z.ZodLiteral<"observe">;
2739
+ app: z.ZodString;
2740
+ settle_ms: z.ZodOptional<z.ZodNumber>;
2741
+ }, z.core.$strip>, z.ZodObject<{
2742
+ tool: z.ZodLiteral<"press">;
2743
+ app: z.ZodString;
2744
+ key: z.ZodString;
2745
+ modifiers: z.ZodOptional<z.ZodArray<z.ZodString>>;
2746
+ duration_ms: z.ZodOptional<z.ZodNumber>;
2747
+ }, z.core.$strip>, z.ZodObject<{
2748
+ tool: z.ZodLiteral<"combo">;
2749
+ app: z.ZodString;
2750
+ keys: z.ZodArray<z.ZodString>;
2751
+ duration_ms: z.ZodOptional<z.ZodNumber>;
2752
+ }, z.core.$strip>, z.ZodObject<{
2753
+ tool: z.ZodLiteral<"sequence">;
2754
+ app: z.ZodString;
2755
+ steps: z.ZodArray<z.ZodObject<{
2756
+ key: z.ZodString;
2757
+ modifiers: z.ZodOptional<z.ZodArray<z.ZodString>>;
2758
+ duration_ms: z.ZodOptional<z.ZodNumber>;
2759
+ gap_ms: z.ZodOptional<z.ZodNumber>;
2760
+ }, z.core.$strip>>;
2761
+ }, z.core.$strip>, z.ZodObject<{
2762
+ tool: z.ZodLiteral<"type">;
2763
+ app: z.ZodString;
2764
+ text: z.ZodString;
2765
+ }, z.core.$strip>, z.ZodObject<{
2766
+ tool: z.ZodLiteral<"click">;
2767
+ app: z.ZodString;
2768
+ x: z.ZodNumber;
2769
+ y: z.ZodNumber;
2770
+ button: z.ZodOptional<z.ZodEnum<{
2771
+ left: "left";
2772
+ right: "right";
2773
+ middle: "middle";
2774
+ }>>;
2775
+ double: z.ZodOptional<z.ZodBoolean>;
2776
+ }, z.core.$strip>, z.ZodObject<{
2777
+ tool: z.ZodLiteral<"drag">;
2778
+ app: z.ZodString;
2779
+ from_x: z.ZodNumber;
2780
+ from_y: z.ZodNumber;
2781
+ to_x: z.ZodNumber;
2782
+ to_y: z.ZodNumber;
2783
+ button: z.ZodOptional<z.ZodEnum<{
2784
+ left: "left";
2785
+ right: "right";
2786
+ middle: "middle";
2787
+ }>>;
2788
+ }, z.core.$strip>, z.ZodObject<{
2789
+ tool: z.ZodLiteral<"stop">;
2790
+ app: z.ZodOptional<z.ZodString>;
2791
+ reason: z.ZodOptional<z.ZodString>;
2792
+ }, z.core.$strip>], "tool">;
2793
+ }, z.core.$strip>;
2794
+
2795
+ declare type _HostAppControlServerMessages = HostAppControlRequestEvent | HostAppControlCancelEvent;
2796
+
2797
+ declare type HostBashCancelEvent = z.infer<typeof HostBashCancelEventSchema>;
2798
+
2799
+ declare const HostBashCancelEventSchema: z.ZodObject<{
2800
+ type: z.ZodLiteral<"host_bash_cancel">;
2801
+ requestId: z.ZodString;
2802
+ conversationId: z.ZodString;
2803
+ targetClientId: z.ZodOptional<z.ZodString>;
2804
+ }, z.core.$strip>;
2805
+
2806
+ declare type HostBashRequestEvent = z.infer<typeof HostBashRequestEventSchema>;
2807
+
2808
+ declare const HostBashRequestEventSchema: z.ZodObject<{
2809
+ type: z.ZodLiteral<"host_bash_request">;
2810
+ requestId: z.ZodString;
2811
+ conversationId: z.ZodString;
2812
+ command: z.ZodString;
2813
+ working_dir: z.ZodOptional<z.ZodString>;
2814
+ timeout_seconds: z.ZodOptional<z.ZodNumber>;
2815
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2816
+ targetClientId: z.ZodOptional<z.ZodString>;
2817
+ }, z.core.$strip>;
2818
+
2819
+ declare type _HostBashServerMessages = HostBashRequestEvent | HostBashCancelEvent;
2820
+
2821
+ declare type HostBrowserCancelEvent = z.infer<typeof HostBrowserCancelEventSchema>;
2822
+
2823
+ declare const HostBrowserCancelEventSchema: z.ZodObject<{
2824
+ type: z.ZodLiteral<"host_browser_cancel">;
2825
+ requestId: z.ZodString;
2826
+ }, z.core.$strip>;
2827
+
2828
+ declare type HostBrowserRequestEvent = z.infer<typeof HostBrowserRequestEventSchema>;
2829
+
2830
+ declare const HostBrowserRequestEventSchema: z.ZodObject<{
2831
+ type: z.ZodLiteral<"host_browser_request">;
2832
+ requestId: z.ZodString;
2833
+ conversationId: z.ZodString;
2834
+ cdpMethod: z.ZodString;
2835
+ cdpParams: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2836
+ cdpSessionId: z.ZodOptional<z.ZodString>;
2837
+ timeout_seconds: z.ZodOptional<z.ZodNumber>;
2838
+ }, z.core.$strip>;
2839
+
2840
+ declare type _HostBrowserServerMessages = HostBrowserRequestEvent | HostBrowserCancelEvent;
2841
+
2842
+ declare type HostCuCancelEvent = z.infer<typeof HostCuCancelEventSchema>;
2843
+
2844
+ declare const HostCuCancelEventSchema: z.ZodObject<{
2845
+ type: z.ZodLiteral<"host_cu_cancel">;
2846
+ requestId: z.ZodString;
2847
+ conversationId: z.ZodString;
2848
+ targetClientId: z.ZodOptional<z.ZodString>;
2849
+ }, z.core.$strip>;
2850
+
2851
+ declare type HostCuRequestEvent = z.infer<typeof HostCuRequestEventSchema>;
2852
+
2853
+ declare const HostCuRequestEventSchema: z.ZodObject<{
2854
+ type: z.ZodLiteral<"host_cu_request">;
2855
+ requestId: z.ZodString;
2856
+ conversationId: z.ZodString;
2857
+ targetClientId: z.ZodOptional<z.ZodString>;
2858
+ toolName: z.ZodString;
2859
+ input: z.ZodRecord<z.ZodString, z.ZodUnknown>;
2860
+ stepNumber: z.ZodNumber;
2861
+ reasoning: z.ZodOptional<z.ZodString>;
2862
+ }, z.core.$strip>;
2863
+
2864
+ declare type _HostCuServerMessages = HostCuRequestEvent | HostCuCancelEvent;
2865
+
2866
+ declare type HostFileCancelEvent = z.infer<typeof HostFileCancelEventSchema>;
2867
+
2868
+ declare const HostFileCancelEventSchema: z.ZodObject<{
2869
+ type: z.ZodLiteral<"host_file_cancel">;
2870
+ requestId: z.ZodString;
2871
+ conversationId: z.ZodString;
2872
+ targetClientId: z.ZodOptional<z.ZodString>;
2873
+ }, z.core.$strip>;
2874
+
2875
+ declare type HostFileRequestEvent = z.infer<typeof HostFileRequestEventSchema>;
2876
+
2877
+ declare const HostFileRequestEventSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
2878
+ type: z.ZodLiteral<"host_file_request">;
2879
+ requestId: z.ZodString;
2880
+ conversationId: z.ZodString;
2881
+ targetClientId: z.ZodOptional<z.ZodString>;
2882
+ operation: z.ZodLiteral<"read">;
2883
+ path: z.ZodString;
2884
+ offset: z.ZodOptional<z.ZodNumber>;
2885
+ limit: z.ZodOptional<z.ZodNumber>;
2886
+ }, z.core.$strip>, z.ZodObject<{
2887
+ type: z.ZodLiteral<"host_file_request">;
2888
+ requestId: z.ZodString;
2889
+ conversationId: z.ZodString;
2890
+ targetClientId: z.ZodOptional<z.ZodString>;
2891
+ operation: z.ZodLiteral<"write">;
2892
+ path: z.ZodString;
2893
+ content: z.ZodString;
2894
+ }, z.core.$strip>, z.ZodObject<{
2895
+ type: z.ZodLiteral<"host_file_request">;
2896
+ requestId: z.ZodString;
2897
+ conversationId: z.ZodString;
2898
+ targetClientId: z.ZodOptional<z.ZodString>;
2899
+ operation: z.ZodLiteral<"edit">;
2900
+ path: z.ZodString;
2901
+ old_string: z.ZodString;
2902
+ new_string: z.ZodString;
2903
+ replace_all: z.ZodOptional<z.ZodBoolean>;
2904
+ }, z.core.$strip>], "operation">;
2905
+
2906
+ declare type _HostFileServerMessages = HostFileRequestEvent | HostFileCancelEvent;
2907
+
3002
2908
  declare type HostProxyCapability = (typeof HOST_PROXY_CAPABILITIES)[number];
3003
2909
 
2910
+ declare type HostTransferCancelEvent = z.infer<typeof HostTransferCancelEventSchema>;
2911
+
2912
+ declare const HostTransferCancelEventSchema: z.ZodObject<{
2913
+ type: z.ZodLiteral<"host_transfer_cancel">;
2914
+ requestId: z.ZodString;
2915
+ conversationId: z.ZodString;
2916
+ targetClientId: z.ZodOptional<z.ZodString>;
2917
+ }, z.core.$strip>;
2918
+
2919
+ declare type HostTransferRequestEvent = z.infer<typeof HostTransferRequestEventSchema>;
2920
+
2921
+ declare const HostTransferRequestEventSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
2922
+ type: z.ZodLiteral<"host_transfer_request">;
2923
+ requestId: z.ZodString;
2924
+ conversationId: z.ZodString;
2925
+ targetClientId: z.ZodOptional<z.ZodString>;
2926
+ direction: z.ZodLiteral<"to_host">;
2927
+ transferId: z.ZodString;
2928
+ destPath: z.ZodString;
2929
+ sizeBytes: z.ZodNumber;
2930
+ sha256: z.ZodString;
2931
+ overwrite: z.ZodBoolean;
2932
+ }, z.core.$strip>, z.ZodObject<{
2933
+ type: z.ZodLiteral<"host_transfer_request">;
2934
+ requestId: z.ZodString;
2935
+ conversationId: z.ZodString;
2936
+ targetClientId: z.ZodOptional<z.ZodString>;
2937
+ direction: z.ZodLiteral<"to_sandbox">;
2938
+ transferId: z.ZodString;
2939
+ sourcePath: z.ZodString;
2940
+ }, z.core.$strip>], "direction">;
2941
+
2942
+ declare type _HostTransferServerMessages = HostTransferRequestEvent | HostTransferCancelEvent;
2943
+
2944
+ declare type HostUiSnapshotCancelEvent = z.infer<typeof HostUiSnapshotCancelEventSchema>;
2945
+
2946
+ declare const HostUiSnapshotCancelEventSchema: z.ZodObject<{
2947
+ type: z.ZodLiteral<"host_ui_snapshot_cancel">;
2948
+ requestId: z.ZodString;
2949
+ }, z.core.$strip>;
2950
+
2951
+ declare type HostUiSnapshotRequestEvent = z.infer<typeof HostUiSnapshotRequestEventSchema>;
2952
+
2953
+ declare const HostUiSnapshotRequestEventSchema: z.ZodObject<{
2954
+ type: z.ZodLiteral<"host_ui_snapshot_request">;
2955
+ requestId: z.ZodString;
2956
+ view: z.ZodEnum<{
2957
+ sampler: "sampler";
2958
+ chat: "chat";
2959
+ }>;
2960
+ tokens: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2961
+ }, z.core.$strip>;
2962
+
2963
+ declare type _HostUiSnapshotServerMessages = HostUiSnapshotRequestEvent | HostUiSnapshotCancelEvent;
2964
+
2965
+ declare type IdentityChangedEvent = z.infer<typeof IdentityChangedEventSchema>;
2966
+
2967
+ declare const IdentityChangedEventSchema: z.ZodObject<{
2968
+ type: z.ZodLiteral<"identity_changed">;
2969
+ name: z.ZodString;
2970
+ role: z.ZodString;
2971
+ personality: z.ZodString;
2972
+ emoji: z.ZodString;
2973
+ home: z.ZodString;
2974
+ }, z.core.$strip>;
2975
+
2976
+ declare interface IdentityGetResponse {
2977
+ type: "identity_get_response";
2978
+ /** Whether an IDENTITY.md file was found. When false, all fields are empty defaults. */
2979
+ found: boolean;
2980
+ name: string;
2981
+ role: string;
2982
+ personality: string;
2983
+ emoji: string;
2984
+ home: string;
2985
+ version?: string;
2986
+ assistantId?: string;
2987
+ createdAt?: string;
2988
+ originSystem?: string;
2989
+ }
2990
+
3004
2991
  export declare interface ImageContent {
3005
2992
  type: "image";
3006
2993
  source: MediaSource_2;
@@ -3055,6 +3042,24 @@ declare interface InsertedMessage {
3055
3042
  deduplicated: boolean;
3056
3043
  }
3057
3044
 
3045
+ declare type _IntegrationsServerMessages = ChannelVerificationSessionResponse | OAuthConnectResultEvent | OpenUrlEvent | OpenPanelEvent | NavigateSettingsEvent | ShowPlatformLoginEvent | PlatformDisconnectedEvent;
3046
+
3047
+ declare type InteractionResolvedEvent = z.infer<typeof InteractionResolvedEventSchema>;
3048
+
3049
+ declare const InteractionResolvedEventSchema: z.ZodObject<{
3050
+ type: z.ZodLiteral<"interaction_resolved">;
3051
+ requestId: z.ZodString;
3052
+ conversationId: z.ZodString;
3053
+ state: z.ZodEnum<{
3054
+ cancelled: "cancelled";
3055
+ superseded: "superseded";
3056
+ approved: "approved";
3057
+ rejected: "rejected";
3058
+ answered: "answered";
3059
+ }>;
3060
+ kind: z.ZodString;
3061
+ }, z.core.$strip>;
3062
+
3058
3063
  declare const INTERFACE_IDS: readonly ["macos", "ios", "cli", "telegram", "phone", "web", "whatsapp", "slack", "email", "chrome-extension", "a2a", "route"];
3059
3064
 
3060
3065
  declare type InterfaceId = (typeof INTERFACE_IDS)[number];
@@ -3135,7 +3140,7 @@ export declare function lastToolResultUserMessageIndex(history: Message[]): numb
3135
3140
  export declare function listCatalogSkills(): Promise<ResolvedSkillEntry[]>;
3136
3141
 
3137
3142
  /** List conversation rows, newest first. */
3138
- export declare function listConversations(limit?: number, conversationType?: ConversationType, offset?: number, archiveStatus?: ArchiveStatusFilter, originChannel?: string): Promise<ConversationRow[]>;
3143
+ export declare function listConversations(limit?: number, conversationType?: ConversationType_2, offset?: number, archiveStatus?: ArchiveStatusFilter, originChannel?: string): Promise<ConversationRow[]>;
3139
3144
 
3140
3145
  /**
3141
3146
  * The locally installed skill catalog with resolved states. Includes every
@@ -3402,13 +3407,97 @@ declare const LLMCallSiteEnum: z.ZodEnum<{
3402
3407
  workflowLeaf: "workflowLeaf";
3403
3408
  }>;
3404
3409
 
3405
- declare type MediaSource_2 = Base64MediaSource | WorkspaceRefMediaSource;
3410
+ declare type MediaSource_2 = Base64MediaSource | WorkspaceRefMediaSource;
3411
+
3412
+ declare type MemoryRecalledEvent = z.infer<typeof MemoryRecalledEventSchema>;
3413
+
3414
+ declare const MemoryRecalledEventSchema: z.ZodObject<{
3415
+ type: z.ZodLiteral<"memory_recalled">;
3416
+ provider: z.ZodString;
3417
+ model: z.ZodString;
3418
+ degradation: z.ZodOptional<z.ZodObject<{
3419
+ semanticUnavailable: z.ZodBoolean;
3420
+ reason: z.ZodString;
3421
+ fallbackSources: z.ZodArray<z.ZodString>;
3422
+ }, z.core.$strip>>;
3423
+ semanticHits: z.ZodNumber;
3424
+ tier1Count: z.ZodNumber;
3425
+ tier2Count: z.ZodNumber;
3426
+ hybridSearchLatencyMs: z.ZodNumber;
3427
+ sparseVectorUsed: z.ZodBoolean;
3428
+ mergedCount: z.ZodNumber;
3429
+ selectedCount: z.ZodNumber;
3430
+ injectedTokens: z.ZodNumber;
3431
+ latencyMs: z.ZodNumber;
3432
+ topCandidates: z.ZodArray<z.ZodObject<{
3433
+ key: z.ZodString;
3434
+ type: z.ZodString;
3435
+ kind: z.ZodString;
3436
+ finalScore: z.ZodNumber;
3437
+ semantic: z.ZodNumber;
3438
+ recency: z.ZodNumber;
3439
+ }, z.core.$strip>>;
3440
+ }, z.core.$strip>;
3441
+
3442
+ declare type _MemoryServerMessages = MemoryRecalledEvent | MemoryStatusEvent;
3443
+
3444
+ declare type MemoryStatusEvent = z.infer<typeof MemoryStatusEventSchema>;
3445
+
3446
+ declare const MemoryStatusEventSchema: z.ZodObject<{
3447
+ type: z.ZodLiteral<"memory_status">;
3448
+ enabled: z.ZodBoolean;
3449
+ degraded: z.ZodBoolean;
3450
+ degradation: z.ZodOptional<z.ZodObject<{
3451
+ semanticUnavailable: z.ZodBoolean;
3452
+ reason: z.ZodString;
3453
+ fallbackSources: z.ZodArray<z.ZodString>;
3454
+ }, z.core.$strip>>;
3455
+ reason: z.ZodOptional<z.ZodString>;
3456
+ provider: z.ZodOptional<z.ZodString>;
3457
+ model: z.ZodOptional<z.ZodString>;
3458
+ }, z.core.$strip>;
3406
3459
 
3407
3460
  export declare interface Message {
3408
3461
  role: "user" | "assistant";
3409
3462
  content: ContentBlock[];
3410
3463
  }
3411
3464
 
3465
+ declare type MessageCompleteEvent = z.infer<typeof MessageCompleteEventSchema>;
3466
+
3467
+ declare const MessageCompleteEventSchema: z.ZodObject<{
3468
+ type: z.ZodLiteral<"message_complete">;
3469
+ messageId: z.ZodOptional<z.ZodString>;
3470
+ conversationId: z.ZodOptional<z.ZodString>;
3471
+ source: z.ZodOptional<z.ZodEnum<{
3472
+ main: "main";
3473
+ aux: "aux";
3474
+ }>>;
3475
+ attachments: z.ZodOptional<z.ZodArray<z.ZodObject<{
3476
+ id: z.ZodOptional<z.ZodString>;
3477
+ filename: z.ZodString;
3478
+ mimeType: z.ZodString;
3479
+ data: z.ZodString;
3480
+ sourceType: z.ZodOptional<z.ZodEnum<{
3481
+ host_file: "host_file";
3482
+ sandbox_file: "sandbox_file";
3483
+ tool_block: "tool_block";
3484
+ }>>;
3485
+ sizeBytes: z.ZodOptional<z.ZodNumber>;
3486
+ thumbnailData: z.ZodOptional<z.ZodString>;
3487
+ fileBacked: z.ZodOptional<z.ZodBoolean>;
3488
+ filePath: z.ZodOptional<z.ZodString>;
3489
+ }, z.core.$strip>>>;
3490
+ attachmentWarnings: z.ZodOptional<z.ZodArray<z.ZodString>>;
3491
+ }, z.core.$strip>;
3492
+
3493
+ declare type MessageDequeuedEvent = z.infer<typeof MessageDequeuedEventSchema>;
3494
+
3495
+ declare const MessageDequeuedEventSchema: z.ZodObject<{
3496
+ type: z.ZodLiteral<"message_dequeued">;
3497
+ conversationId: z.ZodString;
3498
+ requestId: z.ZodString;
3499
+ }, z.core.$strip>;
3500
+
3412
3501
  declare type MessageLexicalSearchResult = Awaited<ReturnType<searchMessageIdsLexical_2>>[number];
3413
3502
 
3414
3503
  declare interface MessageLexicalSearchResult_2 {
@@ -3529,6 +3618,32 @@ declare const messageMetadataSchema: z.ZodObject<{
3529
3618
  nonInteractiveContextBlock: z.ZodOptional<z.ZodString>;
3530
3619
  }, z.core.$loose>;
3531
3620
 
3621
+ declare type MessageQueuedDeletedEvent = z.infer<typeof MessageQueuedDeletedEventSchema>;
3622
+
3623
+ declare const MessageQueuedDeletedEventSchema: z.ZodObject<{
3624
+ type: z.ZodLiteral<"message_queued_deleted">;
3625
+ conversationId: z.ZodString;
3626
+ requestId: z.ZodString;
3627
+ }, z.core.$strip>;
3628
+
3629
+ declare type MessageQueuedEvent = z.infer<typeof MessageQueuedEventSchema>;
3630
+
3631
+ declare const MessageQueuedEventSchema: z.ZodObject<{
3632
+ type: z.ZodLiteral<"message_queued">;
3633
+ conversationId: z.ZodString;
3634
+ requestId: z.ZodString;
3635
+ position: z.ZodNumber;
3636
+ }, z.core.$strip>;
3637
+
3638
+ declare type MessageRequestCompleteEvent = z.infer<typeof MessageRequestCompleteEventSchema>;
3639
+
3640
+ declare const MessageRequestCompleteEventSchema: z.ZodObject<{
3641
+ type: z.ZodLiteral<"message_request_complete">;
3642
+ conversationId: z.ZodString;
3643
+ requestId: z.ZodString;
3644
+ runStillActive: z.ZodOptional<z.ZodBoolean>;
3645
+ }, z.core.$strip>;
3646
+
3532
3647
  /** Allowed values for the `role` column on `messages`. */
3533
3648
  declare type MessageRole = "user" | "assistant" | "system";
3534
3649
 
@@ -3550,6 +3665,41 @@ declare interface MessageRow {
3550
3665
  finalized: number;
3551
3666
  }
3552
3667
 
3668
+ declare type _MessagesServerMessages = UserMessageEchoEvent | AssistantTurnStartEvent | AssistantTextDeltaEvent | AssistantThinkingDeltaEvent | ToolUseStartEvent | ToolUsePreviewStartEvent | ToolOutputChunkEvent | ToolInputDeltaEvent | ToolResultEvent | ConfirmationRequestEvent | SecretRequestEvent | QuestionRequestEvent | MessageCompleteEvent | ErrorEvent_2 | MessageQueuedEvent | MessageDequeuedEvent | MessageRequestCompleteEvent | MessageQueuedDeletedEvent | MessageSteeredEvent | ConfirmationStateChangedEvent | AssistantActivityStateEvent | ConversationInferenceProfileUpdatedEvent | InteractionResolvedEvent;
3669
+
3670
+ declare type MessageSteeredEvent = z.infer<typeof MessageSteeredEventSchema>;
3671
+
3672
+ declare const MessageSteeredEventSchema: z.ZodObject<{
3673
+ type: z.ZodLiteral<"message_steered">;
3674
+ conversationId: z.ZodString;
3675
+ requestId: z.ZodString;
3676
+ }, z.core.$strip>;
3677
+
3678
+ declare type ModelInfoEvent = z.infer<typeof ModelInfoEventSchema>;
3679
+
3680
+ declare const ModelInfoEventSchema: z.ZodObject<{
3681
+ type: z.ZodLiteral<"model_info">;
3682
+ conversationId: z.ZodOptional<z.ZodString>;
3683
+ model: z.ZodString;
3684
+ provider: z.ZodString;
3685
+ configuredProviders: z.ZodOptional<z.ZodArray<z.ZodString>>;
3686
+ availableModels: z.ZodOptional<z.ZodArray<z.ZodObject<{
3687
+ id: z.ZodString;
3688
+ displayName: z.ZodString;
3689
+ }, z.core.$strip>>>;
3690
+ allProviders: z.ZodOptional<z.ZodArray<z.ZodObject<{
3691
+ id: z.ZodString;
3692
+ displayName: z.ZodString;
3693
+ models: z.ZodArray<z.ZodObject<{
3694
+ id: z.ZodString;
3695
+ displayName: z.ZodString;
3696
+ }, z.core.$strip>>;
3697
+ defaultModel: z.ZodString;
3698
+ apiKeyUrl: z.ZodOptional<z.ZodString>;
3699
+ apiKeyPlaceholder: z.ZodOptional<z.ZodString>;
3700
+ }, z.core.$strip>>>;
3701
+ }, z.core.$strip>;
3702
+
3553
3703
  /**
3554
3704
  * A workspace inference profile a plugin can route to. Returned by
3555
3705
  * {@link getModelProfiles}; {@link key} is the value a `pre-model-call` hook
@@ -3579,6 +3729,72 @@ export declare interface ModelProfileInfo {
3579
3729
 
3580
3730
  declare type MultimodalEmbeddingInput = TextEmbeddingInput | ImageEmbeddingInput | AudioEmbeddingInput | VideoEmbeddingInput;
3581
3731
 
3732
+ declare type NavigateSettingsEvent = z.infer<typeof NavigateSettingsEventSchema>;
3733
+
3734
+ declare const NavigateSettingsEventSchema: z.ZodObject<{
3735
+ type: z.ZodLiteral<"navigate_settings">;
3736
+ tab: z.ZodString;
3737
+ }, z.core.$strip>;
3738
+
3739
+ declare type NotificationConversationCreatedEvent = z.infer<typeof NotificationConversationCreatedEventSchema>;
3740
+
3741
+ declare const NotificationConversationCreatedEventSchema: z.ZodObject<{
3742
+ type: z.ZodLiteral<"notification_conversation_created">;
3743
+ conversationId: z.ZodString;
3744
+ title: z.ZodString;
3745
+ sourceEventName: z.ZodString;
3746
+ targetGuardianPrincipalId: z.ZodOptional<z.ZodString>;
3747
+ groupId: z.ZodOptional<z.ZodString>;
3748
+ source: z.ZodOptional<z.ZodString>;
3749
+ silent: z.ZodOptional<z.ZodBoolean>;
3750
+ }, z.core.$strip>;
3751
+
3752
+ declare type NotificationIntentEvent = z.infer<typeof NotificationIntentEventSchema>;
3753
+
3754
+ declare const NotificationIntentEventSchema: z.ZodObject<{
3755
+ type: z.ZodLiteral<"notification_intent">;
3756
+ sourceEventName: z.ZodString;
3757
+ title: z.ZodString;
3758
+ body: z.ZodString;
3759
+ deliveryId: z.ZodOptional<z.ZodString>;
3760
+ deepLinkMetadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3761
+ targetGuardianPrincipalId: z.ZodOptional<z.ZodString>;
3762
+ silent: z.ZodOptional<z.ZodBoolean>;
3763
+ }, z.core.$strip>;
3764
+
3765
+ declare type _NotificationsServerMessages = NotificationIntentEvent | NotificationConversationCreatedEvent;
3766
+
3767
+ declare type OAuthConnectResultEvent = z.infer<typeof OAuthConnectResultEventSchema>;
3768
+
3769
+ declare const OAuthConnectResultEventSchema: z.ZodObject<{
3770
+ type: z.ZodLiteral<"oauth_connect_result">;
3771
+ success: z.ZodBoolean;
3772
+ service: z.ZodOptional<z.ZodString>;
3773
+ grantedScopes: z.ZodOptional<z.ZodArray<z.ZodString>>;
3774
+ accountInfo: z.ZodOptional<z.ZodString>;
3775
+ error: z.ZodOptional<z.ZodString>;
3776
+ }, z.core.$strip>;
3777
+
3778
+ declare type OpenConversationEvent = z.infer<typeof OpenConversationEventSchema>;
3779
+
3780
+ declare const OpenConversationEventSchema: z.ZodObject<{
3781
+ type: z.ZodLiteral<"open_conversation">;
3782
+ conversationId: z.ZodString;
3783
+ title: z.ZodOptional<z.ZodString>;
3784
+ anchorMessageId: z.ZodOptional<z.ZodString>;
3785
+ focus: z.ZodOptional<z.ZodBoolean>;
3786
+ }, z.core.$strip>;
3787
+
3788
+ declare type OpenPanelEvent = z.infer<typeof OpenPanelEventSchema>;
3789
+
3790
+ declare const OpenPanelEventSchema: z.ZodObject<{
3791
+ type: z.ZodLiteral<"open_panel">;
3792
+ panelType: z.ZodString;
3793
+ data: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3794
+ conversationId: z.ZodOptional<z.ZodString>;
3795
+ surfaceId: z.ZodOptional<z.ZodString>;
3796
+ }, z.core.$strip>;
3797
+
3582
3798
  /**
3583
3799
  * Open a streaming transcription session against the configured STT provider
3584
3800
  * (`services.stt.provider`).
@@ -3600,6 +3816,15 @@ declare type MultimodalEmbeddingInput = TextEmbeddingInput | ImageEmbeddingInput
3600
3816
  */
3601
3817
  export declare function openTranscriptionSession(): Promise<StreamingTranscriber | null>;
3602
3818
 
3819
+ declare type OpenUrlEvent = z.infer<typeof OpenUrlEventSchema>;
3820
+
3821
+ declare const OpenUrlEventSchema: z.ZodObject<{
3822
+ type: z.ZodLiteral<"open_url">;
3823
+ url: z.ZodString;
3824
+ title: z.ZodOptional<z.ZodString>;
3825
+ conversationId: z.ZodOptional<z.ZodString>;
3826
+ }, z.core.$strip>;
3827
+
3603
3828
  /** Parse a stored message-metadata JSON string; undefined when absent/invalid. */
3604
3829
  export declare function parseMessageMetadata(metadataJson: string | null): Promise<MessageMetadata>;
3605
3830
 
@@ -3613,6 +3838,12 @@ export declare function parseMessageMetadata(metadataJson: string | null): Promi
3613
3838
  */
3614
3839
  declare function parseMessageMetadata_2(metadataJson: string | null): MessageMetadata_2 | undefined;
3615
3840
 
3841
+ declare type PlatformDisconnectedEvent = z.infer<typeof PlatformDisconnectedEventSchema>;
3842
+
3843
+ declare const PlatformDisconnectedEventSchema: z.ZodObject<{
3844
+ type: z.ZodLiteral<"platform_disconnected">;
3845
+ }, z.core.$strip>;
3846
+
3616
3847
  /**
3617
3848
  * The subset of {@link AssistantEventHub} workspace plugins may use. Picking
3618
3849
  * method signatures off the class keeps the facade in sync with the hub while
@@ -4102,17 +4333,6 @@ declare interface ProxyApprovalRequest {
4102
4333
 
4103
4334
  declare type ProxyToolResolver = (toolName: string, input: Record<string, unknown>) => Promise<ToolExecutionResult>;
4104
4335
 
4105
- /**
4106
- * Publish a runtime event to the assistant's event hub. Resolves once fanout to
4107
- * all subscribers has been attempted (a throwing subscriber never aborts
4108
- * delivery to the rest). Rejects if the event is non-serializable or is a
4109
- * host-proxy control event, which plugins may not publish.
4110
- */
4111
- export declare function publishEvent(event: AssistantEventEnvelope, options?: PublishEventOptions): Promise<void>;
4112
-
4113
- /** Publish options, mirroring the hub's `publish` options (targeting, self-echo suppression). */
4114
- export declare type PublishEventOptions = NonNullable<Parameters<PluginEventHub["publish"]>[1]>;
4115
-
4116
4336
  /**
4117
4337
  * Remove every previously-refused exchange from a working history: for each
4118
4338
  * assistant message that is exactly the refusal fallback, drop it together with
@@ -4125,6 +4345,75 @@ export declare function quarantineRefusedExchanges(messages: Message[]): {
4125
4345
  droppedExchanges: number;
4126
4346
  };
4127
4347
 
4348
+ declare type QuestionRequestEvent = z.infer<typeof QuestionRequestEventSchema>;
4349
+
4350
+ declare const QuestionRequestEventSchema: z.ZodObject<{
4351
+ type: z.ZodLiteral<"question_request">;
4352
+ requestId: z.ZodString;
4353
+ questions: z.ZodArray<z.ZodObject<{
4354
+ id: z.ZodString;
4355
+ question: z.ZodString;
4356
+ description: z.ZodOptional<z.ZodString>;
4357
+ options: z.ZodArray<z.ZodObject<{
4358
+ id: z.ZodString;
4359
+ label: z.ZodString;
4360
+ description: z.ZodOptional<z.ZodString>;
4361
+ }, z.core.$strip>>;
4362
+ freeTextPlaceholder: z.ZodOptional<z.ZodString>;
4363
+ }, z.core.$strip>>;
4364
+ question: z.ZodString;
4365
+ description: z.ZodOptional<z.ZodString>;
4366
+ options: z.ZodArray<z.ZodObject<{
4367
+ id: z.ZodString;
4368
+ label: z.ZodString;
4369
+ description: z.ZodOptional<z.ZodString>;
4370
+ }, z.core.$strip>>;
4371
+ freeTextPlaceholder: z.ZodOptional<z.ZodString>;
4372
+ conversationId: z.ZodOptional<z.ZodString>;
4373
+ toolUseId: z.ZodOptional<z.ZodString>;
4374
+ }, z.core.$strip>;
4375
+
4376
+ declare type RecordingPauseEvent = z.infer<typeof RecordingPauseEventSchema>;
4377
+
4378
+ declare const RecordingPauseEventSchema: z.ZodObject<{
4379
+ type: z.ZodLiteral<"recording_pause">;
4380
+ recordingId: z.ZodString;
4381
+ }, z.core.$strip>;
4382
+
4383
+ declare type RecordingResumeEvent = z.infer<typeof RecordingResumeEventSchema>;
4384
+
4385
+ declare const RecordingResumeEventSchema: z.ZodObject<{
4386
+ type: z.ZodLiteral<"recording_resume">;
4387
+ recordingId: z.ZodString;
4388
+ }, z.core.$strip>;
4389
+
4390
+ declare type RecordingStartEvent = z.infer<typeof RecordingStartEventSchema>;
4391
+
4392
+ declare const RecordingStartEventSchema: z.ZodObject<{
4393
+ type: z.ZodLiteral<"recording_start">;
4394
+ recordingId: z.ZodString;
4395
+ attachToConversationId: z.ZodOptional<z.ZodString>;
4396
+ options: z.ZodOptional<z.ZodObject<{
4397
+ captureScope: z.ZodOptional<z.ZodEnum<{
4398
+ display: "display";
4399
+ window: "window";
4400
+ }>>;
4401
+ displayId: z.ZodOptional<z.ZodString>;
4402
+ windowId: z.ZodOptional<z.ZodNumber>;
4403
+ includeAudio: z.ZodOptional<z.ZodBoolean>;
4404
+ includeMicrophone: z.ZodOptional<z.ZodBoolean>;
4405
+ promptForSource: z.ZodOptional<z.ZodBoolean>;
4406
+ }, z.core.$strip>>;
4407
+ operationToken: z.ZodOptional<z.ZodString>;
4408
+ }, z.core.$strip>;
4409
+
4410
+ declare type RecordingStopEvent = z.infer<typeof RecordingStopEventSchema>;
4411
+
4412
+ declare const RecordingStopEventSchema: z.ZodObject<{
4413
+ type: z.ZodLiteral<"recording_stop">;
4414
+ recordingId: z.ZodString;
4415
+ }, z.core.$strip>;
4416
+
4128
4417
  export declare interface RedactedThinkingContent {
4129
4418
  type: "redacted_thinking";
4130
4419
  data: string;
@@ -4143,6 +4432,13 @@ export declare interface RedactedThinkingContent {
4143
4432
  */
4144
4433
  export declare const REFUSAL_FALLBACK_TEXT = "Sorry \u2014 I wasn't able to generate a response to that. Please try rephrasing or asking in a different way.";
4145
4434
 
4435
+ declare type RelationshipStateUpdatedEvent = z.infer<typeof RelationshipStateUpdatedEventSchema>;
4436
+
4437
+ declare const RelationshipStateUpdatedEventSchema: z.ZodObject<{
4438
+ type: z.ZodLiteral<"relationship_state_updated">;
4439
+ updatedAt: z.ZodString;
4440
+ }, z.core.$strip>;
4441
+
4146
4442
  declare type ResolutionFallbackReason = "missing" | "disabled" | "incomplete";
4147
4443
 
4148
4444
  /**
@@ -4382,6 +4678,17 @@ export declare interface RunConversationTurnResult {
4382
4678
  queued?: boolean;
4383
4679
  }
4384
4680
 
4681
+ declare type ScheduleConversationCreatedEvent = z.infer<typeof ScheduleConversationCreatedEventSchema>;
4682
+
4683
+ declare const ScheduleConversationCreatedEventSchema: z.ZodObject<{
4684
+ type: z.ZodLiteral<"schedule_conversation_created">;
4685
+ conversationId: z.ZodString;
4686
+ scheduleJobId: z.ZodString;
4687
+ title: z.ZodString;
4688
+ }, z.core.$strip>;
4689
+
4690
+ declare type _SchedulesServerMessages = HeartbeatAlertEvent | HeartbeatConversationCreatedEvent;
4691
+
4385
4692
  /** Sparse lexical search over stored message text; ranked message-id hits. */
4386
4693
  export declare function searchMessageIdsLexical(query: string, limit: number, opts?: {
4387
4694
  conversationId?: string;
@@ -4446,6 +4753,23 @@ declare interface SecretPromptResult {
4446
4753
  collectionExpiresAt?: number;
4447
4754
  }
4448
4755
 
4756
+ declare type SecretRequestEvent = z.infer<typeof SecretRequestEventSchema>;
4757
+
4758
+ declare const SecretRequestEventSchema: z.ZodObject<{
4759
+ type: z.ZodLiteral<"secret_request">;
4760
+ requestId: z.ZodString;
4761
+ service: z.ZodString;
4762
+ field: z.ZodString;
4763
+ label: z.ZodString;
4764
+ description: z.ZodOptional<z.ZodString>;
4765
+ placeholder: z.ZodOptional<z.ZodString>;
4766
+ conversationId: z.ZodOptional<z.ZodString>;
4767
+ purpose: z.ZodOptional<z.ZodString>;
4768
+ allowedTools: z.ZodOptional<z.ZodArray<z.ZodString>>;
4769
+ allowedDomains: z.ZodOptional<z.ZodArray<z.ZodString>>;
4770
+ allowOneTimeSend: z.ZodOptional<z.ZodBoolean>;
4771
+ }, z.core.$strip>;
4772
+
4449
4773
  /** Whether the active embedding backend handles multimodal inputs. */
4450
4774
  export declare function selectedBackendSupportsMultimodal(): Promise<boolean>;
4451
4775
 
@@ -4567,6 +4891,8 @@ declare interface SensitiveOutputBinding {
4567
4891
 
4568
4892
  declare type SensitiveOutputKind = "invite_code";
4569
4893
 
4894
+ declare type ServerMessage = _ConversationsServerMessages | _MessagesServerMessages | _SurfacesServerMessages | _SkillsServerMessages | _AppsServerMessages | _IntegrationsServerMessages | _ComputerUseServerMessages | _ContactsServerMessages | _SubagentsServerMessages | _DocumentsServerMessages | _DocumentCommentsServerMessages | _SyncInvalidationServerMessages | _HomeServerMessages | _HostAppControlServerMessages | _HostBashServerMessages | _HostBrowserServerMessages | _HostCuServerMessages | _HostFileServerMessages | _HostTransferServerMessages | _HostUiSnapshotServerMessages | _MemoryServerMessages | _WorkspaceServerMessages | _SchedulesServerMessages | _SettingsServerMessages | _NotificationsServerMessages | _UpgradesServerMessages | _AcpServerMessages | _BackgroundToolsServerMessages | _BookmarksServerMessages | _WorkflowsServerMessages | DiskPressureStatusChangedEvent | HookEvent | SubagentEvent;
4895
+
4570
4896
  export declare interface ServerToolUseContent {
4571
4897
  type: "server_tool_use";
4572
4898
  id: string;
@@ -4574,6 +4900,38 @@ export declare interface ServerToolUseContent {
4574
4900
  input: Record<string, unknown>;
4575
4901
  }
4576
4902
 
4903
+ declare type ServiceGroupUpdateCompleteEvent = z.infer<typeof ServiceGroupUpdateCompleteEventSchema>;
4904
+
4905
+ declare const ServiceGroupUpdateCompleteEventSchema: z.ZodObject<{
4906
+ type: z.ZodLiteral<"service_group_update_complete">;
4907
+ installedVersion: z.ZodString;
4908
+ success: z.ZodBoolean;
4909
+ rolledBackToVersion: z.ZodOptional<z.ZodString>;
4910
+ }, z.core.$strip>;
4911
+
4912
+ declare type ServiceGroupUpdateProgressEvent = z.infer<typeof ServiceGroupUpdateProgressEventSchema>;
4913
+
4914
+ declare const ServiceGroupUpdateProgressEventSchema: z.ZodObject<{
4915
+ type: z.ZodLiteral<"service_group_update_progress">;
4916
+ statusMessage: z.ZodString;
4917
+ }, z.core.$strip>;
4918
+
4919
+ declare type ServiceGroupUpdateStartingEvent = z.infer<typeof ServiceGroupUpdateStartingEventSchema>;
4920
+
4921
+ declare const ServiceGroupUpdateStartingEventSchema: z.ZodObject<{
4922
+ type: z.ZodLiteral<"service_group_update_starting">;
4923
+ targetVersion: z.ZodString;
4924
+ expectedDowntimeSeconds: z.ZodNumber;
4925
+ }, z.core.$strip>;
4926
+
4927
+ declare type _SettingsServerMessages = ClientSettingsUpdateEvent | AvatarUpdatedEvent | ConfigChangedEvent | SoundsConfigUpdatedEvent;
4928
+
4929
+ declare type ShowPlatformLoginEvent = z.infer<typeof ShowPlatformLoginEventSchema>;
4930
+
4931
+ declare const ShowPlatformLoginEventSchema: z.ZodObject<{
4932
+ type: z.ZodLiteral<"show_platform_login">;
4933
+ }, z.core.$strip>;
4934
+
4577
4935
  /**
4578
4936
  * Context passed to the `shutdown` hook. Kept intentionally narrower than
4579
4937
  * {@link InitContext} — teardown paths only need to know which assistant
@@ -4644,6 +5002,27 @@ declare interface SkillInstallMeta {
4644
5002
  */
4645
5003
  declare type SkillSource = "bundled" | "managed" | "workspace" | "extra" | "plugin";
4646
5004
 
5005
+ declare type _SkillsServerMessages = SkillStateChangedEvent;
5006
+
5007
+ declare type SkillStateChangedEvent = z.infer<typeof SkillStateChangedEventSchema>;
5008
+
5009
+ declare const SkillStateChangedEventSchema: z.ZodObject<{
5010
+ type: z.ZodLiteral<"skills_state_changed">;
5011
+ name: z.ZodString;
5012
+ state: z.ZodEnum<{
5013
+ enabled: "enabled";
5014
+ disabled: "disabled";
5015
+ installed: "installed";
5016
+ uninstalled: "uninstalled";
5017
+ }>;
5018
+ }, z.core.$strip>;
5019
+
5020
+ declare type SoundsConfigUpdatedEvent = z.infer<typeof SoundsConfigUpdatedEventSchema>;
5021
+
5022
+ declare const SoundsConfigUpdatedEventSchema: z.ZodObject<{
5023
+ type: z.ZodLiteral<"sounds_config_updated">;
5024
+ }, z.core.$strip>;
5025
+
4647
5026
  /**
4648
5027
  * The full `stop` context a hook receives — the dispatching call site's
4649
5028
  * {@link StopInputContext} plus the pipeline-stamped {@link BaseHookContext}
@@ -4875,6 +5254,64 @@ export declare interface SttStreamServerPartialEvent {
4875
5254
  readonly confidence?: number;
4876
5255
  }
4877
5256
 
5257
+ declare interface SubagentDetailResponse {
5258
+ type: "subagent_detail_response";
5259
+ subagentId: string;
5260
+ objective?: string;
5261
+ usage?: UsageStats;
5262
+ events: Array<{
5263
+ type: string;
5264
+ content: string;
5265
+ toolName?: string;
5266
+ isError?: boolean;
5267
+ messageId?: string;
5268
+ }>;
5269
+ }
5270
+
5271
+ /** Wraps any ServerMessage emitted by a subagent conversation for routing to the client. */
5272
+ declare interface SubagentEvent {
5273
+ type: "subagent_event";
5274
+ subagentId: string;
5275
+ conversationId: string;
5276
+ event: ServerMessage;
5277
+ }
5278
+
5279
+ declare type SubagentSpawnedEvent = z.infer<typeof SubagentSpawnedEventSchema>;
5280
+
5281
+ declare const SubagentSpawnedEventSchema: z.ZodObject<{
5282
+ type: z.ZodLiteral<"subagent_spawned">;
5283
+ subagentId: z.ZodString;
5284
+ parentConversationId: z.ZodString;
5285
+ label: z.ZodString;
5286
+ objective: z.ZodString;
5287
+ isFork: z.ZodOptional<z.ZodBoolean>;
5288
+ parentToolUseId: z.ZodOptional<z.ZodString>;
5289
+ }, z.core.$strict>;
5290
+
5291
+ declare type _SubagentsServerMessages = SubagentSpawnedEvent | SubagentStatusChangedEvent | SubagentDetailResponse;
5292
+
5293
+ declare type SubagentStatusChangedEvent = z.infer<typeof SubagentStatusChangedEventSchema>;
5294
+
5295
+ declare const SubagentStatusChangedEventSchema: z.ZodObject<{
5296
+ type: z.ZodLiteral<"subagent_status_changed">;
5297
+ subagentId: z.ZodString;
5298
+ status: z.ZodEnum<{
5299
+ completed: "completed";
5300
+ failed: "failed";
5301
+ running: "running";
5302
+ aborted: "aborted";
5303
+ pending: "pending";
5304
+ awaiting_input: "awaiting_input";
5305
+ interrupted: "interrupted";
5306
+ }>;
5307
+ error: z.ZodOptional<z.ZodString>;
5308
+ usage: z.ZodOptional<z.ZodObject<{
5309
+ inputTokens: z.ZodNumber;
5310
+ outputTokens: z.ZodNumber;
5311
+ estimatedCost: z.ZodNumber;
5312
+ }, z.core.$strict>>;
5313
+ }, z.core.$strict>;
5314
+
4878
5315
  declare type SubscriberEntry = ClientEntry | ProcessEntry;
4879
5316
 
4880
5317
  /** Input shape for `subscribe()` — hub fills `active`, `connectedAt`, `lastActiveAt`, `connectionId` and defaults `filter`/`onEvict`. */
@@ -4883,6 +5320,8 @@ declare type SubscriberInput = DistributiveOmit<SubscriberEntry, "active" | "con
4883
5320
  onEvict?: () => void;
4884
5321
  };
4885
5322
 
5323
+ declare type _SurfacesServerMessages = UISurfaceShowEvent | UISurfaceUpdateEvent | UISurfaceDismissEvent | UISurfaceCompleteEvent | UISurfaceUndoResultEvent;
5324
+
4886
5325
  /**
4887
5326
  * Delete `graph_node` Qdrant points whose backing `memory_graph_nodes` row no
4888
5327
  * longer exists.
@@ -4911,6 +5350,16 @@ declare type SubscriberInput = DistributiveOmit<SubscriberEntry, "active" | "con
4911
5350
  */
4912
5351
  export declare function sweepOrphanedGraphNodePoints(qdrant: GraphNodeSweepClient): Promise<GraphNodeSweepResult>;
4913
5352
 
5353
+ declare type SyncChangedEvent = z.infer<typeof SyncChangedEventSchema>;
5354
+
5355
+ declare const SyncChangedEventSchema: z.ZodObject<{
5356
+ type: z.ZodLiteral<"sync_changed">;
5357
+ tags: z.ZodArray<z.ZodString>;
5358
+ originClientId: z.ZodOptional<z.ZodString>;
5359
+ }, z.core.$strip>;
5360
+
5361
+ declare type _SyncInvalidationServerMessages = SyncChangedEvent;
5362
+
4914
5363
  /** Re-sync one persisted message into the conversation's disk view. */
4915
5364
  export declare function syncMessageToDisk(conversationId: string, messageId: string, createdAtMs: number): Promise<void>;
4916
5365
 
@@ -5384,6 +5833,85 @@ export declare interface ToolExecutionResult {
5384
5833
  activityMetadata?: ToolActivityMetadata;
5385
5834
  }
5386
5835
 
5836
+ declare type ToolInputDeltaEvent = z.infer<typeof ToolInputDeltaEventSchema>;
5837
+
5838
+ declare const ToolInputDeltaEventSchema: z.ZodObject<{
5839
+ type: z.ZodLiteral<"tool_input_delta">;
5840
+ toolName: z.ZodString;
5841
+ content: z.ZodString;
5842
+ conversationId: z.ZodOptional<z.ZodString>;
5843
+ toolUseId: z.ZodOptional<z.ZodString>;
5844
+ messageId: z.ZodOptional<z.ZodString>;
5845
+ }, z.core.$strip>;
5846
+
5847
+ declare interface ToolInputSchema {
5848
+ type: "object";
5849
+ properties?: Record<string, {
5850
+ type?: string;
5851
+ description?: string;
5852
+ enum?: string[];
5853
+ [key: string]: unknown;
5854
+ }>;
5855
+ required?: string[];
5856
+ }
5857
+
5858
+ declare interface ToolNamesListResponse {
5859
+ type: "tool_names_list_response";
5860
+ /** Sorted list of all registered tool names. */
5861
+ names: string[];
5862
+ /** Input schemas keyed by tool name. */
5863
+ schemas?: Record<string, ToolInputSchema>;
5864
+ }
5865
+
5866
+ declare type ToolOutputChunkEvent = z.infer<typeof ToolOutputChunkEventSchema>;
5867
+
5868
+ declare const ToolOutputChunkEventSchema: z.ZodObject<{
5869
+ type: z.ZodLiteral<"tool_output_chunk">;
5870
+ chunk: z.ZodString;
5871
+ conversationId: z.ZodOptional<z.ZodString>;
5872
+ toolUseId: z.ZodOptional<z.ZodString>;
5873
+ subType: z.ZodOptional<z.ZodEnum<{
5874
+ status: "status";
5875
+ tool_start: "tool_start";
5876
+ tool_complete: "tool_complete";
5877
+ }>>;
5878
+ subToolName: z.ZodOptional<z.ZodString>;
5879
+ subToolInput: z.ZodOptional<z.ZodString>;
5880
+ subToolIsError: z.ZodOptional<z.ZodBoolean>;
5881
+ subToolId: z.ZodOptional<z.ZodString>;
5882
+ messageId: z.ZodOptional<z.ZodString>;
5883
+ }, z.core.$strip>;
5884
+
5885
+ declare interface ToolPermissionSimulateResponse {
5886
+ type: "tool_permission_simulate_response";
5887
+ success: boolean;
5888
+ /** The simulated permission decision. */
5889
+ decision?: "allow" | "deny" | "prompt";
5890
+ /** Risk level of the simulated tool invocation. */
5891
+ riskLevel?: string;
5892
+ /** Human-readable reason for the decision. */
5893
+ reason?: string;
5894
+ /** When decision is 'prompt', the data needed to render a ToolConfirmationBubble. */
5895
+ promptPayload?: {
5896
+ allowlistOptions: Array<{
5897
+ label: string;
5898
+ description: string;
5899
+ pattern: string;
5900
+ }>;
5901
+ scopeOptions: Array<{
5902
+ label: string;
5903
+ scope: string;
5904
+ }>;
5905
+ persistentDecisionsAllowed: boolean;
5906
+ };
5907
+ /** Resolved execution target for the tool. */
5908
+ executionTarget?: "host" | "sandbox";
5909
+ /** ID of the trust rule that matched (if any). */
5910
+ matchedTrustRuleId?: string;
5911
+ /** Error message when success is false. */
5912
+ error?: string;
5913
+ }
5914
+
5387
5915
  export declare interface ToolResultContent {
5388
5916
  type: "tool_result";
5389
5917
  tool_use_id: string;
@@ -5393,6 +5921,94 @@ export declare interface ToolResultContent {
5393
5921
  contentBlocks?: ContentBlock[];
5394
5922
  }
5395
5923
 
5924
+ declare type ToolResultEvent = z.infer<typeof ToolResultEventSchema>;
5925
+
5926
+ declare const ToolResultEventSchema: z.ZodObject<{
5927
+ type: z.ZodLiteral<"tool_result">;
5928
+ toolName: z.ZodString;
5929
+ result: z.ZodString;
5930
+ isError: z.ZodOptional<z.ZodBoolean>;
5931
+ diff: z.ZodOptional<z.ZodObject<{
5932
+ filePath: z.ZodString;
5933
+ oldContent: z.ZodString;
5934
+ newContent: z.ZodString;
5935
+ isNewFile: z.ZodBoolean;
5936
+ }, z.core.$strip>>;
5937
+ status: z.ZodOptional<z.ZodString>;
5938
+ conversationId: z.ZodOptional<z.ZodString>;
5939
+ imageData: z.ZodOptional<z.ZodString>;
5940
+ imageDataList: z.ZodOptional<z.ZodArray<z.ZodString>>;
5941
+ toolUseId: z.ZodOptional<z.ZodString>;
5942
+ messageId: z.ZodOptional<z.ZodString>;
5943
+ riskLevel: z.ZodOptional<z.ZodString>;
5944
+ riskReason: z.ZodOptional<z.ZodString>;
5945
+ matchedTrustRuleId: z.ZodOptional<z.ZodString>;
5946
+ isContainerized: z.ZodOptional<z.ZodBoolean>;
5947
+ riskScopeOptions: z.ZodOptional<z.ZodArray<z.ZodObject<{
5948
+ pattern: z.ZodString;
5949
+ label: z.ZodString;
5950
+ }, z.core.$strip>>>;
5951
+ riskAllowlistOptions: z.ZodOptional<z.ZodArray<z.ZodObject<{
5952
+ label: z.ZodString;
5953
+ description: z.ZodString;
5954
+ pattern: z.ZodString;
5955
+ }, z.core.$strip>>>;
5956
+ riskDirectoryScopeOptions: z.ZodOptional<z.ZodArray<z.ZodObject<{
5957
+ label: z.ZodString;
5958
+ scope: z.ZodString;
5959
+ }, z.core.$strip>>>;
5960
+ approvalMode: z.ZodOptional<z.ZodString>;
5961
+ approvalReason: z.ZodOptional<z.ZodString>;
5962
+ riskThreshold: z.ZodOptional<z.ZodString>;
5963
+ activityMetadata: z.ZodOptional<z.ZodObject<{
5964
+ webSearch: z.ZodOptional<z.ZodObject<{
5965
+ query: z.ZodString;
5966
+ provider: z.ZodEnum<{
5967
+ "anthropic-native": "anthropic-native";
5968
+ brave: "brave";
5969
+ perplexity: "perplexity";
5970
+ tavily: "tavily";
5971
+ firecrawl: "firecrawl";
5972
+ }>;
5973
+ resultCount: z.ZodNumber;
5974
+ durationMs: z.ZodNumber;
5975
+ results: z.ZodArray<z.ZodObject<{
5976
+ rank: z.ZodNumber;
5977
+ title: z.ZodString;
5978
+ url: z.ZodString;
5979
+ domain: z.ZodString;
5980
+ faviconUrl: z.ZodOptional<z.ZodString>;
5981
+ snippet: z.ZodOptional<z.ZodString>;
5982
+ age: z.ZodOptional<z.ZodString>;
5983
+ score: z.ZodOptional<z.ZodNumber>;
5984
+ }, z.core.$strip>>;
5985
+ errorMessage: z.ZodOptional<z.ZodString>;
5986
+ }, z.core.$strip>>;
5987
+ webFetch: z.ZodOptional<z.ZodObject<{
5988
+ url: z.ZodString;
5989
+ finalUrl: z.ZodString;
5990
+ provider: z.ZodOptional<z.ZodEnum<{
5991
+ default: "default";
5992
+ firecrawl: "firecrawl";
5993
+ }>>;
5994
+ status: z.ZodNumber;
5995
+ contentType: z.ZodOptional<z.ZodString>;
5996
+ byteCount: z.ZodNumber;
5997
+ charCount: z.ZodNumber;
5998
+ truncated: z.ZodBoolean;
5999
+ title: z.ZodOptional<z.ZodString>;
6000
+ domain: z.ZodString;
6001
+ faviconUrl: z.ZodOptional<z.ZodString>;
6002
+ redirectCount: z.ZodNumber;
6003
+ durationMs: z.ZodNumber;
6004
+ errorMessage: z.ZodOptional<z.ZodString>;
6005
+ mayRequireJavaScript: z.ZodOptional<z.ZodBoolean>;
6006
+ }, z.core.$strip>>;
6007
+ }, z.core.$strip>>;
6008
+ errorCode: z.ZodOptional<z.ZodString>;
6009
+ completedAt: z.ZodOptional<z.ZodNumber>;
6010
+ }, z.core.$strip>;
6011
+
5396
6012
  export declare interface ToolUseContent {
5397
6013
  type: "tool_use";
5398
6014
  id: string;
@@ -5405,6 +6021,30 @@ export declare interface ToolUseContent {
5405
6021
  };
5406
6022
  }
5407
6023
 
6024
+ declare type ToolUsePreviewStartEvent = z.infer<typeof ToolUsePreviewStartEventSchema>;
6025
+
6026
+ declare const ToolUsePreviewStartEventSchema: z.ZodObject<{
6027
+ type: z.ZodLiteral<"tool_use_preview_start">;
6028
+ toolUseId: z.ZodString;
6029
+ toolName: z.ZodString;
6030
+ conversationId: z.ZodOptional<z.ZodString>;
6031
+ messageId: z.ZodOptional<z.ZodString>;
6032
+ previewStartedAt: z.ZodOptional<z.ZodNumber>;
6033
+ }, z.core.$strip>;
6034
+
6035
+ declare type ToolUseStartEvent = z.infer<typeof ToolUseStartEventSchema>;
6036
+
6037
+ declare const ToolUseStartEventSchema: z.ZodObject<{
6038
+ type: z.ZodLiteral<"tool_use_start">;
6039
+ toolName: z.ZodString;
6040
+ input: z.ZodRecord<z.ZodString, z.ZodUnknown>;
6041
+ toolUseId: z.ZodOptional<z.ZodString>;
6042
+ messageId: z.ZodOptional<z.ZodString>;
6043
+ conversationId: z.ZodOptional<z.ZodString>;
6044
+ startedAt: z.ZodOptional<z.ZodNumber>;
6045
+ previewStartedAt: z.ZodOptional<z.ZodNumber>;
6046
+ }, z.core.$strip>;
6047
+
5408
6048
  declare type TrustClass = z.infer<typeof trustClassSchema>;
5409
6049
 
5410
6050
  declare const trustClassSchema: z.ZodEnum<{
@@ -5439,9 +6079,82 @@ declare type TtsUseCase =
5439
6079
  /** In-app message playback — buffer-oriented, higher quality acceptable. */
5440
6080
  | "message-playback";
5441
6081
 
6082
+ declare type UISurfaceCompleteEvent = z.infer<typeof UISurfaceCompleteEventSchema>;
6083
+
6084
+ declare const UISurfaceCompleteEventSchema: z.ZodObject<{
6085
+ type: z.ZodLiteral<"ui_surface_complete">;
6086
+ conversationId: z.ZodString;
6087
+ surfaceId: z.ZodString;
6088
+ summary: z.ZodString;
6089
+ submittedData: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
6090
+ }, z.core.$strip>;
6091
+
6092
+ declare type UISurfaceDismissEvent = z.infer<typeof UISurfaceDismissEventSchema>;
6093
+
6094
+ declare const UISurfaceDismissEventSchema: z.ZodObject<{
6095
+ type: z.ZodLiteral<"ui_surface_dismiss">;
6096
+ conversationId: z.ZodString;
6097
+ surfaceId: z.ZodString;
6098
+ }, z.core.$strip>;
6099
+
6100
+ declare type UISurfaceShowEvent = z.infer<typeof UISurfaceShowEventSchema>;
6101
+
6102
+ declare const UISurfaceShowEventSchema: z.ZodObject<{
6103
+ type: z.ZodLiteral<"ui_surface_show">;
6104
+ conversationId: z.ZodString;
6105
+ surfaceId: z.ZodString;
6106
+ surfaceType: z.ZodString;
6107
+ title: z.ZodOptional<z.ZodString>;
6108
+ data: z.ZodRecord<z.ZodString, z.ZodUnknown>;
6109
+ actions: z.ZodOptional<z.ZodArray<z.ZodObject<{
6110
+ id: z.ZodString;
6111
+ label: z.ZodString;
6112
+ style: z.ZodOptional<z.ZodEnum<{
6113
+ primary: "primary";
6114
+ secondary: "secondary";
6115
+ destructive: "destructive";
6116
+ }>>;
6117
+ data: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
6118
+ }, z.core.$strip>>>;
6119
+ display: z.ZodOptional<z.ZodEnum<{
6120
+ inline: "inline";
6121
+ panel: "panel";
6122
+ }>>;
6123
+ messageId: z.ZodOptional<z.ZodString>;
6124
+ persistent: z.ZodOptional<z.ZodBoolean>;
6125
+ toolCallId: z.ZodOptional<z.ZodString>;
6126
+ }, z.core.$strip>;
6127
+
6128
+ declare type UISurfaceUndoResultEvent = z.infer<typeof UISurfaceUndoResultEventSchema>;
6129
+
6130
+ declare const UISurfaceUndoResultEventSchema: z.ZodObject<{
6131
+ type: z.ZodLiteral<"ui_surface_undo_result">;
6132
+ conversationId: z.ZodString;
6133
+ surfaceId: z.ZodString;
6134
+ success: z.ZodBoolean;
6135
+ remainingUndos: z.ZodNumber;
6136
+ }, z.core.$strip>;
6137
+
6138
+ declare type UISurfaceUpdateEvent = z.infer<typeof UISurfaceUpdateEventSchema>;
6139
+
6140
+ declare const UISurfaceUpdateEventSchema: z.ZodObject<{
6141
+ type: z.ZodLiteral<"ui_surface_update">;
6142
+ conversationId: z.ZodString;
6143
+ surfaceId: z.ZodString;
6144
+ data: z.ZodRecord<z.ZodString, z.ZodUnknown>;
6145
+ }, z.core.$strip>;
6146
+
6147
+ declare interface UndoComplete {
6148
+ type: "undo_complete";
6149
+ removedCount: number;
6150
+ conversationId?: string;
6151
+ }
6152
+
5442
6153
  /** Merge the given keys into a message's metadata JSON. */
5443
6154
  export declare function updateMessageMetadata(messageId: string, updates: Record<string, unknown>): Promise<void>;
5444
6155
 
6156
+ declare type _UpgradesServerMessages = ServiceGroupUpdateStartingEvent | ServiceGroupUpdateProgressEvent | ServiceGroupUpdateCompleteEvent;
6157
+
5445
6158
  declare type UsageAttributionProfileSource = "call_site" | "conversation" | "active" | "default" | "unknown";
5446
6159
 
5447
6160
  declare interface UsageAttributionSnapshot {
@@ -5461,6 +6174,77 @@ declare interface UsageAttributionSnapshot {
5461
6174
  resolvedMixArm: string | null;
5462
6175
  }
5463
6176
 
6177
+ declare type UsageProgressEvent = z.infer<typeof UsageProgressEventSchema>;
6178
+
6179
+ declare const UsageProgressEventSchema: z.ZodObject<{
6180
+ type: z.ZodLiteral<"usage_progress">;
6181
+ conversationId: z.ZodString;
6182
+ inputTokens: z.ZodNumber;
6183
+ outputTokens: z.ZodNumber;
6184
+ estimatedCost: z.ZodNumber;
6185
+ model: z.ZodString;
6186
+ }, z.core.$strip>;
6187
+
6188
+ declare interface UsageResponse {
6189
+ type: "usage_response";
6190
+ totalInputTokens: number;
6191
+ totalOutputTokens: number;
6192
+ estimatedCost: number;
6193
+ model: string;
6194
+ }
6195
+
6196
+ declare interface UsageStats {
6197
+ inputTokens: number;
6198
+ outputTokens: number;
6199
+ estimatedCost: number;
6200
+ }
6201
+
6202
+ declare type UsageUpdateEvent = z.infer<typeof UsageUpdateEventSchema>;
6203
+
6204
+ declare const UsageUpdateEventSchema: z.ZodObject<{
6205
+ type: z.ZodLiteral<"usage_update">;
6206
+ conversationId: z.ZodString;
6207
+ inputTokens: z.ZodNumber;
6208
+ outputTokens: z.ZodNumber;
6209
+ cacheCreationInputTokens: z.ZodOptional<z.ZodNumber>;
6210
+ cacheReadInputTokens: z.ZodOptional<z.ZodNumber>;
6211
+ totalInputTokens: z.ZodNumber;
6212
+ totalOutputTokens: z.ZodNumber;
6213
+ estimatedCost: z.ZodNumber;
6214
+ model: z.ZodString;
6215
+ contextWindowTokens: z.ZodOptional<z.ZodNumber>;
6216
+ contextWindowMaxTokens: z.ZodOptional<z.ZodNumber>;
6217
+ }, z.core.$strip>;
6218
+
6219
+ declare interface UserMessageAttachment {
6220
+ id?: string;
6221
+ filename: string;
6222
+ mimeType: string;
6223
+ data: string;
6224
+ /** Origin of the attachment on the daemon side, when known. */
6225
+ sourceType?: "sandbox_file" | "host_file" | "tool_block";
6226
+ extractedText?: string;
6227
+ /** Original file size in bytes. Present when data was omitted from history_response to reduce payload size. */
6228
+ sizeBytes?: number;
6229
+ /** Base64-encoded JPEG thumbnail. Generated server-side for video attachments. */
6230
+ thumbnailData?: string;
6231
+ /** Absolute path to the local file on disk. Present for file-backed attachments (e.g. recordings). */
6232
+ filePath?: string;
6233
+ /** True when the attachment is file-backed and clients should hydrate via the /content endpoint. */
6234
+ fileBacked?: boolean;
6235
+ }
6236
+
6237
+ declare type UserMessageEchoEvent = z.infer<typeof UserMessageEchoEventSchema>;
6238
+
6239
+ declare const UserMessageEchoEventSchema: z.ZodObject<{
6240
+ type: z.ZodLiteral<"user_message_echo">;
6241
+ text: z.ZodString;
6242
+ conversationId: z.ZodOptional<z.ZodString>;
6243
+ messageId: z.ZodOptional<z.ZodString>;
6244
+ requestId: z.ZodOptional<z.ZodString>;
6245
+ clientMessageId: z.ZodOptional<z.ZodString>;
6246
+ }, z.core.$strict>;
6247
+
5464
6248
  /**
5465
6249
  * The full `user-prompt-submit` context a hook receives — the dispatching
5466
6250
  * call site's {@link UserPromptSubmitInputContext} plus the pipeline-stamped
@@ -5625,6 +6409,98 @@ export declare interface WebSearchToolResultContent {
5625
6409
  content: unknown;
5626
6410
  }
5627
6411
 
6412
+ declare type WorkflowCompletedEvent = z.infer<typeof WorkflowCompletedEventSchema>;
6413
+
6414
+ declare const WorkflowCompletedEventSchema: z.ZodObject<{
6415
+ type: z.ZodLiteral<"workflow_completed">;
6416
+ runId: z.ZodString;
6417
+ conversationId: z.ZodOptional<z.ZodString>;
6418
+ status: z.ZodEnum<{
6419
+ completed: "completed";
6420
+ failed: "failed";
6421
+ running: "running";
6422
+ aborted: "aborted";
6423
+ interrupted: "interrupted";
6424
+ cap_exceeded: "cap_exceeded";
6425
+ }>;
6426
+ agentsSpawned: z.ZodNumber;
6427
+ inputTokens: z.ZodNumber;
6428
+ outputTokens: z.ZodNumber;
6429
+ summary: z.ZodOptional<z.ZodString>;
6430
+ }, z.core.$strict>;
6431
+
6432
+ declare type WorkflowLeafFinishedEvent = z.infer<typeof WorkflowLeafFinishedEventSchema>;
6433
+
6434
+ declare const WorkflowLeafFinishedEventSchema: z.ZodObject<{
6435
+ type: z.ZodLiteral<"workflow_leaf_finished">;
6436
+ runId: z.ZodString;
6437
+ conversationId: z.ZodString;
6438
+ seq: z.ZodNumber;
6439
+ status: z.ZodEnum<{
6440
+ completed: "completed";
6441
+ failed: "failed";
6442
+ }>;
6443
+ label: z.ZodOptional<z.ZodString>;
6444
+ inputTokens: z.ZodOptional<z.ZodNumber>;
6445
+ outputTokens: z.ZodOptional<z.ZodNumber>;
6446
+ resultSummary: z.ZodOptional<z.ZodString>;
6447
+ }, z.core.$strict>;
6448
+
6449
+ declare type WorkflowLeafStartedEvent = z.infer<typeof WorkflowLeafStartedEventSchema>;
6450
+
6451
+ declare const WorkflowLeafStartedEventSchema: z.ZodObject<{
6452
+ type: z.ZodLiteral<"workflow_leaf_started">;
6453
+ runId: z.ZodString;
6454
+ conversationId: z.ZodString;
6455
+ seq: z.ZodNumber;
6456
+ label: z.ZodOptional<z.ZodString>;
6457
+ phase: z.ZodOptional<z.ZodString>;
6458
+ promptSummary: z.ZodOptional<z.ZodString>;
6459
+ }, z.core.$strict>;
6460
+
6461
+ declare type WorkflowProgressEvent = z.infer<typeof WorkflowProgressEventSchema>;
6462
+
6463
+ declare const WorkflowProgressEventSchema: z.ZodObject<{
6464
+ type: z.ZodLiteral<"workflow_progress">;
6465
+ runId: z.ZodString;
6466
+ conversationId: z.ZodOptional<z.ZodString>;
6467
+ agentsSpawned: z.ZodNumber;
6468
+ phase: z.ZodOptional<z.ZodString>;
6469
+ label: z.ZodOptional<z.ZodString>;
6470
+ message: z.ZodOptional<z.ZodString>;
6471
+ }, z.core.$strict>;
6472
+
6473
+ declare type _WorkflowsServerMessages = WorkflowProgressEvent | WorkflowCompletedEvent | WorkflowStartedEvent | WorkflowLeafStartedEvent | WorkflowLeafFinishedEvent;
6474
+
6475
+ declare type WorkflowStartedEvent = z.infer<typeof WorkflowStartedEventSchema>;
6476
+
6477
+ declare const WorkflowStartedEventSchema: z.ZodObject<{
6478
+ type: z.ZodLiteral<"workflow_started">;
6479
+ runId: z.ZodString;
6480
+ conversationId: z.ZodString;
6481
+ toolUseId: z.ZodOptional<z.ZodString>;
6482
+ label: z.ZodOptional<z.ZodString>;
6483
+ }, z.core.$strict>;
6484
+
6485
+ declare interface WorkspaceFileReadResponse {
6486
+ type: "workspace_file_read_response";
6487
+ path: string;
6488
+ content: string | null;
6489
+ error?: string;
6490
+ }
6491
+
6492
+ declare interface WorkspaceFilesListResponse {
6493
+ type: "workspace_files_list_response";
6494
+ files: Array<{
6495
+ /** Relative path within the workspace (e.g. "IDENTITY.md", "skills/my-skill"). */
6496
+ path: string;
6497
+ /** Display name (e.g. "IDENTITY.md"). */
6498
+ name: string;
6499
+ /** Whether the file/directory exists. */
6500
+ exists: boolean;
6501
+ }>;
6502
+ }
6503
+
5628
6504
  /**
5629
6505
  * A reference to bytes stored in the workspace rather than inlined. The bytes
5630
6506
  * live in the workspace attachment store, addressed by `attachmentId`, and are
@@ -5650,4 +6526,6 @@ declare interface WorkspaceRefMediaSource {
5650
6526
  height?: number;
5651
6527
  }
5652
6528
 
6529
+ declare type _WorkspaceServerMessages = WorkspaceFilesListResponse | WorkspaceFileReadResponse | IdentityGetResponse | ToolPermissionSimulateResponse | ToolNamesListResponse | IdentityChangedEvent;
6530
+
5653
6531
  export { }