@deepseek-ai/dsh-api-terminal-controller 0.1.6-alpha.1 → 0.1.7-alpha.1

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.
@@ -1,17 +1,23 @@
1
1
  /* Generated by @deepseek-ai/dsh-typert-generator from FaceModel — do not edit. */
2
2
  import { z } from 'zod'
3
3
 
4
- const _deepseek_ai_dsh_api_terminal_controller_terminal_close_parameter_0$schema = z.intersection(z.string(), z.unknown())
5
- const _deepseek_ai_dsh_api_terminal_controller_terminal_close_parameter_1$schema = z.intersection(z.string(), z.unknown())
6
- const _deepseek_ai_dsh_api_terminal_controller_terminal_close_result$schema = z.void()
7
- const _deepseek_ai_dsh_api_terminal_controller_terminal_create_parameter_0$schema = z.intersection(z.string(), z.unknown())
8
- const _deepseek_ai_dsh_api_terminal_controller_terminal_create_parameter_1$schema = z.object({
4
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_close_parameter_0$schema$value
5
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_close_parameter_0$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_close_parameter_0$schema$value ??= z.intersection(z.string(), z.unknown()))
6
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_close_parameter_1$schema$value
7
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_close_parameter_1$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_close_parameter_1$schema$value ??= z.intersection(z.string(), z.unknown()))
8
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_close_result$schema$value
9
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_close_result$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_close_result$schema$value ??= z.void())
10
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_create_parameter_0$schema$value
11
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_create_parameter_0$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_create_parameter_0$schema$value ??= z.intersection(z.string(), z.unknown()))
12
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_create_parameter_1$schema$value
13
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_create_parameter_1$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_create_parameter_1$schema$value ??= z.object({
9
14
  'shellPath': z.string().readonly().optional(),
10
15
  'id': z.intersection(z.string(), z.unknown()).readonly(),
11
16
  'cols': z.number().readonly(),
12
17
  'rows': z.number().readonly(),
13
- })
14
- const _deepseek_ai_dsh_api_terminal_controller_terminal_create_result$schema = z.object({
18
+ }))
19
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_create_result$schema$value
20
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_create_result$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_create_result$schema$value ??= z.object({
15
21
  'id': z.intersection(z.string(), z.unknown()).readonly(),
16
22
  'title': z.string().readonly(),
17
23
  'shell': z.object({
@@ -22,23 +28,29 @@ const _deepseek_ai_dsh_api_terminal_controller_terminal_create_result$schema = z
22
28
  'cwd': z.string().readonly(),
23
29
  'cols': z.number().readonly(),
24
30
  'rows': z.number().readonly(),
25
- 'state': z.union([z.literal("running"), z.literal("failed"), z.literal("exited")]).readonly(),
31
+ 'state': z.union([z.literal("failed"), z.literal("running"), z.literal("exited")]).readonly(),
26
32
  'exitCode': z.union([z.literal(null), z.number()]).readonly(),
27
33
  'error': z.string().readonly().optional(),
28
34
  'controllerId': z.intersection(z.string(), z.unknown()).readonly().optional(),
29
- })
30
- const _deepseek_ai_dsh_api_terminal_controller_terminal_environment_parameter_0$schema = z.intersection(z.string(), z.unknown())
31
- const _deepseek_ai_dsh_api_terminal_controller_terminal_environment_result$schema = z.object({
35
+ }))
36
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_environment_parameter_0$schema$value
37
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_environment_parameter_0$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_environment_parameter_0$schema$value ??= z.intersection(z.string(), z.unknown()))
38
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_environment_result$schema$value
39
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_environment_result$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_environment_result$schema$value ??= z.object({
32
40
  'cwd': z.string().readonly(),
33
41
  'maxInputBytes': z.number().readonly(),
34
42
  'maxCols': z.number().readonly(),
35
43
  'maxRows': z.number().readonly(),
36
44
  'scrollback': z.number().readonly(),
37
- })
38
- const _deepseek_ai_dsh_api_terminal_controller_terminal_follow_parameter_0$schema = z.intersection(z.string(), z.unknown())
39
- const _deepseek_ai_dsh_api_terminal_controller_terminal_follow_parameter_1$schema = z.intersection(z.string(), z.unknown())
40
- const _deepseek_ai_dsh_api_terminal_controller_terminal_follow_parameter_2$schema = z.intersection(z.string(), z.unknown())
41
- const _deepseek_ai_dsh_api_terminal_controller_terminal_follow_result$schema = z.union([z.object({
45
+ }))
46
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_follow_parameter_0$schema$value
47
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_follow_parameter_0$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_follow_parameter_0$schema$value ??= z.intersection(z.string(), z.unknown()))
48
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_follow_parameter_1$schema$value
49
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_follow_parameter_1$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_follow_parameter_1$schema$value ??= z.intersection(z.string(), z.unknown()))
50
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_follow_parameter_2$schema$value
51
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_follow_parameter_2$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_follow_parameter_2$schema$value ??= z.intersection(z.string(), z.unknown()))
52
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_follow_result$schema$value
53
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_follow_result$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_follow_result$schema$value ??= z.union([z.object({
42
54
  'type': z.literal("snapshot").readonly(),
43
55
  'sequence': z.number().readonly(),
44
56
  'screen': z.string().readonly(),
@@ -53,7 +65,7 @@ const _deepseek_ai_dsh_api_terminal_controller_terminal_follow_result$schema = z
53
65
  'cwd': z.string().readonly(),
54
66
  'cols': z.number().readonly(),
55
67
  'rows': z.number().readonly(),
56
- 'state': z.union([z.literal("running"), z.literal("failed"), z.literal("exited")]).readonly(),
68
+ 'state': z.union([z.literal("failed"), z.literal("running"), z.literal("exited")]).readonly(),
57
69
  'exitCode': z.union([z.literal(null), z.number()]).readonly(),
58
70
  'error': z.string().readonly().optional(),
59
71
  'controllerId': z.intersection(z.string(), z.unknown()).readonly().optional(),
@@ -75,14 +87,16 @@ const _deepseek_ai_dsh_api_terminal_controller_terminal_follow_result$schema = z
75
87
  'cwd': z.string().readonly(),
76
88
  'cols': z.number().readonly(),
77
89
  'rows': z.number().readonly(),
78
- 'state': z.union([z.literal("running"), z.literal("failed"), z.literal("exited")]).readonly(),
90
+ 'state': z.union([z.literal("failed"), z.literal("running"), z.literal("exited")]).readonly(),
79
91
  'exitCode': z.union([z.literal(null), z.number()]).readonly(),
80
92
  'error': z.string().readonly().optional(),
81
93
  'controllerId': z.intersection(z.string(), z.unknown()).readonly().optional(),
82
94
  }).readonly(),
83
- })])
84
- const _deepseek_ai_dsh_api_terminal_controller_terminal_list_parameter_0$schema = z.intersection(z.string(), z.unknown())
85
- const _deepseek_ai_dsh_api_terminal_controller_terminal_list_result$schema = z.array(z.object({
95
+ })]))
96
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_list_parameter_0$schema$value
97
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_list_parameter_0$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_list_parameter_0$schema$value ??= z.intersection(z.string(), z.unknown()))
98
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_list_result$schema$value
99
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_list_result$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_list_result$schema$value ??= z.array(z.object({
86
100
  'id': z.intersection(z.string(), z.unknown()).readonly(),
87
101
  'title': z.string().readonly(),
88
102
  'shell': z.object({
@@ -93,32 +107,57 @@ const _deepseek_ai_dsh_api_terminal_controller_terminal_list_result$schema = z.a
93
107
  'cwd': z.string().readonly(),
94
108
  'cols': z.number().readonly(),
95
109
  'rows': z.number().readonly(),
96
- 'state': z.union([z.literal("running"), z.literal("failed"), z.literal("exited")]).readonly(),
110
+ 'state': z.union([z.literal("failed"), z.literal("running"), z.literal("exited")]).readonly(),
97
111
  'exitCode': z.union([z.literal(null), z.number()]).readonly(),
98
112
  'error': z.string().readonly().optional(),
99
113
  'controllerId': z.intersection(z.string(), z.unknown()).readonly().optional(),
114
+ })))
115
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_rename_parameter_0$schema$value
116
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_rename_parameter_0$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_rename_parameter_0$schema$value ??= z.intersection(z.string(), z.unknown()))
117
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_rename_parameter_1$schema$value
118
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_rename_parameter_1$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_rename_parameter_1$schema$value ??= z.intersection(z.string(), z.unknown()))
119
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_rename_parameter_2$schema$value
120
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_rename_parameter_2$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_rename_parameter_2$schema$value ??= z.string())
121
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_rename_result$schema$value
122
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_rename_result$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_rename_result$schema$value ??= z.void())
123
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_0$schema$value
124
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_0$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_0$schema$value ??= z.intersection(z.string(), z.unknown()))
125
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_1$schema$value
126
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_1$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_1$schema$value ??= z.intersection(z.string(), z.unknown()))
127
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_2$schema$value
128
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_2$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_2$schema$value ??= z.intersection(z.string(), z.unknown()))
129
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_3$schema$value
130
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_3$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_3$schema$value ??= z.number())
131
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_4$schema$value
132
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_4$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_4$schema$value ??= z.number())
133
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_resize_result$schema$value
134
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_resize_result$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_resize_result$schema$value ??= z.void())
135
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_retain_parameter_0$schema$value
136
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_retain_parameter_0$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_retain_parameter_0$schema$value ??= z.intersection(z.string(), z.unknown()))
137
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_retain_parameter_1$schema$value
138
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_retain_parameter_1$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_retain_parameter_1$schema$value ??= z.intersection(z.string(), z.unknown()))
139
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_retain_result$schema$value
140
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_retain_result$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_retain_result$schema$value ??= z.object({
141
+ 'type': z.literal("retained").readonly(),
100
142
  }))
