@mcploom/codexec-isolated-vm 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +22 -5
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,6 +1,25 @@
|
|
|
1
1
|
# @mcploom/codexec-isolated-vm
|
|
2
2
|
|
|
3
|
-
`isolated-vm` executor
|
|
3
|
+
`isolated-vm` executor backend for `@mcploom/codexec`.
|
|
4
|
+
|
|
5
|
+
[](https://www.npmjs.com/package/@mcploom/codexec-isolated-vm)
|
|
6
|
+
[](https://github.com/aallam/mcploom/blob/main/LICENSE)
|
|
7
|
+
[](https://github.com/aallam/mcploom/tree/main/examples)
|
|
8
|
+
[](https://github.com/aallam/mcploom/actions/workflows/ci.yml)
|
|
9
|
+
|
|
10
|
+
## Choose `isolated-vm` When
|
|
11
|
+
|
|
12
|
+
- you explicitly want the `isolated-vm` runtime instead of QuickJS
|
|
13
|
+
- your environment can support the native addon install
|
|
14
|
+
- you are prepared to run Node 20+ with `--no-node-snapshot`
|
|
15
|
+
|
|
16
|
+
If you want the simpler default backend, use [`@mcploom/codexec-quickjs`](https://www.npmjs.com/package/@mcploom/codexec-quickjs) instead.
|
|
17
|
+
|
|
18
|
+
## Examples
|
|
19
|
+
|
|
20
|
+
- [Basic provider execution on `isolated-vm`](https://github.com/aallam/mcploom/blob/main/examples/codexec-isolated-vm-basic.ts)
|
|
21
|
+
- [QuickJS-based codexec examples for the shared API surface](https://github.com/aallam/mcploom/blob/main/examples/codexec-basic.ts)
|
|
22
|
+
- [Full examples index](https://github.com/aallam/mcploom/tree/main/examples)
|
|
4
23
|
|
|
5
24
|
## Install
|
|
6
25
|
|
|
@@ -8,13 +27,11 @@
|
|
|
8
27
|
npm install @mcploom/codexec @mcploom/codexec-isolated-vm
|
|
9
28
|
```
|
|
10
29
|
|
|
11
|
-
It implements the shared `Executor` contract from `@mcploom/codexec`, so it can be used anywhere the QuickJS package can be used.
|
|
12
|
-
|
|
13
30
|
## Requirements
|
|
14
31
|
|
|
15
32
|
- Node 20+ must run with `--no-node-snapshot`
|
|
16
33
|
- the optional `isolated-vm` native dependency must install successfully in the host environment
|
|
17
|
-
- native-addon failures are surfaced
|
|
34
|
+
- native-addon failures are surfaced when `IsolatedVmExecutor` is constructed or used
|
|
18
35
|
|
|
19
36
|
## Usage
|
|
20
37
|
|
|
@@ -42,4 +59,4 @@ This package is verified through the opt-in workspace flow:
|
|
|
42
59
|
npm run verify:isolated-vm
|
|
43
60
|
```
|
|
44
61
|
|
|
45
|
-
`isolated-vm` is not documented here as a hard security boundary. If
|
|
62
|
+
`isolated-vm` is not documented here as a hard security boundary. If process stability matters more than in-process performance, prefer process isolation around the executor.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mcploom/codexec-isolated-vm",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "isolated-vm executor for the mcploom codexec core package.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"homepage": "https://github.com/aallam/mcploom/tree/main/packages/codexec-isolated-vm#readme",
|
|
42
42
|
"bugs": "https://github.com/aallam/mcploom/issues",
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@mcploom/codexec": "^0.
|
|
44
|
+
"@mcploom/codexec": "^0.2.0"
|
|
45
45
|
},
|
|
46
46
|
"optionalDependencies": {
|
|
47
47
|
"isolated-vm": "^6.0.1"
|