# Personal Assistant Setup with OpenClaw

OpenClaw functions as a messaging gateway for Pi agents across WhatsApp, Telegram, Discord, and iMessage. This documentation covers configuring a dedicated agent assistant accessible via a second phone number.

## Key Safety Considerations

The guide emphasizes several protective measures when deploying an agent with file system and command execution capabilities:

- Always set `channels.whatsapp.allowFrom` (never run open-to-the-world on your personal Mac)
- Utilize a separate phone number exclusively for the assistant
- Disable heartbeat functionality initially by setting heartbeat to "0m" until the setup is validated

## Prerequisites & Installation

The setup requires Node 22+ and can be installed globally via npm or built from source. The recommended two-phone architecture separates your personal device from the assistant's device, preventing all incoming messages from being processed as agent input.

```bash
npm install -g openclaw@latest
```

Or build from source:

```bash
git clone https://github.com/openclaw/openclaw.git
cd openclaw
pnpm install
pnpm build
```

## Core Configuration Elements

The minimal configuration requires specifying allowed phone numbers in the allowlist. The system supports:

- Session management with reset triggers (`/new`, `/reset`)
- Customizable workspace locations
- Thinking defaults for the Claude model selection

## Notable Features

- **Heartbeat functionality**: Defaults to 30-minute intervals (can be disabled)
- **Session storage**: JSON Lines format with token usage metadata
- **Media support**: Inbound attachments and outbound responses via `MEDIA:<path>` syntax

## Operations & Monitoring

The toolkit provides status diagnostics through commands like:

```bash
openclaw status
openclaw health --json
```

Logs are stored in `/tmp/openclaw/`.