101
- const _deepseek_ai_dsh_api_terminal_controller_terminal_rename_parameter_0$schema = z.intersection(z.string(), z.unknown())
102
- const _deepseek_ai_dsh_api_terminal_controller_terminal_rename_parameter_1$schema = z.intersection(z.string(), z.unknown())
103
- const _deepseek_ai_dsh_api_terminal_controller_terminal_rename_parameter_2$schema = z.string()
104
- const _deepseek_ai_dsh_api_terminal_controller_terminal_rename_result$schema = z.void()
105
- const _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_0$schema = z.intersection(z.string(), z.unknown())
106
- const _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_1$schema = z.intersection(z.string(), z.unknown())
107
- const _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_2$schema = z.intersection(z.string(), z.unknown())
108
- const _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_3$schema = z.number()
109
- const _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_4$schema = z.number()
110
- const _deepseek_ai_dsh_api_terminal_controller_terminal_resize_result$schema = z.void()
111
- const _deepseek_ai_dsh_api_terminal_controller_terminal_shells_parameter_0$schema = z.intersection(z.string(), z.unknown())
112
- const _deepseek_ai_dsh_api_terminal_controller_terminal_shells_result$schema = z.array(z.object({
143
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_shells_parameter_0$schema$value
144
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_shells_parameter_0$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_shells_parameter_0$schema$value ??= z.intersection(z.string(), z.unknown()))
145
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_shells_result$schema$value
146
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_shells_result$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_shells_result$schema$value ??= z.array(z.object({
113
147
  'path': z.string().readonly(),
114
148
  'args': z.array(z.string()).readonly(),
115
149
  'name': z.string().readonly(),
116
- }))
117
- const _deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_0$schema = z.intersection(z.string(), z.unknown())
118
- const _deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_1$schema = z.intersection(z.string(), z.unknown())
119
- const _deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_2$schema = z.intersection(z.string(), z.unknown())
120
- const _deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_3$schema = z.string()
121
- const _deepseek_ai_dsh_api_terminal_controller_terminal_write_result$schema = z.void()
150
+ })))
151
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_0$schema$value
152
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_0$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_0$schema$value ??= z.intersection(z.string(), z.unknown()))
153
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_1$schema$value
154
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_1$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_1$schema$value ??= z.intersection(z.string(), z.unknown()))
155
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_2$schema$value
156
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_2$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_2$schema$value ??= z.intersection(z.string(), z.unknown()))
157
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_3$schema$value
158
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_3$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_3$schema$value ??= z.string())
159
+ let _deepseek_ai_dsh_api_terminal_controller_terminal_write_result$schema$value
160
+ const _deepseek_ai_dsh_api_terminal_controller_terminal_write_result$schema = () => (_deepseek_ai_dsh_api_terminal_controller_terminal_write_result$schema$value ??= z.void())
122
161
 
123
162
  export const TYPERT = {
124
163
  package: '@deepseek-ai/dsh-api-terminal-controller',
@@ -145,7 +184,7 @@ export const TYPERT = {
145
184
  codec: {
146
185
  mode: 'strict',
147
186
  typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
148
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_close_parameter_0$schema,
187
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_close_parameter_0$schema,
149
188
  },
150
189
  },
151
190
  {
@@ -155,16 +194,16 @@ export const TYPERT = {
155
194
  codec: {
156
195
  mode: 'strict',
157
196
  typeSymbol: '@deepseek-ai/dsh-api-terminal-controller/types#WebTerminalId',
158
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_close_parameter_1$schema,
197
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_close_parameter_1$schema,
159
198
  },
160
199
  },
161
200
  ],
162
201
  result: {
163
202
  mode: 'strict',
164
203
  typeSymbol: '@deepseek-ai/dsh-api-terminal-controller#terminal/close:result',
165
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_close_result$schema,
204
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_close_result$schema,
166
205
  },
167
- sourceLocation: {"file":"packages/api/terminal-controller/src/index.ts","line":247,"column":9},
206
+ sourceLocation: {"file":"packages/api/terminal-controller/src/index.ts","line":269,"column":9},
168
207
  },
