@mcploom/codexec-isolated-vm 0.1.0 → 0.1.2

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.
Files changed (2) hide show
  1. package/README.md +29 -5
  2. 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 package for `@mcploom/codexec`.
3
+ `isolated-vm` executor backend for `@mcploom/codexec`.
4
+
5
+ [![npm version](https://img.shields.io/npm/v/%40mcploom%2Fcodexec--isolated--vm?style=flat-square)](https://www.npmjs.com/package/@mcploom/codexec-isolated-vm)
6
+ [![License](https://img.shields.io/github/license/aallam/mcploom?style=flat-square)](https://github.com/aallam/mcploom/blob/main/LICENSE)
7
+ [![Examples](https://img.shields.io/badge/examples-codexec-0ea5e9?style=flat-square)](https://github.com/aallam/mcploom/tree/main/examples)
8
+ [![CI](https://img.shields.io/github/actions/workflow/status/aallam/mcploom/ci.yml?branch=main&style=flat-square&label=CI)](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,18 @@
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 only when `IsolatedVmExecutor` is used
34
+ - native-addon failures are surfaced when `IsolatedVmExecutor` is constructed or used
35
+
36
+ ## Security Notes
37
+
38
+ - Each execution gets a fresh `isolated-vm` context with JSON-only tool and result boundaries.
39
+ - The default threat model assumes provider definitions are controlled by the host application; hostile users control guest code and tool inputs.
40
+ - This package is still in-process execution. It should not be marketed or relied on as a hard security boundary for hostile code.
41
+ - Providers remain the real capability boundary. If a tool is dangerous, guest code can invoke it.
18
42
 
19
43
  ## Usage
20
44
 
@@ -42,4 +66,4 @@ This package is verified through the opt-in workspace flow:
42
66
  npm run verify:isolated-vm
43
67
  ```
44
68
 
45
- `isolated-vm` is not documented here as a hard security boundary. If the workload is hostile or process stability matters more than in-process performance, prefer process isolation around the executor.
69
+ `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.0",
3
+ "version": "0.1.2",
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.1.0"
44
+ "@mcploom/codexec": "^0.2.1"
45
45
  },
46
46
  "optionalDependencies": {
47
47
  "isolated-vm": "^6.0.1"