> ## Documentation Index
> Fetch the complete documentation index at: https://openmail-docs-reputation-lifecycle-webhooks.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Quickstart

> Get your AI agent its own email address in two commands. Install the CLI, run openmail setup, and start sending and receiving email in minutes.

Get your AI agent its own email address in two commands.

## Prerequisites

* Node.js 20+
* [OpenMail account](https://console.openmail.sh/login) (free, no credit card)

<Tabs>
  <Tab title="Claude Code">
    <Steps>
      <Step title="Install the skill">
        Inside Claude Code, run:

        ```
        /plugin marketplace add openmailsh/skills
        /plugin install openmail@openmailsh-skills
        ```

        Claude Code now knows how to use OpenMail.
      </Step>

      <Step title="Run setup">
        In your terminal:

        ```bash theme={"theme":{"light":"github-light","dark":"dark-plus"}}
        npx @openmail/cli setup --agent claude-code
        ```

        This opens your browser to sign in, prompts for a mailbox name, creates your inbox, and writes credentials to `~/.claude/openmail.env`.
      </Step>

      <Step title="Verify">
        ```bash theme={"theme":{"light":"github-light","dark":"dark-plus"}}
        npx @openmail/cli status
        ```

        Your agent can now send and receive email. Ask Claude Code to send a test email to confirm.
      </Step>
    </Steps>
  </Tab>

  <Tab title="OpenClaw">
    <CardGroup cols={2}>
      <Card title="OpenClaw integration" icon="book-open" href="/integrations/openclaw">
        Paths, WebSocket bridge, and links to the packaged skill files.
      </Card>

      <Card title="Skill files (SKILL.md)" icon="files" href="/integrations/skill-files/openmail">
        `SKILL.md` matches [`@openmail/cli`](https://github.com/openmailsh/cli); reference pages come from [openmailsh/skills](https://github.com/openmailsh/skills).
      </Card>
    </CardGroup>

    <div className="openmail-prompt-card">
      <Prompt description="Use this pre-built prompt to get started faster." icon="wand-sparkles" actions={["copy", "cursor"]}>
        Read [https://docs.openmail.sh/quickstart](https://docs.openmail.sh/quickstart) then add OpenMail to our OpenClaw agent:

        1. `npm install -g @openmail/cli`
        2. Ask the user for their API key (from [https://console.openmail.sh/settings/api](https://console.openmail.sh/settings/api)), inbox name, and display name, then run `openmail setup --api-key "<key>" --mailbox-name "<name>" --display-name "<display name>" --mode notify`
      </Prompt>
    </div>

    <Steps>
      <Step title="Install">
        ```bash theme={"theme":{"light":"github-light","dark":"dark-plus"}}
        npm install -g @openmail/cli
        ```
      </Step>

      <Step title="Setup">
        ```bash theme={"theme":{"light":"github-light","dark":"dark-plus"}}
        openmail setup
        ```

        Creates your inbox, writes the skill file to `~/.openclaw/skills/openmail/SKILL.md`, and saves credentials to `~/.openclaw/openmail.env`. Pass `--api-key om_...` to skip the auth prompt.

        When setup completes, confirm everything is working:

        ```bash theme={"theme":{"light":"github-light","dark":"dark-plus"}}
        openmail status
        ```

        <Note>
          **WebSocket bridge** — Setup starts the bridge automatically via systemd (Linux) or launchd (macOS). On Windows, setup prints the command to run manually.
        </Note>
      </Step>

      <Step title="Send an email">
        ```bash theme={"theme":{"light":"github-light","dark":"dark-plus"}}
        openmail send --to hello@example.com --subject "Hello from OpenMail" --body "I have my own inbox!"
        ```

        Add files with `--attach` (repeatable):

        ```bash theme={"theme":{"light":"github-light","dark":"dark-plus"}}
        openmail send --to hello@example.com --subject "Report" --body "See attached" --attach report.pdf
        ```
      </Step>
    </Steps>
  </Tab>

  <Tab title="API / SDK">
    See the [API integration guide](/guides/api-integration) for creating inboxes and sending email programmatically with any language or framework.
  </Tab>
</Tabs>

## More commands

```bash theme={"theme":{"light":"github-light","dark":"dark-plus"}}
openmail messages list --direction inbound
openmail threads list
openmail threads get --thread-id <thread-id>
```

## Next steps

* **OpenClaw** - See the [OpenClaw integration](/integrations/openclaw) guide and the **Skill files** tab for [SKILL.md](/integrations/skill-files/openmail) and [reference files](/integrations/skill-files/setup).
* **Handle inbound email** - Route replies to your agent via [WebSocket](/concepts/websockets) or [webhooks](/guides/webhooks).
* **Improve deliverability** - Follow [warm-up schedules](/best-practices/email-deliverability) to stay out of spam.
* **Explore the API** - Full [API reference](/api-reference/introduction) for programmatic workflows.

<CardGroup cols={2}>
  <Card title="WebSockets" icon="bolt" href="/concepts/websockets">
    Real-time event streaming. No public URL needed.
  </Card>

  <Card title="Email deliverability" icon="mail-check" href="/best-practices/email-deliverability">
    Warm-up schedules and content best practices.
  </Card>

  <Card title="Threading" icon="messages-square" href="/concepts/threading">
    How threads work across inbound and outbound.
  </Card>

  <Card title="API integration" icon="code" href="/guides/api-integration">
    Create inboxes programmatically for multi-tenant apps.
  </Card>
</CardGroup>
