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

# Crash Recovery

> How Orpheus handles failures safely

## Safe-First Design

When something crashes, Orpheus does NOT auto-retry.

Why? Your agent might have side effects:

* Sent an email
* Charged a card
* Called an API

Auto-retry = potential duplicate. Orpheus logs it and lets you decide.

## Request States

| State       | Meaning                     |
| ----------- | --------------------------- |
| `completed` | Success                     |
| `failed`    | Your handler returned error |
| `crashed`   | Daemon died mid-execution   |

<img className="block" src="https://mintcdn.com/orpheussysteminc/hc-RHMSh1-Rpu87T/assets/crash-recovery.svg?fit=max&auto=format&n=hc-RHMSh1-Rpu87T&q=85&s=b8be749ce6a127739d3e5b119f29e740" alt="workers" width="24225" height="7298" data-path="assets/crash-recovery.svg" />

***

## Find Crashed Requests

```bash theme={null}
orpheus execlog list my-agent --state crashed
```

## What to Do

1. **Check what happened:** Look at workspace, logs
2. **If idempotent:** Safe to retry
3. **If has side effects:** Investigate first

## ExecLog

Every request is logged with:

* Request ID
* Worker ID
* Session ID (if any)
* State
* Duration
* Error (if failed)

Use it for debugging and audit trails.

```bash theme={null}
orpheus execlog list my-agent --state failed
```
