multi-account-config

v1.0.0

Configure multiple messaging platform accounts for OpenClaw. Use when the user wants to add or configure additional accounts for Telegram, WhatsApp, Discord,...

0· 269· 1 versions· 1 current· 1 all-time· Updated 8h ago· MIT-0

Install

openclaw skills install multi-account-config

Multi-Account Configuration

Guide users through configuring multiple accounts for messaging platforms in OpenClaw.

Supported Platforms

  • Telegram
  • WhatsApp
  • Discord
  • Slack
  • Signal
  • Other OpenClaw-supported channels

Workflow

Step 1: Identify Platform

Ask the user which platform they want to configure:

"你想配置哪个平台的多账号?支持的选项:Telegram、WhatsApp、Discord、Slack、Signal 等。"

Step 2: Collect Account Information

For each account, collect:

  1. Account ID/Name - A short identifier (e.g., "work", "personal", "friendA")
  2. Platform-specific credentials:
    • Telegram: Bot Token (from @BotFather)
    • WhatsApp: Pairing code or existing credentials
    • Discord: Bot Token
    • Slack: Bot Token
    • Signal: Phone number

Suggest meaningful names based on use case:

  • "work" - 工作相关
  • "personal" - 个人使用
  • "side-project" - 副业项目
  • "family" - 家人群组

Step 3: Get Current Config

Use gateway config.get to retrieve current configuration.

Step 4: Build Updated Config

Structure the configuration following this pattern:

{
  "bindings": [
    {
      "agentId": "main",
      "match": {
        "channel": "<platform>",
        "accountId": "<account-id>"
      }
    }
  ],
  "channels": {
    "<platform>": {
      "enabled": true,
      "accounts": {
        "<account-id>": {
          "name": "<Display Name>",
          "enabled": true,
          "dmPolicy": "allowlist",
          "allowFrom": ["<user-id>"],
          "botToken": "<token>",
          "groupPolicy": "open",
          "streaming": "block"
        }
      }
    }
  }
}

Step 5: Apply Configuration

Use gateway config.patch to apply the new configuration.

Step 6: Verify

Confirm the configuration was applied successfully and provide next steps.

Configuration Schema Reference

Bindings

Each account needs a binding entry:

{
  "agentId": "main",
  "match": {
    "channel": "telegram",
    "accountId": "work"
  }
}

Account Properties

PropertyTypeDescription
namestringDisplay name for the account
enabledbooleanWhether the account is active
dmPolicystring"allowlist", "blocklist", or "open"
allowFromarrayList of allowed sender IDs (for allowlist)
botTokenstringPlatform-specific token
groupPolicystring"open", "closed", or "admin-only"
streamingstring"block" or "allow"

Example: Adding Telegram Work Account

User provides:

  • Platform: Telegram
  • Account name: work
  • Bot Token: 123456:ABC-DEF...

Configuration to add:

{
  "bindings": [
    {
      "agentId": "main",
      "match": {
        "channel": "telegram",
        "accountId": "work"
      }
    }
  ],
  "channels": {
    "telegram": {
      "enabled": true,
      "accounts": {
        "work": {
          "name": "Work",
          "enabled": true,
          "dmPolicy": "allowlist",
          "allowFrom": ["USER_ID"],
          "botToken": "123456:ABC-DEF...",
          "groupPolicy": "open",
          "streaming": "block"
        }
      }
    }
  }
}

Important Notes

  1. Preserve existing accounts - When adding new accounts, merge with existing config
  2. Get user ID from context - Use the current user's sender ID for allowFrom
  3. Validate tokens - Ensure tokens are complete and properly formatted
  4. Restart required - Configuration changes require gateway restart to take effect
  5. Security - Never log or expose tokens in responses

Version tags

latestvk972cqeqyymhnkmtv0x4gd49xh82fqjv