@opencode/protocol 2.0.31 → 2.1.0

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.
@@ -5,65 +5,24 @@ import { PTY_CONNECT_TICKET_QUERY, PTY_CONNECT_TOKEN_HEADER, PTY_CONNECT_TOKEN_H
5
5
  export { PTY_CONNECT_TICKET_QUERY, PTY_CONNECT_TOKEN_HEADER, PTY_CONNECT_TOKEN_HEADER_VALUE };
6
6
  export declare const PERSISTENT_PTY_CONNECT_PATH = "/api/experimental/persistent-pty/:ptyID/connect";
7
7
  export declare function hasPersistentPtyConnectTicketURL(url: URL): boolean;
8
- export declare const PersistentPtyGroup: HttpApiGroup.HttpApiGroup<"server.experimental", HttpApiEndpoint.HttpApiEndpoint<"persistentPty.read", "GET", "/api/experimental/session/:sessionID/terminal/read", Schema.toCodecStringTree<Schema.Struct<{
9
- sessionID: Schema.brand<Schema.String, "SessionID"> & {
10
- create: () => string & import("effect/Brand").Brand<"SessionID">;
11
- descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
8
+ export declare const PersistentPtyGroup: HttpApiGroup.HttpApiGroup<"server.experimental", HttpApiEndpoint.HttpApiEndpoint<"persistentPty.connect", "GET", "/api/experimental/persistent-pty/:ptyID/connect", Schema.toCodecStringTree<Schema.Struct<{
9
+ ptyID: Schema.brand<Schema.String, "PtyID"> & {
10
+ create: () => string & import("effect/Brand").Brand<"PtyID">;
11
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
12
12
  };
13
- }>>, Schema.toCodecStringTree<Schema.Struct<{
14
- lines: Schema.optional<Schema.compose<Schema.Int, Schema.NumberFromString>>;
15
- }>>, never, never, Schema.toCodecJson<Schema.Struct<{
16
- readonly data: Schema.NullOr<Schema.Struct<{
17
- readonly ptyID: Schema.brand<Schema.String, "PtyID"> & {
18
- create: () => string & import("effect/Brand").Brand<"PtyID">;
19
- ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
20
- };
21
- readonly title: Schema.String;
22
- readonly cwd: Schema.String;
23
- readonly foregroundProcess: Schema.NullOr<Schema.String>;
24
- readonly screen: Schema.Struct<{
25
- readonly text: Schema.String;
26
- readonly cols: Schema.Int;
27
- readonly rows: Schema.Int;
28
- readonly cursor: Schema.Struct<{
29
- readonly x: Schema.Int;
30
- readonly y: Schema.Int;
31
- }>;
32
- }>;
33
- }>>;
34
- }>>, Schema.toCodecJson<typeof ServiceUnavailableError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"persistentPty.list", "GET", "/api/experimental/session/:sessionID/terminal", Schema.toCodecStringTree<Schema.Struct<{
35
- sessionID: Schema.brand<Schema.String, "SessionID"> & {
36
- create: () => string & import("effect/Brand").Brand<"SessionID">;
37
- descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
13
+ }>>, never, never, never, Schema.toCodecJson<Schema.Boolean>, Schema.toCodecJson<typeof ServiceUnavailableError | typeof ForbiddenError | typeof PtyNotFoundError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"persistentPty.connectToken", "POST", "/api/experimental/persistent-pty/:ptyID/connect-token", Schema.toCodecStringTree<Schema.Struct<{
14
+ ptyID: Schema.brand<Schema.String, "PtyID"> & {
15
+ create: () => string & import("effect/Brand").Brand<"PtyID">;
16
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
38
17
  };
39
- }>>, never, never, never, Schema.toCodecJson<Schema.Struct<{
40
- readonly data: Schema.$Array<Schema.Struct<{
41
- readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
42
- create: () => string & import("effect/Brand").Brand<"SessionID">;
43
- descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
44
- };
45
- readonly foregroundProcess: Schema.NullOr<Schema.String>;
46
- readonly size: Schema.Struct<{
47
- readonly cols: Schema.Int;
48
- readonly rows: Schema.Int;
49
- }>;
50
- readonly output: Schema.Struct<{
51
- readonly head: Schema.Int;
52
- readonly tail: Schema.Int;
53
- }>;
54
- readonly id: Schema.brand<Schema.String, "PtyID"> & {
55
- create: () => string & import("effect/Brand").Brand<"PtyID">;
56
- ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
57
- };
58
- readonly title: Schema.String;
59
- readonly command: Schema.String;
60
- readonly args: Schema.$Array<Schema.String>;
61
- readonly cwd: Schema.String;
62
- readonly status: Schema.Literals<readonly ["running", "exited"]>;
63
- readonly pid: Schema.Int;
64
- readonly exitCode: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Int>>, Schema.optionalKey<Schema.Int>, never, never>;
65
- }>>;
66
- }>>, Schema.toCodecJson<typeof InvalidRequestError | typeof ServiceUnavailableError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"persistentPty.create", "POST", "/api/experimental/session/:sessionID/terminal", Schema.toCodecStringTree<Schema.Struct<{
18
+ }>>, never, never, Schema.toCodecStringTree<Schema.Struct<{
19
+ readonly "x-opencode-ticket": Schema.optional<Schema.String>;
20
+ }>>, Schema.toCodecJson<Schema.Struct<{
21
+ readonly data: Schema.Struct<{
22
+ readonly ticket: Schema.String;
23
+ readonly expires_in: Schema.Int;
24
+ }>;
25
+ }>>, Schema.toCodecJson<typeof ServiceUnavailableError | typeof ForbiddenError | typeof PtyNotFoundError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"persistentPty.create", "POST", "/api/experimental/session/:sessionID/terminal", Schema.toCodecStringTree<Schema.Struct<{
67
26
  sessionID: Schema.brand<Schema.String, "SessionID"> & {
68
27
  create: () => string & import("effect/Brand").Brand<"SessionID">;
69
28
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
@@ -83,6 +42,17 @@ export declare const PersistentPtyGroup: HttpApiGroup.HttpApiGroup<"server.exper
83
42
  }>>, never, never>;
84
43
  }>>, never, Schema.toCodecJson<Schema.Struct<{
85
44
  readonly data: Schema.Struct<{
45
+ readonly id: Schema.brand<Schema.String, "PtyID"> & {
46
+ create: () => string & import("effect/Brand").Brand<"PtyID">;
47
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
48
+ };
49
+ readonly title: Schema.String;
50
+ readonly command: Schema.String;
51
+ readonly args: Schema.$Array<Schema.String>;
52
+ readonly cwd: Schema.String;
53
+ readonly status: Schema.Literals<readonly ["running", "exited"]>;
54
+ readonly pid: Schema.Int;
55
+ readonly exitCode: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Int>>, Schema.optionalKey<Schema.Int>, never, never>;
86
56
  readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
87
57
  create: () => string & import("effect/Brand").Brand<"SessionID">;
88
58
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
@@ -96,6 +66,14 @@ export declare const PersistentPtyGroup: HttpApiGroup.HttpApiGroup<"server.exper
96
66
  readonly head: Schema.Int;
97
67
  readonly tail: Schema.Int;
98
68
  }>;
69
+ }>;
70
+ }>>, Schema.toCodecJson<typeof InvalidRequestError | typeof ServiceUnavailableError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"persistentPty.get", "GET", "/api/experimental/persistent-pty/:ptyID", Schema.toCodecStringTree<Schema.Struct<{
71
+ ptyID: Schema.brand<Schema.String, "PtyID"> & {
72
+ create: () => string & import("effect/Brand").Brand<"PtyID">;
73
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
74
+ };
75
+ }>>, never, never, never, Schema.toCodecJson<Schema.Struct<{
76
+ readonly data: Schema.Struct<{
99
77
  readonly id: Schema.brand<Schema.String, "PtyID"> & {
100
78
  create: () => string & import("effect/Brand").Brand<"PtyID">;
101
79
  ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
@@ -107,21 +85,6 @@ export declare const PersistentPtyGroup: HttpApiGroup.HttpApiGroup<"server.exper
107
85
  readonly status: Schema.Literals<readonly ["running", "exited"]>;
108
86
  readonly pid: Schema.Int;
109
87
  readonly exitCode: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Int>>, Schema.optionalKey<Schema.Int>, never, never>;
110
- }>;
111
- }>>, Schema.toCodecJson<typeof InvalidRequestError | typeof ServiceUnavailableError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"persistentPty.shutdown", "POST", "/api/experimental/persistent-pty/shutdown", never, never, never, never, Schema.toCodecJson<HttpApiSchema.NoContent>, Schema.toCodecJson<typeof ServiceUnavailableError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"persistentPty.handoff", "POST", "/api/experimental/persistent-pty/handoff", never, never, never, never, Schema.toCodecJson<Schema.Struct<{
112
- readonly handoff: Schema.NullOr<Schema.Struct<{
113
- readonly directory: Schema.String;
114
- readonly instanceID: Schema.String;
115
- readonly ticket: Schema.String;
116
- readonly expiresAt: Schema.Number;
117
- }>>;
118
- }>>, Schema.toCodecJson<typeof ServiceUnavailableError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"persistentPty.get", "GET", "/api/experimental/persistent-pty/:ptyID", Schema.toCodecStringTree<Schema.Struct<{
119
- ptyID: Schema.brand<Schema.String, "PtyID"> & {
120
- create: () => string & import("effect/Brand").Brand<"PtyID">;
121
- ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
122
- };
123
- }>>, never, never, never, Schema.toCodecJson<Schema.Struct<{
124
- readonly data: Schema.Struct<{
125
88
  readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
126
89
  create: () => string & import("effect/Brand").Brand<"SessionID">;
127
90
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
@@ -135,6 +98,21 @@ export declare const PersistentPtyGroup: HttpApiGroup.HttpApiGroup<"server.exper
135
98
  readonly head: Schema.Int;
136
99
  readonly tail: Schema.Int;
137
100
  }>;
101
+ }>;
102
+ }>>, Schema.toCodecJson<typeof ServiceUnavailableError | typeof PtyNotFoundError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"persistentPty.handoff", "POST", "/api/experimental/persistent-pty/handoff", never, never, never, never, Schema.toCodecJson<Schema.Struct<{
103
+ readonly handoff: Schema.NullOr<Schema.Struct<{
104
+ readonly directory: Schema.String;
105
+ readonly instanceID: Schema.String;
106
+ readonly ticket: Schema.String;
107
+ readonly expiresAt: Schema.Number;
108
+ }>>;
109
+ }>>, Schema.toCodecJson<typeof ServiceUnavailableError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"persistentPty.list", "GET", "/api/experimental/session/:sessionID/terminal", Schema.toCodecStringTree<Schema.Struct<{
110
+ sessionID: Schema.brand<Schema.String, "SessionID"> & {
111
+ create: () => string & import("effect/Brand").Brand<"SessionID">;
112
+ descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
113
+ };
114
+ }>>, never, never, never, Schema.toCodecJson<Schema.Struct<{
115
+ readonly data: Schema.$Array<Schema.Struct<{
138
116
  readonly id: Schema.brand<Schema.String, "PtyID"> & {
139
117
  create: () => string & import("effect/Brand").Brand<"PtyID">;
140
118
  ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
@@ -146,20 +124,6 @@ export declare const PersistentPtyGroup: HttpApiGroup.HttpApiGroup<"server.exper
146
124
  readonly status: Schema.Literals<readonly ["running", "exited"]>;
147
125
  readonly pid: Schema.Int;
148
126
  readonly exitCode: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Int>>, Schema.optionalKey<Schema.Int>, never, never>;
149
- }>;
150
- }>>, Schema.toCodecJson<typeof ServiceUnavailableError | typeof PtyNotFoundError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"persistentPty.update", "PUT", "/api/experimental/persistent-pty/:ptyID", Schema.toCodecStringTree<Schema.Struct<{
151
- ptyID: Schema.brand<Schema.String, "PtyID"> & {
152
- create: () => string & import("effect/Brand").Brand<"PtyID">;
153
- ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
154
- };
155
- }>>, never, Schema.toCodecJson<Schema.Struct<{
156
- readonly attachmentID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.String>>, Schema.optionalKey<Schema.String>, never, never>;
157
- readonly size: Schema.Struct<{
158
- readonly cols: Schema.Int;
159
- readonly rows: Schema.Int;
160
- }>;
161
- }>>, never, Schema.toCodecJson<Schema.Struct<{
162
- readonly data: Schema.Struct<{
163
127
  readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
164
128
  create: () => string & import("effect/Brand").Brand<"SessionID">;
165
129
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
@@ -173,19 +137,39 @@ export declare const PersistentPtyGroup: HttpApiGroup.HttpApiGroup<"server.exper
173
137
  readonly head: Schema.Int;
174
138
  readonly tail: Schema.Int;
175
139
  }>;
176
- readonly id: Schema.brand<Schema.String, "PtyID"> & {
140
+ }>>;
141
+ }>>, Schema.toCodecJson<typeof InvalidRequestError | typeof ServiceUnavailableError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"persistentPty.read", "GET", "/api/experimental/session/:sessionID/terminal/read", Schema.toCodecStringTree<Schema.Struct<{
142
+ sessionID: Schema.brand<Schema.String, "SessionID"> & {
143
+ create: () => string & import("effect/Brand").Brand<"SessionID">;
144
+ descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
145
+ };
146
+ }>>, Schema.toCodecStringTree<Schema.Struct<{
147
+ lines: Schema.optional<Schema.compose<Schema.Int, Schema.NumberFromString>>;
148
+ }>>, never, never, Schema.toCodecJson<Schema.Struct<{
149
+ readonly data: Schema.NullOr<Schema.Struct<{
150
+ readonly ptyID: Schema.brand<Schema.String, "PtyID"> & {
177
151
  create: () => string & import("effect/Brand").Brand<"PtyID">;
178
152
  ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
179
153
  };
180
154
  readonly title: Schema.String;
181
- readonly command: Schema.String;
182
- readonly args: Schema.$Array<Schema.String>;
183
155
  readonly cwd: Schema.String;
184
- readonly status: Schema.Literals<readonly ["running", "exited"]>;
185
- readonly pid: Schema.Int;
186
- readonly exitCode: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Int>>, Schema.optionalKey<Schema.Int>, never, never>;
187
- }>;
188
- }>>, Schema.toCodecJson<typeof ServiceUnavailableError | typeof PtyNotFoundError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"persistentPty.snapshot", "GET", "/api/experimental/persistent-pty/:ptyID/snapshot", Schema.toCodecStringTree<Schema.Struct<{
156
+ readonly foregroundProcess: Schema.NullOr<Schema.String>;
157
+ readonly screen: Schema.Struct<{
158
+ readonly text: Schema.String;
159
+ readonly cols: Schema.Int;
160
+ readonly rows: Schema.Int;
161
+ readonly cursor: Schema.Struct<{
162
+ readonly x: Schema.Int;
163
+ readonly y: Schema.Int;
164
+ }>;
165
+ }>;
166
+ }>>;
167
+ }>>, Schema.toCodecJson<typeof ServiceUnavailableError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"persistentPty.remove", "DELETE", "/api/experimental/persistent-pty/:ptyID", Schema.toCodecStringTree<Schema.Struct<{
168
+ ptyID: Schema.brand<Schema.String, "PtyID"> & {
169
+ create: () => string & import("effect/Brand").Brand<"PtyID">;
170
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
171
+ };
172
+ }>>, never, never, never, Schema.toCodecJson<HttpApiSchema.NoContent>, Schema.toCodecJson<typeof ServiceUnavailableError | typeof PtyNotFoundError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"persistentPty.shutdown", "POST", "/api/experimental/persistent-pty/shutdown", never, never, never, never, Schema.toCodecJson<HttpApiSchema.NoContent>, Schema.toCodecJson<typeof ServiceUnavailableError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"persistentPty.snapshot", "GET", "/api/experimental/persistent-pty/:ptyID/snapshot", Schema.toCodecStringTree<Schema.Struct<{
189
173
  ptyID: Schema.brand<Schema.String, "PtyID"> & {
190
174
  create: () => string & import("effect/Brand").Brand<"PtyID">;
191
175
  ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
@@ -193,6 +177,17 @@ export declare const PersistentPtyGroup: HttpApiGroup.HttpApiGroup<"server.exper
193
177
  }>>, never, never, never, Schema.toCodecJson<Schema.Struct<{
194
178
  readonly data: Schema.Struct<{
195
179
  readonly info: Schema.Struct<{
180
+ readonly id: Schema.brand<Schema.String, "PtyID"> & {
181
+ create: () => string & import("effect/Brand").Brand<"PtyID">;
182
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
183
+ };
184
+ readonly title: Schema.String;
185
+ readonly command: Schema.String;
186
+ readonly args: Schema.$Array<Schema.String>;
187
+ readonly cwd: Schema.String;
188
+ readonly status: Schema.Literals<readonly ["running", "exited"]>;
189
+ readonly pid: Schema.Int;
190
+ readonly exitCode: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Int>>, Schema.optionalKey<Schema.Int>, never, never>;
196
191
  readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
197
192
  create: () => string & import("effect/Brand").Brand<"SessionID">;
198
193
  descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
@@ -206,17 +201,6 @@ export declare const PersistentPtyGroup: HttpApiGroup.HttpApiGroup<"server.exper
206
201
  readonly head: Schema.Int;
207
202
  readonly tail: Schema.Int;
208
203
  }>;
209
- readonly id: Schema.brand<Schema.String, "PtyID"> & {
210
- create: () => string & import("effect/Brand").Brand<"PtyID">;
211
- ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
212
- };
213
- readonly title: Schema.String;
214
- readonly command: Schema.String;
215
- readonly args: Schema.$Array<Schema.String>;
216
- readonly cwd: Schema.String;
217
- readonly status: Schema.Literals<readonly ["running", "exited"]>;
218
- readonly pid: Schema.Int;
219
- readonly exitCode: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Int>>, Schema.optionalKey<Schema.Int>, never, never>;
220
204
  }>;
221
205
  readonly text: Schema.String;
222
206
  readonly checkpoint: Schema.Uint8Array;
@@ -225,26 +209,42 @@ export declare const PersistentPtyGroup: HttpApiGroup.HttpApiGroup<"server.exper
225
209
  readonly y: Schema.Int;
226
210
  }>;
227
211
  }>;
228
- }>>, Schema.toCodecJson<typeof ServiceUnavailableError | typeof PtyNotFoundError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"persistentPty.remove", "DELETE", "/api/experimental/persistent-pty/:ptyID", Schema.toCodecStringTree<Schema.Struct<{
229
- ptyID: Schema.brand<Schema.String, "PtyID"> & {
230
- create: () => string & import("effect/Brand").Brand<"PtyID">;
231
- ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
232
- };
233
- }>>, never, never, never, Schema.toCodecJson<HttpApiSchema.NoContent>, Schema.toCodecJson<typeof ServiceUnavailableError | typeof PtyNotFoundError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"persistentPty.connectToken", "POST", "/api/experimental/persistent-pty/:ptyID/connect-token", Schema.toCodecStringTree<Schema.Struct<{
212
+ }>>, Schema.toCodecJson<typeof ServiceUnavailableError | typeof PtyNotFoundError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"persistentPty.update", "PUT", "/api/experimental/persistent-pty/:ptyID", Schema.toCodecStringTree<Schema.Struct<{
234
213
  ptyID: Schema.brand<Schema.String, "PtyID"> & {
235
214
  create: () => string & import("effect/Brand").Brand<"PtyID">;
236
215
  ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
237
216
  };
238
- }>>, never, never, Schema.toCodecStringTree<Schema.Struct<{
239
- readonly "x-opencode-ticket": Schema.optional<Schema.String>;
240
- }>>, Schema.toCodecJson<Schema.Struct<{
217
+ }>>, never, Schema.toCodecJson<Schema.Struct<{
218
+ readonly attachmentID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.String>>, Schema.optionalKey<Schema.String>, never, never>;
219
+ readonly size: Schema.Struct<{
220
+ readonly cols: Schema.Int;
221
+ readonly rows: Schema.Int;
222
+ }>;
223
+ }>>, never, Schema.toCodecJson<Schema.Struct<{
241
224
  readonly data: Schema.Struct<{
242
- readonly ticket: Schema.String;
243
- readonly expires_in: Schema.Int;
225
+ readonly id: Schema.brand<Schema.String, "PtyID"> & {
226
+ create: () => string & import("effect/Brand").Brand<"PtyID">;
227
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
228
+ };
229
+ readonly title: Schema.String;
230
+ readonly command: Schema.String;
231
+ readonly args: Schema.$Array<Schema.String>;
232
+ readonly cwd: Schema.String;
233
+ readonly status: Schema.Literals<readonly ["running", "exited"]>;
234
+ readonly pid: Schema.Int;
235
+ readonly exitCode: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Int>>, Schema.optionalKey<Schema.Int>, never, never>;
236
+ readonly sessionID: Schema.brand<Schema.String, "SessionID"> & {
237
+ create: () => string & import("effect/Brand").Brand<"SessionID">;
238
+ descending: (id?: string) => string & import("effect/Brand").Brand<"SessionID">;
239
+ };
240
+ readonly foregroundProcess: Schema.NullOr<Schema.String>;
241
+ readonly size: Schema.Struct<{
242
+ readonly cols: Schema.Int;
243
+ readonly rows: Schema.Int;
244
+ }>;
245
+ readonly output: Schema.Struct<{
246
+ readonly head: Schema.Int;
247
+ readonly tail: Schema.Int;
248
+ }>;
244
249
  }>;
245
- }>>, Schema.toCodecJson<typeof ServiceUnavailableError | typeof ForbiddenError | typeof PtyNotFoundError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"persistentPty.connect", "GET", "/api/experimental/persistent-pty/:ptyID/connect", Schema.toCodecStringTree<Schema.Struct<{
246
- ptyID: Schema.brand<Schema.String, "PtyID"> & {
247
- create: () => string & import("effect/Brand").Brand<"PtyID">;
248
- ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
249
- };
250
- }>>, never, never, never, Schema.toCodecJson<Schema.Boolean>, Schema.toCodecJson<typeof ServiceUnavailableError | typeof ForbiddenError | typeof PtyNotFoundError>, never, never>, false>;
250
+ }>>, Schema.toCodecJson<typeof ServiceUnavailableError | typeof PtyNotFoundError>, never, never>, false>;
@@ -1,11 +1,13 @@
1
1
  import { Schema } from "effect";
