@opencode-ai/schema 0.0.0-next-17255 → 0.0.0-next-17268

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.
@@ -104,6 +104,70 @@ export declare const ModelSelected: Schema.Struct<{
104
104
  readonly created: Schema.decodeTo<Schema.DateTimeUtc, Schema.Finite, never, never>;
105
105
  }>;
106
106
  }>;
107
+ export interface LocationSwitched extends Schema.Schema.Type<typeof LocationSwitched> {
108
+ }
109
+ export declare const LocationSwitched: Schema.Struct<{
110
+ readonly type: Schema.tag<"location-switched">;
111
+ readonly location: Schema.Struct<{
112
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
113
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
114
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
115
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
116
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
117
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
118
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
119
+ }>, never, never>;
120
+ }>;
121
+ readonly projectID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Project.ID"> & {
122
+ global: string & import("effect/Brand").Brand<"Project.ID">;
123
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Project.ID"> & {
124
+ global: string & import("effect/Brand").Brand<"Project.ID">;
125
+ }>, never, never>;
126
+ readonly subpath: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "RelativePath">>>, Schema.optionalKey<Schema.brand<Schema.String, "RelativePath">>, never, never>;
127
+ readonly previous: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Struct<{
128
+ readonly location: Schema.Struct<{
129
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
130
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
131
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
132
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
133
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
134
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
135
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
136
+ }>, never, never>;
137
+ }>;
138
+ readonly projectID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Project.ID"> & {
139
+ global: string & import("effect/Brand").Brand<"Project.ID">;
140
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Project.ID"> & {
141
+ global: string & import("effect/Brand").Brand<"Project.ID">;
142
+ }>, never, never>;
143
+ readonly subpath: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "RelativePath">>>, Schema.optionalKey<Schema.brand<Schema.String, "RelativePath">>, never, never>;
144
+ }>>>, Schema.optionalKey<Schema.Struct<{
145
+ readonly location: Schema.Struct<{
146
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
147
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
148
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
149
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
150
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
151
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
152
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
153
+ }>, never, never>;
154
+ }>;
155
+ readonly projectID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Project.ID"> & {
156
+ global: string & import("effect/Brand").Brand<"Project.ID">;
157
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Project.ID"> & {
158
+ global: string & import("effect/Brand").Brand<"Project.ID">;
159
+ }>, never, never>;
160
+ readonly subpath: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "RelativePath">>>, Schema.optionalKey<Schema.brand<Schema.String, "RelativePath">>, never, never>;
161
+ }>>, never, never>;
162
+ readonly id: Schema.brand<Schema.String, "Session.Message.ID"> & {
163
+ create: () => string & import("effect/Brand").Brand<"Session.Message.ID">;
164
+ fromEvent: (eventID: Event.ID) => string & import("effect/Brand").Brand<"Session.Message.ID">;
165
+ };
166
+ readonly metadata: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.String, Schema.Unknown>>>, Schema.optionalKey<Schema.$Record<Schema.String, Schema.Unknown>>, never, never>;
167
+ readonly time: Schema.Struct<{
168
+ readonly created: Schema.decodeTo<Schema.DateTimeUtc, Schema.Finite, never, never>;
169
+ }>;
170
+ }>;
107
171
  export interface User extends Schema.Schema.Type<typeof User> {
108
172
  }