169
208
  {
170
209
  id: '@deepseek-ai/dsh-api-terminal-controller#terminal/create',
@@ -185,7 +224,7 @@ export const TYPERT = {
185
224
  codec: {
186
225
  mode: 'strict',
187
226
  typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
188
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_create_parameter_0$schema,
227
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_create_parameter_0$schema,
189
228
  },
190
229
  },
191
230
  {
@@ -195,7 +234,7 @@ export const TYPERT = {
195
234
  codec: {
196
235
  mode: 'strict',
197
236
  typeSymbol: '@deepseek-ai/dsh-api-terminal-controller/types#TerminalCreateRequest',
198
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_create_parameter_1$schema,
237
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_create_parameter_1$schema,
199
238
  },
200
239
  },
201
240
  ],
@@ -203,9 +242,9 @@ export const TYPERT = {
203
242
  result: {
204
243
  mode: 'strict',
205
244
  typeSymbol: '@deepseek-ai/dsh-api-terminal-controller/types#WebTerminalInfo',
206
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_create_result$schema,
245
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_create_result$schema,
207
246
  },
208
- sourceLocation: {"file":"packages/api/terminal-controller/src/index.ts","line":155,"column":9},
247
+ sourceLocation: {"file":"packages/api/terminal-controller/src/index.ts","line":158,"column":9},
209
248
  },
210
249
  {
211
250
  id: '@deepseek-ai/dsh-api-terminal-controller#terminal/environment',
@@ -226,7 +265,7 @@ export const TYPERT = {
226
265
  codec: {
227
266
  mode: 'strict',
228
267
  typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
229
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_environment_parameter_0$schema,
268
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_environment_parameter_0$schema,
230
269
  },
231
270
  },
232
271
  ],
@@ -234,9 +273,9 @@ export const TYPERT = {
234
273
  result: {
235
274
  mode: 'strict',
236
275
  typeSymbol: '@deepseek-ai/dsh-api-terminal-controller/types#TerminalEnvironment',
237
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_environment_result$schema,
276
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_environment_result$schema,
238
277
  },
239
- sourceLocation: {"file":"packages/api/terminal-controller/src/index.ts","line":115,"column":3},
278
+ sourceLocation: {"file":"packages/api/terminal-controller/src/index.ts","line":118,"column":3},
240
279
  },
241
280
  {
242
281
  id: '@deepseek-ai/dsh-api-terminal-controller#terminal/follow',
@@ -258,7 +297,7 @@ export const TYPERT = {
258
297
  codec: {
259
298
  mode: 'strict',
260
299
  typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
261
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_follow_parameter_0$schema,
300
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_follow_parameter_0$schema,
262
301
  },
263
302
  },
264
303
  {
@@ -268,7 +307,7 @@ export const TYPERT = {
268
307
  codec: {
269
308
  mode: 'strict',
270
309
  typeSymbol: '@deepseek-ai/dsh-api-terminal-controller/types#WebTerminalId',
271
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_follow_parameter_1$schema,
310
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_follow_parameter_1$schema,
272
311
  },
273
312
  },
274
313
  {
@@ -278,7 +317,7 @@ export const TYPERT = {
278
317
  codec: {
279
318
  mode: 'strict',
280
319
  typeSymbol: '@deepseek-ai/dsh-api-terminal-controller/types#TerminalAttachmentId',
281
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_follow_parameter_2$schema,
320
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_follow_parameter_2$schema,
282
321
  },
283
322
  },
284
323
  ],
@@ -286,9 +325,9 @@ export const TYPERT = {
286
325
  result: {
287
326
  mode: 'strict',
288
327
  typeSymbol: '@deepseek-ai/dsh-api-terminal-controller/types#TerminalFrame',
289
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_follow_result$schema,
328
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_follow_result$schema,
290
329
  },
291
- sourceLocation: {"file":"packages/api/terminal-controller/src/index.ts","line":194,"column":3},
330
+ sourceLocation: {"file":"packages/api/terminal-controller/src/index.ts","line":216,"column":3},
292
331
  },
293
332
  {
294
333
  id: '@deepseek-ai/dsh-api-terminal-controller#terminal/list',
@@ -304,16 +343,16 @@ export const TYPERT = {
304
343
  codec: {
305
344
  mode: 'strict',
306
345
  typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
307
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_list_parameter_0$schema,
346
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_list_parameter_0$schema,
308
347
  },
309
348
  },
310
349
  ],
311
350
  result: {
312
351
  mode: 'strict',
313
352
  typeSymbol: '@deepseek-ai/dsh-api-terminal-controller#terminal/list:result',
314
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_list_result$schema,
353
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_list_result$schema,
315
354
  },
316
- sourceLocation: {"file":"packages/api/terminal-controller/src/index.ts","line":141,"column":3},
355
+ sourceLocation: {"file":"packages/api/terminal-controller/src/index.ts","line":144,"column":3},
317
356
  },
318
357
  {
319
358
  id: '@deepseek-ai/dsh-api-terminal-controller#terminal/rename',
@@ -334,7 +373,7 @@ export const TYPERT = {
334
373
  codec: {
335
374
  mode: 'strict',
336
375
  typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
337
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_rename_parameter_0$schema,
376
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_rename_parameter_0$schema,
338
377
  },
339
378
  },
340
379
  {
@@ -344,7 +383,7 @@ export const TYPERT = {
344
383
  codec: {
345
384
  mode: 'strict',
346
385
  typeSymbol: '@deepseek-ai/dsh-api-terminal-controller/types#WebTerminalId',
347
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_rename_parameter_1$schema,
386
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_rename_parameter_1$schema,
348
387
  },
349
388
  },
350
389
  {
@@ -354,16 +393,16 @@ export const TYPERT = {
354
393
  codec: {
355
394
  mode: 'strict',
356
395
  typeSymbol: '@deepseek-ai/dsh-api-terminal-controller#terminal/rename:title',
357
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_rename_parameter_2$schema,
396
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_rename_parameter_2$schema,
358
397
  },
359
398
  },
360
399
  ],
361
400
  result: {
362
401
  mode: 'strict',
363
402
  typeSymbol: '@deepseek-ai/dsh-api-terminal-controller#terminal/rename:result',
364
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_rename_result$schema,
403
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_rename_result$schema,
365
404
  },
366
- sourceLocation: {"file":"packages/api/terminal-controller/src/index.ts","line":235,"column":3},
405
+ sourceLocation: {"file":"packages/api/terminal-controller/src/index.ts","line":257,"column":3},
367
406
  },
368
407
  {
369
408
  id: '@deepseek-ai/dsh-api-terminal-controller#terminal/resize',
@@ -384,7 +423,7 @@ export const TYPERT = {
384
423
  codec: {
385
424
  mode: 'strict',
386
425
  typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
387
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_0$schema,
426
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_0$schema,
388
427
  },
389
428
  },
390
429
  {
@@ -394,7 +433,7 @@ export const TYPERT = {
394
433
  codec: {
395
434
  mode: 'strict',
396
435
  typeSymbol: '@deepseek-ai/dsh-api-terminal-controller/types#WebTerminalId',
397
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_1$schema,
436
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_1$schema,
398
437
  },
399
438
  },
400
439
  {
@@ -404,7 +443,7 @@ export const TYPERT = {
404
443
  codec: {
405
444
  mode: 'strict',
406
445
  typeSymbol: '@deepseek-ai/dsh-api-terminal-controller/types#TerminalAttachmentId',
407
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_2$schema,
446
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_2$schema,
408
447
  },
409
448
  },
410
449
  {
@@ -414,7 +453,7 @@ export const TYPERT = {
414
453
  codec: {
415
454
  mode: 'strict',
416
455
  typeSymbol: '@deepseek-ai/dsh-api-terminal-controller#terminal/resize:cols',
417
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_3$schema,
456
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_3$schema,
418
457
  },
419
458
  },
420
459
  {
@@ -424,16 +463,53 @@ export const TYPERT = {
424
463
  codec: {
425
464
  mode: 'strict',
426
465
  typeSymbol: '@deepseek-ai/dsh-api-terminal-controller#terminal/resize:rows',
427
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_4$schema,
466
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_resize_parameter_4$schema,
428
467
  },
429
468
  },
430
469
  ],
431
470
  result: {
432
471
  mode: 'strict',
433
472
  typeSymbol: '@deepseek-ai/dsh-api-terminal-controller#terminal/resize:result',
434
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_resize_result$schema,
473
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_resize_result$schema,
435
474
  },
436
- sourceLocation: {"file":"packages/api/terminal-controller/src/index.ts","line":223,"column":9},
475
+ sourceLocation: {"file":"packages/api/terminal-controller/src/index.ts","line":245,"column":9},
476
+ },
477
+ {
478
+ id: '@deepseek-ai/dsh-api-terminal-controller#terminal/retain',
479
+ service: 'terminalController',
480
+ namespace: 'terminal',
481
+ method: 'retain',
482
+ mode: 'stream',
483
+ invocation: { kind: 'direct' },
484
+ parameters: [
485
+ {
486
+ name: 'sessionId',
487
+ wire: 'sessionId',
488
+ source: 'json',
489
+ codec: {
490
+ mode: 'strict',
491
+ typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
492
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_retain_parameter_0$schema,
493
+ },
494
+ },
495
+ {
496
+ name: 'id',
497
+ wire: 'id',
498
+ source: 'json',
499
+ codec: {
500
+ mode: 'strict',
501
+ typeSymbol: '@deepseek-ai/dsh-api-terminal-controller/types#WebTerminalId',
502
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_retain_parameter_1$schema,
503
+ },
504
+ },
505
+ ],
506
+ cancellation: { parameter: 'signal' },
507
+ result: {
508
+ mode: 'strict',
509
+ typeSymbol: '@deepseek-ai/dsh-api-terminal-controller/types#TerminalRetentionFrame',
510
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_retain_result$schema,
511
+ },
512
+ sourceLocation: {"file":"packages/api/terminal-controller/src/index.ts","line":198,"column":3},
437
513
  },
438
514
  {
439
515
  id: '@deepseek-ai/dsh-api-terminal-controller#terminal/shells',
@@ -454,7 +530,7 @@ export const TYPERT = {
454
530
  codec: {
455
531
  mode: 'strict',
456
532
  typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
457
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_shells_parameter_0$schema,
533
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_shells_parameter_0$schema,
458
534
  },
459
535
  },
460
536
  ],
@@ -462,9 +538,9 @@ export const TYPERT = {
462
538
  result: {
463
539
  mode: 'strict',
464
540
  typeSymbol: '@deepseek-ai/dsh-api-terminal-controller#terminal/shells:result',
465
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_shells_result$schema,
541
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_shells_result$schema,
466
542
  },
467
- sourceLocation: {"file":"packages/api/terminal-controller/src/index.ts","line":130,"column":3},
543
+ sourceLocation: {"file":"packages/api/terminal-controller/src/index.ts","line":133,"column":3},
468
544
  },
469
545
  {
470
546
  id: '@deepseek-ai/dsh-api-terminal-controller#terminal/write',
@@ -485,7 +561,7 @@ export const TYPERT = {
485
561
  codec: {
486
562
  mode: 'strict',
487
563
  typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
488
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_0$schema,
564
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_0$schema,
489
565
  },
490
566
  },
491
567
  {
@@ -495,7 +571,7 @@ export const TYPERT = {
495
571
  codec: {
496
572
  mode: 'strict',
497
573
  typeSymbol: '@deepseek-ai/dsh-api-terminal-controller/types#WebTerminalId',
498
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_1$schema,
574
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_1$schema,
499
575
  },
500
576
  },
501
577
  {
@@ -505,7 +581,7 @@ export const TYPERT = {
505
581
  codec: {
506
582
  mode: 'strict',
507
583
  typeSymbol: '@deepseek-ai/dsh-api-terminal-controller/types#TerminalAttachmentId',
508
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_2$schema,
584
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_2$schema,
509
585
  },
510
586
  },
511
587
  {
@@ -515,16 +591,16 @@ export const TYPERT = {
515
591
  codec: {
516
592
  mode: 'strict',
517
593
  typeSymbol: '@deepseek-ai/dsh-api-terminal-controller#terminal/write:data',
518
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_3$schema,
594
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_write_parameter_3$schema,
519
595
  },
520
596
  },
521
597
  ],
522
598
  result: {
523
599
  mode: 'strict',
524
600
  typeSymbol: '@deepseek-ai/dsh-api-terminal-controller#terminal/write:result',
525
- schema: _deepseek_ai_dsh_api_terminal_controller_terminal_write_result$schema,
601
+ create: _deepseek_ai_dsh_api_terminal_controller_terminal_write_result$schema,
526
602
  },
527
- sourceLocation: {"file":"packages/api/terminal-controller/src/index.ts","line":208,"column":9},
603
+ sourceLocation: {"file":"packages/api/terminal-controller/src/index.ts","line":230,"column":9},
528
604
  },
529
605
  ],
530
606
  model: {
@@ -562,8 +638,15 @@ export const TYPERT = {
562
638
  "kind": "method",
563
639
  "name": "create",
564
640
  "signature": "@Remote async create(agent: Agent, request: TerminalCreateRequest, signal: AbortSignal): Promise<WebTerminalInfo>",
565
- "summary": "Allocate an interactive shell once for a caller-generated identity.",
566
- "jsDoc": "/**\n * Allocate an interactive shell once for a caller-generated identity.\n * @param agent - Session owner supplied by the Gateway.\n * @param request - initial dimensions and idempotency identity.\n * @param signal - allocation cancellation; committed terminals survive disconnection.\n * @returns the existing or newly committed terminal.\n */"
641
+ "summary": "Allocate a user shell once for a caller-generated identity, without Agent sandbox or approval restrictions.",
642
+ "jsDoc": "/**\n * Allocate a user shell once for a caller-generated identity, without Agent sandbox or approval restrictions.\n * @param agent - Session owner supplied by the Gateway.\n * @param request - initial dimensions and idempotency identity.\n * @param signal - allocation cancellation; committed terminals survive disconnection.\n * @returns the existing or newly committed terminal.\n */"
643
+ },
644
+ {
645
+ "kind": "method",
646
+ "name": "retain",
647
+ "signature": "@Remote({ mode: 'stream' }) retain(sessionId: SessionId, id: WebTerminalId, signal: AbortSignal): AsyncIterable<TerminalRetentionFrame>",
648
+ "summary": "Retain an existing terminal for a window without activating its Agent or taking input control.",
649
+ "jsDoc": "/**\n * Retain an existing terminal for a window without activating its Agent or taking input control.\n * @param sessionId - owning Session identity, including an inactive saved layout.\n * @param id - retained Host terminal identity.\n * @param signal - physical Remote stream cancellation.\n * @returns a hold acknowledgement followed by an open lifetime stream.\n */"
567
650
  },
568
651
  {
569
652
  "kind": "method",
@@ -636,7 +719,7 @@ export const TYPERT = {
636
719
  },
637
720
  {
638
721
  "name": "AssistantMessage",
639
- "declaration": "export interface AssistantMessage extends Message {\n readonly role: 'assistant';\n readonly source: ModelMessageSource;\n}"
722
+ "declaration": "export interface AssistantMessage extends MessageBase {\n readonly role: 'assistant';\n readonly source: ModelMessageSource;\n}"
640
723
  },
641
724
  {
642
725
  "name": "AssistantProviderMetadata",
@@ -674,6 +757,10 @@ export const TYPERT = {
674
757
  "name": "CommandSourceMap",
675
758
  "declaration": "export interface CommandSourceMap {\n user: { kind: 'user'; };\n}"
676
759
  },
760
+ {
761
+ "name": "CompactionCheckpointSource",
762
+ "declaration": "export type CompactionCheckpointSource = typeof COMPACT_CHECKPOINT_MARKER & { readonly compactionId: CompactionId; readonly sourceCommandId?: CommandId; };"
763
+ },
677
764
  {
678
765
  "name": "CompactionId",
679
766
  "declaration": "export type CompactionId = Branded<'CompactionId'>;"
@@ -684,7 +771,7 @@ export const TYPERT = {
684
771
  },
685
772
  {
686
773
  "name": "ContentBlockMap",
687
- "declaration": "export interface ContentBlockMap {\n text: TextBlock;\n reasoning: ReasoningBlock;\n image: ImageBlock;\n file: FileBlock;\n 'tool-call': ToolCallBlock;\n 'tool-result': ToolResultBlock;\n}"
774
+ "declaration": "export interface ContentBlockMap {\n text: TextBlock;\n reasoning: ReasoningBlock;\n image: ImageBlock;\n file: FileBlock;\n 'tool-call': ToolCallBlock;\n 'tool-addition': ToolAdditionBlock;\n 'tool-removal': ToolRemovalBlock;\n}"
688
775
  },
689
776
  {
690
777
  "name": "ContentBlockType",
@@ -702,9 +789,13 @@ export const TYPERT = {
702
789
  "name": "ContinuableSubagentDescriptorData",
703
790
  "declaration": "export interface ContinuableSubagentDescriptorData extends SubagentDescriptorBase {\n readonly mode: 'continuable';\n readonly label: string;\n readonly agentProvider?: string;\n readonly agentModel?: string;\n readonly agentReasoningEffort?: ReasoningEffortId;\n readonly persona?: string;\n readonly toolFilter?: ToolRestriction;\n}"
704
791
  },
792
+ {
793
+ "name": "DeveloperMessage",
794
+ "declaration": "export interface DeveloperMessage extends MessageBase {\n readonly role: 'developer';\n}"
795
+ },
705
796
  {
706
797
  "name": "EpochHeader",
707
- "declaration": "export interface EpochHeader {\n config: LlmCallConfig;\n adapterDefaults?: LlmCallConfigAdapterDefaults;\n tools?: ToolSchema[];\n}"
798
+ "declaration": "export interface EpochHeader {\n config: LlmCallConfig;\n adapterDefaults?: LlmCallConfigAdapterDefaults;\n tools?: ToolSchema[];\n system?: never;\n}"
708
799
  },
709
800
  {
710
801
  "name": "FeedbackCategory",
@@ -798,6 +889,10 @@ export const TYPERT = {
798
889
  "name": "JsonValue",
799
890
  "declaration": "export type JsonValue = null | boolean | number | string | JsonValue[] | { [key: string]: JsonValue; };"
800
891
  },
892
+ {
893
+ "name": "KnownCatalogMode",
894
+ "declaration": "export type KnownCatalogMode = { readonly mode: 'one-shot'; readonly label?: string; } | { readonly mode: 'continuable'; readonly label: string; };"
895
+ },
801
896
  {
802
897
  "name": "LlmCallConfig",
803
898
  "declaration": "export interface LlmCallConfig {\n provider: string;\n model: string;\n reasoningEffort?: ReasoningEffortId;\n temperature?: number;\n maxTokens?: number;\n stop?: string[];\n}"
@@ -812,7 +907,11 @@ export const TYPERT = {
812
907
  },
813
908
  {
814
909
  "name": "Message",
815
- "declaration": "export interface Message {\n readonly id: MessageId;\n readonly role: 'system' | 'user' | 'assistant';\n readonly content: ContentBlock[];\n readonly source: MessageSource;\n}"
910
+ "declaration": "export type Message = MessageRoleMap[keyof MessageRoleMap];"
911
+ },
912
+ {
913
+ "name": "MessageBase",
914
+ "declaration": "export interface MessageBase {\n readonly id: MessageId;\n readonly content: readonly ContentBlock[];\n readonly source: MessageSource;\n}"
816
915
  },
817
916
  {
818
917
  "name": "MessageFeedbackDelete",
@@ -838,13 +937,17 @@ export const TYPERT = {
838
937
  "name": "MessageId",
839
938
  "declaration": "export type MessageId = Branded<'MessageId'>;"
840
939
  },
940
+ {
941
+ "name": "MessageRoleMap",
942
+ "declaration": "export interface MessageRoleMap {\n system: SystemMessage;\n developer: DeveloperMessage;\n user: UserMessage;\n assistant: AssistantMessage;\n tool: ToolResultMessage;\n}"
943
+ },
841
944
  {
842
945
  "name": "MessageSource",
843
946
  "declaration": "export type MessageSource = MessageSourceMap[keyof MessageSourceMap];"
844
947
  },
845
948
  {
846
949
  "name": "MessageSourceMap",
847
- "declaration": "export interface MessageSourceMap {\n user: { kind: 'user'; };\n plugin: { kind: 'plugin'; plugin: string; } & ContextFormed;\n model: ModelMessageSource;\n tool: ToolMessageSource;\n 'user-rpc': { kind: 'user'; rpcId: SessionRequestId; clientTimeZone?: string; };\n 'agent-message': AgentMessageSource;\n 'subagent-settled': SubagentSettledMessageSource;\n 'skill-invocation': SkillInvocationSource;\n 'team-message': TeamMessageSource;\n goal: GoalMessageSource;\n 'session-reference': SessionReferenceSource;\n}"
950
+ "declaration": "export interface MessageSourceMap {\n user: { kind: 'user'; };\n model: ModelMessageSource;\n tool: ToolMessageSource;\n 'system-prompt': SystemPromptMessageSource;\n 'model-selection': { kind: 'model-selection'; } & ContextFormed;\n 'user-approval': { kind: 'user-approval'; } & ContextFormed;\n 'ptc-mode': { kind: 'ptc-mode'; };\n 'tool-registry': { kind: 'tool-registry'; };\n 'user-rpc': { kind: 'user'; rpcId: SessionRequestId; clientTimeZone?: string; };\n 'agent-message': AgentMessageSource;\n 'subagent-settled': SubagentSettledMessageSource;\n 'skill-invocation': SkillInvocationSource;\n 'cordis-host-runner': { kind: 'cordis-host-runner'; };\n 'team-message': TeamMessageSource;\n goal: GoalMessageSource;\n 'compact-checkpoint': CompactionCheckpointSource;\n 'session-reference': SessionReferenceSource;\n}"
848
951
  },
849
952
  {
850
953
  "name": "ModelMessageSource",
@@ -900,7 +1003,7 @@ export const TYPERT = {
900
1003
  },
901
1004
  {
902
1005
  "name": "Session",
903
- "declaration": "export class Session {\n get surface(): SessionSurface;\n readonly header: SessionHeader;\n readonly inheritedEventCount: SessionLogOffset;\n get id(): SessionId;\n readonly firstLiveSeq: SessionLogOffset;\n eventAt(seq: SessionSeq): SessionEvent | undefined;\n snapshotEvents(fromSeq: SessionLogOffset = SessionLogOffset(0), toSeqExclusive: SessionLogOffset = this.seq): readonly SessionEvent[];\n ownEvents(): readonly SessionEvent[];\n isOwnSeq(seq: SessionSeq): boolean;\n get seq(): SessionLogOffset;\n append<T extends SessionEventType>(type: T, data: SessionEventMap[T], ...opts: T extends SurfaceEventType ? [opts: SurfaceIntent<T>] : []): SessionEvent<T>;\n requestHeader(): EpochHeader | undefined;\n requestContext(): RequestContext | undefined;\n deriveMessages(): Message[];\n deriveEventMessage(event: SessionEvent): Message | null;\n}"
1006
+ "declaration": "export class Session {\n get surface(): SessionSurface;\n readonly header: SessionHeader;\n readonly inheritedEventCount: SessionLogOffset;\n get id(): SessionId;\n readonly firstLiveSeq: SessionLogOffset;\n readonly firstLifecycleSeq: SessionLogOffset;\n eventAt(seq: SessionSeq): SessionEvent | undefined;\n snapshotEvents(fromSeq: SessionLogOffset = SessionLogOffset(0), toSeqExclusive: SessionLogOffset = this.seq): readonly SessionEvent[];\n ownEvents(): readonly SessionEvent[];\n isOwnSeq(seq: SessionSeq): boolean;\n get seq(): SessionLogOffset;\n append<T extends SessionEventType>(type: T, data: SessionEventMap[T], ...opts: T extends SurfaceEventType ? [opts: SurfaceIntent<T>] : []): SessionEvent<T>;\n requestHeader(): EpochHeader | undefined;\n requestContext(): RequestContext | undefined;\n deriveMessages(): Message[];\n deriveEventMessage(event: SessionEvent): Message | null;\n}"
904
1007
  },
905
1008
  {
906
1009
  "name": "SessionEvent",
@@ -908,7 +1011,7 @@ export const TYPERT = {
908
1011
  },
909
1012
  {
910
1013
  "name": "SessionEventMap",
911
- "declaration": "export interface SessionEventMap {\n 'turn/start': { turn: number; };\n 'turn/end': { turn: number; reason: TurnEndReason; };\n 'step/start': { turn: number; step: number; };\n 'step/end': { turn: number; step: number; };\n 'user/message': UserMessage;\n 'system/message': { turn: number; step: number; message: SystemMessage; };\n 'assistant/message': { turn: number; step: number; message: AssistantMessage; stream: AssistantStreamRecord[]; usage?: TokenUsage; interrupted?: true; };\n 'assistant/attempt': { turn: number; step: number; stream: AssistantStreamRecord[]; };\n 'tool/call': { turn: number; step: number; callId: ToolCallId; name: string; arguments: string; };\n 'tool/result': { turn: number; step: number; message: ToolResultMessage; error?: { name: string; code: string; reason?: string; }; meta?: JsonValue; };\n 'request/header': { header: EpochHeader; reason: RequestHeaderReason; startsSeries?: true; };\n 'request/context': RequestContext;\n 'session/end-seed': { inherited?: true; };\n 'agent/inbox/spliced': { target: InboxTarget; start: number; removedCount?: number; inserted: UserMessage[]; outcome?: 'canceled'; };\n 'sandbox/mode': { mode: SandboxMode; source?: 'delegation'; };\n 'approval/asked': { id: ApprovalRequestId; toolName: string; callId?: ToolCallId; reason?: string; };\n 'approval/decided': { id: ApprovalRequestId; outcome: ApprovalOutcome; };\n 'approval/policy': { policy: ApprovalPolicy; source?: 'delegation'; };\n 'tool/ptc-dispatch-start': PtcDispatchStartEventData;\n 'tool/ptc-dispatch': PtcDispatchEventData;\n 'agent-preset/selected': { agentPreset: string; };\n 'command/run': { commandId: CommandId; name: string; args?: string; source: CommandSource; };\n 'command/done': { commandId: CommandId; kind: 'success' | 'error'; text?: string; sourceEventSeq?: import('@deepseek-ai/dsh-session/types').SessionSeq; };\n 'image/offload': { targets: ImageOffloadTarget[]; };\n 'session/title': SessionTitleEventData;\n 'todo/write': { todos: TodoItem[]; };\n 'model/selection': ModelSelection;\n 'subagent/descriptor': SubagentDescriptorData;\n 'permission/preset': { preset: string; };\n 'subagent/catalog': SubagentCatalogEvent;\n 'feedback/record': FeedbackRecord;\n 'team/member': { version: 2; teamId: TeamId; member: TeamMemberSnapshot; };\n 'team/task': { version: 2; teamId: TeamId; task: TeamTaskSnapshot; };\n 'team/message/queued': { version: 2; teamId: TeamId; message: TeamMessageSnapshot; };\n 'team/message/delivered': { version: 2; teamId: TeamId; messageId: TeamMessageId; targetId: SessionId; };\n 'goal/change': GoalChangeMeta;\n 'feedback/message-put': MessageFeedbackPut;\n 'feedback/message-delete': MessageFeedbackDelete;\n 'compaction/start': { compactionId: CompactionId; sourceCommandId?: CommandId; turn: number | null; };\n 'compaction/summary': { compactionId: CompactionId; sourceCommandId?: CommandId; summary: ContentBlock[]; shadowedRange: { start: SessionSeq; end: SessionSeq; }; shadowedSeqs: SessionSeq[]; shadowedTokenCount: number; provider: string; model: string; maxTokens?: number; usage?: TokenUsage; } & ({ rawOutput: ContentBlock[]; llmStreamCall: true; } | { rawOutput?: ContentBlock[]; llmStreamCall?: never; });\n 'compaction/end': { compactionId: CompactionId; sourceCommandId?: CommandId; turn: number | null; error?: string; };\n 'compaction/prune': { shadowedRange: { start: SessionSeq; end: SessionSeq; }; shadowedSeqs: SessionSeq[]; shadowedTokenCount: number; };\n}"
1014
+ "declaration": "export interface SessionEventMap {\n 'turn/start': { turn: number; };\n 'turn/end': { turn: number; reason: TurnEndReason; };\n 'step/start': { turn: number; step: number; };\n 'step/end': { turn: number; step: number; };\n 'user/message': UserMessage;\n 'developer/message': { turn: number; step: number; message: DeveloperMessage; headerSeq?: SessionSeq; };\n 'system/message': { turn: number; step: number; message: SystemMessage; };\n 'assistant/message': { turn: number; step: number; message: AssistantMessage; stream: AssistantStreamRecord[]; usage?: TokenUsage; interrupted?: true; };\n 'assistant/attempt': { turn: number; step: number; stream: AssistantStreamRecord[]; };\n 'tool/call': { turn: number; step: number; callId: ToolCallId; name: string; arguments: string; };\n 'tool/result': { turn: number; step: number; message: ToolResultMessage; error?: { name: string; code: string; reason?: string; }; meta?: JsonValue; };\n 'request/header': { header: EpochHeader; reason: RequestHeaderReason; startsSeries?: true; };\n 'request/context': RequestContext;\n 'session/end-seed': { inherited?: true; };\n 'agent/inbox/spliced': { target: InboxTarget; start: number; removedCount?: number; inserted: UserMessage[]; outcome?: 'canceled'; };\n 'sandbox/mode': { mode: SandboxMode; source?: 'delegation'; };\n 'approval/asked': { id: ApprovalRequestId; toolName: string; callId?: ToolCallId; reason?: string; };\n 'approval/decided': { id: ApprovalRequestId; outcome: ApprovalOutcome; };\n 'approval/policy': { policy: ApprovalPolicy; source?: 'delegation'; };\n 'tool/ptc-dispatch-start': PtcDispatchStartEventData;\n 'tool/ptc-dispatch': PtcDispatchEventData;\n 'agent-preset/selected': { agentPreset: string; };\n 'command/run': { commandId: CommandId; name: string; args?: string; source: CommandSource; };\n 'command/done': { commandId: CommandId; kind: 'success' | 'error'; text?: string; sourceEventSeq?: import('@deepseek-ai/dsh-session/types').SessionSeq; };\n 'image/offload': { targets: ImageOffloadTarget[]; };\n 'session/title': SessionTitleEventData;\n 'todo/write': { todos: TodoItem[]; };\n 'model/selection': ModelSelection;\n 'subagent/descriptor': SubagentDescriptorData;\n 'permission/preset': { preset: string; };\n 'subagent/catalog': SubagentCatalogEvent;\n 'feedback/record': FeedbackRecord;\n 'team/member': { version: 2; teamId: TeamId; member: TeamMemberSnapshot; };\n 'team/task': { version: 2; teamId: TeamId; task: TeamTaskSnapshot; };\n 'team/message/queued': { version: 2; teamId: TeamId; message: TeamMessageSnapshot; };\n 'team/message/delivered': { version: 2; teamId: TeamId; messageId: TeamMessageId; targetId: SessionId; };\n 'goal/change': GoalChangeMeta;\n 'feedback/message-put': MessageFeedbackPut;\n 'feedback/message-delete': MessageFeedbackDelete;\n 'compaction/start': { compactionId: CompactionId; sourceCommandId?: CommandId; turn: number | null; };\n 'compaction/summary': { compactionId: CompactionId; sourceCommandId?: CommandId; summary: ContentBlock[]; shadowedRange: { start: SessionSeq; end: SessionSeq; }; shadowedSeqs: SessionSeq[]; shadowedTokenCount: number; provider: string; model: string; maxTokens?: number; usage?: TokenUsage; } & ({ rawOutput: ContentBlock[]; llmStreamCall: true; } | { rawOutput?: ContentBlock[]; llmStreamCall?: never; });\n 'compaction/end': { compactionId: CompactionId; sourceCommandId?: CommandId; turn: number | null; error?: string; };\n 'compaction/prune': { shadowedRange: { start: SessionSeq; end: SessionSeq; }; shadowedSeqs: SessionSeq[]; shadowedTokenCount: number; };\n}"
912
1015
  },
913
1016
  {
914
1017
  "name": "SessionEventType",
@@ -968,7 +1071,7 @@ export const TYPERT = {
968
1071
  },
969
1072
  {
970
1073
  "name": "SubagentCatalogEvent",
971
- "declaration": "export type SubagentCatalogEvent = { readonly version: 0; readonly childId: SessionId; readonly childCreatedAt: number; } & ({ readonly mode: 'one-shot'; readonly label?: string; } | { readonly mode: 'continuable'; readonly label: string; });"
1074
+ "declaration": "export type SubagentCatalogEvent = { readonly childId: SessionId; readonly childCreatedAt: number; } & (({ readonly version: 0; } & KnownCatalogMode) | ({ readonly version: 1; } & (KnownCatalogMode | { readonly mode: 'unknown'; readonly label?: string; })));"
972
1075
  },
973
1076
  {
974
1077
  "name": "SubagentDescriptorBase",
@@ -984,7 +1087,7 @@ export const TYPERT = {
984
1087
  },
985
1088
  {
986
1089
  "name": "SurfaceEventType",
987
- "declaration": "export type SurfaceEventType = 'system/message' | 'user/message' | 'assistant/message' | 'tool/result';"
1090
+ "declaration": "export type SurfaceEventType = 'system/message' | 'developer/message' | 'user/message' | 'assistant/message' | 'tool/result';"
988
1091
  },
989
1092
  {
990
1093
  "name": "SurfaceIntent",
@@ -996,7 +1099,11 @@ export const TYPERT = {
996
1099
  },
997
1100
  {
998
1101
  "name": "SystemMessage",
999
- "declaration": "export interface SystemMessage extends Message {\n readonly role: 'system';\n readonly source: MessageSourceMap['plugin'];\n}"
1102
+ "declaration": "export interface SystemMessage extends MessageBase {\n readonly role: 'system';\n readonly source: MessageSourceMap['system-prompt'];\n}"
1103
+ },
1104
+ {
1105
+ "name": "SystemPromptMessageSource",
1106
+ "declaration": "export interface SystemPromptMessageSource {\n kind: 'system-prompt';\n}"
1000
1107
  },
1001
1108
  {
1002
1109
  "name": "SystemPromptUpdate",
@@ -1054,6 +1161,10 @@ export const TYPERT = {
1054
1161
  "name": "TerminalFrame",
1055
1162
  "declaration": "export type TerminalFrame = { readonly type: 'snapshot'; readonly sequence: number; readonly screen: string; readonly info: WebTerminalInfo; } | { readonly type: 'output'; readonly sequence: number; readonly data: string; } | { readonly type: 'state'; readonly info: WebTerminalInfo; };"
1056
1163
  },
1164
+ {
1165
+ "name": "TerminalRetentionFrame",
1166
+ "declaration": "export interface TerminalRetentionFrame {\n readonly type: 'retained';\n}"
1167
+ },
1057
1168
  {
1058
1169
  "name": "TerminalShell",
1059
1170
  "declaration": "export interface TerminalShell {\n readonly path: string;\n readonly args: readonly string[];\n readonly name: string;\n}"
@@ -1070,6 +1181,10 @@ export const TYPERT = {
1070
1181
  "name": "TokenUsage",
1071
1182
  "declaration": "export interface TokenUsage {\n inputTokens: number;\n outputTokens: number;\n totalTokens?: number;\n cacheReadTokens?: number;\n cacheWriteTokens?: number;\n reasoningTokens?: number;\n}"
1072
1183
  },
1184
+ {
1185
+ "name": "ToolAdditionBlock",
1186
+ "declaration": "export interface ToolAdditionBlock {\n type: 'tool-addition';\n toolName: string;\n tool?: never;\n}"
1187
+ },
1073
1188
  {
1074
1189
  "name": "ToolCallBlock",
1075
1190
  "declaration": "export interface ToolCallBlock {\n type: 'tool-call';\n id: ToolCallId;\n name: string;\n arguments: string;\n}"
@@ -1083,20 +1198,20 @@ export const TYPERT = {
1083
1198
  "declaration": "export interface ToolMessageSource {\n kind: 'tool';\n callId: ToolCallId;\n}"
1084
1199
  },
1085
1200
  {
1086
- "name": "ToolRestriction",
1087
- "declaration": "export interface ToolRestriction {\n readonly allow?: readonly string[];\n readonly deny?: readonly string[];\n}"
1201
+ "name": "ToolRemovalBlock",
1202
+ "declaration": "export interface ToolRemovalBlock {\n type: 'tool-removal';\n toolName: string;\n}"
1088
1203
  },
1089
1204
  {
1090
- "name": "ToolResultBlock",
1091
- "declaration": "export interface ToolResultBlock {\n type: 'tool-result';\n toolCallId: ToolCallId;\n content: ContentBlock[];\n isError?: boolean;\n}"
1205
+ "name": "ToolRestriction",
1206
+ "declaration": "export interface ToolRestriction {\n readonly allow?: readonly string[];\n readonly deny?: readonly string[];\n}"
1092
1207
  },
1093
1208
  {
1094
1209
  "name": "ToolResultMessage",
1095
- "declaration": "export interface ToolResultMessage extends Message {\n readonly role: 'user';\n readonly content: [ToolResultBlock];\n readonly source: ToolMessageSource;\n}"
1210
+ "declaration": "export interface ToolResultMessage extends MessageBase {\n readonly role: 'tool';\n readonly source: ToolMessageSource;\n readonly toolCallId: ToolCallId;\n readonly isError?: boolean;\n}"
1096
1211
  },
1097
1212
  {
1098
1213
  "name": "ToolSchema",
1099
- "declaration": "export interface ToolSchema {\n name: string;\n description: string;\n parameters: Record<string, unknown>;\n}"
1214
+ "declaration": "export interface ToolSchema {\n deferLoading?: true;\n name: string;\n description: string;\n parameters: Record<string, unknown>;\n}"
1100
1215
  },
1101
1216
  {
1102
1217
  "name": "TurnEndCancelCause",
@@ -1108,11 +1223,11 @@ export const TYPERT = {
1108
1223
  },
1109
1224
  {
1110
1225
  "name": "TurnEndReasonMap",
1111
- "declaration": "export interface TurnEndReasonMap {\n completed: { kind: 'completed'; };\n aborted: { kind: 'aborted'; reason: TurnEndCancelCause; };\n blocked: { kind: 'blocked'; };\n error: { kind: 'error'; error: LlmFailure; };\n 'max-tokens': { kind: 'max-tokens'; };\n interrupted: { kind: 'interrupted'; };\n}"
1226
+ "declaration": "export interface TurnEndReasonMap {\n completed: { kind: 'completed'; };\n aborted: { kind: 'aborted'; reason: TurnEndCancelCause; };\n blocked: { kind: 'blocked'; };\n error: { kind: 'error'; error: LlmFailure; };\n 'max-tokens': { kind: 'max-tokens'; };\n interrupted: { kind: 'interrupted'; };\n forked: { kind: 'forked'; };\n}"
1112
1227
  },
1113
1228
  {
1114
1229
  "name": "UserMessage",
1115
- "declaration": "export interface UserMessage extends Message {\n readonly role: 'user';\n}"
1230
+ "declaration": "export interface UserMessage extends MessageBase {\n readonly role: 'user';\n}"
1116
1231
  },
1117
1232
  {
1118
1233
  "name": "WebTerminalId",