2
2
  import { HttpApiEndpoint, HttpApiGroup, HttpApiSchema } from "effect/http-api";
3
3
  import { InvalidRequestError, ServiceUnavailableError } from "../errors.js";
4
- export declare const PluginGroup: HttpApiGroup.HttpApiGroup<"server.plugin", HttpApiEndpoint.HttpApiEndpoint<"plugin.list", "GET", "/api/plugin", never, Schema.toCodecStringTree<Schema.Struct<{
4
+ export declare const PluginGroup: HttpApiGroup.HttpApiGroup<"server.plugin", HttpApiEndpoint.HttpApiEndpoint<"plugin.check", "POST", "/api/plugin/check", never, Schema.toCodecStringTree<Schema.Struct<{
5
5
  readonly location: Schema.optional<Schema.Struct<{
6
6
  readonly directory: Schema.optional<Schema.String>;
7
7
  }>>;
8
- }>>, never, never, Schema.toCodecJson<Schema.Struct<{
8
+ }>>, Schema.toCodecJson<Schema.Struct<{
9
+ readonly target: Schema.optional<Schema.String>;
10
+ }>>, never, Schema.toCodecJson<Schema.Struct<{
9
11
  readonly location: Schema.Struct<{
10
12
  readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
11
13
  }>;
@@ -38,13 +40,11 @@ export declare const PluginGroup: HttpApiGroup.HttpApiGroup<"server.plugin", Htt
38
40
  readonly ref: Schema.decodeTo<Schema.optional<Schema.toType<Schema.String>>, Schema.optionalKey<Schema.String>, never, never>;
39
41
  }>]>;
