{"id":50581504,"url":"https://github.com/rivet-dev/agentos","last_synced_at":"2026-06-21T22:00:39.543Z","repository":{"id":227855635,"uuid":"753886289","full_name":"rivet-dev/agentos","owner":"rivet-dev","description":"agentOS is a portable open-source operating system for agents. ~6 ms coldstarts, 32x cheaper than sandboxes. Powered by WebAssembly and V8 isolates.","archived":false,"fork":false,"pushed_at":"2026-06-21T18:27:09.000Z","size":65949,"stargazers_count":3029,"open_issues_count":37,"forks_count":151,"subscribers_count":12,"default_branch":"main","last_synced_at":"2026-06-21T20:11:33.782Z","etag":null,"topics":["agent","ai","javascript","llm","sandbox","v8","wasm","webassembly"],"latest_commit_sha":null,"homepage":"https://www.rivet.dev/agent-os","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rivet-dev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2024-02-07T01:06:25.000Z","updated_at":"2026-06-21T12:52:52.000Z","dependencies_parsed_at":"2024-05-21T12:26:18.501Z","dependency_job_id":"c0d00476-e1dd-4dea-a10b-00474e54d3a4","html_url":"https://github.com/rivet-dev/agentos","commit_stats":null,"previous_names":["rivet-gg/opengb","rivet-gg/modules","opengamebackend/opengamebackend","rivet-gg/actor-core","rivet-gg/rivetkit","rivet-dev/rivetkit","rivet-dev/agent-os","rivet-dev/agentos"],"tags_count":63,"template":false,"template_full_name":null,"purl":"pkg:github/rivet-dev/agentos","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rivet-dev%2Fagentos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rivet-dev%2Fagentos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rivet-dev%2Fagentos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rivet-dev%2Fagentos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rivet-dev","download_url":"https://codeload.github.com/rivet-dev/agentos/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rivet-dev%2Fagentos/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34627171,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-21T02:00:05.568Z","response_time":54,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agent","ai","javascript","llm","sandbox","v8","wasm","webassembly"],"created_at":"2026-06-05T03:00:35.051Z","updated_at":"2026-06-21T22:00:39.536Z","avatar_url":"https://github.com/rivet-dev.png","language":"TypeScript","funding_links":[],"categories":["Libraries"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\".github/media/banner.png\" alt=\"agentOS\" /\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  A portable open-source operating system for AI agents.\u003cbr/\u003eNear-zero cold starts (~6 ms), up to 32x cheaper than sandboxes.\u003cbr/\u003eBuilt-in ACP agents: Pi, Claude Code, and OpenCode\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://rivet.dev/docs/agent-os\"\u003eDocumentation\u003c/a\u003e | \u003ca href=\"https://rivet.dev/docs/agent-os/quickstart\"\u003eQuickstart\u003c/a\u003e\n\u003c/p\u003e\n\n\n## Why agentOS\n\n- **Runs inside your process**: No VMs to boot, no containers to pull. Agents start in milliseconds with minimal memory overhead.\n- **Embeds in your backend**: Agents call your functions directly via [host tools](https://rivet.dev/docs/agent-os/tools). No network hops, no complex auth between services.\n- **Granular security**: Deny-by-default permissions for filesystem, network, and process access. The same isolation technology trusted by browsers worldwide.\n- **Deploy anywhere**: Just an npm package. Works on your laptop, Rivet Cloud, Railway, Vercel, Kubernetes, or any container platform.\n- **Open source**: Apache 2.0 licensed. Self-host or use [Rivet Cloud](https://rivet.dev/docs/agent-os/deployment) for managed infrastructure.\n\n### agentOS vs Sandbox\n\nagentOS is a lightweight VM that runs inside your process. Sandboxes are full Linux environments. agentOS integrates agents into your backend with [host tools](https://rivet.dev/docs/agent-os/tools) and granular permissions. Sandboxes give you a full OS for browsers, native binaries, and dev servers.\n\nYou don't have to choose: agentOS works with sandboxes through the [sandbox extension](https://rivet.dev/docs/agent-os/sandbox), spinning up a full sandbox on demand and mounting the sandbox's file system when the workload needs it.\n\n## Quick start\n\n```bash\nnpm install @rivet-dev/agentos-core @agentos-software/common @rivet-dev/agentos-pi\n```\n\n```ts\nimport { AgentOs } from \"@rivet-dev/agentos-core\";\nimport common from \"@agentos-software/common\";\nimport pi from \"@rivet-dev/agentos-pi\";\n\nconst vm = await AgentOs.create({ software: [common, pi] });\n\n// Create a session and send a prompt\nconst { sessionId } = await vm.createSession(\"pi\", {\n  env: { ANTHROPIC_API_KEY: process.env.ANTHROPIC_API_KEY! },\n});\n\nvm.onSessionEvent(sessionId, (event) =\u003e {\n  console.log(event);\n});\n\nawait vm.prompt(sessionId, \"Write a hello world script to /home/user/hello.js\");\n\n// Read the file the agent created\nconst content = await vm.readFile(\"/home/user/hello.js\");\nconsole.log(new TextDecoder().decode(content));\n\nvm.closeSession(sessionId);\nawait vm.dispose();\n```\n\nagentOS can run Node.js and shell scripts inside the VM:\n\n```ts\n// Node.js\nawait vm.writeFile(\"/hello.mjs\", 'import fs from \"fs\"; fs.writeFileSync(\"/out.txt\", \"hi\"); console.log(fs.readFileSync(\"/out.txt\", \"utf8\"));');\nawait vm.exec(\"node /hello.mjs\");\n\n// Bash\nawait vm.exec(\"echo 'hi' \u003e /out.txt \u0026\u0026 cat /out.txt\");\n```\n\nSee the [Quickstart guide](https://rivet.dev/docs/agent-os/quickstart) for the full walkthrough.\n\n## Benchmarks\n\nAll benchmarks compare agentOS against the fastest/cheapest mainstream sandbox providers as of March 2026.\n\n### Cold start\n\n| Percentile | agentOS | Fastest Sandbox (E2B) | Speedup |\n|---|---|---|---|\n| p50 | 4.8 ms | 440 ms | **92x faster** |\n| p95 | 5.6 ms | 950 ms | **170x faster** |\n| p99 | 6.1 ms | 3,150 ms | **516x faster** |\n\n\u003csub\u003eagentOS: median of 10,000 runs on Intel i7-12700KF. Sandbox: E2B.\u003c/sub\u003e\n\n### Memory per instance\n\n| Workload | agentOS | Cheapest Sandbox (Daytona) | Reduction |\n|---|---|---|---|\n| Full coding agent (Pi + MCP + filesystem) | ~131 MB | ~1,024 MB | **8x smaller** |\n| Simple shell command | ~22 MB | ~1,024 MB | **47x smaller** |\n\n\u003csub\u003eSandbox baseline: Daytona minimum (1 vCPU + 1 GiB RAM).\u003c/sub\u003e\n\n### Cost per execution (self-hosted)\n\n| Hardware | Cost/sec (agent workload) | vs Sandbox | \n|---|---|---|\n| AWS ARM | ~$0.0000032/s | **6x cheaper** |\n| AWS x86 | ~$0.0000053/s | **3x cheaper** |\n| Hetzner ARM | ~$0.0000011/s | **17x cheaper** |\n| Hetzner x86 | ~$0.0000013/s | **14x cheaper** |\n\n\u003csub\u003eSandbox baseline: Daytona at $0.0504/vCPU-h + $0.0162/GiB-h. Self-hosted assumes 70% utilization.\u003c/sub\u003e\n\n## Features\n\n### Agents\n- **Multi-agent support**: Run built-in Pi, Claude Code, and OpenCode agents with a unified API, plus install registry command packages such as Codex as VM software\n- **[Sessions via ACP](https://rivet.dev/docs/agent-os/sessions)**: Create, manage, and resume agent sessions over the [Agent Communication Protocol](https://agentclientprotocol.com)\n- **Universal transcript format**: One transcript format across all agents for debugging, auditing, and comparison\n- **[Automatic persistence](https://rivet.dev/docs/agent-os/persistence)**: Every conversation is saved and replayable without extra code\n\n### Infrastructure\n- **[Mount external storage as a filesystem](https://rivet.dev/docs/agent-os/filesystem)**: S3-compatible storage, Google Drive, host directories, overlay filesystems, or custom backends\n- **[Host tools](https://rivet.dev/docs/agent-os/tools)**: Define JavaScript functions that agents call as CLI commands inside the VM\n- **[Cron](https://rivet.dev/docs/agent-os/cron), [webhooks](https://rivet.dev/docs/agent-os/webhooks), and [queues](https://rivet.dev/docs/agent-os/queues)**: Schedule tasks, receive external events, and serialize work with built-in primitives\n- **[Sandbox extension](https://rivet.dev/docs/agent-os/sandbox)**: Pair with full sandboxes (E2B, Daytona, etc.) for heavy workloads like browsers or native compilation\n\n### Orchestration\n- **[Multiplayer](https://rivet.dev/docs/agent-os/multiplayer)**: Multiple clients observe and collaborate with the same agent in real time\n- **[Agent-to-agent](https://rivet.dev/docs/agent-os/agent-to-agent)**: Agents delegate work to other agents through host-defined tools\n- **[Workflows](https://rivet.dev/docs/agent-os/workflows)**: Chain agent tasks into durable workflows with retries, branching, and resumable execution\n- **[Authentication](https://rivet.dev/docs/agent-os/authentication)**: Integrate with your existing auth model (API keys, OAuth, JWTs)\n\n### Security\n- **[Deny-by-default permissions](https://rivet.dev/docs/agent-os/security)**: Granular control over filesystem, network, process, and environment access\n- **[Programmatic network control](https://rivet.dev/docs/agent-os/networking)**: Allow, deny, or proxy any outbound connection\n- **[Resource limits](https://rivet.dev/docs/agent-os/security)**: Set precise CPU and memory limits per agent\n- **[VM isolation](https://rivet.dev/docs/agent-os/architecture)**: Each agent runs in its own VM with no shared state\n\n## Architecture\n\nagentOS is built on an in-process operating system kernel. The kernel manages a virtual filesystem, process table, pipes, PTYs, and a virtual network stack. Everything runs inside the kernel -- nothing executes on the host.\n\nSee the [Architecture docs](https://rivet.dev/docs/agent-os/architecture) for details.\n\n## Registry\n\nBrowse pre-built agents, tools, filesystems, and software packages at the [agentOS Registry](https://rivet.dev/agent-os/registry).\n\n\u003c!-- BEGIN PACKAGE TABLE --\u003e\n### WASM Command Packages\n\n| Package | apt Equivalent | Description | Source | Combined Size | Gzipped |\n|---------|---------------|-------------|--------|---------------|---------|\n| `@agentos-software/codex` | codex | OpenAI Codex command package (codex, codex-exec) | rust | - | - |\n| `@agentos-software/coreutils` | coreutils | GNU coreutils: sh, cat, ls, cp, sort, and 80+ commands | rust | - | - |\n| `@agentos-software/curl` | curl | curl HTTP client | c | - | - |\n| `@agentos-software/diffutils` | diffutils | GNU diffutils (diff) | rust | - | - |\n| `@agentos-software/duckdb` | duckdb | DuckDB command-line interface | c | - | - |\n| `@agentos-software/fd` | fd-find | fd fast file finder | rust | - | - |\n| `@agentos-software/file` | file | file type detection | rust | - | - |\n| `@agentos-software/findutils` | findutils | GNU findutils (find, xargs) | rust | - | - |\n| `@agentos-software/gawk` | gawk | GNU awk text processing | rust | - | - |\n| `@agentos-software/git` | git | git version control | rust | - | - |\n| `@agentos-software/grep` | grep | GNU grep pattern matching (grep, egrep, fgrep) | rust | - | - |\n| `@agentos-software/gzip` | gzip | GNU gzip compression (gzip, gunzip, zcat) | rust | - | - |\n| `@agentos-software/http-get` | http-get | Minimal HTTP GET fetch helper | c | - | - |\n| `@agentos-software/jq` | jq | jq JSON processor | rust | - | - |\n| `@agentos-software/make` | make | GNU make build tool (planned) *(planned)* | rust | - | - |\n| `@agentos-software/ripgrep` | ripgrep | ripgrep fast recursive search | rust | - | - |\n| `@agentos-software/sed` | sed | GNU sed stream editor | rust | - | - |\n| `@agentos-software/sqlite3` | sqlite3 | SQLite3 command-line interface | c | - | - |\n| `@agentos-software/tar` | tar | GNU tar archiver | rust | - | - |\n| `@agentos-software/tree` | tree | tree directory listing | rust | - | - |\n| `@agentos-software/unzip` | unzip | unzip archive extraction | c | - | - |\n| `@agentos-software/wget` | wget | GNU wget HTTP client | c | - | - |\n| `@agentos-software/yq` | yq | yq YAML/JSON processor | rust | - | - |\n| `@agentos-software/zip` | zip | zip archive creation | c | - | - |\n\n### Meta-Packages\n\n| Package | Description | Includes |\n|---------|-------------|----------|\n| `@agentos-software/build-essential` | Build-essential WASM command set (standard + make + git + curl) | standard, make, git, curl |\n| `@agentos-software/common` | Common WASM command set (coreutils + sed + grep + gawk + findutils + diffutils + tar + gzip) | coreutils, sed, grep, gawk, findutils, diffutils, tar, gzip |\n| `@agentos-software/everything` | All available WASM command packages in a single bundle | coreutils, sed, grep, gawk, findutils, diffutils, tar, gzip, curl, zip, unzip, jq, ripgrep, fd, tree, file, yq, codex |\n\u003c!-- END PACKAGE TABLE --\u003e\n\n## License\n\nApache-2.0\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frivet-dev%2Fagentos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frivet-dev%2Fagentos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frivet-dev%2Fagentos/lists"}