@rivet-dev/agentos-runtime-core 0.0.0-glibc.4af31c1
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/README.md +7 -0
- package/commands/[ +0 -0
- package/commands/_stubs +0 -0
- package/commands/arch +0 -0
- package/commands/awk +0 -0
- package/commands/b2sum +0 -0
- package/commands/base32 +0 -0
- package/commands/base64 +0 -0
- package/commands/basename +0 -0
- package/commands/basenc +0 -0
- package/commands/bash +0 -0
- package/commands/cat +0 -0
- package/commands/chcon +0 -0
- package/commands/chgrp +0 -0
- package/commands/chmod +0 -0
- package/commands/chown +0 -0
- package/commands/chroot +0 -0
- package/commands/cksum +0 -0
- package/commands/codex +0 -0
- package/commands/codex-exec +0 -0
- package/commands/column +0 -0
- package/commands/comm +0 -0
- package/commands/cp +0 -0
- package/commands/curl +0 -0
- package/commands/cut +0 -0
- package/commands/date +0 -0
- package/commands/dd +0 -0
- package/commands/df +0 -0
- package/commands/diff +0 -0
- package/commands/dir +0 -0
- package/commands/dircolors +0 -0
- package/commands/dirname +0 -0
- package/commands/du +0 -0
- package/commands/echo +0 -0
- package/commands/egrep +0 -0
- package/commands/env +0 -0
- package/commands/envsubst +0 -0
- package/commands/expand +0 -0
- package/commands/expr +0 -0
- package/commands/factor +0 -0
- package/commands/false +0 -0
- package/commands/fd +0 -0
- package/commands/fgrep +0 -0
- package/commands/file +0 -0
- package/commands/find +0 -0
- package/commands/fmt +0 -0
- package/commands/fold +0 -0
- package/commands/git +0 -0
- package/commands/git-remote-http +0 -0
- package/commands/git-remote-https +0 -0
- package/commands/grep +0 -0
- package/commands/groups +0 -0
- package/commands/gunzip +0 -0
- package/commands/gzip +0 -0
- package/commands/head +0 -0
- package/commands/hostid +0 -0
- package/commands/hostname +0 -0
- package/commands/http-test +0 -0
- package/commands/http_get +0 -0
- package/commands/id +0 -0
- package/commands/install +0 -0
- package/commands/join +0 -0
- package/commands/jq +0 -0
- package/commands/kill +0 -0
- package/commands/link +0 -0
- package/commands/ln +0 -0
- package/commands/logname +0 -0
- package/commands/ls +0 -0
- package/commands/md5sum +0 -0
- package/commands/mkdir +0 -0
- package/commands/mkfifo +0 -0
- package/commands/mknod +0 -0
- package/commands/mktemp +0 -0
- package/commands/more +0 -0
- package/commands/mv +0 -0
- package/commands/nice +0 -0
- package/commands/nl +0 -0
- package/commands/nohup +0 -0
- package/commands/nproc +0 -0
- package/commands/numfmt +0 -0
- package/commands/od +0 -0
- package/commands/paste +0 -0
- package/commands/pathchk +0 -0
- package/commands/pinky +0 -0
- package/commands/printenv +0 -0
- package/commands/printf +0 -0
- package/commands/ptx +0 -0
- package/commands/pwd +0 -0
- package/commands/readlink +0 -0
- package/commands/realpath +0 -0
- package/commands/rev +0 -0
- package/commands/rg +0 -0
- package/commands/rm +0 -0
- package/commands/rmdir +0 -0
- package/commands/runcon +0 -0
- package/commands/sed +0 -0
- package/commands/seq +0 -0
- package/commands/sh +0 -0
- package/commands/sha1sum +0 -0
- package/commands/sha224sum +0 -0
- package/commands/sha256sum +0 -0
- package/commands/sha384sum +0 -0
- package/commands/sha512sum +0 -0
- package/commands/shred +0 -0
- package/commands/shuf +0 -0
- package/commands/sleep +0 -0
- package/commands/sort +0 -0
- package/commands/spawn-test-host +0 -0
- package/commands/split +0 -0
- package/commands/sqlite3 +0 -0
- package/commands/stat +0 -0
- package/commands/stdbuf +0 -0
- package/commands/strings +0 -0
- package/commands/stty +0 -0
- package/commands/sum +0 -0
- package/commands/sync +0 -0
- package/commands/tac +0 -0
- package/commands/tail +0 -0
- package/commands/tar +0 -0
- package/commands/tee +0 -0
- package/commands/test +0 -0
- package/commands/timeout +0 -0
- package/commands/touch +0 -0
- package/commands/tr +0 -0
- package/commands/tree +0 -0
- package/commands/true +0 -0
- package/commands/truncate +0 -0
- package/commands/tsort +0 -0
- package/commands/tty +0 -0
- package/commands/uname +0 -0
- package/commands/unexpand +0 -0
- package/commands/uniq +0 -0
- package/commands/unlink +0 -0
- package/commands/unzip +0 -0
- package/commands/uptime +0 -0
- package/commands/users +0 -0
- package/commands/vdir +0 -0
- package/commands/wc +0 -0
- package/commands/which +0 -0
- package/commands/who +0 -0
- package/commands/whoami +0 -0
- package/commands/xargs +0 -0
- package/commands/xu +0 -0
- package/commands/yes +0 -0
- package/commands/yq +0 -0
- package/commands/zcat +0 -0
- package/commands/zip +0 -0
- package/dist/binary.d.ts +4 -0
- package/dist/binary.js +25 -0
- package/dist/bytes.d.ts +2 -0
- package/dist/bytes.js +6 -0
- package/dist/callbacks.d.ts +41 -0
- package/dist/callbacks.js +94 -0
- package/dist/cargo.d.ts +2 -0
- package/dist/cargo.js +142 -0
- package/dist/correlation.d.ts +10 -0
- package/dist/correlation.js +49 -0
- package/dist/descriptors.d.ts +84 -0
- package/dist/descriptors.js +60 -0
- package/dist/event-buffer.d.ts +90 -0
- package/dist/event-buffer.js +313 -0
- package/dist/ext.d.ts +7 -0
- package/dist/ext.js +13 -0
- package/dist/filesystem.d.ts +41 -0
- package/dist/filesystem.js +70 -0
- package/dist/frame-payload-codec.d.ts +8 -0
- package/dist/frame-payload-codec.js +14 -0
- package/dist/frame-rpc.d.ts +40 -0
- package/dist/frame-rpc.js +81 -0
- package/dist/frame-stream.d.ts +34 -0
- package/dist/frame-stream.js +109 -0
- package/dist/framing.d.ts +8 -0
- package/dist/framing.js +23 -0
- package/dist/generated/AcpLimitsConfig.d.ts +4 -0
- package/dist/generated/AcpLimitsConfig.js +2 -0
- package/dist/generated/CreateVmConfig.d.ts +26 -0
- package/dist/generated/CreateVmConfig.js +1 -0
- package/dist/generated/FsPermissionRule.d.ts +6 -0
- package/dist/generated/FsPermissionRule.js +1 -0
- package/dist/generated/FsPermissionRuleSet.d.ts +6 -0
- package/dist/generated/FsPermissionRuleSet.js +1 -0
- package/dist/generated/FsPermissionScope.d.ts +3 -0
- package/dist/generated/FsPermissionScope.js +1 -0
- package/dist/generated/HttpLimitsConfig.d.ts +3 -0
- package/dist/generated/HttpLimitsConfig.js +2 -0
- package/dist/generated/JsModuleResolution.d.ts +1 -0
- package/dist/generated/JsModuleResolution.js +2 -0
- package/dist/generated/JsRuntimeConfig.d.ts +31 -0
- package/dist/generated/JsRuntimeConfig.js +1 -0
- package/dist/generated/JsRuntimeLimitsConfig.d.ts +11 -0
- package/dist/generated/JsRuntimeLimitsConfig.js +2 -0
- package/dist/generated/JsRuntimePlatform.d.ts +1 -0
- package/dist/generated/JsRuntimePlatform.js +2 -0
- package/dist/generated/MountPluginDescriptor.d.ts +4 -0
- package/dist/generated/MountPluginDescriptor.js +2 -0
- package/dist/generated/NativeRootFilesystemConfig.d.ts +5 -0
- package/dist/generated/NativeRootFilesystemConfig.js +1 -0
- package/dist/generated/PatternPermissionRule.d.ts +6 -0
- package/dist/generated/PatternPermissionRule.js +1 -0
- package/dist/generated/PatternPermissionRuleSet.d.ts +6 -0
- package/dist/generated/PatternPermissionRuleSet.js +1 -0
- package/dist/generated/PatternPermissionScope.d.ts +3 -0
- package/dist/generated/PatternPermissionScope.js +1 -0
- package/dist/generated/PermissionMode.d.ts +1 -0
- package/dist/generated/PermissionMode.js +2 -0
- package/dist/generated/PermissionsPolicy.d.ts +10 -0
- package/dist/generated/PermissionsPolicy.js +1 -0
- package/dist/generated/PluginLimitsConfig.d.ts +4 -0
- package/dist/generated/PluginLimitsConfig.js +2 -0
- package/dist/generated/PythonLimitsConfig.d.ts +6 -0
- package/dist/generated/PythonLimitsConfig.js +2 -0
- package/dist/generated/ResourceLimitsConfig.d.ts +24 -0
- package/dist/generated/ResourceLimitsConfig.js +2 -0
- package/dist/generated/RootFilesystemConfig.d.ts +9 -0
- package/dist/generated/RootFilesystemConfig.js +1 -0
- package/dist/generated/RootFilesystemEntry.d.ts +13 -0
- package/dist/generated/RootFilesystemEntry.js +1 -0
- package/dist/generated/RootFilesystemEntryEncoding.d.ts +1 -0
- package/dist/generated/RootFilesystemEntryEncoding.js +2 -0
- package/dist/generated/RootFilesystemEntryKind.d.ts +1 -0
- package/dist/generated/RootFilesystemEntryKind.js +2 -0
- package/dist/generated/RootFilesystemLowerDescriptor.d.ts +7 -0
- package/dist/generated/RootFilesystemLowerDescriptor.js +1 -0
- package/dist/generated/RootFilesystemMode.d.ts +1 -0
- package/dist/generated/RootFilesystemMode.js +2 -0
- package/dist/generated/ToolLimitsConfig.d.ts +10 -0
- package/dist/generated/ToolLimitsConfig.js +2 -0
- package/dist/generated/VmDnsConfig.d.ts +6 -0
- package/dist/generated/VmDnsConfig.js +2 -0
- package/dist/generated/VmLimitsConfig.d.ts +18 -0
- package/dist/generated/VmLimitsConfig.js +1 -0
- package/dist/generated/VmListenPolicyConfig.d.ts +5 -0
- package/dist/generated/VmListenPolicyConfig.js +2 -0
- package/dist/generated/WasmLimitsConfig.d.ts +7 -0
- package/dist/generated/WasmLimitsConfig.js +2 -0
- package/dist/generated-protocol.d.ts +1196 -0
- package/dist/generated-protocol.js +3286 -0
- package/dist/index.d.ts +29 -0
- package/dist/index.js +28 -0
- package/dist/json.d.ts +2 -0
- package/dist/json.js +20 -0
- package/dist/kernel-proxy.d.ts +166 -0
- package/dist/kernel-proxy.js +1777 -0
- package/dist/native-client.d.ts +42 -0
- package/dist/native-client.js +126 -0
- package/dist/node-runtime-options-schema.d.ts +117 -0
- package/dist/node-runtime-options-schema.js +121 -0
- package/dist/node-runtime.d.ts +593 -0
- package/dist/node-runtime.js +914 -0
- package/dist/numbers.d.ts +1 -0
- package/dist/numbers.js +8 -0
- package/dist/ownership.d.ts +18 -0
- package/dist/ownership.js +77 -0
- package/dist/permissions.d.ts +29 -0
- package/dist/permissions.js +68 -0
- package/dist/process.d.ts +22 -0
- package/dist/process.js +97 -0
- package/dist/protocol-client.d.ts +48 -0
- package/dist/protocol-client.js +181 -0
- package/dist/protocol-frames.d.ts +68 -0
- package/dist/protocol-frames.js +139 -0
- package/dist/protocol-maps.d.ts +31 -0
- package/dist/protocol-maps.js +273 -0
- package/dist/protocol-schema.d.ts +10 -0
- package/dist/protocol-schema.js +11 -0
- package/dist/request-payloads.d.ts +171 -0
- package/dist/request-payloads.js +269 -0
- package/dist/response-payloads.d.ts +186 -0
- package/dist/response-payloads.js +250 -0
- package/dist/sidecar-client.d.ts +17 -0
- package/dist/sidecar-client.js +1 -0
- package/dist/sidecar-errors.d.ts +15 -0
- package/dist/sidecar-errors.js +30 -0
- package/dist/sidecar-process.d.ts +356 -0
- package/dist/sidecar-process.js +1008 -0
- package/dist/state.d.ts +40 -0
- package/dist/state.js +44 -0
- package/dist/test-runtime.d.ts +563 -0
- package/dist/test-runtime.js +2171 -0
- package/dist/vm-config.d.ts +31 -0
- package/dist/vm-config.js +1 -0
- package/package.json +204 -0
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { encodeLengthPrefixedPayload, tryDecodeLengthPrefixedPayload, } from "./framing.js";
|
|
2
|
+
export class StdioFrameTransport {
|
|
3
|
+
stdin;
|
|
4
|
+
stdout;
|
|
5
|
+
encodeFrame;
|
|
6
|
+
decodeFrame;
|
|
7
|
+
frameListeners = new Set();
|
|
8
|
+
errorListeners = new Set();
|
|
9
|
+
endListeners = new Set();
|
|
10
|
+
stdoutBuffer = new Uint8Array(0);
|
|
11
|
+
constructor(options) {
|
|
12
|
+
this.stdin = options.stdin;
|
|
13
|
+
this.stdout = options.stdout;
|
|
14
|
+
this.encodeFrame = options.encodeFrame;
|
|
15
|
+
this.decodeFrame = options.decodeFrame;
|
|
16
|
+
this.stdout.on("data", this.handleData);
|
|
17
|
+
this.stdout.on("end", this.handleEnd);
|
|
18
|
+
this.stdout.on("error", this.handleError);
|
|
19
|
+
}
|
|
20
|
+
onFrame(handler) {
|
|
21
|
+
this.frameListeners.add(handler);
|
|
22
|
+
return () => {
|
|
23
|
+
this.frameListeners.delete(handler);
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
onError(handler) {
|
|
27
|
+
this.errorListeners.add(handler);
|
|
28
|
+
return () => {
|
|
29
|
+
this.errorListeners.delete(handler);
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
onEnd(handler) {
|
|
33
|
+
this.endListeners.add(handler);
|
|
34
|
+
return () => {
|
|
35
|
+
this.endListeners.delete(handler);
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
async writeFrame(frame) {
|
|
39
|
+
const payload = this.encodeFrame(frame);
|
|
40
|
+
const encoded = encodeLengthPrefixedPayload(payload);
|
|
41
|
+
await new Promise((resolve, reject) => {
|
|
42
|
+
this.stdin.write(encoded, (error) => {
|
|
43
|
+
if (error) {
|
|
44
|
+
reject(error);
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
resolve();
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
dispose() {
|
|
52
|
+
this.stdout.off("data", this.handleData);
|
|
53
|
+
this.stdout.off("end", this.handleEnd);
|
|
54
|
+
this.stdout.off("error", this.handleError);
|
|
55
|
+
this.frameListeners.clear();
|
|
56
|
+
this.errorListeners.clear();
|
|
57
|
+
this.endListeners.clear();
|
|
58
|
+
}
|
|
59
|
+
handleData = (chunk) => {
|
|
60
|
+
const bytes = typeof chunk === "string"
|
|
61
|
+
? new TextEncoder().encode(chunk)
|
|
62
|
+
: new Uint8Array(chunk.buffer, chunk.byteOffset, chunk.byteLength);
|
|
63
|
+
this.stdoutBuffer = concatBytes(this.stdoutBuffer, bytes);
|
|
64
|
+
this.drainFrames();
|
|
65
|
+
};
|
|
66
|
+
handleEnd = () => {
|
|
67
|
+
for (const listener of this.endListeners) {
|
|
68
|
+
listener();
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
handleError = (error) => {
|
|
72
|
+
const normalized = error instanceof Error ? error : new Error(String(error));
|
|
73
|
+
for (const listener of this.errorListeners) {
|
|
74
|
+
listener(normalized);
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
drainFrames() {
|
|
78
|
+
for (;;) {
|
|
79
|
+
const decoded = tryDecodeLengthPrefixedPayload(this.stdoutBuffer);
|
|
80
|
+
if (!decoded) {
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
this.stdoutBuffer = decoded.remaining;
|
|
84
|
+
let frame;
|
|
85
|
+
try {
|
|
86
|
+
frame = this.decodeFrame(decoded.payload);
|
|
87
|
+
}
|
|
88
|
+
catch (error) {
|
|
89
|
+
this.handleError(error);
|
|
90
|
+
continue;
|
|
91
|
+
}
|
|
92
|
+
for (const listener of this.frameListeners) {
|
|
93
|
+
listener(frame);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
function concatBytes(left, right) {
|
|
99
|
+
if (left.length === 0) {
|
|
100
|
+
return right;
|
|
101
|
+
}
|
|
102
|
+
if (right.length === 0) {
|
|
103
|
+
return left;
|
|
104
|
+
}
|
|
105
|
+
const combined = new Uint8Array(left.length + right.length);
|
|
106
|
+
combined.set(left);
|
|
107
|
+
combined.set(right, left.length);
|
|
108
|
+
return combined;
|
|
109
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const LENGTH_PREFIX_BYTES = 4;
|
|
2
|
+
export type ByteArray = Uint8Array<ArrayBufferLike>;
|
|
3
|
+
export interface LengthPrefixedPayload {
|
|
4
|
+
payload: ByteArray;
|
|
5
|
+
remaining: ByteArray;
|
|
6
|
+
}
|
|
7
|
+
export declare function encodeLengthPrefixedPayload(payload: Uint8Array): Uint8Array;
|
|
8
|
+
export declare function tryDecodeLengthPrefixedPayload(buffer: ByteArray): LengthPrefixedPayload | null;
|
package/dist/framing.js
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export const LENGTH_PREFIX_BYTES = 4;
|
|
2
|
+
export function encodeLengthPrefixedPayload(payload) {
|
|
3
|
+
const encoded = new Uint8Array(LENGTH_PREFIX_BYTES + payload.length);
|
|
4
|
+
const view = new DataView(encoded.buffer, encoded.byteOffset, encoded.byteLength);
|
|
5
|
+
view.setUint32(0, payload.length, false);
|
|
6
|
+
encoded.set(payload, LENGTH_PREFIX_BYTES);
|
|
7
|
+
return encoded;
|
|
8
|
+
}
|
|
9
|
+
export function tryDecodeLengthPrefixedPayload(buffer) {
|
|
10
|
+
if (buffer.length < LENGTH_PREFIX_BYTES) {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
const view = new DataView(buffer.buffer, buffer.byteOffset, buffer.byteLength);
|
|
14
|
+
const declaredLength = view.getUint32(0, false);
|
|
15
|
+
const frameEnd = LENGTH_PREFIX_BYTES + declaredLength;
|
|
16
|
+
if (buffer.length < frameEnd) {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
return {
|
|
20
|
+
payload: buffer.subarray(LENGTH_PREFIX_BYTES, frameEnd),
|
|
21
|
+
remaining: buffer.subarray(frameEnd),
|
|
22
|
+
};
|
|
23
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { JsRuntimeConfig } from "./JsRuntimeConfig.js";
|
|
2
|
+
import type { NativeRootFilesystemConfig } from "./NativeRootFilesystemConfig.js";
|
|
3
|
+
import type { PermissionsPolicy } from "./PermissionsPolicy.js";
|
|
4
|
+
import type { RootFilesystemConfig } from "./RootFilesystemConfig.js";
|
|
5
|
+
import type { VmDnsConfig } from "./VmDnsConfig.js";
|
|
6
|
+
import type { VmLimitsConfig } from "./VmLimitsConfig.js";
|
|
7
|
+
import type { VmListenPolicyConfig } from "./VmListenPolicyConfig.js";
|
|
8
|
+
/**
|
|
9
|
+
* Canonical Rust-side VM config. Unknown fields must stay rejected here and in
|
|
10
|
+
* the TS preflight schema at
|
|
11
|
+
* `packages/core/src/node-runtime-options-schema.ts`; update both when a
|
|
12
|
+
* public `NodeRuntime.create(...)` option changes the generated VM config.
|
|
13
|
+
*/
|
|
14
|
+
export type CreateVmConfig = {
|
|
15
|
+
cwd?: string;
|
|
16
|
+
env: Record<string, string>;
|
|
17
|
+
rootFilesystem: RootFilesystemConfig;
|
|
18
|
+
permissions?: PermissionsPolicy;
|
|
19
|
+
limits?: VmLimitsConfig;
|
|
20
|
+
dns?: VmDnsConfig;
|
|
21
|
+
nativeRoot?: NativeRootFilesystemConfig;
|
|
22
|
+
listen?: VmListenPolicyConfig;
|
|
23
|
+
loopbackExemptPorts: Array<number>;
|
|
24
|
+
jsRuntime?: JsRuntimeConfig;
|
|
25
|
+
bootstrapCommands?: Array<string>;
|
|
26
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type JsModuleResolution = "node" | "relative" | "none";
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { JsModuleResolution } from "./JsModuleResolution.js";
|
|
2
|
+
import type { JsRuntimePlatform } from "./JsRuntimePlatform.js";
|
|
3
|
+
/**
|
|
4
|
+
* Guest JavaScript host-environment configuration.
|
|
5
|
+
*
|
|
6
|
+
* Selects which globals/builtins/module-resolution surface guest JS sees,
|
|
7
|
+
* modeled on esbuild's `platform`. Omitting this preserves full Node.js
|
|
8
|
+
* emulation (`platform = node`).
|
|
9
|
+
*/
|
|
10
|
+
export type JsRuntimeConfig = {
|
|
11
|
+
/**
|
|
12
|
+
* Which host environment to emulate for guest JS. Default `node`.
|
|
13
|
+
*/
|
|
14
|
+
platform: JsRuntimePlatform;
|
|
15
|
+
/**
|
|
16
|
+
* How bare import specifiers resolve. Independent of `platform`.
|
|
17
|
+
* Default `node`.
|
|
18
|
+
*/
|
|
19
|
+
moduleResolution: JsModuleResolution;
|
|
20
|
+
/**
|
|
21
|
+
* Node builtin-module allow-list. Only valid when `platform = node`.
|
|
22
|
+
* `None` => engine default allow-list. `Some([])` => deny all builtins.
|
|
23
|
+
* `Some([..])` => exactly those.
|
|
24
|
+
*/
|
|
25
|
+
allowedBuiltins?: Array<string>;
|
|
26
|
+
/**
|
|
27
|
+
* Opt in to a high-resolution monotonic guest clock. Default false keeps
|
|
28
|
+
* the security-oriented 1ms timer resolution.
|
|
29
|
+
*/
|
|
30
|
+
highResolutionTime?: boolean;
|
|
31
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export type JsRuntimeLimitsConfig = {
|
|
2
|
+
v8HeapLimitMb?: number;
|
|
3
|
+
syncRpcWaitTimeoutMs?: number;
|
|
4
|
+
cpuTimeLimitMs?: number;
|
|
5
|
+
wallClockLimitMs?: number;
|
|
6
|
+
importCacheMaterializeTimeoutMs?: number;
|
|
7
|
+
capturedOutputLimitBytes?: number;
|
|
8
|
+
stdinBufferLimitBytes?: number;
|
|
9
|
+
eventPayloadLimitBytes?: number;
|
|
10
|
+
v8IpcMaxFrameBytes?: number;
|
|
11
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type JsRuntimePlatform = "node" | "browser" | "neutral" | "bare";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type PermissionMode = "allow" | "ask" | "deny";
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { FsPermissionScope } from "./FsPermissionScope.js";
|
|
2
|
+
import type { PatternPermissionScope } from "./PatternPermissionScope.js";
|
|
3
|
+
export type PermissionsPolicy = {
|
|
4
|
+
fs?: FsPermissionScope;
|
|
5
|
+
network?: PatternPermissionScope;
|
|
6
|
+
childProcess?: PatternPermissionScope;
|
|
7
|
+
process?: PatternPermissionScope;
|
|
8
|
+
env?: PatternPermissionScope;
|
|
9
|
+
binding?: PatternPermissionScope;
|
|
10
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export type ResourceLimitsConfig = {
|
|
2
|
+
cpuCount?: number;
|
|
3
|
+
maxProcesses?: number;
|
|
4
|
+
maxOpenFds?: number;
|
|
5
|
+
maxPipes?: number;
|
|
6
|
+
maxPtys?: number;
|
|
7
|
+
maxSockets?: number;
|
|
8
|
+
maxConnections?: number;
|
|
9
|
+
maxSocketBufferedBytes?: number;
|
|
10
|
+
maxSocketDatagramQueueLen?: number;
|
|
11
|
+
maxFilesystemBytes?: number;
|
|
12
|
+
maxInodeCount?: number;
|
|
13
|
+
maxBlockingReadMs?: number;
|
|
14
|
+
maxPreadBytes?: number;
|
|
15
|
+
maxFdWriteBytes?: number;
|
|
16
|
+
maxProcessArgvBytes?: number;
|
|
17
|
+
maxProcessEnvBytes?: number;
|
|
18
|
+
maxReaddirEntries?: number;
|
|
19
|
+
maxRecursiveFsDepth?: number;
|
|
20
|
+
maxRecursiveFsEntries?: number;
|
|
21
|
+
maxWasmFuel?: number;
|
|
22
|
+
maxWasmMemoryBytes?: number;
|
|
23
|
+
maxWasmStackBytes?: number;
|
|
24
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { RootFilesystemEntry } from "./RootFilesystemEntry.js";
|
|
2
|
+
import type { RootFilesystemLowerDescriptor } from "./RootFilesystemLowerDescriptor.js";
|
|
3
|
+
import type { RootFilesystemMode } from "./RootFilesystemMode.js";
|
|
4
|
+
export type RootFilesystemConfig = {
|
|
5
|
+
mode: RootFilesystemMode;
|
|
6
|
+
disableDefaultBaseLayer: boolean;
|
|
7
|
+
lowers: Array<RootFilesystemLowerDescriptor>;
|
|
8
|
+
bootstrapEntries: Array<RootFilesystemEntry>;
|
|
9
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { RootFilesystemEntryEncoding } from "./RootFilesystemEntryEncoding.js";
|
|
2
|
+
import type { RootFilesystemEntryKind } from "./RootFilesystemEntryKind.js";
|
|
3
|
+
export type RootFilesystemEntry = {
|
|
4
|
+
path: string;
|
|
5
|
+
kind: RootFilesystemEntryKind;
|
|
6
|
+
mode?: number;
|
|
7
|
+
uid?: number;
|
|
8
|
+
gid?: number;
|
|
9
|
+
content?: string;
|
|
10
|
+
encoding?: RootFilesystemEntryEncoding;
|
|
11
|
+
target?: string;
|
|
12
|
+
executable: boolean;
|
|
13
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type RootFilesystemEntryEncoding = "utf8" | "base64";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type RootFilesystemEntryKind = "file" | "directory" | "symlink";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type RootFilesystemMode = "ephemeral" | "read-only";
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export type ToolLimitsConfig = {
|
|
2
|
+
defaultToolTimeoutMs?: number;
|
|
3
|
+
maxToolTimeoutMs?: number;
|
|
4
|
+
maxRegisteredToolkits?: number;
|
|
5
|
+
maxRegisteredToolsPerVm?: number;
|
|
6
|
+
maxToolsPerToolkit?: number;
|
|
7
|
+
maxToolSchemaBytes?: number;
|
|
8
|
+
maxToolExamplesPerTool?: number;
|
|
9
|
+
maxToolExampleInputBytes?: number;
|
|
10
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { AcpLimitsConfig } from "./AcpLimitsConfig.js";
|
|
2
|
+
import type { HttpLimitsConfig } from "./HttpLimitsConfig.js";
|
|
3
|
+
import type { JsRuntimeLimitsConfig } from "./JsRuntimeLimitsConfig.js";
|
|
4
|
+
import type { PluginLimitsConfig } from "./PluginLimitsConfig.js";
|
|
5
|
+
import type { PythonLimitsConfig } from "./PythonLimitsConfig.js";
|
|
6
|
+
import type { ResourceLimitsConfig } from "./ResourceLimitsConfig.js";
|
|
7
|
+
import type { ToolLimitsConfig } from "./ToolLimitsConfig.js";
|
|
8
|
+
import type { WasmLimitsConfig } from "./WasmLimitsConfig.js";
|
|
9
|
+
export type VmLimitsConfig = {
|
|
10
|
+
resources?: ResourceLimitsConfig;
|
|
11
|
+
http?: HttpLimitsConfig;
|
|
12
|
+
tools?: ToolLimitsConfig;
|
|
13
|
+
plugins?: PluginLimitsConfig;
|
|
14
|
+
acp?: AcpLimitsConfig;
|
|
15
|
+
jsRuntime?: JsRuntimeLimitsConfig;
|
|
16
|
+
python?: PythonLimitsConfig;
|
|
17
|
+
wasm?: WasmLimitsConfig;
|
|
18
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|