40
42
  }>>;
41
- }>>, never, never, never> | HttpApiEndpoint.HttpApiEndpoint<"plugin.check", "POST", "/api/plugin/check", never, Schema.toCodecStringTree<Schema.Struct<{
43
+ }>>, Schema.toCodecJson<typeof InvalidRequestError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"plugin.list", "GET", "/api/plugin", never, Schema.toCodecStringTree<Schema.Struct<{
42
44
  readonly location: Schema.optional<Schema.Struct<{
43
45
  readonly directory: Schema.optional<Schema.String>;
44
46
  }>>;
45
- }>>, Schema.toCodecJson<Schema.Struct<{
46
- readonly target: Schema.optional<Schema.String>;
47
- }>>, never, Schema.toCodecJson<Schema.Struct<{
47
+ }>>, never, never, Schema.toCodecJson<Schema.Struct<{
48
48
  readonly location: Schema.Struct<{
49
49
  readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
50
50
  }>;
@@ -77,7 +77,7 @@ export declare const PluginGroup: HttpApiGroup.HttpApiGroup<"server.plugin", Htt
77
77
  readonly ref: Schema.decodeTo<Schema.optional<Schema.toType<Schema.String>>, Schema.optionalKey<Schema.String>, never, never>;
78
78
  }>]>;
