@blaxel/core 0.3.26-preview.311 → 0.3.26-preview.313
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/.tsbuildinfo +1 -1
- package/dist/cjs/client/sdk.gen.js +2 -2
- package/dist/cjs/common/settings.js +2 -2
- package/dist/cjs/sandbox/client/sdk.gen.js +44 -11
- package/dist/cjs/sandbox/filesystem/filesystem.js +1 -1
- package/dist/cjs/types/client/sdk.gen.d.ts +5 -2
- package/dist/cjs/types/client/types.gen.d.ts +80 -7
- package/dist/cjs/types/sandbox/client/sdk.gen.d.ts +34 -13
- package/dist/cjs/types/sandbox/client/types.gen.d.ts +66 -13
- package/dist/cjs-browser/.tsbuildinfo +1 -1
- package/dist/cjs-browser/client/sdk.gen.js +2 -2
- package/dist/cjs-browser/common/settings.js +2 -2
- package/dist/cjs-browser/sandbox/client/sdk.gen.js +44 -11
- package/dist/cjs-browser/sandbox/filesystem/filesystem.js +1 -1
- package/dist/cjs-browser/types/client/sdk.gen.d.ts +5 -2
- package/dist/cjs-browser/types/client/types.gen.d.ts +80 -7
- package/dist/cjs-browser/types/sandbox/client/sdk.gen.d.ts +34 -13
- package/dist/cjs-browser/types/sandbox/client/types.gen.d.ts +66 -13
- package/dist/esm/.tsbuildinfo +1 -1
- package/dist/esm/client/sdk.gen.js +2 -2
- package/dist/esm/common/settings.js +2 -2
- package/dist/esm/sandbox/client/sdk.gen.js +42 -10
- package/dist/esm/sandbox/filesystem/filesystem.js +1 -1
- package/dist/esm-browser/.tsbuildinfo +1 -1
- package/dist/esm-browser/client/sdk.gen.js +2 -2
- package/dist/esm-browser/common/settings.js +2 -2
- package/dist/esm-browser/sandbox/client/sdk.gen.js +42 -10
- package/dist/esm-browser/sandbox/filesystem/filesystem.js +1 -1
- package/package.json +1 -1
|
@@ -801,7 +801,7 @@ const listImages = (options) => {
|
|
|
801
801
|
exports.listImages = listImages;
|
|
802
802
|
/**
|
|
803
803
|
* Build a container image
|
|
804
|
-
* Builds a container image without creating a deployment.
|
|
804
|
+
* Builds or imports a container image without creating a deployment. Provide a registry image reference to download and convert an existing image, or omit image to receive a presigned URL for uploading source code. Registry imports can specify memoryMb and volumeMb for the import worker. These settings do not change the resources of workloads using the image.
|
|
805
805
|
*/
|
|
806
806
|
const createImage = (options) => {
|
|
807
807
|
return (options.client ?? client_gen_1.client).post({
|
|
@@ -2448,7 +2448,7 @@ const getTemplate = (options) => {
|
|
|
2448
2448
|
exports.getTemplate = getTemplate;
|
|
2449
2449
|
/**
|
|
2450
2450
|
* List workspace team members
|
|
2451
|
-
* Returns all team members in the workspace including their roles (admin or
|
|
2451
|
+
* Returns all team members in the workspace including their roles (admin, member or viewer) and invitation status.
|
|
2452
2452
|
*/
|
|
2453
2453
|
const listWorkspaceUsers = (options) => {
|
|
2454
2454
|
return (options?.client ?? client_gen_1.client).get({
|
|
@@ -30,8 +30,8 @@ function missingCredentialsMessage() {
|
|
|
30
30
|
return "No Blaxel credentials found. Set the BL_API_KEY and BL_WORKSPACE environment variables, or run `bl login`.";
|
|
31
31
|
}
|
|
32
32
|
// Build info - these placeholders are replaced at build time by build:replace-imports
|
|
33
|
-
const BUILD_VERSION = "0.3.26-preview.
|
|
34
|
-
const BUILD_COMMIT = "
|
|
33
|
+
const BUILD_VERSION = "0.3.26-preview.313";
|
|
34
|
+
const BUILD_COMMIT = "74b7740c0709370950088f3244fe2eeb2e970fca";
|
|
35
35
|
const BUILD_SENTRY_DSN = "https://fd5e60e1c9820e1eef5ccebb84a07127@o4508714045276160.ingest.us.sentry.io/4510465864564736";
|
|
36
36
|
const BLAXEL_API_VERSION = "2026-09-22";
|
|
37
37
|
// Bun < 1.3.11 never sends connection-level WINDOW_UPDATE: the pooled h2
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
// This file is auto-generated by @hey-api/openapi-ts
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.getWatchFilesystemByPath = exports.postUpgrade = exports.postProcessByIdentifierStdin = exports.deleteProcessByIdentifierStdin = exports.getProcessByIdentifierLogsStream = exports.getProcessByIdentifierLogs = exports.deleteProcessByIdentifierKill = exports.getProcessByIdentifier = exports.deleteProcessByIdentifier = exports.postProcess = exports.getProcess = exports.putNetworkTunnelConfig = exports.deleteNetworkTunnel = exports.getNetworkProcessByPidPorts = exports.postNetworkProcessByPidMonitor = exports.deleteNetworkProcessByPidMonitor = exports.getHealth = exports.putFilesystemTreeByPath = exports.getFilesystemTreeByPath = exports.deleteFilesystemTreeByPath = exports.putFilesystemByPath = exports.getFilesystemByPath = exports.deleteFilesystemByPath = exports.getFilesystemSearchByPath = exports.postFilesystemMultipartInitiateByPath = exports.getFilesystemMultipartByUploadIdParts = exports.putFilesystemMultipartByUploadIdPart = exports.postFilesystemMultipartByUploadIdComplete = exports.deleteFilesystemMultipartByUploadIdAbort = exports.getFilesystemMultipart = exports.getFilesystemFindByPath = exports.getFilesystemContentSearchByPath = exports.postEnvironmentReload = exports.deleteDrivesMountByMountPath = exports.postDrivesMount = exports.getDrivesMount = exports.getCodegenRerankingByPath = exports.putCodegenFastapplyByPath = exports.getArchiveStatus = exports.postArchiveResume = exports.postArchiveExport = void 0;
|
|
4
|
+
exports.getWatchFilesystemByPath = exports.postUpgrade = exports.postProcessByIdentifierStdin = exports.deleteProcessByIdentifierStdin = exports.getProcessByIdentifierLogsStream = exports.getProcessByIdentifierLogs = exports.deleteProcessByIdentifierKill = exports.getProcessByIdentifier = exports.deleteProcessByIdentifier = exports.postProcess = exports.getProcess = exports.putNetworkTunnelConfig = exports.deleteNetworkTunnel = exports.getNetworkProcessByPidPorts = exports.postNetworkProcessByPidMonitor = exports.deleteNetworkProcessByPidMonitor = exports.getHealth = exports.putFilesystemTreeByPath = exports.getFilesystemTreeByPath = exports.deleteFilesystemTreeByPath = exports.putFilesystemByPath = exports.headFilesystemByPath = exports.getFilesystemByPath = exports.deleteFilesystemByPath = exports.getFilesystemSearchByPath = exports.postFilesystemMultipartInitiateByPath = exports.getFilesystemMultipartByUploadIdParts = exports.putFilesystemMultipartByUploadIdPart = exports.postFilesystemMultipartByUploadIdComplete = exports.deleteFilesystemMultipartByUploadIdAbort = exports.getFilesystemMultipart = exports.getFilesystemFindByPath = exports.getFilesystemContentSearchByPath = exports.postEnvironmentReload = exports.deleteDrivesMountByMountPath = exports.postDrivesMount = exports.getDrivesMount = exports.getCodegenRerankingByPath = exports.putCodegenFastapplyByPath = exports.getArchiveStatus = exports.postArchiveResume = exports.postArchiveExport = void 0;
|
|
5
5
|
const client_fetch_1 = require("@hey-api/client-fetch");
|
|
6
6
|
const client_gen_1 = require("./client.gen");
|
|
7
7
|
/**
|
|
8
8
|
* Export the filesystem changes to a presigned URL
|
|
9
9
|
* Archives everything the sandbox changed on top of its base image and streams it, uncompressed, to a presigned S3 PUT URL. The memory of the sandbox is not archived.
|
|
10
10
|
* The sandbox is quiesced first: the process list is saved (unless saveProcesses is false), every process is stopped, and the API then refuses the calls that would write to the filesystem. The freeze is not lifted afterwards, since an exported sandbox is meant to be restored elsewhere; call POST /archive/resume to lift it.
|
|
11
|
+
* A sandbox still frozen by an earlier export is exported as it is, with the process list that export saved.
|
|
11
12
|
* Use dryRun to get the archive's content and exact size without stopping anything and without uploading.
|
|
12
13
|
* Set async to start the export and answer immediately, which is what archiving a large filesystem needs: the export then reports itself through GET /archive/status.
|
|
13
14
|
*/
|
|
@@ -205,7 +206,7 @@ const postEnvironmentReload = (options) => {
|
|
|
205
206
|
exports.postEnvironmentReload = postEnvironmentReload;
|
|
206
207
|
/**
|
|
207
208
|
* Search for text content in files
|
|
208
|
-
* Searches for text content inside files
|
|
209
|
+
* Searches for text content inside files. Returns each matching line, with the lines around it when contextLines is set.
|
|
209
210
|
*/
|
|
210
211
|
const getFilesystemContentSearchByPath = (options) => {
|
|
211
212
|
return (options.client ?? client_gen_1.client).get({
|
|
@@ -294,7 +295,7 @@ const postFilesystemMultipartByUploadIdComplete = (options) => {
|
|
|
294
295
|
exports.postFilesystemMultipartByUploadIdComplete = postFilesystemMultipartByUploadIdComplete;
|
|
295
296
|
/**
|
|
296
297
|
* Upload part
|
|
297
|
-
* Upload a single part of a multipart upload
|
|
298
|
+
* Upload a single part of a multipart upload. Re-uploading a part number replaces that part. Wait for the previous request for that part to finish before retrying.
|
|
298
299
|
*/
|
|
299
300
|
const putFilesystemMultipartByUploadIdPart = (options) => {
|
|
300
301
|
return (options.client ?? client_gen_1.client).put({
|
|
@@ -354,7 +355,8 @@ const postFilesystemMultipartInitiateByPath = (options) => {
|
|
|
354
355
|
exports.postFilesystemMultipartInitiateByPath = postFilesystemMultipartInitiateByPath;
|
|
355
356
|
/**
|
|
356
357
|
* Fuzzy search for files and directories
|
|
357
|
-
*
|
|
358
|
+
* Ranks the files and directories under a path by how well their relative path fuzzy-matches `query` (fzf algorithm: the query's characters must appear in order, not necessarily next to each other), best match first.
|
|
359
|
+
* Fuzzy search is for "jump to file" lookups from a partial name. The `patterns` parameter is currently ignored by this endpoint; use find for exact glob filtering.
|
|
358
360
|
*/
|
|
359
361
|
const getFilesystemSearchByPath = (options) => {
|
|
360
362
|
return (options.client ?? client_gen_1.client).get({
|
|
@@ -403,9 +405,30 @@ const getFilesystemByPath = (options) => {
|
|
|
403
405
|
});
|
|
404
406
|
};
|
|
405
407
|
exports.getFilesystemByPath = getFilesystemByPath;
|
|
408
|
+
/**
|
|
409
|
+
* Stat a file or directory
|
|
410
|
+
* Returns the metadata of a file or directory as headers, with no body. This checks stat availability, not permission to read file contents or list a directory. When the path does not exist or its metadata cannot be accessed, the response is an empty 200 without the X-File-Type header.
|
|
411
|
+
*/
|
|
412
|
+
const headFilesystemByPath = (options) => {
|
|
413
|
+
return (options.client ?? client_gen_1.client).head({
|
|
414
|
+
security: [
|
|
415
|
+
{
|
|
416
|
+
scheme: 'bearer',
|
|
417
|
+
type: 'http'
|
|
418
|
+
}
|
|
419
|
+
],
|
|
420
|
+
url: '/filesystem/{path}',
|
|
421
|
+
...options
|
|
422
|
+
});
|
|
423
|
+
};
|
|
424
|
+
exports.headFilesystemByPath = headFilesystemByPath;
|
|
406
425
|
/**
|
|
407
426
|
* Create or update a file or directory
|
|
408
|
-
* Create or update a file or directory
|
|
427
|
+
* Create or update a file or directory.
|
|
428
|
+
*
|
|
429
|
+
* Idempotent: an existing file is overwritten (truncated, not appended to) and an existing directory is kept, so retrying the same request is safe.
|
|
430
|
+
*
|
|
431
|
+
* Send either a JSON body (FileRequest) or `multipart/form-data` for binary files. Multipart fields, in any order: `file` (required, the file content), `permissions` (optional octal mode such as `0755`, applied when the file is created, default `0644`; an existing file keeps its mode), `path` (optional, ignored: the target is always the URL path).
|
|
409
432
|
*/
|
|
410
433
|
const putFilesystemByPath = (options) => {
|
|
411
434
|
return (options.client ?? client_gen_1.client).put({
|
|
@@ -460,7 +483,7 @@ const getFilesystemTreeByPath = (options) => {
|
|
|
460
483
|
exports.getFilesystemTreeByPath = getFilesystemTreeByPath;
|
|
461
484
|
/**
|
|
462
485
|
* Create or update directory tree
|
|
463
|
-
* Create or update multiple files within a directory tree structure
|
|
486
|
+
* Create or update multiple files within a directory tree structure. Idempotent: existing files are overwritten, so retrying the same request is safe.
|
|
464
487
|
*/
|
|
465
488
|
const putFilesystemTreeByPath = (options) => {
|
|
466
489
|
return (options.client ?? client_gen_1.client).put({
|
|
@@ -609,7 +632,10 @@ const getProcess = (options) => {
|
|
|
609
632
|
exports.getProcess = getProcess;
|
|
610
633
|
/**
|
|
611
634
|
* Execute a command
|
|
612
|
-
* Execute a command and return process information.
|
|
635
|
+
* Execute a command and return process information.
|
|
636
|
+
*
|
|
637
|
+
* Streaming: with `Accept: application/x-ndjson` (or `Accept: text/event-stream`, kept for compatibility) the response is NDJSON (`Content-Type: application/x-ndjson`), not SSE: one JSON object per line, `{"type": "...", "data": "..."}`.
|
|
638
|
+
* `type` is `stdout` or `stderr` (`data` is a raw output chunk, sent as soon as the process writes it, newlines included; if the process finished before any chunk was streamed, its output is sent instead as one event per line, without the newline), `keepalive` (every 5 seconds, no data), `error` (`data` is the message, ends the stream) or `result` (last event, `data` is the ProcessResponse as a JSON string).
|
|
613
639
|
*/
|
|
614
640
|
const postProcess = (options) => {
|
|
615
641
|
return (options.client ?? client_gen_1.client).post({
|
|
@@ -630,7 +656,7 @@ const postProcess = (options) => {
|
|
|
630
656
|
exports.postProcess = postProcess;
|
|
631
657
|
/**
|
|
632
658
|
* Stop a process
|
|
633
|
-
*
|
|
659
|
+
* Request graceful termination. Poll GET /process/{identifier} until terminal status confirms the managed process has exited.
|
|
634
660
|
*/
|
|
635
661
|
const deleteProcessByIdentifier = (options) => {
|
|
636
662
|
return (options.client ?? client_gen_1.client).delete({
|
|
@@ -664,7 +690,7 @@ const getProcessByIdentifier = (options) => {
|
|
|
664
690
|
exports.getProcessByIdentifier = getProcessByIdentifier;
|
|
665
691
|
/**
|
|
666
692
|
* Kill a process
|
|
667
|
-
*
|
|
693
|
+
* Request forceful termination. Poll GET /process/{identifier} until terminal status confirms the managed process has exited.
|
|
668
694
|
*/
|
|
669
695
|
const deleteProcessByIdentifierKill = (options) => {
|
|
670
696
|
return (options.client ?? client_gen_1.client).delete({
|
|
@@ -698,7 +724,11 @@ const getProcessByIdentifierLogs = (options) => {
|
|
|
698
724
|
exports.getProcessByIdentifierLogs = getProcessByIdentifierLogs;
|
|
699
725
|
/**
|
|
700
726
|
* Stream process logs in real time
|
|
701
|
-
* Streams the stdout and stderr output of a process in real time
|
|
727
|
+
* Streams the stdout and stderr output of a process in real time: the output so far, then live output as the process writes it. Closes when the process exits or the client disconnects.
|
|
728
|
+
* By default, output is plain text with `stdout:` or `stderr:` prefixes at the start of each source stream's lines. Partial lines (e.g. prompts) are sent without waiting for a newline; their continuations have no new prefix. The other stream is not held back while a line is incomplete, and chronological order across stdout and stderr is not guaranteed.
|
|
729
|
+
* This format does not provide unambiguous framing: output from the other stream, or a `[keepalive]` marker sent every 30 seconds, can appear inside an unfinished line. A later continuation can therefore lack a prefix identifying its source. Do not rely on this text stream to reconstruct stdout and stderr separately; request NDJSON for source-preserving streaming, or use GET /process/{identifier}/logs for separate output snapshots.
|
|
730
|
+
* With `Accept: application/x-ndjson`, each line is a JSON object with `type` (`stdout`, `stderr`, `keepalive`, `restart`, `truncated`, or `error`) and optional `data`. Output records retain source identity and original bytes, including partial lines and newlines, for both retained history and live output. For `encoding: "base64"`, decode `data` before concatenating bytes per source; this occurs for binary data or a UTF-8 character split across chunks. Chunk boundaries are arbitrary and ordering is collection order, not a strict chronology across streams.
|
|
731
|
+
* `keepalive` has no output data. A quiet active stream sends an initial keepalive after attachment so clients can receive the response before sending stdin; subsequent keepalives are sent every 30 seconds. `restart` carries a supervisor restart notice, not process output. `truncated` reports a retention or slow-reader gap and must not be appended to stdout/stderr. `error` reports a streaming failure. The connection ends after the final process exit, including automatic restarts; there is no `result` record. Older processes without structured history return HTTP 409 for NDJSON; their text stream remains available.
|
|
702
732
|
*/
|
|
703
733
|
const getProcessByIdentifierLogsStream = (options) => {
|
|
704
734
|
return (options.client ?? client_gen_1.client).get({
|
|
@@ -778,7 +808,10 @@ const postUpgrade = (options) => {
|
|
|
778
808
|
exports.postUpgrade = postUpgrade;
|
|
779
809
|
/**
|
|
780
810
|
* Stream file modification events in a directory
|
|
781
|
-
* Streams
|
|
811
|
+
* Streams change events for a directory until the client disconnects.
|
|
812
|
+
*
|
|
813
|
+
* The body is JSON lines (sent with `Content-Type: text/plain`): one event object per line, e.g. `{"op":"WRITE","name":"main.go","path":"/app/src","error":null}`. `op` is the fsnotify operation (CREATE, WRITE, REMOVE, RENAME or CHMOD, several can be joined with `|`), `name` the base name of the changed entry, `path` the directory containing it, and `error` is always null. A `[keepalive]` line (not JSON) is sent every 30 seconds.
|
|
814
|
+
* Only the directory's direct entries are watched. To also watch every subdirectory, including ones created later, end the path with `**`. The stream reports subsequent changes without an initial snapshot. When a new directory is detected, synthetic CREATE events are emitted for entries already present inside it to cover changes before its watch was registered.
|
|
782
815
|
*/
|
|
783
816
|
const getWatchFilesystemByPath = (options) => {
|
|
784
817
|
return (options.client ?? client_gen_1.client).get({
|
|
@@ -266,7 +266,7 @@ class SandboxFileSystem extends action_js_1.SandboxAction {
|
|
|
266
266
|
}
|
|
267
267
|
async search(query, path = "/", options) {
|
|
268
268
|
const formattedPath = this.formatPath(path);
|
|
269
|
-
const queryParams = {};
|
|
269
|
+
const queryParams = { query };
|
|
270
270
|
if (options?.maxResults !== undefined) {
|
|
271
271
|
queryParams.maxResults = options.maxResults;
|
|
272
272
|
}
|
|
@@ -262,7 +262,7 @@ export declare const listImages: <ThrowOnError extends boolean = false>(options?
|
|
|
262
262
|
}, unknown, ThrowOnError>;
|
|
263
263
|
/**
|
|
264
264
|
* Build a container image
|
|
265
|
-
* Builds a container image without creating a deployment.
|
|
265
|
+
* Builds or imports a container image without creating a deployment. Provide a registry image reference to download and convert an existing image, or omit image to receive a presigned URL for uploading source code. Registry imports can specify memoryMb and volumeMb for the import worker. These settings do not change the resources of workloads using the image.
|
|
266
266
|
*/
|
|
267
267
|
export declare const createImage: <ThrowOnError extends boolean = false>(options: Options<CreateImageData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<{
|
|
268
268
|
image?: string;
|
|
@@ -664,6 +664,7 @@ export declare const getWorkspaceServiceAccounts: <ThrowOnError extends boolean
|
|
|
664
664
|
created_at?: string;
|
|
665
665
|
description?: string;
|
|
666
666
|
name?: string;
|
|
667
|
+
role?: string;
|
|
667
668
|
updated_at?: string;
|
|
668
669
|
}[], unknown, ThrowOnError>;
|
|
669
670
|
/**
|
|
@@ -676,6 +677,7 @@ export declare const createWorkspaceServiceAccount: <ThrowOnError extends boolea
|
|
|
676
677
|
created_at?: string;
|
|
677
678
|
description?: string;
|
|
678
679
|
name?: string;
|
|
680
|
+
role?: string;
|
|
679
681
|
updated_at?: string;
|
|
680
682
|
}, unknown, ThrowOnError>;
|
|
681
683
|
/**
|
|
@@ -698,6 +700,7 @@ export declare const updateWorkspaceServiceAccount: <ThrowOnError extends boolea
|
|
|
698
700
|
created_at?: string;
|
|
699
701
|
description?: string;
|
|
700
702
|
name?: string;
|
|
703
|
+
role?: string;
|
|
701
704
|
updated_at?: string;
|
|
702
705
|
}, unknown, ThrowOnError>;
|
|
703
706
|
/**
|
|
@@ -752,7 +755,7 @@ export declare const listTemplates: <ThrowOnError extends boolean = false>(optio
|
|
|
752
755
|
export declare const getTemplate: <ThrowOnError extends boolean = false>(options: Options<GetTemplateData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen.js").Template, unknown, ThrowOnError>;
|
|
753
756
|
/**
|
|
754
757
|
* List workspace team members
|
|
755
|
-
* Returns all team members in the workspace including their roles (admin or
|
|
758
|
+
* Returns all team members in the workspace including their roles (admin, member or viewer) and invitation status.
|
|
756
759
|
*/
|
|
757
760
|
export declare const listWorkspaceUsers: <ThrowOnError extends boolean = false>(options?: Options<ListWorkspaceUsersData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen.js").WorkspaceUser[], unknown, ThrowOnError>;
|
|
758
761
|
/**
|
|
@@ -1041,7 +1041,7 @@ export type ExpirationPolicy = {
|
|
|
1041
1041
|
*/
|
|
1042
1042
|
type?: 'ttl-idle' | 'ttl-max-age' | 'date';
|
|
1043
1043
|
/**
|
|
1044
|
-
* Duration value for TTL policies (e.g., '30m', '24h', '7d') or ISO 8601 date for date policies
|
|
1044
|
+
* Duration value for TTL policies (e.g., '30m', '24h', '7d', minimum '5m') or ISO 8601 date for date policies
|
|
1045
1045
|
*/
|
|
1046
1046
|
value?: string;
|
|
1047
1047
|
};
|
|
@@ -1223,9 +1223,9 @@ export type GroupWorkspaceMapping = {
|
|
|
1223
1223
|
*/
|
|
1224
1224
|
groupName?: string;
|
|
1225
1225
|
/**
|
|
1226
|
-
* Role to assign in this workspace (admin or
|
|
1226
|
+
* Role to assign in this workspace (admin, member or viewer)
|
|
1227
1227
|
*/
|
|
1228
|
-
role?: 'admin' | 'member';
|
|
1228
|
+
role?: 'admin' | 'member' | 'viewer';
|
|
1229
1229
|
};
|
|
1230
1230
|
export type Image = {
|
|
1231
1231
|
metadata: ImageMetadata;
|
|
@@ -1715,10 +1715,18 @@ export type JobExecutionSpec = {
|
|
|
1715
1715
|
* Number of parallel tasks
|
|
1716
1716
|
*/
|
|
1717
1717
|
parallelism?: number;
|
|
1718
|
+
/**
|
|
1719
|
+
* Number of tasks of this execution
|
|
1720
|
+
*/
|
|
1721
|
+
taskCount?: number;
|
|
1718
1722
|
/**
|
|
1719
1723
|
* List of execution tasks
|
|
1720
1724
|
*/
|
|
1721
1725
|
tasks?: Array<JobExecutionTask>;
|
|
1726
|
+
/**
|
|
1727
|
+
* Where this execution's task list is stored (server-managed)
|
|
1728
|
+
*/
|
|
1729
|
+
readonly tasksRef?: string;
|
|
1722
1730
|
/**
|
|
1723
1731
|
* Job timeout in seconds (captured at execution creation time)
|
|
1724
1732
|
*/
|
|
@@ -1742,6 +1750,10 @@ export type JobExecutionSpecWritable = {
|
|
|
1742
1750
|
* Number of parallel tasks
|
|
1743
1751
|
*/
|
|
1744
1752
|
parallelism?: number;
|
|
1753
|
+
/**
|
|
1754
|
+
* Number of tasks of this execution
|
|
1755
|
+
*/
|
|
1756
|
+
taskCount?: number;
|
|
1745
1757
|
/**
|
|
1746
1758
|
* List of execution tasks
|
|
1747
1759
|
*/
|
|
@@ -3666,6 +3678,14 @@ export type SandboxDefinition = {
|
|
|
3666
3678
|
* Icon of the definition
|
|
3667
3679
|
*/
|
|
3668
3680
|
icon?: string;
|
|
3681
|
+
/**
|
|
3682
|
+
* Nonempty dark-mode icon URL in responses. Blank inputs use the resolved light-mode icon.
|
|
3683
|
+
*/
|
|
3684
|
+
iconDark?: string;
|
|
3685
|
+
/**
|
|
3686
|
+
* Nonempty light-mode icon URL in responses. Blank inputs use icon, iconDark, then the default Hub icon.
|
|
3687
|
+
*/
|
|
3688
|
+
iconLight?: string;
|
|
3669
3689
|
/**
|
|
3670
3690
|
* Image of the Sandbox definition
|
|
3671
3691
|
*/
|
|
@@ -3743,6 +3763,7 @@ export type SandboxForkRequest = {
|
|
|
3743
3763
|
* Environment variables the fork runs with, on top of the ones the source has. A variable the source already carries takes this value in the fork, one it does not is added, and every other variable of the source is kept.
|
|
3744
3764
|
*/
|
|
3745
3765
|
envs?: Array<Env>;
|
|
3766
|
+
lifecycle?: SandboxLifecycle;
|
|
3746
3767
|
/**
|
|
3747
3768
|
* Port to expose from the sandbox
|
|
3748
3769
|
*/
|
|
@@ -3889,7 +3910,7 @@ export type SandboxRuntime = {
|
|
|
3889
3910
|
*/
|
|
3890
3911
|
expires?: string;
|
|
3891
3912
|
/**
|
|
3892
|
-
* Extra arguments for kernel selection. Supported keys: 'iptables', 'nfs' (mk3.0), 'tun' and '
|
|
3913
|
+
* Extra arguments for kernel selection. Supported keys: 'iptables', 'nfs' (mk3.0), 'tun', 'android' and 'landlock' (mk3.1). The android variant includes tun and iptables and cannot be combined with nfs. The landlock variant enables the Landlock LSM, includes tun and iptables, and cannot be combined with android or nfs. Android and landlock requests are rejected if routing selects mk3.0. Values: 'enabled' or 'disabled'. Determines which kernel variant the workload runs on. Immutable after creation.
|
|
3893
3914
|
*/
|
|
3894
3915
|
extraArgs?: {
|
|
3895
3916
|
[key: string]: string;
|
|
@@ -3908,7 +3929,7 @@ export type SandboxRuntime = {
|
|
|
3908
3929
|
*/
|
|
3909
3930
|
terminationGracePeriodSeconds?: number;
|
|
3910
3931
|
/**
|
|
3911
|
-
* Max-age from creation: the sandbox is deleted this long after it is created, regardless of activity (not an idle timeout). Units s, m, h, d, w (e.g., '30m', '24h', '7d', '2w'). For idle-based cleanup, use a lifecycle expiration policy of type ttl-idle.
|
|
3932
|
+
* Max-age from creation: the sandbox is deleted this long after it is created, regardless of activity (not an idle timeout). Units s, m, h, d, w (e.g., '30m', '24h', '7d', '2w'), minimum '5m'. For idle-based cleanup, use a lifecycle expiration policy of type ttl-idle.
|
|
3912
3933
|
*/
|
|
3913
3934
|
ttl?: string;
|
|
3914
3935
|
};
|
|
@@ -4501,6 +4522,10 @@ export type TriggerConfiguration = {
|
|
|
4501
4522
|
* The tasks configuration of the cronjob
|
|
4502
4523
|
*/
|
|
4503
4524
|
tasks?: Array<TriggerConfigurationTask>;
|
|
4525
|
+
/**
|
|
4526
|
+
* Where this trigger's task list is stored (server-managed)
|
|
4527
|
+
*/
|
|
4528
|
+
readonly tasksRef?: string;
|
|
4504
4529
|
/**
|
|
4505
4530
|
* The timeout in seconds for async triggers (max 900s, MK3 only)
|
|
4506
4531
|
*/
|
|
@@ -4813,6 +4838,10 @@ export type Workspace = TimeFields & OwnerFields & {
|
|
|
4813
4838
|
* Workspace account id
|
|
4814
4839
|
*/
|
|
4815
4840
|
accountId?: string;
|
|
4841
|
+
/**
|
|
4842
|
+
* Baseten team this workspace was provisioned for; absent on native workspaces
|
|
4843
|
+
*/
|
|
4844
|
+
readonly basetenTeamId?: string;
|
|
4816
4845
|
/**
|
|
4817
4846
|
* Workspace display name
|
|
4818
4847
|
*/
|
|
@@ -4993,6 +5022,10 @@ export type WorkspaceUser = {
|
|
|
4993
5022
|
* Workspace user given name
|
|
4994
5023
|
*/
|
|
4995
5024
|
given_name?: string;
|
|
5025
|
+
/**
|
|
5026
|
+
* Whether the user has at least one verified MFA factor. Omitted when the caller is not entitled to see it (only workspace admins and owners see other members' MFA status) and for pending invitations, which have no account yet.
|
|
5027
|
+
*/
|
|
5028
|
+
mfa_enabled?: boolean;
|
|
4996
5029
|
/**
|
|
4997
5030
|
* Workspace user role
|
|
4998
5031
|
*/
|
|
@@ -6353,14 +6386,22 @@ export type ListImagesResponses = {
|
|
|
6353
6386
|
export type ListImagesResponse = ListImagesResponses[keyof ListImagesResponses];
|
|
6354
6387
|
export type CreateImageData = {
|
|
6355
6388
|
body: {
|
|
6389
|
+
/**
|
|
6390
|
+
* Docker configuration JSON containing credentials for the source registry.
|
|
6391
|
+
*/
|
|
6392
|
+
dockerConfig?: string;
|
|
6356
6393
|
/**
|
|
6357
6394
|
* Runtime generation (e.g., mk3). Defaults to mk3 if not specified.
|
|
6358
6395
|
*/
|
|
6359
6396
|
generation?: string;
|
|
6360
6397
|
/**
|
|
6361
|
-
* A pre-built Docker image reference (e.g., docker.io/myorg/myimage:latest).
|
|
6398
|
+
* A pre-built Docker image reference (e.g., docker.io/myorg/myimage:latest). References with a registry hostname start an asynchronous import that downloads and converts the image for the resource runtime.
|
|
6362
6399
|
*/
|
|
6363
6400
|
image?: string;
|
|
6401
|
+
/**
|
|
6402
|
+
* Memory for the registry import worker in MiB. Only supported when image is a registry reference. When omitted, the platform default is used.
|
|
6403
|
+
*/
|
|
6404
|
+
memoryMb?: number;
|
|
6364
6405
|
/**
|
|
6365
6406
|
* Name of the image to build
|
|
6366
6407
|
*/
|
|
@@ -6369,6 +6410,14 @@ export type CreateImageData = {
|
|
|
6369
6410
|
* Resource type (agent, function, sandbox, job)
|
|
6370
6411
|
*/
|
|
6371
6412
|
resourceType: string;
|
|
6413
|
+
/**
|
|
6414
|
+
* Tag for the imported image. Only supported when image is a registry reference. When omitted, a tag is derived from the build inputs. Tags are immutable, so a tag that already exists is rejected. latest, pending and failed are reserved.
|
|
6415
|
+
*/
|
|
6416
|
+
tag?: string;
|
|
6417
|
+
/**
|
|
6418
|
+
* Temporary scratch disk for the registry import worker in MiB. Only supported when image is a registry reference. When omitted, the platform default is used. Set to 0 to use memory-backed scratch. Positive values are not supported for HIPAA workspaces.
|
|
6419
|
+
*/
|
|
6420
|
+
volumeMb?: number;
|
|
6372
6421
|
};
|
|
6373
6422
|
path?: never;
|
|
6374
6423
|
query?: never;
|
|
@@ -6379,6 +6428,10 @@ export type CreateImageErrors = {
|
|
|
6379
6428
|
* invalid request
|
|
6380
6429
|
*/
|
|
6381
6430
|
400: unknown;
|
|
6431
|
+
/**
|
|
6432
|
+
* the requested tag already exists
|
|
6433
|
+
*/
|
|
6434
|
+
409: unknown;
|
|
6382
6435
|
};
|
|
6383
6436
|
export type CreateImageResponses = {
|
|
6384
6437
|
/**
|
|
@@ -7804,7 +7857,7 @@ export type CreateSandboxData = {
|
|
|
7804
7857
|
path?: never;
|
|
7805
7858
|
query?: {
|
|
7806
7859
|
/**
|
|
7807
|
-
* If true, return existing sandbox instead of 409
|
|
7860
|
+
* If true, return the existing sandbox instead of a 409 when one with this name is alive. A name held by a FAILED or TERMINATED sandbox is reused, and a deletion or a concurrent creation still in flight is waited for (with backoff) so the response is the sandbox, not a conflict to retry.
|
|
7808
7861
|
*/
|
|
7809
7862
|
createIfNotExist?: boolean;
|
|
7810
7863
|
};
|
|
@@ -8713,6 +8766,10 @@ export type GetWorkspaceServiceAccountsResponses = {
|
|
|
8713
8766
|
* Service account name
|
|
8714
8767
|
*/
|
|
8715
8768
|
name?: string;
|
|
8769
|
+
/**
|
|
8770
|
+
* Role of the service account in the workspace
|
|
8771
|
+
*/
|
|
8772
|
+
role?: string;
|
|
8716
8773
|
/**
|
|
8717
8774
|
* Last update timestamp
|
|
8718
8775
|
*/
|
|
@@ -8730,6 +8787,10 @@ export type CreateWorkspaceServiceAccountData = {
|
|
|
8730
8787
|
* Service account name
|
|
8731
8788
|
*/
|
|
8732
8789
|
name: string;
|
|
8790
|
+
/**
|
|
8791
|
+
* Role of the service account in the workspace. Defaults to admin on creation; unchanged on update when omitted.
|
|
8792
|
+
*/
|
|
8793
|
+
role?: 'viewer' | 'member' | 'admin';
|
|
8733
8794
|
};
|
|
8734
8795
|
path?: never;
|
|
8735
8796
|
query?: never;
|
|
@@ -8760,6 +8821,10 @@ export type CreateWorkspaceServiceAccountResponses = {
|
|
|
8760
8821
|
* Service account name
|
|
8761
8822
|
*/
|
|
8762
8823
|
name?: string;
|
|
8824
|
+
/**
|
|
8825
|
+
* Role of the service account in the workspace
|
|
8826
|
+
*/
|
|
8827
|
+
role?: string;
|
|
8763
8828
|
/**
|
|
8764
8829
|
* Last update timestamp
|
|
8765
8830
|
*/
|
|
@@ -8816,6 +8881,10 @@ export type UpdateWorkspaceServiceAccountData = {
|
|
|
8816
8881
|
* Service account name
|
|
8817
8882
|
*/
|
|
8818
8883
|
name?: string;
|
|
8884
|
+
/**
|
|
8885
|
+
* Role of the service account in the workspace. Defaults to admin on creation; unchanged on update when omitted.
|
|
8886
|
+
*/
|
|
8887
|
+
role?: 'viewer' | 'member' | 'admin';
|
|
8819
8888
|
};
|
|
8820
8889
|
path: {
|
|
8821
8890
|
/**
|
|
@@ -8847,6 +8916,10 @@ export type UpdateWorkspaceServiceAccountResponses = {
|
|
|
8847
8916
|
* Service account name
|
|
8848
8917
|
*/
|
|
8849
8918
|
name?: string;
|
|
8919
|
+
/**
|
|
8920
|
+
* Role of the service account in the workspace
|
|
8921
|
+
*/
|
|
8922
|
+
role?: string;
|
|
8850
8923
|
/**
|
|
8851
8924
|
* Last update timestamp
|
|
8852
8925
|
*/
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type Options as ClientOptions, type TDataShape, type Client } from '@hey-api/client-fetch';
|
|
2
|
-
import type { PostArchiveExportData, PostArchiveExportResponse, PostArchiveResumeData, GetArchiveStatusData, PutCodegenFastapplyByPathData, GetCodegenRerankingByPathData, GetDrivesMountData, PostDrivesMountData, DeleteDrivesMountByMountPathData, PostEnvironmentReloadData, GetFilesystemContentSearchByPathData, GetFilesystemFindByPathData, GetFilesystemMultipartData, DeleteFilesystemMultipartByUploadIdAbortData, PostFilesystemMultipartByUploadIdCompleteData, PutFilesystemMultipartByUploadIdPartData, GetFilesystemMultipartByUploadIdPartsData, PostFilesystemMultipartInitiateByPathData, GetFilesystemSearchByPathData, DeleteFilesystemByPathData, GetFilesystemByPathData, PutFilesystemByPathData, DeleteFilesystemTreeByPathData, GetFilesystemTreeByPathData, PutFilesystemTreeByPathData, GetHealthData, DeleteNetworkProcessByPidMonitorData, PostNetworkProcessByPidMonitorData, GetNetworkProcessByPidPortsData, DeleteNetworkTunnelData, PutNetworkTunnelConfigData, GetProcessData, PostProcessData, DeleteProcessByIdentifierData, GetProcessByIdentifierData, DeleteProcessByIdentifierKillData, GetProcessByIdentifierLogsData, GetProcessByIdentifierLogsStreamData, DeleteProcessByIdentifierStdinData, PostProcessByIdentifierStdinData, PostUpgradeData, GetWatchFilesystemByPathData } from './types.gen';
|
|
2
|
+
import type { PostArchiveExportData, PostArchiveExportResponse, PostArchiveResumeData, GetArchiveStatusData, PutCodegenFastapplyByPathData, GetCodegenRerankingByPathData, GetDrivesMountData, PostDrivesMountData, DeleteDrivesMountByMountPathData, PostEnvironmentReloadData, GetFilesystemContentSearchByPathData, GetFilesystemFindByPathData, GetFilesystemMultipartData, DeleteFilesystemMultipartByUploadIdAbortData, PostFilesystemMultipartByUploadIdCompleteData, PutFilesystemMultipartByUploadIdPartData, GetFilesystemMultipartByUploadIdPartsData, PostFilesystemMultipartInitiateByPathData, GetFilesystemSearchByPathData, DeleteFilesystemByPathData, GetFilesystemByPathData, HeadFilesystemByPathData, PutFilesystemByPathData, DeleteFilesystemTreeByPathData, GetFilesystemTreeByPathData, PutFilesystemTreeByPathData, GetHealthData, DeleteNetworkProcessByPidMonitorData, PostNetworkProcessByPidMonitorData, GetNetworkProcessByPidPortsData, DeleteNetworkTunnelData, PutNetworkTunnelConfigData, GetProcessData, PostProcessData, DeleteProcessByIdentifierData, GetProcessByIdentifierData, DeleteProcessByIdentifierKillData, GetProcessByIdentifierLogsData, GetProcessByIdentifierLogsStreamData, DeleteProcessByIdentifierStdinData, PostProcessByIdentifierStdinData, PostUpgradeData, GetWatchFilesystemByPathData } from './types.gen';
|
|
3
3
|
export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean> = ClientOptions<TData, ThrowOnError> & {
|
|
4
4
|
/**
|
|
5
5
|
* You can provide a client instance returned by `createClient()` instead of
|
|
@@ -17,6 +17,7 @@ export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends
|
|
|
17
17
|
* Export the filesystem changes to a presigned URL
|
|
18
18
|
* Archives everything the sandbox changed on top of its base image and streams it, uncompressed, to a presigned S3 PUT URL. The memory of the sandbox is not archived.
|
|
19
19
|
* The sandbox is quiesced first: the process list is saved (unless saveProcesses is false), every process is stopped, and the API then refuses the calls that would write to the filesystem. The freeze is not lifted afterwards, since an exported sandbox is meant to be restored elsewhere; call POST /archive/resume to lift it.
|
|
20
|
+
* A sandbox still frozen by an earlier export is exported as it is, with the process list that export saved.
|
|
20
21
|
* Use dryRun to get the archive's content and exact size without stopping anything and without uploading.
|
|
21
22
|
* Set async to start the export and answer immediately, which is what archiving a large filesystem needs: the export then reports itself through GET /archive/status.
|
|
22
23
|
*/
|
|
@@ -94,7 +95,7 @@ export declare const deleteDrivesMountByMountPath: <ThrowOnError extends boolean
|
|
|
94
95
|
export declare const postEnvironmentReload: <ThrowOnError extends boolean = false>(options?: Options<PostEnvironmentReloadData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").HandlerReloadResponse, import("./types.gen").ErrorResponse, ThrowOnError>;
|
|
95
96
|
/**
|
|
96
97
|
* Search for text content in files
|
|
97
|
-
* Searches for text content inside files
|
|
98
|
+
* Searches for text content inside files. Returns each matching line, with the lines around it when contextLines is set.
|
|
98
99
|
*/
|
|
99
100
|
export declare const getFilesystemContentSearchByPath: <ThrowOnError extends boolean = false>(options: Options<GetFilesystemContentSearchByPathData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").ContentSearchResponse, import("./types.gen").ErrorResponse, ThrowOnError>;
|
|
100
101
|
/**
|
|
@@ -119,7 +120,7 @@ export declare const deleteFilesystemMultipartByUploadIdAbort: <ThrowOnError ext
|
|
|
119
120
|
export declare const postFilesystemMultipartByUploadIdComplete: <ThrowOnError extends boolean = false>(options: Options<PostFilesystemMultipartByUploadIdCompleteData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").SuccessResponse, import("./types.gen").ErrorResponse, ThrowOnError>;
|
|
120
121
|
/**
|
|
121
122
|
* Upload part
|
|
122
|
-
* Upload a single part of a multipart upload
|
|
123
|
+
* Upload a single part of a multipart upload. Re-uploading a part number replaces that part. Wait for the previous request for that part to finish before retrying.
|
|
123
124
|
*/
|
|
124
125
|
export declare const putFilesystemMultipartByUploadIdPart: <ThrowOnError extends boolean = false>(options: Options<PutFilesystemMultipartByUploadIdPartData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").MultipartUploadPartResponse, import("./types.gen").ErrorResponse, ThrowOnError>;
|
|
125
126
|
/**
|
|
@@ -134,7 +135,8 @@ export declare const getFilesystemMultipartByUploadIdParts: <ThrowOnError extend
|
|
|
134
135
|
export declare const postFilesystemMultipartInitiateByPath: <ThrowOnError extends boolean = false>(options: Options<PostFilesystemMultipartInitiateByPathData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").MultipartInitiateResponse, import("./types.gen").ErrorResponse, ThrowOnError>;
|
|
135
136
|
/**
|
|
136
137
|
* Fuzzy search for files and directories
|
|
137
|
-
*
|
|
138
|
+
* Ranks the files and directories under a path by how well their relative path fuzzy-matches `query` (fzf algorithm: the query's characters must appear in order, not necessarily next to each other), best match first.
|
|
139
|
+
* Fuzzy search is for "jump to file" lookups from a partial name. The `patterns` parameter is currently ignored by this endpoint; use find for exact glob filtering.
|
|
138
140
|
*/
|
|
139
141
|
export declare const getFilesystemSearchByPath: <ThrowOnError extends boolean = false>(options: Options<GetFilesystemSearchByPathData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").FuzzySearchResponse, import("./types.gen").ErrorResponse, ThrowOnError>;
|
|
140
142
|
/**
|
|
@@ -147,9 +149,18 @@ export declare const deleteFilesystemByPath: <ThrowOnError extends boolean = fal
|
|
|
147
149
|
* Get content of a file or listing of a directory. Use Accept header to control response format for files.
|
|
148
150
|
*/
|
|
149
151
|
export declare const getFilesystemByPath: <ThrowOnError extends boolean = false>(options: Options<GetFilesystemByPathData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").File | import("./types.gen").Directory | import("./types.gen").FileWithContent | Blob, import("./types.gen").ErrorResponse, ThrowOnError>;
|
|
152
|
+
/**
|
|
153
|
+
* Stat a file or directory
|
|
154
|
+
* Returns the metadata of a file or directory as headers, with no body. This checks stat availability, not permission to read file contents or list a directory. When the path does not exist or its metadata cannot be accessed, the response is an empty 200 without the X-File-Type header.
|
|
155
|
+
*/
|
|
156
|
+
export declare const headFilesystemByPath: <ThrowOnError extends boolean = false>(options: Options<HeadFilesystemByPathData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<unknown, unknown, ThrowOnError>;
|
|
150
157
|
/**
|
|
151
158
|
* Create or update a file or directory
|
|
152
|
-
* Create or update a file or directory
|
|
159
|
+
* Create or update a file or directory.
|
|
160
|
+
*
|
|
161
|
+
* Idempotent: an existing file is overwritten (truncated, not appended to) and an existing directory is kept, so retrying the same request is safe.
|
|
162
|
+
*
|
|
163
|
+
* Send either a JSON body (FileRequest) or `multipart/form-data` for binary files. Multipart fields, in any order: `file` (required, the file content), `permissions` (optional octal mode such as `0755`, applied when the file is created, default `0644`; an existing file keeps its mode), `path` (optional, ignored: the target is always the URL path).
|
|
153
164
|
*/
|
|
154
165
|
export declare const putFilesystemByPath: <ThrowOnError extends boolean = false>(options: Options<PutFilesystemByPathData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").SuccessResponse, import("./types.gen").ErrorResponse, ThrowOnError>;
|
|
155
166
|
/**
|
|
@@ -161,12 +172,12 @@ export declare const deleteFilesystemTreeByPath: <ThrowOnError extends boolean =
|
|
|
161
172
|
* Get directory tree
|
|
162
173
|
* Get a recursive directory tree structure starting from the specified path
|
|
163
174
|
*/
|
|
164
|
-
export declare const getFilesystemTreeByPath: <ThrowOnError extends boolean = false>(options: Options<GetFilesystemTreeByPathData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").
|
|
175
|
+
export declare const getFilesystemTreeByPath: <ThrowOnError extends boolean = false>(options: Options<GetFilesystemTreeByPathData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").Directory, import("./types.gen").ErrorResponse, ThrowOnError>;
|
|
165
176
|
/**
|
|
166
177
|
* Create or update directory tree
|
|
167
|
-
* Create or update multiple files within a directory tree structure
|
|
178
|
+
* Create or update multiple files within a directory tree structure. Idempotent: existing files are overwritten, so retrying the same request is safe.
|
|
168
179
|
*/
|
|
169
|
-
export declare const putFilesystemTreeByPath: <ThrowOnError extends boolean = false>(options: Options<PutFilesystemTreeByPathData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").
|
|
180
|
+
export declare const putFilesystemTreeByPath: <ThrowOnError extends boolean = false>(options: Options<PutFilesystemTreeByPathData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").Directory, import("./types.gen").ErrorResponse, ThrowOnError>;
|
|
170
181
|
/**
|
|
171
182
|
* Health check
|
|
172
183
|
* Returns health status and system information including upgrade count and binary details
|
|
@@ -211,12 +222,15 @@ export declare const putNetworkTunnelConfig: <ThrowOnError extends boolean = fal
|
|
|
211
222
|
export declare const getProcess: <ThrowOnError extends boolean = false>(options?: Options<GetProcessData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").ProcessResponse[], unknown, ThrowOnError>;
|
|
212
223
|
/**
|
|
213
224
|
* Execute a command
|
|
214
|
-
* Execute a command and return process information.
|
|
225
|
+
* Execute a command and return process information.
|
|
226
|
+
*
|
|
227
|
+
* Streaming: with `Accept: application/x-ndjson` (or `Accept: text/event-stream`, kept for compatibility) the response is NDJSON (`Content-Type: application/x-ndjson`), not SSE: one JSON object per line, `{"type": "...", "data": "..."}`.
|
|
228
|
+
* `type` is `stdout` or `stderr` (`data` is a raw output chunk, sent as soon as the process writes it, newlines included; if the process finished before any chunk was streamed, its output is sent instead as one event per line, without the newline), `keepalive` (every 5 seconds, no data), `error` (`data` is the message, ends the stream) or `result` (last event, `data` is the ProcessResponse as a JSON string).
|
|
215
229
|
*/
|
|
216
230
|
export declare const postProcess: <ThrowOnError extends boolean = false>(options: Options<PostProcessData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").ProcessResponse, import("./types.gen").ErrorResponse, ThrowOnError>;
|
|
217
231
|
/**
|
|
218
232
|
* Stop a process
|
|
219
|
-
*
|
|
233
|
+
* Request graceful termination. Poll GET /process/{identifier} until terminal status confirms the managed process has exited.
|
|
220
234
|
*/
|
|
221
235
|
export declare const deleteProcessByIdentifier: <ThrowOnError extends boolean = false>(options: Options<DeleteProcessByIdentifierData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").SuccessResponse, import("./types.gen").ErrorResponse, ThrowOnError>;
|
|
222
236
|
/**
|
|
@@ -226,7 +240,7 @@ export declare const deleteProcessByIdentifier: <ThrowOnError extends boolean =
|
|
|
226
240
|
export declare const getProcessByIdentifier: <ThrowOnError extends boolean = false>(options: Options<GetProcessByIdentifierData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").ProcessResponse, import("./types.gen").ErrorResponse, ThrowOnError>;
|
|
227
241
|
/**
|
|
228
242
|
* Kill a process
|
|
229
|
-
*
|
|
243
|
+
* Request forceful termination. Poll GET /process/{identifier} until terminal status confirms the managed process has exited.
|
|
230
244
|
*/
|
|
231
245
|
export declare const deleteProcessByIdentifierKill: <ThrowOnError extends boolean = false>(options: Options<DeleteProcessByIdentifierKillData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").SuccessResponse, import("./types.gen").ErrorResponse, ThrowOnError>;
|
|
232
246
|
/**
|
|
@@ -236,7 +250,11 @@ export declare const deleteProcessByIdentifierKill: <ThrowOnError extends boolea
|
|
|
236
250
|
export declare const getProcessByIdentifierLogs: <ThrowOnError extends boolean = false>(options: Options<GetProcessByIdentifierLogsData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").ProcessLogs, import("./types.gen").ErrorResponse, ThrowOnError>;
|
|
237
251
|
/**
|
|
238
252
|
* Stream process logs in real time
|
|
239
|
-
* Streams the stdout and stderr output of a process in real time
|
|
253
|
+
* Streams the stdout and stderr output of a process in real time: the output so far, then live output as the process writes it. Closes when the process exits or the client disconnects.
|
|
254
|
+
* By default, output is plain text with `stdout:` or `stderr:` prefixes at the start of each source stream's lines. Partial lines (e.g. prompts) are sent without waiting for a newline; their continuations have no new prefix. The other stream is not held back while a line is incomplete, and chronological order across stdout and stderr is not guaranteed.
|
|
255
|
+
* This format does not provide unambiguous framing: output from the other stream, or a `[keepalive]` marker sent every 30 seconds, can appear inside an unfinished line. A later continuation can therefore lack a prefix identifying its source. Do not rely on this text stream to reconstruct stdout and stderr separately; request NDJSON for source-preserving streaming, or use GET /process/{identifier}/logs for separate output snapshots.
|
|
256
|
+
* With `Accept: application/x-ndjson`, each line is a JSON object with `type` (`stdout`, `stderr`, `keepalive`, `restart`, `truncated`, or `error`) and optional `data`. Output records retain source identity and original bytes, including partial lines and newlines, for both retained history and live output. For `encoding: "base64"`, decode `data` before concatenating bytes per source; this occurs for binary data or a UTF-8 character split across chunks. Chunk boundaries are arbitrary and ordering is collection order, not a strict chronology across streams.
|
|
257
|
+
* `keepalive` has no output data. A quiet active stream sends an initial keepalive after attachment so clients can receive the response before sending stdin; subsequent keepalives are sent every 30 seconds. `restart` carries a supervisor restart notice, not process output. `truncated` reports a retention or slow-reader gap and must not be appended to stdout/stderr. `error` reports a streaming failure. The connection ends after the final process exit, including automatic restarts; there is no `result` record. Older processes without structured history return HTTP 409 for NDJSON; their text stream remains available.
|
|
240
258
|
*/
|
|
241
259
|
export declare const getProcessByIdentifierLogsStream: <ThrowOnError extends boolean = false>(options: Options<GetProcessByIdentifierLogsStreamData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<string, import("./types.gen").ErrorResponse, ThrowOnError>;
|
|
242
260
|
/**
|
|
@@ -260,6 +278,9 @@ export declare const postProcessByIdentifierStdin: <ThrowOnError extends boolean
|
|
|
260
278
|
export declare const postUpgrade: <ThrowOnError extends boolean = false>(options?: Options<PostUpgradeData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").SuccessResponse, import("./types.gen").ErrorResponse, ThrowOnError>;
|
|
261
279
|
/**
|
|
262
280
|
* Stream file modification events in a directory
|
|
263
|
-
* Streams
|
|
281
|
+
* Streams change events for a directory until the client disconnects.
|
|
282
|
+
*
|
|
283
|
+
* The body is JSON lines (sent with `Content-Type: text/plain`): one event object per line, e.g. `{"op":"WRITE","name":"main.go","path":"/app/src","error":null}`. `op` is the fsnotify operation (CREATE, WRITE, REMOVE, RENAME or CHMOD, several can be joined with `|`), `name` the base name of the changed entry, `path` the directory containing it, and `error` is always null. A `[keepalive]` line (not JSON) is sent every 30 seconds.
|
|
284
|
+
* Only the directory's direct entries are watched. To also watch every subdirectory, including ones created later, end the path with `**`. The stream reports subsequent changes without an initial snapshot. When a new directory is detected, synthetic CREATE events are emitted for entries already present inside it to cover changes before its watch was registered.
|
|
264
285
|
*/
|
|
265
286
|
export declare const getWatchFilesystemByPath: <ThrowOnError extends boolean = false>(options: Options<GetWatchFilesystemByPathData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<string, import("./types.gen").ErrorResponse, ThrowOnError>;
|