基于 WebAssembly 的运行时与 CLI,用于在轻量、安全的沙箱中运行应用和 AI 智能体代码。
taybenlor/runno
基于 WebAssembly 的沙箱运行时,可在浏览器、Node 或 MCP 服务中运行多种语言的代码。
- Star
- 775
- Fork
- 48
- 未关闭 Issue
- 38
- 最近提交
- 7天前
这是什么?
Runno 是一组用于在沙箱中运行多种编程语言代码的 JavaScript 包。它基于 WASI(WebAssembly 系统接口)模拟类 Unix 环境,并提供虚拟文件系统,程序完全在 JavaScript 内运行,不会访问宿主机的真实文件或网络。
@runno/runtime 提供 Web Components,可让网页直接在浏览器中运行代码示例,无需服务端。@runno/sandbox 可在 Node 等 JavaScript 运行时中执行代码,@runno/wasi 则用于运行 WASI 二进制文件。@runno/mcp 将沙箱封装为 MCP 服务器,供 AI 助手调用执行代码。
目前支持 Python、Ruby、QuickJS、SQLite、C、C++ 和 PHP CGI。由于 WASI 不提供完整的 Linux 环境,它更适合处理通过标准输入输出交互的小型程序,安装外部包也较为困难。
核心功能
- 01支持 Python、Ruby、JavaScript、C、C++、SQLite 等多种语言。
- 02提供 Web Components,可在网页中嵌入可运行的代码示例。
- 03通过沙箱 API 在 Node 等 JavaScript 运行时中执行代码。
- 04内置 MCP 服务器,供 AI 助手调用执行代码。
- 05使用虚拟文件系统,不访问真实文件或网络。
适用场景
- 让编程课程中的示例无需安装工具即可在浏览器中运行。
- 在用户机器上将小段代码放入沙箱中安全测试。
- 通过 MCP 为 AI 助手提供一个隔离的代码执行环境。
快速上手
- 1
安装 sandbox 包
npm install @runno/sandbox - 2
在脚本中运行 Ruby 代码
- 3
将 MCP 服务器添加到 MCP 客户端配置中
使用前须知
- 支持的编程语言仅限于已通过 WASI 编译为 WebAssembly 的语言。
- WASI 不提供完整的 Linux 环境,在 Runno 中安装软件包或模块较为困难。
- 最适合使用标准输入和标准输出的小型程序。
收录于专题
标签
常见问题
- runno 是什么?
- 基于 WebAssembly 的沙箱运行时,可在浏览器、Node 或 MCP 服务中运行多种语言的代码。 Runno 是一组用于在沙箱中运行多种编程语言代码的 JavaScript 包。它基于 WASI(WebAssembly 系统接口)模拟类 Unix 环境,并提供虚拟文件系统,程序完全在 JavaScript 内运行,不会访问宿主机的真实文件或网络。
- runno 可以免费使用吗?用的什么许可证?
- runno 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- runno 还在维护吗?
- 活跃维护中。runno 最近一次提交是在 2026年10月31日。
- runno 适合用来做什么?
- 让编程课程中的示例无需安装工具即可在浏览器中运行。 在用户机器上将小段代码放入沙箱中安全测试。 通过 MCP 为 AI 助手提供一个隔离的代码执行环境。
- runno 怎么安装和运行?
- 安装 sandbox 包: npm install @runno/sandbox 在脚本中运行 Ruby 代码 将 MCP 服务器添加到 MCP 客户端配置中
- 在哪里获取 runno?
- 源代码和安装说明在 GitHub 上:https://github.com/taybenlor/runno
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
基于 Cranelift 代码生成器的独立 WebAssembly 运行时,支持 WASI 并提供多语言嵌入接口。
一个用 C 编写的快速 WebAssembly 解释器,体积小,可嵌入微控制器及多种语言项目。
基于 WebAssembly 与 V8 的轻量沙箱,为 AI 智能体提供带文件、进程、Shell 和网络的类 Linux 环境。
面向 AI Agent 的安全运行时,在隔离的 WebAssembly 沙箱中执行不可信代码,并可按任务限制 CPU、内存和超时。
一个 Docker 一体化沙箱,为 AI 智能体提供浏览器、终端、文件系统、VSCode 和 MCP 等统一运行环境。