Configuration

Reference for openclaw.json, auth profiles, and gateway settings.

Config Files

EasyClaw stores configuration in the app's data directory. On macOS this is ~/Library/Application Support/easyclaw/. On Linux it's ~/.config/easyclaw/.

openclaw.jsonMain configuration
auth-profiles.jsonOAuth tokens & credentials
data/Session data & databases

openclaw.json Schema

Full reference for the main configuration file.

{
  "gateway": {
    "port": 3777,
    "token": "auto-generated-token",
    "host": "127.0.0.1"
  },

  "provider": {
    "type": "anthropic",
    "apiKey": "sk-ant-api03-...",
    "model": "claude-sonnet-4-20250514",
    "maxTokens": 4096,
    "temperature": 0.7
  },

  "channels": {
    "whatsapp": {
      "enabled": true,
      "autoReply": true,
      "allowedNumbers": ["*"],
      "sessionPath": "./data/whatsapp-session"
    },
    "signal": {
      "enabled": false,
      "phoneNumber": "",
      "autoReply": true,
      "trustAllIdentities": false
    },
    "imessage": {
      "enabled": false,
      "autoReply": true,
      "blueBubblesPort": 1234
    }
  },

  "skills": {
    "apple-notes": { "enabled": true },
    "apple-reminders": {
      "enabled": true,
      "defaultList": "Reminders"
    },
    "google-workspace": {
      "enabled": false,
      "scopes": [
        "calendar.readonly",
        "calendar.events",
        "drive.readonly"
      ]
    },
    "himalaya": {
      "enabled": false,
      "imap": {
        "host": "imap.gmail.com",
        "port": 993,
        "auth": "oauth2"
      },
      "smtp": {
        "host": "smtp.gmail.com",
        "port": 587,
        "auth": "oauth2"
      }
    }
  },

  "system": {
    "autoStart": true,
    "logLevel": "info",
    "dataPath": "./data"
  }
}

Gateway Settings

port

numberdefault: 3777

Local port the OpenClaw gateway listens on. Change this if port 3777 is already in use.

token

stringauto-generated

Bearer token for bot-to-gateway authentication. Generated during setup. Rotate by generating a new token in the dashboard.

host

stringdefault: 127.0.0.1

Bind address for the gateway. Keep as 127.0.0.1 to restrict to local connections only.

Auth Profiles

OAuth tokens and credentials are stored separately in auth-profiles.json. This file is never committed or shared.

{
  "google": {
    "accessToken": "ya29...",
    "refreshToken": "1//...",
    "expiresAt": "2025-12-01T00:00:00Z"
  },
  "himalaya": {
    "email": "you@gmail.com",
    "authType": "oauth2",
    "token": "ya29..."
  }
}

System Settings

autoStart

booleandefault: true

Automatically start all services when EasyClaw launches.

logLevel

stringdefault: "info"

Log verbosity. Options: debug, info, warn, error.

dataPath

stringdefault: "./data"

Path for session data, databases, and channel state. Relative to the config directory.

Editing Configuration

You can edit configuration from the EasyClaw dashboard UI or by directly modifying the JSON files. Changes to openclaw.json take effect after restarting services (the dashboard has a restart button). Auth profile changes take effect immediately.