mirror of
https://github.com/NVIDIA/OpenShell.git
synced 2026-10-21 06:11:31 +08:00
84 lines
2.8 KiB
Markdown
84 lines
2.8 KiB
Markdown
# OpenShell
|
|
|
|
OpenShell is the runtime environment for autonomous agents—the "Matrix" where they live, work, and verify.
|
|
|
|
While coding tools like Claude help agents write logic, OpenShell provides the infrastructure to run it, offering a programmable factory where agents can spin up physics simulations to master tasks, generate synthetic data to fix edge cases, and safely iterate through thousands of failures in isolated sandboxes.
|
|
|
|
It transforms the data center from a static deployment target into a continuous verification engine, allowing agents to autonomously build and operate complex systems—from physical robotics to self-healing infrastructure—without needing a human to manage the infrastructure.
|
|
|
|
## Quickstart
|
|
|
|
### Prerequisites
|
|
|
|
- **Docker** — Docker Desktop (or a Docker daemon) must be running.
|
|
- **Python 3.12+**
|
|
- [**uv**](https://docs.astral.sh/uv/) 0.9+
|
|
|
|
### Install
|
|
|
|
```bash
|
|
uv pip install openshell \
|
|
--upgrade \
|
|
--pre \
|
|
--index-url https://urm.nvidia.com/artifactory/api/pypi/nv-shared-pypi/simple
|
|
```
|
|
|
|
The `openshell` binary is installed into your Python environment. Use `uv run openshell` to invoke it, or activate your venv first with `source .venv/bin/activate`.
|
|
|
|
### Create a sandbox
|
|
|
|
To install a Openclaw cluster and start a sandbox
|
|
|
|
```bash
|
|
openshell sandbox create -- claude # or opencode or codex
|
|
```
|
|
|
|
To run a sandbox on a remote machine, pass `--remote [remote-ssh-host]`.
|
|
|
|
For more information see `openshell sandbox create --help`.
|
|
|
|
The sandbox container includes the following tools by default:
|
|
|
|
| Category | Tools |
|
|
| ---------- | -------------------------------------------------------- |
|
|
| Agent | `claude`, `opencode`, `codex` |
|
|
| Language | `python` (3.12), `node` (22) |
|
|
| Developer | `gh`, `git`, `vim`, `nano` |
|
|
| Networking | `ping`, `dig`, `nslookup`, `nc`, `traceroute`, `netstat` |
|
|
|
|
For additional sandbox images see the [NVIDIA/OpenShell-Community](https://github.com/NVIDIA/OpenShell-Community) images. You can also [build your own custom images](examples/bring-your-own-container.md).
|
|
|
|
### Deploy a cluster
|
|
|
|
**Note:** `openshell sandbox create` automatically deploys a cluster if one isn't already running.
|
|
|
|
To deploy a cluster explicitly:
|
|
|
|
```bash
|
|
openshell gateway start
|
|
```
|
|
|
|
For remote deployment:
|
|
|
|
```bash
|
|
openshell gateway start --remote user@host
|
|
```
|
|
|
|
### Upgrading
|
|
|
|
To upgrade, redeploy your cluster to pick up the latest server and sandbox images:
|
|
|
|
```bash
|
|
openshell gateway start
|
|
```
|
|
|
|
This will prompt you to recreate the cluster. Select "yes" to recreate the cluster.
|
|
|
|
## Developing
|
|
|
|
See `CONTRIBUTING.md` for building from source and contributing to OpenShell.
|
|
|
|
## Architecture
|
|
|
|
See `architecture/` for detailed architecture docs and design decisions.
|