79
79
  }>>;
80
- }>>, Schema.toCodecJson<typeof InvalidRequestError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"plugin.update", "POST", "/api/plugin/update", never, Schema.toCodecStringTree<Schema.Struct<{
80
+ }>>, never, never, never> | HttpApiEndpoint.HttpApiEndpoint<"plugin.update", "POST", "/api/plugin/update", never, Schema.toCodecStringTree<Schema.Struct<{
81
81
  readonly location: Schema.optional<Schema.Struct<{
82
82
  readonly directory: Schema.optional<Schema.String>;
83
83
  }>>;
@@ -2,7 +2,21 @@ import { Provider } from "@opencode/schema/provider";
2
2
  import { Schema } from "effect";
3
3
  import { HttpApiEndpoint, HttpApiGroup } from "effect/http-api";
4
4
  import { ProviderNotFoundError, ServiceUnavailableError } from "../errors.js";
5
- export declare const ProviderGroup: HttpApiGroup.HttpApiGroup<"server.provider", HttpApiEndpoint.HttpApiEndpoint<"provider.list", "GET", "/api/provider", never, Schema.toCodecStringTree<Schema.Struct<{
5
+ export declare const ProviderGroup: HttpApiGroup.HttpApiGroup<"server.provider", HttpApiEndpoint.HttpApiEndpoint<"provider.get", "GET", "/api/provider/:providerID", Schema.toCodecStringTree<Schema.Struct<{
6
+ providerID: Schema.brand<Schema.String, "Provider.ID"> & {
7
+ opencode: string & import("effect/Brand").Brand<"Provider.ID">;
8
+ anthropic: string & import("effect/Brand").Brand<"Provider.ID">;
9
+ openai: string & import("effect/Brand").Brand<"Provider.ID">;
10
+ google: string & import("effect/Brand").Brand<"Provider.ID">;
11
+ googleVertex: string & import("effect/Brand").Brand<"Provider.ID">;
12
+ githubCopilot: string & import("effect/Brand").Brand<"Provider.ID">;
13
+ amazonBedrock: string & import("effect/Brand").Brand<"Provider.ID">;
14
+ azure: string & import("effect/Brand").Brand<"Provider.ID">;
15
+ openrouter: string & import("effect/Brand").Brand<"Provider.ID">;
16
+ mistral: string & import("effect/Brand").Brand<"Provider.ID">;
17
+ gitlab: string & import("effect/Brand").Brand<"Provider.ID">;
18
+ };
19
+ }>>, Schema.toCodecStringTree<Schema.Struct<{
6
20
  readonly location: Schema.optional<Schema.Struct<{
7
21
  readonly directory: Schema.optional<Schema.String>;
8
22
  }>>;
@@ -10,7 +24,7 @@ export declare const ProviderGroup: HttpApiGroup.HttpApiGroup<"server.provider",
10
24
  readonly location: Schema.Struct<{
11
25
  readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
12
26
  }>;
13
- readonly data: Schema.$Array<Schema.Struct<{
27
+ readonly data: Schema.Struct<{
14
28
  readonly settings: Schema.decodeTo<Schema.optional<Schema.toType<Schema.StructWithRest<Schema.Struct<{
15
29
  readonly timeout: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Union<readonly [Schema.Finite, Schema.Literal<false>]>>>, Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Literal<false>]>>, never, never>;
16
30
  readonly headerTimeout: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Union<readonly [Schema.Finite, Schema.Literal<false>]>>>, Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Literal<false>]>>, never, never>;
@@ -93,6 +107,7 @@ export declare const ProviderGroup: HttpApiGroup.HttpApiGroup<"server.provider",
93
107
  readonly requireFinishReason: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Boolean>>, Schema.optionalKey<Schema.Boolean>, never, never>;
94
108
  readonly requireAssistantAfterTool: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Boolean>>, Schema.optionalKey<Schema.Boolean>, never, never>;
95
109
  readonly supportsPromptCacheKey: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Boolean>>, Schema.optionalKey<Schema.Boolean>, never, never>;
110
+ readonly streamUsage: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Boolean>>, Schema.optionalKey<Schema.Boolean>, never, never>;
96
111
  readonly cacheFormat: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Literals<readonly ["anthropic", "alibaba"]>>>, Schema.optionalKey<Schema.Literals<readonly ["anthropic", "alibaba"]>>, never, never>;
97
112
  }>>>, Schema.optionalKey<Schema.Struct<{
98
113
  readonly reasoningField: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Codec<import("@opencode/schema/model-compatibility").ReasoningField, import("@opencode/schema/model-compatibility").ReasoningField, never, never>>>, Schema.optionalKey<Schema.Codec<import("@opencode/schema/model-compatibility").ReasoningField, import("@opencode/schema/model-compatibility").ReasoningField, never, never>>, never, never>;
@@ -101,26 +116,13 @@ export declare const ProviderGroup: HttpApiGroup.HttpApiGroup<"server.provider",
101
116
  readonly requireFinishReason: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Boolean>>, Schema.optionalKey<Schema.Boolean>, never, never>;
102
117
  readonly requireAssistantAfterTool: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Boolean>>, Schema.optionalKey<Schema.Boolean>, never, never>;
103
118
  readonly supportsPromptCacheKey: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Boolean>>, Schema.optionalKey<Schema.Boolean>, never, never>;
119
+ readonly streamUsage: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Boolean>>, Schema.optionalKey<Schema.Boolean>, never, never>;
104
120
  readonly cacheFormat: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Literals<readonly ["anthropic", "alibaba"]>>>, Schema.optionalKey<Schema.Literals<readonly ["anthropic", "alibaba"]>>, never, never>;
105
121
  }>>, never, never>;
106
122
  }> & {
107
123
  empty: (id: Provider.ID) => Provider.Info;
108
- }>;
109
- }>>, Schema.toCodecJson<typeof ServiceUnavailableError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"provider.get", "GET", "/api/provider/:providerID", Schema.toCodecStringTree<Schema.Struct<{
110
- providerID: Schema.brand<Schema.String, "Provider.ID"> & {
111
- opencode: string & import("effect/Brand").Brand<"Provider.ID">;
112
- anthropic: string & import("effect/Brand").Brand<"Provider.ID">;
113
- openai: string & import("effect/Brand").Brand<"Provider.ID">;
114
- google: string & import("effect/Brand").Brand<"Provider.ID">;
115
- googleVertex: string & import("effect/Brand").Brand<"Provider.ID">;
116
- githubCopilot: string & import("effect/Brand").Brand<"Provider.ID">;
117
- amazonBedrock: string & import("effect/Brand").Brand<"Provider.ID">;
118
- azure: string & import("effect/Brand").Brand<"Provider.ID">;
119
- openrouter: string & import("effect/Brand").Brand<"Provider.ID">;
120
- mistral: string & import("effect/Brand").Brand<"Provider.ID">;
121
- gitlab: string & import("effect/Brand").Brand<"Provider.ID">;
122
124
  };
123
- }>>, Schema.toCodecStringTree<Schema.Struct<{
125
+ }>>, Schema.toCodecJson<typeof ServiceUnavailableError | typeof ProviderNotFoundError>, never, never> | HttpApiEndpoint.HttpApiEndpoint<"provider.list", "GET", "/api/provider", never, Schema.toCodecStringTree<Schema.Struct<{
124
126
  readonly location: Schema.optional<Schema.Struct<{
125
127
  readonly directory: Schema.optional<Schema.String>;
126
128
  }>>;
@@ -128,7 +130,7 @@ export declare const ProviderGroup: HttpApiGroup.HttpApiGroup<"server.provider",
128
130
  readonly location: Schema.Struct<{
129
131
  readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
130
132
  }>;
131
- readonly data: Schema.Struct<{
133
+ readonly data: Schema.$Array<Schema.Struct<{
132
134
  readonly settings: Schema.decodeTo<Schema.optional<Schema.toType<Schema.StructWithRest<Schema.Struct<{
133
135
  readonly timeout: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Union<readonly [Schema.Finite, Schema.Literal<false>]>>>, Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Literal<false>]>>, never, never>;
134
136
  readonly headerTimeout: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Union<readonly [Schema.Finite, Schema.Literal<false>]>>>, Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Literal<false>]>>, never, never>;
@@ -211,6 +213,7 @@ export declare const ProviderGroup: HttpApiGroup.HttpApiGroup<"server.provider",
211
213
  readonly requireFinishReason: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Boolean>>, Schema.optionalKey<Schema.Boolean>, never, never>;
212
214
  readonly requireAssistantAfterTool: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Boolean>>, Schema.optionalKey<Schema.Boolean>, never, never>;
213
215
  readonly supportsPromptCacheKey: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Boolean>>, Schema.optionalKey<Schema.Boolean>, never, never>;
216
+ readonly streamUsage: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Boolean>>, Schema.optionalKey<Schema.Boolean>, never, never>;
214
217
  readonly cacheFormat: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Literals<readonly ["anthropic", "alibaba"]>>>, Schema.optionalKey<Schema.Literals<readonly ["anthropic", "alibaba"]>>, never, never>;
215
218
  }>>>, Schema.optionalKey<Schema.Struct<{
216
219
  readonly reasoningField: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Codec<import("@opencode/schema/model-compatibility").ReasoningField, import("@opencode/schema/model-compatibility").ReasoningField, never, never>>>, Schema.optionalKey<Schema.Codec<import("@opencode/schema/model-compatibility").ReasoningField, import("@opencode/schema/model-compatibility").ReasoningField, never, never>>, never, never>;
@@ -219,9 +222,10 @@ export declare const ProviderGroup: HttpApiGroup.HttpApiGroup<"server.provider",
219
222
  readonly requireFinishReason: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Boolean>>, Schema.optionalKey<Schema.Boolean>, never, never>;
220
223
  readonly requireAssistantAfterTool: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Boolean>>, Schema.optionalKey<Schema.Boolean>, never, never>;
221
224
  readonly supportsPromptCacheKey: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Boolean>>, Schema.optionalKey<Schema.Boolean>, never, never>;
225
+ readonly streamUsage: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Boolean>>, Schema.optionalKey<Schema.Boolean>, never, never>;
222
226
  readonly cacheFormat: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Literals<readonly ["anthropic", "alibaba"]>>>, Schema.optionalKey<Schema.Literals<readonly ["anthropic", "alibaba"]>>, never, never>;
223
227
  }>>, never, never>;
224
228
  }> & {
225
229
  empty: (id: Provider.ID) => Provider.Info;
226
- };
227
- }>>, Schema.toCodecJson<typeof ServiceUnavailableError | typeof ProviderNotFoundError>, never, never>, false>;
230
+ }>;
231
+ }>>, Schema.toCodecJson<typeof ServiceUnavailableError>, never, never>, false>;
@@ -6,7 +6,16 @@ export declare const PTY_CONNECT_TOKEN_HEADER = "x-opencode-ticket";
6
6
  export declare const PTY_CONNECT_TOKEN_HEADER_VALUE = "1";
