@moxt-ai/mobius 0.0.164 → 0.0.166

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/runtime.js CHANGED
@@ -19765,6 +19765,7 @@ var SESSION_LIST_KIND = "session.list";
19765
19765
  var SESSION_LISTED_KIND = "session.listed";
19766
19766
  var SESSION_QUERY_KIND = "session.query";
19767
19767
  var SESSION_QUERIED_KIND = "session.queried";
19768
+ var SESSION_STATUS_CHANGED_KIND = "session.status.changed";
19768
19769
  var SESSION_CONFIGURE_KIND = "session.configure";
19769
19770
  var SESSION_CONFIG_UPDATED_KIND = "session.config.updated";
19770
19771
  var SESSION_USAGE_UPDATED_KIND = "session.usage.updated";
@@ -19800,48 +19801,61 @@ var DIRECTORY_IDENTIFIER_PATTERN = /^[a-zA-Z0-9][a-zA-Z0-9_-]{0,2047}$/;
19800
19801
  var DIRECTORY_IDENTIFIER = external_exports.string().min(1).max(2048).regex(DIRECTORY_IDENTIFIER_PATTERN);
19801
19802
  var SHORT_TEXT = external_exports.string().max(500);
19802
19803
  var LONG_TEXT = external_exports.string().max(1e5);
