rivet-dev/agent-os

GitHub: rivet-dev/agent-os

基于 WebAssembly 和 V8 隔离的便携式 AI 智能体操作系统,提供毫秒级冷启动和低成本的安全执行环境。

Stars: 2679 | Forks: 109

agentOS

适用于 AI 智能体的便携式开源操作系统。
近乎零的冷启动时间(约 6 毫秒),成本比沙盒低达 32 倍。
由 WebAssembly 和 V8 隔离环境驱动。

支持 Pi、Claude Code*、Codex*、Amp* 和 OpenCode*
* 即将推出

文档 | 快速入门

## 为什么选择 agentOS - **运行在你的进程内部**:无需启动虚拟机,无需拉取容器。智能体在毫秒级内启动,内存开销极小。 - **嵌入你的后端**:智能体通过 [host tools](https://rivet.dev/docs/agent-os/tools) 直接调用你的函数。无需网络跳转,无需服务间复杂的认证。 - **细粒度安全**:默认拒绝文件系统、网络和进程访问权限。采用了全球浏览器信任的同一种隔离技术。 - **随处部署**:仅需一个 npm 包。适用于你的笔记本电脑、Rivet Cloud、Railway、Vercel、Kubernetes 或任何容器平台。 - **开源**:采用 Apache 2.0 许可证。可以自托管,或使用 [Rivet Cloud](https://rivet.dev/docs/agent-os/deployment) 获得托管基础设施。 ### agentOS vs 沙盒 agentOS 是运行在你的进程内部的轻量级虚拟机。沙盒则是完整的 Linux 环境。agentOS 通过 [host tools](https://rivet.dev/docs/agent-os/tools) 和细粒度权限将智能体集成到你的后端中。沙盒则为浏览器、原生二进制文件和开发服务器提供完整的操作系统。 你不必做出选择:agentOS 可以通过 [sandbox extension](https://rivet.dev/docs/agent-os/sandbox) 与沙盒配合使用,在工作负载需要时按需启动完整的沙盒并挂载其文件系统。 ## 快速开始 ``` npm install @rivet-dev/agent-os @rivet-dev/agent-os-common @rivet-dev/agent-os-pi ``` ``` import { AgentOs } from "@rivet-dev/agent-os"; import common from "@rivet-dev/agent-os-common"; import pi from "@rivet-dev/agent-os-pi"; const vm = await AgentOs.create({ software: [common, pi] }); // Create a session and send a prompt const { sessionId } = await vm.createSession("pi", { env: { ANTHROPIC_API_KEY: process.env.ANTHROPIC_API_KEY! }, }); vm.onSessionEvent(sessionId, (event) => { console.log(event); }); await vm.prompt(sessionId, "Write a hello world script to /home/user/hello.js"); // Read the file the agent created const content = await vm.readFile("/home/user/hello.js"); console.log(new TextDecoder().decode(content)); vm.closeSession(sessionId); await vm.dispose(); ``` agentOS 可以在虚拟机内部运行 Node.js 和 shell 脚本: ``` // Node.js await vm.writeFile("/hello.mjs", 'import fs from "fs"; fs.writeFileSync("/out.txt", "hi"); console.log(fs.readFileSync("/out.txt", "utf8"));'); await vm.exec("node /hello.mjs"); // Bash await vm.exec("echo 'hi' > /out.txt && cat /out.txt"); ``` 查看 [Quickstart guide](https://rivet.dev/docs/agent-os/quickstart) 获取完整的操作指南。 ## 基准测试 所有基准测试均对比了截至 2026 年 3 月最快/最主流的沙盒提供商。 ### 冷启动 | 百分位 | agentOS | 最快的沙盒 (E2B) | 加速倍数 | |---|---|---|---| | p50 | 4.8 ms | 440 ms | **快 92 倍** | | p95 | 5.6 ms | 950 ms | **快 170 倍** | | p99 | 6.1 ms | 3,150 ms | **快 516 倍** | agentOS:基于 Intel i7-12700KF 运行 10,000 次的中位数。沙盒:E2B。 ### 单实例内存占用 | 工作负载 | agentOS | 最便宜的沙盒 (Daytona) | 资源缩减 | |---|---|---|---| | 完整的编码智能体 (Pi + MCP + 文件系统) | ~131 MB | ~1,024 MB | **少 8 倍** | | 简单的 shell 命令 | ~22 MB | ~1,024 MB | **少 47 倍** | 沙盒基准:Daytona 最低配置(1 vCPU + 1 GiB RAM)。 ### 单次执行成本(自托管) | 硬件 | agent 工作负载成本/秒 | 对比沙盒 | |---|---|---| | AWS ARM | ~$0.0000032/s | **便宜 6 倍** | | AWS x86 | ~$0.0000053/s | **便宜 3 倍** | | Hetzner ARM | ~$0.0000011/s | **便宜 17 倍** | | Hetzner x86 | ~$0.0000013/s | **便宜 14 倍** | 沙盒基准:Daytona 价格 $0.0504/vCPU-h + $0.0162/GiB-h。自托管假设 70% 利用率。 ## 功能特性 ### 智能体 - **多智能体支持**:通过统一的 API 运行 Claude Code、Codex、OpenCode、Amp、Pi 等 - **[通过 ACP 进行会话管理](https://rivet.dev/docs/agent-os/sessions)**:通过 [Agent Communication Protocol](https://agentclientprotocol.com) 创建、管理和恢复智能体会话 - **通用记录格式**:跨所有智能体采用统一的记录格式,便于调试、审计和对比 - **[自动持久化](https://rivet.dev/docs/agent-os/persistence)**:保存每一段对话,并无需额外代码即可重放 ### 基础设施 - **[挂载任何内容为文件系统](https://rivet.dev/docs/agent-os/filesystem)**:S3、Google Drive、SQLite、主机目录或自定义后端 - **[Host tools](https://rivet.dev/docs/agent-os/tools)**:定义 JavaScript 函数,让智能体在虚拟机内部像调用 CLI 命令一样调用它们 - **[Cron](https://rivet.dev/docs/agent-os/cron)、[webhooks](https://rivet.dev/docs/agent-os/webhooks) 和 [queues](https://rivet.dev/docs/agent-os/queues)**:使用内置原语调度任务、接收外部事件以及序列化工作负载 - **[Sandbox extension](https://rivet.dev/docs/agent-os/sandbox)**:与完整的沙盒(如 E2B、Daytona 等)配合使用,以处理浏览器或原生编译等繁重工作负载 ### 编排 - **[多人协作](https://rivet.dev/docs/agent-os/multiplayer)**:多个客户端实时观察并与同一个智能体协作 - **[智能体到智能体](https://rivet.dev/docs/agent-os/agent-to-agent)**:智能体通过主机定义的工具将工作委托给其他智能体 - **[工作流](https://rivet.dev/docs/agent-os/workflows)**:将智能体任务链接为持久化工作流,支持重试、分支和可恢复执行 - **[身份认证](https://rivet.dev/docs/agent-os/authentication)**:与你现有的认证模型(API keys、OAuth、JWTs)集成 ### 安全 - **[默认拒绝权限](https://rivet.dev/docs/agent-os/security)**:对文件系统、网络、进程和环境访问进行细粒度控制 - **[可编程网络控制](https://rivet.dev/docs/agent-os/networking)**:允许、拒绝或代理任何出站连接 - **[资源限制](https://rivet.dev/docs/agent-os/security)**:为每个智能体设置精确的 CPU 和内存限制 - **[V8 + WebAssembly 隔离](https://rivet.dev/docs/agent-os/architecture)**:每个智能体在自己的隔离环境中运行,无共享状态 ## 架构 agentOS 构建于用 JavaScript 编写的进程内操作系统内核之上。三个运行时挂载到该内核: - **WebAssembly**:编译为 WASM 的 POSIX 工具(coreutils、grep、sed 等) - **V8 isolates**:JavaScript/TypeScript 智能体代码在沙盒化的 V8 上下文中运行 内核管理虚拟文件系统、进程表、管道、PTY 和虚拟网络栈。所有内容都在内核内部运行 —— 不会在主机上执行任何内容。 详情请参阅 [Architecture docs](https://rivet.dev/docs/agent-os/architecture)。 ## 注册表 浏览预构建的智能体、工具、文件系统和软件包,请访问 [agentOS Registry](https://rivet.dev/agent-os/registry)。 ### WASM 命令包 | 包 | apt 等价包 | 描述 | 源语言 | 组合大小 | Gzipped | |---------|---------------|-------------|--------|---------------|---------| | `@rivet-dev/agent-os-codex` | codex | OpenAI Codex 集成 | rust | - | - | | `@rivet-dev/agent-os-coreutils` | coreutils | GNU coreutils:sh, cat, ls, cp, sort 及 80+ 个命令 | rust | - | - | | `@rivet-dev/agent-os-curl` | curl | curl HTTP 客户端 | c | - | - | | `@rivet-dev/agent-os-diffutils` | diffutils | GNU diffutils | rust | - | - | | `@rivet-dev/agent-os-fd` | fd-find | fd 快速文件查找器 | rust | - | - | | `@rivet-dev/agent-os-file` | file | 文件类型检测 | rust | - | - | | `@rivet-dev/agent-os-findutils` | findutils | GNU findutils (find, xargs) | rust | - | - | | `@rivet-dev/agent-os-gawk` | gawk | GNU awk 文本处理 | rust | - | - | | `@rivet-dev/agent-os-git` | git | git 版本控制 *(计划中)* | rust | - | - | | `@rivet-dev/agent-os-grep` | grep | GNU grep 模式匹配 (grep, egrep, fgrep) | rust | - | - | | `@rivet-dev/agent-os-gzip` | gzip | GNU gzip 压缩 (gzip, gunzip, zcat) | rust | - | - | | `@rivet-dev/agent-os-jq` | jq | jq JSON 处理器 | rust | - | - | | `@rivet-dev/agent-os-make` | make | GNU make 构建工具 *(计划中)* | rust | - | - | | `@rivet-dev/agent-os-ripgrep` | ripgrep | ripgrep 快速递归搜索 | rust | - | - | | `@rivet-dev/agent-os-sed` | sed | GNU sed 流编辑器 | rust | - | - | | `@rivet-dev/agent-os-sqlite3` | sqlite3 | SQLite3 命令行界面 | c | - | - | | `@rivet-dev/agent-os-tar` | tar | GNU tar 归档工具 | rust | - | - | | `@rivet-dev/agent-os-tree` | tree | tree 目录列表 | rust | - | - | | `@rivet-dev/agent-os-unzip` | unzip | unzip 解压工具 | c | - | - | | `@rivet-dev/agent-os-wget` | wget | GNU wget HTTP 客户端 | c | - | - | | `@rivet-dev/agent-os-yq` | yq | yq YAML/JSON 处理器 | rust | - | - | | `@rivet-dev/agent-os-zip` | zip | zip 打包工具 | c | - | - | ### 元包 | 包 | 描述 | 包含 | |---------|-------------|----------| | `@rivet-dev/agent-os-build-essential` | Build-essential WASM 命令集 (standard + make + git + curl) | standard, make, git, curl | | `@rivet-dev/agent-os-common` | 常用 WASM 命令集 (coreutils + sed + grep + gawk + findutils + diffutils + tar + gzip) | coreutils, sed, grep, gawk, findutils, diffutils, tar, gzip | ## 许可证 Apache-2.0
标签:agentOS, AI工具, Apache 2.0, Cilium, Claude, CMS安全, CVE检测, GNU通用公共许可证, Isolates, JavaScript, MITM代理, Node.js, NPM, OpenAI, OSV, Rivet, Serverless, TypeScript, V8, Vercel, Wasm, WebAssembly, 人工智能, 代码执行, 内存规避, 冷启动优化, 函数调用, 可视化界面, 后端集成, 安全插件, 安全隔离, 工具调用, 开源, 数据可视化, 智能体操作系统, 沙箱, 用户模式Hook绕过, 轻量级虚拟机, 边缘计算, 运行时, 通知系统