7
7
  export declare const PTY_CONNECT_PATH = "/api/pty/:ptyID/connect";
8
8
  export declare function hasPtyConnectTicketURL(url: URL): boolean;
9
- export declare const makePtyGroup: <LocationId extends HttpApiMiddleware.AnyId, LocationService>(locationMiddleware: Context.Key<LocationId, LocationService>) => HttpApiGroup.HttpApiGroup<"server.pty", HttpApiEndpoint.HttpApiEndpoint<"pty.list", "GET", "/api/pty", never, Schema.toCodecStringTree<Schema.Struct<{
9
+ export declare const makePtyGroup: <LocationId extends HttpApiMiddleware.AnyId, LocationService>(locationMiddleware: Context.Key<LocationId, LocationService>) => HttpApiGroup.HttpApiGroup<"server.pty", HttpApiEndpoint.HttpApiEndpoint<"pty.remove", "DELETE", "/api/pty/:ptyID", Schema.toCodecStringTree<Schema.Struct<{
10
+ ptyID: Schema.brand<Schema.String, "PtyID"> & {
11
+ create: () => string & import("effect/Brand").Brand<"PtyID">;
12
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
13
+ };
14
+ }>>, Schema.toCodecStringTree<Schema.Struct<{
15
+ readonly location: Schema.optional<Schema.Struct<{
16
+ readonly directory: Schema.optional<Schema.String>;
17
+ }>>;
18
+ }>>, never, never, Schema.toCodecJson<HttpApiSchema.NoContent>, Schema.toCodecJson<typeof PtyNotFoundError>, LocationId, HttpApiMiddleware.Requires<LocationId>> | HttpApiEndpoint.HttpApiEndpoint<"pty.list", "GET", "/api/pty", never, Schema.toCodecStringTree<Schema.Struct<{
10
19
  readonly location: Schema.optional<Schema.Struct<{
11
20
  readonly directory: Schema.optional<Schema.String>;
12
21
  }>>;
@@ -27,7 +36,33 @@ export declare const makePtyGroup: <LocationId extends HttpApiMiddleware.AnyId,
27
36
  readonly pid: Schema.Int;
28
37
  readonly exitCode: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Int>>, Schema.optionalKey<Schema.Int>, never, never>;
29
38
  }>>;
30
- }>>, never, LocationId, HttpApiMiddleware.Requires<LocationId>> | HttpApiEndpoint.HttpApiEndpoint<"pty.create", "POST", "/api/pty", never, Schema.toCodecStringTree<Schema.Struct<{
39
+ }>>, never, LocationId, HttpApiMiddleware.Requires<LocationId>> | HttpApiEndpoint.HttpApiEndpoint<"pty.get", "GET", "/api/pty/:ptyID", Schema.toCodecStringTree<Schema.Struct<{
40
+ ptyID: Schema.brand<Schema.String, "PtyID"> & {
41
+ create: () => string & import("effect/Brand").Brand<"PtyID">;
42
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
43
+ };
44
+ }>>, Schema.toCodecStringTree<Schema.Struct<{
45
+ readonly location: Schema.optional<Schema.Struct<{
46
+ readonly directory: Schema.optional<Schema.String>;
47
+ }>>;
48
+ }>>, never, never, Schema.toCodecJson<Schema.Struct<{
49
+ readonly location: Schema.Struct<{
50
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
51
+ }>;
52
+ readonly data: Schema.Struct<{
53
+ readonly id: Schema.brand<Schema.String, "PtyID"> & {
54
+ create: () => string & import("effect/Brand").Brand<"PtyID">;
55
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
56
+ };
57
+ readonly title: Schema.String;
58
+ readonly command: Schema.String;
59
+ readonly args: Schema.$Array<Schema.String>;
60
+ readonly cwd: Schema.String;
61
+ readonly status: Schema.Literals<readonly ["running", "exited"]>;
62
+ readonly pid: Schema.Int;
63
+ readonly exitCode: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Int>>, Schema.optionalKey<Schema.Int>, never, never>;
64
+ }>;
65
+ }>>, Schema.toCodecJson<typeof PtyNotFoundError>, LocationId, HttpApiMiddleware.Requires<LocationId>> | HttpApiEndpoint.HttpApiEndpoint<"pty.create", "POST", "/api/pty", never, Schema.toCodecStringTree<Schema.Struct<{
31
66
  readonly location: Schema.optional<Schema.Struct<{
32
67
  readonly directory: Schema.optional<Schema.String>;
33
68
  }>>;
@@ -54,7 +89,7 @@ export declare const makePtyGroup: <LocationId extends HttpApiMiddleware.AnyId,
54
89
  readonly pid: Schema.Int;
55
90
  readonly exitCode: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Int>>, Schema.optionalKey<Schema.Int>, never, never>;
56
91
  }>;