19803
- var workspaceEntrySchema = external_exports.strictObject({
19804
+ var workspaceEntrySchema = external_exports.object({
19804
19805
  directoryId: DIRECTORY_IDENTIFIER,
19805
19806
  name: external_exports.string().min(1).max(255)
19806
19807
  }).readonly();
19807
- var sessionMetadataSchema = external_exports.strictObject({
19808
+ var sessionStatusSchema = external_exports.discriminatedUnion("kind", [
19809
+ external_exports.object({ kind: external_exports.literal("idle") }).readonly(),
19810
+ external_exports.object({
19811
+ commandId: identifierStringSchema,
19812
+ kind: external_exports.literal("working")
19813
+ }).readonly()
19814
+ ]);
19815
+ var sessionStatusChangedEventSchema = external_exports.object({
19816
+ kind: external_exports.literal(SESSION_STATUS_CHANGED_KIND),
19817
+ sessionId: identifierStringSchema,
19818
+ status: sessionStatusSchema
19819
+ }).readonly();
19820
+ var sessionMetadataSchema = external_exports.object({
19808
19821
  additionalDirectories: external_exports.array(workspaceEntrySchema).max(16).readonly(),
19809
19822
  agentId: identifierStringSchema,
19810
19823
  directoryId: DIRECTORY_IDENTIFIER,
19811
19824
  directoryLabel: external_exports.string().min(1).max(2048),
19812
19825
  prompted: external_exports.boolean(),
19813
19826
  sessionId: identifierStringSchema,
19827
+ status: sessionStatusSchema.default({ kind: "idle" }),
19814
19828
  title: external_exports.string().max(500),
19815
19829
  updatedAt: external_exports.iso.datetime({ offset: true })
19816
19830
  }).readonly();
19817
- var sessionListCommandSchema = external_exports.strictObject({
19831
+ var sessionListCommandSchema = external_exports.object({
19818
19832
  kind: external_exports.literal(SESSION_LIST_KIND),
19819
19833
  limit: external_exports.number().int().positive().max(500),
19820
19834
  requestId: identifierStringSchema
19821
19835
  }).readonly();
19822
- var sessionsListedEventSchema = external_exports.strictObject({
19836
+ var sessionsListedEventSchema = external_exports.object({
19823
19837
  entries: external_exports.array(sessionMetadataSchema).max(500).readonly(),
19824
19838
  kind: external_exports.literal(SESSION_LISTED_KIND),
19825
19839
  requestId: identifierStringSchema
19826
19840
  }).readonly();
19827
- var sessionQueryCommandSchema = external_exports.strictObject({
19841
+ var sessionQueryCommandSchema = external_exports.object({
19828
19842
  kind: external_exports.literal(SESSION_QUERY_KIND),
19829
19843
  requestId: identifierStringSchema,
19830
19844
  sessionIds: external_exports.array(identifierStringSchema).min(1).max(500).readonly()
19831
19845
  }).readonly();
19832
- var sessionsQueriedEventSchema = external_exports.strictObject({
19846
+ var sessionsQueriedEventSchema = external_exports.object({
19833
19847
  entries: external_exports.array(sessionMetadataSchema).max(500).readonly(),
19834
19848
  kind: external_exports.literal(SESSION_QUERIED_KIND),
19835
19849
  requestId: identifierStringSchema
19836
19850
  }).readonly();
19837
- var fileReadCommandSchema = external_exports.strictObject({
19851
+ var fileReadCommandSchema = external_exports.object({
19838
19852
  kind: external_exports.literal(FILE_READ_KIND),
19839
19853
  maxBytes: external_exports.number().int().positive().max(128 * 1024 * 1024),
19840
19854
  requestId: identifierStringSchema,
19841
19855
  sessionId: identifierStringSchema,
19842
19856
  path: external_exports.string().min(1).max(4096)
19843
19857
  }).readonly();
19844
- var fileBeginEventSchema = external_exports.strictObject({
19858
+ var fileBeginEventSchema = external_exports.object({
19845
19859
  byteLength: external_exports.number().int().positive().max(128 * 1024 * 1024),
19846
19860
  kind: external_exports.literal(FILE_BEGIN_KIND),
19847
19861
  mediaType: external_exports.string().min(1).max(255),
@@ -19850,26 +19864,26 @@ var fileBeginEventSchema = external_exports.strictObject({
19850
19864
  requestId: identifierStringSchema,
19851
19865
  sessionId: identifierStringSchema
19852
19866
  }).readonly();
19853
- var fileChunkEventSchema = external_exports.strictObject({
19867
+ var fileChunkEventSchema = external_exports.object({
19854
19868
  data: external_exports.string().min(1).max(4e5),
19855
19869
  kind: external_exports.literal(FILE_CHUNK_KIND),
19856
19870
  requestId: identifierStringSchema,
19857
19871
  sequence: external_exports.number().int().nonnegative().max(1024),
19858
19872
  sessionId: identifierStringSchema
19859
19873
  }).readonly();
19860
- var fileEndEventSchema = external_exports.strictObject({
19874
+ var fileEndEventSchema = external_exports.object({
19861
19875
  kind: external_exports.literal(FILE_END_KIND),
19862
19876
  requestId: identifierStringSchema,
19863
19877
  sessionId: identifierStringSchema
19864
19878
  }).readonly();
19865
- var fileFailedEventSchema = external_exports.strictObject({
19879
+ var fileFailedEventSchema = external_exports.object({
19866
19880
  code: identifierStringSchema,
19867
19881
  kind: external_exports.literal(FILE_FAILED_KIND),
19868
19882
  message: external_exports.string().min(1).max(500),
19869
19883
  requestId: identifierStringSchema,
19870
19884
  sessionId: identifierStringSchema
19871
19885
  }).readonly();
19872
- var configValueSchema = external_exports.strictObject({
19886
+ var configValueSchema = external_exports.object({
19873
19887
  description: SHORT_TEXT,
19874
19888
  groupId: external_exports.string().max(128),
19875
19889
  groupName: external_exports.string().max(255),
@@ -19880,7 +19894,7 @@ var configValueSchema = external_exports.strictObject({
19880
19894
  // by length alone.
19881
19895
  value: external_exports.string().max(500)
19882
19896
  }).readonly();
19883
- var sessionConfigOptionSchema = external_exports.strictObject({
19897
+ var sessionConfigOptionSchema = external_exports.object({
19884
19898
  booleanValue: external_exports.boolean(),
19885
19899
  category: external_exports.string().max(128),
19886
19900
  currentValue: external_exports.string().max(500),
@@ -19891,7 +19905,7 @@ var sessionConfigOptionSchema = external_exports.strictObject({
19891
19905
  values: external_exports.array(configValueSchema).max(500).readonly()
19892
19906
  }).readonly();
19893
19907
  var sessionConfigOptionsSchema = external_exports.array(sessionConfigOptionSchema).max(100).readonly();
19894
- var agentSettingSchema = external_exports.strictObject({
19908
+ var agentSettingSchema = external_exports.object({
19895
19909
  booleanValue: external_exports.boolean(),
19896
19910
  category: external_exports.string().max(128),
19897
19911
  defaultValue: external_exports.string().max(500),
@@ -19910,20 +19924,20 @@ var agentModelEffortResolutionSchema = external_exports.enum([
19910
19924
  AGENT_MODEL_EFFORT_RESOLUTION_ON_MODEL_SELECTION,
19911
19925
  AGENT_MODEL_EFFORT_RESOLUTION_UNAVAILABLE
19912
19926
  ]);
19913
- var agentModelEffortSchema = external_exports.strictObject({
19927
+ var agentModelEffortSchema = external_exports.object({
19914
19928
  effortSettingId: external_exports.string().max(128),
19915
19929
  modelSettingId: external_exports.string().max(128),
19916
19930
  resolution: agentModelEffortResolutionSchema,
19917
19931
  unsupportedModelIds: external_exports.array(external_exports.string().min(1).max(500)).max(500).readonly().default([]),
19918
19932
  valuesByModel: external_exports.record(external_exports.string().min(1).max(500), external_exports.array(configValueSchema).max(500).readonly()).readonly()
19919
19933
  }).readonly();
19920
- var agentSettingsDiscoverCommandSchema = external_exports.strictObject({
19934
+ var agentSettingsDiscoverCommandSchema = external_exports.object({
19921
19935
  agentId: identifierStringSchema,
19922
19936
  kind: external_exports.literal(AGENT_SETTINGS_DISCOVER_KIND),
19923
19937
  model: external_exports.string().min(1).max(500).optional(),
19924
19938
  requestId: identifierStringSchema
19925
19939
  }).readonly();
19926
- var agentSettingsDiscoveredEventSchema = external_exports.strictObject({
19940
+ var agentSettingsDiscoveredEventSchema = external_exports.object({
19927
19941
  agentId: identifierStringSchema,
19928
19942
  agentName: external_exports.string().max(255),
19929
19943
  agentVersion: external_exports.string().max(128),
@@ -19933,27 +19947,27 @@ var agentSettingsDiscoveredEventSchema = external_exports.strictObject({
19933
19947
  settings: agentSettingsSchema,
19934
19948
  settingsRevision: external_exports.string().regex(/^[a-f0-9]{64}$/)
19935
19949
  }).readonly();
19936
- var agentSettingsDiscoveryFailedEventSchema = external_exports.strictObject({
19950
+ var agentSettingsDiscoveryFailedEventSchema = external_exports.object({
19937
19951
  code: identifierStringSchema,
19938
19952
  kind: external_exports.literal(AGENT_SETTINGS_DISCOVERY_FAILED_KIND),
19939
19953
  message: external_exports.string().min(1).max(500),
19940
19954
  requestId: identifierStringSchema
19941
19955
  }).readonly();
19942
- var agentCatalogRefreshCommandSchema = external_exports.strictObject({
19956
+ var agentCatalogRefreshCommandSchema = external_exports.object({
19943
19957
  kind: external_exports.literal(AGENT_CATALOG_REFRESH_KIND),
19944
19958
  requestId: identifierStringSchema
19945
19959
  }).readonly();
19946
- var agentCatalogRefreshedEventSchema = external_exports.strictObject({
19960
+ var agentCatalogRefreshedEventSchema = external_exports.object({
19947
19961
  kind: external_exports.literal(AGENT_CATALOG_REFRESHED_KIND),
19948
19962
  requestId: identifierStringSchema
19949
19963
  }).readonly();
19950
- var agentCatalogRefreshFailedEventSchema = external_exports.strictObject({
19964
+ var agentCatalogRefreshFailedEventSchema = external_exports.object({
19951
19965
  code: identifierStringSchema,
19952
19966
  kind: external_exports.literal(AGENT_CATALOG_REFRESH_FAILED_KIND),
19953
19967
  message: external_exports.string().min(1).max(500),
19954
19968
  requestId: identifierStringSchema
19955
19969
  }).readonly();
19956
- var sessionConfigurationSelectionSchema = external_exports.strictObject({
19970
+ var sessionConfigurationSelectionSchema = external_exports.object({
19957
19971
  booleanValue: external_exports.boolean(),
19958
19972
  configId: identifierStringSchema,
19959
19973
  value: external_exports.string().max(500),
@@ -19967,7 +19981,7 @@ var AGENT_PERMISSION_MODES = Object.freeze([
19967
19981
  "workspace-write",
19968
19982
  "danger-full-access"
19969
19983
  ]);
19970
- var agentExecutionConfigurationSchema = external_exports.strictObject({
19984
+ var agentExecutionConfigurationSchema = external_exports.object({
19971
19985
  model: sessionConfigurationSelectionSchema,
19972
19986
  permissionMode: external_exports.string().refine((value) => AGENT_PERMISSION_MODES.includes(value)),
19973
19987
  reasoningEffort: sessionConfigurationSelectionSchema
@@ -20011,7 +20025,7 @@ var sessionConfigurationSelectionsSchema = external_exports.array(sessionConfigu
20011
20025
  identifiers.add(selection.configId);
20012
20026
  }
20013
20027
  }).readonly();
20014
- var sessionCapabilitiesSchema = external_exports.strictObject({
20028
+ var sessionCapabilitiesSchema = external_exports.object({
20015
20029
  additionalDirectories: external_exports.boolean(),
20016
20030
  audioPrompt: external_exports.boolean(),
20017
20031
  closeSession: external_exports.boolean(),
@@ -20025,22 +20039,22 @@ var sessionCapabilitiesSchema = external_exports.strictObject({
20025
20039
  steering: external_exports.boolean().default(false),
20026
20040
  unstableForkSession: external_exports.boolean().default(false)
20027
20041
  }).readonly();
20028
- var sessionCommandSchema = external_exports.strictObject({
20042
+ var sessionCommandSchema = external_exports.object({
20029
20043
  description: SHORT_TEXT,
20030
20044
  inputHint: external_exports.string().max(255),
20031
20045
  name: external_exports.string().min(1).max(128)
20032
20046
  }).readonly();
20033
- var permissionOptionSchema = external_exports.strictObject({
20047
+ var permissionOptionSchema = external_exports.object({
20034
20048
  kind: external_exports.enum(["allow_once", "allow_always", "reject_once", "reject_always"]),
20035
20049
  name: external_exports.string().min(1).max(255),
20036
20050
  optionId: external_exports.string().min(1).max(255)
20037
20051
  }).readonly();
20038
- var elicitationOptionSchema = external_exports.strictObject({
20052
+ var elicitationOptionSchema = external_exports.object({
20039
20053
  description: SHORT_TEXT,
20040
20054
  label: external_exports.string().min(1).max(255),
20041
20055
  value: external_exports.string().max(500)
20042
20056
  }).readonly();
20043
- var elicitationFieldSchema = external_exports.strictObject({
20057
+ var elicitationFieldSchema = external_exports.object({
20044
20058
  defaultBooleanValue: external_exports.boolean(),
20045
20059
  defaultNumberValue: external_exports.number().finite(),
20046
20060
  defaultStringValue: external_exports.string().max(1e4),
@@ -20058,7 +20072,7 @@ var elicitationFieldSchema = external_exports.strictObject({
20058
20072
  title: external_exports.string().min(1).max(255),
20059
20073
  type: external_exports.enum(["boolean", "integer", "multiselect", "number", "select", "string"])
20060
20074
  }).readonly();
20061
- var displayContentSchema = external_exports.strictObject({
20075
+ var displayContentSchema = external_exports.object({
20062
20076
  artifactId: external_exports.string().max(128).default(""),
20063
20077
  data: external_exports.string().max(4e6),
20064
20078
  mimeType: external_exports.string().max(255),
@@ -20071,7 +20085,7 @@ var displayContentSchema = external_exports.strictObject({
20071
20085
  type: external_exports.enum(["diff", "image", "resource", "resource_link", "terminal", "text", "video"]),
20072
20086
  uri: external_exports.string().max(4096)
20073
20087
  }).readonly();
20074
- var recordedDisplayContentSchema = external_exports.strictObject({
20088
+ var recordedDisplayContentSchema = external_exports.object({
20075
20089
  artifactId: external_exports.string().max(128).default(""),
20076
20090
  data: external_exports.string().max(4e6),
20077
20091
  mimeType: external_exports.string().max(255),
@@ -20084,25 +20098,25 @@ var recordedDisplayContentSchema = external_exports.strictObject({
20084
20098
  type: external_exports.enum(["diff", "image", "resource", "resource_link", "terminal", "text", "video"]),
20085
20099
  uri: external_exports.string().max(4096)
20086
20100
  }).readonly();
20087
- var promptImageSchema = external_exports.strictObject({
20101
+ var promptImageSchema = external_exports.object({
20088
20102
  data: external_exports.string().min(1).max(4e6),
20089
20103
  mimeType: external_exports.string().min(1).max(255),
20090
20104
  name: external_exports.string().min(1).max(500)
20091
20105
  }).readonly();
20092
- var promptResourceSchema = external_exports.strictObject({
20106
+ var promptResourceSchema = external_exports.object({
20093
20107
  mimeType: external_exports.string().max(255),
20094
20108
  name: external_exports.string().min(1).max(500),
20095
20109
  text: external_exports.string().max(1e6),
20096
20110
  type: external_exports.enum(["embedded", "link"]),
20097
20111
  uri: external_exports.string().min(1).max(4096)
20098
20112
  }).readonly();
20099
- var workspaceListCommandSchema = external_exports.strictObject({
20113
+ var workspaceListCommandSchema = external_exports.object({
20100
20114
  bindingId: identifierStringSchema,
20101
20115
  directoryId: DIRECTORY_IDENTIFIER,
20102
20116
  kind: external_exports.literal(WORKSPACE_LIST_KIND),
20103
20117
  requestId: identifierStringSchema
20104
20118
  }).readonly();
20105
- var workspaceEntriesEventSchema = external_exports.strictObject({
20119
+ var workspaceEntriesEventSchema = external_exports.object({
20106
20120
  bindingId: identifierStringSchema,
20107
20121
  directoryId: DIRECTORY_IDENTIFIER,
20108
20122
  directoryLabel: external_exports.string().min(1).max(2048),
@@ -20118,9 +20132,9 @@ var sessionIdentityFields = {
20118
20132
  directoryId: DIRECTORY_IDENTIFIER,
20119
20133
  sessionId: identifierStringSchema
20120
20134
  };
20121
- var sessionPrepareCommandSchema = external_exports.strictObject({
20135
+ var sessionPrepareCommandSchema = external_exports.object({
20122
20136
  ...sessionIdentityFields,
20123
- configuration: external_exports.strictObject({
20137
+ configuration: external_exports.object({
20124
20138
  booleanValue: external_exports.boolean(),
20125
20139
  configId: external_exports.string().min(1).max(128),
20126
20140
  value: external_exports.string().max(500),
@@ -20141,12 +20155,12 @@ var sessionPrepareCommandSchema = external_exports.strictObject({
20141
20155
  }
20142
20156
  }).readonly();
20143
20157
  var runtimeTimingsSchema = external_exports.array(
20144
- external_exports.strictObject({
20158
+ external_exports.object({
20145
20159
  durationMilliseconds: external_exports.number().finite().nonnegative().max(12e4),
20146
20160
  name: external_exports.string().regex(/^[a-z][a-z0-9-]{0,63}$/)
20147
20161
  }).readonly()
20148
20162
  ).max(16).readonly();
20149
- var sessionReadyEventSchema = external_exports.strictObject({
20163
+ var sessionReadyEventSchema = external_exports.object({
20150
20164
  additionalDirectories: external_exports.array(workspaceEntrySchema).max(16).readonly(),
20151
20165
  agentId: identifierStringSchema,
20152
20166
  agentName: external_exports.string().max(255),
@@ -20162,7 +20176,7 @@ var sessionReadyEventSchema = external_exports.strictObject({
20162
20176
  runtimeTimings: runtimeTimingsSchema.optional(),
20163
20177
  sessionId: identifierStringSchema
20164
20178
  }).readonly();
20165
- var sessionConfigureCommandSchema = external_exports.strictObject({
20179
+ var sessionConfigureCommandSchema = external_exports.object({
20166
20180
  ...sessionIdentityFields,
20167
20181
  booleanValue: external_exports.boolean(),
20168
20182
  configId: external_exports.string().min(1).max(128),
@@ -20171,13 +20185,13 @@ var sessionConfigureCommandSchema = external_exports.strictObject({
20171
20185
  value: external_exports.string().max(500),
20172
20186
  valueType: external_exports.enum(["boolean", "select"])
20173
20187
  }).readonly();
20174
- var sessionConfigUpdatedEventSchema = external_exports.strictObject({
20188
+ var sessionConfigUpdatedEventSchema = external_exports.object({
20175
20189
  configOptions: sessionConfigOptionsSchema,
20176
20190
  kind: external_exports.literal(SESSION_CONFIG_UPDATED_KIND),
20177
20191
  requestId: identifierStringSchema,
20178
20192
  sessionId: identifierStringSchema
20179
20193
  }).readonly();
20180
- var sessionContextUsageUpdatedEventSchema = external_exports.strictObject({
20194
+ var sessionContextUsageUpdatedEventSchema = external_exports.object({
20181
20195
  costAmount: external_exports.number().finite().nonnegative(),
20182
20196
  costCurrency: external_exports.string().max(16),
20183
20197
  hasCost: external_exports.boolean(),
@@ -20187,7 +20201,7 @@ var sessionContextUsageUpdatedEventSchema = external_exports.strictObject({
20187
20201
  source: external_exports.literal("context").default("context"),
20188
20202
  used: external_exports.number().int().nonnegative()
20189
20203
  }).readonly();
20190
- var sessionPromptUsageUpdatedEventSchema = external_exports.strictObject({
20204
+ var sessionPromptUsageUpdatedEventSchema = external_exports.object({
20191
20205
  _meta: promptMetadataSchema.nullable(),
20192
20206
  commandId: identifierStringSchema,
20193
20207
  kind: external_exports.literal(SESSION_USAGE_UPDATED_KIND),
@@ -20199,18 +20213,18 @@ var sessionUsageUpdatedEventSchema = external_exports.union([
20199
20213
  sessionContextUsageUpdatedEventSchema,
20200
20214
  sessionPromptUsageUpdatedEventSchema
20201
20215
  ]);
20202
- var sessionCommandsUpdatedEventSchema = external_exports.strictObject({
20216
+ var sessionCommandsUpdatedEventSchema = external_exports.object({
20203
20217
  commands: external_exports.array(sessionCommandSchema).max(500).readonly(),
20204
20218
  kind: external_exports.literal(SESSION_COMMANDS_UPDATED_KIND),
20205
20219
  sessionId: identifierStringSchema
20206
20220
  }).readonly();
20207
- var sessionInfoUpdatedEventSchema = external_exports.strictObject({
20221
+ var sessionInfoUpdatedEventSchema = external_exports.object({
20208
20222
  kind: external_exports.literal(SESSION_INFO_UPDATED_KIND),
20209
20223
  sessionId: identifierStringSchema,
20210
20224
  title: external_exports.string().max(500).nullable(),
20211
20225
  updatedAt: external_exports.string().max(128)
20212
20226
  }).readonly();
20213
- var sessionPermissionRequestedEventSchema = external_exports.strictObject({
20227
+ var sessionPermissionRequestedEventSchema = external_exports.object({
20214
20228
  commandId: identifierStringSchema,
20215
20229
  interactionId: identifierStringSchema,
20216
20230
  kind: external_exports.literal(SESSION_PERMISSION_REQUESTED_KIND),
@@ -20220,21 +20234,21 @@ var sessionPermissionRequestedEventSchema = external_exports.strictObject({
20220
20234
  toolCallId: external_exports.string().min(1).max(255),
20221
20235
  toolKind: external_exports.string().max(64)
20222
20236
  }).readonly();
20223
- var sessionPermissionRespondCommandSchema = external_exports.strictObject({
20237
+ var sessionPermissionRespondCommandSchema = external_exports.object({
20224
20238
  interactionId: identifierStringSchema,
20225
20239
  kind: external_exports.literal(SESSION_PERMISSION_RESPOND_KIND),
20226
20240
  optionId: external_exports.string().max(255),
20227
20241
  outcome: external_exports.enum(["cancelled", "selected"]),
20228
20242
  sessionId: identifierStringSchema
20229
20243
  }).readonly();
20230
- var sessionPermissionResolvedEventSchema = external_exports.strictObject({
20244
+ var sessionPermissionResolvedEventSchema = external_exports.object({
20231
20245
  interactionId: identifierStringSchema,
20232
20246
  kind: external_exports.literal(SESSION_PERMISSION_RESOLVED_KIND),
20233
20247
  optionId: external_exports.string().max(255),
20234
20248
  outcome: external_exports.enum(["cancelled", "selected"]),
20235
20249
  sessionId: identifierStringSchema
20236
20250
  }).readonly();
20237
- var sessionElicitationRequestedEventSchema = external_exports.strictObject({
20251
+ var sessionElicitationRequestedEventSchema = external_exports.object({
20238
20252
  accepted: external_exports.boolean(),
20239
20253
  commandId: identifierStringSchema,
20240
20254
  elicitationId: external_exports.string().max(255),
@@ -20246,20 +20260,20 @@ var sessionElicitationRequestedEventSchema = external_exports.strictObject({
20246
20260
  sessionId: identifierStringSchema,
20247
20261
  url: external_exports.string().max(4096)
20248
20262
  }).readonly();
20249
- var sessionElicitationRespondCommandSchema = external_exports.strictObject({
20263
+ var sessionElicitationRespondCommandSchema = external_exports.object({
20250
20264
  action: external_exports.enum(["accept", "cancel", "decline"]),
20251
20265
  content: external_exports.string().max(1e5),
20252
20266
  interactionId: identifierStringSchema,
20253
20267
  kind: external_exports.literal(SESSION_ELICITATION_RESPOND_KIND),
20254
20268
  sessionId: identifierStringSchema
20255
20269
  }).readonly();
20256
- var sessionElicitationResolvedEventSchema = external_exports.strictObject({
20270
+ var sessionElicitationResolvedEventSchema = external_exports.object({
20257
20271
  action: external_exports.enum(["accept", "cancel", "decline", "complete"]),
20258
20272
  interactionId: identifierStringSchema,
20259
20273
  kind: external_exports.literal(SESSION_ELICITATION_RESOLVED_KIND),
20260
20274
  sessionId: identifierStringSchema
20261
20275
  }).readonly();
20262
- var sessionOperationFailedEventSchema = external_exports.strictObject({
20276
+ var sessionOperationFailedEventSchema = external_exports.object({
20263
20277
  code: identifierStringSchema,
20264
20278
  kind: external_exports.literal(SESSION_OPERATION_FAILED_KIND),
20265
20279
  message: external_exports.string().min(1).max(500),
@@ -20267,7 +20281,7 @@ var sessionOperationFailedEventSchema = external_exports.strictObject({
20267
20281
  runtimeTimings: runtimeTimingsSchema.optional(),
20268
20282
  sessionId: external_exports.string().max(128)
20269
20283
  }).readonly();
20270
- var agentContentEventSchema = external_exports.strictObject({
20284
+ var agentContentEventSchema = external_exports.object({
20271
20285
  commandId: identifierStringSchema,
20272
20286
  content: displayContentSchema,
20273
20287
  contentId: identifierStringSchema,
@@ -20279,15 +20293,15 @@ var agentInstallIdentityFields = {
20279
20293
  agentId: identifierStringSchema,
20280
20294
  requestId: identifierStringSchema
20281
20295
  };
20282
- var agentInstallRequestCommandSchema = external_exports.strictObject({
20296
+ var agentInstallRequestCommandSchema = external_exports.object({
20283
20297
  ...agentInstallIdentityFields,
20284
20298
  kind: external_exports.literal(AGENT_INSTALL_REQUEST_KIND)
20285
20299
  }).readonly();
20286
- var agentInstallCancelCommandSchema = external_exports.strictObject({
20300
+ var agentInstallCancelCommandSchema = external_exports.object({
20287
20301
  kind: external_exports.literal(AGENT_INSTALL_CANCEL_KIND),
20288
20302
  requestId: identifierStringSchema
20289
20303
  }).readonly();
20290
- var agentInstallStartedEventSchema = external_exports.strictObject({
20304
+ var agentInstallStartedEventSchema = external_exports.object({
20291
20305
  ...agentInstallIdentityFields,
20292
20306
  kind: external_exports.literal(AGENT_INSTALL_STARTED_KIND)
20293
20307
  }).readonly();
@@ -20298,23 +20312,23 @@ var installationStageSchema = external_exports.enum([
20298
20312
  "installing_adapter",
20299
20313
  "checking_acp"
20300
20314
  ]);
20301
- var agentInstallProgressEventSchema = external_exports.strictObject({
20315
+ var agentInstallProgressEventSchema = external_exports.object({
20302
20316
  ...agentInstallIdentityFields,
20303
20317
  kind: external_exports.literal(AGENT_INSTALL_PROGRESS_KIND),
20304
20318
  stage: installationStageSchema
20305
20319
  }).readonly();
20306
- var agentInstallCompletedEventSchema = external_exports.strictObject({
20320
+ var agentInstallCompletedEventSchema = external_exports.object({
20307
20321
  ...agentInstallIdentityFields,
20308
20322
  authenticationMayBeRequired: external_exports.boolean(),
20309
20323
  kind: external_exports.literal(AGENT_INSTALL_COMPLETED_KIND)
20310
20324
  }).readonly();
20311
- var agentInstallFailedEventSchema = external_exports.strictObject({
20325
+ var agentInstallFailedEventSchema = external_exports.object({
20312
20326
  ...agentInstallIdentityFields,
20313
20327
  code: identifierStringSchema,
20314
20328
  kind: external_exports.literal(AGENT_INSTALL_FAILED_KIND),
20315
20329
  message: external_exports.string().min(1).max(500)
20316
20330
  }).readonly();
20317
- var agentInstallCancelledEventSchema = external_exports.strictObject({
20331
+ var agentInstallCancelledEventSchema = external_exports.object({
20318
20332
  ...agentInstallIdentityFields,
20319
20333
  kind: external_exports.literal(AGENT_INSTALL_CANCELLED_KIND)
20320
20334
  }).readonly();
@@ -20385,6 +20399,8 @@ var decodeSessionQueryCommand = (encoded) => decode3(encoded, sessionQueryComman
20385
20399
  var encodeSessionQueryCommand = (message) => encode3(message, sessionQueryCommandSchema);
20386
20400
  var decodeSessionsQueriedEvent = (encoded) => decode3(encoded, sessionsQueriedEventSchema);
20387
20401
  var encodeSessionsQueriedEvent = (message) => encode3(message, sessionsQueriedEventSchema);
20402
+ var decodeSessionStatusChangedEvent = (encoded) => decode3(encoded, sessionStatusChangedEventSchema);
20403
+ var encodeSessionStatusChangedEvent = (message) => encode3(message, sessionStatusChangedEventSchema);
20388
20404
  var decodeSessionPrepareCommand = (encoded) => decode3(encoded, sessionPrepareCommandSchema);
20389
20405
  var encodeSessionPrepareCommand = (message) => encode3(message, sessionPrepareCommandSchema);
20390
20406
  var decodeSessionReadyEvent = (encoded) => decode3(encoded, sessionReadyEventSchema);
@@ -20475,6 +20491,17 @@ var ProtocolMessageError = class extends Error {
20475
20491
  this.name = "ProtocolMessageError";
20476
20492
  }
20477
20493
  };
20494
+ var UnsupportedProtocolMessageKindError = class extends Error {
20495
+ code = "unsupported_protocol_message_kind";
20496
+ direction;
20497
+ messageKind;
20498
+ constructor(direction, messageKind) {
20499
+ super(`Unsupported ${direction} message kind: ${messageKind}`);
20500
+ this.name = "UnsupportedProtocolMessageKindError";
20501
+ this.direction = direction;
20502
+ this.messageKind = messageKind;
20503
+ }
20504
+ };
20478
20505
  function isRecord(value) {
20479
20506
  return typeof value === "object" && value !== null && !Array.isArray(value);
20480
20507
  }
@@ -20492,13 +20519,6 @@ function parseJson2(encoded) {
20492
20519
  }
20493
20520
  return value;
20494
20521
  }
20495
- function assertExactKeys(value, allowedKeys) {
20496
- for (const key of Object.keys(value)) {
20497
- if (!allowedKeys.includes(key)) {
20498
- throw new ProtocolMessageError(`Unexpected message field: ${key}`);
20499
- }
20500
- }
20501
- }
20502
20522
  function readString(value, key, maximumLength) {
20503
20523
  const field = value[key];
20504
20524
  if (typeof field !== "string" || field.length === 0 || field.length > maximumLength) {
@@ -20589,18 +20609,15 @@ function readActivityDetail(value) {
20589
20609
  }
20590
20610
  const kind = readString(field, "kind", 32);
20591
20611
  if (kind === "available") {
20592
- assertExactKeys(field, ["artifactId", "kind"]);
20593
20612
  return {
20594
20613
  artifactId: readIdentifier(field, "artifactId"),
20595
20614
  kind
20596
20615
  };
20597
20616
  }
20598
20617
  if (kind === "unrecorded") {
20599
- assertExactKeys(field, ["kind"]);
20600
20618
  return { kind };
20601
20619
  }
20602
20620
  if (kind === "truncated") {
20603
- assertExactKeys(field, ["capturedBytes", "kind", "originalBytes"]);
20604
20621
  const capturedBytes = readSequence(field, "capturedBytes");
20605
20622
  const originalBytes = readSequence(field, "originalBytes");
20606
20623
  if (capturedBytes > originalBytes) {
@@ -20609,7 +20626,6 @@ function readActivityDetail(value) {
20609
20626
  return { capturedBytes, kind, originalBytes };
20610
20627
  }
20611
20628
  if (kind === "recorded") {
20612
- assertExactKeys(field, ["content", "input", "kind", "output"]);
20613
20629
  const contentValue = field["content"];
20614
20630
  if (!Array.isArray(contentValue) || contentValue.length > 100) {
20615
20631
  throw new ProtocolMessageError("Invalid recorded activity content");
@@ -20652,21 +20668,6 @@ function decodeMessageKind(encoded) {
20652
20668
  function decodeSessionPromptCommand(encoded) {
20653
20669
  const value = parseJson2(encoded);
20654
20670
  const hasSessionConfigurations = Object.hasOwn(value, "sessionConfigurations");
20655
- assertExactKeys(value, [
20656
- "additionalDirectoryIds",
20657
- "agentId",
20658
- "bindingId",
20659
- "commandId",
20660
- "directoryId",
20661
- "disposition",
20662
- "images",
20663
- "kind",
20664
- "prompt",
20665
- "resources",
20666
- ...hasSessionConfigurations ? ["sessionConfigurations"] : [],
20667
- "sessionId",
20668
- "targetCommandId"
20669
- ]);
20670
20671
  assertKind(value, SESSION_PROMPT_KIND);
20671
20672
  const prompt = readText(value, "prompt", MAX_PROMPT_LENGTH);
20672
20673
  const images = decodePromptImagesValue(value["images"]);
@@ -20706,7 +20707,6 @@ function decodeSessionPromptCommand(encoded) {
20706
20707
  }
20707
20708
  function decodeSessionCancelCommand(encoded) {
20708
20709
  const value = parseJson2(encoded);
20709
- assertExactKeys(value, ["commandId", "kind", "sessionId"]);
20710
20710
  assertKind(value, SESSION_CANCEL_KIND);
20711
20711
  return {
20712
20712
  commandId: readIdentifier(value, "commandId"),
@@ -20716,7 +20716,6 @@ function decodeSessionCancelCommand(encoded) {
20716
20716
  }
20717
20717
  function decodeSessionPromptDispositionCommand(encoded) {
20718
20718
  const value = parseJson2(encoded);
20719
- assertExactKeys(value, ["commandId", "disposition", "kind", "sessionId"]);
20720
20719
  assertKind(value, SESSION_PROMPT_DISPOSITION_KIND);
20721
20720
  if (readPromptDisposition(value) !== SessionPromptDisposition.Steer) {
20722
20721
  throw new ProtocolMessageError("Only queued prompts can be steered");
@@ -20730,7 +20729,6 @@ function decodeSessionPromptDispositionCommand(encoded) {
20730
20729
  }
20731
20730
  function decodeSessionQueuedEvent(encoded) {
20732
20731
  const value = parseJson2(encoded);
20733
- assertExactKeys(value, ["commandId", "kind", "sessionId"]);
20734
20732
  assertKind(value, SESSION_QUEUED_KIND);
20735
20733
  return {
20736
20734
  commandId: readIdentifier(value, "commandId"),
@@ -20741,12 +20739,10 @@ function decodeSessionQueuedEvent(encoded) {
20741
20739
  function decodeRuntimeLivenessReadyEvent(encoded) {
20742
20740
  const value = parseJson2(encoded);
20743
20741
  assertKind(value, RUNTIME_LIVENESS_READY_KIND);
20744
- assertExactKeys(value, ["kind"]);
20745
20742
  return { kind: RUNTIME_LIVENESS_READY_KIND };
20746
20743
  }
20747
20744
  function decodeRuntimeHeartbeatEvent(encoded) {
20748
20745
  const value = parseJson2(encoded);
20749
- assertExactKeys(value, ["heartbeatId", "kind"]);
20750
20746
  assertKind(value, RUNTIME_HEARTBEAT_KIND);
20751
20747
  return {
20752
20748
  heartbeatId: readIdentifier(value, "heartbeatId"),
@@ -20755,7 +20751,6 @@ function decodeRuntimeHeartbeatEvent(encoded) {
20755
20751
  }
20756
20752
  function decodeRuntimeHeartbeatAckEvent(encoded) {
20757
20753
  const value = parseJson2(encoded);
20758
- assertExactKeys(value, ["heartbeatId", "kind"]);
20759
20754
  assertKind(value, RUNTIME_HEARTBEAT_ACK_KIND);
20760
20755
  return {
20761
20756
  heartbeatId: readIdentifier(value, "heartbeatId"),
@@ -20764,7 +20759,6 @@ function decodeRuntimeHeartbeatAckEvent(encoded) {
20764
20759
  }
20765
20760
  function decodeSessionStartedEvent(encoded) {
20766
20761
  const value = parseJson2(encoded);
20767
- assertExactKeys(value, ["commandId", "epoch", "kind", "attemptId", "prompt", "sequence", "sessionId"]);
20768
20762
  assertKind(value, SESSION_STARTED_KIND);
20769
20763
  const sequence = readSequence(value, "sequence");
20770
20764
  if (sequence !== 0) {
@@ -20782,7 +20776,6 @@ function decodeSessionStartedEvent(encoded) {
20782
20776
  }
20783
20777
  function decodeAgentMessageDeltaEvent(encoded) {
20784
20778
  const value = parseJson2(encoded);
20785
- assertExactKeys(value, ["commandId", "epoch", "kind", "messageId", "sequence", "sessionId", "text"]);
20786
20779
  assertKind(value, AGENT_MESSAGE_DELTA_KIND);
20787
20780
  const sequence = readSequence(value, "sequence");
20788
20781
  if (sequence === 0) {
@@ -20800,23 +20793,6 @@ function decodeAgentMessageDeltaEvent(encoded) {
20800
20793
  }
20801
20794
  function decodeAgentActivityEvent(encoded) {
20802
20795
  const value = parseJson2(encoded);
20803
- assertExactKeys(value, [
20804
- "activityId",
20805
- "activityType",
20806
- "commandId",
20807
- "content",
20808
- "detail",
20809
- "input",
20810
- "kind",
20811
- "locations",
20812
- "name",
20813
- "output",
20814
- "sequence",
20815
- "sessionId",
20816
- "status",
20817
- "title",
20818
- "toolKind"
20819
- ]);
20820
20796
  assertKind(value, AGENT_ACTIVITY_KIND);
20821
20797
  return {
20822
20798
  activityId: readIdentifier(value, "activityId"),
@@ -20838,7 +20814,6 @@ function decodeAgentActivityEvent(encoded) {
20838
20814
  }
20839
20815
  function decodeSessionCompletedEvent(encoded) {
20840
20816
  const value = parseJson2(encoded);
20841
- assertExactKeys(value, ["commandId", "kind", "sessionId", "stopReason"]);
20842
20817
  assertKind(value, SESSION_COMPLETED_KIND);
20843
20818
  return {
20844
20819
  commandId: readIdentifier(value, "commandId"),
@@ -20849,7 +20824,6 @@ function decodeSessionCompletedEvent(encoded) {
20849
20824
  }
20850
20825
  function decodeSessionFailedEvent(encoded) {
20851
20826
  const value = parseJson2(encoded);
20852
- assertExactKeys(value, ["code", "commandId", "kind", "message", "sessionId"]);
20853
20827
  assertKind(value, SESSION_FAILED_KIND);
20854
20828
  return {
20855
20829
  code: readIdentifier(value, "code"),
@@ -20882,7 +20856,6 @@ function encodeRuntimeHeartbeatAckEvent(message) {
20882
20856
  }
20883
20857
  function decodeAgentActivityNarrationEvent(encoded) {
20884
20858
  const value = parseJson2(encoded);
20885
- assertExactKeys(value, ["activityId", "activityType", "commandId", "kind", "sequence", "sessionId", "text"]);
20886
20859
  assertKind(value, AGENT_ACTIVITY_NARRATION_KIND);
20887
20860
  return {
20888
20861
  activityId: readIdentifier(value, "activityId"),
@@ -20900,7 +20873,7 @@ var SESSION_HISTORY_CHARACTER_LIMIT = 256e3;
20900
20873
  var SESSION_HISTORY_MESSAGE_LIMIT = 1e3;
20901
20874
  var SESSION_HISTORY_PREVIEW_MESSAGE_LIMIT = 10;
20902
20875
  var SESSION_HISTORY_IMAGE_CHARACTER_LIMIT = 4e6;
20903
- var historyImage = external_exports.strictObject({
20876
+ var historyImage = external_exports.object({
20904
20877
  data: external_exports.string().min(4).max(SESSION_HISTORY_IMAGE_CHARACTER_LIMIT).refine((data) => data.length % 4 === 0 && /^[A-Za-z0-9+/]*={0,2}$/.test(data)),
20905
20878
  mimeType: external_exports.enum(["image/png", "image/jpeg", "image/gif", "image/webp"]),
20906
20879
  name: external_exports.string().min(1).max(500)
@@ -20927,7 +20900,7 @@ function parseNativeHistoryText(text2) {
20927
20900
  });
20928
20901
  return { text: plainText, images };
20929
20902
  }
20930
- var nativeMessageActivitySchema = external_exports.strictObject({
20903
+ var nativeMessageActivitySchema = external_exports.object({
20931
20904
  activityId: external_exports.string().min(1).max(128),
20932
20905
  activityType: external_exports.string().min(1).max(128),
20933
20906
  content: external_exports.array(displayContentSchema).max(100).readonly(),
@@ -20940,12 +20913,12 @@ var nativeMessageActivitySchema = external_exports.strictObject({
20940
20913
  title: external_exports.string().max(500),
20941
20914
  toolKind: external_exports.string().max(64)
20942
20915
  }).readonly();
20943
- var userHistoryMessage = external_exports.strictObject({
20916
+ var userHistoryMessage = external_exports.object({
20944
20917
  role: external_exports.literal("user"),
20945
20918
  text: external_exports.string().max(SESSION_HISTORY_CHARACTER_LIMIT),
20946
20919
  images: external_exports.array(historyImage).max(8).readonly().optional()
20947
20920
  }).readonly();
20948
- var assistantHistoryMessageSchema = external_exports.strictObject({
20921
+ var assistantHistoryMessageSchema = external_exports.object({
20949
20922
  activities: external_exports.array(nativeMessageActivitySchema).max(100).readonly().default([]),
20950
20923
  content: external_exports.array(displayContentSchema).max(100).readonly().default([]),
20951
20924
  role: external_exports.literal("assistant"),
@@ -20955,8 +20928,8 @@ var assistantHistoryMessageSchema = external_exports.strictObject({
20955
20928
  images: external_exports.array(historyImage).max(8).readonly().optional()
20956
20929
  }).readonly();
20957
20930
  var historyMessage = external_exports.discriminatedUnion("role", [userHistoryMessage, assistantHistoryMessageSchema]);
20958
- var availableSessionHistoryObjectSchema = external_exports.strictObject({
20959
- streamPosition: external_exports.strictObject({
20931
+ var availableSessionHistoryObjectSchema = external_exports.object({
20932
+ streamPosition: external_exports.object({
20960
20933
  commandId: identifierStringSchema,
20961
20934
  epoch: identifierStringSchema,
20962
20935
  sequence: external_exports.number().int().nonnegative()
@@ -20973,9 +20946,9 @@ var availableSessionHistoryObjectSchema = external_exports.strictObject({
20973
20946
  ).max(2e4).readonly().default([])
20974
20947
  });
20975
20948
  var availableSessionHistorySchema = availableSessionHistoryObjectSchema.readonly();
20976
- var unavailableSessionHistoryObjectSchema = external_exports.strictObject({
20949
+ var unavailableSessionHistoryObjectSchema = external_exports.object({
20977
20950
  status: external_exports.literal("unavailable"),
20978
- cause: external_exports.strictObject({
20951
+ cause: external_exports.object({
20979
20952
  code: external_exports.string().regex(/^[a-z][a-z0-9_]{0,127}$/),
20980
20953
  message: external_exports.string().min(1).max(1e3)
20981
20954
  }).readonly()
@@ -21008,7 +20981,7 @@ var envelope = {
21008
20981
  requestId: identifierStringSchema,
21009
20982
  sessionId: identifierStringSchema
21010
20983
  };
21011
- var activeTurnActivitySchema = external_exports.strictObject({
20984
+ var activeTurnActivitySchema = external_exports.object({
21012
20985
  activityId: external_exports.string().min(1).max(128),
21013
20986
  activityType: external_exports.string().min(1).max(128),
21014
20987
  content: external_exports.array(displayContentSchema).max(100).readonly(),
@@ -21021,13 +20994,13 @@ var activeTurnActivitySchema = external_exports.strictObject({
21021
20994
  title: external_exports.string().max(500),
21022
20995
  toolKind: external_exports.string().max(64)
21023
20996
  }).readonly();
21024
- var activeTurnUserMessageSchema = external_exports.strictObject({
20997
+ var activeTurnUserMessageSchema = external_exports.object({
21025
20998
  id: identifierStringSchema,
21026
20999
  images: external_exports.array(promptImageSchema).max(8).readonly().optional(),
21027
21000
  role: external_exports.literal("user"),
21028
21001
  text: external_exports.string().max(SESSION_HISTORY_CHARACTER_LIMIT)
21029
21002
  }).readonly();
21030
- var activeTurnAssistantMessageSchema = external_exports.strictObject({
21003
+ var activeTurnAssistantMessageSchema = external_exports.object({
21031
21004
  activities: external_exports.array(activeTurnActivitySchema).max(100).readonly().default([]),
21032
21005
  content: external_exports.array(displayContentSchema).max(100).readonly().default([]),
21033
21006
  id: identifierStringSchema,
@@ -21038,7 +21011,7 @@ var activeTurnMessageSchema = external_exports.discriminatedUnion("role", [
21038
21011
  activeTurnUserMessageSchema,
21039
21012
  activeTurnAssistantMessageSchema
21040
21013
  ]);
21041
- var activeTurnSnapshotSchema = external_exports.strictObject({
21014
+ var activeTurnSnapshotSchema = external_exports.object({
21042
21015
  commandId: identifierStringSchema,
21043
21016
  epoch: identifierStringSchema,
21044
21017
  hasOlder: external_exports.boolean(),
@@ -21063,64 +21036,64 @@ var identity = {
21063
21036
  directoryId
21064
21037
  };
21065
21038
  var nativeSessionRequestSchema = external_exports.discriminatedUnion("action", [
21066
- external_exports.strictObject({ ...identity, action: external_exports.literal("create") }).readonly(),
21067
- external_exports.strictObject({ ...identity, action: external_exports.literal("active-turn"), targetSessionId: identifierStringSchema }).readonly(),
21068
- external_exports.strictObject({ ...identity, action: external_exports.literal("preview"), entryId: identifierStringSchema }).readonly(),
21069
- external_exports.strictObject({ ...identity, action: external_exports.literal("history"), entryId: identifierStringSchema }).readonly(),
21070
- external_exports.strictObject({ ...identity, action: external_exports.literal("find"), nativeSessionId: identifierStringSchema }).readonly(),
21071
- external_exports.strictObject({
21039
+ external_exports.object({ ...identity, action: external_exports.literal("create") }).readonly(),
21040
+ external_exports.object({ ...identity, action: external_exports.literal("active-turn"), targetSessionId: identifierStringSchema }).readonly(),
21041
+ external_exports.object({ ...identity, action: external_exports.literal("preview"), entryId: identifierStringSchema }).readonly(),
21042
+ external_exports.object({ ...identity, action: external_exports.literal("history"), entryId: identifierStringSchema }).readonly(),
21043
+ external_exports.object({ ...identity, action: external_exports.literal("find"), nativeSessionId: identifierStringSchema }).readonly(),
21044
+ external_exports.object({
21072
21045
  ...identity,
21073
21046
  action: external_exports.literal("list"),
21074
21047
  cursor: identifierStringSchema.nullable()
21075
21048
  }).readonly(),
21076
- external_exports.strictObject({
21049
+ external_exports.object({
21077
21050
  ...identity,
21078
21051
  action: external_exports.enum(["import", "fork"]),
21079
21052
  entryId: identifierStringSchema,
21080
21053
  targetSessionId: identifierStringSchema
21081
21054
  }).readonly(),
21082
- external_exports.strictObject({
21055
+ external_exports.object({
21083
21056
  ...identity,
21084
21057
  action: external_exports.literal("fork-recorded"),
21085
21058
  targetSessionId: identifierStringSchema,
21086
21059
  throughCommandId: identifierStringSchema
21087
21060
  }).readonly(),
21088
- external_exports.strictObject({
21061
+ external_exports.object({
21089
21062
  ...identity,
21090
21063
  action: external_exports.literal("delete"),
21091
21064
  entryId: identifierStringSchema
21092
21065
  }).readonly()
21093
21066
  ]);
21094
21067
  var nativeSessionCommandSchema = external_exports.discriminatedUnion("action", [
21095
- external_exports.strictObject({ ...identity, action: external_exports.literal("create") }).readonly(),
21096
- external_exports.strictObject({ ...identity, action: external_exports.literal("active-turn"), targetSessionId: identifierStringSchema }).readonly(),
21097
- external_exports.strictObject({ ...identity, action: external_exports.literal("preview"), entryId: identifierStringSchema }).readonly(),
21098
- external_exports.strictObject({ ...identity, action: external_exports.literal("history"), entryId: identifierStringSchema }).readonly(),
21099
- external_exports.strictObject({ ...identity, action: external_exports.literal("find"), nativeSessionId: identifierStringSchema }).readonly(),
21100
- external_exports.strictObject({
21068
+ external_exports.object({ ...identity, action: external_exports.literal("create") }).readonly(),
21069
+ external_exports.object({ ...identity, action: external_exports.literal("active-turn"), targetSessionId: identifierStringSchema }).readonly(),
21070
+ external_exports.object({ ...identity, action: external_exports.literal("preview"), entryId: identifierStringSchema }).readonly(),
21071
+ external_exports.object({ ...identity, action: external_exports.literal("history"), entryId: identifierStringSchema }).readonly(),
21072
+ external_exports.object({ ...identity, action: external_exports.literal("find"), nativeSessionId: identifierStringSchema }).readonly(),
21073
+ external_exports.object({
21101
21074
  ...identity,
21102
21075
  action: external_exports.literal("list"),
21103
21076
  cursor: identifierStringSchema.nullable()
21104
21077
  }).readonly(),
21105
- external_exports.strictObject({
21078
+ external_exports.object({
21106
21079
  ...identity,
21107
21080
  action: external_exports.enum(["import", "fork"]),
21108
21081
  entryId: identifierStringSchema,
21109
21082
  targetSessionId: identifierStringSchema
21110
21083
  }).readonly(),
21111
- external_exports.strictObject({
21084
+ external_exports.object({
21112
21085
  ...identity,
21113
21086
  action: external_exports.literal("fork-recorded"),
21114
21087
  targetSessionId: identifierStringSchema,
21115
21088
  throughCommandId: identifierStringSchema
21116
21089
  }).readonly(),
21117
- external_exports.strictObject({
21090
+ external_exports.object({
21118
21091
  ...identity,
21119
21092
  action: external_exports.literal("delete"),
21120
21093
  entryId: identifierStringSchema
21121
21094
  }).readonly()
21122
21095
  ]);
21123
- var nativeSessionEntrySchema = external_exports.strictObject({
21096
+ var nativeSessionEntrySchema = external_exports.object({
21124
21097
  entryId: identifierStringSchema,
21125
21098
  mobiusSessionIds: external_exports.array(identifierStringSchema).max(500).readonly(),
21126
21099
  nativeSessionId: identifierStringSchema,
@@ -21128,20 +21101,20 @@ var nativeSessionEntrySchema = external_exports.strictObject({
21128
21101
  directoryId,
21129
21102
  directoryLabel: external_exports.string().min(1).max(2048),
21130
21103
  updatedAt: external_exports.iso.datetime({ offset: true }).nullable(),
21131
- additionalDirectories: external_exports.array(external_exports.strictObject({ directoryId, name: external_exports.string().min(1).max(255) }).readonly()).max(16).readonly()
21104
+ additionalDirectories: external_exports.array(external_exports.object({ directoryId, name: external_exports.string().min(1).max(255) }).readonly()).max(16).readonly()
21132
21105
  }).readonly();
21133
21106
  var resultEnvelope = {
21134
21107
  ...envelope,
21135
21108
  kind: external_exports.literal(NATIVE_SESSION_RESULT_KIND)
21136
21109
  };
21137
21110
  var nativeSessionResultSchema = external_exports.discriminatedUnion("action", [
21138
- external_exports.strictObject({ ...resultEnvelope, action: external_exports.literal("create"), nativeSessionId: identifierStringSchema }).readonly(),
21139
- external_exports.strictObject({
21111
+ external_exports.object({ ...resultEnvelope, action: external_exports.literal("create"), nativeSessionId: identifierStringSchema }).readonly(),
21112
+ external_exports.object({
21140
21113
  ...resultEnvelope,
21141
21114
  action: external_exports.literal("active-turn"),
21142
21115
  targetSessionId: identifierStringSchema,
21143
21116
  queued: external_exports.array(
21144
- external_exports.strictObject({
21117
+ external_exports.object({
21145
21118
  commandId: identifierStringSchema,
21146
21119
  prompt: external_exports.string().max(1e5),
21147
21120
  images: external_exports.array(promptImageSchema).max(8).readonly()
@@ -21149,26 +21122,26 @@ var nativeSessionResultSchema = external_exports.discriminatedUnion("action", [
21149
21122
  ).readonly(),
21150
21123
  turn: activeTurnSnapshotSchema.nullable()
21151
21124
  }).readonly(),
21152
- external_exports.strictObject({
21125
+ external_exports.object({
21153
21126
  ...resultEnvelope,
21154
21127
  action: external_exports.literal("find"),
21155
21128
  entry: nativeSessionEntrySchema
21156
21129
  }).readonly(),
21157
- external_exports.strictObject({
21130
+ external_exports.object({
21158
21131
  ...resultEnvelope,
21159
21132
  action: external_exports.literal("list"),
21160
21133
  capabilities: sessionCapabilitiesSchema,
21161
21134
  entries: external_exports.array(nativeSessionEntrySchema).max(500).readonly(),
21162
21135
  nextCursor: identifierStringSchema.nullable()
21163
21136
  }).readonly(),
21164
- external_exports.strictObject({
21137
+ external_exports.object({
21165
21138
  ...resultEnvelope,
21166
21139
  action: external_exports.enum(["import", "fork", "fork-recorded"]),
21167
21140
  targetSessionId: identifierStringSchema,
21168
21141
  ready: sessionReadyEventSchema,
21169
21142
  title: external_exports.string().max(500)
21170
21143
  }).readonly(),
21171
- external_exports.strictObject({
21144
+ external_exports.object({
21172
21145
  ...resultEnvelope,
21173
21146
  action: external_exports.literal("preview"),
21174
21147
  entryId: identifierStringSchema,
@@ -21177,21 +21150,21 @@ var nativeSessionResultSchema = external_exports.discriminatedUnion("action", [
21177
21150
  history: sessionHistorySchema,
21178
21151
  title: external_exports.string().max(500)
21179
21152
  }).readonly(),
21180
- external_exports.strictObject({
21153
+ external_exports.object({
21181
21154
  ...resultEnvelope,
21182
21155
  action: external_exports.literal("history"),
21183
21156
  entryId: identifierStringSchema,
21184
21157
  history: sessionHistorySchema,
21185
21158
  title: external_exports.string().max(500)
21186
21159
  }).readonly(),
21187
- external_exports.strictObject({
21160
+ external_exports.object({
21188
21161
  ...resultEnvelope,
21189
21162
  action: external_exports.literal("delete"),
21190
21163
  entryId: identifierStringSchema,
21191
21164
  deletedSessionIds: external_exports.array(identifierStringSchema).max(500).readonly()
21192
21165
  }).readonly()
21193
21166
  ]);
21194
- var nativeSessionCancelSchema = external_exports.strictObject({ ...envelope, kind: external_exports.literal(NATIVE_SESSION_CANCEL_KIND) }).readonly();
21167
+ var nativeSessionCancelSchema = external_exports.object({ ...envelope, kind: external_exports.literal(NATIVE_SESSION_CANCEL_KIND) }).readonly();
21195
21168
  function decode4(schema, encoded) {
21196
21169
  try {
21197
21170
  const value = JSON.parse(encoded);
@@ -21267,23 +21240,23 @@ var boundedJsonSchema = external_exports.unknown().superRefine((value, context)
21267
21240
  });
21268
21241
  var metadataSchema = external_exports.record(external_exports.string().max(255), boundedJsonSchema).readonly();
21269
21242
  var optionalMetadata = metadataSchema.nullable().optional();
21270
- var annotationsSchema = external_exports.strictObject({
21243
+ var annotationsSchema = external_exports.object({
21271
21244
  _meta: optionalMetadata,
21272
21245
  audience: external_exports.array(external_exports.enum(["assistant", "user"])).max(2).readonly().nullable().optional(),
21273
21246
  lastModified: shortString.nullable().optional(),
21274
21247
  priority: external_exports.number().finite().nullable().optional()
21275
21248
  }).readonly();
21276
21249
  var contentFields = { _meta: optionalMetadata, annotations: annotationsSchema.nullable().optional() };
21277
- var textContentSchema = external_exports.strictObject({ ...contentFields, text: boundedString, type: external_exports.literal("text") }).readonly();
21278
- var imageContentSchema = external_exports.strictObject({
21250
+ var textContentSchema = external_exports.object({ ...contentFields, text: boundedString, type: external_exports.literal("text") }).readonly();
21251
+ var imageContentSchema = external_exports.object({
21279
21252
  ...contentFields,
21280
21253
  data: boundedString,
21281
21254
  mimeType: shortString,
21282
21255
  type: external_exports.literal("image"),
21283
21256
  uri: boundedString.nullable().optional()
21284
21257
  }).readonly();
21285
- var audioContentSchema = external_exports.strictObject({ ...contentFields, data: boundedString, mimeType: shortString, type: external_exports.literal("audio") }).readonly();
21286
- var resourceLinkSchema = external_exports.strictObject({
21258
+ var audioContentSchema = external_exports.object({ ...contentFields, data: boundedString, mimeType: shortString, type: external_exports.literal("audio") }).readonly();
21259
+ var resourceLinkSchema = external_exports.object({
21287
21260
  ...contentFields,
21288
21261
  description: boundedString.nullable().optional(),
21289
21262
  mimeType: shortString.nullable().optional(),
@@ -21293,19 +21266,19 @@ var resourceLinkSchema = external_exports.strictObject({
21293
21266
  type: external_exports.literal("resource_link"),
21294
21267
  uri: boundedString
21295
21268
  }).readonly();
21296
- var textResourceSchema = external_exports.strictObject({
21269
+ var textResourceSchema = external_exports.object({
21297
21270
  _meta: optionalMetadata,
21298
21271
  mimeType: shortString.nullable().optional(),
21299
21272
  text: boundedString,
21300
21273
  uri: boundedString
21301
21274
  }).readonly();
21302
- var blobResourceSchema = external_exports.strictObject({
21275
+ var blobResourceSchema = external_exports.object({
21303
21276
  _meta: optionalMetadata,
21304
21277
  blob: boundedString,
21305
21278
  mimeType: shortString.nullable().optional(),
21306
21279
  uri: boundedString
21307
21280
  }).readonly();
21308
- var embeddedResourceSchema = external_exports.strictObject({
21281
+ var embeddedResourceSchema = external_exports.object({
21309
21282
  ...contentFields,
21310
21283
  resource: external_exports.union([textResourceSchema, blobResourceSchema]),
21311
21284
  type: external_exports.literal("resource")
@@ -21318,17 +21291,17 @@ var contentBlockV2Schema = external_exports.discriminatedUnion("type", [
21318
21291
  embeddedResourceSchema
21319
21292
  ]);
21320
21293
  var toolCallContentSchema = external_exports.discriminatedUnion("type", [
21321
- external_exports.strictObject({ _meta: optionalMetadata, content: contentBlockV2Schema, type: external_exports.literal("content") }).readonly(),
21322
- external_exports.strictObject({
21294
+ external_exports.object({ _meta: optionalMetadata, content: contentBlockV2Schema, type: external_exports.literal("content") }).readonly(),
21295
+ external_exports.object({
21323
21296
  _meta: optionalMetadata,
21324
21297
  newText: boundedString,
21325
21298
  oldText: boundedString.nullable().optional(),
21326
21299
  path: boundedString,
21327
21300
  type: external_exports.literal("diff")
21328
21301
  }).readonly(),
21329
- external_exports.strictObject({ _meta: optionalMetadata, terminalId: shortString, type: external_exports.literal("terminal") }).readonly()
21302
+ external_exports.object({ _meta: optionalMetadata, terminalId: shortString, type: external_exports.literal("terminal") }).readonly()
21330
21303
  ]);
21331
- var toolCallLocationSchema = external_exports.strictObject({
21304
+ var toolCallLocationSchema = external_exports.object({
21332
21305
  _meta: optionalMetadata,
21333
21306
  line: external_exports.number().int().nonnegative().safe().nullable().optional(),
21334
21307
  path: boundedString
@@ -21357,40 +21330,40 @@ var toolPatchFields = {
21357
21330
  status: toolStatusSchema.nullable().optional(),
21358
21331
  title: boundedString.nullable().optional()
21359
21332
  };
21360
- var planEntrySchema = external_exports.strictObject({
21333
+ var planEntrySchema = external_exports.object({
21361
21334
  _meta: optionalMetadata,
21362
21335
  content: boundedString,
21363
21336
  priority: external_exports.enum(["high", "medium", "low"]),
21364
21337
  status: external_exports.enum(["pending", "in_progress", "completed"])
21365
21338
  }).readonly();
21366
21339
  var planContentSchema = external_exports.discriminatedUnion("type", [
21367
- external_exports.strictObject({
21340
+ external_exports.object({
21368
21341
  _meta: optionalMetadata,
21369
21342
  entries: external_exports.array(planEntrySchema).max(MAX_COLLECTION_SIZE).readonly(),
21370
21343
  planId: shortString,
21371
21344
  type: external_exports.literal("items")
21372
21345
  }).readonly(),
21373
- external_exports.strictObject({ _meta: optionalMetadata, planId: shortString, type: external_exports.literal("file"), uri: boundedString }).readonly(),
21374
- external_exports.strictObject({
21346
+ external_exports.object({ _meta: optionalMetadata, planId: shortString, type: external_exports.literal("file"), uri: boundedString }).readonly(),
21347
+ external_exports.object({
21375
21348
  _meta: optionalMetadata,
21376
21349
  content: boundedString,
21377
21350
  planId: shortString,
21378
21351
  type: external_exports.literal("markdown")
21379
21352
  }).readonly()
21380
21353
  ]);
21381
- var commandSchema = external_exports.strictObject({
21354
+ var commandSchema = external_exports.object({
21382
21355
  _meta: optionalMetadata,
21383
21356
  description: boundedString,
21384
- input: external_exports.strictObject({ _meta: optionalMetadata, hint: boundedString }).readonly().nullable().optional(),
21357
+ input: external_exports.object({ _meta: optionalMetadata, hint: boundedString }).readonly().nullable().optional(),
21385
21358
  name: shortString
21386
21359
  }).readonly();
21387
- var configSelectOptionSchema = external_exports.strictObject({
21360
+ var configSelectOptionSchema = external_exports.object({
21388
21361
  _meta: optionalMetadata,
21389
21362
  description: boundedString.nullable().optional(),
21390
21363
  name: shortString,
21391
21364
  value: shortString
21392
21365
  }).readonly();
21393
- var configSelectGroupSchema = external_exports.strictObject({
21366
+ var configSelectGroupSchema = external_exports.object({
21394
21367
  _meta: optionalMetadata,
21395
21368
  group: shortString,
21396
21369
  name: shortString,
@@ -21404,7 +21377,7 @@ var configBaseFields = {
21404
21377
  name: shortString
21405
21378
  };
21406
21379
  var sessionConfigOptionSchema2 = external_exports.discriminatedUnion("type", [
21407
- external_exports.strictObject({
21380
+ external_exports.object({
21408
21381
  ...configBaseFields,
21409
21382
  currentValue: shortString,
21410
21383
  options: external_exports.union([
@@ -21413,7 +21386,7 @@ var sessionConfigOptionSchema2 = external_exports.discriminatedUnion("type", [
21413
21386
  ]),
21414
21387
  type: external_exports.literal("select")
21415
21388
  }).readonly(),
21416
- external_exports.strictObject({ ...configBaseFields, currentValue: external_exports.boolean(), type: external_exports.literal("boolean") }).readonly()
21389
+ external_exports.object({ ...configBaseFields, currentValue: external_exports.boolean(), type: external_exports.literal("boolean") }).readonly()
21417
21390
  ]);
21418
21391
  var contentChunkFields = {
21419
21392
  _meta: optionalMetadata,
@@ -21421,10 +21394,10 @@ var contentChunkFields = {
21421
21394
  messageId: shortString.nullable().optional()
21422
21395
  };
21423
21396
  var acpSessionUpdateV2Schema = external_exports.discriminatedUnion("sessionUpdate", [
21424
- external_exports.strictObject({ ...contentChunkFields, sessionUpdate: external_exports.literal("user_message_chunk") }).readonly(),
21425
- external_exports.strictObject({ ...contentChunkFields, sessionUpdate: external_exports.literal("agent_message_chunk") }).readonly(),
21426
- external_exports.strictObject({ ...contentChunkFields, sessionUpdate: external_exports.literal("agent_thought_chunk") }).readonly(),
21427
- external_exports.strictObject({
21397
+ external_exports.object({ ...contentChunkFields, sessionUpdate: external_exports.literal("user_message_chunk") }).readonly(),
21398
+ external_exports.object({ ...contentChunkFields, sessionUpdate: external_exports.literal("agent_message_chunk") }).readonly(),
21399
+ external_exports.object({ ...contentChunkFields, sessionUpdate: external_exports.literal("agent_thought_chunk") }).readonly(),
21400
+ external_exports.object({
21428
21401
  _meta: optionalMetadata,
21429
21402
  content: external_exports.array(toolCallContentSchema).max(MAX_COLLECTION_SIZE).readonly().optional(),
21430
21403
  kind: toolKindSchema.optional(),
@@ -21437,43 +21410,43 @@ var acpSessionUpdateV2Schema = external_exports.discriminatedUnion("sessionUpdat
21437
21410
  title: boundedString,
21438
21411
  toolCallId: shortString
21439
21412
  }).readonly(),
21440
- external_exports.strictObject({ ...toolPatchFields, sessionUpdate: external_exports.literal("tool_call_update"), toolCallId: shortString }).readonly(),
21441
- external_exports.strictObject({
21413
+ external_exports.object({ ...toolPatchFields, sessionUpdate: external_exports.literal("tool_call_update"), toolCallId: shortString }).readonly(),
21414
+ external_exports.object({
21442
21415
  _meta: optionalMetadata,
21443
21416
  entries: external_exports.array(planEntrySchema).max(MAX_COLLECTION_SIZE).readonly(),
21444
21417
  sessionUpdate: external_exports.literal("plan")
21445
21418
  }).readonly(),
21446
- external_exports.strictObject({ _meta: optionalMetadata, plan: planContentSchema, sessionUpdate: external_exports.literal("plan_update") }).readonly(),
21447
- external_exports.strictObject({ _meta: optionalMetadata, planId: shortString, sessionUpdate: external_exports.literal("plan_removed") }).readonly(),
21448
- external_exports.strictObject({
21419
+ external_exports.object({ _meta: optionalMetadata, plan: planContentSchema, sessionUpdate: external_exports.literal("plan_update") }).readonly(),
21420
+ external_exports.object({ _meta: optionalMetadata, planId: shortString, sessionUpdate: external_exports.literal("plan_removed") }).readonly(),
21421
+ external_exports.object({
21449
21422
  _meta: optionalMetadata,
21450
21423
  availableCommands: external_exports.array(commandSchema).max(MAX_COLLECTION_SIZE).readonly(),
21451
21424
  sessionUpdate: external_exports.literal("available_commands_update")
21452
21425
  }).readonly(),
21453
- external_exports.strictObject({
21426
+ external_exports.object({
21454
21427
  _meta: optionalMetadata,
21455
21428
  currentModeId: shortString,
21456
21429
  sessionUpdate: external_exports.literal("current_mode_update")
21457
21430
  }).readonly(),
21458
- external_exports.strictObject({
21431
+ external_exports.object({
21459
21432
  _meta: optionalMetadata,
21460
21433
  configOptions: external_exports.array(sessionConfigOptionSchema2).max(MAX_COLLECTION_SIZE).readonly(),
21461
21434
  sessionUpdate: external_exports.literal("config_option_update")
21462
21435
  }).readonly(),
21463
- external_exports.strictObject({
21436
+ external_exports.object({
21464
21437
  _meta: optionalMetadata,
21465
21438
  sessionUpdate: external_exports.literal("session_info_update"),
21466
21439
  title: boundedString.nullable().optional(),
21467
21440
  updatedAt: shortString.nullable().optional()
21468
21441
  }).readonly(),
21469
- external_exports.strictObject({
21442
+ external_exports.object({
21470
21443
  _meta: optionalMetadata,
21471
- cost: external_exports.strictObject({ _meta: optionalMetadata, amount: external_exports.number().finite(), currency: external_exports.string().max(16) }).readonly().nullable().optional(),
21444
+ cost: external_exports.object({ _meta: optionalMetadata, amount: external_exports.number().finite(), currency: external_exports.string().max(16) }).readonly().nullable().optional(),
21472
21445
  sessionUpdate: external_exports.literal("usage_update"),
21473
21446
  size: external_exports.number().int().nonnegative().safe(),
21474
21447
  used: external_exports.number().int().nonnegative().safe()
21475
21448
  }).readonly(),
21476
- external_exports.strictObject({
21449
+ external_exports.object({
21477
21450
  _meta: optionalMetadata,
21478
21451
  compactionId: shortString,
21479
21452
  error: boundedString.nullable().optional(),
@@ -21481,7 +21454,7 @@ var acpSessionUpdateV2Schema = external_exports.discriminatedUnion("sessionUpdat
21481
21454
  status: shortString,
21482
21455
  summary: external_exports.array(contentBlockV2Schema).max(MAX_COLLECTION_SIZE).readonly().nullable().optional()
21483
21456
  }).readonly(),
21484
- external_exports.strictObject({
21457
+ external_exports.object({
21485
21458
  _meta: optionalMetadata,
21486
21459
  compactionId: shortString,
21487
21460
  content: contentBlockV2Schema,
@@ -21490,28 +21463,28 @@ var acpSessionUpdateV2Schema = external_exports.discriminatedUnion("sessionUpdat
21490
21463
  ]);
21491
21464
  var lifecycleBase = { commandId: identifierStringSchema };
21492
21465
  var lifecycleMetadataV2Schema = external_exports.discriminatedUnion("kind", [
21493
- external_exports.strictObject({ kind: external_exports.literal("session.queue.changed") }).readonly(),
21494
- external_exports.strictObject({ event: sessionPermissionRequestedEventSchema, kind: external_exports.literal("session.permission.requested") }).readonly(),
21495
- external_exports.strictObject({ event: sessionPermissionResolvedEventSchema, kind: external_exports.literal("session.permission.resolved") }).readonly(),
21496
- external_exports.strictObject({
21466
+ external_exports.object({ kind: external_exports.literal("session.queue.changed") }).readonly(),
21467
+ external_exports.object({ event: sessionPermissionRequestedEventSchema, kind: external_exports.literal("session.permission.requested") }).readonly(),
21468
+ external_exports.object({ event: sessionPermissionResolvedEventSchema, kind: external_exports.literal("session.permission.resolved") }).readonly(),
21469
+ external_exports.object({
21497
21470
  event: sessionElicitationRequestedEventSchema,
21498
21471
  kind: external_exports.literal("session.elicitation.requested")
21499
21472
  }).readonly(),
21500
- external_exports.strictObject({ event: sessionElicitationResolvedEventSchema, kind: external_exports.literal("session.elicitation.resolved") }).readonly(),
21501
- external_exports.strictObject({
21473
+ external_exports.object({ event: sessionElicitationResolvedEventSchema, kind: external_exports.literal("session.elicitation.resolved") }).readonly(),
21474
+ external_exports.object({
21502
21475
  ...lifecycleBase,
21503
21476
  content: external_exports.array(contentBlockV2Schema).min(1).max(100).readonly(),
21504
21477
  kind: external_exports.literal("prompt.requested")
21505
21478
  }).readonly(),
21506
- external_exports.strictObject({ ...lifecycleBase, attemptId: identifierStringSchema, epoch: identifierStringSchema, kind: external_exports.literal("prompt.started") }).readonly(),
21507
- external_exports.strictObject({ ...lifecycleBase, kind: external_exports.literal("prompt.completed"), stopReason: shortString }).readonly(),
21508
- external_exports.strictObject({
21479
+ external_exports.object({ ...lifecycleBase, attemptId: identifierStringSchema, epoch: identifierStringSchema, kind: external_exports.literal("prompt.started") }).readonly(),
21480
+ external_exports.object({ ...lifecycleBase, kind: external_exports.literal("prompt.completed"), stopReason: shortString }).readonly(),
21481
+ external_exports.object({
21509
21482
  ...lifecycleBase,
21510
21483
  code: identifierStringSchema,
21511
21484
  kind: external_exports.literal("prompt.failed-before-start"),
21512
21485
  message: external_exports.string().min(1).max(500)
21513
21486
  }).readonly(),
21514
- external_exports.strictObject({
21487
+ external_exports.object({
21515
21488
  ...lifecycleBase,
21516
21489
  attemptId: identifierStringSchema,
21517
21490
  code: identifierStringSchema,
@@ -21520,19 +21493,19 @@ var lifecycleMetadataV2Schema = external_exports.discriminatedUnion("kind", [
21520
21493
  }).readonly()
21521
21494
  ]);
21522
21495
  var sessionEventPayloadV2Schema = external_exports.discriminatedUnion("type", [
21523
- external_exports.strictObject({ payload: acpSessionUpdateV2Schema, type: external_exports.literal("acp") }).readonly(),
21524
- external_exports.strictObject({ payload: lifecycleMetadataV2Schema, type: external_exports.literal("lifecycle-metadata") }).readonly()
21496
+ external_exports.object({ payload: acpSessionUpdateV2Schema, type: external_exports.literal("acp") }).readonly(),
21497
+ external_exports.object({ payload: lifecycleMetadataV2Schema, type: external_exports.literal("lifecycle-metadata") }).readonly()
21525
21498
  ]);
21526
21499
  var positionSchema = external_exports.string().regex(/^(0|[1-9][0-9]*)$/);
21527
21500
  var provenanceSchema = external_exports.discriminatedUnion("kind", [
21528
- external_exports.strictObject({ kind: external_exports.literal("original") }).readonly(),
21529
- external_exports.strictObject({
21501
+ external_exports.object({ kind: external_exports.literal("original") }).readonly(),
21502
+ external_exports.object({
21530
21503
  kind: external_exports.literal("imported"),
21531
21504
  sourceEventId: identifierStringSchema,
21532
21505
  sourcePosition: positionSchema,
21533
21506
  sourceSessionId: identifierStringSchema
21534
21507
  }).readonly(),
21535
- external_exports.strictObject({
21508
+ external_exports.object({
21536
21509
  kind: external_exports.literal("forked"),
21537
21510
  sourceEventId: identifierStringSchema,
21538
21511
  sourcePosition: positionSchema,
@@ -21547,15 +21520,15 @@ var sessionEventFieldsV2 = {
21547
21520
  sessionId: identifierStringSchema
21548
21521
  };
21549
21522
  var sessionEventV2Schema = external_exports.discriminatedUnion("type", [
21550
- external_exports.strictObject({ ...sessionEventFieldsV2, payload: acpSessionUpdateV2Schema, type: external_exports.literal("acp") }).readonly(),
21551
- external_exports.strictObject({
21523
+ external_exports.object({ ...sessionEventFieldsV2, payload: acpSessionUpdateV2Schema, type: external_exports.literal("acp") }).readonly(),
21524
+ external_exports.object({
21552
21525
  ...sessionEventFieldsV2,
21553
21526
  payload: lifecycleMetadataV2Schema,
21554
21527
  type: external_exports.literal("lifecycle-metadata")
21555
21528
  }).readonly()
21556
21529
  ]);
21557
- var sessionExportV2Schema = external_exports.strictObject({
21558
- binding: external_exports.strictObject({
21530
+ var sessionExportV2Schema = external_exports.object({
21531
+ binding: external_exports.object({
21559
21532
  bindingId: identifierStringSchema,
21560
21533
  runtimeId: identifierStringSchema
21561
21534
  }).readonly(),
@@ -21592,20 +21565,20 @@ var sessionExportV2Schema = external_exports.strictObject({
21592
21565
  eventIds.add(event.eventId);
21593
21566
  }
21594
21567
  });
21595
- var mobiusSessionExportV2Schema = external_exports.strictObject({
21568
+ var mobiusSessionExportV2Schema = external_exports.object({
21596
21569
  formatVersion: external_exports.literal("2"),
21597
21570
  session: sessionExportV2Schema
21598
21571
  }).readonly();
21599
- var sessionEventEnvelopeV2Schema = external_exports.strictObject({ event: sessionEventV2Schema, kind: external_exports.literal(SESSION_EVENT_V2_KIND) }).readonly();
21600
- var sessionEventLogPageV2Schema = external_exports.strictObject({
21572
+ var sessionEventEnvelopeV2Schema = external_exports.object({ event: sessionEventV2Schema, kind: external_exports.literal(SESSION_EVENT_V2_KIND) }).readonly();
21573
+ var sessionEventLogPageV2Schema = external_exports.object({
21601
21574
  events: external_exports.array(sessionEventV2Schema).max(MAX_EVENT_COUNT).readonly(),
21602
21575
  nextCursor: external_exports.string().min(1).max(512).nullable(),
21603
21576
  tailCursor: external_exports.string().max(512),
21604
21577
  truncated: external_exports.boolean(),
21605
21578
  version: external_exports.literal(2)
21606
21579
  }).readonly();
21607
- var nativeEventPageRequestV2Schema = external_exports.strictObject({ cursor: external_exports.string().min(1).max(512).nullable(), eventLimit: external_exports.number().int().min(1).max(1e4) }).readonly();
21608
- var executingPromptRequestEventLogV2Schema = external_exports.strictObject({
21580
+ var nativeEventPageRequestV2Schema = external_exports.object({ cursor: external_exports.string().min(1).max(512).nullable(), eventLimit: external_exports.number().int().min(1).max(1e4) }).readonly();
21581
+ var executingPromptRequestEventLogV2Schema = external_exports.object({
21609
21582
  attemptId: identifierStringSchema,
21610
21583
  commandId: identifierStringSchema,
21611
21584
  epoch: identifierStringSchema,
@@ -21613,7 +21586,7 @@ var executingPromptRequestEventLogV2Schema = external_exports.strictObject({
21613
21586
  tailCursor: external_exports.string().max(512),
21614
21587
  truncated: external_exports.boolean()
21615
21588
  }).readonly();
21616
- var nativeSessionEventsV2Schema = external_exports.strictObject({
21589
+ var nativeSessionEventsV2Schema = external_exports.object({
21617
21590
  executingPromptRequest: executingPromptRequestEventLogV2Schema.nullable(),
21618
21591
  history: sessionEventLogPageV2Schema
21619
21592
  }).readonly();
@@ -21648,14 +21621,14 @@ var decodeAcpSessionUpdateV2 = (value) => decode5(value, acpSessionUpdateV2Schem
21648
21621
  var SESSION_EVENT_KIND = "session.event";
21649
21622
  var SESSION_FORKED_KIND = "session.forked";
21650
21623
  var MAX_RECORDED_EVENT_LENGTH = 8 * 1024 * 1024;
21651
- var sessionEventEnvelopeSchema = external_exports.strictObject({
21624
+ var sessionEventEnvelopeSchema = external_exports.object({
21652
21625
  kind: external_exports.literal(SESSION_EVENT_KIND),
21653
21626
  payload: external_exports.string().min(2).max(MAX_RECORDED_EVENT_LENGTH),
21654
21627
  sessionId: identifierStringSchema
21655
21628
  }).readonly();
21656
21629
  var SESSION_QUEUE_CHANGED_KIND = "session.queue.changed";
21657
- var sessionQueueChangedSchema = external_exports.strictObject({ kind: external_exports.literal(SESSION_QUEUE_CHANGED_KIND), sessionId: identifierStringSchema }).readonly();
21658
- var sessionForkedSchema = external_exports.strictObject({
21630
+ var sessionQueueChangedSchema = external_exports.object({ kind: external_exports.literal(SESSION_QUEUE_CHANGED_KIND), sessionId: identifierStringSchema }).readonly();
21631
+ var sessionForkedSchema = external_exports.object({
21659
21632
  kind: external_exports.literal(SESSION_FORKED_KIND),
21660
21633
  sessionId: identifierStringSchema,
21661
21634
  sourceSessionId: identifierStringSchema,
@@ -21727,7 +21700,7 @@ function decodeRecordedSessionEvent(encoded) {
21727
21700
  case SESSION_USAGE_UPDATED_KIND:
21728
21701
  return decodeSessionUsageUpdatedEvent(encoded);
21729
21702
  default:
21730
- throw new ProtocolMessageError("Unsupported recorded session event");
21703
+ throw new UnsupportedProtocolMessageKindError("daemon-to-service", kind);
21731
21704
  }
21732
21705
  }
21733
21706
  var encodeRecordedSessionEvent = (event) => JSON.stringify(decodeRecordedSessionEvent(JSON.stringify(event)));
@@ -21740,7 +21713,7 @@ var SESSION_LIVE_HISTORY_PAGE_LOADED_KIND = "session.live-history.page.loaded";
21740
21713
  var SESSION_LIVE_HISTORY_V2_PAGE_LOAD_KIND = "session.live-history.v2.page.load";
21741
21714
  var SESSION_LIVE_HISTORY_V2_PAGE_LOADED_KIND = "session.live-history.v2.page.loaded";
21742
21715
  var directoryIdentifier = external_exports.string().regex(/^[a-zA-Z0-9][a-zA-Z0-9_-]{0,2047}$/);
21743
- var sessionLiveHistoryLoadSchema = external_exports.strictObject({
21716
+ var sessionLiveHistoryLoadSchema = external_exports.object({
21744
21717
  additionalDirectoryIds: external_exports.array(directoryIdentifier).max(16).readonly(),
21745
21718
  agentId: identifierStringSchema,
21746
21719
  bindingId: identifierStringSchema,
@@ -21749,13 +21722,13 @@ var sessionLiveHistoryLoadSchema = external_exports.strictObject({
21749
21722
  requestId: identifierStringSchema,
21750
21723
  sessionId: identifierStringSchema
21751
21724
  }).readonly();
21752
- var sessionLiveHistoryLoadedSchema = external_exports.strictObject({
21725
+ var sessionLiveHistoryLoadedSchema = external_exports.object({
21753
21726
  history: sessionHistorySchema,
21754
21727
  kind: external_exports.literal(SESSION_LIVE_HISTORY_LOADED_KIND),
21755
21728
  requestId: identifierStringSchema,
21756
21729
  sessionId: identifierStringSchema
21757
21730
  }).readonly();
21758
- var sessionLiveHistoryPageLoadSchema = external_exports.strictObject({
21731
+ var sessionLiveHistoryPageLoadSchema = external_exports.object({
21759
21732
  additionalDirectoryIds: external_exports.array(directoryIdentifier).max(16).readonly(),
21760
21733
  agentId: identifierStringSchema,
21761
21734
  bindingId: identifierStringSchema,
@@ -21766,13 +21739,13 @@ var sessionLiveHistoryPageLoadSchema = external_exports.strictObject({
21766
21739
  requestId: identifierStringSchema,
21767
21740
  sessionId: identifierStringSchema
21768
21741
  }).readonly();
21769
- var sessionLiveHistoryPageLoadedSchema = external_exports.strictObject({
21742
+ var sessionLiveHistoryPageLoadedSchema = external_exports.object({
21770
21743
  kind: external_exports.literal(SESSION_LIVE_HISTORY_PAGE_LOADED_KIND),
21771
21744
  page: nativeMessagePageSchema,
21772
21745
  requestId: identifierStringSchema,
21773
21746
  sessionId: identifierStringSchema
21774
21747
  }).readonly();
21775
- var sessionLiveHistoryV2PageLoadSchema = external_exports.strictObject({
21748
+ var sessionLiveHistoryV2PageLoadSchema = external_exports.object({
21776
21749
  additionalDirectoryIds: external_exports.array(directoryIdentifier).max(16).readonly(),
21777
21750
  agentId: identifierStringSchema,
21778
21751
  bindingId: identifierStringSchema,
@@ -21783,7 +21756,7 @@ var sessionLiveHistoryV2PageLoadSchema = external_exports.strictObject({
21783
21756
  requestId: identifierStringSchema,
21784
21757
  sessionId: identifierStringSchema
21785
21758
  }).readonly();
21786
- var sessionLiveHistoryV2PageLoadedSchema = external_exports.strictObject({
21759
+ var sessionLiveHistoryV2PageLoadedSchema = external_exports.object({
21787
21760
  events: nativeSessionEventsV2Schema,
21788
21761
  kind: external_exports.literal(SESSION_LIVE_HISTORY_V2_PAGE_LOADED_KIND),
21789
21762
  requestId: identifierStringSchema,
@@ -21929,7 +21902,7 @@ function decodeServiceToDaemonMessage(encoded) {
21929
21902
  const kind = decodeMessageKind(encoded);
21930
21903
  const signature = serviceToDaemonRegistry[kind];
21931
21904
  if (signature === void 0) {
21932
- throw new ProtocolMessageError(`Unsupported service-to-daemon message kind: ${kind}`);
21905
+ throw new UnsupportedProtocolMessageKindError("service-to-daemon", kind);
21933
21906
  }
21934
21907
  return signature.decoder(encoded);
21935
21908
  }
@@ -21993,6 +21966,11 @@ var daemonToServiceSignatures = {
21993
21966
  encodeSessionsQueriedEvent,
21994
21967
  decodeSessionsQueriedEvent
21995
21968
  ),
21969
+ [SESSION_STATUS_CHANGED_KIND]: defineMessageSignature(
21970
+ SESSION_STATUS_CHANGED_KIND,
21971
+ encodeSessionStatusChangedEvent,
21972
+ decodeSessionStatusChangedEvent
21973
+ ),
21996
21974
  [SESSION_QUEUED_KIND]: defineMessageSignature(
21997
21975
  SESSION_QUEUED_KIND,
21998
21976
  encodeSessionQueuedEvent,
@@ -23728,7 +23706,7 @@ var threadSettingsUpdatedSchema = external_exports.object({
23728
23706
 
23729
23707
  // src/acp/codex/app-server-client.ts
23730
23708
  var INITIALIZE_TIMEOUT_MILLISECONDS = 3e4;
23731
- var OUTPUT_LIMIT_BYTES = 32 * 1024 * 1024;
23709
+ var MESSAGE_OUTPUT_LIMIT_BYTES = 32 * 1024 * 1024;
23732
23710
  var CodexAppServerError = class extends AcpExecutionError {
23733
23711
  constructor(code, message, options = {}) {
23734
23712
  super(message, options, code);
@@ -23745,8 +23723,8 @@ var CodexAppServerClient = class {
23745
23723
  kind: "open"
23746
23724
  };
23747
23725
  #nextRequestId = 1;
23748
- #pendingBuffer = "";
23749
- #receivedBytes = 0;
23726
+ #pendingBytes = 0;
23727
+ #pendingFragments = [];
23750
23728
  constructor(options) {
23751
23729
  this.#handlers = options.handlers;
23752
23730
  this.#child = spawn2(options.command, ["app-server"], {
@@ -23822,25 +23800,39 @@ var CodexAppServerClient = class {
23822
23800
  return;
23823
23801
  }
23824
23802
  try {
23825
- this.#receivedBytes += Buffer.byteLength(chunk);
23826
- if (this.#receivedBytes > OUTPUT_LIMIT_BYTES) {
23827
- throw new CodexAppServerError(
23828
- "codex_app_server_output_limit",
23829
- "The Codex app-server produced too much output"
23830
- );
23831
- }
23832
- this.#pendingBuffer += chunk;
23833
- let newline = this.#pendingBuffer.indexOf("\n");
23803
+ let cursor = 0;
23804
+ let newline = chunk.indexOf("\n");
23834
23805
  while (newline >= 0) {
23835
- const line = this.#pendingBuffer.slice(0, newline);
23836
- this.#pendingBuffer = this.#pendingBuffer.slice(newline + 1);
23837
- newline = this.#pendingBuffer.indexOf("\n");
23806
+ const fragment = chunk.slice(cursor, newline);
23807
+ const lineBytes = this.#pendingBytes + Buffer.byteLength(fragment);
23808
+ if (lineBytes > MESSAGE_OUTPUT_LIMIT_BYTES) {
23809
+ throw new CodexAppServerError(
23810
+ "codex_app_server_output_limit",
23811
+ "The Codex app-server produced an oversized message"
23812
+ );
23813
+ }
23814
+ const line = this.#pendingFragments.length === 0 ? fragment : [...this.#pendingFragments, fragment].join("");
23815
+ this.#pendingBytes = 0;
23816
+ this.#pendingFragments = [];
23817
+ cursor = newline + 1;
23818
+ newline = chunk.indexOf("\n", cursor);
23838
23819
  if (line.trim().length === 0) {
23839
23820
  continue;
23840
23821
  }
23841
23822
  const value = JSON.parse(line);
23842
23823
  this.#dispatch(decodeAppServerMessage(value));
23843
23824
  }
23825
+ const remainder = chunk.slice(cursor);
23826
+ if (remainder.length > 0) {
23827
+ this.#pendingBytes += Buffer.byteLength(remainder);
23828
+ if (this.#pendingBytes > MESSAGE_OUTPUT_LIMIT_BYTES) {
23829
+ throw new CodexAppServerError(
23830
+ "codex_app_server_output_limit",
23831
+ "The Codex app-server produced an oversized message"
23832
+ );
23833
+ }
23834
+ this.#pendingFragments.push(remainder);
23835
+ }
23844
23836
  } catch (error62) {
23845
23837
  this.#fail(
23846
23838
  error62 instanceof CodexAppServerError ? error62 : new CodexAppServerError(
@@ -36750,12 +36742,14 @@ var AgentRuntimeManager = class {
36750
36742
  #store;
36751
36743
  #nativeHistoryReader;
36752
36744
  #sessionIdentity;
36745
+ #onSessionStatusChanged;
36753
36746
  #observer;
36754
- constructor(observer = new NullAcpSessionObserver(), store = new MemoryAcpSessionStore(), nativeHistoryReader = null, sessionIdentity = "assigned") {
36747
+ constructor(observer = new NullAcpSessionObserver(), store = new MemoryAcpSessionStore(), nativeHistoryReader = null, sessionIdentity = "assigned", onSessionStatusChanged = () => void 0) {
36755
36748
  this.#observer = observer;
36756
36749
  this.#store = store;
36757
36750
  this.#nativeHistoryReader = nativeHistoryReader;
36758
36751
  this.#sessionIdentity = sessionIdentity;
36752
+ this.#onSessionStatusChanged = onSessionStatusChanged;
36759
36753
  }
36760
36754
  setObserver = (observer) => {
36761
36755
  this.#observer = observer;
@@ -37062,6 +37056,11 @@ var AgentRuntimeManager = class {
37062
37056
  }
37063
37057
  this.#executions.begin(options2.sessionId, options2.commandId);
37064
37058
  try {
37059
+ this.#onSessionStatusChanged({
37060
+ kind: "session.status.changed",
37061
+ sessionId: options2.sessionId,
37062
+ status: { commandId: options2.commandId, kind: "working" }
37063
+ });
37065
37064
  if (this.#executions.cancellation(options2.sessionId) !== void 0) {
37066
37065
  return { stopReason: "cancelled" };
37067
37066
  }
@@ -37105,6 +37104,11 @@ var AgentRuntimeManager = class {
37105
37104
  await this.#executions.cancellation(options2.sessionId);
37106
37105
  } finally {
37107
37106
  this.#executions.finish(options2.sessionId, options2.commandId);
37107
+ this.#onSessionStatusChanged({
37108
+ kind: "session.status.changed",
37109
+ sessionId: options2.sessionId,
37110
+ status: { kind: "idle" }
37111
+ });
37108
37112
  this.#executionProcesses.touch(options2.sessionId);
37109
37113
  this.#processes.notifyChanged();
37110
37114
  }
@@ -37137,6 +37141,10 @@ var AgentRuntimeManager = class {
37137
37141
  const stored = this.#store.read(sessionId);
37138
37142
  return stored instanceof FoundAcpStoredSession ? [stored.session] : [];
37139
37143
  });
37144
+ sessionStatus = (sessionId) => {
37145
+ const commandId = this.#executions.command(sessionId);
37146
+ return commandId === void 0 ? { kind: "idle" } : { commandId, kind: "working" };
37147
+ };
37140
37148
  listSessions = (limit) => this.#store.list().filter((session) => session.prompted).slice(0, limit);
37141
37149
  findLinkedSessions = (agentId, nativeSessionId) => this.#store.findNative(agentId, nativeSessionId);
37142
37150
  hasPreparedSession = (sessionId, agentId, cwd, additionalDirectories) => this.#executionProcesses.get(sessionId)?.belongsTo(agentId, cwd, additionalDirectories) === true;
@@ -39582,8 +39590,8 @@ async function readCodexHistoryWithOptions(agent, cwd, nativeSessionId, signal,
39582
39590
  const response = Promise.withResolvers();
39583
39591
  let state = { kind: "initializing", requestId: 1 };
39584
39592
  const seenCursors = /* @__PURE__ */ new Set();
39585
- let pending = "";
39586
- let receivedBytes = 0;
39593
+ let pendingBytes = 0;
39594
+ let pendingFragments = [];
39587
39595
  const fail = (cause) => response.reject(
39588
39596
  cause instanceof AcpExecutionError ? cause : new AcpExecutionError(
39589
39597
  "Saved Codex history could not be read.",
@@ -39597,20 +39605,23 @@ async function readCodexHistoryWithOptions(agent, cwd, nativeSessionId, signal,
39597
39605
  };
39598
39606
  const onData = (chunk) => {
39599
39607
  try {
39600
- receivedBytes += Buffer.byteLength(chunk);
39601
- if (receivedBytes > 32 * 1024 * 1024) {
39602
- throw new AcpExecutionError(
39603
- "This saved conversation is too large to preview.",
39604
- {},
39605
- "native_history_too_large"
39606
- );
39607
- }
39608
- pending += chunk;
39609
- let newline = pending.indexOf("\n");
39608
+ let cursor = 0;
39609
+ let newline = chunk.indexOf("\n");
39610
39610
  while (newline >= 0) {
39611
- const line = pending.slice(0, newline);
39612
- pending = pending.slice(newline + 1);
39613
- newline = pending.indexOf("\n");
39611
+ const fragment = chunk.slice(cursor, newline);
39612
+ const lineBytes = pendingBytes + Buffer.byteLength(fragment);
39613
+ if (lineBytes > 32 * 1024 * 1024) {
39614
+ throw new AcpExecutionError(
39615
+ "This saved conversation is too large to preview.",
39616
+ {},
39617
+ "native_history_too_large"
39618
+ );
39619
+ }
39620
+ const line = pendingFragments.length === 0 ? fragment : [...pendingFragments, fragment].join("");
39621
+ pendingBytes = 0;
39622
+ pendingFragments = [];
39623
+ cursor = newline + 1;
39624
+ newline = chunk.indexOf("\n", cursor);
39614
39625
  if (line.trim().length === 0) {
39615
39626
  continue;
39616
39627
  }
@@ -39706,6 +39717,18 @@ async function readCodexHistoryWithOptions(agent, cwd, nativeSessionId, signal,
39706
39717
  }
39707
39718
  }
39708
39719
  }
39720
+ const remainder = chunk.slice(cursor);
39721
+ if (remainder.length > 0) {
39722
+ pendingBytes += Buffer.byteLength(remainder);
39723
+ if (pendingBytes > 32 * 1024 * 1024) {
39724
+ throw new AcpExecutionError(
39725
+ "This saved conversation is too large to preview.",
39726
+ {},
39727
+ "native_history_too_large"
39728
+ );
39729
+ }
39730
+ pendingFragments.push(remainder);
39731
+ }
39709
39732
  } catch (cause) {
39710
39733
  fail(cause);
39711
39734
  }
@@ -40224,6 +40247,7 @@ var NativeSessionService = class {
40224
40247
  directoryLabel: directory.label,
40225
40248
  prompted: session.prompted,
40226
40249
  sessionId: session.sessionId,
40250
+ status: this.#sessions.sessionStatus(session.sessionId),
40227
40251
  title: session.title || "Untitled session",
40228
40252
  updatedAt: session.updatedAt
40229
40253
  });
@@ -43372,6 +43396,14 @@ async function runRelayConnection({
43372
43396
  }
43373
43397
  commands.handle(message);
43374
43398
  } catch (error62) {
43399
+ if (error62 instanceof UnsupportedProtocolMessageKindError) {
43400
+ console.warn("Mobius daemon skipped an unsupported Relay message", {
43401
+ code: error62.code,
43402
+ direction: error62.direction,
43403
+ messageKind: error62.messageKind
43404
+ });
43405
+ return;
43406
+ }
43375
43407
  console.error("Mobius daemon rejected a message", error62);
43376
43408
  failAndClose(
43377
43409
  new Error("Relay sent an invalid protocol message", { cause: error62 }),
@@ -43438,6 +43470,21 @@ var DaemonSessionEventPublisher = class {
43438
43470
  this.publish(sessionId, event);
43439
43471
  }
43440
43472
  };
43473
+ publishStatus = (event) => {
43474
+ const socket = this.#socket;
43475
+ if (socket === null || socket.readyState !== WebSocket9.OPEN) {
43476
+ return;
43477
+ }
43478
+ const encoded = encodeDaemonToServiceMessage(event);
43479
+ if (socket.bufferedAmount + Buffer.byteLength(encoded, "utf8") > MAX_BUFFERED_BYTES) {
43480
+ socket.close(1013, "Live event transport overloaded");
43481
+ return;
43482
+ }
43483
+ try {
43484
+ socket.send(encoded);
43485
+ } catch {
43486
+ }
43487
+ };
43441
43488
  publishV2 = (event) => {
43442
43489
  this.#store.appendExecutingPromptEventV2(event);
43443
43490
  const socket = this.#socket;
@@ -43750,7 +43797,8 @@ async function runDaemon(config2, audit, signal, timer = systemDaemonTimer, opti
43750
43797
  nativeTurn
43751
43798
  )).history : null
43752
43799
  },
43753
- "native"
43800
+ "native",
43801
+ publisher.publishStatus
43754
43802
  );
43755
43803
  const directories = new WorkspaceDirectoryService(config2.bindingId, config2.defaultWorkspace);
43756
43804
  const installationObserver = new DaemonInstallationObserver();