> ## Documentation Index
> Fetch the complete documentation index at: https://docs.idyl.network/llms.txt
> Use this file to discover all available pages before exploring further.

# Work in a Computer

> Create a Computer, store files, run a command, and inspect its history.

Use an IDYL Computer when work needs durable files, saved versions, and
retained execution history.

## Create a Computer

Select its Namespace and Subnet, then choose an image:

```bash theme={null}
idyl use <namespace>
idyl context edit --set-subnet <subnet>
idyl computer create <computer> --image-ref python:3.13
```

A Computer belongs to that Namespace and Subnet. Commands can override the
saved selection with `--namespace` and `--subnet`.

## Store files

```bash theme={null}
idyl computer cp ./main.py <computer>:src/main.py
idyl computer files <computer>:src
idyl computer cp <computer>:src/main.py ./downloaded-main.py
```

Remote file paths are relative to the Computer's saved working area. A file
upload publishes a saved version; downloads read saved files without waking
the Computer.

## Run a command

```bash theme={null}
idyl computer exec <computer> -- python /workspace/src/main.py
```

The Computer wakes if needed, runs the command, and saves its files after the
process exits when automatic saving is enabled. The CLI streams the command's
output and reports its save outcome. Its idle timeout controls when execution
is released after the last session ends.

Open an interactive session or inspect retained history:

```bash theme={null}
idyl computer exec -it <computer> -- /bin/sh
idyl computer ssh <computer>
idyl computer history <computer>
idyl computer history <computer> <entry-id>
```

## Work with saved versions

```bash theme={null}
idyl computer versions <computer>
idyl computer cp <computer>@v2:src/main.py ./earlier-main.py
idyl computer go-back <computer> v2
idyl computer fork <computer>@v2 <fork-name>
```

Use a version returned by `versions`. Reading a previous version preserves the
Computer's current files; `go-back` changes its saved working state, and
`fork` creates another Computer from the selected version.

Direct Workload commands such as `idyl deploy` and `idyl create pod` use the
Namespace and remain available independently of Computers.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.