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

# Computer

> Manage compute instances — lifecycle, SSH, shell, exec, and ACP chat

`mulerun computer` is the umbrella for everything you can do with a MuleRun
compute instance: spin one up, run a shell, execute a single command, or
chat with the on-instance AI agent.

This page is a quick overview. Detailed per-subcommand pages are coming
soon.

## Instance lifecycle

```bash theme={null}
mulerun computer list                       # list instances
mulerun computer state <instance-id>        # detailed state
mulerun computer wakeup <id> --wait         # wake a suspended instance
mulerun computer reboot <id> --wait         # reboot a running instance
mulerun computer release <id> --yes         # release (economy suspend)
mulerun computer release <id> --force --yes # permanently destroy
mulerun computer quickfix <id>              # repair a stuck instance
```

For most commands the `<instance-id>` is optional: when omitted, the CLI
auto-detects the first RUNNING instance (and will wake a SLEEPING one if
that's the only option).

## Remote execution

```bash theme={null}
# Execute a single command
mulerun computer exec <id> -- "ls -la"
mulerun computer exec -u ubuntu <id> -- "uptime"

# Interactive shell (WebSocket-backed)
mulerun computer shell <id>

# SSH (auto-generates and deploys a key pair)
mulerun computer ssh-setup <id>
mulerun computer ssh <id>
mulerun computer ssh <id> -u ubuntu -p 2222

# Generate a key pair only (local, no deploy)
mulerun computer ssh-keygen
```

## ACP chat

Talk to the AI agent running on the instance over the ACP protocol.

```bash theme={null}
# Start a new chat (instance auto-detected)
mulerun computer chat --prompt "Write a Python hello world"

# Attach files
mulerun computer chat --prompt "Analyze this report" -f report.pdf

# Continue the conversation
mulerun computer send --prompt "Now make it print Hello MuleRun"
mulerun computer send --prompt "Continue" --session-id <session-id> --show-history
```

When no `<instance-id>` is provided, the CLI picks the first RUNNING
instance (or wakes a SLEEPING one). Press `Ctrl+C` during a stream to
cancel the prompt cleanly.

## Filesystem operations

The `fs` subgroup talks to the instance's filesystem over a JSON-RPC
channel:

```bash theme={null}
mulerun computer fs list   <id> /path/to/dir
mulerun computer fs read   <id> /etc/hostname
mulerun computer fs write  <id> /tmp/out.txt --content "hi"
mulerun computer fs write  <id> /tmp/big.bin --from-file ./local.bin
mulerun computer fs mkdir  <id> /tmp/new-dir
mulerun computer fs rm     <id> /tmp/old --recursive
mulerun computer fs rename <id> /tmp/a /tmp/b
mulerun computer fs cp     <id> /tmp/a /tmp/b
mulerun computer fs search <id> /workspace --pattern "*.py"
```

## Tips

* `--wait` on `wakeup` / `reboot` blocks until the instance reaches
  `RUNNING` — useful when the next command needs the instance up.
* `release` defaults to economy suspend (recoverable). `--force` makes it
  destructive; pair with `--yes` to skip the confirmation prompt only when
  you know what you're doing.
