Skip to content

Commit 8d95468

Browse files
authored
Merge pull request #34 from hyperlight-dev/fix/readme-docs
docs: update README security claims and CLI options
2 parents 5cbe18f + a96e453 commit 8d95468

1 file changed

Lines changed: 21 additions & 9 deletions

File tree

README.md

Lines changed: 21 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ This project enables running Linux applications (Python, Node.js, Go, Rust, C/C+
4949

5050
### Key Features
5151

52-
- **No host function calls** - The Unikraft kernel runs entirely within the VM
52+
- **Thin, opt-in host surface** — by default, the guest has no access to the host filesystem, network, or any host functions. When you enable features like `--mount`, `--net`, or `--enable-tools`, a single `__dispatch` JSON-RPC bridge is registered as the only guest→host channel. See [HOST_FUNCTIONS.md](HOST_FUNCTIONS.md) for the full list of dispatchable operations
5353
- **Identity-mapped memory** - Simplified memory layout (vaddr == paddr)
5454
- **Generic cmdline mechanism** - Pass arguments to any application via `-- arg1 arg2 ...`
5555
- **Fast cold start** - Hyperlight's lightweight design enables millisecond startup times
@@ -273,16 +273,28 @@ hyperlight-unikraft kernel --initrd node.cpio --memory 512Mi -- /app/server.js -
273273
hyperlight-unikraft [OPTIONS] <KERNEL> [-- <APP_ARGS>...]
274274
275275
Arguments:
276-
<KERNEL> Path to the Unikraft kernel binary
277-
<APP_ARGS>... Arguments passed to the application (after --)
276+
<KERNEL> Path to the Unikraft kernel binary
277+
<APP_ARGS>... Arguments passed to the application (after --)
278278
279279
Options:
280-
-m, --memory <MEMORY> Memory allocation [default: 512Mi]
281-
--stack <STACK> Stack size [default: 8Mi]
282-
--initrd <CPIO> Path to initrd/rootfs CPIO archive
283-
-q, --quiet Suppress kernel output
284-
-h, --help Print help
285-
-V, --version Print version
280+
--initrd <CPIO> Path to initrd/rootfs CPIO archive
281+
-m, --memory <MEMORY> Memory allocation (e.g., 256Mi, 512Mi, 1Gi) [default: 512Mi]
282+
--stack <STACK> Stack size (e.g., 8Mi) [default: 8Mi]
283+
-q, --quiet Quiet mode — suppress host-side status messages
284+
--enable-tools Enable tool dispatch via __dispatch host function
285+
--mount <HOST[:GUEST]> Preopen a host directory for the guest's sandboxed filesystem
286+
(repeatable; default guest path: /host)
287+
--net Enable guest networking (off by default)
288+
--net-allow <HOST_OR_IP> Restrict networking to listed hosts/IPs (implies --net; repeatable;
289+
conflicts with --net-block)
290+
--net-block <HOST_OR_IP> Block listed hosts/IPs, allow everything else (implies --net;
291+
repeatable; conflicts with --net-allow)
292+
--port <PORT> Allow guest to bind (listen) on this port (implies --net; repeatable)
293+
--repeat <N> Run the application N additional times via snapshot/restore [default: 0]
294+
-e, --exec <CODE> Inline code snippet — interpreter invoked with -c <CODE>
295+
(conflicts with positional -- <APP_ARGS>)
296+
-h, --help Print help
297+
-V, --version Print version
286298
```
287299

288300
## Project Structure

0 commit comments

Comments
 (0)