57
- }>>, never, LocationId, HttpApiMiddleware.Requires<LocationId>> | HttpApiEndpoint.HttpApiEndpoint<"pty.get", "GET", "/api/pty/:ptyID", Schema.toCodecStringTree<Schema.Struct<{
92
+ }>>, never, LocationId, HttpApiMiddleware.Requires<LocationId>> | HttpApiEndpoint.HttpApiEndpoint<"pty.connectToken", "POST", "/api/pty/:ptyID/connect-token", Schema.toCodecStringTree<Schema.Struct<{
58
93
  ptyID: Schema.brand<Schema.String, "PtyID"> & {
59
94
  create: () => string & import("effect/Brand").Brand<"PtyID">;
60
95
  ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
@@ -63,24 +98,17 @@ export declare const makePtyGroup: <LocationId extends HttpApiMiddleware.AnyId,
63
98
  readonly location: Schema.optional<Schema.Struct<{
64
99
  readonly directory: Schema.optional<Schema.String>;
65
100
  }>>;
66
- }>>, never, never, Schema.toCodecJson<Schema.Struct<{
101
+ }>>, never, Schema.toCodecStringTree<Schema.Struct<{
102
+ readonly "x-opencode-ticket": Schema.optional<Schema.String>;
103
+ }>>, Schema.toCodecJson<Schema.Struct<{
67
104
  readonly location: Schema.Struct<{
68
105
  readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
69
106
  }>;
70
107
  readonly data: Schema.Struct<{
71
- readonly id: Schema.brand<Schema.String, "PtyID"> & {
72
- create: () => string & import("effect/Brand").Brand<"PtyID">;
73
- ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
74
- };
75
- readonly title: Schema.String;
76
- readonly command: Schema.String;
77
- readonly args: Schema.$Array<Schema.String>;
78
- readonly cwd: Schema.String;
79
- readonly status: Schema.Literals<readonly ["running", "exited"]>;
80
- readonly pid: Schema.Int;
81
- readonly exitCode: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Int>>, Schema.optionalKey<Schema.Int>, never, never>;
108
+ readonly ticket: Schema.String;
109
+ readonly expires_in: Schema.Int;
82
110
  }>;
83
- }>>, Schema.toCodecJson<typeof PtyNotFoundError>, LocationId, HttpApiMiddleware.Requires<LocationId>> | HttpApiEndpoint.HttpApiEndpoint<"pty.update", "PUT", "/api/pty/:ptyID", Schema.toCodecStringTree<Schema.Struct<{
111
+ }>>, Schema.toCodecJson<typeof ForbiddenError | typeof PtyNotFoundError>, LocationId, HttpApiMiddleware.Requires<LocationId>> | HttpApiEndpoint.HttpApiEndpoint<"pty.update", "PUT", "/api/pty/:ptyID", Schema.toCodecStringTree<Schema.Struct<{
84
112
  ptyID: Schema.brand<Schema.String, "PtyID"> & {
85
113
  create: () => string & import("effect/Brand").Brand<"PtyID">;
86
114
  ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
@@ -115,35 +143,7 @@ export declare const makePtyGroup: <LocationId extends HttpApiMiddleware.AnyId,
115
143
  readonly pid: Schema.Int;
116
144
  readonly exitCode: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Int>>, Schema.optionalKey<Schema.Int>, never, never>;
117
145
  }>;
118
- }>>, Schema.toCodecJson<typeof PtyNotFoundError>, LocationId, HttpApiMiddleware.Requires<LocationId>> | HttpApiEndpoint.HttpApiEndpoint<"pty.remove", "DELETE", "/api/pty/:ptyID", Schema.toCodecStringTree<Schema.Struct<{
119
- ptyID: Schema.brand<Schema.String, "PtyID"> & {
120
- create: () => string & import("effect/Brand").Brand<"PtyID">;
121
- ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
122
- };
123
- }>>, Schema.toCodecStringTree<Schema.Struct<{
124
- readonly location: Schema.optional<Schema.Struct<{
125
- readonly directory: Schema.optional<Schema.String>;
126
- }>>;
127
- }>>, never, never, Schema.toCodecJson<HttpApiSchema.NoContent>, Schema.toCodecJson<typeof PtyNotFoundError>, LocationId, HttpApiMiddleware.Requires<LocationId>> | HttpApiEndpoint.HttpApiEndpoint<"pty.connectToken", "POST", "/api/pty/:ptyID/connect-token", Schema.toCodecStringTree<Schema.Struct<{
128
- ptyID: Schema.brand<Schema.String, "PtyID"> & {
129
- create: () => string & import("effect/Brand").Brand<"PtyID">;
130
- ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;
131
- };
132
- }>>, Schema.toCodecStringTree<Schema.Struct<{
133
- readonly location: Schema.optional<Schema.Struct<{
134
- readonly directory: Schema.optional<Schema.String>;
135
- }>>;
136
- }>>, never, Schema.toCodecStringTree<Schema.Struct<{
137
- readonly "x-opencode-ticket": Schema.optional<Schema.String>;
138
- }>>, Schema.toCodecJson<Schema.Struct<{
139
- readonly location: Schema.Struct<{
140
- readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
141
- }>;
142
- readonly data: Schema.Struct<{
143
- readonly ticket: Schema.String;
144
- readonly expires_in: Schema.Int;
145
- }>;
146
- }>>, Schema.toCodecJson<typeof ForbiddenError | typeof PtyNotFoundError>, LocationId, HttpApiMiddleware.Requires<LocationId>> | HttpApiEndpoint.HttpApiEndpoint<"pty.connect", "GET", "/api/pty/:ptyID/connect", Schema.toCodecStringTree<Schema.Struct<{
146
+ }>>, Schema.toCodecJson<typeof PtyNotFoundError>, LocationId, HttpApiMiddleware.Requires<LocationId>> | HttpApiEndpoint.HttpApiEndpoint<"pty.connect", "GET", "/api/pty/:ptyID/connect", Schema.toCodecStringTree<Schema.Struct<{
147
147
  ptyID: Schema.brand<Schema.String, "PtyID"> & {
148
148
  create: () => string & import("effect/Brand").Brand<"PtyID">;
149
149
  ascending: (id?: string) => string & import("effect/Brand").Brand<"PtyID">;