@opencode-ai/client 0.0.0-next-14944 → 0.0.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.
@@ -1,970 +0,0 @@
1
- import { ClientError } from "./client-error";
2
- export function make(options) {
3
- const fetch = options.fetch ?? globalThis.fetch;
4
- const prepare = (descriptor, requestOptions) => {
5
- const url = new URL(descriptor.path, options.baseUrl);
6
- for (const [key, value] of Object.entries(descriptor.query ?? {}))
7
- appendQuery(url.searchParams, key, value);
8
- const headers = new Headers(options.headers);
9
- for (const [key, value] of Object.entries(descriptor.headers ?? {})) {
10
- if (value !== undefined && value !== null)
11
- headers.set(key, String(value));
12
- }
13
- for (const [key, value] of new Headers(requestOptions?.headers))
14
- headers.set(key, value);
15
- if (descriptor.body !== undefined && !headers.has("content-type"))
16
- headers.set("content-type", "application/json");
17
- return {
18
- url,
19
- init: {
20
- method: descriptor.method,
21
- signal: requestOptions?.signal,
22
- headers,
23
- body: descriptor.body === undefined ? undefined : JSON.stringify(descriptor.body),
24
- },
25
- };
26
- };
27
- const execute = async (descriptor, requestOptions) => {
28
- try {
29
- const prepared = prepare(descriptor, requestOptions);
30
- return await fetch(prepared.url, prepared.init);
31
- }
32
- catch (cause) {
33
- throw new ClientError("Transport", { cause });
34
- }
35
- };
36
- const responseError = async (response, descriptor) => {
37
- if (descriptor.declaredStatuses.includes(response.status))
38
- throw await json(response);
39
- try {
40
- await response.body?.cancel();
41
- }
42
- catch { }
43
- throw new ClientError("UnexpectedStatus", { cause: { status: response.status } });
44
- };
45
- const request = async (descriptor, requestOptions) => {
46
- const response = await execute(descriptor, requestOptions);
47
- if (response.status !== descriptor.successStatus)
48
- return responseError(response, descriptor);
49
- if (descriptor.binary)
50
- return new Uint8Array(await response.arrayBuffer());
51
- if (descriptor.empty) {
52
- try {
53
- await response.body?.cancel();
54
- }
55
- catch { }
56
- return undefined;
57
- }
58
- return (await json(response));
59
- };
60
- const sse = (descriptor, requestOptions) => ({
61
- async *[Symbol.asyncIterator]() {
62
- const response = await execute(descriptor, requestOptions);
63
- if (response.status !== descriptor.successStatus)
64
- await responseError(response, descriptor);
65
- if (!isContentType(response, "text/event-stream")) {
66
- try {
67
- await response.body?.cancel();
68
- }
69
- catch { }
70
- throw new ClientError("UnsupportedContentType");
71
- }
72
- if (response.body === null)
73
- throw new ClientError("MalformedResponse");
74
- const reader = response.body.getReader();
75
- const decoder = new TextDecoder();
76
- let buffer = "";
77
- try {
78
- while (true) {
79
- let next;
80
- try {
81
- next = await reader.read();
82
- }
83
- catch (cause) {
84
- throw new ClientError("Transport", { cause });
85
- }
86
- buffer += decoder.decode(next.value, { stream: !next.done });
87
- if (buffer.length > 1_048_576)
88
- throw new ClientError("MalformedResponse");
89
- const trailingCarriageReturn = !next.done && buffer.endsWith("\r");
90
- if (trailingCarriageReturn)
91
- buffer = buffer.slice(0, -1);
92
- buffer = buffer.replaceAll("\r\n", "\n").replaceAll("\r", "\n");
93
- if (trailingCarriageReturn)
94
- buffer += "\r";
95
- if (next.done && buffer !== "")
96
- buffer += "\n\n";
97
- let boundary = buffer.indexOf("\n\n");
98
- while (boundary >= 0) {
99
- const block = buffer.slice(0, boundary);
100
- buffer = buffer.slice(boundary + 2);
101
- const data = block
102
- .split("\n")
103
- .flatMap((line) => (line.startsWith("data:") ? [line.slice(5).trimStart()] : []))
104
- .join("\n");
105
- if (data !== "") {
106
- try {
107
- yield JSON.parse(data);
108
- }
109
- catch (cause) {
110
- throw new ClientError("MalformedResponse", { cause });
111
- }
112
- }
113
- boundary = buffer.indexOf("\n\n");
114
- }
115
- if (next.done)
116
- return;
117
- }
118
- }
119
- finally {
120
- try {
121
- await reader.cancel();
122
- }
123
- catch { }
124
- reader.releaseLock();
125
- }
126
- },
127
- });
128
- return {
129
- health: {
130
- get: (requestOptions) => request({ method: "GET", path: `/api/health`, successStatus: 200, declaredStatuses: [401, 400], empty: false }, requestOptions),
131
- },
132
- location: {
133
- get: (input, requestOptions) => request({
134
- method: "GET",
135
- path: `/api/location`,
136
- query: { location: input?.["location"] },
137
- successStatus: 200,
138
- declaredStatuses: [401, 400],
139
- empty: false,
140
- }, requestOptions),
141
- },
142
- agent: {
143
- list: (input, requestOptions) => request({
144
- method: "GET",
145
- path: `/api/agent`,
146
- query: { location: input?.["location"] },
147
- successStatus: 200,
148
- declaredStatuses: [401, 400],
149
- empty: false,
150
- }, requestOptions),
151
- },
152
- plugin: {
153
- list: (input, requestOptions) => request({
154
- method: "GET",
155
- path: `/api/plugin`,
156
- query: { location: input?.["location"] },
157
- successStatus: 200,
158
- declaredStatuses: [401, 400],
159
- empty: false,
160
- }, requestOptions),
161
- },
162
- session: {
163
- list: (input, requestOptions) => request({
164
- method: "GET",
165
- path: `/api/session`,
166
- query: {
167
- workspace: input?.["workspace"],
168
- limit: input?.["limit"],
169
- order: input?.["order"],
170
- search: input?.["search"],
171
- parentID: input?.["parentID"],
172
- directory: input?.["directory"],
173
- project: input?.["project"],
174
- subpath: input?.["subpath"],
175
- cursor: input?.["cursor"],
176
- },
177
- successStatus: 200,
178
- declaredStatuses: [400, 401],
179
- empty: false,
180
- }, requestOptions),
181
- create: (input, requestOptions) => request({
182
- method: "POST",
183
- path: `/api/session`,
184
- body: {
185
- id: input?.["id"],
186
- agent: input?.["agent"],
187
- model: input?.["model"],
188
- location: input?.["location"],
189
- },
190
- successStatus: 200,
191
- declaredStatuses: [401, 400],
192
- empty: false,
193
- }, requestOptions).then((value) => value.data),
194
- active: (requestOptions) => request({
195
- method: "GET",
196
- path: `/api/session/active`,
197
- successStatus: 200,
198
- declaredStatuses: [401, 400],
199
- empty: false,
200
- }, requestOptions),
201
- get: (input, requestOptions) => request({
202
- method: "GET",
203
- path: `/api/session/${encodeURIComponent(input.sessionID)}`,
204
- successStatus: 200,
205
- declaredStatuses: [404, 400, 401],
206
- empty: false,
207
- }, requestOptions).then((value) => value.data),
208
- fork: (input, requestOptions) => request({
209
- method: "POST",
210
- path: `/api/session/${encodeURIComponent(input.sessionID)}/fork`,
211
- body: { messageID: input["messageID"] },
212
- successStatus: 200,
213
- declaredStatuses: [404, 400, 401],
214
- empty: false,
215
- }, requestOptions).then((value) => value.data),
216
- switchAgent: (input, requestOptions) => request({
217
- method: "POST",
218
- path: `/api/session/${encodeURIComponent(input.sessionID)}/agent`,
219
- body: { agent: input["agent"] },
220
- successStatus: 204,
221
- declaredStatuses: [404, 400, 401],
222
- empty: true,
223
- }, requestOptions),
224
- switchModel: (input, requestOptions) => request({
225
- method: "POST",
226
- path: `/api/session/${encodeURIComponent(input.sessionID)}/model`,
227
- body: { model: input["model"] },
228
- successStatus: 204,
229
- declaredStatuses: [404, 400, 401],
230
- empty: true,
231
- }, requestOptions),
232
- rename: (input, requestOptions) => request({
233
- method: "POST",
234
- path: `/api/session/${encodeURIComponent(input.sessionID)}/rename`,
235
- body: { title: input["title"] },
236
- successStatus: 204,
237
- declaredStatuses: [404, 400, 401],
238
- empty: true,
239
- }, requestOptions),
240
- prompt: (input, requestOptions) => request({
241
- method: "POST",
242
- path: `/api/session/${encodeURIComponent(input.sessionID)}/prompt`,
243
- body: { id: input["id"], prompt: input["prompt"], delivery: input["delivery"], resume: input["resume"] },
244
- successStatus: 200,
245
- declaredStatuses: [409, 404, 400, 401],
246
- empty: false,
247
- }, requestOptions).then((value) => value.data),
248
- command: (input, requestOptions) => request({
249
- method: "POST",
250
- path: `/api/session/${encodeURIComponent(input.sessionID)}/command`,
251
- body: {
252
- id: input["id"],
253
- command: input["command"],
254
- arguments: input["arguments"],
255
- agent: input["agent"],
256
- model: input["model"],
257
- files: input["files"],
258
- agents: input["agents"],
259
- delivery: input["delivery"],
260
- resume: input["resume"],
261
- },
262
- successStatus: 200,
263
- declaredStatuses: [409, 404, 500, 400, 401],
264
- empty: false,
265
- }, requestOptions).then((value) => value.data),
266
- skill: (input, requestOptions) => request({
267
- method: "POST",
268
- path: `/api/session/${encodeURIComponent(input.sessionID)}/skill`,
269
- body: { id: input["id"], skill: input["skill"], resume: input["resume"] },
270
- successStatus: 204,
271
- declaredStatuses: [404, 400, 401],
272
- empty: true,
273
- }, requestOptions),
274
- synthetic: (input, requestOptions) => request({
275
- method: "POST",
276
- path: `/api/session/${encodeURIComponent(input.sessionID)}/synthetic`,
277
- body: { text: input["text"], description: input["description"], metadata: input["metadata"] },
278
- successStatus: 204,
279
- declaredStatuses: [404, 400, 401],
280
- empty: true,
281
- }, requestOptions),
282
- shell: (input, requestOptions) => request({
283
- method: "POST",
284
- path: `/api/session/${encodeURIComponent(input.sessionID)}/shell`,
285
- body: { id: input["id"], command: input["command"] },
286
- successStatus: 204,
287
- declaredStatuses: [404, 400, 401],
288
- empty: true,
289
- }, requestOptions),
290
- compact: (input, requestOptions) => request({
291
- method: "POST",
292
- path: `/api/session/${encodeURIComponent(input.sessionID)}/compact`,
293
- successStatus: 204,
294
- declaredStatuses: [404, 409, 503, 500, 400, 401],
295
- empty: true,
296
- }, requestOptions),
297
- wait: (input, requestOptions) => request({
298
- method: "POST",
299
- path: `/api/session/${encodeURIComponent(input.sessionID)}/wait`,
300
- successStatus: 204,
301
- declaredStatuses: [404, 503, 400, 401],
302
- empty: true,
303
- }, requestOptions),
304
- revertStage: (input, requestOptions) => request({
305
- method: "POST",
306
- path: `/api/session/${encodeURIComponent(input.sessionID)}/revert/stage`,
307
- body: { messageID: input["messageID"], files: input["files"] },
308
- successStatus: 200,
309
- declaredStatuses: [404, 409, 500, 400, 401],
310
- empty: false,
311
- }, requestOptions).then((value) => value.data),
312
- revertClear: (input, requestOptions) => request({
313
- method: "POST",
314
- path: `/api/session/${encodeURIComponent(input.sessionID)}/revert/clear`,
315
- successStatus: 204,
316
- declaredStatuses: [404, 409, 500, 400, 401],
317
- empty: true,
318
- }, requestOptions),
319
- revertCommit: (input, requestOptions) => request({
320
- method: "POST",
321
- path: `/api/session/${encodeURIComponent(input.sessionID)}/revert/commit`,
322
- successStatus: 204,
323
- declaredStatuses: [404, 409, 400, 401],
324
- empty: true,
325
- }, requestOptions),
326
- context: (input, requestOptions) => request({
327
- method: "GET",
328
- path: `/api/session/${encodeURIComponent(input.sessionID)}/context`,
329
- successStatus: 200,
330
- declaredStatuses: [404, 500, 400, 401],
331
- empty: false,
332
- }, requestOptions).then((value) => value.data),
333
- listContextEntries: (input, requestOptions) => request({
334
- method: "GET",
335
- path: `/api/session/${encodeURIComponent(input.sessionID)}/context-entry`,
336
- successStatus: 200,
337
- declaredStatuses: [404, 400, 401],
338
- empty: false,
339
- }, requestOptions).then((value) => value.data),
340
- putContextEntry: (input, requestOptions) => request({
341
- method: "PUT",
342
- path: `/api/session/${encodeURIComponent(input.sessionID)}/context-entry/${encodeURIComponent(input.key)}`,
343
- body: { value: input["value"] },
344
- successStatus: 204,
345
- declaredStatuses: [404, 400, 401],
346
- empty: true,
347
- }, requestOptions),
348
- removeContextEntry: (input, requestOptions) => request({
349
- method: "DELETE",
350
- path: `/api/session/${encodeURIComponent(input.sessionID)}/context-entry/${encodeURIComponent(input.key)}`,
351
- successStatus: 204,
352
- declaredStatuses: [404, 400, 401],
353
- empty: true,
354
- }, requestOptions),
355
- log: (input, requestOptions) => sse({
356
- method: "GET",
357
- path: `/api/session/${encodeURIComponent(input.sessionID)}/log`,
358
- query: { after: input["after"], follow: input["follow"] },
359
- successStatus: 200,
360
- declaredStatuses: [404, 400, 401],
361
- empty: false,
362
- }, requestOptions),
363
- interrupt: (input, requestOptions) => request({
364
- method: "POST",
365
- path: `/api/session/${encodeURIComponent(input.sessionID)}/interrupt`,
366
- successStatus: 204,
367
- declaredStatuses: [404, 400, 401],
368
- empty: true,
369
- }, requestOptions),
370
- background: (input, requestOptions) => request({
371
- method: "POST",
372
- path: `/api/session/${encodeURIComponent(input.sessionID)}/background`,
373
- successStatus: 204,
374
- declaredStatuses: [404, 400, 401],
375
- empty: true,
376
- }, requestOptions),
377
- message: (input, requestOptions) => request({
378
- method: "GET",
379
- path: `/api/session/${encodeURIComponent(input.sessionID)}/message/${encodeURIComponent(input.messageID)}`,
380
- successStatus: 200,
381
- declaredStatuses: [404, 400, 401],
382
- empty: false,
383
- }, requestOptions).then((value) => value.data),
384
- },
385
- message: {
386
- list: (input, requestOptions) => request({
387
- method: "GET",
388
- path: `/api/session/${encodeURIComponent(input.sessionID)}/message`,
389
- query: { limit: input["limit"], order: input["order"], cursor: input["cursor"] },
390
- successStatus: 200,
391
- declaredStatuses: [400, 404, 500, 401],
392
- empty: false,
393
- }, requestOptions),
394
- },
395
- model: {
396
- list: (input, requestOptions) => request({
397
- method: "GET",
398
- path: `/api/model`,
399
- query: { location: input?.["location"] },
400
- successStatus: 200,
401
- declaredStatuses: [503, 401, 400],
402
- empty: false,
403
- }, requestOptions),
404
- default: (input, requestOptions) => request({
405
- method: "GET",
406
- path: `/api/model/default`,
407
- query: { location: input?.["location"] },
408
- successStatus: 200,
409
- declaredStatuses: [503, 401, 400],
410
- empty: false,
411
- }, requestOptions),
412
- },
413
- generate: {
414
- text: (input, requestOptions) => request({
415
- method: "POST",
416
- path: `/api/generate`,
417
- query: { location: input["location"] },
418
- body: { prompt: input["prompt"], model: input["model"] },
419
- successStatus: 200,
420
- declaredStatuses: [400, 503, 401],
421
- empty: false,
422
- }, requestOptions).then((value) => value.data),
423
- },
424
- provider: {
425
- list: (input, requestOptions) => request({
426
- method: "GET",
427
- path: `/api/provider`,
428
- query: { location: input?.["location"] },
429
- successStatus: 200,
430
- declaredStatuses: [503, 401, 400],
431
- empty: false,
432
- }, requestOptions),
433
- get: (input, requestOptions) => request({
434
- method: "GET",
435
- path: `/api/provider/${encodeURIComponent(input.providerID)}`,
436
- query: { location: input["location"] },
437
- successStatus: 200,
438
- declaredStatuses: [404, 503, 401, 400],
439
- empty: false,
440
- }, requestOptions),
441
- },
442
- integration: {
443
- list: (input, requestOptions) => request({
444
- method: "GET",
445
- path: `/api/integration`,
446
- query: { location: input?.["location"] },
447
- successStatus: 200,
448
- declaredStatuses: [401, 400],
449
- empty: false,
450
- }, requestOptions),
451
- get: (input, requestOptions) => request({
452
- method: "GET",
453
- path: `/api/integration/${encodeURIComponent(input.integrationID)}`,
454
- query: { location: input["location"] },
455
- successStatus: 200,
456
- declaredStatuses: [401, 400],
457
- empty: false,
458
- }, requestOptions),
459
- connectKey: (input, requestOptions) => request({
460
- method: "POST",
461
- path: `/api/integration/${encodeURIComponent(input.integrationID)}/connect/key`,
462
- query: { location: input["location"] },
463
- body: { key: input["key"], label: input["label"] },
464
- successStatus: 204,
465
- declaredStatuses: [400, 401],
466
- empty: true,
467
- }, requestOptions),
468
- connectOauth: (input, requestOptions) => request({
469
- method: "POST",
470
- path: `/api/integration/${encodeURIComponent(input.integrationID)}/connect/oauth`,
471
- query: { location: input["location"] },
472
- body: { methodID: input["methodID"], inputs: input["inputs"], label: input["label"] },
473
- successStatus: 200,
474
- declaredStatuses: [400, 401],
475
- empty: false,
476
- }, requestOptions),
477
- attemptStatus: (input, requestOptions) => request({
478
- method: "GET",
479
- path: `/api/integration/attempt/${encodeURIComponent(input.attemptID)}`,
480
- query: { location: input["location"] },
481
- successStatus: 200,
482
- declaredStatuses: [401, 400],
483
- empty: false,
484
- }, requestOptions),
485
- attemptComplete: (input, requestOptions) => request({
486
- method: "POST",
487
- path: `/api/integration/attempt/${encodeURIComponent(input.attemptID)}/complete`,
488
- query: { location: input["location"] },
489
- body: { code: input["code"] },
490
- successStatus: 204,
491
- declaredStatuses: [400, 401],
492
- empty: true,
493
- }, requestOptions),
494
- attemptCancel: (input, requestOptions) => request({
495
- method: "DELETE",
496
- path: `/api/integration/attempt/${encodeURIComponent(input.attemptID)}`,
497
- query: { location: input["location"] },
498
- successStatus: 204,
499
- declaredStatuses: [401, 400],
500
- empty: true,
501
- }, requestOptions),
502
- },
503
- "server.mcp": {
504
- list: (input, requestOptions) => request({
505
- method: "GET",
506
- path: `/api/mcp`,
507
- query: { location: input?.["location"] },
508
- successStatus: 200,
509
- declaredStatuses: [401, 400],
510
- empty: false,
511
- }, requestOptions),
512
- },
513
- credential: {
514
- update: (input, requestOptions) => request({
515
- method: "PATCH",
516
- path: `/api/credential/${encodeURIComponent(input.credentialID)}`,
517
- query: { location: input["location"] },
518
- body: { label: input["label"] },
519
- successStatus: 204,
520
- declaredStatuses: [401, 400],
521
- empty: true,
522
- }, requestOptions),
523
- remove: (input, requestOptions) => request({
524
- method: "DELETE",
525
- path: `/api/credential/${encodeURIComponent(input.credentialID)}`,
526
- query: { location: input["location"] },
527
- successStatus: 204,
528
- declaredStatuses: [401, 400],
529
- empty: true,
530
- }, requestOptions),
531
- },
532
- project: {
533
- current: (input, requestOptions) => request({
534
- method: "GET",
535
- path: `/api/project/current`,
536
- query: { location: input?.["location"] },
537
- successStatus: 200,
538
- declaredStatuses: [401, 400],
539
- empty: false,
540
- }, requestOptions),
541
- directories: (input, requestOptions) => request({
542
- method: "GET",
543
- path: `/api/project/${encodeURIComponent(input.projectID)}/directories`,
544
- query: { location: input["location"] },
545
- successStatus: 200,
546
- declaredStatuses: [401, 400],
547
- empty: false,
548
- }, requestOptions),
549
- },
550
- form: {
551
- listRequests: (input, requestOptions) => request({
552
- method: "GET",
553
- path: `/api/form/request`,
554
- query: { location: input?.["location"] },
555
- successStatus: 200,
556
- declaredStatuses: [401, 400],
557
- empty: false,
558
- }, requestOptions),
559
- list: (input, requestOptions) => request({
560
- method: "GET",
561
- path: `/api/session/${encodeURIComponent(input.sessionID)}/form`,
562
- successStatus: 200,
563
- declaredStatuses: [404, 400, 401],
564
- empty: false,
565
- }, requestOptions).then((value) => value.data),
566
- create: (input, requestOptions) => request({
567
- method: "POST",
568
- path: `/api/session/${encodeURIComponent(input.sessionID)}/form`,
569
- body: {
570
- id: input["id"],
571
- title: input["title"],
572
- metadata: input["metadata"],
573
- mode: input["mode"],
574
- fields: input["fields"],
575
- url: input["url"],
576
- },
577
- successStatus: 200,
578
- declaredStatuses: [404, 409, 400, 401],
579
- empty: false,
580
- }, requestOptions).then((value) => value.data),
581
- get: (input, requestOptions) => request({
582
- method: "GET",
583
- path: `/api/session/${encodeURIComponent(input.sessionID)}/form/${encodeURIComponent(input.formID)}`,
584
- successStatus: 200,
585
- declaredStatuses: [404, 400, 401],
586
- empty: false,
587
- }, requestOptions).then((value) => value.data),
588
- state: (input, requestOptions) => request({
589
- method: "GET",
590
- path: `/api/session/${encodeURIComponent(input.sessionID)}/form/${encodeURIComponent(input.formID)}/state`,
591
- successStatus: 200,
592
- declaredStatuses: [404, 400, 401],
593
- empty: false,
594
- }, requestOptions).then((value) => value.data),
595
- reply: (input, requestOptions) => request({
596
- method: "POST",
597
- path: `/api/session/${encodeURIComponent(input.sessionID)}/form/${encodeURIComponent(input.formID)}/reply`,
598
- body: { answer: input["answer"] },
599
- successStatus: 204,
600
- declaredStatuses: [404, 409, 400, 401],
601
- empty: true,
602
- }, requestOptions),
603
- cancel: (input, requestOptions) => request({
604
- method: "POST",
605
- path: `/api/session/${encodeURIComponent(input.sessionID)}/form/${encodeURIComponent(input.formID)}/cancel`,
606
- successStatus: 204,
607
- declaredStatuses: [404, 409, 400, 401],
608
- empty: true,
609
- }, requestOptions),
610
- },
611
- permission: {
612
- listRequests: (input, requestOptions) => request({
613
- method: "GET",
614
- path: `/api/permission/request`,
615
- query: { location: input?.["location"] },
616
- successStatus: 200,
617
- declaredStatuses: [401, 400],
618
- empty: false,
619
- }, requestOptions),
620
- listSaved: (input, requestOptions) => request({
621
- method: "GET",
622
- path: `/api/permission/saved`,
623
- query: { projectID: input?.["projectID"] },
624
- successStatus: 200,
625
- declaredStatuses: [401, 400],
626
- empty: false,
627
- }, requestOptions).then((value) => value.data),
628
- removeSaved: (input, requestOptions) => request({
629
- method: "DELETE",
630
- path: `/api/permission/saved/${encodeURIComponent(input.id)}`,
631
- successStatus: 204,
632
- declaredStatuses: [401, 400],
633
- empty: true,
634
- }, requestOptions),
635
- create: (input, requestOptions) => request({
636
- method: "POST",
637
- path: `/api/session/${encodeURIComponent(input.sessionID)}/permission`,
638
- body: {
639
- id: input["id"],
640
- action: input["action"],
641
- resources: input["resources"],
642
- save: input["save"],
643
- metadata: input["metadata"],
644
- source: input["source"],
645
- agent: input["agent"],
646
- },
647
- successStatus: 200,
648
- declaredStatuses: [404, 400, 401],
649
- empty: false,
650
- }, requestOptions).then((value) => value.data),
651
- list: (input, requestOptions) => request({
652
- method: "GET",
653
- path: `/api/session/${encodeURIComponent(input.sessionID)}/permission`,
654
- successStatus: 200,
655
- declaredStatuses: [404, 400, 401],
656
- empty: false,
657
- }, requestOptions).then((value) => value.data),
658
- get: (input, requestOptions) => request({
659
- method: "GET",
660
- path: `/api/session/${encodeURIComponent(input.sessionID)}/permission/${encodeURIComponent(input.requestID)}`,
661
- successStatus: 200,
662
- declaredStatuses: [404, 400, 401],
663
- empty: false,
664
- }, requestOptions).then((value) => value.data),
665
- reply: (input, requestOptions) => request({
666
- method: "POST",
667
- path: `/api/session/${encodeURIComponent(input.sessionID)}/permission/${encodeURIComponent(input.requestID)}/reply`,
668
- body: { reply: input["reply"], message: input["message"] },
669
- successStatus: 204,
670
- declaredStatuses: [404, 400, 401],
671
- empty: true,
672
- }, requestOptions),
673
- },
674
- file: {
675
- read: (input, requestOptions) => request({
676
- method: "GET",
677
- path: `/api/fs/read/${encodePath(input.path)}`,
678
- query: { location: input["location"] },
679
- successStatus: 200,
680
- declaredStatuses: [401, 400],
681
- empty: false,
682
- binary: true,
683
- }, requestOptions),
684
- list: (input, requestOptions) => request({
685
- method: "GET",
686
- path: `/api/fs/list`,
687
- query: { location: input?.["location"], path: input?.["path"] },
688
- successStatus: 200,
689
- declaredStatuses: [401, 400],
690
- empty: false,
691
- }, requestOptions),
692
- find: (input, requestOptions) => request({
693
- method: "GET",
694
- path: `/api/fs/find`,
695
- query: { location: input["location"], query: input["query"], type: input["type"], limit: input["limit"] },
696
- successStatus: 200,
697
- declaredStatuses: [401, 400],
698
- empty: false,
699
- }, requestOptions),
700
- },
701
- command: {
702
- list: (input, requestOptions) => request({
703
- method: "GET",
704
- path: `/api/command`,
705
- query: { location: input?.["location"] },
706
- successStatus: 200,
707
- declaredStatuses: [401, 400],
708
- empty: false,
709
- }, requestOptions),
710
- },
711
- skill: {
712
- list: (input, requestOptions) => request({
713
- method: "GET",
714
- path: `/api/skill`,
715
- query: { location: input?.["location"] },
716
- successStatus: 200,
717
- declaredStatuses: [401, 400],
718
- empty: false,
719
- }, requestOptions),
720
- },
721
- event: {
722
- subscribe: (requestOptions) => sse({ method: "GET", path: `/api/event`, successStatus: 200, declaredStatuses: [401, 400], empty: false }, requestOptions),
723
- changes: (requestOptions) => sse({ method: "GET", path: `/api/event/changes`, successStatus: 200, declaredStatuses: [401, 400], empty: false }, requestOptions),
724
- },
725
- pty: {
726
- list: (input, requestOptions) => request({
727
- method: "GET",
728
- path: `/api/pty`,
729
- query: { location: input?.["location"] },
730
- successStatus: 200,
731
- declaredStatuses: [401, 400],
732
- empty: false,
733
- }, requestOptions),
734
- create: (input, requestOptions) => request({
735
- method: "POST",
736
- path: `/api/pty`,
737
- query: { location: input?.["location"] },
738
- body: {
739
- command: input?.["command"],
740
- args: input?.["args"],
741
- cwd: input?.["cwd"],
742
- title: input?.["title"],
743
- env: input?.["env"],
744
- },
745
- successStatus: 200,
746
- declaredStatuses: [401, 400],
747
- empty: false,
748
- }, requestOptions),
749
- get: (input, requestOptions) => request({
750
- method: "GET",
751
- path: `/api/pty/${encodeURIComponent(input.ptyID)}`,
752
- query: { location: input["location"] },
753
- successStatus: 200,
754
- declaredStatuses: [404, 401, 400],
755
- empty: false,
756
- }, requestOptions),
757
- update: (input, requestOptions) => request({
758
- method: "PUT",
759
- path: `/api/pty/${encodeURIComponent(input.ptyID)}`,
760
- query: { location: input["location"] },
761
- body: { title: input["title"], size: input["size"] },
762
- successStatus: 200,
763
- declaredStatuses: [404, 401, 400],
764
- empty: false,
765
- }, requestOptions),
766
- remove: (input, requestOptions) => request({
767
- method: "DELETE",
768
- path: `/api/pty/${encodeURIComponent(input.ptyID)}`,
769
- query: { location: input["location"] },
770
- successStatus: 204,
771
- declaredStatuses: [404, 401, 400],
772
- empty: true,
773
- }, requestOptions),
774
- },
775
- shell: {
776
- list: (input, requestOptions) => request({
777
- method: "GET",
778
- path: `/api/shell`,
779
- query: { location: input?.["location"] },
780
- successStatus: 200,
781
- declaredStatuses: [401, 400],
782
- empty: false,
783
- }, requestOptions),
784
- create: (input, requestOptions) => request({
785
- method: "POST",
786
- path: `/api/shell`,
787
- query: { location: input["location"] },
788
- body: {
789
- command: input["command"],
790
- cwd: input["cwd"],
791
- timeout: input["timeout"],
792
- metadata: input["metadata"],
793
- },
794
- successStatus: 200,
795
- declaredStatuses: [401, 400],
796
- empty: false,
797
- }, requestOptions),
798
- get: (input, requestOptions) => request({
799
- method: "GET",
800
- path: `/api/shell/${encodeURIComponent(input.id)}`,
801
- query: { location: input["location"] },
802
- successStatus: 200,
803
- declaredStatuses: [404, 401, 400],
804
- empty: false,
805
- }, requestOptions),
806
- output: (input, requestOptions) => request({
807
- method: "GET",
808
- path: `/api/shell/${encodeURIComponent(input.id)}/output`,
809
- query: { location: input["location"], cursor: input["cursor"], limit: input["limit"] },
810
- successStatus: 200,
811
- declaredStatuses: [404, 401, 400],
812
- empty: false,
813
- }, requestOptions),
814
- remove: (input, requestOptions) => request({
815
- method: "DELETE",
816
- path: `/api/shell/${encodeURIComponent(input.id)}`,
817
- query: { location: input["location"] },
818
- successStatus: 204,
819
- declaredStatuses: [404, 401, 400],
820
- empty: true,
821
- }, requestOptions),
822
- },
823
- question: {
824
- listRequests: (input, requestOptions) => request({
825
- method: "GET",
826
- path: `/api/question/request`,
827
- query: { location: input?.["location"] },
828
- successStatus: 200,
829
- declaredStatuses: [401, 400],
830
- empty: false,
831
- }, requestOptions),
832
- list: (input, requestOptions) => request({
833
- method: "GET",
834
- path: `/api/session/${encodeURIComponent(input.sessionID)}/question`,
835
- successStatus: 200,
836
- declaredStatuses: [404, 400, 401],
837
- empty: false,
838
- }, requestOptions).then((value) => value.data),
839
- reply: (input, requestOptions) => request({
840
- method: "POST",
841
- path: `/api/session/${encodeURIComponent(input.sessionID)}/question/${encodeURIComponent(input.requestID)}/reply`,
842
- body: { answers: input["answers"] },
843
- successStatus: 204,
844
- declaredStatuses: [404, 400, 401],
845
- empty: true,
846
- }, requestOptions),
847
- reject: (input, requestOptions) => request({
848
- method: "POST",
849
- path: `/api/session/${encodeURIComponent(input.sessionID)}/question/${encodeURIComponent(input.requestID)}/reject`,
850
- successStatus: 204,
851
- declaredStatuses: [404, 400, 401],
852
- empty: true,
853
- }, requestOptions),
854
- },
855
- reference: {
856
- list: (input, requestOptions) => request({
857
- method: "GET",
858
- path: `/api/reference`,
859
- query: { location: input?.["location"] },
860
- successStatus: 200,
861
- declaredStatuses: [401, 400],
862
- empty: false,
863
- }, requestOptions),
864
- },
865
- projectCopy: {
866
- create: (input, requestOptions) => request({
867
- method: "POST",
868
- path: `/experimental/project/${encodeURIComponent(input.projectID)}/copy`,
869
- query: { location: input["location"] },
870
- body: { strategy: input["strategy"], directory: input["directory"], name: input["name"] },
871
- successStatus: 200,
872
- declaredStatuses: [400, 401],
873
- empty: false,
874
- }, requestOptions),
875
- remove: (input, requestOptions) => request({
876
- method: "DELETE",
877
- path: `/experimental/project/${encodeURIComponent(input.projectID)}/copy`,
878
- query: { location: input["location"] },
879
- body: { directory: input["directory"], force: input["force"] },
880
- successStatus: 204,
881
- declaredStatuses: [400, 401],
882
- empty: true,
883
- }, requestOptions),
884
- refresh: (input, requestOptions) => request({
885
- method: "POST",
886
- path: `/experimental/project/${encodeURIComponent(input.projectID)}/copy/refresh`,
887
- query: { location: input["location"] },
888
- successStatus: 204,
889
- declaredStatuses: [400, 401],
890
- empty: true,
891
- }, requestOptions),
892
- },
893
- vcs: {
894
- status: (input, requestOptions) => request({
895
- method: "GET",
896
- path: `/api/vcs/status`,
897
- query: { location: input?.["location"] },
898
- successStatus: 200,
899
- declaredStatuses: [401, 400],
900
- empty: false,
901
- }, requestOptions),
902
- diff: (input, requestOptions) => request({
903
- method: "GET",
904
- path: `/api/vcs/diff`,
905
- query: { location: input["location"], mode: input["mode"], context: input["context"] },
906
- successStatus: 200,
907
- declaredStatuses: [401, 400],
908
- empty: false,
909
- }, requestOptions),
910
- },
911
- debug: {
912
- location: (requestOptions) => request({
913
- method: "GET",
914
- path: `/api/debug/location`,
915
- successStatus: 200,
916
- declaredStatuses: [401, 400],
917
- empty: false,
918
- }, requestOptions),
919
- },
920
- };
921
- }
922
- function encodePath(value) {
923
- return value.split("/").map(encodeURIComponent).join("/");
924
- }
925
- function appendQuery(params, key, value) {
926
- if (value === undefined)
927
- return;
928
- if (value === null) {
929
- params.append(key, "null");
930
- return;
931
- }
932
- if (Array.isArray(value)) {
933
- for (const item of value)
934
- appendQuery(params, key, item);
935
- return;
936
- }
937
- if (typeof value === "object") {
938
- for (const [child, item] of Object.entries(value))
939
- appendQuery(params, `${key}[${child}]`, item);
940
- return;
941
- }
942
- params.append(key, String(value));
943
- }
944
- async function json(response) {
945
- if (!isContentType(response, "application/json") && !response.headers.get("content-type")?.includes("+json")) {
946
- try {
947
- await response.body?.cancel();
948
- }
949
- catch { }
950
- throw new ClientError("UnsupportedContentType");
951
- }
952
- let text;
953
- try {
954
- text = await response.text();
955
- }
956
- catch (cause) {
957
- throw new ClientError("Transport", { cause });
958
- }
959
- if (text === "")
960
- throw new ClientError("MalformedResponse");
961
- try {
962
- return JSON.parse(text);
963
- }
964
- catch (cause) {
965
- throw new ClientError("MalformedResponse", { cause });
966
- }
967
- }
968
- function isContentType(response, expected) {
969
- return response.headers.get("content-type")?.split(";", 1)[0]?.trim().toLowerCase() === expected;
970
- }