# Software

## Everything

Meta-package: all available WASM command packages.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/everything`](https://www.npmjs.com/package/@agentos-software/everything) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/everything
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import everything from "@agentos-software/everything";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [everything] });

export const registry = setup({ use: { vm } });
```

## Build Essential

Meta-package: common + git + curl.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/build-essential`](https://www.npmjs.com/package/@agentos-software/build-essential) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/build-essential
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import buildEssential from "@agentos-software/build-essential";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [buildEssential] });

export const registry = setup({ use: { vm } });
```

## PI

Run the PI coding agent with lightweight, fast execution.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/pi`](https://www.npmjs.com/package/@agentos-software/pi) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/pi
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import pi from "@agentos-software/pi";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [pi] });

export const registry = setup({ use: { vm } });
```

## Common

Meta-package: coreutils + sed + grep + gawk + findutils + diffutils + tar + gzip.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/common`](https://www.npmjs.com/package/@agentos-software/common) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/common
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import common from "@agentos-software/common";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [common] });

export const registry = setup({ use: { vm } });
```

## Claude Code (Beta)

Run Claude Code as an agentOS agent with full tool access, file editing, and shell execution.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Beta | [`@agentos-software/claude-code`](https://www.npmjs.com/package/@agentos-software/claude-code) | [Guide](/agentos/docs/agents/claude) |

Built into agentOS, with no separate install. See the docs for setup and usage.

## git

Upstream Git version control for AgentOS VMs.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/git`](https://www.npmjs.com/package/@agentos-software/git) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/git
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import git from "@agentos-software/git";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [git] });

export const registry = setup({ use: { vm } });
```

## ripgrep

Fast recursive search (rg).

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/ripgrep`](https://www.npmjs.com/package/@agentos-software/ripgrep) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/ripgrep
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import ripgrep from "@agentos-software/ripgrep";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [ripgrep] });

export const registry = setup({ use: { vm } });
```

## Codex (Beta)

Run OpenAI's Codex coding agent inside agentOS with programmatic API access.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Beta | [`@agentos-software/codex`](https://www.npmjs.com/package/@agentos-software/codex) | [Guide](/agentos/docs/agents/codex) |

Built into agentOS, with no separate install. See the docs for setup and usage.

## jq

Lightweight JSON processor.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/jq`](https://www.npmjs.com/package/@agentos-software/jq) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/jq
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import jq from "@agentos-software/jq";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [jq] });

export const registry = setup({ use: { vm } });
```

## SQLite3

SQLite database command-line interface.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/sqlite3`](https://www.npmjs.com/package/@agentos-software/sqlite3) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/sqlite3
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import sqlite3 from "@agentos-software/sqlite3";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [sqlite3] });

export const registry = setup({ use: { vm } });
```

## DuckDB

In-process analytics database CLI.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/duckdb`](https://www.npmjs.com/package/@agentos-software/duckdb) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/duckdb
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import duckdb from "@agentos-software/duckdb";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [duckdb] });

export const registry = setup({ use: { vm } });
```

## OpenCode

Run OpenCode, an open-source coding agent, inside agentOS.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Built in | [`@agentos-software/opencode`](https://www.npmjs.com/package/@agentos-software/opencode) | [Guide](/agentos/docs/agents/opencode) |

Built into agentOS, with no separate install. See the docs for setup and usage.

## vim

Vim text editor with bundled runtime.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/vim`](https://www.npmjs.com/package/@agentos-software/vim) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/vim
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import vim from "@agentos-software/vim";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [vim] });

export const registry = setup({ use: { vm } });
```

## tar

GNU tar archiver.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/tar`](https://www.npmjs.com/package/@agentos-software/tar) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/tar
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import tar from "@agentos-software/tar";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [tar] });

export const registry = setup({ use: { vm } });
```

## ssh

OpenSSH client for remote commands and git-over-ssh, with enforced known_hosts verification and RSA, ECDSA, Ed25519, DH, ECDH, ChaCha20, and AES crypto.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/ssh`](https://www.npmjs.com/package/@agentos-software/ssh) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/ssh
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import ssh from "@agentos-software/ssh";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [ssh] });

export const registry = setup({ use: { vm } });
```

## wget

GNU Wget file downloader.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/wget`](https://www.npmjs.com/package/@agentos-software/wget) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/wget
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import wget from "@agentos-software/wget";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [wget] });

export const registry = setup({ use: { vm } });
```

## curl

HTTP(S) client for fetching URLs and APIs.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/curl`](https://www.npmjs.com/package/@agentos-software/curl) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/curl
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import curl from "@agentos-software/curl";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [curl] });

export const registry = setup({ use: { vm } });
```

## Coreutils

sh, cat, ls, cp, mv, rm, sort, and 80+ essential POSIX commands.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/coreutils`](https://www.npmjs.com/package/@agentos-software/coreutils) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/coreutils
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import coreutils from "@agentos-software/coreutils";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [coreutils] });

export const registry = setup({ use: { vm } });
```

## Shell

POSIX-compatible shell for running command scripts.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/sh`](https://www.npmjs.com/package/@agentos-software/sh) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/sh
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import sh from "@agentos-software/sh";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [sh] });

export const registry = setup({ use: { vm } });
```

## xfs_io

Scriptable low-level filesystem I/O commands used by xfstests.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/xfsprogs`](https://www.npmjs.com/package/@agentos-software/xfsprogs) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/xfsprogs
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import xfsprogs from "@agentos-software/xfsprogs";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [xfsprogs] });

export const registry = setup({ use: { vm } });
```

## POSIX ACL tools

Inspect and modify POSIX access and default ACLs.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/acl`](https://www.npmjs.com/package/@agentos-software/acl) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/acl
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import acl from "@agentos-software/acl";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [acl] });

export const registry = setup({ use: { vm } });
```

## attr

Inspect and modify filesystem extended attributes.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/attr`](https://www.npmjs.com/package/@agentos-software/attr) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/attr
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import attr from "@agentos-software/attr";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [attr] });

export const registry = setup({ use: { vm } });
```

## grep

GNU grep pattern matching (grep, egrep, fgrep).

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/grep`](https://www.npmjs.com/package/@agentos-software/grep) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/grep
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import grep from "@agentos-software/grep";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [grep] });

export const registry = setup({ use: { vm } });
```

## sed

GNU stream editor for text transformation.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/sed`](https://www.npmjs.com/package/@agentos-software/sed) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/sed
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import sed from "@agentos-software/sed";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [sed] });

export const registry = setup({ use: { vm } });
```

## fd

Fast file finder.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/fd`](https://www.npmjs.com/package/@agentos-software/fd) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/fd
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import fd from "@agentos-software/fd";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [fd] });

export const registry = setup({ use: { vm } });
```

## tree

Display directory structure as a tree.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/tree`](https://www.npmjs.com/package/@agentos-software/tree) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/tree
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import tree from "@agentos-software/tree";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [tree] });

export const registry = setup({ use: { vm } });
```

## gawk

GNU awk text processing and data extraction.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/gawk`](https://www.npmjs.com/package/@agentos-software/gawk) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/gawk
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import gawk from "@agentos-software/gawk";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [gawk] });

export const registry = setup({ use: { vm } });
```

## findutils

GNU find and xargs for file searching and batch execution.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/findutils`](https://www.npmjs.com/package/@agentos-software/findutils) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/findutils
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import findutils from "@agentos-software/findutils";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [findutils] });

export const registry = setup({ use: { vm } });
```

## zip

Create zip archives.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/zip`](https://www.npmjs.com/package/@agentos-software/zip) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/zip
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import zip from "@agentos-software/zip";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [zip] });

export const registry = setup({ use: { vm } });
```

## envsubst

Substitute environment variables in text streams.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/envsubst`](https://www.npmjs.com/package/@agentos-software/envsubst) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/envsubst
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import envsubst from "@agentos-software/envsubst";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [envsubst] });

export const registry = setup({ use: { vm } });
```

## unzip

Extract zip archives.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/unzip`](https://www.npmjs.com/package/@agentos-software/unzip) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/unzip
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import unzip from "@agentos-software/unzip";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [unzip] });

export const registry = setup({ use: { vm } });
```

## gzip

GNU gzip compression (gzip, gunzip, zcat).

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/gzip`](https://www.npmjs.com/package/@agentos-software/gzip) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/gzip
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import gzip from "@agentos-software/gzip";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [gzip] });

export const registry = setup({ use: { vm } });
```

## diffutils

GNU diff for comparing files.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/diffutils`](https://www.npmjs.com/package/@agentos-software/diffutils) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/diffutils
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import diffutils from "@agentos-software/diffutils";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [diffutils] });

export const registry = setup({ use: { vm } });
```

## yq

YAML/JSON processor.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/yq`](https://www.npmjs.com/package/@agentos-software/yq) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/yq
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import yq from "@agentos-software/yq";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [yq] });

export const registry = setup({ use: { vm } });
```

## file

Detect file types.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/file`](https://www.npmjs.com/package/@agentos-software/file) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/file
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import file from "@agentos-software/file";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [file] });

export const registry = setup({ use: { vm } });
```

## Codex CLI

OpenAI Codex CLI integration.

| Category | Status | Package | Docs |
| --- | --- | --- | --- |
| Software | Available | [`@agentos-software/codex-cli`](https://www.npmjs.com/package/@agentos-software/codex-cli) | [Guide](/agentos/docs/software) |

### Install

```sh
npm install @agentos-software/codex-cli
```

### Add to agentOS

Register it as VM software so its commands are available inside the VM.

```ts
import { agentOS, setup } from "@rivet-dev/agentos";
import codexCli from "@agentos-software/codex-cli";

// Add the package to your VM's software so its commands are available inside the VM
const vm = agentOS({ software: [codexCli] });

export const registry = setup({ use: { vm } });
```
