4 ms·
From the README: > Security model > The sandbox runs inside WebAssembly with WASI for a minimal syscall interface. WASM provides memory isolation by design—li
by westurner 9mo ago
From the README:
> Security model
> The sandbox runs inside WebAssembly with WASI for a minimal syscall interface. WASM provides memory isolation by design—linear memory is bounds-checked, and there's no way to escape to the host address space. The wasmtime runtime we use is built with defense-in-depth and has been formally verified for memory safety.
> On top of WASM isolation, every tool call goes through capability validation: [...]
> The design draws from capability-based security as implemented in systems like seL4—access is explicitly granted, not implicitly available. Agents don't get ambient authority just because they're running in your process.
- westurner 9mo agoFrom "Show HN: NPM install a WASM based Linux VM for your agents" re: https://github.com/deepclause/agentvm https://github.com/deepclause/agentvm .. https://news.ycombinator.com/item?id=46686346 https://news.ycombinator.com/item?id=46686346 : >> How to run vscode-container-wasm-gcc-example with c2w, with joelseverin/linux-wasm? > linux-wasm is apparently faster than c2w. container2wasm issue #550: https://github.com/container2wasm/container2wasm/issues/550#issue-3709559065 https://github.com/container2wasm/container2wasm/issues/550#... vscode-container-wasm-gcc-example : https://github.com/ktock/vscode-container-wasm-gcc-example https://github.com/ktock/vscode-container-wasm-gcc-example Cloudflare Runners also run WASM; with workerd: cloudflare/workerd : https://github.com/cloudflare/workerd https://github.com/cloudflare/workerd ... "Cage" implements ARM64 MTE Memory Tagging Extensions support for WASM with LLVM emscripten iirc: - "Cage: Hardware-Accelerated Safe WebAssembly" (2024) https://news.ycombinator.com/item?id=46151170 https://news.ycombinator.com/item?id=46151170 : > [ llvm-memsafe-wasm , wasmtime-mte , ]
- souvik1997 9mo agoagentvm looks very cool! They are taking a different approach - full Linux VM emulated in WASM. It's very impressive technically. We differentiate from agentvm by being lightweight (~11 MB Wasm binary, compared to 173 MB for agentvm). Though there is still a lot we can learn from agentvm, thank you for sharing their project.
- schmuhblaster 9mo agoThank you! When I started working on agentvm my original goal was similar to yours, build a kind of Mingw or Cygwin for WASM. However, I quickly learned that this wouldn't really be feasible with reasonable amounts of time/token spend, mostly due to issues like having to find a way to make fork work, etc. I am no expert for WASM or Linux system programming, but it's been a lot of fun working on this stuff. I hope that the WASI standard and runtimes become more mature, as I feel that WASM sandboxes make a lot of sense in environments where containers are not an option.
- westurner 9mo ago"Rethinking Code Refinement: Learning to Judge Code Efficiency" https://news.ycombinator.com/item?id=42097656 https://news.ycombinator.com/item?id=42097656 eWASM has costed opcodes. The EVM virtual machine has not implemented eWASM. Costed opcodes in WASM for agents could incentivize efficiency re: wasm-bpf and eWASM and the BPF verifier: https://news.ycombinator.com/item?id=42092120 https://news.ycombinator.com/item?id=42092120 ewasm docs > Gas Costs > "Gas costs of individual instructions" https://ewasm.readthedocs.io/en/mkdocs/determining_wasm_gas_costs/ https://ewasm.readthedocs.io/en/mkdocs/determining_wasm_gas_... Browser tabs could show CPU, RAM, GPU utilization; From "The Risks of WebAssembly" (2022) https://news.ycombinator.com/item?id=32765865 https://news.ycombinator.com/item?id=32765865 : > Don't there need to be per- CPU/RAM/GPU quotas per WASM scope/tab? Or is preventing DOS with WASM out of scope for browsers? > IIRC, it's possible to check resource utilization in e.g. a browser Task Manager, but there's no way to do `nice` or `docker --cpu-quota` or `systemd-nspawn --cpu-affinity` to prevent one or more WASM tabs from DOS'ing a workstation with non-costed operations. Presumably workerd supports resource quotas somehow? From 2024 re: Process isolation in browsers : https://news.ycombinator.com/item?id=40861851 https://news.ycombinator.com/item?id=40861851 : > From "WebGPU is now available on Android" [...] (2022) : >> What are some ideas for UI Visual Affordances to solve for bad UX due to slow browser tabs and extensions? >> UBY: Browsers: Strobe the tab or extension button when it's beyond (configurable) resource usage thresholds >> UBY: Browsers: Vary the {color, size, fill} of the tabs according to their relative resource utilization
- souvik1997 9mo ago