109
173
  export declare const User: Schema.Struct<{
@@ -264,7 +328,10 @@ export interface System extends Schema.Schema.Type<typeof System> {
264
328
  }
265
329
  export declare const System: Schema.Struct<{
266
330
  readonly type: Schema.tag<"system">;
331
+ /** The model-facing update text, frozen at emit time. */
267
332
  readonly text: Schema.String;
333
+ /** A short human-readable summary for transcript display. */
334
+ readonly description: Schema.decodeTo<Schema.optional<Schema.toType<Schema.String>>, Schema.optionalKey<Schema.String>, never, never>;
268
335
  readonly id: Schema.brand<Schema.String, "Session.Message.ID"> & {
269
336
  create: () => string & import("effect/Brand").Brand<"Session.Message.ID">;
270
337
  fromEvent: (eventID: Event.ID) => string & import("effect/Brand").Brand<"Session.Message.ID">;
@@ -960,6 +1027,67 @@ export declare const Info: Schema.Union<readonly [Schema.Struct<{
960
1027
  readonly time: Schema.Struct<{
961
1028
  readonly created: Schema.decodeTo<Schema.DateTimeUtc, Schema.Finite, never, never>;
962
1029
  }>;
1030
+ }>, Schema.Struct<{
1031
+ readonly type: Schema.tag<"location-switched">;
1032
+ readonly location: Schema.Struct<{
1033
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
1034
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
1035
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
1036
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
1037
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
1038
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
1039
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
1040
+ }>, never, never>;
1041
+ }>;
1042
+ readonly projectID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Project.ID"> & {
1043
+ global: string & import("effect/Brand").Brand<"Project.ID">;
1044
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Project.ID"> & {
1045
+ global: string & import("effect/Brand").Brand<"Project.ID">;
1046
+ }>, never, never>;
1047
+ readonly subpath: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "RelativePath">>>, Schema.optionalKey<Schema.brand<Schema.String, "RelativePath">>, never, never>;
1048
+ readonly previous: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Struct<{
1049
+ readonly location: Schema.Struct<{
1050
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
1051
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
1052
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
1053
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
1054
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
1055
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
1056
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
1057
+ }>, never, never>;
1058
+ }>;
1059
+ readonly projectID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Project.ID"> & {
1060
+ global: string & import("effect/Brand").Brand<"Project.ID">;
1061
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Project.ID"> & {
1062
+ global: string & import("effect/Brand").Brand<"Project.ID">;
1063
+ }>, never, never>;
1064
+ readonly subpath: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "RelativePath">>>, Schema.optionalKey<Schema.brand<Schema.String, "RelativePath">>, never, never>;
1065
+ }>>>, Schema.optionalKey<Schema.Struct<{
1066
+ readonly location: Schema.Struct<{
1067
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
1068
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
1069
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
1070
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
1071
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
1072
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
1073
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
1074
+ }>, never, never>;
1075
+ }>;
1076
+ readonly projectID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Project.ID"> & {
1077
+ global: string & import("effect/Brand").Brand<"Project.ID">;
1078
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Project.ID"> & {
1079
+ global: string & import("effect/Brand").Brand<"Project.ID">;
1080
+ }>, never, never>;
1081
+ readonly subpath: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "RelativePath">>>, Schema.optionalKey<Schema.brand<Schema.String, "RelativePath">>, never, never>;
1082
+ }>>, never, never>;
1083
+ readonly id: Schema.brand<Schema.String, "Session.Message.ID"> & {
1084
+ create: () => string & import("effect/Brand").Brand<"Session.Message.ID">;
1085
+ fromEvent: (eventID: Event.ID) => string & import("effect/Brand").Brand<"Session.Message.ID">;
1086
+ };
1087
+ readonly metadata: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.String, Schema.Unknown>>>, Schema.optionalKey<Schema.$Record<Schema.String, Schema.Unknown>>, never, never>;
1088
+ readonly time: Schema.Struct<{
1089
+ readonly created: Schema.decodeTo<Schema.DateTimeUtc, Schema.Finite, never, never>;
1090
+ }>;
963
1091
  }>, Schema.Struct<{
964
1092
  readonly text: Schema.String;
965
1093
  readonly files: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Array<Schema.Struct<{
@@ -1112,7 +1240,10 @@ export declare const Info: Schema.Union<readonly [Schema.Struct<{
1112
1240
  }>;
1113
1241
  }>, Schema.Struct<{
1114
1242
  readonly type: Schema.tag<"system">;
1243
+ /** The model-facing update text, frozen at emit time. */
1115
1244
  readonly text: Schema.String;
1245
+ /** A short human-readable summary for transcript display. */
1246
+ readonly description: Schema.decodeTo<Schema.optional<Schema.toType<Schema.String>>, Schema.optionalKey<Schema.String>, never, never>;
1116
1247
  readonly id: Schema.brand<Schema.String, "Session.Message.ID"> & {
1117
1248
  create: () => string & import("effect/Brand").Brand<"Session.Message.ID">;
1118
1249
  fromEvent: (eventID: Event.ID) => string & import("effect/Brand").Brand<"Session.Message.ID">;
@@ -1377,5 +1508,5 @@ export declare const Info: Schema.Union<readonly [Schema.Struct<{
1377
1508
  }>;
1378
1509
  readonly type: Schema.tag<"compaction">;
1379
1510
  }>]>]>;
1380
- export type Info = AgentSelected | ModelSelected | User | Synthetic | System | Skill | Shell | Assistant | Compaction;
1511
+ export type Info = AgentSelected | ModelSelected | LocationSwitched | User | Synthetic | System | Skill | Shell | Assistant | Compaction;
1381
1512
  export type Type = Info["type"];
@@ -2,7 +2,9 @@ export * as SessionMessage from "./session-message.js";
2
2
  import { Schema } from "effect";
3
3
  import { optional } from "./schema.js";
4
4
  import { Content } from "./tool.js";
5
+ import { Location } from "./location.js";
5
6
  import { Model } from "./model.js";
7
+ import { Project } from "./project.js";
6
8
  import { Prompt } from "./prompt.js";
7
9
  import { DateTimeUtcFromMillis, PositiveInt, RelativePath, statics } from "./schema.js";
8
10
  import { ascending } from "./identifier.js";
@@ -39,6 +41,18 @@ export const ModelSelected = Schema.Struct({
39
41
  model: Model.Ref,
40
42
  previous: Model.Ref.pipe(optional),
41
43
  }).annotate({ identifier: "Session.Message.ModelSelected" });
44
+ export const LocationSwitched = Schema.Struct({
45
+ ...Base,
46
+ type: Schema.tag("location-switched"),
47
+ location: Location.Ref,
48
+ projectID: Project.ID.pipe(optional),
49
+ subpath: RelativePath.pipe(optional),
50
+ previous: Schema.Struct({
51
+ location: Location.Ref,
52
+ projectID: Project.ID.pipe(optional),
53
+ subpath: RelativePath.pipe(optional),
54
+ }).pipe(optional),
55
+ }).annotate({ identifier: "Session.Message.LocationSwitched" });
42
56
  export const User = Schema.Struct({
43
57
  ...Base,
44
58
  text: Prompt.fields.text,
@@ -56,7 +70,10 @@ export const Synthetic = Schema.Struct({
56
70
  export const System = Schema.Struct({
57
71
  ...Base,
58
72
  type: Schema.tag("system"),
73
+ /** The model-facing update text, frozen at emit time. */
59
74
  text: Schema.String,
75
+ /** A short human-readable summary for transcript display. */
76
+ description: Schema.String.pipe(optional),
60
77
  }).annotate({ identifier: "Session.Message.System" });
61
78
  export const Skill = Schema.Struct({
62
79
  ...Base,
@@ -181,6 +198,7 @@ export const Compaction = Schema.Union([CompactionRunning, CompactionCompleted,
181
198
  export const Info = Schema.Union([
182
199
  AgentSelected,
183
200
  ModelSelected,
201
+ LocationSwitched,
184
202
  User,
185
203
  Synthetic,
186
204
  System,
@@ -262,6 +262,67 @@ export declare const Data: Schema.Struct<{
262
262
  readonly time: Schema.Struct<{
263
263
  readonly created: Schema.decodeTo<Schema.DateTimeUtc, Schema.Finite, never, never>;
264
264
  }>;
265
+ }>, Schema.Struct<{
266
+ readonly type: Schema.tag<"location-switched">;
267
+ readonly location: Schema.Struct<{
268
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
269
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
270
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
271
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
272
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
273
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
274
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
275
+ }>, never, never>;
276
+ }>;
277
+ readonly projectID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Project.ID"> & {
278
+ global: string & import("effect/Brand").Brand<"Project.ID">;
279
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Project.ID"> & {
280
+ global: string & import("effect/Brand").Brand<"Project.ID">;
281
+ }>, never, never>;
282
+ readonly subpath: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "RelativePath">>>, Schema.optionalKey<Schema.brand<Schema.String, "RelativePath">>, never, never>;
283
+ readonly previous: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Struct<{
284
+ readonly location: Schema.Struct<{
285
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
286
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
287
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
288
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
289
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
290
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
291
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
292
+ }>, never, never>;
293
+ }>;
294
+ readonly projectID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Project.ID"> & {
295
+ global: string & import("effect/Brand").Brand<"Project.ID">;
296
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Project.ID"> & {
297
+ global: string & import("effect/Brand").Brand<"Project.ID">;
298
+ }>, never, never>;
299
+ readonly subpath: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "RelativePath">>>, Schema.optionalKey<Schema.brand<Schema.String, "RelativePath">>, never, never>;
300
+ }>>>, Schema.optionalKey<Schema.Struct<{
301
+ readonly location: Schema.Struct<{
302
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
303
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
304
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
305
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
306
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
307
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
308
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
309
+ }>, never, never>;
310
+ }>;
311
+ readonly projectID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Project.ID"> & {
312
+ global: string & import("effect/Brand").Brand<"Project.ID">;
313
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Project.ID"> & {
314
+ global: string & import("effect/Brand").Brand<"Project.ID">;
315
+ }>, never, never>;
316
+ readonly subpath: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "RelativePath">>>, Schema.optionalKey<Schema.brand<Schema.String, "RelativePath">>, never, never>;
317
+ }>>, never, never>;
318
+ readonly id: Schema.brand<Schema.String, "Session.Message.ID"> & {
319
+ create: () => string & import("effect/Brand").Brand<"Session.Message.ID">;
320
+ fromEvent: (eventID: import("./event.js").ID) => string & import("effect/Brand").Brand<"Session.Message.ID">;
321
+ };
322
+ readonly metadata: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.String, Schema.Unknown>>>, Schema.optionalKey<Schema.$Record<Schema.String, Schema.Unknown>>, never, never>;
323
+ readonly time: Schema.Struct<{
324
+ readonly created: Schema.decodeTo<Schema.DateTimeUtc, Schema.Finite, never, never>;
325
+ }>;
265
326
  }>, Schema.Struct<{
266
327
  readonly text: Schema.String;
267
328
  readonly files: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Array<Schema.Struct<{
@@ -415,6 +476,7 @@ export declare const Data: Schema.Struct<{
415
476
  }>, Schema.Struct<{
416
477
  readonly type: Schema.tag<"system">;
417
478
  readonly text: Schema.String;
479
+ readonly description: Schema.decodeTo<Schema.optional<Schema.toType<Schema.String>>, Schema.optionalKey<Schema.String>, never, never>;
418
480
  readonly id: Schema.brand<Schema.String, "Session.Message.ID"> & {
419
481
  create: () => string & import("effect/Brand").Brand<"Session.Message.ID">;
420
482
  fromEvent: (eventID: import("./event.js").ID) => string & import("effect/Brand").Brand<"Session.Message.ID">;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package.json",
3
3
  "name": "@opencode-ai/schema",
4
- "version": "0.0.0-next-17255",
4
+ "version": "0.0.0-next-17268",
5
5
  "type": "module",
6
6
  "license": "MIT",
7
7
  "repository": {