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

# Introduction

> Wrenn lets you create isolated microVM capsules, run commands, manage files, and execute stateful Python code — all from a clean Python SDK.

Wrenn is a secure infrastructure provider for unsafe code and AI agents. You create isolated **capsules** — lightweight virtual machines — and interact with them through a Python SDK or REST API. Each capsule is a fully isolated environment where you can run commands, read and write files, open interactive terminals, and execute stateful code through a built-in Jupyter kernel.

<CardGroup cols={2}>
  <Card title="Quick Start" icon="bolt" href="/quickstart">
    Install the SDK, set your API key, and run your first command in under five minutes.
  </Card>

  <Card title="Authentication" icon="key" href="/authentication">
    Learn how to generate an API key and authenticate your requests.
  </Card>

  <Card title="Capsules" icon="box" href="/capsules/overview">
    Understand how capsules work — creation, lifecycle, and connecting to existing ones.
  </Card>

  <Card title="Code Interpreter" icon="code" href="/code-interpreter/overview">
    Run stateful Python code with a persistent Jupyter kernel inside a capsule.
  </Card>
</CardGroup>

## What you can do with Wrenn

Wrenn capsules are full microVMs. Inside each capsule you can:

* **Execute commands** — foreground, background, and streaming output
* **Manage files** — read, write, list, and stream large files
* **Run stateful code** — persistent Jupyter kernel with rich output (charts, images, tables)
* **Open a terminal** — interactive PTY sessions that survive reconnects
* **Use Git** — clone, commit, push, and pull with credential support
* **Access running services** — proxy URLs for ports exposed inside the capsule

<CardGroup cols={2}>
  <Card title="Commands" icon="terminal" href="/capsules/commands">
    Run shell commands, stream output, and manage background processes.
  </Card>

  <Card title="Filesystem" icon="folder" href="/capsules/filesystem">
    Read, write, and stream files inside your capsule.
  </Card>

  <Card title="Async Support" icon="arrow-right-arrow-left" href="/advanced/async">
    Use AsyncCapsule for non-blocking operations in async Python applications.
  </Card>

  <Card title="API Reference" icon="book" href="/api-reference/capsules/create">
    Full REST API reference with request and response schemas.
  </Card>
</CardGroup>

## Get started

<Steps>
  <Step title="Install the SDK">
    ```bash theme={null}
    pip install wrenn
    ```
  </Step>

  <Step title="Set your API key">
    ```bash theme={null}
    export WRENN_API_KEY="wrn_your_api_key_here"
    ```
  </Step>

  <Step title="Create your first capsule">
    ```python theme={null}
    from wrenn import Capsule

    with Capsule(template="minimal", wait=True) as capsule:
        result = capsule.commands.run("echo hello from Wrenn")
        print(result.stdout)  # "hello from Wrenn\n"
    ```
  </Step>
</Steps>
